var addthis_config = {
	ui_offset_top: 0,
	ui_offset_left: 0,
	ui_header_color: "#ffffff",
	ui_header_background: "#8E8E8E",
	services_compact: 'favorites, email, facebook, twitter, digg, delicious, google, bitly',
	services_expanded: 'favorites, email, facebook, twitter, digg, delicious, google, bitly'
}


window.addEvent("domready", function(){

	//Init Google Analytics
	//_uacct = "UA-1122165-1";urchinTracker();
	try{
		var pageTracker = _gat._getTracker("UA-1122165-1");
		pageTracker._setDomainName("none");
		pageTracker._trackPageview();
	}catch(err){}


	var Entries = $$('.entry');
	var entrydetail = new Element('div', {'id':'detailLayer', 'opacity':'0'}).inject($('foot'), 'before');
	var detailOpen = false;
	var loadingDetail = false;
	var pageTitle = document.title;

	getDetail = function(id){
		loadingDetail = true;
		var hastag = id.lastIndexOf("tag=") - 5;
		if(hastag < 0){hastag = id.length + 1}
		var fid = id.substr(id.lastIndexOf("id=")+5, hastag);
		var FQ = showfeatured ? "&Featured=1" : "";
		//alert(fid);
		if(fid>0){
			var detailHTML = new Request.HTML({
				url:'entrydetail.asp' + id + FQ,
				evalScripts: true,
				onSuccess: function(restree, resel, reshtml){
					pageTracker._trackPageview("/" + id);
					$(document.body).addClass('detailview');
					entrydetail.set('html', reshtml);
					$('detailLayer').scrollTop=0;
					$('detailLayer').scrollLeft=0;
			 		$$('#nextEntry', '#previousEntry').addEvent('click', function(e){
			 			e.stop();
			 			//var id = this.get('href');
			 			var id = this.get('href').substr( this.get('href').indexOf('?') );
			 			//alert(id);
			 			getDetail(id);
			 		});
					document.title = "SplitMetal.com - " + $$('#detailLayer h2')[0].get('html');
					//addthis.button("#shareEntry");
					addthis.button('#shareEntry', {}, {url: "http://www.splitmetal.com/" + id, title: document.title});

					$('returnEntry').addEvent('click', function(e){e.stop();closeDetail();});
					
					reqHistory.setValue(0, fid);
	
					if(!detailOpen){
						$('entries').tween('opacity','0');
						if($('showfeatured')){$('showfeatured').setStyle('display','none');}
						entrydetail.setStyle('display','block');
						entrydetail.tween('opacity','1');
						$(document.body).setStyle('overflow','hidden');
						detailOpen = true;
					}
					loadingDetail = false;
				},
				onFailure: function(){
					//alert('The request failed.');
					loadingDetail = false;
				}
			});
			detailHTML.send();
		}else{
			closeDetail();
		}
	};
	
	var keymodel = Browser.Engine.trident ? $(document.body) : window;
	
	keymodel.addEvent('keydown', function(e){
		if(detailOpen){
			switch (e.key) {
				case 'esc':
					closeDetail();
					break;
				case 'left':
					if(!loadingDetail && !e.alt && !e.control && !e.shift){
						//getDetail($('previousEntry').get('href'));
						getDetail( $('previousEntry').get('href').substr( $('previousEntry').get('href').indexOf('?') ) );
					}
					break;
				case 'right':
					if(!loadingDetail && !e.alt && !e.control && !e.shift){
						//getDetail($('nextEntry').get('href'));
						getDetail( $('nextEntry').get('href').substr( $('nextEntry').get('href').indexOf('?') ) );
					}
					break;
				case 'down':
					if(!e.alt && !e.control && !e.shift){
						$('detailLayer').scrollTop+=50;
					}
					break;
				case 'up':
					if(!e.alt && !e.control && !e.shift){
						$('detailLayer').scrollTop-=50;
					}
					break;
			}
		}
	});

	closeDetail = function(){
		if($('detailLayer')){
			$(document.body).removeClass('detailview');
			$(document.body).setStyle('overflow','auto');
			entrydetail.tween('opacity','0');
			$('entries').tween('opacity','1');
			if($('showfeatured')){$('showfeatured').setStyle('display','block');}
			entrydetail.setStyle('display','none');
			detailOpen = false;
			loadingDetail = false;
			document.title = pageTitle;
			reqHistory.setValue(0, 0);
		}
	};

	EntryEvents = function(){
		$$('.media').removeEvents('mouseover');
		$$('.media').removeEvents('mouseout');
		$$('.title a', 'a.media').removeEvents('click');

		$$('.media').addEvents({
			'mouseover': function(e){
				Entries.morph({'opacity':0.3});
				this.getParent('.entry').morph({'opacity':1});
				if(!this.getParent('.entry').hasClass('current')){
					this.getParent('.entry').tween('height','300px');
					this.tween('height','300px');
					this.getElement('img').tween('margin-top','0px');
				}
			},
			'mouseout': function(e){
				Entries.morph({'opacity':1});
				if(!this.getParent('.entry').hasClass('current')){
					this.getParent('.entry').tween('height','175px');
					this.tween('height','175px');
					this.getElement('img').tween('margin-top','-65px');
				}
			}
		});
		
 		$$('.title a', 'a.media').addEvent('click', function(e){
 			e.stop();
 			var id = this.get('href');
 			getDetail(id);
 		});

	};


	var showfeatured = false;	
	if($$('.featured').length){
		var featuredli = new Element('li').inject($$('.pagenav')[0], 'bottom');
		var featuredlink = new Element('span', {'html':'Only show featured entries','id':'showfeatured'}).injectInside(featuredli);
		$('showfeatured').addEvent('click', function(e){
			e.stop();
			if(!showfeatured){
	
				Entries.each(function(item, index){
					if(!item.hasClass('featured')){
						item.set('tween', {'link':'ignore'});
						item.tween('height', '0px');
					}
				});
				$$('.firstentries', '.moreentries').each(function(item, index){
					var tmp = item.getElements('.featured');
					var th = tmp.length * 175;
					
					if(tmp.getElements('.current').length){
						th+=125;
					}
					item.set('style', {'height': th + 'px'});
				});
				
				showfeatured = true;
				this.set('html','Show all entries');
			}else{
				
				Entries.each(function(item, index){
					if(!item.hasClass('featured')){
						item.set('tween', {'link':'cancel'});
						if(item.hasClass('current')){
							item.tween('height', '300px');
						}else{
							item.tween('height', '175px');
						}
					}
				});
				$$('.firstentries', '.moreentries').each(function(item, index){
					var th=item.getElements('.entry').length * 175;
					if(item.getElements('.current').length){
						th+=125;
					}
					item.setStyle('height', th + 'px');
				});
				
				showfeatured = false;
				this.set('html','Only show featured entries');
			}
		});
	}


	$$('h1 a').addEvents({
		'mouseover': function(){
			this.tween('background-position','0px -40px');
		},
		'mouseout': function(){
			this.tween('background-position','0px 0px');
		}
	});


	EntryEvents();


	HistoryManager.initialize();
	var currentIndex = -1;
	var reqHistory = HistoryManager.register(
		'ID',
		[0], // default, page 0
		function(values) {
			//ajaxUpdate(values[0]);
			getDetail("?ID="+values[0]);
		},
		function(values) {
			return 'ID=' + values[0];
		},
		/ID=(\d+)/ // the regexp
	);
	HistoryManager.start();
	
	//If a specific ID is passed in, load the detail view for that entry
	var starturl = document.location.href;
	if(starturl.indexOf('#') < 1 && starturl.indexOf('?ID') > 0){
		getDetail( starturl.substr( starturl.indexOf('?') ) );
	}
	
	
});