var qms_url = "https://www.ibm.com/support/quote/jp/managementsystem/noa/esr.wss?catalogNo=";

/**
 * オーダー保存
 */
function setOrder(cookieName){
	var orderForm = document.OrderForm;
	
	/**
	 * Cookieの保存形式
	 * agentOrder=--製品番号:モデル:製品名:価格:個数
	 */

	//Cookieキー
	var key = cookieName + "=";

	//区切り文字
	var valPause = ":" ;

	//製品番号(textがもつ)
	var productNo = null;
	//製品情報(形式 "モデル名:製品名:価格:")(hiddenがもつ) 
	var productInfo = null;

	//textとhiddenの値を比較するために使用する
	var nowOrder = null;
	
	//Cookie取得
	var tempCookie = getCookieValue(cookieName);
	
	
	
	//入力情報を取得
	for (var i = 0; i < orderForm.length; i++) {
		//INPUTオブジェクトを取得(textまたはhidden)
		var e = orderForm.elements[i]; 
		if(e.type == "hidden"){
			//製品情報取得
			productInfo = e.name;
			//エンコード
			var index1 = productInfo.indexOf(":",0);
			var index2 = productInfo.indexOf(":",(index1+1));
			var index3 = productInfo.length;
			var temp1 = productInfo.substring(0,index1);
			var temp2 =	productInfo.substring((index1+1),index2);
			var temp3 = productInfo.substring((index2+1),(index3-1));
			//alert(temp2 + " : " + encodeSafe65(temp2));
			productInfo = temp1 + ":" + encodeSafe65(temp2) + ":" + temp3 + ":";
			
			
		}else if ( e.type == "text") {
			//テキストフィールドの入力値取得(現在の注文数)
			nowOrder = e.value;
			
			//製品番号取得
			productNo = e.name;
			
			
			//保存済みの製品情報がある場合、削除
			if(tempCookie != null){
				var tempStart = tempCookie.indexOf( productNo );
				if( tempStart > -1 ) {
					var infoStart = tempStart;
					var infoEnd = tempCookie.indexOf(valPause, infoStart);
					var infoName = tempCookie.substring( infoStart , infoEnd );
					//モデル名取得
					var modelStart = infoEnd + 1;
					var modelEnd =  tempCookie.indexOf( valPause, modelStart);
					var modelName = tempCookie.substring( modelStart , modelEnd );
					//製品名取得
					var nameStart = modelEnd + 1 ;
					var nameEnd =  tempCookie.indexOf( valPause, nameStart);
					var productName = tempCookie.substring( nameStart, nameEnd );
					//価格取得
					var priceStart = nameEnd +1 ;
					var priceEnd = tempCookie.indexOf( valPause, priceStart );
					var productPrice = tempCookie.substring( priceStart, priceEnd );
					//個数取得
					var numberStart = priceEnd +1 ;
					var numberEnd = tempCookie.indexOf( valPause, numberStart );
					var preOrdertNum = tempCookie.substring(numberStart, numberEnd );
					tempCookie = tempCookie.substring(0,tempStart -2) + tempCookie.substring( (numberEnd+1) );
					
				}
			}
			
			if(nowOrder == "0" || nowOrder == ""){
				nowOrder = null;
			}
			
		}
		
		
		if(nowOrder != null && productInfo != null && productInfo != ""){
			if(tempCookie != null){
				tempCookie = tempCookie + "--" + productNo + ":" + productInfo + nowOrder + ":";
			}else{
				tempCookie = "--" + productNo + ":" + productInfo + nowOrder + ":";
			}
			
			nowOrder = null;
			productInfo = null;
		}
		
	}
	
	if(tempCookie != null && tempCookie != "" && tempCookie != "null"){
		document.cookie = key + tempCookie + ";domain=.ibm.com;path=/"; 
		//document.cookie = key + tempCookie + ";domain=.ibm.com;path=/industries/jp/shop/";
		//document.cookie = key + tempCookie + ";domain=.ibm.com;path=/support/quote/jp/managementsystem/noa/";
  }else{
		deleteCookie(cookieName);
	}
	
	return "true";
}

/*        クッキーを取り込む汎用関数              */
/* 書式 : getCookieValue(クッキー名)              */
/* 戻り値 : 値(string)  null:該当なし             */
function getCookieValue(cookieName){
   cookieName = cookieName + "=";
   value = null;
   tempStr = document.cookie + ";" ;
   tempCookie = tempStr.indexOf(cookieName);
   if (tempCookie != -1){
      tempStart = tempCookie + cookieName.length;
      tempEnd   = tempStr.indexOf(";" , tempStart);
      value = unescape(tempStr.substring(tempStart,tempEnd));
   }
   return value;
}

/**
 * カートに追加後、精算画面へ
 */
function setCart(catalogNo,prodName,cookieName,usc_key){
	if(checkMedia(prodName) == "false"){
		alert("Media Packのみでご注文は出来ません。\n対応するライセンスと一緒でのご提供となります。");
		return;
	}
	
	if( setOrder(cookieName) == "false" ){
		alert("code:1001 エラーが発生しました");
		return;
	}
	
	var cookieValue = getCookieValue(cookieName);
	if(cookieValue == null || cookieValue == "" || cookieValue == "null"){
		alert("製品を選択してください");
		return;
	}
	
	document.cookie = usc_key + "2000030203-M2ZG7ZRuzyE8qyS8s-M2kT9-M2ZG7ni_Hsopqv1_M24tHe48qTytmy.tHe6d72b_M10tMYxpzv9_LT4-TJ.AHvZuVZ5zM17tMe4-TJ.AHvZuVZ5VF1RpM3iGmY6pHn0uM1Z_HTo_qviGqyv8qAF8V3cG5noA70.AEJ6aO3P_EnZuzy08N018qy68qyS8M17AMDJaO20G7sZ-qkJ8K01dzT9GFYNpHs08gv.-H1xaL2o-ORJSod5ixreSob5W9f7aO20AMYZuHnv_L19GLJ4-LTxME2bpLVJ_msx_O1g_Fs.-OenuVoIaOs4pMea-OZSpzvKaLTR_HZ.MFYnGLVJaOeZpEZ4-LsNpHYa_LT.pFsipEsaAEJRpzvrIKvrVO1SG7s7pMeNpHYa_LT.pFsipEsaAEJRpzvrIKvrVO14pH1ZAFYZpTJxAHnm-HTmpsJg_EYZuHoiM0oIaLpv_L1aAEJ6GLT.UsJ.AHvZuGrqM8rq-8rqp9rqYGrqYxrqIGr3YGrqM9rqI9rqSP45D0h5DEa5DV3MpHd5DxrPSP45cGrISC/5DxfPaL2ZMEZRuM1g_EvSAHnnMEni_HVJVv-OMvT2Vv9S8sJcGOS=;domain=.ibm.com;path=/support/quote/jp/managementsystem/noa/";
	
	//精算画面に遷移する
	window.open(qms_url + catalogNo);
}


/**
 * カートに追加
 */
function addCart(prodName,cookieName){
	if(checkMedia(prodName) == "false"){
		alert("Media Packのみでご注文は出来ません。\n対応するライセンスと一緒でのご提供となります。");
		return;
	}
	
	if( setOrder(cookieName) == "false" ){
		alert("code:1002 エラーが発生しました");
		return;
	}
	
	document.location.href="/TestWeb/Sony_Index.html";
}

function roadCart(product,cookieName){
	var tempCookie = getCookieValue(cookieName);
	
	//区切り文字
	var valPause = ":" ;
	
	for(var i=0; i<product.length;i++){
		if(tempCookie != null){
			var tempStart = tempCookie.indexOf( product[i] );
			if( tempStart > -1 ) {
				var infoStart = tempStart;
				var infoEnd = tempCookie.indexOf(valPause, infoStart);
				var infoName = tempCookie.substring( infoStart , infoEnd );
				//モデル名取得
				var modelStart = infoEnd + 1;
				var modelEnd =  tempCookie.indexOf( valPause, modelStart);
				var modelName = tempCookie.substring( modelStart , modelEnd );

				//製品名取得
				var nameStart = modelEnd + 1 ;
				var nameEnd =  tempCookie.indexOf( valPause, nameStart);
				var productName = tempCookie.substring( nameStart, nameEnd );

				//価格取得
				var priceStart = nameEnd +1 ;
				var priceEnd = tempCookie.indexOf( valPause, priceStart );
				var productPrice = tempCookie.substring( priceStart, priceEnd );

				//個数取得
				var numberStart = priceEnd +1 ;
				var numberEnd = tempCookie.indexOf( valPause, numberStart );
				var preOrderNum = tempCookie.substring(numberStart, numberEnd );

				document.OrderForm.elements[product[i]].value = preOrderNum;
						
			}
		}
	}
}


/** 
 * Mediaのチェック 
 * メディアのみの選択はエラー
 */
function checkMedia(prodName){
	var orderForm = document.OrderForm;
	var temp;
	if(prodName == "rational"){
		temp = checkRational(orderForm);
	}else if(prodName == "lotus"){
		temp = checkLotus(orderForm);
	}else if(prodName == "websphere"){
		temp = checkWebSphere(orderForm);
	}else{
		alert("システムエラー");
		return;
	}
	return temp;
}

function checkRational(form){
	if(form.rm1.value != ""){
		if(form.rl1.value == "" || form.rl1.value == 0){
			form.rm1.focus();
			return "false";
		}
	}
	if(form.rm2.value != ""){
		if(form.rl2.value == "" || form.rl2.value == 0){
			form.rm2.focus();
			return "false";
		}
	}
	if(form.rm3.value != ""){
		if(form.rl3.value == "" || form.rl3.value == 0){
			form.rm3.focus();
			return "false";
		}
	}
	if(form.rm4.value != ""){
		if((form.rl4.value == "" || form.rl4.value == 0 )&&( form.rl5.value == "" || form.rl5.value == 0)){
			form.rm4.focus();
			return "false";
		}
	}
	if(form.rm5.value != ""){
		if(form.rl6.value == "" || form.rl6.value == 0 ){
			form.rm5.focus();
			return "false";
		}
	}
	if(form.rm6.value != ""){
		if((form.rl7.value == "" || form.rl7.value == 0)&&(form.rl8.value == "" || form.rl8.value == 0 )){
			form.rm6.focus();
			return "false";
		}
	}
	if(form.rm7.value != ""){
		if((form.rl9.value == "" || form.rl9.value == 0)&&(form.rl10.value == "" || form.rl10.value == 0 )){
			form.rm7.focus();
			return "false";
		}
	}
	if(form.rm8.value != ""){
		if((form.rl11.value == "" || form.rl11.value == 0)&&(form.rl12.value == "" || form.rl12.value == 0 )){
			form.rm8.focus();
			return "false";
		}
	}
	if(form.rm9.value != ""){
		if(form.rl13.value == "" || form.rl13.value == 0 ){
			form.rm9.focus();
			return "false";
		}
	}
	if(form.rm10.value != ""){
		if(form.rl14.value == "" || form.rl14.value == 0 ){
			form.rm10.focus();
			return "false";
		}
	}
	if(form.rm11.value != ""){
		if(form.rl15.value == "" || form.rl15.value == 0 ){
			form.rm11.focus();
			return "false";
		}
	}
}

function checkLotus(form){
	
	if(form.lm1.value != "" || form.lm2.value != ""){
		if(form.ll1.value == "" || form.ll1.value == 0){
				form.lm1.focus();
				return "false";
		}
	}
		
	if(form.lm3.value != "" || form.lm4.value != ""){
		if((form.ll2.value == "" || form.ll2.value == 0) &&
			(form.ll3.value == "" || form.ll3.value == 0) && 
			(form.ll4.value == "" || form.ll4.value == 0)){
				form.lm3.focus();
				return "false";
		}
	}

	if(form.lm5.value != ""){
		if(form.ll5.value == "" || form.ll5.value == 0){
			form.lm5.focus();
			return "false";
		}
	}
	
	if(form.lm6.value != ""){
			if((form.ll6.value == "" || form.ll6.value == 0) && (form.ll7.value == "" || form.ll7.value == 0)){
				form.lm6.focus();
				return "false";
		}
	}
}


function checkWebSphere(form){
	
	if(form.wm1.value != ""){
		if(form.wl1.value == "" || form.wl1.value == 0){
			form.wm1.focus();
			return "false";
		}
	}
	if(form.wm2.value != ""){
		if(form.wl2.value == "" || form.wl2.value == 0){
			form.wm2.focus();
			return "false";
		}
	}
	if(form.wm3.value != ""){
		if(form.wl3.value == "" || form.wl3.value == 0){
			form.wm3.focus();
			return "false";
		}
	}
}




/**
 * オーダー削除
 */
function deleteCookie(name) {
	var exp =new Date();
	exp.setTime(exp.getTime() - 1);
	document.cookie = name + "=;domain=.ibm.com;path=/";
	//document.cookie = name + ";domain=.ibm.com;path=/industries/jp/shop/";
	//document.cookie = name + "=;domain=.ibm.com;path=/support/quote/jp/managementsystem/noa/";
}


/**
 * 価格をカンマ区切りにする。
 */
function fmtPrice( price ) {
	var valFmtPrice = "";
	var str = String(price);
	var cnt = 0;
	for (j=str.length-1; j>=0; j--) {
		valFmtPrice = str.charAt(j) + valFmtPrice;
		cnt++;
		if (((cnt % 3) == 0) && (j != 0)) {
			valFmtPrice = ","+valFmtPrice;
		}
	}
	return valFmtPrice;
}

function popup1(sub_url){
	openWin=window.open(sub_url,'window1','toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1,width=800,height=600');
}