/*
 * This file is part of EC-CUBE
 *
 * Copyright(c) 2000-2007 LOCKON CO.,LTD. All Rights Reserved.
 *
 * http://www.lockon.co.jp/
 *
 * This program is free software; you can redistribute it and/or
 * modify it under the terms of the GNU General Public License
 * as published by the Free Software Foundation; either version 2
 * of the License, or (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 */
// 親ウィンドウの存在確認.
function fnIsopener() {
    var ua = navigator.userAgent;
    if( !!window.opener ) {
        if( ua.indexOf('MSIE 4')!=-1 && ua.indexOf('Win')!=-1 ) {
            return !window.opener.closed;
        } else {
        	return typeof window.opener.document == 'object';
        }
	} else {
		return false;
	}
}

// 郵便番号入力呼び出し.
function fnCallAddress(php_url, tagname1, tagname2, input1, input2) {
	zip1 = document.form1[tagname1].value;
	zip2 = document.form1[tagname2].value;
	
	if(zip1.length == 3 && zip2.length == 4) {
		url = php_url + "?zip1=" + zip1 + "&zip2=" + zip2 + "&input1=" + input1 + "&input2=" + input2;
		window.open(url,"nomenu","width=500,height=350,scrollbars=yes,resizable=yes,toolbar=no,location=no,directories=no,status=no");
	} else {
		alert("郵便番号を正しく入力して下さい。");
	}
}

// 郵便番号から検索した住所を渡す.
function fnPutAddress(input1, input2) {
	// 親ウィンドウの存在確認。.
	if(fnIsopener()) {
		if(document.form1['state'].value != "") {
			// 項目に値を入力する.
			state_id = document.form1['state'].value;
			town = document.form1['city'].value + document.form1['town'].value;
			window.opener.document.form1[input1].selectedIndex = state_id;
			window.opener.document.form1[input2].value = town;
		}
	} else {
		window.close();
	}		
}

function fnOpenNoMenu(URL) {
	window.open(URL,"nomenu","scrollbars=yes,resizable=yes,toolbar=no,location=no,directories=no,status=no");
}

function fnOpenWindow(URL,name,width,height) {
	window.open(URL,name,"width="+width+",height="+height+",scrollbars=yes,resizable=no,toolbar=no,location=no,directories=no,status=no");
}

function fnSetFocus(name) {
	if(document.form1[name]) {
		document.form1[name].focus();
	}
}

// セレクトボックスに項目を割り当てる.
function fnSetSelect(name1, name2, val) {
	sele1 = document.form1[name1]; 
	sele2 = document.form1[name2];
	
	if(sele1 && sele2) {
		index=sele1.selectedIndex;
		
		// セレクトボックスのクリア	
		count=sele2.options.length
		for(i = count; i >= 0; i--) {
			sele2.options[i]=null;
		}
		
		// セレクトボックスに値を割り当てる。
		len = lists[index].length
		for(i = 0; i < len; i++) {
			sele2.options[i]=new Option(lists[index][i], vals[index][i]);
			if(val != "" && vals[index][i] == val) {
				sele2.options[i].selected = true;
			}
		}
	}
}

// Enterキー入力をキャンセルする。(IEに対応)
function fnCancelEnter()
{
	if (gCssUA.indexOf("WIN") != -1 && gCssUA.indexOf("MSIE") != -1) {
		if (window.event.keyCode == 13)
		{
			return false;
		}
	}
	return true;
}
function validate(key){
	var a = document.form1[key].value;
	if (a==""||a==null){
		alert("文件名不能为空");
		return false;
	}
	else{
		return true;
	}
}
// モードとキーを指定してSUBMITを行う。
function fnModeSubmit(mode, keyname, keyid) {
	switch(mode) {
	case 'delete_category':
		if(!window.confirm('确定删除你选择的分类的所有分别吗')){
			return;
		}
		break;
	case 'cartdelete':
		if(!window.confirm('是否删除本行商品？')){
			return;
		}
		break;	
	case 'delete':
		if(!window.confirm('确定要删除吗？')){
			return;
		}
		break;
	case 'confirm':
		if(!window.confirm('确定保存此内容？')){
			return;
		}
		break;
	case 'delete_all':
		if(!window.confirm('确定删除检索结果吗？')){
			return;
		}
		break;
	case'ban':
		if(!window.confirm('确定要停用吗？')){
			return;
		}
		break;
	case'unban':	
	    if(!window.confirm('确定要启用吗？')){
		    return;
	      }
	    break;
	 case'paper_copy':	
       if(!window.confirm('确定要复制吗？')){
	    return;
         }
       break;
     case'gift_send':	
        if(!window.confirm('确定要发送吗？')){
    	    return;  
        }
	    break;
     case'relation':	
         if(!window.confirm('确定要关联该问卷吗？')){
     	    return;  
         }
 	    break;
	    
	default:
		break;
	}
	document.form1['mode'].value = mode;
	if(keyname != "" && keyid != "") {
		document.form1[keyname].value = keyid;
	}
	document.form1.submit();
}

function fnFormModeSubmit(form, mode, keyname, keyid) {
	switch(mode) {
	case 'delete':
		if(!window.confirm('确定要删除吗？')){
			return;
		}
		break;
	case 'confirm':
		if(!window.confirm('确定保存此内容？')){
			return;
		}
		break;
	case 'regist':
		if(!window.confirm('确定保存此内容？')){
			return;
		}
		break;		
	default:
		break;
	}
	document.forms[form]['mode'].value = mode;
	if(keyname != "" && keyid != "") {
		document.forms[form][keyname].value = keyid;
	}
	document.forms[form].submit();
}

function fnSetFormSubmit(form, key, val) {
	document.forms[form][key].value = val;
	document.forms[form].submit();
	return false;
}

function fnSetFormVal(form, key, val) {
	document.forms[form][key].value = val;
}

function fnChangeAction(url) {
	document.form1.action = url;
}
function fnChangeTargetSelf(){
	document.form1.target ="_self";	
}
function fnChangeTargetBlank(){
	document.form1.target ="_blank";	
}
// ページナビで使用する。
function fnNaviPage(pageno) {
	document.form1['pageno'].value = pageno;
	document.form1['pagena'].value = parseInt((parseInt(pageno)-1)/9);
	document.form1.submit();
}
//送货地址页面用的分页跳转
function fnNaviPage1(pageno) {
	document.form_search['pageno'].value = pageno;
	document.form_search['pagena'].value = parseInt((parseInt(pageno)-1)/9);
	document.form_search.submit();
}

function fnSearchPageNavi(pageno) {
	document.form1['pageno'].value = pageno;
	document.form1['mode'].value = 'search';
	document.form1.submit();
	}

	function fnSubmit(){
	document.form1.submit();
}

// ポイント入力制限。
function fnCheckInputPoint() {
	if(document.form1['point_check']) {
		list = new Array(
						'use_point'
						);
	
		if(!document.form1['point_check'][0].checked) {
			color = "#dddddd";
			flag = true;
		} else {
			color = "";
			flag = false;
		}
		
		len = list.length
		for(i = 0; i < len; i++) {
			if(document.form1[list[i]]) {
				document.form1[list[i]].disabled = flag;
				document.form1[list[i]].style.backgroundColor = color;
			}
		}
	}
}

// 別のお届け先入力制限。
function fnCheckInputDeliv() {
	if(!document.form1) {
		return;
	}
	if(document.form1['deliv_check']) {
		list = new Array(
						'deliv_name01',
						'deliv_name02',
						'deliv_kana01',
						'deliv_kana02',
						'deliv_pref',
						'deliv_zip01',
						'deliv_zip02',
						'deliv_addr01',
						'deliv_addr02',
						'deliv_tel01',
						'deliv_tel02',
						'deliv_tel03'
						);
	
		if(!document.form1['deliv_check'].checked) {
			fnChangeDisabled(list, '#dddddd');
		} else {
			fnChangeDisabled(list, '');
		}
	}
}


// 購入時会員登録入力制限。
function fnCheckInputMember() {
	if(document.form1['member_check']) {
		list = new Array(
						'password',
						'password_confirm',
						'reminder',
						'reminder_answer'
						);

		if(!document.form1['member_check'].checked) {
			fnChangeDisabled(list, '#dddddd');
		} else {
			fnChangeDisabled(list, '');
		}
	}
}

// 最初に設定されていた色を保存しておく。
var g_savecolor = new Array();

function fnChangeDisabled(list, color) {
	len = list.length;
	
	for(i = 0; i < len; i++) {
		if(document.form1[list[i]]) {
			if(color == "") {
				// 有効にする。
				document.form1[list[i]].disabled = false;
				document.form1[list[i]].style.backgroundColor = g_savecolor[list[i]];
			} else {
				// 無効にする。
				document.form1[list[i]].disabled = true;
				g_savecolor[list[i]] = document.form1[list[i]].style.backgroundColor;
				document.form1[list[i]].style.backgroundColor = color;//"#f0f0f0";	
			}			
		}
	}
}


// ログイン時の入力チェック
function fnCheckLogin(formname) {
	var lstitem = new Array();
	
	if(formname == 'login_mypage'){
	lstitem[0] = 'mypage_login_email';
	lstitem[1] = 'mypage_login_pass';
	}else{
	lstitem[0] = 'login_email';
	lstitem[1] = 'login_pass';
	}
	var max = lstitem.length;
	var errflg = false;
	var cnt = 0;
	
	//　必須項目のチェック
	for(cnt = 0; cnt < max; cnt++) {
		if(document.forms[formname][lstitem[cnt]].value == "") {
			errflg = true;
			break;
		}
	}
	
	// 必須項目が入力されていない場合	
	if(errflg == true) {
		alert('请填写必要项目。');
		return false;
	}
}
	
// 時間の計測.
function fnPassTime(){
	end_time = new Date();
	time = end_time.getTime() - start_time.getTime();
	alert((time/1000));
}
start_time = new Date();

//親ウィンドウのページを変更する.
function fnUpdateParent(url) {
	// 親ウィンドウの存在確認
	if(fnIsopener()) {
		window.opener.location.href = url;
	} else {
		window.close();
	}		
}

//特定のキーをSUBMITする.
function fnKeySubmit(keyname, keyid) {
	if(keyname != "" && keyid != "") {
		document.form1[keyname].value = keyid;
	}
	document.form1.submit();
}

//文字数をカウントする。
//引数1：フォーム名称
//引数2：文字数カウント対象
//引数3：カウント結果格納対象
function fnCharCount(form,sch,cnt) {
	document.forms[form][cnt].value= document.forms[form][sch].value.length;
}


// テキストエリアのサイズを変更する.
function ChangeSize(button, TextArea, Max, Min, row_tmp){
	
	if(TextArea.rows <= Min){
		TextArea.rows=Max; button.value="小さくする"; row_tmp.value=Max;
	}else{
		TextArea.rows =Min; button.value="大きくする"; row_tmp.value=Min;
	}
}

//收货地址js编辑删除效果           -------------add by chen 20100101
/* 添加/修改收货信息 */	
function add_paypost(form,tag,action)
{
	if(document.getElementById("add").style.display=="none")
	{
		document.getElementById("add").style.display="";
		
		if(tag>=1)
		{
			form.mode.value=action;
			//修改时，进行表单输入
			form_input(tag);
		}
		else
		{
			form.mode.value=action;
		}
		
	}
	else
	{
		if(tag>=1)
		{
			form.mode.value=action;
			//修改时，进行表单输入
			form_input(tag);
		}
		else
		{
			form.mode.value=action;
			form.defaults.checked=false;
			form.name.value='';
			form.addr.value='';
			form.tel.value='';
			form.zip.value='';
			form.id.value='';
			form.nation.value="cn";
			
			form.province.disabled=false;
			form.city.disabled=false
			form.county.disabled=false
			//form.shanghai.disabled=false;
			//form.beijing.disabled=false;
			
			form.province.options[0].selected=true;
			form.city.options[0].selected=true;
			form.county.options[0].selected=true;
			form.city.length=1
			form.county.length=1;			
			//form.shanghai.options[0].selected=true;
			//form.beijing.options[0].selected=true;
		}
//		document.getElementById("add").style.display="none";
//		form.defaults.checked=false;
//		form.name.value='';
//		form.addr.value='';
//		form.tel.value='';
//		form.zip.value='';
//		form.id.value='';
//		form.nation.value="cn";
//		
//		form.province.disabled=false;
//		form.city.disabled=false
//		//form.shanghai.disabled=false;
//		//form.beijing.disabled=false;
//		
//		form.province.options[0].selected=true;
//		form.city.options[0].selected=true;
//		form.county.options[0].selected=true;
//		//form.shanghai.options[0].selected=true;
		//form.beijing.options[0].selected=true;
	}
}

//修改显示表单，输入值
function form_input(num)
{
	var obj=eval("document.form_update"+num);
	var form=document.form1;
	
	form.id.value=obj.id.value;
	//默认选择
	if(obj.defaults.value==1)
	{
		form.defaults.checked=true;
	}
	else
	{
		form.defaults.checked=false;
	}
	//姓名
	form.name.value=obj.name.value;
	
	
	//地址
	form.addr.value=obj.addr.value;
	
	//邮政编码
	form.zip.value=obj.zip.value;
	
	//电话
	form.tel.value=obj.tel.value;
					
	//地址
	form.addr.value=obj.addr.value;
		
	
	//选择省,市,区
	
	if((k = dsy_set_value(0, 'province_select', obj.province.value, 1))!==false)
	{
		//alert(k);
		id = '0_' + k;
		//alert(dsy_set_value(id, 'city_select', obj.city.value, 2));
		if((l = dsy_set_value(id, 'city_select', obj.city.value, 2))!==false)
		{
			id = id + '_' + l;
			//alert(id);
			dsy_set_value(id, 'county_select', obj.county.value, 3);
		}
	}
	
	
}
//获得地区的选择值
function getArea()
{
	if(document.form1.addr.value=='' && document.form1.province.value!='')
	{
		document.form1.addr.value=document.form1.province.value+" "+document.form1.city.value;
	}
	else if(document.form1.addr.value!='')
	{}
	else
	{
		document.form1.addr.value="";
	}
}
function close_paypost(form)
{
	document.getElementById("add").style.display="none";
	//document.form_paypost.defaults.checked=false;
	form.defaults.checked=false;
	form.name.value='';
	form.addr.value='';
	form.tel.value='';
	form.zip.value='';
	form.id.value='';
	form.nation.value="cn";
	
	form.province.disabled=false;
	form.city.disabled=false
	//form.shanghai.disabled=false;
	//form.beijing.disabled=false;
	
	form.province.options[0].selected=true;
	form.city.options[0].selected=true;
	form.county.options[0].selected=true;
	//form.shanghai.options[0].selected=true;
	//form.beijing.options[0].selected=true;
	form.city.length=1
	form.county.length=1;
}

//表单提交验证
function check_form()
{
	var obj=document.form1;
	
	if(obj.name.value.replace(/(^\s*)|(\s*$)/g,"")=='')
	{
		alert("请输入姓名！");
		obj.name.focus();
		return false;
	}
	
	if(obj.name.value.replace(/(^\s*)|(\s*$)/g,"")!='')
	{
        if(obj.name.value.match(/[^\a-z0-9A-Z\u4E00-\u9FA5]/g))
        {
         alert('用户名格式错误');
         obj.name.value="";
         obj.name.focus();
         return false;
        }
	}
	
	if(obj.tel.value.replace(/(^\s*)|(\s*$)/g,"")=='')
	{
		alert("电话或手机请至少填一项！");
		obj.tel.focus();
		return false;
	}
	if(obj.addr.value.replace(/(^\s*)|(\s*$)/g,"")=='')
	{
		alert("请填写收货地址！");
		obj.addr.focus();
		return false;
	}
	if(obj.addr.value.replace(/(^\s*)|(\s*$)/g,"")!='')
	{
        if(obj.addr.value.match(/[^\a-z0-9A-Z\u4E00-\u9FA5]/g))
        {
         alert('地址格式错误');
         obj.addr.value="";
         obj.addr.focus();
         return false;
        }
	}
	if(obj.zip.value.replace(/(^\s*)|(\s*$)/g,"")!='')
	{
		var pattern =/^[0-9]{6}$/;
        if(!pattern.exec(obj.zip.value))
        {
         alert('请输入正确的邮政编码！');
         obj.zip.value="";
         obj.zip.focus();
         return false
        }
	}
     



	
	if(obj.tel.value!='')
	{
		var patrn1=/^(([0-9]{3,4})(-?))?[0-9]{11}$/;		//手机
		var patrn2=/^([0-9]{3,4})(-?)[0-9]{7,8}$/;		//固定电话
		
		if(!patrn1.test(obj.tel.value) && !patrn2.test(obj.tel.value))
		{
			alert("电话格式错误！");
			obj.tel.focus();
			return false;
		}
	}
	
	if(obj.province.value=='省/直辖市')
	{
		alert("请选择省份名！");
		return false;
	}
}





