﻿// Updated on 2009/11/1 by 劉肇庭 Patrick Lau (lausiuting@yahoo.com)

// Search ────────────────────────────────────────
function checkSearch() {
    var Err = "";
    var selText = document.formSearch.search1Text.value;
	if(selText.length>0) { selText = Trim(selText); }
	
    if(selText.length==0) { 
       Err = "請輸入產品型號或名稱！";
    }
    else if(selText.length==1) { 
       Err = "你只輸入一個字：「" + selText + "」，難以有效搜尋。\n請重新輸入產品型號或名稱！";
    }
    
    if(Err!='') {
       alert(Err);
       document.formSearch.search1Text.focus();
       document.formSearch.search1Text.select();
    }
    else {
       document.formSearch.submit()
    }
}//End function

// Dreamweaver Function　────────────────────────────────────────────────────────
function MM_showHideLayers() { //v3.0 
    var i,p,v,obj,args=MM_showHideLayers.arguments; 
    for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2]; 
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; } 
    obj.visibility=v; }
}//End function

function MM_jumpMenu(targ,selObj,restore){ //v3.0
    eval(targ+".location='"+selObj.options[selObj.selectedIndex].value+"'");
    if (restore) selObj.selectedIndex=0;
}//End function

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}//End function

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}//End function

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}//End function

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}//End function

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}//End function

function MM_changeProp(objName,x,theProp,theValue) { //v3.0
  var obj = MM_findObj(objName);
  if (obj && (theProp.indexOf("style.")==-1 || obj.style)) eval("obj."+theProp+"='"+theValue+"'");
}//End Function

// Popup Windows　────────────────────────────────────────────────────────
function winBRopen(theURL, Name, popW, popH, scroll, resize) { // V 1.0
    var winleft = (screen.width - popW) / 2;
    var winUp = (screen.height - popH) / 2;
    winProp = 'width='+popW+',height='+popH+',left='+winleft+',top='+winUp+',scrollbars='+scroll+',resizable='+resize+'';
    Win = window.open(theURL, Name, winProp);
    Win.window.focus();
}//End Function

function PopUpWin(url, WinName, w, h, scrBar, reSize, fullscreen) {
    if(fullscreen=='yes') {
        w = screen.availWidth; h = screen.availHeight;
    }
    PopUpWin = window.open(url,WinName,"width=" + w + ",height=" + h + ",directories=no,toolbar=no,status=yes,menubar=no,scrollbars=" + scrBar + ",resize=" + reSize);
    var x=(screen.availWidth-w)/2;
    var y=(screen.availHeight-h)/2;
    PopUpWin.moveTo(x,y);    
    PopUpWin.focus();
}//End function

// Change Document's Location　────────────────────────────────────────────

function gotoPage(url) {
    document.location = url;
}//End function

function changeMenu(obj) {
    // Pull Down Menu
    var myIndex = obj.selectedIndex
    var myValue = obj.options[myIndex].value

    if(myValue != '') {
       document.location = myValue
    }
}//End Function

// String Functions　───────────────────────────────────────────────────────

function Left(str, n) {
    if (n <= 0)
        return "";
    else if (n > String(str).length)
        return str;
    else
        return String(str).substring(0,n);
}//End function

function Right(str, n) {
    if (n <= 0)
       return "";
    else if (n > String(str).length)
       return str;
    else {
       var iLen = String(str).length;
       return String(str).substring(iLen, iLen - n);
    }
}//End function

//去除字串左邊的空白虛格
function LTrim(instr){
    return instr.replace(/^[\s]*/gi,"");
}//End Function

//去除字串右邊的空白虛格
function RTrim(instr){
    return instr.replace(/[\s]*$/gi,"");
}//End Function

//去除字串前後的空白虛格
function Trim(instr){
    instr = LTrim(instr);
    instr = RTrim(instr);
    return instr;
}//End Function

// Resize Windows　──────────────────────────────────────────────────────────
// Max Width & Height

function ResizeWin(section) {
    var w = screen.availWidth;
    var h = screen.availHeight;
    window.resizeTo(w,h);

    var x=(screen.availWidth-w)/2;
    var y=(screen.availHeight-h)/2;
    window.moveTo(x,y);
}//End Function

// Change Text on Browser's Status Bar ────────────────────────────────────────

 function writeStatus(msg) {
    window.status = msg;
    var nextStep = setTimeout("clearStatus()",4000);
 } // End of function

 function clearStatus(msg) {
    window.status = "";
 } // End of function

// Calendar ────────────────────────────────────────

function addZero(vNumber) {    
    return (vNumber < 10 ? "0" : "") + vNumber    
}//End Function              

function formatDate(vDate, vFormat){    
     var vDay        = addZero(vDate.getDate());    
     var vMonth      = addZero(vDate.getMonth()+1);    
     var vYearLong   = addZero(vDate.getFullYear());    
     var vYearShort  = addZero(vDate.getFullYear().toString().substring(3,4));    
     var vYear       = (vFormat.indexOf("yyyy")>-1?vYearLong:vYearShort)    
     var vHour       = addZero(vDate.getHours());    
     var vMinute     = addZero(vDate.getMinutes());    
     var vSecond     = addZero(vDate.getSeconds());    
     var vDateString = vFormat.replace(/dd/g, vDay).replace(/MM/g, vMonth).replace(/y{1,4}/g, vYear)    
     vDateString     = vDateString.replace(/hh/g, vHour).replace(/mm/g, vMinute).replace(/ss/g, vSecond)    
     return vDateString    
}//End Function

function isDate(year, month, day) {
    month = month - 1; // javascript month range 0 - 11
    var tempDate = new Date(year,month,day);
    if ( (year == tempDate.getFullYear()) && (month == tempDate.getMonth()) && (day == tempDate.getDate()) ) {
        return true;
    }
    else {
        return false;
    }
}//End Function

function DayDiff(dateFrom,dateTo) {
    //86400000 ms in 1 day
    diff = (dateTo.valueOf() - dateFrom.valueOf()) / 86400000;
    return diff;
}//End Function

function DateAdd(interval,number,date){ 
    // date 可以是時間對象也可以是字符串，如果是後者，形式必須為: yyyy-mm-dd hh:mm:ss 其中分隔符不定。"2006年12月29日 16點01分23秒" 也是合法的
    number = parseInt(number);
    if(typeof(date)=="string"){
        date = date.split(/\D/);
        --date[1];
        eval("var date = new Date("+date.join(",")+")");
    }
    if(typeof(date)=="object"){
        var date = date
    }
    switch(interval){
        case "y": date.setFullYear(date.getFullYear()+number); break;
        case "m": date.setMonth(date.getMonth()+number); break;
        case "d": date.setDate(date.getDate()+number); break;
        case "w": date.setDate(date.getDate()+7*number); break;
        case "h": date.setHours(date.getHour()+number); break;
        case "n": date.setMinutes(date.getMinutes()+number); break;
        case "s": date.setSeconds(date.getSeconds()+number); break;
        case "l": date.setMilliseconds(date.getMilliseconds()+number); break;
    }
    return date;
}//End Function

function alertNotDate(obj,title) {
    var validDate = true;
    var selDate = obj.value;
    selDate = Trim(selDate);

    if(selDate.length!=10) { validDate = false; }
    
    if(validDate==true) {
        var year  = selDate.substring(0,4);
        var month = selDate.substring(5,7);
        var day   = selDate.substring(8,10);
        validDate = isDate(year, month, day);
    }
    
    if(validDate==false) {
      this.focus();
      alert("你輸入的《" + title + "》不是日期格式：" + selDate + "\n請重新輸入！");
    }
}//End Function

function set2digit(num) {
    var rtnDigit = parseInt(num)
    if(rtnDigit<10) { rtnDigit = '0' + rtnDigit; }
    return rtnDigit;    
}//End Function

function set3digit(num) {
    var rtnDigit = num
    if(rtnDigit<10) {
       rtnDigit = '00' + rtnDigit;
    }
    else if(rtnDigit>9 && parseInt(rtnDigit)<100) {
       rtnDigit = '0' + rtnDigit;
    }
    return rtnDigit;    
}//End Function

// Form Objects ────────────────────────────────────────
function disableObj(checkName,formName,objName) {
    if(checkName.checked) formName.objName.disabled=false
    else formName.objName.disabled=true
}//End Function

function showHideObj(objName,formName,objName) {
    if(checkName.checked) formName.objName.style.visibility="inherit"
    else formName.objName.style.visibility="hidden"
}//End Function

function submitFormTool() {
   document.FormTool.submit();
}//End Function

// Play Flash ────────────────────────────────────────
function chgSWFsrc(ID, swfSrc) {
   document.getElementById(ID).src = swfSrc;
}//End Function


