
//################
//   CMS樣板
//################

/* 主選單 */
function Tree_Menu( mid ){
  targetcat     = document.getElementById('cat'+mid);
  targetElement = document.getElementById(mid);
  if( targetElement.style.display == "none" ) {
  	targetElement.style.display = "";
  	targetcat.innerHTML = '<img src="../../i/spacer.gif" style="width: 28px; height: 28px; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'../../i/app_folder2.png\', sizingMethod=\'crop\');background:url(\'../../i/app_folder2.png\')!important;background:url(\'../../i/spacer.gif\');">';
  } else {
  	targetElement.style.display = "none";
  	targetcat.innerHTML = '<img src="../../i/spacer.gif" style="width: 28px; height: 28px; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src=\'../../i/app_folder1.png\', sizingMethod=\'crop\');background:url(\'../../i/app_folder1.png\')!important;background:url(\'../../i/spacer.gif\');">';
  }
}

/* 換頁select */
function SelJump(targ,selObj,restore) {
  eval( targ + ".location='" + selObj.options[selObj.selectedIndex].value + "'");
  if ( restore ) { selObj.selectedIndex = 0; }
}



//################
//   日曆按鈕
//################

/*  欄位輸入用日曆                         */
/*  需搭配 dynCalendar 模組的 js 一併使用  */
function dynCalendar(objName, targetItem, date_Format){
   this.objName     = objName;
   this.targetItem  = targetItem;
   this.date_Format = arguments[2] ? arguments[2] : 'Y-m-d';
   //Public Methods
   this.show  = dynCalendar_show;
   this.erase = dynCalendar_erase;

   //document.write('<img src="../../i/dynCalendar_erase.gif" onClick="' + this.objName + '.erase();" style="cursor:pointer;" border="0" align="middle" alt="清除日期" />');
   document.write('<img src="../../dynCalendar/images/dynCalendar.gif" onClick="' + this.objName + '.show();" style="cursor:pointer;" border="0" align="middle" alt="開啟行事曆" />');
   
   //firefox
   if(!document.all){
     document.captureEvents(Event.MOUSEDOWN);
     document.onmousedown = function(e){
        dynCalendar_mouseX = e.screenX;
        dynCalendar_mouseY = e.screenY;
     }
     document.releaseEvents(Event.MOUSEDOWN);
   } 
}

function dynCalendar_show(){
   objName = this.objName;
   targetItemID = this.targetItem;
   date_Format = this.date_Format;
   var CalendarUrl = "../../dynCalendar/Calendar.php?objName=" + objName + "&targetItemID=" + targetItemID + "&date_Format=" + date_Format;

   if(document.all){
     //IE
     dynCalendar_mouseX = event.screenX;
     dynCalendar_mouseY = event.screenY;
   }else{
     //firefox
     document.onmousedown = function(e){
        dynCalendar_mouseX = e.screenX;
        dynCalendar_mouseY = e.screenY;
     }
     document.releaseEvents(Event.MOUSEDOWN);
   }
   window.open(CalendarUrl,"Calendar","top="+dynCalendar_mouseY+",left="+dynCalendar_mouseX+",width=230,height=200,resizable=no,scrollbars=no");
}

function dynCalendar_erase(){
   var targetElement = document.getElementById(this.targetItem);
   var aaa = document.all[this.objName];
   targetElement.value = '';
}


//################
//   視窗 & Frame
//################

/* iframe隨內容自動調整高度 */
// <iframe name="iframe1" id="iframe1" onload="javascript:dyniframesize('iframe1');" frameborder="0" style="border: 1px solid gray"  width="100%" src=""></iframe>

function dyniframesize(iframename) {
  var getFFVersion=navigator.userAgent.substring(navigator.userAgent.indexOf("Firefox")).split("/")[1]
  //extra height in px to add to iframe in FireFox 1.0+ browsers
  var FFextraHeight=getFFVersion>=0.1? 16 : 0 

  var pTar = null;
  if (document.getElementById){
    pTar = document.getElementById(iframename);
  }else{
    eval('pTar = ' + iframename + ';');
  }
  if (pTar && !window.opera){
    //begin resizing iframe
    pTar.style.display="block"
    
    if (pTar.contentDocument && pTar.contentDocument.body.offsetHeight){
      //ns6 syntax
      pTar.height = pTar.contentDocument.body.offsetHeight+FFextraHeight; 
    } else if (pTar.Document && pTar.Document.body.scrollHeight){
      //ie5+ syntax
      pTar.height = pTar.Document.body.scrollHeight;
    }
  }
}

//視窗開啟在滑鼠座標處

if (!document.all){
   //firefox
   document.onmousedown = function(e){
      mX = e.screenX;
      mY = e.screenY;
   }
}

function Mwinopen(theURL,winName,features) {
   if(document.all){
     //IE
     mX = event.screenX ;
     mY = event.screenY ;
   }
   window.open(theURL,winName,'top='+mY+', left='+mX+', '+features);
}


//################
//   檢查欄位
//################

// 檢查ID是否符合規則                                             
// 第一個字元必須為字母，其他字元需為字母或數字或_ , 長度4~12字元 
// INPUT: 字串                                                    
// OUTPUT: boolean, true/false                                    
function CHK_ID(id) {
   var chk_result = true;
   re = /^[a-zA-Z][a-zA-Z0-9_]{3,11}$/gi ;
   if (!re.test(id)){
     chk_result = false;
   }
   return chk_result;
}

//密碼檢查 4~20字元
function CHK_PASSWD(passwd) {
   var chk_result = true;
   re = /^.{4,20}$/gi ;
   if (!re.test(passwd)){
     chk_result = false;
   }
   return chk_result;
}

//檢查email是否符合格式
function CHK_EMAIL(email) {
   var chk_result = true;
   re = /^.+@.+\..{2,3}$/gi ;
   if (!re.test(email)){
     chk_result = false;
   }
   return chk_result;
}

//檢查 checkbox radio 是否點選
function CHK_CHECKED(Obj) {
   var itemChecked = null;
   for(var i=0 ; i<Obj.length ; i++) {
      if(Obj[i].checked)
         return true;
   }
   return false;
}

//檢查資料夾或檔名是否符合格式
//符號僅能使用.-_ 但不得為首字
//不得使用繁體等多位元字
function CHK_FILENAME(filename) {
   var chk_result = true;
 	 re = /^[a-zA-Z0-9][a-zA-Z0-9\.\-_]*$/gi ;
   if (!re.test(filename)){
     chk_result = false;
   }
   return chk_result;
}

//檢查資料夾或檔名是否符合格式
//符號僅能使用.-_
//允許使用繁體等多位元字
function CHK_mbFILENAME(filename) {
   var chk_result = true;
 	 re = /^[^\(\)\[\]\{\}\/\\ \?\+\*\|\^\$\,~#@<>":;'&%!`=　]+$/gi;
   if (!re.test(filename)){
     chk_result = false;
   }
   return chk_result;
}


//################
//   其他
//################

/* 設定物件的visible */
function setVisible(objid,v){
   var vis_ary = new Array('hidden','visible');
   document.getElementById(objid).style.visibility = vis_ary[v];
}


/* 開啟檔案管理按鈕 */
function FMbutton( filename ){
   var FMstr = '<img style="cursor:pointer; filter: alpha(opacity=50)" ' 
             + 'onMouseOut="this.style.filter=\'alpha(opacity=50)\';" '
             + 'onMouseOver="this.style.filter=\'alpha(opacity=100)\';" '
             + 'onClick="fileBrowserCallBack2(\''+filename+'\');" '
             + 'src="../../i/icon_FG.gif" '
             + 'align="absmiddle" '
             + 'alt="檔案管理"> ';
   document.write(FMstr);
}