var headlineTimer;

jQuery(function($) {
	var userAgent = window.navigator.userAgent.toLowerCase();
	$.browser.msie8 = $.browser.msie && /msie 8\.0/i.test(userAgent);
	$.browser.msie7 = $.browser.msie && /msie 7\.0/i.test(userAgent);
	$.browser.msie6 = !$.browser.msie8 && !$.browser.msie7 && $.browser.msie && /msie 6\.0/i.test(userAgent);
});

function share(where) {
	var pageURL = document.URL;
	var pageURL = encodeURI(pageURL);
	switch (where) {
		case "kaixin":
			url = "http://www.kaixin001.com/repaste/share.php?rtitle="+document.title+"&rurl="+pageURL+"&rcontent="+document.getElementById('body_excerpt').innerHTML;
			break;
		case "douban":
			url = "http://www.douban.com/recommend/?url="+pageURL;
			break;
		case "xiaonei":
			url = "http://share.renren.com/share/buttonshare.do?link="+pageURL;
			break;
		case "bsh":
			url = "http://bai.sohu.com/share/blank/add.do?link="+pageURL;
			break;
	}
	window.open(url);
}

function thumbOvr(obj) {
	if(jQuery.browser.msie) {
		obj.filters[0].apply();
		obj.src = obj.src.replace('blank.gif', 'thumb_hover.gif');
		obj.filters[0].play();
	} else {
		obj.src = obj.src.replace('blank.gif', 'thumb_hover.gif');
	}
}

function thumbOut(obj) {
	if(jQuery.browser.msie) {
		obj.filters[1].apply();
		obj.src = obj.src.replace('thumb_hover.gif', 'blank.gif');
		obj.filters[1].play();
	} else {
		obj.src = obj.src.replace('thumb_hover.gif', 'blank.gif');
	}
}

function comment_page(page, total) {
	if(document.getElementById('pager-'+page).className == 'small_button_active') return;
	for(i=1; i<=total; i++) {
		hide('comment-page-'+i);
		document.getElementById('pager-'+i).className = 'small_button';
	}
	document.getElementById('pager-'+page).className = 'small_button_active';
	show('comment-page-'+page);
}

function toggleSmily() {
	var smilyObj = document.getElementById('smily');
	var smiliesObj = document.getElementById('smilies');
	smiliesObj.style.left = smilyObj.offsetLeft - 1 + 'px';
	smiliesObj.style.top = smilyObj.offsetTop + smilyObj.offsetHeight + 'px';
	jQuery("#smilies").slideToggle("fast");
}

function hideSmily() {
	jQuery("#smilies").slideUp("fast");
}

function toggleUserInfo() {
	jQuery("#comment-author").slideToggle("fast");
}

function GetCookieVal(offset) {
	var endstr = document.cookie.indexOf (";", offset);
	if (endstr == -1) endstr = document.cookie.length;
	return unescape(document.cookie.substring(offset, endstr));
}

function SetCookie(name, value) {
	var expdate = new Date();
	var argv = SetCookie.arguments;
	var argc = SetCookie.arguments.length;
	var expires = (argc > 2) ? argv[2] : null;
	var path = (argc > 3) ? argv[3] : null;
	var domain = (argc > 4) ? argv[4] : null;
	var secure = (argc > 5) ? argv[5] : false;
	if(expires!=null) expdate.setTime(expdate.getTime() + ( expires * 1000 ));
	document.cookie = name + "=" + escape(value) +((expires == null) ? "" : ("; expires="+ expdate.toGMTString())) +((path == null) ? "" : ("; path=" + path)) +((domain == null) ? "" : ("; domain=" + domain)) + ((secure == true) ? "; secure" : "");
}

function DelCookie(name) {
	var exp = new Date();
	exp.setTime (exp.getTime() - 1);
	var cval = GetCookie (name);
	document.cookie = name + "=" + cval + "; expires="+ exp.toGMTString();
}

function GetCookie(name) {
	var arg = name + "=";
	var alen = arg.length;
	var clen = document.cookie.length;
	var i = 0;
	while (i < clen) {
		var j = i + alen;
		if (document.cookie.substring(i, j) == arg)
		return GetCookieVal (j);
		i = document.cookie.indexOf(" ", i) + 1;
		if (i == 0) break;
	}
	return null;
}

function show_loading(e) {
	if (e.pageX || e.pageY) {
	    posx = e.pageX;
	    posy = e.pageY;
	} else if (e.clientX || e.clientY) {
	    posx = e.clientX + document.body.scrollLeft
	        + document.documentElement.scrollLeft;
	    posy = e.clientY + document.body.scrollTop
	        + document.documentElement.scrollTop;
	}
	jQuery("#ajax-loader").css({
			top: (posy + 15) + "px",
			left: (posx + 15) + "px"
	});
	jQuery("#ajax-loader").show();
	jQuery(document).mousemove(function(e) {
		jQuery("#ajax-loader").css({
			top: (e.pageY + 15) + "px",
			left: (e.pageX + 15) + "px"
		});
	});
}

function remove_loading() {
	jQuery(document).unbind("mousemove");
	jQuery("#ajax-loader").hide();
}

jQuery.preloadImages = function(element) {   
	element.each(function() {
		jQuery("<IMG>").attr("src", $(this).attr('src'));   
	});
}

jQuery.hookHovers = function(element) {   
	element.each(function() {
		jQuery("<IMG>").attr("src", $(this).attr('src').split('.').join('_hover.'));
		$(this).hover(
			function(e){
				if($(this).attr('src').indexOf('_active') != -1) return;
				$(this).attr('src', $(this).attr('src').split('.').join('_hover.'));
			},
			function(e){
				$(this).attr('src', $(this).attr('src').replace('_hover', ''));
			}
		);
	});
}

jQuery(document).ready(function($) {
	
	// ie6 warning
	if($.browser.msie6) {
		$("#ajax-loader").before('<div id="ie6_warn" class="notice""><img align="absmiddle" src="/wp-content/themes/black/images/ico_alert.png" />您正在使用旧版本的 Internet Explorer 浏览本站，它可能导致本站的一些页面错误，建议您 <a href="http://www.microsoft.com/china/windows/internet-explorer/" target="_blank">升级到 Internet Explorer 7.0 以上</a> 或使用 <a href="http://www.mozillaonline.com/" target="_blank">最新版本的 Firefox</a> 浏览本站。</div>');
	}
	
	// title tip
	if (!$.browser.msie6) {
		$("[title]").aToolTip();
	}
	
	// tab panel
	
	$(".entry_tab,#headline_tab").tabs({
		fx: {opacity:'toggle'}
	});
	
	$("#headline_tab").mouseover(function() {
		slideHeadline(true);
	});
	
	$("#headline_tab").mouseout(function() {
		slideHeadline(false);
	});
	
	slideHeadline(false);
	
	// accordions
	$(".accordion").accordion({
		autoHeight: false
	});
	
	// remove <a> dotted border
	$("a").bind("focus",function() { 
		if (this.blur) {
			this.blur();
		}
	});
	
});

function slideHeadline(stop) {
	if (stop) {
		clearInterval(headlineTimer);
	} else {
		headlineTimer = setInterval("nextHeadline()", 10000);
	}
}

function nextHeadline() {
	var selected = jQuery("#headline_tab").tabs('option', 'selected');
	selected = (selected == 4) ? 0 : selected+1;
	jQuery("#headline_tab").tabs('select', selected);
}

function killErrors() {
	return true;
}

window.onerror = killErrors;
