/* Copyright (c) 2009 Smileweb co., Ltd.  All rights reserved.  www.smileweb.co.kr */

var cartFormName = new Array(':No:',':Num:',':Ordercode:',':Cartkey:',':Stage:',':Mref:',':Bidtype:',':Puid:',
							':Muid:',':Shop:',':Mname:',':Img:',':Mprice:',':Cppamt:',':Bidprice:',':Point:',
							':OptList:',':AdditemList:',':Sumprice:',':Payamt:',':Shipfee:',':Shipfeetypestr:', 
							':Giftstr:',':Regdate:',':Moddate:',':Order:',':Delete:',':Shopview:',':Rowspan:' ,
							':StageAction:', ':Tax:',':AdditemList2:',':OptList2:');
var cartFormValue = new Array();
var cartIeTableForm = "";
var cartCheckIdNum = 1;
var CartMakeForm = {};
var cartTempNullData = {

			
			No : "",
			Num : "",
			Ordercode :"", 
			Cartkey : "",
			Stage : "",
			Mref :"",
			Bidtype : "",				
			Puid : "", 
			Muid : "", 
			Shop : "",
			Mname : "",
			Img : "", 
			Mprice : "",
			Cppamt : "",
			Bidprice : "",
			Point : "",
			OptList : "",
			AdditemList : "",
			Sumprice : "",
			Payamt : "",
			Shipfee : "", 
			Shipfeetypestr : "",
			Giftstr : "",
			Regdate : "",				
			Moddate : "",
			Order : "",
			Delete : "",
			Shopview : "",
			Rowspan :"",
			StageAction:"",
			Tax:""
}

CartMakeForm = function(data, elID, listForm, callback, callbackGubun) {
	this.data = data;
	this.elID = elID;
	this.listForm = listForm;
	this.callback = callback;
	this.callbackGubun = callbackGubun;
	this.Make();
}

CartMakeForm.prototype =
{
	Make: function()
	{
		this.html = "";
		if (window.ActiveXObject && navigator.appVersion.indexOf("MSIE 8") < 0) { 	
			if (this.data.length != null && this.data.length > 0) {
				var tempCheckArray = new Array();
				tempCheckArray = this.listForm;
			
				for (var i = 0; i < this.data.length; i++) {
				
					if (this.listForm[0] != null) {
						try {
							this.html += this.Convert(this.data[i], this.listForm[i]);
						} 
						catch (e) {
							this.html += this.Convert(this.data[i], this.listForm[this.listForm.length - 1]);
						}
					}
					else {
						this.html += this.Convert(this.data[i], this.listForm);
					}		
					
					cartCheckIdNum++;
				}
				
				
			}
			else {
				if (this.data.num != null) {
				
					this.html = this.Convert(this.data, this.listForm);
				} else {

					this.html += this.Convert(this.data, this.listForm);
				}
			}
		}
		else 
		{
			if (this.data.length != null && this.data.length > 0) 
			{
				
				for (var i = 0; i < this.data.length; i++) {
				
					if (this.listForm[0].length > 5) {
						try {
							this.html += this.Convert(this.data[i], this.listForm[i]);
						} 
						catch (e) {
							this.html += this.Convert(this.data[i], this.listForm[this.listForm.length - 1]);
						}
					} 
					else {
						this.html += this.Convert(this.data[i], this.listForm);
					}					
					
					cartCheckIdNum++;
				}				
				
			}
			else {
				if (this.data.num != null) {
				
					this.html = this.Convert(this.data, this.listForm);
				}else {
				
					this.html += this.Convert(this.data, this.listForm);
				}
			}
		}
		
		
		if (window.ActiveXObject && ($(this.elID).tagName == "TBODY" || $(this.elID).tagName == "TR" || $(this.elID).tagName == "TABLE")) 
		{
		
			var xmlTable = $(this.elID);
			var xtableTopEl = xmlTable.parentElement;
			while(true){
				if(xtableTopEl.tagName == "TABLE"){
					xtableTopEl = xtableTopEl.parentElement;
					break;
				}else{
					xtableTopEl = xtableTopEl.parentElement;
				}
			}
			
			if(cartIeTableForm.length == 0) cartIeTableForm = xtableTopEl.innerHTML;
			
			xtableTopEl.innerHTML = cartIeTableForm.substr(0, cartIeTableForm.indexOf(this.elID) + this.elID.length + 1)+this.html+cartIeTableForm.substr(cartIeTableForm.indexOf(this.elID) + this.elID.length + 1, cartIeTableForm.length);
		
		}else {
			$(this.elID).innerHTML = this.html;
		}
		cartCheckIdNum = 1;
		if(this.callback != null && this.callbackGubun != null)	this.callback(this.callbackGubun);
	},

	Convert: function(data, listForm){

		if(data == null || data.Num == null || data.Num == "") return "";

		cartFormValue[1] = data.No ;
		cartFormValue[2] = "<a href=\"javascript:pop_payinfo('"+data.Ordercode+"')\">"+data.Ordercode+"</a>";

		cartFormValue[4] = data.Stage;
		cartFormValue[5] = data.Mref;
		cartFormValue[7] = data.Puid;
		cartFormValue[10] = data.Mname +"<br />"+data.Giftstr ;
		cartFormValue[11] = data.Img;
		cartFormValue[12] = data.Mprice +"원";
		if ( data.Cppamt !="0" ) cartFormValue[13] ="<img src=\"/images/common/icon/ico_dc.gif\" title=\"즉시할인\" title=\"즉시할인\"/> -" + data.Cppamt + "원"; 
		else  cartFormValue[13] ="";
		cartFormValue[14] = data.Bidprice +"원";
		cartFormValue[23] = data.Regdate;	   
	    cartFormValue[27] =" href=\"javascript:void(0);\" onclick=\"shopView('openwindow' , '"+data.Shop+"' , null); return false;\" ";
		cartFormValue[16] = this.MakeOptList( data.OptList , data.Cartkey ) ; 
		cartFormValue[17] = this.MakeAdditemList( data.AdditemList , data.Cartkey ) ; 
		cartFormValue[18] = data.Sumprice +"원";		
		cartFormValue[21] = data.Shipfeetypestr ;
		cartFormValue[28] = parseInt( data.AdditemList.length ) +1 ;
		cartFormValue[29] = data.StageAction ;
		cartFormValue[30] = data.Tax ;
		cartFormValue[31] = this.MakeAdditemList2( data.AdditemList , data.Cartkey ) ; 
		cartFormValue[32] = this.MakeOptList2( data.OptList , data.Cartkey ) ; 

		for(var l=0; l < cartFormName.length; l++){			
			listForm = listForm.replaceAll(cartFormName[l], cartFormValue[l]); 
		}

		return listForm;
	},

	MakeOptList: function(data, cartkey  ){
		
		optlist ="<table><colgroup><col width='150' /><col width='70' /></colgroup>";	        
		var class_end = "";
		if (  data.length ==1 )  class_end = "class='end' ";	
		
		for (i=0 ; i < data.length ; i++)
		{
			var list = data[i];
			
			optlist += "<tr><td "+class_end+">";
			if ( list.Optprice != "0" )  optlist += ""+ list.Optvalue +" : +"+ list.Optprice +" ";
			else  optlist += ""+ list.Optvalue +"";				
			
			optlist += "<br />수량 : "+list.Optqnt +"개" ;
			optlist += "</td>";
			
			if ( list.Optsumprice != "0" )  optlist += "<td  "+class_end+">+" +  list.Optsumprice + "원</td>";
			else optlist += "<td  "+class_end+"> - </td>";
			

		}

		optlist += "</table>";
		return optlist;
	},

	MakeOptList2: function(data, cartkey  ){
		
		optlist ="<table><colgroup><col width='90' /><col width='70' /></colgroup>";	        
		var class_end = "";
		if (  data.length ==1 )  class_end = "class='end' ";	
		
		for (i=0 ; i < data.length ; i++)
		{
			var list = data[i];
			
			optlist += "<tr><td "+class_end+">";
			if ( list.Optprice != "0" )  optlist += ""+ list.Optvalue +" : +"+ list.Optprice +" ";
			else  optlist += ""+ list.Optvalue +"";				
			
			optlist += "<br />수량 : "+list.Optqnt +"개" ;
			optlist += "</td>";
			
			if ( list.Optsumprice != "0" )  optlist += "<td  "+class_end+">+" +  list.Optsumprice + "원</td>";
			else optlist += "<td  "+class_end+"> - </td>";
			

		}

		optlist += "</table>";
		return optlist;
	},

	MakeAdditemList: function(data, cartkey )
	{
		var addlist ="";	        
		for (i=0 ; i < data.length ; i++)
		{
			var list = data[i];

		    addlist +="<tr><td></td>";
			addlist +="<td>";
			addlist +="<div class='cart_goods'>";
			addlist +="<dl>";
			addlist +="<dt><img src='/images/order/icon_add.gif' title='추가상품=>' /></dt>";
			addlist +="<dd>"+ list.Additemvalue +"</dd>";
			addlist +="</dl>";
			addlist +="</div>";
			addlist +="</td>";
			
			if ( list.Additemprice != "0" )  addlist += "<td class='num f_bold'>" +  list.Additemprice + "원</td>";
			else addlist +="<td class='num f_bold'> </td>";

			addlist +="<td class='tbl_cart_line' colspan='2'>";
			addlist +="<table>";
			addlist +="<colgroup>";
			addlist +="<col width='150' /><col width='70' />";
			addlist +="</colgroup>";
			addlist +="<tr>";
			addlist +="<td class='end'>수량 : "+list.Additemqnt+"개";
			addlist += "</td>";

			if ( list.Additemsumprice != "0" )  addlist += "<td class='end' >+" +  list.Additemsumprice + "원</td>";
			else addlist +="<td class='end' > - </td>";

			addlist +="</tr>";
			addlist +="</table>";
			addlist +="</td>";
			addlist +="</tr>";

	   }

		return addlist;
	},

	MakeAdditemList2: function(data, cartkey )
	{
		var addlist ="";	        
		for (i=0 ; i < data.length ; i++)
		{
			var list = data[i];

		    addlist +="<tr><td></td>";
			addlist +="<td>";
			addlist +="<div class='cart_goods'>";
			addlist +="<dl>";
			addlist +="<dt><img src='/images/order/icon_add.gif' title='추가상품=>' /></dt>";
			addlist +="<dd>"+ list.Additemvalue +"</dd>";
			addlist +="</dl>";
			addlist +="</div>";
			addlist +="</td>";
			
			if ( list.Additemprice != "0" )  addlist += "<td class='num f_bold'>" +  list.Additemprice + "원</td>";
			else addlist +="<td class='num f_bold'> </td>";

			addlist +="<td class='tbl_cart_line3' colspan='4'>";
			addlist +="<table>";
			addlist +="<colgroup>";
			addlist +="<col width='90' /><col width='70' />";
			addlist +="</colgroup>";
			addlist +="<tr>";
			addlist +="<td class='end' style='font-size:11px;'>수량 : "+list.Additemqnt+"개";
			addlist += "</td>";

			if ( list.Additemsumprice != "0" )  addlist += "<td class='end num' style='font-size:11px;'>+" +  list.Additemsumprice + "원</td>";
			else addlist +="<td class='end' > - </td>";

			addlist +="<td class='end'>";
			addlist += "</td>";
			addlist +="<td class='end'>";
			addlist += "</td>";

			addlist +="</tr>";
			addlist +="</table>";
			addlist +="</td>";
			addlist +="</tr>";

	   }

		return addlist;
	}



} 


function chk_number2 ( fl , value ) 
{	
	if ( value == "undefined" || value == null  || value == ""  ||   value  < 0 ) value = 0 ;

	var t = fl.value ;
	for(i=0;i<t.length;i++) 
	{	
		if ( t.charAt(i)<'0' || t.charAt(i)>'9' ) 
		{	
				alert("숫자만 입력해주세요.") ;
				fl.value = value ;
				fl.focus() ;
				return false ;
		}
	}
}
  



var cartListKey = new Array(2);
var cartListViewNum = 0; 
var loaddata;
var cartListConfig = new Array(2);
cartListConfig[0] = "";
cartListConfig[1] = "";
cartListConfig[2] = "";
cartListConfig[3] = "";


function CartBaseConfig( codetype, ordercode, stage, mref){
	cartListConfig[0] = codetype ; //
	cartListConfig[1] = ordercode ; 
	cartListConfig[2] =  stage; 
	cartListConfig[3] =  mref; 
}

function CartSetConfig(config)
{
	cartListKey[config.type] = config;	
}

function CartOrdercodeChange( ordercode )
{	
	cartListConfig[1] = ordercode; 
	CartSearch();
}

function ChangeCartListViewNum(num)
{
	cartListViewNum = num;	
}

function CartSearch() 
{
	this.param = CartMakeParam();
	new ajax.xhr.Request("/mypage/mypage_transaction/buycart_ok_management.php", this.param, SetCartList, 'POST');			
}

function CartPageSearch()
{
	this.param = CartMakeParam();
	new ajax.xhr.Request("/mypage/mypage_transaction/buycart_ok_management.php", this.param+"&page="+page, SetCartList, 'POST');
}

function CartSearchPage(pageNum)
{
	page = pageNum;
	CartPageSearch();
}

function CartMakeParam()
{
	var param = "&codetype="+cartListConfig[0];
	param += "&ordercode="+cartListConfig[1];
	param += "&stage="+cartListConfig[2];
	param += "&mref="+cartListConfig[3];
	return param;
}


function SetCartList(xmlDoc){
	var code = getNodeValue( xmlDoc.getElementsByTagName( 'code' ) );

	if (code == 'success') 
	{			
		loaddata = eval( "(" + getNodeValue( xmlDoc.getElementsByTagName ( 'data' ) ) + ")" );
		cartGsize=loaddata.length;
		new CartMakeForm(loaddata, cartListKey[cartListViewNum].s_cartListId, cartListKey[cartListViewNum].s_cartListForm, null, null);
		CartlistFullRow();
	
		var loadpaging = xmlDoc.getElementsByTagName('paging').item(0).firstChild.nodeValue;
		var paging = document.getElementById('paging2'); 
		var html = loadpaging;
		paging.innerHTML = html;

	}
}

function CartlistFullRow(){
	if(cartListKey[cartListViewNum].s_shopFullRow != null){
		if((loaddata.length % cartListKey[cartListViewNum].s_shopFullRow) > 0){
			for(var i =0 ; i < cartListKey[cartListViewNum].s_shopFullRow-(loaddata.length % cartListKey[cartListViewNum].s_shopFullRow); i++){
				$(cartListKey[cartListViewNum].s_cartListId).innerHTML = $(cartListKey[cartListViewNum].s_cartListId).innerHTML + cartListKey[cartListViewNum].s_shopFullRowForm;
			}
		}
	}
}




