var xmlhttp = {
	i:0,
	tlink:'',
	start:'',//数据表开始条目
	sizelimit:20,//每次限制生成的表数
	type:'',//操作类型：ctab:生成新数据表conversion：转换数据
	block:'',//操作区块
	createxmlhttp:function(){
	   if (window.ActiveXObject)
		{
			this.xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
		else if (window.XMLHttpRequest)
		{
			this.xmlhttp=new XMLHttpRequest();
		}
	},
	handlestatechange:function(){
	  if (xmlhttp.xmlhttp.readyState==4)
	  {
		  if (xmlhttp.xmlhttp.status==200)
		  {
			var res_str=xmlhttp.xmlhttp.responseText;
			var tmp_ary=new Array();
			var tmp_tab=new Array();
			var tmp_str='';
			/*if (res_str=="HaveVirtual"){
				xmlhttp.$('showprocess').value = "暂不支持含有虚拟商品的网店升级！\r\n" + xmlhttp.$('showprocess').value;
				xmlhttp.$('statusProcessing').style.display = "none";
			}
			else */
			if (res_str=="ShopAdminNotWriteable")
			{
			    xmlhttp.$('showprocess').value = "请将shopadmin文件夹设为可写！\r\n" + xmlhttp.$('showprocess').value;
				xmlhttp.$('statusProcessing').style.display = "none";
			}
			else if (res_str=="HaveUpdated"){
				xmlhttp.$('showprocess').value = "您已经升级过数据库，若需要重新升级请删除update/update.lock！\r\n" + xmlhttp.$('showprocess').value;
				xmlhttp.$('statusProcessing').style.display = "none";
			}
			else if (res_str=="ConfigNotWriteable")
			{
				xmlhttp.$('showprocess').value = "配置文件夹不可写，请将config文件夹设为可写！\r\n" + xmlhttp.$('showprocess').value;
				xmlhttp.$('statusProcessing').style.display = "none";
			}
			else if (res_str=="GoodsImgNotWriteable")
			{ 
				xmlhttp.$('showprocess').value = "商品图片文件夹不可写，请将images/goods文件夹设为可写！\r\n" + xmlhttp.$('showprocess').value;
				xmlhttp.$('statusProcessing').style.display = "none";
			}
			else if (res_str=="BrandImgNotWriteable")
			{
				xmlhttp.$('showprocess').value = "品牌图片文件夹不可写，请将images/brand文件夹设为可写！\r\n" + xmlhttp.$('showprocess').value;
				xmlhttp.$('statusProcessing').style.display = "none";
			}
			else if (res_str=="ImgNotWriteable")
			{
			    xmlhttp.$('showprocess').value = "图片文件夹不可写，请将images文件夹设为可写！\r\n" + xmlhttp.$('showprocess').value;
				xmlhttp.$('statusProcessing').style.display = "none";
			}
			else if (res_str=="DefaultNotWriteable"){
				xmlhttp.$('showprocess').value = "请将images/default文件夹设为可写！\r\n" + xmlhttp.$('showprocess').value;
				xmlhttp.$('statusProcessing').style.display = "none";
			}
			else if (res_str=="DefaultUploadNotWriteable")
			{
				xmlhttp.$('showprocess').value = "请将images/default/upload文件夹设为可写！\r\n" + xmlhttp.$('showprocess').value;
				xmlhttp.$('statusProcessing').style.display = "none";	
			}
			else
			{
				tmp_ary=res_str.split("|");
				tmp_tab=tmp_ary[0].split("@");
				for(var k=0;k<tmp_tab.length;k++){
					if (tmp_tab[k]){
						tmp_str = tmp_str + "数据表：" + tmp_tab[k] + " 生成完毕！\r\n";
						//tmp_str = tmp_str + "数据表：" + tmp_tab[k] + " 生成完毕！<br>";
					}
					else{ 
						tmp_str = tmp_str + " \r\n";
						//tmp_str = tmp_str + " <br>";
					}
				}
				//xmlhttp.$('showprocess').innerHTML = tmp_str + xmlhttp.$('showprocess').innerHTML;
				xmlhttp.$('showprocess').value = tmp_str + xmlhttp.$('showprocess').value;
				if (tmp_ary[1]=="end"){
					 //xmlhttp.$('showprocess').innerHTML = "请不要关闭此页面，下面准备导入原有数据！<br>全部ShopEx48数据表生成完毕！" + "<br>" + xmlhttp.$('showprocess').innerHTML;
					 xmlhttp.$('showprocess').value = "请不要关闭此页面，下面准备导入原有数据！\r\n全部ShopEx48数据表生成完毕！" + "\r\n" + xmlhttp.$('showprocess').value;
					 setTimeout("xmlhttp.ConversionRecord('goods','mall_offer_pcat','400','0','conversion')",500);
					 
				}
				else{
					xmlhttp.start = xmlhttp.start + 1;
					setTimeout("xmlhttp.create48Table(xmlhttp.sizelimit,xmlhttp.start,xmlhttp.type)",50);
				}
			 }
		  }
	  }
	},
	create48Table:function(sizelimit,start,type){
		/*setTimeout("xmlhttp.ConversionRecord('goods','mall_offer_pcat','20','0','conversion')",500);*/
		this.$('statusProcessing').style.display = "block";
		this.$('statusSuccess').style.display = "none";
		this.$('startprocess').style.display = "none";
		this.$('tips').style.display = "none";
		this.createxmlhttp();
		this.start=start;
		this.sizelimit=sizelimit;
		this.type = type;
		this.xmlhttp.onreadystatechange=this.handlestatechange;
		this.$('startprocess').disabled = true;
		var qstring="t="+type+"&"+"sizelimit="+sizelimit+"&start="+start;
		var url="check48table.php";//生成48表结构
		this.xmlhttp.open("POST",url,true);
		this.xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
		this.xmlhttp.send(qstring);
	},
	ConversionRecord:function(block,tabname,size,record,type){
		this.createxmlhttp();
		this.block = block;
		this.tabname = tabname;
		this.size = size;
		this.record = record;
		this.type = type;
		this.xmlhttp.onreadystatechange=this.ConversionRecordBack;
		var qstring="t="+type+"&block="+block+"&tabname="+tabname+"&sizelimit="+size+"&record="+record;
		var url="check48table.php";//生成48数据
		this.xmlhttp.open("POST",url,true);
		this.xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
		this.xmlhttp.send(qstring);
	},
	ConversionRecordBack:function(){
		if (xmlhttp.xmlhttp.readyState==4){
				if(xmlhttp.xmlhttp.status==200){
					var str=xmlhttp.xmlhttp.responseText;
					var tmp_str = str.split("||",str);
					var tmp_text=new Array();
					tmp_text = str.split("||");
					var tmp_pram = new Array();
					tmp_pram = tmp_text[0].split("@");
					var block = tmp_pram[0];
					var tabname = tmp_pram[1];
					var size = tmp_pram[2];
					var record = tmp_pram[3];
					if (block=="end"&&tabname=="end"&&size=="end"&&record=="end"){
						if (tmp_text[1]=="setting")
						{ 
							tmp_text[1]="商店相关设置完毕";
						} 
						xmlhttp.$('showprocess').value = tmp_text[1] + '\r\n' + xmlhttp.$('showprocess').value;
						//xmlhttp.$('startpicprocess').style.display='block';
						//xmlhttp.$('showprocess').value = '点击【处理商品图片】进行图片的操作！\r\n数据全部成功导入！' + '\r\n' + xmlhttp.$('showprocess').value;
						//setTimeout("xmlhttp.copygoodsimg('0')",200);
						xmlhttp.$('showprocess').style.display='none';
						xmlhttp.$('copygoodsimage').style.display="block";
						xmlhttp.$('copygoodsimage').src="copyimage.php";
					}
					else{
						var conversion = 'conversion';
						if(tmp_text[1]!="")
						{
							switch (tmp_text[1])
							{
								case "goods":
									tmp_text[1]="商品相关数据导入完毕";
									break;
								case "member":
									tmp_text[1]="会员相关数据导入完毕";
									break;
								case "order":
									tmp_text[1]="订单相关数据导入完毕";
									break;
								case "paymethod":
									tmp_text[1]="支付方式相关数据导入完毕";
									break;
								case "sendmethod":
									tmp_text[1]="配送方式相关数据导入完毕";
									break;
								case "admin":
									tmp_text[1]="管理员相关数据导入完毕";
									break;
								case "gift":
									tmp_text[1]="赠品相关数据导入完毕";
									break;
								case "coupons":
									tmp_text[1]="优惠券相关数据导入完毕";
									break;
								case "currency":
									tmp_text[1]="货币相关数据导入完毕";
									break;
								case "article":
									tmp_text[1]="文章相关数据导入完毕";
									break;
								case "link":
									tmp_text[1]="友情链接相关数据导入完毕";
									break;
							}
							xmlhttp.$('showprocess').value = tmp_text[1] + '\r\n' + xmlhttp.$('showprocess').value;
						}
						setTimeout("xmlhttp.ConversionRecord('"+block+"','"+tabname+"','"+size+"','"+record+"','"+conversion+"')",500);
					}
				}
		}
	},
	checkvirtual:function(){ 
		this.createxmlhttp();
		this.xmlhttp.onreadystatechange=this.CheckvirtualResponse;
		var qstring="t=checkvirtual";
		var url="check48table.php";//生成48数据
		this.xmlhttp.open("POST",url,true);
		this.xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
		this.xmlhttp.send(qstring);
	},
	CheckvirtualResponse:function(){
		if (xmlhttp.xmlhttp.readyState==4){
			if (xmlhttp.xmlhttp.status==200){
				var str=xmlhttp.xmlhttp.responseText;
				if (str!='')
				{
					if (str=="NotNeedVersion")
					{ 
					   xmlhttp.$('tips').style.display="block";
					   xmlhttp.$('startprocess').disabled=true;
					   xmlhttp.$('tips').innerHTML = "<center><font color='red'><ul><li>当前版本不是Single V4.7.2，所以无法进行此次升级，请先确认您的版本号。</li></ul></font></center>";
					}
					else{
						var tmp=str.split("@");
						xmlhttp.$('tips').style.display="block"; 
						xmlhttp.$('vcount').innerHTML=tmp[0];
						xmlhttp.$('dcount').innerHTML=tmp[1];
					}
				}
				else{
					xmlhttp.$('tips').style.display="none";
				}
				xmlhttp.$('startprocess').style.display = "block";
			}
			else{
				xmlhttp.$('tips').innerHTML = "<center><font color='red'><ul><li>请稍候...</li></ul></font></center>";
			}
		}
	},
	checkversion:function(){ 
		this.createxmlhttp();
		this.xmlhttp.onreadystatechange=this.CheckversionResponse;
		var qstring="t=checkversion";
		var url="check48table.php";//生成48数据
		this.xmlhttp.open("POST",url,true);
		this.xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded;");
		this.xmlhttp.send(qstring);
	},
	CheckversionResponse:function(){
		if (xmlhttp.xmlhttp.readyState==4){
			if (xmlhttp.xmlhttp.status==200){
				var res_str=xmlhttp.xmlhttp.responseText;
				if (res_str!=''){
					if (res_str=="ToUpdate")
					{
						xmlhttp.create48Table(1,0,'ctab');
					}
					else if (res_str=="NoVersion")
					{
						xmlhttp.$('showprocess').value = "无法检测您的软件版本，不能为您升级！\r\n" + xmlhttp.$('showprocess').value;
						xmlhttp.$('statusProcessing').style.display = "none";
					}
					else if (res_str=="EqualFS")
					{
						xmlhttp.$('showprocess').value = "您的软件版本为Single 4.6或更低版本，请先升级到Single 4.7.2！\r\n" + xmlhttp.$('showprocess').value;
						xmlhttp.$('statusProcessing').style.display = "none";
					}
					else if (res_str=="EqualFSO")
					{  
						xmlhttp.$('showprocess').value = "您的软件版本为Single 4.7.1,请先升级到Single 4.7.2！\r\n" + xmlhttp.$('showprocess').value;
						xmlhttp.$('statusProcessing').style.display = "none";
					}
					else if (res_str.substr(0,11)=="ShowVersion")
					{
						xmlhttp.$('showprocess').value = "您的软件版本为"+ res_str.substr(12,res_str.length)+",请先升级到Single 4.7.2！\r\n" + xmlhttp.$('showprocess').value;
						xmlhttp.$('statusProcessing').style.display = "none";
					}
					else if (res_str=="NotCorrect")
					{
						xmlhttp.$('showprocess').value = "您的软件版本不是Single 4.7.2，请查看！\r\n" + xmlhttp.$('showprocess').value;
						xmlhttp.$('statusProcessing').style.display = "none";
					}
				}
			}
		}
	},
	$:function(id){
		return document.getElementById(id);
	}
}
