function GetXmlHttpObject()
{
  
  var xmlHttp=null;
  try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
  catch (e)
    {
    // Internet Explorer
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
    catch (e)
      {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    }
  return xmlHttp;
}

	function saveRedeemedPoints( address, serviceCode)	
	{
		var userPoints = document.frmconfirmOrder.points.value ;
		var totalPrice = document.frmconfirmOrder.hid_total_price.value ;
		xmlHttp = GetXmlHttpObject();
		if (xmlHttp==null)
		{
		  //alert ("Your browser does not support AJAX!");
		  return;
		}
		if((userPoints == '') || (userPoints <= 0) || (!isPointsNumeric(userPoints)))
		{
			userPoints = 0;			
			document.frmconfirmOrder.points.value = '';		
			document.frmconfirmOrder.points.focus();
			document.getElementById('used_points').innerHTML = 0;
			/* var err_div  = document.getElementById('error_message');		
  			err_div.style.display = 'block'; 
  			err_div.innerHTML = msg_numeric_point;
  			*/
  			document.frmconfirmOrder.grand_tot.value = document.frmconfirmOrder.hid_total_price.value +' 円';
  			scrollToTop();
			//return false;
		}
		//else
		//{
			var url= address + "/points/" + userPoints + "/total_price/" + totalPrice+"/ajaxSubmit/true/service_code/"+serviceCode ;
			//alert('address : ' + url);
			xmlHttp.onreadystatechange = function(){ 
				document.getElementById('error_message').style.display = 'none';
				if (xmlHttp.readyState==4)
				{ 
						var response = xmlHttp.responseText;
						if(response != 1)
						{
							if(response.indexOf("hideConfirmScreenModal('0', ")!=-1) {
								moveToTop();	
								document.getElementById('reedemPointsDiv').innerHTML = response;	
								sm('reedemPointsDiv',0,0);
								document.getElementById('error_message').style.display = 'block';
								hideErrorMessages();
								var arrayPageSize = pageSize();
								$('ol').style.height =arrayPageSize[1]+'px';							
							} else {							
								var err_div  = document.getElementById('error_message');		
	  							err_div.style.display = 'block';
								err_div.innerHTML = response ;
								document.frmconfirmOrder.points.value = '';
								document.frmconfirmOrder.points.focus();
					  			scrollToTop();
								document.getElementById('used_points').innerHTML = 0; 
								document.frmconfirmOrder.grand_tot.value = totalPrice +' 円';
							}
						}
						else
						{
							document.getElementById('used_points').innerHTML = (userPoints * -1);
							var newTotal = totalPrice - userPoints ;
							document.frmconfirmOrder.grand_tot.value = newTotal +' 円';
						}
				}
			}
			xmlHttp.open("GET",url,true);
			xmlHttp.send(null);
		//}
			
				
		
	}

   function populateTextBoxes(address,baseurl,userid) 
  {
	//return;
	xmlHttp = GetXmlHttpObject();
	if (xmlHttp==null)
	{
	  //alert ("Your browser does not support AJAX!");
	  return;
	} 
	//postcode = document.frmregister.postal_code.value ; 
	postcode = document.frmregister.postal_code1.value + document.frmregister.postal_code2.value ; 
	var err_div  = document.getElementById('error_message');
	if(postcode == "")
	{
		err_div.style.display = 'block';
		err_div.innerHTML = '<div class="'+document.getElementById('errorid').value+'">'+msg_postalcode_reg_error +'</div>';
		//err_div.innerHTML = msg_postalcode_reg_error; 
  		scrollToTop();
  		return false;
	}

	/*else if(!validatePostal(document.frmregister.postal_code1,msg_numericpcode_reg_error))
	{
  		return false;
	}
*/
	//niki
	else if((!isEmpty(document.frmregister.postal_code1,msg_postalcode_reg_error)) & (!isEmpty(document.frmregister.postal_code2,msg_postalcode_reg_error)))
		{
	  		scrollToTop();
	  		return false;
		}
       else if(!validatePostal1(document.frmregister.postal_code1,msg_numericpcode_reg_error))
		{
	  		scrollToTop();
	  		return false;
		}
		//else if(!isEmpty(document.frmregister.postal_code2,msg_postalcode_reg_error))
  		//return false;
		
		else if(!validatePostal2(document.frmregister.postal_code2,msg_numericpcode_reg_error))
		{
	  		scrollToTop();
	  		return false;
		}
	//niki
	var pcode = postcode ; 
	var url= address + "pcode/" + pcode +"/userId/" + userid ;
	xmlHttp.onreadystatechange = function(){ 
	//alert("state : " + xmlHttp.readyState) ;
			if (xmlHttp.readyState==4)
			{ 
					var response = xmlHttp.responseText;
					if(response.indexOf("ConfirmSessionLogin('0', ") !=-1) {
						moveToTop();	
						document.getElementById('editPostalCodeDiv').innerHTML = response;	
						sm('editPostalCodeDiv',0,0);
						//document.getElementById('error_message').style.display = 'block';
						//hideErrorMessages();
						var arrayPageSize = pageSize();
						$('ol').style.height =arrayPageSize[1]+'px';
					} else {
					var splitResult = response.split("-delimiter-");
					document.getElementById('error_message').style.display = 'none';
					if( (splitResult[1] == "" ) &&  (splitResult[2] == "" ) && (splitResult[3] == "" ) && (splitResult[4] == "" ) )
					{
						var err_div  = document.getElementById('error_message');		
  						err_div.style.display = 'block';
  						scrollToTop();
						err_div.innerHTML = msg_postalcode_not_found_error ;
					}
					//alert('address: ' +  splitResult[0]);
					document.frmregister.city.value = splitResult[0];
					document.frmregister.state.value = splitResult[1];
					document.frmregister.country.value = splitResult[2];
					document.frmregister.street_address1.value = splitResult[3]; 
					document.frmregister.street_address2.value = splitResult[4];
					for($i=0;$i<document.frmregister.prefecture.length;$i++)
					{
						if(document.frmregister.prefecture[$i].value == splitResult[5])
						{
							document.frmregister.prefecture.selectedIndex = $i ;
						}
					}
					}	
			}
		}
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
  }
  
  function ConfirmSessionLogin(focusid,baseUrl){
  	window.location=baseUrl+"/Index/editprofile/";
  	hm();
    }
  function refreshLeftPanel() 
  {
	var url = 'http://'+serverName+baseUrl+'/Menu/';
	xmlHttp = GetXmlHttpObject();
	if (xmlHttp==null)
	{
	  //alert ("Your browser does not support AJAX!");
	  return;
	} 

	var leftPanel  = document.getElementById('left_panel');
	
	xmlHttp.onreadystatechange = function(){ 

			if (xmlHttp.readyState==4)
			{ 
				leftPanel.innerHTML = xmlHttp.responseText ;
			
			}
		}
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
  }


	function isPointsNumeric(elem){
	var numericExpression = /^[0-9]+$/;
	if(elem.match(numericExpression)){
		return true;
 	}else{		
		return false;
	}
}