﻿//定义站点的根目录，开发阶段用/web/，发布之后用 /,[谢斌：按照程序中的写法，发布应改为空]
var m_WebBaseFolder = "";
var m_GdsBasePath = "http://www.lenovomobile.com/GoodsPic";
//=============================================================================================================
//=============================================================================================================
//=============================================================================================================
function id(name){return document.getElementById(name);};
function tag(name,elem){return (elem||document).getElementsByName(name);}
//-------------------------------------------------------------------------------------
var ua      = navigator.userAgent;
var opera	= /opera [56789]|opera\/[56789]/i.test(ua);
var isIE    = !opera && /msie [56789]/i.test(ua);       // preventing opera to be identified as ie
var isMoz 	= !opera && /mozilla\/[56789]/i.test(ua);   // preventing opera to be identified as mz
var IEVerNum = getIEVerNum();
function getIEVerNum (){
	if (isIE){
		var ver = navigator.appVersion;
		var reg = /MSIE (\d+).(\d+)/;
        var m = ver.match(reg);
        return m[1];
	} else {
		return 99;
	};
};

/*测字符串实际长度*/
String.prototype.Tlength = function(){var arr=this.match(/[^\x00-\xff]/ig);return this.length+(arr==null?0:arr.length);};
/*字符串左取*/
String.prototype.left = function(num,mode){if(!/\d+/.test(num))return(this);var str = this.substr(0,num);if(!mode) return str;var n = str.Tlength() - str.length;num = num - parseInt(n/2);return this.substr(0,num);};
/*字符串右取*/
String.prototype.right = function(num,mode){if(!/\d+/.test(num))return(this);var str = this.substr(this.length-num);if(!mode) return str;var n = str.Tlength() - str.length;num = num - parseInt(n/2);return this.substr(this.length-num);};
/*字符串去除两端空字符*/
String.prototype.Trim = function(){return this.replace(/(^\s*)|(\s*$)/g,"");};
String.prototype.Ltrim = function(){return this.replace(/(^\s*)/g, "");};
String.prototype.Rtrim = function(){return this.replace(/(\s*$)/g, "");};
/*字符串长度(英:1位,汉:2位)*/
String.prototype.Length = function(){return this.replace(/[^x00-xff]/g,"**").length;};
/*字符串大小写处理*/
String.prototype.Ucase = function(){return this.toUpperCase();};
String.prototype.Lcase = function(){return this.toLowerCase();};
//-------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------
function isArray(obj){return (typeof obj=="object")&&(obj.constructor==Array);};
//-------------------------------------------------------------------------------------
//-------------------------------------------------------------------------------------
function prev(elem){
	do {
		elem = elem.previousSibling;
	} while(elem&&elem.nodeType!=1);
	return elem;
}
function next(elem){
	do{
		elem = elem.nextSibling;
	} while(elem&&elem.nodeType!=1);
	return elem;
};
function first(elem){
	elem = elem.firstChild;
	return elem&&elem.nodeType!=1 ? next(elem) : elem;
};
function last(elem){
	elem = elem.lastChild;
	return elem&&elem.nodeType!=1 ? prev(elem) : elem;
};
function par(elem,num){
	num = num || 1;
	for(var i=0;i<num;i++) 
		if(elem!=null)
			elem = elem.parentNode;
	return elem;
};


function create(name){
	return document.createElementNS ? 
		document.createElementNS('http://www.w3.org/1999/xhtml',name):
		document.createElement(name);
};

function before(parent,before,elem){
	if(elem==null){
		elem = before;
		before = parent;
		parent = before.parentNode;
	};
	
	var elems = checkElem(elem);
	
	for(vari=elems.length-1;i>=0;i--){
		parent.insertBefore(elems[i],before);
	};
};
function append(parent,elem){
	var elems = checkElem(elem);
	for (var i=0;i<elems.length;i++){
		parent.appendChild(elems[i]);
	};
};
function checkElem(a){
	var r = [];
	if (a.constructor!=Array) a = [a];
	for(var i=0;i<a.length;i++){
		if(a[i].constructor==String){
			var div = create("div");
			div.innerHTML = a[i];
			for(var j=0;j<div.childNodes.length;j++)
				r[r.length] = div.childNodes[j];
		} else if(a[i].length){//If it's an array
			for(var j=0;j<a[i].length;j++)
				r[r.length] = a[i][j];
		} else {
			r[r.length] = a[i];
		};
	};
	return r;
};
//获取一个元素文本内容的通用函数。
function text(e){
	var t="";
	e = e.childNodes || e;
	for (var j=0;j<e.length;j++){
		t += e[j].nodeType!=1? e[j].nodeValue : text(e[j].childNodes);
	};
	return t;
};
//检测元素是否有一个指定的特性
function hasAttribute(elem,name){
	return  elem.getAttribute(name)!=null;
};
//获取和设置元素特性的值
function attr(elem,name,value){
	if(!name||name.constructor!=String) return '';
	name = {'for':'htmlFor','class':'className'}[name]||name;
	if(typeof(value)!='undefined'){
		elem[name] = value;
		if(elem.setAttribute) elem.setAttribute(name,value);
	};
	//return elem[name] || elem.getAttribute(name) || '';
	return elem[name] || elem.getAttribute(name);
};

//删除一个独立的DOM节点
function remove(elem){
	if(elem) elem.parentNode.removeChild(elem);
};
//删除一个Dom元素中的所有子节点。
function empty(elem){
	while(elem.firstChild)
		remove(elem.firstChild);
};
//=============================================================================================================
//=============================================================================================================
//=============================================================================================================
function serialize(a){
	var s = [];//串行化结果的集合
	if (a.constructor==Array){//若传入的参数是数组，假定他们是表单元素的数组。
		for (var i=0;i<a.length;i++)//串行化表单元素
			s.push(a[i].name+"="+encodeURIComponent(a[i].value));
	} else {
		for (var j in a)//串行化键值对
			s.push(j+"="+encodeURIComponent(a[j]));
	};
	return s.join("&");
};
//=============================================================================================================
//=============================================================================================================
//=============================================================================================================
function SetCookie(name,value){
	//检测参数
	if(!name || !value){
		//throw new Error("SetCookie(name,value) 参数必须")
	}
	var argv = arguments;
	var argc = arguments.length;

	var nextyear = new Date();
	nextyear.setFullYear(nextyear.getFullYear() + 1);
	var c = name + "=" + value +";path=/;" +"expires=" + nextyear.toGMTString();
		
	document.cookie = c;
};
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 getCookieVal(offset){
	var endstr = document.cookie.indexOf (";", offset);
	if (endstr == -1){
		endstr = document.cookie.length;
	}
	return unescape(document.cookie.substring(offset, endstr));
};

function IsCookie(){
	var now_time = new Date().getTime().toString();
	SetCookie(now_time,now_time);
	if(GetCookie(now_time) == now_time){
		SetCookie(now_time,"");
		return true;
	}
	return false;
};
//======================================================================================
//======================================================================================
//======================================================================================


//===========================================================
function EnterToDo(obj,strFunName){
    obj.onkeydown = function(e){
        if(isIE){
            if(getkeyCode(event) == 13){
                eval(strFunName);
		        document.body.focus();
		        return false;
            };
        } else {
            if(getkeyCode(e) == 13){
                eval(strFunName);
		        document.body.focus();
		        return false;
            };
        };
    };
};
//===========================================================
function getkeyCode(e){
    var keynum = "";
    if(isIE) // window.event IE
    {
        keynum = e.keyCode;
    }
    else // Netscape/Firefox/Opera
    {
        keynum = e.which;
    }
    return keynum;
}
//===========================================================


//======================================================================================
//======================================================================================
//======================================================================================

// 取得单选框的值
function GetRadValue(strRadName){
	var objRad = tag(strRadName);
	var strReturn = "";
	for (var i=0;i<objRad.length;i++){
		if (objRad[i].checked==true){
			strReturn = objRad[i].value;
			break;
		};
	};
	return strReturn;
};
//取得复选框的值
function GetChkBoxValue(strRadName){
	var objChkBox = tag(strRadName);
	var strReturn = "";
	for (var i=0;i<objChkBox.length;i++){
		if (objChkBox[i].checked==true){
			if (strReturn!="") strReturn += ",";
			strReturn += objChkBox[i].value;
		};
	};
	return strReturn;
};
//初始化单选项
function InitRadioValue(strRadName,strIptName){
	try{
		var objRadio = tag(strRadName);
		var strIptValue = id(strIptName).value.toLowerCase();
		var strItmValue = "";
		if (strIptValue!=""){
			for (var i=0;i<objRadio.length;i++){
				strItmValue = objRadio[i].value.toLowerCase();
				if (strIptValue==strItmValue){
					objRadio[i].checked = true;
					break;
				};
			};
		};
	} catch(e){};
};

//初始化复选框
function InitChkBoxValue(strBoxName,strIptName){
	try{
		var objChkBox = tag(strBoxName);
		var strIptValue = id(strIptName).value.toLowerCase();
		var strItmValue = "";
		if (strIptValue!=""){
			var aryIptValue = strIptValue.split(",");
			for (var i=0;i<objChkBox.length;i++){
				strItmValue = objChkBox[i].value.toLowerCase();
				for (var j=0;j<aryIptValue.length;j++){
					if (strItmValue==aryIptValue[j].toLowerCase()){
						objChkBox[i].checked = true;
						break;
					};
				};
			};
		};
	} catch(e){};
};

//======================================================================================
//======================================================================================
//======================================================================================
function SwitchTab(strObjName,intClkNum){
	var objName = id(strObjName);
	//==============================================
	if (!objName) return false;
	//==============================================
	var strTitTag = attr(objName,"titTag");
	var strConTag = attr(objName,"conTag");
	var intMaxNum = parseInt(attr(objName,"maxNum"));
	var intCurNum = parseInt(attr(objName,"curNum"));
	//==============================================
	if (intClkNum==intCurNum) return false;
	//==============================================
	var objTit,objCon;
	try{
	    for (var i=1;i<=intMaxNum;i++){
		    objTit = id(strTitTag+i.toString());
		    objCon = id(strConTag+i.toString());
		    if (i==intClkNum){
			    objTit.className = "on";
			    objCon.className = "on";
		    } else {
			    objTit.className = "of";
			    objCon.className = "of";
		    };
    		
	    };
	}
	catch(e){}
	//==============================================
	attr(objName,"curNum",intClkNum);
};



function EchoGdsPic(strImgPath){
    if (IEVerNum<7){
        strCssText = "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src="+strImgPath+");";
    } else {
        strCssText = "background-image:url(" + strImgPath + ");";
    };
    id("BigImgDiv").style.cssText = strCssText;
};

function ChgGdsID(objClk,strGdsDiv,strRackCode,strGdsID){
	if (objClk.className == "on") return false;
	var objDD = $("#MuliColorBox dd");
	for (var i=0;i<objDD.length;i++){
		objDD[i].className = "of";
	};
	objClk.className = "on";
	//==================================
	var strGdsUrl = m_GdsBasePath + strRackCode+"/" + strGdsID + ".png";
	ChgGdsPic(strGdsDiv,strGdsUrl);
};



//加载机型下拉列表
function InitPhoneDdl(objDdl,strNetType){
	$.ajax({
		type    :'get',
		url     : m_WebBaseFolder + "/ajax/JsonGdsDdl.ashx",
		data    : "NetType="+strNetType+"&r=" + Math.random(),
		dataType: "json",
		success : function(msg){
                    objDdl.disabled = false;
                    //---------------------------------
                    objDdl.options.length = 1;
                    var objDT = msg.DataTable;
                    for (var i=0;i<objDT.length;i++){
                        objDdl.options[objDdl.length] = new Option(objDT[i].GdsName,objDT[i].GdsID);
                    };
                    //================================
		        }
	});
};

function ViewThisPhone(strGdsID){
    var strUrl = m_WebBaseFolder + "/product/PhoneDetail.aspx?phoneid="+strGdsID;
    document.location.href = strUrl;
};


//======================================================================================
//======================================================================================
//======================================================================================
function ChgProShow(intFlag){
    var objBtn = $(".ProShow .Lft ul li a");
    var objDiv = $(".ProShow .Lft ol li");
    //-------------------------------------
    objBtn.removeClass("on");
    objBtn.addClass("of");
    objBtn.eq(intFlag).removeClass("of");
    objBtn.eq(intFlag).addClass("on");
    //-------------------------------------
    objDiv.removeClass("on");
    objDiv.addClass("of");
    objDiv.eq(intFlag).removeClass("of");
    objDiv.eq(intFlag).addClass("on");
    //-------------------------------------
};
