﻿function FL(ml,pd) {
r=true;
$get('me').className='hd';
$get('pe').className='hd';
var v=$get(ml).value;
if(v.indexOf('@') ==-1 || v.indexOf('.') ==-1 || v.indexOf("'") !=-1) 
{
$get('me').className='err';
r=false;
}
var p=$get(pd).value;
if(p.length==0) 
{
$get('pe').className='err';
r=false;
}
return r;
}
if(typeof(HTMLElement)!="undefined" && !window.opera){
HTMLElement.prototype.__defineGetter__("outerHTML",function()
  {
    var a=this.attributes, str="<"+this.tagName, i=0;for(;i<a.length;i++)
    if(a[i].specified) str+=" "+a[i].name+'="'+a[i].value+'"';
    if(!this.canHaveChildren) return str+" />";
    return str+">"+this.innerHTML+"</"+this.tagName+">";
  }); 
HTMLElement.prototype.__defineSetter__("outerHTML",function(sHTML){ 
        var r=this.ownerDocument.createRange(); 
        r.setStartBefore(this); 
        var df=r.createContextualFragment(sHTML); 
        this.parentNode.replaceChild(df,this); 
        return sHTML; 
        });
HTMLElement.prototype.__defineSetter__("innerText",function(sText){ 
        var parsedText=this.ownerDocument.createTextNode(sText); 
        this.innerHTML=parsedText; 
        return parsedText; 
        }); 
HTMLElement.prototype.__defineGetter__("innerText",function(){ 
        var r=this.ownerDocument.createRange(); 
        r.selectNodeContents(this); 
        return r.toString(); 
        }); 

HTMLElement.prototype.__defineGetter__("canHaveChildren",function()
  {
    switch(this.tagName.toLowerCase())
    {
      case "area": case "base":  case "basefont":
      case "col":  case "frame": case "hr":
      case "img":  case "br":    case "input":
      case "link": case "meta":  case "isindex":
      case "param":return false;
    } return true;
  });
HTMLElement.prototype.__defineGetter__("children",function()
{
   for(var a=[],j=0,n,i=0; i<this.childNodes.length; i++){
   n=this.childNodes[i];if(n.nodeType==1){a[j++]=n;if(n.name){
   if(!a[n.name])a[n.name]=[]; a[n.name][a[n.name].length]=n;}
   if(n.id) a[n.id]=n;}}return a;
}); 
HTMLElement.prototype.__defineGetter__("currentStyle", function(){ 
        return this.ownerDocument.defaultView.getComputedStyle(this,null); 
        }); 

} 

function ie(){if(window.navigator.userAgent.indexOf('MSIE') != -1) return true; return false;}
function n(a){return document.getElementsByTagName(a);}
function v(o){o.style.visibility = "visible";}
function h(o){o.style.visibility = "hidden";}
function t(n){return $get(n).innerText;}
function m(n){return $get(n).innerHTML;}
function s(n,c){try{$get(n).className=c;}catch(e){}}
function se(n,s){try{var r=$get(n).parentNode;for(var j=0;j<r.cells.length;j++) r.cells[j].className=s;}catch(ex){}}
function y(n,s){try{ $get(n).style.color=s;}catch(ex){}}
function Go(url) {try{window.location=url;}catch(e){}}
function f(n){try{ $get(n).focus();}catch(ex){}}
function Back(){history.back();}
function Open(url){window.open(url);}
function ScrollTop(){window.scrollTo(0,0);}
function ScrollEnd(){ window.scrollTo(0,9999);}
function $mgPn(e){return "<table><tr><td><div id=m"+mid+" class='fb c1k' style='background:#fbef9d;border-top:3px #fdf3ae;border-bottom:3px #f3e798;padding:3px 19px 3px 24px'>"+$parm(e)+" <a href='javascript:$mgC()' class=l15 style='color:#aaa'>x</a></div></td></tr></table>";}var mid=1;var mTop=0;
function $mgS(e){$get('S').innerHTML=$mgPn(e);Round($get('m'+mid));mid++;}
function $mgC(){$get("M").innerHTML='';try{$get("S").innerHTML='';Hcenter();}catch(e){}}
function $m(e){$get('sysmsg').innerHTML = e; }
function $html(s){return s.replace('\n','<br />');}
function $replace(s,o,n){while(s.indexOf(o)!=-1) s=s.replace(o,n);return s;}
function $Menu(clas){s('t_'+window.location.toString().toLowerCase().replace('http://','').split('/')[2],clas);}
function $UI(){MakeRound(n('div'));MakeRound(n('table'));}
function $G(s,exitConfirm,cheD)
{
    if(cheD) CheDel();
    if(exitConfirm==0)
        window.onbeforeunload=null;
    else
        window.onbeforeunload=ExitConfirm;
    TimeDiff = new Date().getTime()-new Date(s).getTime();
    var s=n('span');
    //time    
    for (var i=0; i<s.length; i++)
    { 
        try{
            var x=MakeClientTime(s[i].innerText);
            if(s[i].className=='F_SD')
                s[i].innerHTML = SmartDate(x);
            else if(s[i].className=='F_FD')
                s[i].innerHTML = LongDate(x);
            else if(s[i].className=='F_FT')
                s[i].innerHTML = ShortTime(x);
            else if(s[i].className=='F_WD')
                s[i].innerHTML = WeekDate(x);
            else if(s[i].className=='F_WT')
                s[i].innerHTML = WeekTime(x);
        }catch(e){}
        
    }
}
function $Val()
{
    ValOK=true;
    ValKind(n('input'));
    ValKind(n('textarea'));
    return ValOK;
}
function $clas(s)
{
    s=$replace(s,'$rr?','');
    s=$replace(s,'$nn?','<br />');
    s=$replace(s,'$lt?','<');
    s=$replace(s,'$gt?','>');            
    s=$replace(s,'$dd?','"');
    s=$replace(s,'$sq?',"'");
    return s;
}
function $parm(s)
{
    s=$replace(s,'$rr?','');
    s=$replace(s,'$nn?','<br />');
    s=$replace(s,'$lt?','<');
    s=$replace(s,'$gt?','>');            
    return s;
}
function M_R(u){var b=$get('ctl00__AP');b.value=u;b.click();}
function $Refresh(){M_R('r:');}
function iApp(u){M_R('u:'+u);}
var _fApp = false;
function $A(u){CheDel();iLog(u);}
function $I(u){iLog(u);}
function iLog(u)
{
$mgC();_fApp=true;
$get('M_F').src = '/FX/Web/Go.htm?p='+u;
}
function GoAp(u)
{
    if(!_fApp) u=_cu(u);
    if(typeof(HTMLElement)!="undefined" && !window.opera) if(!_fApp) return;
    _fApp=false;
    M_R('u:'+u);
}
function _cu(u)
{
    if(u.indexOf('?') == -1) return u;
    var c=u.split('?');
    var r=c[0]+'?';
    if(c.length>1)
    {
        var p = c[1].split('&');
        for(var i=0;i<p.length;i++)
        {
            if(p[i].indexOf('__') == -1)
                r= r+p[i]+'&';
        }
        r = r.substring(0,r.length-1);
    }    
    return r;
}
var _f=true;
function GoHome()
{
    if(_f) _f=false;
    else
    {if(!CheLod()) M_R('d:');}
}
function ExitConfirm()
{
    if(!ExitReady())
    {
        if(!confirm('您尚未儲存剛作的變更\n是否要放棄?'))
        return '請按 "取消" 以停留在此網頁.';
    }
}
var extRdy=0;
function ExitReady() 
{
    if(extRdy==0)
    {
    var f=document.forms[0].elements;
    for(var i=0;i<f.length;i++) 
    {
        if(f[i].type!='hidden' && f[i].type!='button' && f[i].type!='checkbox' && f[i].type!='select-one' 
            && f[i].defaultValue!=null && f[i].id.indexOf('_AP')<0 && f[i].id.indexOf('HtmlEditor')<0
            && f[i].value != f[i].defaultValue)
            return false;
    }
    }
    return true;
}
function FocusTextarea()
{
    var e=n('textarea');
	for (var i=0; i<e.length; i++)
	{ e[i].focus(); return; }
}
function $url(s,r,v)
{
    if(s==null || v==null || v.length==0) return s;
    if(s.indexOf('?') !=-1) s+='&'; else s+='?';
    return s+r+'='+$enc(v);
}
function $enc(u) {
  var o = '';
  var x = 0;
  u = u.toString();
  var regex = /(^[a-zA-Z0-9_.]*)/;
  while (x < u.length) {
    var m = regex.exec(u.substr(x));
    if (m != null && m.length > 1 && m[1] != '') {
    	o += m[1];
      x += m[1].length;
    } else {
      if (u[x] == ' ')
        o += '+';
      else {
        var charCode = u.charCodeAt(x);
        var h = charCode.toString(16);
        
        if(h.length <4)
            o += '%' + ( h.length < 2 ? '0' : '' ) + h.toUpperCase();
        else
            o += u.charAt(x);
      }
      x++;
    }
  }
  return o;
}
function $quoteAdd(s,v)
{
    return s+"-qt_"+v+"-qt_-dt_";
}
function $quoteEnd(s)
{
    if(s!=null && s.length >0)
        return s.substring(0,s.length-4);        
    return s;
}
//time
function MinutesAgo(){return "分前"};
function SecondsAgo(){return "秒前"};
function HoursAgo(){return "小時前"};
function Hours(){return "小時"};
function Today(){return "今日"};
function Yesterday(){return "昨日"};
function AMDesignator(){return "上午"};
function PMDesignator(){return "下午"};
function ShortTimePattern(){return "tt hh:mm"};
function MonthDayPattern(){return "M月d日"}
function LongDayPattern(){return "yyyy年M月d日"}
function Day(d)
{
    switch(d.toString().substring(0,3))
    {
	    case 'Sun': return "周日";
	    case 'Mon': return "周一";
	    case 'Tue': return "周二";
	    case 'Wed': return "周三";
	    case 'Thu': return "周四";
	    case 'Fri': return "周五";
	    case 'Sat': return "周六";
	}
}
function WeekDate(d)
{
    var s=MonthDayPattern().replace('M',d.getMonth()+1).replace('d',d.getDate());
    s=s+" "+Day(d);
    return s;
}
function LongDate(d)
{
    return LongDayPattern().replace('M',d.getMonth()+1).replace('d',d.getDate()).replace('yyyy',d.getFullYear());
}
function ShortDate(d)
{
    return MonthDayPattern().replace('M',d.getMonth()+1).replace('d',d.getDate());
}
function WeekTime(d)
{
    return ShortTime(d)+" "+Day(d);
}
function ShortTime(d)
{
    var h=d.getHours();
    var m=AMDesignator();

    if(ShortTimePattern().indexOf('tt') != -1)
    {
        if(h>12)
        {
            h=h-12;
            m=PMDesignator();
        }
    }
    var hh=h.toString();
    //if(hh.length == 1) hh="0"+hh;
    var mm=d.getMinutes().toString();
    //if(mm.length == 1) mm="0"+mm;
    return ShortTimePattern().replace('tt',m).replace('hh',hh).replace('mm',mm);
}
function PointDate(d)
{
    var w=Day(d);
    if(DateEqual(new Date(),d)) w="今日";
    if(DateEqual(DateAdd(new Date(),1),d)) w="明日";
    var s=MonthDayPattern().replace('M',d.getMonth()+1).replace('d',d.getDate());
    s=s+" ("+w+")";
    return s;
}
function ServerTime(d)
{
    d=MakeServerTime(d);
    var m=(d.getMonth()+1)+'';
    var a=d.getDate()+'';
    if(m.length==1) m='0'+m; 
    if(a.length==1) a='0'+a; 
    return d.getFullYear() +'/'+ m +'/'+a;
}
function MakeServerTime(s)
{
var n = new Date(s).getTime() - TimeDiff;
var t= new Date();
t.setTime(n);
return t;
}
function MakeClientTime(s)
{
var n = new Date(s).getTime() + TimeDiff;
var t= new Date();
t.setTime(n);
return t;
}
function DateAdd(d,i)
{
    var D1=3600000*24;
    d.setTime(d.getTime()+D1*i);
    return d;
}

function DateEqual(s,d)
{
    if(s.getFullYear()==d.getFullYear() && s.getMonth()==d.getMonth() && s.getDate()==d.getDate())
    {
        return true;
    }
    return false;
}
function SmartDate(d)
{
    var M1=60000;
    var M60=3600000;
    var H8=3600000*8;
    var D4=H8*3*4;
    var D8=H8*3*8;
    var n=new Date();
    var f=n.getTime()-d.getTime();
    if(f<0)
    {
        return PointDate(d);
    }
    else if(f<M1)
        return Math.round(f/1000) +" "+SecondsAgo();
    else if(f<M60)
        return Math.round(f/M1)+" "+MinutesAgo();
    else if(f<H8)
    {
        var h=Math.round((f-f%M60)/M60);
        var m=Math.round((f%M60)/M1);
        if(m==60)
        {
            h++;
            m=0;
        }
        if(m <4)
            return h+" "+HoursAgo();
        else
            return h+" "+Hours()+" "+m+" "+MinutesAgo();
    }
    else if(n.getFullYear()==d.getFullYear()&&n.getMonth()==d.getMonth()&&n.getDate()==d.getDate())
    {
        return Today()+ShortTime(d);
    }
    else if(n.getFullYear()==d.getFullYear()&&n.getMonth()==d.getMonth()&&n.getDate()-1==d.getDate())
    {
        return Yesterday()+ShortTime(d);
    }
    else if(f<D4)
    {
        return WeekTime(d);
    }
    else if(f<D8)
    {
        return WeekDate(d);
    }
    else if(n.getFullYear()==d.getFullYear())
    {
        return ShortDate(d);
    }

    return LongDate(d);
}
var TimeDiff;
function $removeLast(r)
{
    if(r!=null && r.length >0)
        return r.substring(0,r.length-1);        
    return r;
}
function $removePair(url,key)
{
    var r='';
    var pair=url.split('&');
    for(var i=0;i<pair.length;i++)
    {
        var cmd=pair[i].split('=');
        if(cmd[0] != key) r= r+pair[i]+'&';
    }
    return r.substring(0,r.length-1);        
}
//UI
function MakeRound(s)
{
    var mra = new Array();
    for (var i=0; i<s.length; i++)
    if(s[i].className.indexOf('@') != -1)
        mra.push(s[i]);
    while(mra.length >0) Round(mra.pop());
}
function Round(v)
{
    if(v==null) return;
    bt='';
    bb='';
    w=v.style.borderTopWidth.replace('px','');
    if(w.length > 0)
    {
        bt="<div>";
        for(var i=w;i>=1;i--) bt+= RB(v.style.borderTopColor,i);
        bt+="</div>";
    }
    w=v.style.borderBottomWidth.replace('px','');
    if(w.length > 0)
    {
        bb="<div>";
        for(i=1;i<=w;i++) bb+=RB(v.style.borderBottomColor,i);
        bb+="</div>";
    }
    z1='',z2='';
    z = v.style.width.replace('px','');
    if(z.length > 0)
    {
        var y=z*1+9;
        v.style.width="";
        z1="<div style='width:"+y+"px'>";
        z2="<div>";
    }
    v.style.borderTop ='';
    v.style.borderBottom ='';
    v.outerHTML=z1+bt+v.outerHTML+bb+z2;
}
function RB(c,p){return "<b class=r style='display:block;border-top:solid 1px "+c+";margin:0px "+p+"px'></b>";}
function ToArray(c)
{
    var r=$clas(c).split('-qt_');
    return r;
}
function CastNumber(v)
{
    var s=v.toLocaleString();
    if(s.indexOf('.00')!=-1) s=s.replace('.00','');
    return s;
}
function CastRate(h,s)
{
    var v=Math.round(h/s*100);
    if(v>0 && v<100) return v+'%';
    return '&nbsp;';
}
var ValOK;
function ValKind(k)
{
    for (var i=0; i<k.length; i++)
    { 
        var c=k[i].className;
        var x=k[i].id;
        if(x != '')
        {
        if(c.indexOf('*e')!=-1) ValEmail(x);
        if(c.indexOf('*r')!=-1) ValRequire(x);
        if(c.indexOf('*p')!=-1) ValPwd(x);
        if (c.indexOf('*m') != -1) ValMobile(x,false);
        if (c.indexOf('*rm') != -1) ValMobile(x,true);
        if (c.indexOf('-32') != -1) ValMax(x, 32);
        if(c.indexOf('-255')!=-1) ValMax(x,255);
        if(c.indexOf('-max')!=-1) ValMax(x,4096);
        }
    }
}
function ValMax(id,len)
{
    if($get(id).value.length>len){$m('輸入的文字過長');ValOK=false;}
}
function ValMobile(id, req) {
   var v = $get(id).value;
    var e = $get(id + 'Err');
    e.className = 'hd';
    if (req==true && v.length == 0) { 
            e.className = 'ValErr';
            ValOK = false;
            return;
    }


    if (v.indexOf('@') != -1 || v.indexOf('_') != -1 ) {
        e.className = 'ValErr';
        ValOK = false;
    }
    else
        e.className = 'hd';
}
function ValEmail(id)
{
    var v=$get(id).value;
    var e=$get(id+'Err');
    if(v.indexOf('@') ==-1 || v.indexOf('.') ==-1 || v.indexOf("'") !=-1)
    {
        e.className='ValErr';
        ValOK=false;
    }
    else
        e.className='hd';
}
function ValRequire(id)
{
    var v=$get(id).value;
    var e=$get(id+'Err');
    if(v=='')
    {
        e.className='ValErr';
        ValOK=false;
    }
    else
        e.className='hd';
}
function ValPwd(id)
{
    var v=$get(id).value;
    var v2=$get(id+'2').value;
    var e=$get(id+'Err');
    if(v=='' || v!=v2)
    {
        e.className='ValErr';
        ValOK=false;
    }
    else
        e.className='hd';
}
//Lubita.com
function $Com()
{
    try
    { 
    $get('f1').innerHTML="<table cellpadding=0 cellspacing=0 class='w1 f1'><tr><td class=P_0></td><td class=P_1>&nbsp;</td><td class=P_2></td></tr></table>";
    $get('f2').innerHTML="<table cellpadding=0 cellspacing=0 class='w1 f1'><tr><td class=P_4></td><td class=P_5>&nbsp;</td><td class=P_6></td></tr></table>";
    }catch(e){}
    try
    {
    $get('f3').innerHTML="<table cellpadding=0 cellspacing=0 class='w1 f1'><tr><td class=P_0></td><td class=P_1>&nbsp;</td><td class=P_2></td></tr></table>";
    $get('f4').innerHTML="<table cellpadding=0 cellspacing=0 class='w1 f1'><tr><td class=P_7></td><td class=P_8>&nbsp;</td><td class=P_9></td></tr></table>";
    }catch(e){}
}
function AdStand(id,name)
{
return "<script type='text/javascript'>var lubita="+id+";</script><script src='http://www.lubita.com/AD' type='text/javascript'></script>";
}
function AdLink(id,name)
{ 
    return "<a href='http://www.LuBiTa.com/"+id+"' style='color:#070'><span style='color:#333'>" +
        name + "</span><br />http://www.LuBiTa.com/"+id+"</a>";
}
function ScrollY(){return (document.documentElement.scrollTop>0)?document.documentElement.scrollTop:document.body.scrollTop;}
var curY=0; 
var lasY=0;
var Hbc=0;
var TopScroll=0;
function SetScrollTop()
{
TopScroll=1;
}
function Hcenter(){
var w=$get('W');
var c=w.clientWidth;if(c<9) c=180;
w.style.left=((document.documentElement.clientWidth-c)/2)+"px";
}
function HBt(){
f=$get('W');
Hbc++;
if(Hbc>1500) $mgC();
difY=ScrollY();
if(difY != lasY)
{

	var pe=1*(difY-lasY)/7;
	
	if(pe > 0) pe = Math.ceil(pe);
	else pe = Math.floor(pe);
	f.style.top = (parseInt(f.style.top)+pe)+"px";
	lasY += pe;
}
if(TopScroll==1) {ScrollTop();TopScroll=0;}
} 
onload=function init(){
    try{
    w=$get('W').style;
    w.top=mTop+"px";w.padding="3px";
    Hcenter();
    }catch(e){}
}
var ChePge='';
var CheVS='';
function CheSav() {
}
function CheLod() {
}
function CheDel() {
}



function Spot(){return $get(SpotID).value;}
function Addr(){return $get(AddrID).value;}
function MapX(){return $get(XID).value;}
function MapY(){return $get(YID).value;}
function moretext(id)
{
    var link=$get("ma_"+id);
    var span=$get("ms_"+id);
    
    link.className='hd';
    span.className='';
}
function FormatMobileNumber(number) {
    /*
    if (number.length < 10) return null;
    try {
        for (var i = 0; i < number.length; i++) {
            var c = number.charAt(i);
            if (c == '+' || c == '0' || c == '1' || c == '2' || c == '3' || c == '4' || c == '5' || c == '6' || c == '7' || c == '8' || c == '9') {

            }
            else
                return null;
        }

    } catch (e) {
    return null;
    }
    */
    if (number.length == 0) return number;
    if (number.charAt(0) == '0')
        return "+886" + number.substr(1, number.length - 1);
    return number;
}


//adratio
function adRatioSubmit() {
    var rs="";
    var k = n('select');
    var totalRatio=0;
    for (var i=0; i<k.length; i++)
    { 
        var c=k[i];
        if(c.id.substring(0,3)=='$m$')
        {
            rs+=c.id+"*";
            rs+=c.value+";";
            totalRatio += Number(c.value);
        }
    }

    if(totalRatio != 100) 
        alert("比重相加必須等於 100 , 您現在設定了 " + totalRatio);
    else
    { 
    $get("ctl00_h_AdRatio_RatioResult").value=rs;
    return true;
    }
    return false;
}
