ATcart = function(){ };
ATcart.loadFlag = 1;
ATcart.price = new Array();
ATcart.carriage = new Array();
ATcart.free = new Array();
ATcart.list = new Array();
ATcart.noItem = 1;
ATcart.error = "";
MakeForm2onDefault = function(){}

ATcart.winLoad = function (func){
	if (window.addEventListener) { //for W3C DOM
		window.addEventListener("pageshow", func, false);
	}else if (window.attachEvent) { //for IE
		window.attachEvent("onload", func);
	}else  {
		window.onload = func;
	}
}

ATcart.cartIn = function (plan,item){
	
	var objname = item + "_n";
	var n = document.getElementById(objname).value;
	var rnd = Math.random();
	
	var script = document.createElement("script");
	script.charset = "shift_jis";
	script.type= "text/javascript";
	script.src = "http://www.renamaria.jp/cart/cart.cgi?mode=cart_in&id="+plan+"&i="+item+"&n="+n+"&rnd="+rnd;
	document.body.appendChild(script);
	
	document.getElementById(objname).selectedIndex = 0;
	
}


ATcart.clear = function(plan){
	
	var rnd = Math.random();
	
	var script = document.createElement("script");
	script.charset = "shift_jis";
	script.type= "text/javascript";
	script.src = "http://www.renamaria.jp/cart/cart.cgi?mode=cart_in&action=clear&id="+plan+"&rnd="+rnd;
	document.body.appendChild(script);
	
}

ATcart.put = function(){
	
	ATcart.insert = function(data){
		
		if( data['item'] ){
			var len = data['item'].length;
			for( var i=0; i<len; i++ ){
				var u = data['item'][i][0];
				var n = data['item'][i][1];
				ATcart.list[u] = n;
			}
		}
		
		ATcart.printer(data);
	};
	
	var rnd = Math.random();
	
	var script = document.createElement("script");
	script.charset = "shift_jis";
	script.type= "text/javascript";
	script.src = "http://www.renamaria.jp/cart/cart.cgi?mode=cart_in&action=get&id=134097226047004&rnd="+rnd;
	
	document.body.appendChild(script);
}


ATcart.printer = function(data){
	// 価格表示
	ATcart.putPrice(data);
	// 送料表示
	ATcart.putCarriage(data);
	// 送料無料まで表示
	ATcart.putRest(data);
	// 個数プルダンを在庫数まで表示
	ATcart.putStock(data);
}

ATcart.setContent = function(){
	var Obj = document.getElementsByTagName('span');
	for(i=0; i < Obj.length; i++){
		var myObj = Obj[i];
		var idName =myObj.id;
		if( idName.match(/atcart_p_(\d+)/g) ){
			ATcart.setPrice(RegExp.$1,myObj);
		}
		if( idName.match(/atcart_c_(\d+)/g) ){
			ATcart.setCarriage(RegExp.$1,myObj);
		}
		if( idName.match(/atcart_r_(\d+)/g) ){
			ATcart.setRest(RegExp.$1,myObj);
		}
	}
	
	// 送料・支払い方法初期化
	//
	
	// 初期値がある場合
	if( MakeForm2onDefault ){
		MakeForm2onDefault();
	}
	
	// 金額表示
	ATcart.put();
	
}

ATcart.setPrice = function(plan,obj){
	
	ATcart.price.push(plan);
	var i = ATcart.price.length -1;
	var myName = "ATcart.price["+i+"]";
	//var mySpan = '<span id="'+myName+'">0</span>';
	//document.write(mySpan);
	//ATcart.myload();
	obj.id = myName;
}

ATcart.setCarriage = function(plan,obj){
	
	ATcart.carriage.push(plan);
	var i = ATcart.carriage.length -1;
	var myName = "ATcart.carriage["+i+"]";
	//var mySpan = '<span id="'+myName+'">0</span>';
	//document.write(mySpan);
	//ATcart.myload();
	obj.id = myName;
}

ATcart.setRest = function(plan,obj){
	
	ATcart.free.push(plan);
	var i = ATcart.free.length -1;
	var myName = "ATcart.free["+i+"]";
	//var mySpan = '<span id="'+myName+'">0</span>';
	//document.write(mySpan);
	//ATcart.myload();
	obj.id = myName;
}

ATcart.putPrice = function(data){
	
	var len = ATcart.price.length;
	
	for(var i=0;i<len;i++ ){
		var myName = "ATcart.price["+i+"]";
		var obj = document.getElementById(myName);
		var plan = ATcart.price[i];
		if( data[plan] ){
			var total = data[plan][0] -0;
			
			if( data[plan][1] == 1 ){
				//total = total -0 + (data[plan][2]-0);
			}
			obj.innerHTML = ATcart.comma(total);
		}else{
			obj.innerHTML = 0;
		}
	}
}

ATcart.putCarriage = function(data){
	
	var len = ATcart.carriage.length;
	
	for(var i=0;i<len;i++ ){
		var myName = "ATcart.carriage["+i+"]";
		var obj = document.getElementById(myName);
		var plan = ATcart.carriage[i];
		if( data[plan] ){
			obj.innerHTML = ATcart.comma(data[plan][2]);
		}else{
			obj.innerHTML = 0;
		}
	}
}

ATcart.putRest = function(data){
	
	var len = ATcart.free.length;
	
	for(var i=0;i<len;i++ ){
		var myName = "ATcart.free["+i+"]";
		var obj = document.getElementById(myName);
		var plan = ATcart.free[i];
		if( data[plan] ){
			if( data[plan][3] > 0 ){
				obj.innerHTML = ( data[plan][4] - data[plan][0] > 0)? ATcart.comma(data[plan][4] - data[plan][0]): 0;
			}else{
				obj.innerHTML = data['rest'][plan];
			}
		}else{
			if( data['rest'][plan] ){
				obj.innerHTML = data['rest'][plan];
			}
		}
	}
}

ATcart.putStock = function(data){
	for( key in data['stock'] ){
		var name1 = key + '_n';
		var inItem = document.getElementById(name1);
		if( inItem ){
			var stock = data['stock'][key];
			if( stock != "" ){
				stock -= 0; //正規化
				ATcart.defPull(inItem);
				if( stock > 0 ){
					for( i=0; i<stock; i++ ){
						inItem.length++;
						inItem[i].text = i+1;
						inItem[i].value = i+1;
					}
				}else{
					inItem.length++;
					inItem[0].text = 0;
					inItem[0].value = 0;
				}
			}
		}
		
	}
}

ATcart.myload = function(){
	if( ATcart.loadFlag > 0 ){
		ATcart.winLoad(ATcart.put);
	}
	ATcart.loadFlag = 0;
}


ATcart.winLoad(ATcart.setContent);
//ATcart.setContent();




// カートの中身用
ATcart.items = new Array();

ATcart.change = function (item,plan){
	
	var objname = item.name;
	var n = item.value;
	var rnd = Math.random();
	
	var script = document.createElement("script");
	script.charset = "shift_jis";
	script.type= "text/javascript";
	script.src = "http://www.renamaria.jp/cart/cart.cgi?mode=cart_in&action=change&id="+plan+"&i="+objname+"&n="+n+"&rnd="+rnd;
	document.body.appendChild(script);
	
}

ATcart.del = function (item,plan){
	var rnd = Math.random();
	
	var script = document.createElement("script");
	script.charset = "shift_jis";
	script.type= "text/javascript";
	script.src = "http://www.renamaria.jp/cart/cart.cgi?mode=cart_in&action=delete&id="+plan+"&i="+item+"&rnd="+rnd;
	document.body.appendChild(script);
	
}

ATcart.contents = function(){
	
	var len = ATcart.list.length;
	
	for(var i=0;i<len;i++ ){
		var myName = "ATcart.list["+i+"]";
		//var obj = document.getElementById(myName);
		alert(myName);
	}
	
}

ATcart.loadItems = function(plan, sflag, f){
	
	ATcart.setItem = function(data){
		
		var sum = 0;
		var itemTotal = 0;
		var taxTotal = 0;
		var carriage = 0;
		var payment = 0;
		var option = 0;
		var Total = 0;
		
		var len = data['items'].length;
		for(var i=0;i<len;i++ ){
			var name = data['items'][i][0];
			var price = data['items'][i][1];
			var tax = data['items'][i][2];
			
			ATcart.items['name'] = price;
			
			// 小計
			var totalName = name + '_total';
			if( document.getElementById(name) && ATcart.list[name] > 0 ){
				var n = document.getElementById(name).value;
				var obj = document.getElementById(totalName);
				obj.innerHTML = ATcart.comma(price * n);
				itemTotal += price * n;
				taxTotal += tax * n;
				Total += price * n;
				sum++;
			}
		}
		
		
		/* 送料 */
		document.getElementById('tr_carriage_non').style.display = "none";
		document.getElementById('tr_carriage_uniform').style.display = "none";
		document.getElementById('tr_carriage_area').style.display = "none";
		document.getElementById('tr_carriage_rest').style.display = "none";
		if( data['carriage'][0] == 0 ){
			document.getElementById('tr_carriage_non').style.display = "";
		}else if( data['carriage'][0]== 1 ){
			carriage = data['carriage'][1];
			document.getElementById('tr_carriage_uniform').style.display = "";
		}else if( data['carriage'][0]== 2 ){
			var a = document.cartitem.carriage_area.value -0;
			if( a > 0 ){
				carriage = data['carriage_area'][a][0] -0;
				var area = document.getElementById('carriage_area_p');
				area.innerHTML = ATcart.comma(carriage);
				// 送料空欄の都道府県を非表示
				ATcart.defPull(document.cartitem.carriage_area);
				var c = 0;
				var s = 0;
				for(key in data['carriage_area']){
					if( data['carriage_area'][key][0] != "" ){
						document.cartitem.carriage_area.length++;
						document.cartitem.carriage_area.options[c].text = data['carriage_area'][key][1];
						document.cartitem.carriage_area.options[c].value = key;
						if( a == key ){s = c;}
						c++;
					}
				}
				document.cartitem.carriage_area.selectedIndex = s;
				
			}
			document.getElementById('tr_carriage_area').style.display = "";
		}
		if( data['carriage_rest'] ){
			if( data['carriage_rest'] > 0 ){
				if( itemTotal >= data['carriage_rest'] ){
					document.getElementById('tr_carriage_non').style.display = "none";
					document.getElementById('tr_carriage_uniform').style.display = "none";
					document.getElementById('tr_carriage_area').style.display = "none";
					document.getElementById('tr_carriage_rest').style.display = "";
					carriage = 0;
				}
			}
		}
		Total += carriage;
		
		/* 支払い方法 */
		for( var i=0;i<=4;i++ ){
			var ind = i+1;
			var obj = document.getElementById('tr_payment'+ind);
			if( obj ){
				obj.style.display = "none";
				if( data['payment'][i][0] > 0 ){
					obj.style.display = "";
					if( document.cartitem.payment[i].checked == true ){
						payment = data['payment'][i][1]	 -0;
					}
				}
 			}
		}
		// クレジット
		var credit = document.getElementById('tr_payment_credit');
			if( credit ){
				credit.style.display = "none";
				if( data['payment'][5][0] > 0 ){
					credit.style.display = "";
					if( document.cartitem.payment[5].checked == true ){
						payment = data['payment'][5][1]	 -0;
					}
				}
 		}
		Total += payment;
		
		// 追加オプション
		for( var i=0;i<=4;i++ ){
			var ind = i+1;
			var obj = document.getElementById('tr_option'+ind);
			var elem = document.getElementById('option'+ind);
			if( obj ){
				obj.style.display = "none";
				if( data['options'][i][0] > 0 ){
					obj.style.display = "";
					if( elem.checked == true ){
						option += data['options'][i][1]	 -0;
					}
				}
 			}
		}
		Total += option;
		
		// 商品税金
		var itemTaxObj = document.getElementById('tax');
		itemTaxObj.innerHTML = ATcart.comma(taxTotal);
		
		if( taxTotal <= 0 ){
			document.getElementById('tax_tr').style.display = "none";
		}else{
			document.getElementById('tax_tr').style.display = "";
		}
		
		// 商品小計金額
		var itemTotalObj = document.getElementById('item_total');
		itemTotalObj.innerHTML = ATcart.comma(itemTotal);
		
		// 送料
		var carriageObj = document.getElementById('carriage');
		carriageObj.innerHTML = ATcart.comma(carriage);
		
		// 支払い手数料
		var paymentObj = document.getElementById('payment_total');
		paymentObj.innerHTML = ATcart.comma(payment);
		
		// 追加オプション料金
		var optionObj = document.getElementById('option_total');
		optionObj.innerHTML = ATcart.comma(option);
		
		// 合計金額
		var totalObj = document.getElementById('total');
		totalObj.innerHTML = ATcart.comma(Total);
		
		if( !f ){
			f = document.cartitem;
		}
		
		ATcart.check(data,itemTotal,f);
		
		if( data['send'] ){
			
			MakeForm.send(f);
			/*
			if( data['send'] > 0 ){
				f.submit();
			}
			*/
		}
		if( sum <= 0 ){
			document.getElementById('non').style.display = "";
			ATcart.noItem = 1;
		}else{
			ATcart.noItem = 0;	
		}
		
	};
	
	// 地域
	var area;
	if( document.cartitem.carriage_area ){
		area = document.cartitem.carriage_area.value;
	}
	
	// 支払い方法
	var pay;
	if( document.cartitem.payment ){
		var len = document.cartitem.payment.length;
		for( var i=0; i<len; i++ ){
			if( document.cartitem.payment[i].checked == true ){
				pay = document.cartitem.payment[i].value;
			}
		}
	}
	
	var rnd = Math.random();
	
	var script = document.createElement("script");
	script.charset = "shift_jis";
	script.type= "text/javascript";
	script.src = "http://www.renamaria.jp/cart/cart.cgi?mode=cart_in&action=items&id="+plan+"&send="+sflag+"&area="+area+"&pay="+pay+"&rnd="+rnd;
	document.body.appendChild(script);
}


ATcart.check = function(data,total,f){
	ATcart.error = ""; // 初期化
	if( total <= 0 ){
		ATcart.error = data['error']['cart'];
		return 1;
	}
	if( data['carriage'] ){
		if( data['carriage'][0] == 2 ){
			var a = f.carriage_area.value -0;
			var carriage_error = "";
			if( a <= 0 ){
				carriage_error = data['error']['carriage'] + "\n";
			}
			if( data['carriage_rest'] ){
				if( data['carriage_rest'] > 0 && total >= data['carriage_rest'] ){
					carriage_error = "";
				}
			}
			ATcart.error = carriage_error;
		}
	}
	if( data['payment'][0][0] > 0 || data['payment'][1][0] > 0 || data['payment'][2][0] > 0 || data['payment'][3][0] > 0 || data['payment'][4][0] > 0  || data['payment'][5][0] > 0 ){
		var len = f.payment.length;
		for( var i=0; i<len; i++ ){
			if( f.payment[i].checked == true ){
				return 0;
			}
		}
		ATcart.error += data['error']['payment'] + "\n";
	}
	return 0;
}

ATcart.setDefault = function(){
	document.cartitem.carriage_area.selectedIndex = 0;
	var len = document.cartitem.payment.length;
	for( var i=0; i<len; i++ ){
		document.cartitem.payment[i].checked = false;
	}
}
ATcart.defPull = function(obj){
	
	var len = obj.length;
	for( i=len; i>=0; i-- ){
		obj[i] = null;
	}
	
}

ATcart.comma =  function( str ){
	var to = String( str );
	var tmp = "";
	while (to != (tmp = to.replace(/^([+-]?\d+)(\d\d\d)/,"$1,$2")))
	{        
		to = tmp;
	}
	return to;
}

ATcartAlert = function(){ };
ATcartAlert.cookieId = 'atcart';

ATcartAlert.winLoad = function (func){
	if (window.addEventListener) { //for W3C DOM
		window.addEventListener("pageshow", func, false);
	}else if (window.attachEvent) { //for IE
		window.attachEvent("onload", func);
	}else  {
		window.onload = func;
	}
}

ATcartAlert.thanks = function(){
	
	var myUniq; //ユニークID
	var Anchor = 0;
	var myhref = location.href;
	
	if( ATcartAlert.chkCookie() ){
		var uniq = ATcartAlert.getCookie(ATcartAlert.cookieId);
		myUniq = uniq;
	}else{
		Anchor = 1;
		var parts = location.href.split("#");
		var params = {};
		if (parts.length == 2) {
			var uniq = parts[1];
			if (uniq.search(/^atcart/i) != -1) {
		 		myUniq = uniq;
				myhref = parts[0];
			}else{
				Anchor = 0;
			}
		}
	}
	
	//コールバック
	ATcartAlertCallBack = function( flag, mes ){
		if( flag ){
			alert(mes);
		}
	}
	
	ATcartAlert.myConn();
	
	
	if( Anchor ){
		ATcartAlert.setUnip = function(url){
			//if( obj.uniq_a.value != '' || obj.uniq_a.value == 'nojs' )
			//	return;
			var uniq = 'atc-' + Math.random();
			//obj.uniq_a.value = uniq;
			//obj.href.value = myhref;
		};
	}else{
		ATcartAlert.setUnip = function(id){
			
			//if( obj.uniq_c.value != '' || obj.uniq_c.value == 'nojs' )
			//	return;
			//var uniq = 'atct-' + Math.random();
			//ATcartAlert.setCookie(ATcartAlert.cookieId,uniq);
			
			ATcartAlert.myConn2(id);
			//obj.uniq_c.value = uniq;
			//obj.href.value = myhref;
		};
	}
}

ATcartAlert.setCookie = function(cookieId,myValue){
	myItem = cookieId + "=" + escape(myValue) + ";";
	document.cookie =  myItem;
}

ATcartAlert.getCookie = function(cookieId){
	var cookie_name = cookieId + "=";
	myValue = null;
	myStr = document.cookie + ";" ;
	myOfst = myStr.indexOf(cookie_name);
	if (myOfst != -1){
		myStart = myOfst + cookie_name.length;
		myEnd   = myStr.indexOf(";" , myStart);
		myValue = unescape(myStr.substring(myStart,myEnd));
		return myValue;
	}
	return myValue;
}
ATcartAlert.chkCookie = function(){
	var cookieId = 'myCookieText';
	var str = 1;
	ATcartAlert.setCookie(cookieId,str);
	var myCookie = ATcartAlert.getCookie(cookieId);
	if( str == myCookie ){
		ATcartAlert.setCookie(cookieId,'');
		return 1;
	}
	return 0;
}

ATcartAlert.myConn = function(){
	var url = 'http://www.renamaria.jp/cart/cart.cgi?mode=jsonp&p=';
	var rnd = Math.random();
    var script = document.createElement("script");
    script.charset = "shift_jis";
    script.src = url + '&f=1' + '&rnd='+ rnd;
	script.type= "text/javascript";
	document.body.appendChild(script);
}
ATcartAlert.myConn2 = function(id){
	var myhref = location.href;
	var url = 'http://www.renamaria.jp/cart/cart.cgi?mode=jsonp&p=';
	var rnd = Math.random();
    var script = document.createElement("script");
    script.charset = "shift_jis";
    script.src = url + '&u=' + id + '&s=1' + '&rnd='+ rnd;
	script.type= "text/javascript";
	document.body.appendChild(script);
}

ATcartAlert.winLoad(ATcartAlert.thanks);