/*-------------------------------------------------------------------------------------------------------------------
 Script Name: functions.js
 Author: Tony Wei (魏志國)  tonywei123_at_gmail.com
 Description: JavaScript 共用函式庫
 Revision History:
   1.0: original version 2008/8/11
   1.1: 加上 download 專區的 login 2009/7/29
   1.2: 新增產品專區的友善列印 2010/8/27
-------------------------------------------------------------------------------------------------------------------*/

var sJobHeader = "<table cellspacing='0' bordercolordark='#ffffff' cellpadding='4' width='100%' bordercolorlight='#ffffff' border='1'><tbody><tr><td align='middle' bgcolor='#779fd2'>職務名稱</td><td align='middle' bgcolor='#779fd2'>工作地點</td><td align='middle' bgcolor='#779fd2'>學歷限制</td><td align='middle' bgcolor='#779fd2'>經歷</td><td align='middle' bgcolor='#779fd2'> </td></tr>";

// 職務類別下拉選單變更
function change_JC( JC_Serial )
{
	var sTemp = "";
	if ( JC_Serial == "" ) {
		sTemp = JAll;
	} else {
		sTemp = JC[ JC_Serial ];
	}
	document.getElementById( "div_job" ).innerHTML = sJobHeader + sTemp + "</tbody></table>";
	document.getElementById( "select_JL" ).selectedIndex = 0;
}

// 職務類別下拉選單變更
function change_JL( JL_Serial )
{
	var sTemp = "";
	if ( JL_Serial == "" ) {
		sTemp = JAll;
	} else {
		sTemp = JL[ JL_Serial ];
	}
	document.getElementById( "div_job" ).innerHTML = sJobHeader + sTemp + "</tbody></table>";
	document.getElementById( "select_JC" ).selectedIndex = 0;
}

// 語系下拉選單變更
function change_lang( lang )
{
	if ( lang != "" ) {
		location.href = "home.php?fn=" + lang + "/main";
	}
}

// 預先檢查驗證碼
function check_code( msg )
{
	var url = "home.php?fn=eng/check_code&rand=" + Math.random() + "&code=" + document.getElementById( "code" ).value;
	var objTag = ccioo_ajax_getXmlData( url ).getElementsByTagName("item");
	var sReturn = objTag[0].firstChild.nodeValue;
	if ( parseInt( sReturn ) > 0 ) {
		alert( msg );
		return false;
	}
	return true;
}

// 聯絡我們
function check_contact()
{
	if ( document.getElementById( "setmail" ).selectedIndex < 1 ) {
		alert( "Please choose your area!" );
		return false;
	}
	if ( ! check_required2( 'Name', 'Name' )     ) return false;
	if ( ! check_required2( 'E-mail', 'E-mail' )     ) return false;
	if ( ! check_email2( 'E-mail' ) ) return false;
	if ( ! check_required2( 'code', 'Verify code' ) ) return false;
	if ( ! check_code( "Please Input the correct code" ) ) return false;
	return true;
}

// 下載專區登入
function check_download()
{
	if ( ! check_required2( 'uid', 'User name' )     ) return false;
	if ( ! check_required2( 'pwd', 'Password' )     ) return false;
	return true;
}

// 中文版 -- 聯絡我們
function check_service02()
{
	if ( ! check_required( '姓名', '姓名' )     ) return false;
	if ( ! check_required( '電子郵件', '電子郵件' )     ) return false;
	if ( ! check_email( '電子郵件' ) ) return false;
	if ( ! check_required( 'code', '驗證碼' ) ) return false;
	if ( ! check_code( "請輸入正確的驗證碼!" ) ) return false;
	return true;
}

// 中文版 -- 聯絡我們
var allowed_exts;
function check_service04_01( fm )
{
	if ( ! check_required( '中文姓名', '中文姓名' )     ) return false;
	allowed_exts = "jpg|jpeg";
	if ( ! check_ext( '大頭照' ) ) {
		alert( "請重新選取您的大頭照!" );
		return false;
	}
	if ( ! check_required( '身份證字號', '身份證字號' )     ) return false;
	if ( ! ( fm.sex1.checked || fm.sex2.checked ) ) {
		alert( "請勾選您的性別!" );
		fm.sex1.focus();
		return false;
	}
	if ( ! check_required( '出生地', '出生地' )     ) return false;
	if ( ! check_required( '通訊地址', '通訊地址' )     ) return false;
	if ( ! check_required( '電子郵件', '電子郵件' )     ) return false;
	if ( ! check_email( '電子郵件' ) ) return false;
	if ( ! check_required( '期望待遇', '期望待遇' )     ) return false;
	if ( ! check_required( '可上班日期', '可上班日期' )     ) return false;
	if ( ! check_required( '自傳簡述', '自傳簡述' )     ) return false;
	allowed_exts = "doc|zip";
	if ( ! check_ext( '履歷表' ) ) {
		alert( "請重新選取您的履歷表!" );
		return false;
	}
	if ( ! check_ext( '畢業證書' ) ) {
		alert( "請重新選取您的畢業證書!" );
		return false;
	}
	if ( ! check_ext( '成績單' ) ) {
		alert( "請重新選取您的成績單!" );
		return false;
	}
	if ( ! check_ext( '其他佐證檔案' ) ) {
		alert( "請重新選取您的其他佐證檔案!" );
		return false;
	}
	if ( ! fm.accept.checked ) {
		alert( "請您確認您所填寫的資料均正確，並勾選「 本人同意所填上列各項均屬事實，若有不實或虛構，願接受取消錄取或受雇資格」" );
		return false;
	}
	return true;
}

// 我要應徵
function go_job( JD_Serial )
{
	location.href = "home.php?fn=chi/career04_01&no=" + JD_Serial;
}

// 輪胎改裝 -- 下拉選單變更
function show_size( j )
{
	for ( var i=0 ; i < 30 ; i++ )
	{
		if ( document.getElementById( "div_table" + i ) != null ) {
			document.getElementById( "div_table" + i ).style.display = "none";
		}
	}

	document.getElementById( "div_table" + j ).style.display = "";
}

// 新增產品專區的友善列印 2010/8/27
function print_me()
{
	var winA = window.open( "about:blank" );
	winA.document.write( "<html>\n<head>\n" );
	winA.document.write( "<link href='style.css' rel='stylesheet' type='text/css' />\n" );
	winA.document.write( "<link href='nankang.css' rel='stylesheet' type='text/css' />\n" );
	winA.document.write( "</head>\n<body>\n" );
	winA.document.write( "<table class='t3'>" + document.getElementById( "table_print" ).innerHTML + "</table>\n" );
	winA.document.write( "</body>\n</html>" );
	winA.document.close();
}


/*-------------------------------------------------------------------------------------------------------------------
 Function: bookmark()
 Description: 加入我的最愛
 Input: 網址，網站名稱
 Output: true or false
 Example: 
	bookmark( 'http://www.hinet.net/', 'Hinet' );
Revision History:
   1.0: original version 2008/4/17
-------------------------------------------------------------------------------------------------------------------*/
function bookmark( address, sitename ) {
	if ( window.sidebar ) {
		window.sidebar.addPanel( sitename, address,"" );
	} else if( document.all ) {
		window.external.AddFavorite( address, sitename );
	} else if( window.opera && window.print ) {
		return true;
	}
}

 /*-------------------------------------------------------------------------------------------------------------------
 Function: check_ext()
 Description: 檢查上傳檔案的副檔名
 Input: 上傳檔欄位 ID
 Output: 是否驗證通過 true or false
 Example: 
	check_ext( this.value );
Revision History:
   1.0: original version 2008/6/1
-------------------------------------------------------------------------------------------------------------------*/
function check_ext( objID )
{
	var objField = document.getElementById( objID );
	if ( typeof( allowed_exts ) == "undefined" ) {
		alert( "請先指定 allowed_exts 參數!" );
		return false;
	}
    if( objField.value == "" ) return true;
    var re = new RegExp("^.+\.("+ allowed_exts +")$", "i" );
    if( ! re.test( objField.value ) )
    {
        alert( "只允許下列格式檔案："+ allowed_exts.replace( /\|/g, ',' ) +" \n\n" );
        return false;
    }
    return true;
}

/*-------------------------------------------------------------------------------------------------------------------
 Function: check_required()
 Description: 檢查表單欄位是否有填寫
 Input: 物件ID, 訊息
 Output: 是否驗證通過 true or false
 Example: 
	check_required( "username", "姓名" );
Revision History:
   1.0: original version 2007/1/5
-------------------------------------------------------------------------------------------------------------------*/
function check_required( objID, sMessage )
{
	var objField = document.getElementById( objID );
	if ( objField.value.replace( /\s/g, "" ).length == 0 ) {
		alert( "請填寫" + sMessage + "!" );
		objField.focus();
		return false;
	}
	return true;
}
function check_required2( objID, sMessage )
{
	var objField = document.getElementById( objID );
	if ( objField.value.replace( /\s/g, "" ).length == 0 ) {
		alert( "Please Input " + sMessage + "!" );
		objField.focus();
		return false;
	}
	return true;
}

 /*-------------------------------------------------------------------------------------------------------------------
 Function: check_numeric()
 Description: 檢查表單欄位是否是數字
 Input: 物件ID, 訊息
 Output: 是否驗證通過 true or false
 Example: 
	check_numeric( "amount", "數量" );
Revision History:
   1.0: original version 2007/1/8
-------------------------------------------------------------------------------------------------------------------*/
function check_numeric( objID, sMessage )
{
	var objField = document.getElementById( objID );
	if ( isNaN( parseInt( objField.value ) ) || parseInt( objField.value ) != objField.value ) {
		alert( sMessage + "必須是數字!" );
		objField.select();
		objField.focus();
		return false;
	}
	return true;
}

 /*-------------------------------------------------------------------------------------------------------------------
 Function: check_numeric2()
 Description: 檢查表單欄位是否是數字
 Input: 物件ID, 訊息
 Output: 是否驗證通過 true or false
 Example: 
	check_numeric2( 'mobile', '手機或聯絡電話' );
Revision History:
   1.0: original version 2007/1/8
-------------------------------------------------------------------------------------------------------------------*/
function check_numeric2( objID, sMessage )
{
	var objField = document.getElementById( objID );
	var filter= /^([0-9\-\(\)#]+)$/i;
	if ( ! filter.test( objField.value ) ) {
		alert( sMessage + "必須是數字!" );
		objField.select();
		objField.focus();
		return false;
	}
	return true;
}

 /*-------------------------------------------------------------------------------------------------------------------
 Function: check_email()
 Description: 檢查表單欄位是否是合法 Email 帳號
 Input: 物件ID, 訊息
 Output: 是否驗證通過 true or false
 Example: 
	check_email( "email" );
Revision History:
   1.0: original version 2007/1/8
-------------------------------------------------------------------------------------------------------------------*/
function check_email( objID, sMessage )
{
	var objField = document.getElementById( objID );
	var filter= /^([\w-]+(?:\.\w+)*)@((?:\w+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	if ( ! filter.test( objField.value ) ) {
		alert( "請填寫正確的Email信箱!" );
		objField.select();
		objField.focus();
		return false;
	}
	return true;
}
function check_email2( objID, sMessage )
{
	var objField = document.getElementById( objID );
	var filter= /^([\w-]+(?:\.\w+)*)@((?:\w+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
	if ( ! filter.test( objField.value ) ) {
		alert( "Please input the correct E-mail." );
		objField.select();
		objField.focus();
		return false;
	}
	return true;
}

/*-------------------------------------------------------------------------------------------------------------------
 Function: jump_get()
 Description: 換頁, 使用 GET
 Input: 新頁碼
 Output: N/A
 Example: 
	jump_get(2);
Revision History:
   1.0: original version 2007/1/10
   2.0: fn 參數版 2007/6/23 2008/5/30
-------------------------------------------------------------------------------------------------------------------*/
function jump_get( p ) {
	var qs = new Querystring();
	var tail = "";
	var fn = "";
	if ( qs.get("fn") != null ) {
		fn += "fn=" + qs.get("fn");
	}
	if ( qs.get("keyword") != null ) {
		tail += "&keyword=" + qs.get("keyword");
	}
	if ( qs.get("tno") != null ) {
		tail += "&tno=" + qs.get("tno");
	}
	if ( qs.get("cno") != null ) {
		tail += "&cno=" + qs.get("cno");
	}
	if ( qs.get("no") != null ) {
		tail += "&no=" + qs.get("no");
	}
	if ( qs.get("y") != null ) {
		tail += "&y=" + qs.get("y");
	}
	if ( qs.get("m") != null ) {
		tail += "&m=" + qs.get("m");
	}
	if ( qs.get("oid") != null ) {
		tail += "&oid=" + qs.get("oid");
	}
	if ( qs.get("k") != null ) {
		tail += "&k=" + qs.get("k");
	}
	location.href = "home.php?" + fn + "&p=" + p + tail + "#anchor";
}

