$(function(){
	//menu
	$('#drop1').click(function (){$('#drop1Div').slideToggle('slow');});
	$('#drop2').click(function (){$('#drop2Div').slideToggle('slow')});
	//chat
	$('#chat, #sendMail').click(function (){
		openLiveHelp(1);
		return false;
	});
	//priceMap	some as saveOrder.php
	var priceMap = new Array(
		new Array(369,699,1019,1349,1649,1999,2299,2499,2699,2899,3099,3299,3499,3699,3899),
		new Array(319,609,879,1129,1349,1549,1749,1899,2099,2299,2499,2699,2999,3299,3599),
		new Array(269,509,739,959,1169,1359,1499,1699,1899,2099,2299,2499,2699,2999,3299),
		new Array(229,429,619,799,969,1109,1269,1449,1669,1899,2049,2169,2369,2549,2899),
		new Array(189,359,519,669,809,939,1069,1249,1509,1699,1869,1969,2109,2349,2499),
		new Array(159,299,439,559,669,779,889,999,1209,1369,1569,1799,1969,2069,2149),
		new Array(139,259,339,449,559,669,779,889,1069,1199,1299,1449,1699,1799,1899)
	);
	if($.getCookie('page')){
		var page = $.getCookie('page');
	}else {
		var page = $('#page').html();
	}
	if($.getCookie('day')){
		var day = $.getCookie('day');
	}else {
		var day = $('#day').html();
	}
	if($('#page').html() > 0 && $('#day').html() > 0) {
		pageChange(page);
		dayChange(day);
	}
	$('.addPage').click(function (){
		if(page < 15) pageChange(++page);
	});
	$('.minusPage').click(function (){
		if(page > 1) pageChange(--page);
	});
	$('.addDay').click(function (){
		if(day < 7) dayChange(++day);
	});
	$('.minusDay').click(function (){
		if(day > 1) dayChange(--day);
	});
	//pages change
	function pageChange(page)
	{
		guade = $('.lineDiv').width()-15;
		$('#page').html(page);
		var offset = guade * (page-1) / 14
		$('.row1 .slide').css('margin-left', offset);
		price();
		$.setCookie('page', page, 60);
	}
	//days change
	function dayChange(day)
	{
		guade = $('.lineDiv').width()-15;
		$('#day').html(day);
		var offset = guade * (day-1) / 6
		$('.row2 .slide').css('margin-left', offset);
		price();
		$.setCookie('day', day, 60);
	}
	//count price
	function price()
	{
		var page = $('#page').html();
		var day = $('#day').html();
		$('#price').html(priceMap[day-1][page-1]);
	}
	//pages slide effect
	var pageMark = false;
	$('.row1 .lineDiv').mousedown(function (){pageMark = true;});
	$('body').mouseup(function(){pageMark = false;});
	$('.row1 .lineDiv').mouseup(function up(e) {
		pageMark = false;
		setPageGuade(e, $(this));
	});
	$('.row1 .lineDiv').mousemove(function(e) {
		if(!pageMark) return false;
		setPageGuade(e, $(this));
	});
	function setPageGuade(e, my)
	{
		var offset = my.offset();
		var e = e || window.event;
		var x = e.pageX - offset.left;
		page = parseInt((x-8)/9)+1;
		pageChange(page);
	}
	//days slide effect
	var datMark = false;
	$('.row2 .lineDiv').mousedown(function (){datMark = true;});
	$('body').mouseup(function(){datMark = false;});
	$('.row2 .lineDiv').mouseup(function up(e) {
		datMark = false;
		setDayGuade(e, $(this));
	});
	$('.row2 .lineDiv').mousemove(function(e) {
		if(!datMark) return false;
		setDayGuade(e, $(this));
	});
	function setDayGuade(e, my)
	{
		var offset = my.offset();
		var e = e || window.event;
		var x = e.pageX - offset.left;
		day = parseInt((x-8)/21)+1;
		dayChange(day);
	}
	//submit order
	$('#orderSubmit').click(function (){
		$('#url').val($('#file').val());
		if(!check()) return false;
		$('#days').val(day);
		$('#pages').val(page);
		if($('#file').val()) {
			alert('Please be patient. It will take some time to upload big files');
		}
		return $('#orderSubmit').submit();
	});
	function check()
	{
		if(!$('#name').val()) {
			$.tip('please enter your name');
			$('#name').focus();
			return false;
		}
		if(!$('#phone').val()) {
			$.tip('please enter your phone number (including country code and area code if outside the US)');
			$('#phone').focus();
			return false;
		}
		if(!$('#email').val()) {
			$.tip('please input your email');
			$('#email').focus();
			return false;
		}
		return true;
	}
	$('#file').change(function(){
		$('#fileText').val($('#file').val());
	});
	$('#rewrite').click(function (){
		history.back();
	});
	//paypal by paypal
	$('#btnPaypal').click(paypal);
	function paypal(){
		var data = $('#orderForm').serialize();
		data += '&payMod=paypal';
		$('#btnPaypal').attr('disabled', true);
		$.ajax({
			url	:	'./saveOrder.php',
			type	:	'POST',
			data	:	data,
			success	:	function (backVal){
				if(backVal > 0) {
					$('#orderNumber').val(backVal);
					$('#itemName').val(backVal);
					$('#paypalForm').submit();
				}else{
					$.tip('order submit error');
					$('#btnPaypal').attr('disabled', false);
					return false;
				}
			}
		});
	}
	$('#submit').click(function (){
		if(!$('#userName').val()) {
			$.tip('Please enter user name.');
			$('#userName').focus();
			return false;
		}
		if(!$('#password').val()) {
			$.tip('Please enter password.');
			$('#password').focus();
			return false;
		}
		$.ajax({url: './login.php?userName='+$('#userName').val()+'&password='+$('#password').val(),
			global: false,
			dataType:'text',
			type : 'get',
			success: function(data){
				if(data==1) {
					$.tip('login success');
					location.href='admin.php';
				}else {
					$.tip('user name or password are incorrect.');
					$('#userName').focus();
				}
			}
		});
		return false;
	});
	$('.detail').click(function (){
		$.box({url:$(this).attr('href'), width: 600, height: 500});
		return false;
	});
	$('.delete').click(function (){
		var p = $(this).parent().parent();
		$.get($(this).attr('href'), function (data){
			if(data==1) {
				$.tip('Delete Success');
				p.remove();
			}else {
				$.tip('Delete Failed');
			}
		});
		return false;
	});
	$('#changePass').click(function(){
		$.box({o:$('#changePassDiv'), width: 390, height: 210,title:'change password'});
		return false;
	});
	//google checkout
	$('#btnCheckout').click(function (){
		$('#paypalForm').attr('action', './checkout/digitalCart.php');
		paypal();
	});
});
//$('#msg').msg();
$.fn.msg = function(str,cb,options)
{
	if (!$.isFunction(cb) && cb !== null) {
		options = cb;
		cb = function(){};
	}
	if (typeof options == 'number') {
		options = {timeout: options};
	}
	var settings = {
		timeout			: 1000,
		speed1			: 100,
		speed2			: 300,
		opacity			: 0.5,
		minWidth		: null,
		maxWidth		: null
	};
	$.extend(settings, options || {});
	str = (str==undefined) ? '<img alt="loading..." src="css/images/loading.gif"/>' : str;
	if(this[0]!=undefined) {
		return this.html(str);
	}
	$.tip(str, 99999);
	$.isFunction(cb) ? cb : function(){};
	return this;
};
//global ajax settings
$().ajaxStart(function(){   
  	$.tip('<img alt="loading..." src="css/images/loading.gif"/>', 99999);
});
$().ajaxError(function(){
	$.tip('load error');
});
$().ajaxSuccess(function(){
	$.tip('', 0);
});
//ie6判断
$.browser.ie6 = /msie 6/i.test(navigator.userAgent);
$.extend({
	msg : function(str, cb, options){
		return $('h').msg(str, cb, options);
	},
	//显示在窗口上方(中)的提示
	tip : function(str, time)
	{
		str += '';
		if($.browser.ie6) {
			var position = 'absolute';
			var top = document.documentElement.scrollTop+2;
		}else {
			var position = 'fixed';
			var top = 2;
		}
		var jqMsg = '<div class="jqMsg" style="z-index: 999; top: '+top+'px;font-size: 12px; padding: 0 50px; position: '+position+'; background: #8F8;line-height: 20px;color: #F00;display: none;"></div>';
		$('body').append(jqMsg);
		if(typeof time != 'number') time = 3000; 
		var width = document.body.clientWidth;
		var height = document.body.clientHeight;
		var offset = document.body.scrollTop;
		$('.jqMsg').css('left', (width-parseInt($('.jqMsg').width()))/2);
		$('.jqMsg').html(str);
		$('.jqMsg').fadeIn(400);
		$('.jqMsg').css('margin-left', '-'+($('.jqMsg').width()/2+70)+'px');
		setTimeout("$('.jqMsg').fadeOut(400)", time);
		setTimeout("$('.jqMsg').remove()", time);
	},
	//弹出框。依赖$.pageSize方法
	box : function(options)
	{
		param = $.extend({width: '400',height: '250',title:'notify box'}, options || {});
		var page = $.pageSize();
		//覆盖层
		var overlay = '<div id="overlay" style="top: 0;left: 0;z-index: 99; width: 100%; height: 100%; background: #000; opacity: 0.5; position: fixed;FILTER: alpha(opacity=50);"></div>';
		$('body').append(overlay);
		
		var jqBox = '<div id="jqBox" style="overflow: auto; border: 3px solid #ab6; z-index: 100; position: fixed; width: '+param.width+'px; height: '+param.height+'px; background: #fff;"></div>';
		$('body').append(jqBox);
		if($.browser.ie6) {
			$('#overlay').css('position', 'absolute');
			$('#jqBox').css('position', 'absolute');
			$('html').css('overflow', 'hidden');
		}
		$('#jqBox').css('top', (page.y-$('#jqBox').height())/2);
		$('#jqBox').css('left', (page.x-$('#jqBox').width())/2);
		$('#jqBox').html('<div style="text-align: right; background: #efe;"><div style="float: left; text-align: center;">&nbsp;'+param.title+'</div><a href="javascript:;" id="jqBoxClose">close</a> or esc key&nbsp;<hr/></div><div style="padding: 10px;height: '+(param.height-55)+'px;" id="jqBoxMain"><img style="margin-left: '+(param.width/2-15)+'px; margin-top: '+(param.height/2-37)+'px;" alt="loading..." src="css/images/loading.gif"/></div>');
		$('#jqBoxClose').click(function (){
			$('#overlay').remove(); $('#jqBox').remove();	
		});
		$('body').keydown(function(e){
			if (e.keyCode == 27) $('#jqBoxClose').click();
		});
		if(param.url != undefined) {
			$('#jqBoxMain').load(param.url);
		}
		if(param.o != undefined) {
			$('#jqBoxMain').html(param.o.html());
		}
	},
	//消耗性能方式延时（毫秒数），不要用来做大延时,CPU会占用50%左右.不过俺怀疑js的延时也这么搞
	delay : function (ms)
	{
		var date = new Date(); 
		curDate = null;
		do { var curDate = new Date(); }
		while ( curDate - date < ms);
	},
	//横，纵滚动条偏移量,例：a = $.scroll(); alert(a.x);
	scroll : function () {
		var xScroll, yScroll;
		if (self.pageYOffset) {
			yScroll = self.pageYOffset;
			xScroll = self.pageXOffset;
		} else if (document.documentElement && document.documentElement.scrollTop) {	 // Explorer 6 Strict
			yScroll = document.documentElement.scrollTop;
			xScroll = document.documentElement.scrollLeft;
		} else if (document.body) {// all other Explorers
			yScroll = document.body.scrollTop;
			xScroll = document.body.scrollLeft;	
		}
		arrayPageScroll = new Array(xScroll,yScroll);
		return {x:xScroll, y:yScroll};
	},
	//取页面各项尺寸, 例：a = $.scroll(); alert(a.x); 大写的X、Y是整页的宽，高，小写x、y是可视部分宽度
	pageSize : function () {
		var xScroll, yScroll;
		if (window.innerHeight && window.scrollMaxY) {	
			xScroll = window.innerWidth + window.scrollMaxX;
			yScroll = window.innerHeight + window.scrollMaxY;
		} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
			xScroll = document.body.scrollWidth;
			yScroll = document.body.scrollHeight;
		} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
			xScroll = document.body.offsetWidth;
			yScroll = document.body.offsetHeight;
		}
		var windowWidth, windowHeight;
		if (self.innerHeight) {	// all except Explorer
			if(document.documentElement.clientWidth){
				windowWidth = document.documentElement.clientWidth; 
			} else {
				windowWidth = self.innerWidth;
			}
			windowHeight = self.innerHeight;
		} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
			windowWidth = document.documentElement.clientWidth;
			windowHeight = document.documentElement.clientHeight;
		} else if (document.body) { // other Explorers
			windowWidth = document.body.clientWidth;
			windowHeight = document.body.clientHeight;
		}	
		// for small pages with total height less then height of the viewport
		if(yScroll < windowHeight){
			pageHeight = windowHeight;
		} else { 
			pageHeight = yScroll;
		}
		// for small pages with total width less then width of the viewport
		if(xScroll < windowWidth){	
			pageWidth = xScroll;		
		} else {
			pageWidth = windowWidth;
		}
		arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight);
		return {X:pageWidth, Y:pageHeight, x:windowWidth, y:windowHeight};
	},
	//查看每个元素是对象的数组
	debug : function (data) {
		var str='';
		$.each(data, function (i, item){
			str += '['+i+']';
			$.each(item, function (key,val) {
				str += key + ':'+val+'  ';
			});
			str += "\n";
		});
		return alert(str);
	},
	//保存cookie.expires为超时时间,可为秒数,secure为是否通过https连接
	setCookie : function(name, value, expires, path, domain, secure){
		if(!name || !value) return false;
		if(name == "" || value == "") return false;
		//秒数转为GMT时间
		if(expires){
			var today = new Date();
			expires = new Date(today.getTime()+expires*1000).toGMTString();
		}else{
			expires = undefined;
		}
		//组合参数串
		var 	cv = name+"="+escape(value)+";"
			+ ((expires) ? " expires="+expires+";" : "")
			+ ((path) ? "path="+path+";" : "")
			+ ((domain) ? "domain="+domain+";" : "")
			+ ((secure && secure != 0) ? "secure" : "");
		if(cv.length > 4096) return false;
		document.cookie = cv;
		return true;
	},
	//取得cookie.没有做删除cookie方法,用set空值代替吧
	getCookie : function(name){
		var cv = document.cookie.split("; ");//使用"; "分割Cookie
		var cva = [], temp;
		for(i=0; i<cv.length; i++){
			temp = cv[i].split("=");
			cva[temp[0]] = unescape(temp[1]);
		}
		if(name) return cva[name]; //输出单个或所有
		return cva;
	}
});

