﻿$(document).ready(function(){
	AdjustFont.init();
	Comment.init();
	cssStyle.init();
	Rating.init();
	Excerpt.init();
	Fav.init();
	Bookmark.init();
	Toggle.init();
	LowerLight.init();
	Searching.init();
	WritingNote.init();
	Voting.init();
	BookCover.init();
});

var cssStyle = function(){
	return{
		init: function(){
			$('#id_image').attr('size', '50');
			DD_roundies.addRule('.round', '7px');
			DD_roundies.addRule('.round5', '5px');
			DD_roundies.addRule('#nav', '4px');
		}
	};
}();

var AdjustFont = function(){
	var fontSizes = ['12px', '13px', '14px', '15px', '16px', '17px', '18px', '19px', '20px'];
	
	var EnlargeTextFont = function(){
		var currentSize = $('.adjust-font').css('font-size');
		var newSize = currentSize;
		for(var i=0; i<fontSizes.length-1; i++){
			if(fontSizes[i] == currentSize){
				$('.adjust-font').css('font-size', fontSizes[i+1]);
				newSize = fontSizes[i+1];
				break;
			}
		}
		
		Toggle.adjustHeight();
		createCookie('text-size', newSize, 365);

		return false;
	};

	var DecreaseTextFont = function(){
		var currentSize = $('.adjust-font').css('font-size');
		var newSize = currentSize;
		for(var i=1; i<fontSizes.length; i++){
			if(fontSizes[i] == currentSize){
				$('.adjust-font').css('font-size', fontSizes[i-1]);
				newSize = fontSizes[i-1];
				break;				
			}
		}
		
		Toggle.adjustHeight();
		createCookie('text-size', newSize, 365);
		
		return false;
	};

	var InitTextFont = function(){
		var textSize = readCookie('text-size');
		var fontColor = readCookie('font-color');
		if(textSize){
			$('.adjust-font').css('font-size', textSize);
		}
		
		if(fontColor){
			$('.chapter-content-left').css('background-color', fontColor);
		}
		
	};
	
	var changeBg = function(){
		var bgColor = $(this).css('background-color');
		$('.chapter-content-left').css('background-color', bgColor);
		
		createCookie('font-color', bgColor, 365);
		return false;
	};

	//manipulating cookies
	return{
		init: function(){
			InitTextFont();
			$(".a-font-size[title='放大字体']").click(EnlargeTextFont);
			$(".a-font-size[title='缩小字体']").click(DecreaseTextFont);
			$(".bg-c > a").click(changeBg);
		}
	};
	
}();

var createCookie = function(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
};
	
var readCookie = function(name)
{
		var nameEQ = name + "=";
		var ca = document.cookie.split(';');
		for(var i=0;i < ca.length;i++)
		{
			var c = ca[i];
			while (c.charAt(0)==' ') c = c.substring(1,c.length);
			if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
		}
		return null;
};
	
var eraseCookie = function(name)
{
	createCookie(name,"",-1);
};

var BookCover = function(){
	var showCover = function(){
		
		var coverNow = $('.large-display-on').attr('id');
		coverNow = coverNow.split('-')[1];
		
		var smallNow = $(this).attr('id');
		smallNow = smallNow.split('-')[1];
		
		if(smallNow != coverNow){
			var oldCover = $('#ld-'+coverNow);
			oldCover.removeClass('large-display-on').addClass('large-display-off');
			oldCover.hide();
			
			var coverNew = '#ld-' + smallNow;
			$(coverNew).fadeIn().removeClass('large-display-off').addClass('large-display-on');
		}
	};
	
	return{
		init: function(){
			$('.sd-cover').mouseover(showCover);
		}
		
	};
}();	

var Rating= function(){
	var rateWords = {1:'很差',2:'不好',3:'还不错',4:'挺好的',5:'很棒'};
	var stars;
	var rating_msg;
	var ctype;
	var id;
	var urlExtract=function(urls){
		if(urls){
			ctype = urls.split('-')[0];
			id = urls.split('-')[1];
		}
	};
	
	var starMouseOver = function(){
		var index = stars.index(this) + 1;
		stars.slice(0,index).addClass('on');
		rating_msg.html(rateWords[index]);
	};
	
	var starMouseOut = function(){
		var index = stars.index(this) + 1;
		stars.slice(0,index).removeClass('on');
		rating_msg.html("");
	};
	
	var ratingRefresh = function(ret){
		var rets = ret.split('-');
		var ratingCount= rets[0];
		var ratings= eval(rets[1]);
		var ratingBar=eval(rets[2]);
		$('.total-ratings').html(ratingCount);
		var rating_count = $('.rating-count');
		var rating_bar = $('.rating-bar');
		for(var i=0, j=rating_count.length;i<j;i++){
				rating_count.eq(i).html(ratings[j-1-i].toString());
				rating_bar.eq(i).css('width',ratingBar[j-1-i]+'px');
		}
		
	};
	
	var starClick = function(e){
		e.preventDefault();
		rating_msg.html("正在提交...");
			stars.unbind('click', starClick);
			stars.unbind('mouseover', starMouseOver);
			stars.unbind('mouseout', starMouseOut);		
		var index = stars.index(this) + 1;
		url = "/rating/ajax/"+ctype+"/"+id+"/"+index+"/";
		$.post(url,"", function(ret){
			rating_msg.html("谢谢您的评分!");
			stars.unbind('click', starClick);
			stars.unbind('mouseover', starMouseOver);
			stars.unbind('mouseout', starMouseOut);
			stars.slice(0,index).removeClass('on');
			stars.slice(0,index).addClass('off');
			ratingRefresh(ret);
		});	
	};
	
	var starInit = function(){
		var old_rating = $(".old-rating");
		var u_rating = $(".u_rating");
		if(old_rating.length>0){
			var old_rate = old_rating.attr('id');
			old_rate = parseInt(old_rate.substring(1,2));
			stars.slice(0, old_rate).addClass('off');
		}
		else{
			stars
				.mouseover(starMouseOver)
				.mouseout(starMouseOut)
				.click(starClick);			
		}
	};

	return{
		init: function(){
			stars = $(".u-rating-star");
			rating_msg = $(".u-rating-msg");
			urlExtract($("#rating").attr('class'));
			if(stars.length>0)
				starInit();
		}
		
	};
}();


var Fav = function(){
	var user;
	var btns;
	var fav;
	var ctype;
	var id;
	
	var urlExtract = function(url_string){
		if(url_string){
			ctype = url_string.split('-')[0];
			id = url_string.split('-')[1];
		}
	};
	
	var bmClick = function(){
		$('.fav').unbind('click', bmClick);
		
		$('#fav').html('<span class="pink-long-buttons"><span>正在提交...</span></span>');
		
		var choice = btns.index(this) + 1;
		
		var url = "/fav/"+ctype+"/"+id+"/"+choice+"/";
		$.post(url,"", function(ret){
			$('#fav').html('<span class="pink-long-buttons"><span>操作完成</span></span>');
		});
		
		return false;
	};
	
	return{
		init: function(){
			user = $(".user-info").attr('id');
			urlExtract($(".object-info").attr('id'));
			btns = $('.fav');
			btns.click(bmClick);
		}
		
	};
}();

var Voting = function(){

	var submitVote = function(e){
		e.preventDefault();
		var url = $(this).attr('href');
		var save_html = $('.vote-btns').html();
		//$('.vote-btns').hide();
		$('.vote-message').html('<span style="color: #6BB300;">提交投票，请稍候...</span>');
		$.post(url,"", function(ret){
			if( ret != 'e' ){
				ret = parseInt(ret);
				var score = $('#book-score').html();
				score = parseInt(score);
				
				var diff = ret - score;
				if(diff == -1 || diff == 1){
					var vote_number = $('.vote-number').html();
					vote_number = parseInt(vote_number);
					vote_number ++;
					$('.vote-number').html(vote_number);
				}
				
				if(ret >=0 ){ret = '+' + ret;}
				
				$('#book-score').html(ret);
			}
			
			
			//$('.vote-btns').show();
			$('.vote-message').html('');

			
		});			
	}
	
	return{
		init: function(){
			$('.av').click(submitVote)
		}
	};
}();

var Bookmark = function(){
	var user;
	var ctype;
	var id;
	var area;
	var btn;
	
	var urlExtract = function(url_string){
		if(url_string){
			ctype = url_string.split('-')[0];
			id = url_string.split('-')[1];
		}
	};
	
	var bmClick = function(){
		btn.unbind('click', bmClick);
		
		area.html('<span class="pink-long-buttons"><span>正在提交...</span></span>');
		
		var url = "/bookmark/"+id+"/";
		$.post(url,{ctype: ctype}, function(ret){
			area.html('<span class="pink-long-buttons"><span>操作完成</span></span>');
		});
		
		return false;
	};
	
	return{
		init: function(){
			user = $(".login-user").attr('id');
			urlExtract($(".excerpt-obj").attr('id'));
			area = $('#bm-btn');
			btn = $('.bookmark');
			btn.click(bmClick);
		}
		
	};
}();

var Searching = function(){
	var search_labels;
	var search_form;
	var search_box;
	
	var searchLabelClick = function(){
		search_labels.removeClass("radio-on");
		search_labels.css("background-position","0 0");
		$(this).addClass("radio-on");
		$(this).css("background-position","0 -35px");
		var search_link = $(this).attr('href');
		search_form.attr('action',search_link);
		search_box.focus();
		return false;
	};
	
	var labelOn = function(){
		$(this).css("color","#FFCC66");
		if($(this).hasClass('radio-on'))
			$(this).css("background-position","0 -35px");
	};
	
	var labelOut = function(){
		$(this).css("color","#333");
	}
	
	return{
		init: function(){
			search_labels = $(".searching-radio");
			search_form = $("#search-form");
			search_box = $(".search-text");
			search_labels.click(searchLabelClick);
			search_labels.hover(labelOn, labelOut);
			
			/*search result page, change the paginator links */
			search_links=$('.paginate-previous > a, .paginate-link > a, .paginate-next > a');
			var search_text = $('.search-text-2');
			if(search_text.length > 0){
				search_text = $('.search-text-2').val();
				if($.browser.msie){
					search_text = encodeURIComponent(search_text);
				}
				var j=search_links.length;
				for(var i=0;i<j;i++){
					var href = search_links.eq(i).attr('href');
					href = href + '&keyword=' + search_text;
					search_links.eq(i).attr('href', href)
				}
			}				
		}
	};
}();

var Comment=function(){
	var commentDiv;
	var postBtn;
	var postContent;
	var commentArea;
	var commentLabel;
	var url;
	var userInfo;
	var update_time;
	
	var postComment=function(e){
		e.preventDefault();
		postBtn.attr('disabled','disabled');
		postContent.attr('disabled','disabled');
		if(!userInfo){
			commentLabel.html('<span>你的评论:</span>&nbsp;&nbsp;<span style="color:red">(你还没有登录呢!)</span>');
			postBtn.attr('disabled','');
			postContent.attr('disabled','');			
			return;			
		}
		
		var comment=postContent.val();
		
		if(comment == ''){
			commentLabel.html('<span>你的评论:</span>&nbsp;&nbsp;<span style="color:red">(评论不能为空!)</span>');
			postBtn.attr('disabled','');
			postContent.attr('disabled','');
			return;
		}
		
		if(comment.length >= 3000){
			commentLabel.html('<span>你的评论:</span>&nbsp;&nbsp;<span style="color:red">(评论太长啦!)</span>');
			postBtn.attr('disabled','');
			postContent.attr('disabled','');
			return;
		}		
		
		var data;
		
		if(update_time > 0){
			data={comment:comment, update_time: update_time};
		}
		else{
			data = {comment:comment};
		}
		
		$.post(url, data, function(data){
			postContent.val('');
			postBtn.attr('disabled','');
			postContent.attr('disabled','');
			commentLabel.html('<span>你的评论:</span>');
			loadComments();
		});
		
		return false;
	};
	
	var loadComments=function(){
		var commentUrl = $('#post-comment-form', commentDiv).attr('action');
		commentUrl=commentUrl+'all/';
		commentArea.load(commentUrl);
		return;
	}
	
	return{
		init:function(){
			commentDiv=$('#comment');
			postBtn =$('#post-comment', commentDiv);
			postBtn.click(postComment);
			postContent = $('#id_comment', commentDiv);
			commentArea = $('#comments-area', commentDiv);
			commentLabel= $('#comment-label',commentDiv);
			url = $('#post-comment-form', commentDiv).attr('action');
			url = url+"ajax/";
			userInfo = $('.user-info').attr('id');
			
			if($('#post-comment-form', commentDiv).length>0){
				update_time = $('#post-comment-form', commentDiv).attr('class');
				if(update_time.length > 0){
					update_time = update_time.substring(3,4);
					update_time = parseInt(update_time);
				}
			}
		}
	};
}();

var WritingNote=function(){
	var commentDiv;
	var postBtn;
	var postContent;
	var commentArea;
	var commentLabel;
	var url;
	var userInfo;
	var update_time;
	
	var postComment=function(e){
		e.preventDefault();
		postBtn.attr('disabled','disabled');
		postContent.attr('disabled','disabled');
		
		var comment=postContent.val();
		
		if(comment == ''){
			commentLabel.html('<span style="color:red">(评论不能为空!)</span>');
			postBtn.attr('disabled','');
			postContent.attr('disabled','');
			return;
		}
		
		if(comment.length >= 100){
			commentLabel.html('<span style="color:red">(评论太长啦! <100)</span>');
			postBtn.attr('disabled','');
			postContent.attr('disabled','');
			return;
		}		
		
		var data;
		
		data = {comment:comment};
		
		$.post(url, data, function(data){
			postContent.val('');
			postBtn.attr('disabled','');
			postContent.attr('disabled','');
			commentLabel.html('');
			loadComments();
		});
		
		return false;
	};
	
	var loadComments=function(){
		var commentUrl = $('#np-form', commentDiv).attr('action');
		commentUrl=commentUrl+'note/';
		commentArea.load(commentUrl);
		return;
	}
	
	return{
		init:function(){
			commentDiv=$('#notes');
			postBtn =$('#np-btn', commentDiv);
			postBtn.click(postComment);
			postContent = $('#id_note', commentDiv);
			commentArea = $('#wn-area', commentDiv);
			commentLabel= $('.np-message',commentDiv);
			url = $('#np-form', commentDiv).attr('action');
			url = url+"ajax/";
			userInfo = $('.user-info').attr('id');
		}
	};
}();

var Excerpt = function(){
	var getSelectedText = function(){
		if (document.selection) {
			if (document.selection.createRange().text.length > 0) {
				return document.selection.createRange().text;
			}
		} else if (window.getSelection()) {
			return window.getSelection();
		} 
		return "";
	};


	var ShowExcerptLink = function(event){
		$('.excerpt-link').remove();
		var selectedText = getSelectedText().toString();
		selectedText = $.trim(selectedText);
		if(selectedText.length > 10 && selectedText.length < 5000){
			$('body').append('<div class="excerpt-link"><a href="./" title="保存文摘" class="show-dialog"> 保存文摘 </a></div>');
			$('.excerpt-link').css('top', (parseInt(event.pageY) - 40) + "px");
			$('.excerpt-link').css('left',(parseInt(event.pageX) - 20)+ "px");
			$('.show-dialog').click(function(event){
				$('.excerpt-link').remove();
				event.preventDefault();
				showDialog(selectedText);
				return false;
				});
		}
	};

	var showDialog = function(st){
		if (typeof document.body.style.maxHeight == "undefined") { // if IE6
			$('body', 'html').css({height: '100%', width: '100%'});
			$('html').css('overflow', 'hidden');
		}
		if ($('#overlay').length == 0) {
			$('body').append('<div id="overlay"></div><div id="dialog"></div>');
			$('#overlay').click(function(){closeDialog();});
		}
	

		$('#dialog').html('<form class="excerpt-form"><span class="dialog-close"><a href="./">X</a></span><div class="post-excerpt"><textarea class="selected-text" name="excerpt" readonly="readonly">'+st+'</textarea><div><span class="excerpt-comment-label">笔记:</span><br><textarea class="excerpt-comment" name="note"/><br><div class="excerpt-save"><span class="excerpt-errmsg"></span><span><a href="./" class="excerpt-save-btn">保存!</a></span><span><a href="./" class="excerpt-close-btn">关闭</a></span></div></div></div><div class="success-msg"></div></form>');
		if($('.login-user').attr('id') == 'None'){
			$('.post-excerpt').hide();
			var msg = "<p>请先<a href='/user/login/'>登录</a> 或 <a href='/user/register/'>注册</a> </p>";
			$('.success-msg').html(msg);
			$('.success-msg').show();
			$('.success-msg').click(function(){closeDialog();});
		}
	
		$('#dialog').fadeIn("slow")
		$('#overlay').fadeIn("fast");
		$('.excerpt-close-btn').click(function(){closeDialog();return false;});
		$('.dialog-close').click(function(){closeDialog();return false;});
		$('.excerpt-save-btn').click(function(event){
		//$('.excerpt-errmsg').addClass('loading');
		//$('.excerpt-errmsg').show();
			var ctype = $('.excerpt-obj').attr('id').split('-')[0];
			var object_id = $('.excerpt-obj').attr('id').split('-')[1];

			var url = "/excerpt/create/" + ctype +"/" + object_id + "/";
			var data = $('.excerpt-form').serialize();
			$('.excerpt-comment').attr("readonly", "readonly");
			if($(".obj-parent").length>0){
				var object_parent = $(".obj-parent").attr("id");
				data = data + "&object_parent=" + object_parent;
			}
			
			$.post(url, data, function(ret){
				var status = ret.split('-')[0];
				var msg = ret.split('-')[1];
				if(status == "1") {
					$('.post-excerpt').hide();
					$('.success-msg').html(msg);
					$('.success-msg').click(function(){closeDialog();});
					$('.success-msg').show();
				}
				else {$('.excerpt-errmsg').removeClass('loading');$('.excerpt-errmsg').text(msg); $('.excerpt-errmsg').show();}
			})
			return false;
		});
	
	
		$(document).keyup(function(e){
			if (e == null) { // ie
				keycode = event.keyCode;
			} else { // mozilla
				keycode = e.which;
			}
		
			if (keycode == 27) { // close
				closeDialog();
			}
		});
	};

	var closeDialog = function(){
		$('#overlay').unbind('click');
		$('#dialog,#overlay').remove();
		if (typeof document.body.style.maxHeight == "undefined") {//if IE6
			$('body','html').css({height: 'auto', width: 'auto'});
			$('html').css('overflow', '');
		}
		return false;
	};



	return{
		init: function(){
			$(".excerpt-on").mouseup(ShowExcerptLink);
		$(".excerpt-short").hover(
			function(){
				$(this).css({backgroundColor:'#86CA86'});
				//$(this).css({backgroundColor:'#E3F7E3'});
				$(this).find('a').css({color:'rgb(227,247,227)'});
			},
		
			function(){
				$(this).css({backgroundColor:'transparent'});
				$(this).find('a').css({color:'rgb(51,51,51)'});
			}
	);
		}
	}
}();

var Toggle= function(){

	var show = 1;
	var cl; 
	var cr;   
	var dr;   

	var toggle = function(){

		if(show == 1){
			dr.hide();
			cl.animate({width:"980px"},400);
			cr.animate({width:"0px"},400, function(){aHeight(); cr.hide();});
			show = -1;
			$('.chapter-content-divider').attr('title', '显示边栏');
			
			//create cookie
			createCookie('toggle', show, 365);
			
		}
		else{
			cr.show();
			cl.animate({width:"680px"},400);
			cr.animate({width:"290px"},400, aHeight);
			dr.show();
			show = 1;
			$('.chapter-content-divider').attr('title', '隐藏边栏');
			
			//create cookie
			createCookie('toggle', show, 365);			
		}
		
		return false;
	};

	var aHeight = function(){
		var height  = $('.chapter-content-left').height();
		$('.chapter-content-divider').css('height', height);
		BlockComments.renewBlockHeight();
	}

	var InitToggle = function(){
		show = readCookie('toggle');
		if(show)
			show = parseInt(show);
		else
			show = 1;

		
		if(show == -1){
			dr.hide();
			cl.css('width', '980px');
			cr.css('width', '0px');
			$('.chapter-content-divider').attr('title', '显示边栏');			
		}
		
		aHeight();
	}
	
	return{
		init:function(){
			if($('.chapter-content-left').length>=1){
				aHeight();
			}
			
			$('.chapter-content-divider').click(toggle);
			show = 1;
			
			cl = $('.chapter-content-left');
			cr = $('.chapter-content-right');
			dr = $('.detail-content-right');
			
			if(cl.length > 0)
				InitToggle();
		},
		
		adjustHeight : function(){
			aHeight();
		}	
		
	}
}();

var LowerLight = function(){
	var llbtn;
	var light;
	
	var lowerProcess = function(){
		llbtn.attr('title', '还原背景');
		llbtn.html('<span>还原背景</span>');
		if (typeof document.body.style.maxHeight == "undefined") { // if IE6
			$('body', 'html').css({height: '100%', width: '100%'});
			$('html').css('overflow', 'hidden');
		}
			
		if ($('#lower-light').length == 0) {
			$('body').append('<div id="lower-light" style="filter:alpha(opacity=40);"><div></div></div>');
			if(light){
				if(light > 0){
					$('#lower-light').show();
				}
			}
			
			$('#lower-light').fadeIn("slow");
			$('#lower-light').click(lowerLight);
		}
		else{
			$('#lower-light').fadeIn("slow");
		}	
	}
	
	var lowerLight = function(){
		if(llbtn.attr('title') == '黯淡背景'){

			lowerProcess();
			createCookie('lower-light', 1 , 365);
			
		}
		else{
			llbtn.attr('title', '黯淡背景');
			llbtn.html('<span>黯淡背景</span>');
			$('#lower-light').fadeOut("slow");
			
			createCookie('lower-light', -1 , 365);
		}
		
		return false;
		
	}
	
	var InitLight = function(){
		light = readCookie('lower-light');
		if(light){
			light = parseInt(light);
			if(light > 0){
				lowerProcess();
			}
		}
	}
	
	return{
		init:function(){
			llbtn = $('.lower-light-btn');
			llbtn.click(lowerLight);
			if(llbtn.length > 0)
				InitLight();
		}
	}
}();

/**
* DD_roundies, this adds rounded-corner CSS in standard browsers and VML sublayers in IE that accomplish a similar appearance when comparing said browsers.
* Author: Drew Diller
* Email: drew.diller@gmail.com
* URL: http://www.dillerdesign.com/experiment/DD_roundies/
* Version: 0.0.2a -  preview 2008.12.26
* Licensed under the MIT License: http://dillerdesign.com/experiment/DD_roundies/#license
*
* Usage:
* DD_roundies.addRule('#doc .container', '10px 5px'); // selector and multiple radii
* DD_roundies.addRule('.box', 5, true); // selector, radius, and optional addition of border-radius code for standard browsers.
* 
* Just want the PNG fixing effect for IE6, and don't want to also use the DD_belatedPNG library?  Don't give any additional arguments after the CSS selector.
* DD_roundies.addRule('.your .example img');
**/

eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('t K={16:\'K\',1L:G,1M:G,1d:G,2f:y(){u(D.2g!=8&&D.1N&&!D.1N[q.16]){q.1L=M;q.1M=M}17 u(D.2g==8){q.1d=M}},2h:D.2i,1O:[],1b:{},2j:y(){u(q.1L||q.1M){D.1N.2L(q.16,\'2M:2N-2O-2P:x\')}u(q.1d){D.2Q(\'<?2R 2S="\'+q.16+\'" 2T="#1P#2k" ?>\')}},2l:y(){t a=D.1k(\'z\');D.2m.1w.1Q(a,D.2m.1w.1w);u(a.12){2n{t b=a.12;b.1x(q.16+\'\\\\:*\',\'{1l:2U(#1P#2k)}\');q.12=b}2o(2p){}}17{q.12=a}},1x:y(a,b,c){u(1R b==\'1S\'||b===2V){b=0}u(b.2W.2q().1y(\'2X\')==-1){b=b.2q().2Y(/[^0-9 ]/g,\'\').1T(\' \')}H(t i=0;i<4;i++){b[i]=(!b[i]&&b[i]!==0)?b[C.1e((i-2),0)]:b[i]}u(q.12){u(q.12.1x){t d=a.1T(\',\');H(t i=0;i<d.1U;i++){q.12.1x(d[i],\'1l:2Z(K.1V.2r(q, [\'+b.1W(\',\')+\']))\')}}17 u(c){t e=b.1W(\'F \')+\'F\';q.12.1z(D.2s(a+\' {Q-1f:\'+e+\'; -30-Q-1f:\'+e+\';}\'));q.12.1z(D.2s(a+\' {-1A-Q-1m-1n-1f:\'+b[0]+\'F \'+b[0]+\'F; -1A-Q-1m-1X-1f:\'+b[1]+\'F \'+b[1]+\'F; -1A-Q-1Y-1X-1f:\'+b[2]+\'F \'+b[2]+\'F; -1A-Q-1Y-1n-1f:\'+b[3]+\'F \'+b[3]+\'F;}\'))}}17 u(q.1d){q.1O.31({\'2t\':a,\'2u\':b})}},2v:y(a){2w(32.33){I\'z.Q\':I\'z.34\':I\'z.1B\':q.1o(a);13;I\'z.2x\':q.1Z(a);13;I\'z.1p\':I\'z.2y\':I\'z.2z\':q.1o(a);13;I\'z.20\':a.18.z.20=(a.z.20==\'S\')?\'S\':\'35\';13;I\'z.21\':q.22(a);13;I\'z.1c\':a.18.z.1c=a.z.1c;13}},1o:y(a){a.14.23=\'\';q.2A(a);q.1Z(a);q.1C(a);q.1D(a);q.24(a);q.2B(a);q.22(a)},22:y(a){u(a.W.21.1y(\'36\')!=-1){t b=a.W.21;b=1g(b.37(b.25(\'=\')+1,b.25(\')\')),10)/2C;H(t v 1h a.x){a.x[v].1i.38=b}}},2A:y(a){u(!a.W){1q}17{t b=a.W}a.14.1p=\'\';a.14.1E=\'\';t c=(b.1p==\'2D\');t d=M;u(b.1E!=\'S\'||a.1F){u(!a.1F){a.J=b.1E;a.J=a.J.39(5,a.J.25(\'")\')-5)}17{a.J=a.26}t e=q;u(!e.1b[a.J]){t f=D.1k(\'3a\');f.1r(\'3b\',y(){q.1s=q.3c;q.1t=q.3d;e.1D(a)});f.3e=e.16+\'3f\';f.14.23=\'1l:S; 1j:27; 1m:-2E; 1n:-2E; Q:S;\';f.26=a.J;f.2F(\'1s\');f.2F(\'1t\');D.2G.1Q(f,D.2G.1w);e.1b[a.J]=f}a.x.Z.1i.26=a.J;d=G}a.x.Z.2H=!d;a.x.Z.1G=\'S\';a.x.1u.2H=!c;a.x.1u.1G=b.1p;a.14.1E=\'S\';a.14.1p=\'2D\'},1Z:y(a){a.x.1H.1G=a.W.2x},1C:y(a){t c=[\'N\',\'19\',\'1a\',\'O\'];a.P={};H(t b=0;b<4;b++){a.P[c[b]]=1g(a.W[\'Q\'+c[b]+\'U\'],10)||0}},1D:y(c){t e=[\'O\',\'N\',\'U\',\'V\'];H(t d=0;d<4;d++){c.E[e[d]]=c[\'3g\'+e[d]]}t f=y(a,b){a.z.1n=(b?0:c.E.O)+\'F\';a.z.1m=(b?0:c.E.N)+\'F\';a.z.1s=c.E.U+\'F\';a.z.1t=c.E.V+\'F\'};H(t v 1h c.x){t g=(v==\'Z\')?1:2;c.x[v].3h=(c.E.U*g)+\', \'+(c.E.V*g);f(c.x[v],M)}f(c.18,G);u(K.1d){c.x.1H.z.28=\'-3i\';u(1R c.P==\'1S\'){q.1C(c)}c.x.1u.z.28=(c.P.N-1)+\'F \'+(c.P.O-1)+\'F\'}},24:y(j){t k=y(a,w,h,r,b,c,d){t e=a?[\'m\',\'1I\',\'l\',\'1J\',\'l\',\'1I\',\'l\',\'1J\',\'l\']:[\'1J\',\'l\',\'1I\',\'l\',\'1J\',\'l\',\'1I\',\'l\',\'m\'];b*=d;c*=d;w*=d;h*=d;t R=r.2I();H(t i=0;i<4;i++){R[i]*=d;R[i]=C.3j(w/2,h/2,R[i])}t f=[e[0]+C.11(0+b)+\',\'+C.11(R[0]+c),e[1]+C.11(R[0]+b)+\',\'+C.11(0+c),e[2]+C.15(w-R[1]+b)+\',\'+C.11(0+c),e[3]+C.15(w+b)+\',\'+C.11(R[1]+c),e[4]+C.15(w+b)+\',\'+C.15(h-R[2]+c),e[5]+C.15(w-R[2]+b)+\',\'+C.15(h+c),e[6]+C.11(R[3]+b)+\',\'+C.15(h+c),e[7]+C.11(0+b)+\',\'+C.15(h-R[3]+c),e[8]+C.11(0+b)+\',\'+C.11(R[0]+c)];u(!a){f.3k()}t g=f.1W(\'\');1q g};u(1R j.P==\'1S\'){q.1C(j)}t l=j.P;t m=j.2J.2I();t n=k(M,j.E.U,j.E.V,m,0,0,2);m[0]-=C.1e(l.O,l.N);m[1]-=C.1e(l.N,l.19);m[2]-=C.1e(l.19,l.1a);m[3]-=C.1e(l.1a,l.O);H(t i=0;i<4;i++){m[i]=C.1e(m[i],0)}t o=k(G,j.E.U-l.O-l.19,j.E.V-l.N-l.1a,m,l.O,l.N,2);t p=k(M,j.E.U-l.O-l.19+1,j.E.V-l.N-l.1a+1,m,l.O,l.N,1);j.x.1u.29=o;j.x.Z.29=p;j.x.1H.29=n+o;q.2K(j)},2B:y(a){t s=a.W;t b=[\'N\',\'O\',\'19\',\'1a\'];H(t i=0;i<4;i++){a.14[\'1B\'+b[i]]=(1g(s[\'1B\'+b[i]],10)||0)+(1g(s[\'Q\'+b[i]+\'U\'],10)||0)+\'F\'}a.14.Q=\'S\'},2K:y(e){t f=K;u(!e.J||!f.1b[e.J]){1q}t g=e.W;t h={\'X\':0,\'Y\':0};t i=y(a,b){t c=M;2w(b){I\'1n\':I\'1m\':h[a]=0;13;I\'3l\':h[a]=0.5;13;I\'1X\':I\'1Y\':h[a]=1;13;1P:u(b.1y(\'%\')!=-1){h[a]=1g(b,10)*0.3m}17{c=G}}t d=(a==\'X\');h[a]=C.15(c?((e.E[d?\'U\':\'V\']-(e.P[d?\'O\':\'N\']+e.P[d?\'19\':\'1a\']))*h[a])-(f.1b[e.J][d?\'1s\':\'1t\']*h[a]):1g(b,10));h[a]+=1};H(t b 1h h){i(b,g[\'2y\'+b])}e.x.Z.1i.1j=(h.X/(e.E.U-e.P.O-e.P.19+1))+\',\'+(h.Y/(e.E.V-e.P.N-e.P.1a+1));t j=g.2z;t c={\'T\':1,\'R\':e.E.U+1,\'B\':e.E.V+1,\'L\':1};t k={\'X\':{\'2a\':\'L\',\'2b\':\'R\',\'d\':\'U\'},\'Y\':{\'2a\':\'T\',\'2b\':\'B\',\'d\':\'V\'}};u(j!=\'2c\'){c={\'T\':(h.Y),\'R\':(h.X+f.1b[e.J].1s),\'B\':(h.Y+f.1b[e.J].1t),\'L\':(h.X)};u(j.1y(\'2c-\')!=-1){t v=j.1T(\'2c-\')[1].3n();c[k[v].2a]=1;c[k[v].2b]=e.E[k[v].d]+1}u(c.B>e.E.V){c.B=e.E.V+1}}e.x.Z.z.3o=\'3p(\'+c.T+\'F \'+c.R+\'F \'+c.B+\'F \'+c.L+\'F)\'},1v:y(a){t b=q;2d(y(){b.1o(a)},1)},2e:y(a){q.1D(a);q.24(a)},1V:y(b){q.z.1l=\'S\';u(!q.W){1q}17{t c=q.W}t d={3q:G,3r:G,3s:G,3t:G,3u:G,3v:G,3w:G};u(d[q.1K]===G){1q}t e=q;t f=K;q.2J=b;q.E={};t g={3x:\'2e\',3y:\'2e\'};u(q.1K==\'A\'){t i={3z:\'1v\',3A:\'1v\',3B:\'1v\',3C:\'1v\'};H(t a 1h i){g[a]=i[a]}}H(t h 1h g){q.1r(\'3D\'+h,y(){f[g[h]](e)})}q.1r(\'3E\',y(){f.2v(e)});t j=y(a){a.z.3F=1;u(a.W.1j==\'3G\'){a.z.1j=\'3H\'}};j(q.3I);j(q);q.18=D.1k(\'3J\');q.18.14.23=\'1l:S; 1j:27; 28:0; 1B:0; Q:0; 3K:S;\';q.18.z.1c=c.1c;q.x={\'1u\':M,\'Z\':M,\'1H\':M};H(t v 1h q.x){q.x[v]=D.1k(f.16+\':3L\');q.x[v].1i=D.1k(f.16+\':3M\');q.x[v].1z(q.x[v].1i);q.x[v].3N=G;q.x[v].z.1j=\'27\';q.x[v].z.1c=c.1c;q.x[v].3O=\'1,1\';q.18.1z(q.x[v])}q.x.Z.1G=\'S\';q.x.Z.1i.3P=\'3Q\';q.3R.1Q(q.18,q);q.1F=G;u(q.1K==\'3S\'){q.1F=M;q.z.3T=\'3U\'}2d(y(){f.1o(e)},1)}};2n{D.3V("3W",G,M)}2o(2p){}K.2f();K.2j();K.2l();u(K.1d&&D.1r&&K.2h){D.1r(\'3X\',y(){u(D.3Y==\'3Z\'){t d=K.1O;t e=d.1U;t f=y(a,b,c){2d(y(){K.1V.2r(a,b)},c*2C)};H(t i=0;i<e;i++){t g=D.2i(d[i].2t);t h=g.1U;H(t r=0;r<h;r++){u(g[r].1K!=\'40\'){f(g[r],d[i].2u,r)}}}}})}',62,249,'||||||||||||||||||||||||||this|||var|if|||vml|function|style|||Math|document|dim|px|false|for|case|vmlBg|DD_roundies||true|Top|Left|bW|border||none||Width|Height|currentStyle|||image||floor|styleSheet|break|runtimeStyle|ceil|ns|else|vmlBox|Right|Bottom|imgSize|zIndex|IE8|max|radius|parseInt|in|filler|position|createElement|behavior|top|left|applyVML|backgroundColor|return|attachEvent|width|height|color|pseudoClass|firstChild|addRule|search|appendChild|webkit|padding|vmlStrokeWeight|vmlOffsets|backgroundImage|isImg|fillcolor|stroke|qy|qx|nodeName|IE6|IE7|namespaces|selectorsToProcess|default|insertBefore|typeof|undefined|split|length|roundify|join|right|bottom|vmlStrokeColor|display|filter|vmlOpacity|cssText|vmlPath|lastIndexOf|src|absolute|margin|path|b1|b2|repeat|setTimeout|reposition|IEversion|documentMode|querySelector|querySelectorAll|createVmlNameSpace|VML|createVmlStyleSheet|documentElement|try|catch|err|toString|call|createTextNode|selector|radii|readPropertyChanges|switch|borderColor|backgroundPosition|backgroundRepeat|vmlFill|nixBorder|100|transparent|10000px|removeAttribute|body|filled|slice|DD_radii|clipImage|add|urn|schemas|microsoft|com|writeln|import|namespace|implementation|url|null|constructor|Array|replace|expression|moz|push|event|propertyName|borderWidth|block|lpha|substring|opacity|substr|img|onload|offsetWidth|offsetHeight|className|_sizeFinder|offset|coordsize|1px|min|reverse|center|01|toUpperCase|clip|rect|BODY|TABLE|TR|TD|SELECT|OPTION|TEXTAREA|resize|move|mouseleave|mouseenter|focus|blur|on|onpropertychange|zoom|static|relative|offsetParent|ignore|background|shape|fill|stroked|coordorigin|type|tile|parentNode|IMG|visibility|hidden|execCommand|BackgroundImageCache|onreadystatechange|readyState|complete|INPUT'.split('|'),0,{}))