/* this work is copyright idsgn.org */

/* browser detect */
var browser = navigator.userAgent.toLowerCase();

/* sifr */
var auto2 = {src: rooturl+'assets/auto2.sifr3b.swf'};
var auto2lt = {src: rooturl+'assets/auto2.lt.sifr3b.swf'};

sIFR.activate(auto2, auto2lt);
sIFR.replace(auto2, {selector: 'h2.title1', css: ['.sIFR-root { color:#ff3300; font-size:59px; }','a { text-decoration:none; font-size:59px; }','a:link { color:#ff3300; }','a:hover { color:#333333; }','em { font-style:normal }'] }); //, wmode: 'transparent'
sIFR.replace(auto2lt, {selector: '.post1 h4', css: ['.sIFR-root { font-size:37px; }','a:link { color:#ff3300; text-decoration:underline; }','a:hover { color:#333333; text-decoration:underline; }','em { font-style:normal }'] }); //, wmode: 'transparent'
redrawsIFR();
//, ratios: [9, 1.16, 16, 1.09, 24, 1.06, 37, 1.04, 74, 1.02, 1.01]

function redrawsIFR() {
	sIFR.replace(auto2, {selector: 'h2', css: ['.sIFR-root {background-color: #ffffff;}',
'a { text-decoration:none; }','a:link { color:#ff3300;background-color: #ffffff; }','a:hover { color:#333333; }','em { font-style:normal }'] });
}

function fixsIFR() { //checked for blocked sIFR in firefox
	try {
	if($("h2")[0].scrollHeight < 10) { 
		//undo sIFR
		$('.sIFR-active').removeClass('sIFR-active');
		$('.sIFR-flash').remove();
		$('.sIFR-replaced').removeClass('sIFR-replaced');
		$('.sIFR-alternate').removeClass('sIFR-alternate').show();
	}
	} catch(exception) {}
}

$(document).ready(function() {
	setTimeout("paging()", 50);
	
	$('.post:gt(0):even').addClass('even');
	$('.post:gt(0):odd').addClass('odd');
	$('<div class="clear"></div>').insertBefore($('.post:gt(0):even')); //for ie
	
	resizeObjects();
	
	fusion();
	
	videoPlayer();
});

window.onload = (function() {
	if (/firefox/.test(browser)) fixsIFR(); //check sIFR in firefox
	setTimeout("getTweets()", 2000); //insert twitter scripts after load
});

function getTweets() {
	$('head').append('<script type="text/javascript" src="http://twitter.com/javascripts/blogger.js"></script>');
	$('head').append('<script type="text/javascript" src="http://twitter.com/statuses/user_timeline/idsgn.json?callback=twitterCallback2&amp;count=4"></script>)');
}

function resizeObjects() {
	$('.post1').find("p img").each(function(i) {
		if(this.title.length > 0) { //add credit line
			var credit = this.title;
			credit = credit.replace(/Photo: ([^ ]+), Flickr/g, "Photo: <a href='http://www.flickr.com/photos/$1'>$1</a>, Flickr");
			$("<p class='credit'>" + credit + "</p>").insertAfter($(this).parent());
		}
	});
	
	if ($('.post.full').length > 0) return;
	
	var objects = (/msie/.test(browser)) ? $('.post:gt(0)').find("img,object,embed") : $('.post:gt(0)').find("object,embed");
	$(objects).each(function(i) {
		if (this.width > 460) {
			this.height = Math.floor((460/this.width)*this.height);
			this.width = 460;
		}
		if ((this.outerHTML && this.outerHTML.indexOf('width=') == -1) || !this.getAttribute('width')) {
			$(this).attr('width',460); //default to 460 if nothing set
		}
	});
	$('.post').find("img").each(function(i) {
		if(this.parentNode.nodeName != "A") { //link images to their articles
			var href= $(this).parents().find("h2 a")[0].href;
			if (href) $(this).wrap($('<a/>').attr('href', href));
		}
	});
}

/* video player */
function videoPlayer(){
	$('a.player').click(function(){
	var poster = $(this).children('img:first');
	var height = poster.height().toString();
	var width = poster.width().toString();
	var href = this.href;
	
	if (href.match(/^http:\/\/(?:www\.){0,1}vimeo\.com\/(\d+)$/) ) 
	{ 	// Vimeo
	    href = 'http://vimeo.com/moogaloop.swf?clip_id=' + href.match(/^http:\/\/(?:www\.){0,1}vimeo\.com\/(\d+)$/)[1];
		href += '&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=ffffff&amp;fullscreen=1&amp;autoplay=1';
	} 
	else if (href.match(/watch\?v=(.+)(.*)/)) 
	{ 	//Youtube
		href = 'http://www.youtube.com/v/' + href.match(/v=(.*)(.*)/)[0].split('=')[1];
		href += '&amp;autoplay=1&amp;hl=en&amp;fs=1&amp;rel=0&amp;hd=1';
	} 
	else if (href.indexOf('http://video.google.com/videoplay?docid=') == 0) 
	{ 	// Google video
		href = 'http://video.google.com/googleplayer.swf?docId=' + href.substring('http://video.google.com/videoplay?docid='.length) + '&hl=en';
	}
	
	$(this).before('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="'+width+'" height="'+height+'" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="'+href+'" /><embed type="application/x-shockwave-flash" width="'+width+'" height="'+height+'" src="'+href+'" allowscriptaccess="always" allowfullscreen="true"></embed></object>').remove();
	return false;
	});
}

/* paging */
var paging_size = 6;
var paging_skip = 1;
var paging_current = 1;
function paging() {
	if (!$('#paging_more')[0]) {
		return false;
	}
	if (paging_current == 1) {
		$('#paging_more').click(function() { paging();return false; });
	} else {
		items = $('.post:gt('+(((paging_current-1)*paging_size)-1+paging_skip)+'):lt('+((paging_current*paging_size)+paging_skip)+')');
		items.fadeIn(1000);
		redrawsIFR();
	}
	
	moreitems = $('.post:gt('+((paging_current*paging_size)-1+paging_skip)+')');
	if (moreitems.length > 0) {
		moreitems.hide();
		$('#paging_more').show();
	} else {
		$('#paging_more').hide();
	}
	
	paging_current++;
}

/* fusion */
function fusion() {
	$('#fusion script').remove(); 
	var first;
	var elements = $('.post1 h4, .post1 .fullwidth');
	
	if (elements.length > 0) {
		first = $(elements[elements.length-1]).nextAll(':not(.fullwidth)');
	} else {
		first = $('.post1 div:first').nextAll(':not(.fullwidth)');
	}
	if ($(first).length > 0) $('#fusion').insertBefore($(first)[0]).show();
}