Just for the record, my wife is *not* a carpet-bagging a-hole

Although you wouldn’t know it form reading her one line in this article, which I like to call, “Hey! Did You Know New Yorkers are Dickbags Where-ever They Go? Let’s Reinforce Some Regional Stereotypes!!”

I just want it stated:

  1. Jessica talked to the author for 20 minutes about how great she thought Atlanta was, and this quote was in response to his last question, “In what way is New York is better than Atlanta?” Her point was that Brooklyn might be The Place To Be, but Atlanta has Plenty of Awesomeness going for it… but apparently he had already written the story before he called around looking for quotes, so he chose the one negative thing she said.
  2. Native Atlantans are not all Gone with the Wind-obsessed sweet-tea sipping Hayseeds (note: written while sipping iced tea (note: unsweetened))
  3. People who move here from NYC are not all 300 lb NY Yankee foam-finger-Number-One sporting goombahs who have their car horns play the Godfather theme and look down their noses at all the people they judge as #2 above.

Also, can I really be the only one who is sooooo tired of the “NEW YORK PIZZA FTW!!!111!!!” tirade? Or the whole “My regional pizza is better than your regional pizza” debate? Seriously, you wanna start talking about how Coke is called Soda in the north and Pop everywhere else? And then maybe we can all get past our college orientation weekend conversation starters and Move the F— On. Asshole.

funny
rant

Comments (0)

Permalink

Stupid IE6 and its iframe cookie idiocy needs a throat punch

F--- you, IE 6…so let’s say you have a site, that has two versions, a.throat-punch.com and b.throat-punch.com. And Apache uses a cookie to determine which version you should be viewing, and sends a 302 redirect if you’re on the wrong domain.

Now let’s say you want to access a page on this site from an <iframe> from an external domain, say www.whowantsathroatpunch.com. Stupid IE6 will not send the right cookies in the request headers. In fact, I’m pretty sure it will send no cookies. Why? Because it’s a dick. Every Other Browser does this correctly. It’s not a security issue -it’s not like you’re asking IE6 to send cookies that belong to another domain, or to teach our nation’s children to read or anything. You’re asking the browser for the cookies that have been previously set, and IE6 in its infinite dick-kickery is failing in that basic respect.

What really gets my goat is that, whereas the iframe will not get its cookies, if you make the src of the iframe do an AJAX request to another page on the site, that request will get its cookies sent correctly.

The workaround I found is to give the <iframe> src a new page if the browser is IE6, and on that new page, make an AJAX request to another new page that outputs the value of the cookie you’re looking for. When you receive the AJAX request, you can then parse the response and redircet the user to the now-corrected original <iframe> src. It’s stupid and inefficient, I know:

<script type="text/javascript">
	// note: this page only called from IE6, so no browser testing
	// or compatibility checks are needed. I'm rocking the prototype.js for
	// the ajax, you do what you like.

	function editionTest() {
		var test_url = '/cookie_tester.php';
		var domain = new Ajax.Request(test_url, {
		    method:'get',
    		onSuccess: function(transport){
				var response = transport.responseText;
				if (response.search('site_a') > -1) {
					redirector('a');
				} else if (response.search('site_b') > -1) {
					redirector('b');
				} else {
					redirector('');
				}
    		},
			onFailure: function() {
				redirector('');
			}
		  });
	}

	function redirector(domain) {
		var url = parseUrl();
		var id = url['id'];
		var var = url['var'];
		var domain_parsed = 'http://' + domain + '.throat-punch.com/page_you_really_wanted.php?id=' + id + '&var1=' + var1;
		window.location = domain_parsed;
	}

	function parseUrl() {
		var hash = {};
		var url = String(document.location).split('?');
		if (url[1]) {
			var vars= url[1].split('&');
			var ct = vars.length;
			for (var i=0; i<ct; i++) {
				var item = vars[i].split('=');
				var name = item[0];
				var value = item[1];
				hash[name] = value;
			}
		}
		return hash;
	}

Event.observe(window, 'load', function() {
	editionTest();
});
</script>

I’m writing this post solely for google to pick it up, just in case anyone ever is in this position again. So, dude who googled “ie6 cookies iframe 302 throat punch”, this one’s for you.

(thanks to celebdu for the photo)

ajax
coding
rant

Comments (2)

Permalink