﻿var Class = {
    Create:function(){
        return function(){
            if(this.initialize)
                this.initialize();
        }
    },
    Extend:function(extendClass, abstractClass){
        for(property in abstractClass){
            extendClass[property] = abstractClass[property];
        }
    }
}
if(!Array.prototype.push){
    Array.prototype.push = function(data){
        this[this.length] = data;
        return this.length;
    }
}
if(String.prototype.replaceAll == null){
    String.prototype.replaceAll = function(strOld, strNew){
        if(strOld == undefined || strOld == null || strNew == undefined || strNew == null) return this;
        var ret = "";
        for(var i = 0; i < this.length; i++){
            if(this.substr(i, strOld.length) === strOld){
                ret += strNew;
                i += strOld.length - 1;
            }else{
                ret += this.substr(i, 1);
            }
        }
        return ret;
    }
}
if(String.prototype.leftTrim == null){
    String.prototype.leftTrim = function(){
        var ret = this;
        while(ret.substr(0, 1) == " "){
            ret = ret.substr(1);
        }
        return ret;
    }
}
if(String.prototype.rightTrim == null){
    String.prototype.rightTrim = function(){
        var ret = this;
        while(ret.substr(ret.length - 1) == " "){
            ret = ret.substr(0, ret.length - 1);
        }
        return ret;
    }
}
if(String.prototype.trim == null){
    String.prototype.trim = function(){
        var ret = this;
        ret = ret.leftTrim();
        ret = ret.rightTrim();
        return ret;
    }
}
if(!window.undefined) window.undefined = "undefined";
if(!window.jsy) window.jsy = {};
jsy.version = "$1.4$";
jsy.pageLoaded = false;
jsy.browserType = "";
jsy.browserVer = "";
jsy.musicPlayer = {
    createMediaPlayer:function(url, id, width, height){
        var paramList = new Array();
        paramList.push({name:"URL", value:url});
        this.obj = "<OBJECT id=\"" + id + "\" name=\"" + id + "\" codeBase=\"http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=6,4,7,1112\" type=\"application\/x-oleobject\" height=\"" + height + "\" hspace=1 standby=\"Loading Microsoft Windows Media Player components...\" width=\"" + width + "\" classid=\"CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6\">";
        this.write = function(container){
            var control = typeof container == "string" ? document.getElementById(container) : container;
            for(var i = 0; i < paramList.length; i++){
                this.obj += "<param name=\"" + paramList[i].name + "\" value=\"" + paramList[i].value + "\">";
            };
            this.obj += "<embed src=\""+url+"\" align=\"baseline\" border=\"0\" width=\""+width+"\" height=\""+height+"\" type=\"application/x-mplayer2\" pluginspage=\"\" name=\""+id+"\" showcontrols=\"1\" showpositioncontrols=\"0\" showaudiocontrols=\"1\" showtracker=\"1\" showdisplay=\"0\" showstatusbar=\"1\" autosize=\"0\" showgotobar=\"0\" showcaptioning=\"0\" autostart=\"1\" autorewind=\"0\" animationatstart=\"0\" transparentatstart=\"0\" allowscan=\"1\" enablecontextmenu=\"0\" clicktoplay=\"0\" defaultframe=\"datawindow\" invokeurls=\"0\"></embed>";
            this.obj += "<\/object>";
            control.innerHTML = this.obj;
        };
        this.addParam = function(name, value){
            paramList.push({name:name, value:value});
        }
    }
};
jsy.addScript = function(src){
    var script = document.createElement("script");
    script.type = "text/javascript";
    script.src = src;
    document.getElementsByTagName('head')[0].appendChild(script);
};
jsy.addCSS = function(src) {
    var css = document.createElement("link");
    css.type = "text/css";
    css.rel = "stylesheet";
    css.href = src;
    document.getElementsByTagName('head')[0].appendChild(css);
};
jsy.cookie = {
    set:function (name,value,days,path) {
        if (days) {
            var date = new Date();
            date.setTime(date.getTime()+(days*24*60*60*1000));
            var expires = "; expires="+date.toGMTString();
        }
        else var expires = "";
	    if(path==undefined || path ==null || path==""){path="/";}
        document.cookie = name+"="+value+expires+";path="+path;
    },
    get:function (name) {
        var nameEQ = name + "=";
        var ca = document.cookie.split(';');
        for(var i=0;i < ca.length;i++) {
            var c = ca[i];
            while (c.charAt(0)==' ') c = c.substring(1,c.length);
            if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
        }
        return null;
    },
    remove:function (name) {
        this.set(name,"",-1);
    }
};
jsy.getMousePos = function(ev){
    var e = ev || event;
    var y = document.body.scrollTop == 0 & document.documentElement.scrollTop != 0 ? document.documentElement.scrollTop : document.body.scrollTop;
    var x = document.body.scrollLeft == 0 & document.documentElement.scrollLeft != 0 ? document.documentElement.scrollLeft : document.body.scrollLeft;
    y += e.clientY;
    x += e.clientX;
    return {x:x, y:y};
};
jsy.getScrollPos = function(){
    var scroll_left = document.body.scrollLeft == 0 & document.documentElement.scrollLeft != 0 ? document.documentElement.scrollLeft : document.body.scrollLeft;
    var scroll_Top = document.body.scrollTop == 0 & document.documentElement.scrollTop != 0 ? document.documentElement.scrollTop : document.body.scrollTop;
    return {x:scroll_left, y:scroll_Top};
};
jsy.getClientSize = function(){
    var client_width = document.body.clientWidth == 0 & document.documentElement.clientWidth != 0 ? document.documentElement.clientWidth : document.body.clientWidth;
    var client_height = document.body.clientHeight == 0 & document.documentElement.clientHeight != 0 ? document.documentElement.clientHeight : document.body.clientHeight;
    return {width:client_width, height:client_height};
};
jsy.message = function(msg, redirect){
    alert(msg);
    if(redirect != undefined & redirect != null & redirect != ""){
        window.location = redirect;
    }
};
jsy.urlEncode = function(url){
    return escape(url).replaceAll("+", "%2B");
}
jsy.openWin = function(url, _target){
    if(_target){
        window.open(url, _target);
    }else{
        window.open(url);
    }
};
jsy.location = function(url){
    window.location = url;
};
jsy.rndTimeNum = function(){
    var today = new Date();
    var year = today.getFullYear().toString();
    var month = today.getMonth().toString();
    var day = today.getDay().toString();
    var hour = today.getHours().toString();
    var minute = today.getMinutes().toString();
    var second = today.getSeconds().toString();
    var millisecond = today.getMilliseconds().toString();
    var rnd1 = year + month + day + hour + minute + second + millisecond;
    var rnd2 = parseInt(Math.random() * 999999 + 999999).toString();
    return rnd1 + rnd2;
};
jsy.queryString = function(name, defaultVal){
    var qs = name + "=";
    var str = location.search;
    if(str.length > 0){
        begin = str.indexOf(qs);
        if(begin != -1){
            begin += qs.length;
            end = str.indexOf("&",begin);
            if(end == -1) end = str.length;
            return (str.substring(begin,end));
        }
    }
    if(defaultVal != null & defaultVal != undefined) return defaultVal;
    return null;
};
jsy.autoHrefTitle = function(element){
    var rootElement = element || document;
    var objs = rootElement.getElementsByTagName("a");
    var titleDiv = document.createElement("div");
    titleDiv.style.visibility = "hidden";
    titleDiv.innerHTML = "title content";
    titleDiv.style.position = "absolute";
    titleDiv.style.backgroundColor = "#ffffcc";
    titleDiv.style.padding = "3px 8px 3px 8px";
    titleDiv.style.border = "#cccccc 1px solid";
    titleDiv.style.filter = "alpha(opacity=80)";
    titleDiv.style.whiteSpace = "nowrap";
    titleDiv.style.overflow = "visible";
    document.body.appendChild(titleDiv);
    this.mouseOver = function(val){
        return function(ev){
            var e = ev || event;
            titleDiv.style.visibility = "visible";
            titleDiv.innerHTML = val;
            var scroll_left = jsy.getScrollPos().x;
            var client_width = jsy.getClientSize().width;
            if(titleDiv.offsetWidth + jsy.getMousePos(ev).x + 5 > client_width + scroll_left) {
                titleDiv.style.left = (jsy.getMousePos(ev).x + 5 - (titleDiv.offsetWidth + jsy.getMousePos(ev).x + 5 - client_width - scroll_left)) + "px";
                titleDiv.style.top = (jsy.getMousePos(ev).y + - titleDiv.offsetHeight - 5) + "px";
            }else{
                titleDiv.style.left = (jsy.getMousePos(ev).x + 5) + "px";
                titleDiv.style.top = (jsy.getMousePos(ev).y + 5) + "px";
            }
        }
    };
    this.mouseMove = function(){
        return function(ev){
            var e = ev || event;
            var scroll_left = jsy.getScrollPos().x;
            var client_width = jsy.getClientSize().width;
            if(titleDiv.offsetWidth + jsy.getMousePos(ev).x + 5 > client_width + scroll_left) {
                titleDiv.style.left = (jsy.getMousePos(ev).x + 5 - (titleDiv.offsetWidth + jsy.getMousePos(ev).x + 5 - client_width - scroll_left)) + "px";
                titleDiv.style.top = (jsy.getMousePos(ev).y + - titleDiv.offsetHeight - 5) + "px";
            }else{
                titleDiv.style.left = (jsy.getMousePos(ev).x + 5) + "px";
                titleDiv.style.top = (jsy.getMousePos(ev).y + 5) + "px";
            }
        }
    };
    this.mouseOut = function(){
        return function(){
            titleDiv.style.visibility = "hidden";
        }
    };
    for(var i = 0; i < objs.length; i++){
        if(objs[i].title != "" & objs[i] != undefined & objs[i] != null){
            jsy.attachEvent(objs[i], "onmouseover", this.mouseOver(objs[i].title));
            jsy.attachEvent(objs[i], "onmousemove", this.mouseMove());
            jsy.attachEvent(objs[i], "onmouseout", this.mouseOut());
            objs[i].title = "";
        }
    }
};
jsy.attachEvent = function(o, type, fn){
    var obj = typeof o == "string" ? document.getElementById(o) : o;
    jsy.removeEvent(o, type, fn);
    if(obj.attachEvent){
        obj.attachEvent(type, fn);
    }else{
        switch(type){
            case "onchange": type="change"; break;
            case "onload": type="load"; break;
            case "onmouseover": type="mouseover"; break;
            case "onmouseout": type="mouseout"; break;
            case "onmousemove": type="mousemove"; break;
            case "onclick": type="click"; break;
            case "onblur": type="blur"; break;
            case "onfocus": type="focus"; break;
            case "onkeydown": type="keydown"; break;
            case "onkeypress": type="keypress"; break;
            case "onsubmit": type="submit"; break;
        }
        obj.addEventListener(type,fn,true);
    }
};
jsy.removeEvent = function(o, type, fn){
    var obj = typeof o == "string" ? document.getElementById(o) : o;
    if(obj.detachEvent){
        obj.detachEvent(type, fn);
    }else{
        switch(type){
            case "onchange": type="change"; break;
            case "onload": type="load"; break;
            case "onmouseover": type="mouseover"; break;
            case "onmouseout": type="mouseout"; break;
            case "onmousemove": type="mousemove"; break;
            case "onclick": type="click"; break;
            case "onblur": type="blur"; break;
            case "onfocus": type="focus"; break;
            case "onkeydown": type="keydown"; break;
            case "onkeypress": type="keypress"; break;
            case "onsubmit": type="submit"; break;
        }
        obj.removeEventListener(type,fn,true);
    }
};
jsy.cancelEvent = function(e){
    if(e.stopPropagation){
        e.stopPropagation();
    }else{
        e.cancelBubble = true;
    }
    if(e.preventDefault){
        e.preventDefault();
    }else{
        e.returnValue = false;
    }
}
jsy.getElement = $D = function(id){
    var obj = typeof id == "string" ? document.getElementById(id) : id;
    return obj;
}
jsy.xmlHandle = Class.Create();
jsy.xmlHandle.prototype = {
    initialize:function(){
        if (window.ActiveXObject){
           this.xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
        }else{
           if (document.implementation&&document.implementation.createDocument){
               this.xmlDoc = document.implementation.createDocument("","doc",null);
            }
        }
    },
    selectSingleNode:function(nativeCode){
        return this.rootElement.selectSingleNode(nativeCode);
    },
    selectNodes:function(nativeCode){
        var ary = new Array();
        var curNodes = this.rootElement.selectNodes(nativeCode);
        for(var i = 0; i < curNodes.childNodes.length; i++){
            if(curNodes.childNodes[i].nodeType == 1){
                ary.push(curNodes.childNodes[i]);
            }
        }
        return ary;
    },
    setXmlUrl:function(xmlUrl){
        this.xmlDoc.async = false;
        this.xmlDoc.load(xmlUrl);
        this.rootElement = this.xmlDoc.documentElement;
    },
    setXmlText:function(xmlText){
        this.xmlDoc.async = false;
        try{
            this.xmlDoc.loadXML(xmlText);
        }catch(e){
            this.xmlDoc = new DOMParser().parseFromString(xmlText, "text/xml")
        }
        this.rootElement = this.xmlDoc.documentElement;
    },
    createXml:function(rootNodeTagName){
      this.xmlDoc.async = false;
      var xmlContent = "<" + rootNodeTagName + " />";
      this.setXmlText(xmlContent);
      this.rootElement = this.xmlDoc.documentElement;
    },
    addChildNode:function(parentNode, tagName, tagValue){
        var nodeElement = this.xmlDoc.createElement(tagName);
        var textNode = this.xmlDoc.createTextNode(tagValue);
        nodeElement.appendChild(textNode);
        parentNode.appendChild(nodeElement);
    },
    getText:function(node){
        if(node.text){
            return node.text;
        }
        return node.textContent;
    },
    childNodes:function(node){
        var ary = new Array();
        for(var i = 0; i < node.childNodes.length; i++){
            if(node.childNodes[i].nodeType == 1){
                ary.push(node.childNodes[i]);
            }
        }
        return ary;
    }
}
jsy.Ajax = Class.Create();
jsy.Ajax.prototype = {
    initialize:function(){
        if(window.ActiveXObject){
            this.xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
        }else if(window.XMLHttpRequest){
            this.xmlHttp = new XMLHttpRequest();
        }
    },
    execLoaded:function(apply, errApply, s){
        this.xmlHttp.onreadystatechange = this.callback(this, apply, errApply, s);
    },
    callback:function(ajaxScript, apply, errorApply, s){
        return function(){
            if(ajaxScript.xmlHttp.readyState == 4){
                if(ajaxScript.xmlHttp.status == 200){
                    var _xmlHandle = new jsy.xmlHandle();
                    //alert(ajaxScript.xmlHttp.responseText);
                    _xmlHandle.setXmlText(ajaxScript.xmlHttp.responseText);
                    apply(ajaxScript, _xmlHandle, s);
                }else{
                    //alert(ajaxScript.xmlHttp.responseText);
                    if(errorApply != null){
                        errorApply();
                    }else{
                        alert("error" + ajaxScript.xmlHttp.status);
                    }
                }
            }
        }
    },
    showMsg:function(handleRet){
        var node = handleRet.rootElement.getElementsByTagName("a");
        for(var i = 0; i < node.length; i++){
            alert(handleRet.getText(handleRet.rootElement.getElementsByTagName("a")[i]));
        }
    }
}
function pageValidate(){
    this.alertType = 0;
    this.initialize = function(){
    };
    this.validRole = new Array();
    this.validRegularExpressionStart = function(validRole, sc){
        if(validRole.validObj.value.trim() == ""){
            return;
        }
        validRole.isValid = validRole.regx.test(validRole.validObj.value);
        sc.testObjIsValid(validRole, sc);
    };
    this.validRequiredFieldStart = function(validRole, sc){
        validRole.isValid = validRole.validObj.value.trim() != "";
        sc.testObjIsValid(validRole, sc);
    };
    this.validCompareStart = function(validRole, sc){
        if(validRole.validObj.value.trim() == "" & validRole.validObj1.value.trim() == "") return;
        validRole.isValid = validRole.validObj.value == validRole.validObj1.value;
        sc.testObjIsValid(validRole, sc);
    };
    this.validAjaxStart = function(validRole, sc){
        if(validRole.validObj.value.trim() == "") return;
        if(validRole.validObj.value == validRole.oldValue) return;
        validRole.oldValue = validRole.validObj.value;
        var _ajax = new jsy.Ajax();
        _ajax.xmlHttp.onreadystatechange = sc.ajaxCallback(_ajax, validRole, sc);
        var xml = new jsy.xmlHandle();
        xml.createXml("Parameters");
        xml.addChildNode(xml.rootElement, "LoginName", validRole.validObj.value.trim());
        _ajax.xmlHttp.open("post", validRole.ajaxUrl);
        _ajax.xmlHttp.send(xml.xmlDoc);
        sc.submitButton.disabled = true;
        setTimeout(sc.ajaxWaitStateTimer(_ajax, validRole, sc), 200);
    };
    this.validRangeStart = function(validRole, sc){
        if(validRole.validObj.value.trim() == "") return;
        validRole.isValid = validRole.validObj.value >= validRole.num1 & validRole.validObj.value <= validRole.num2;
        sc.testObjIsValid(validRole, sc);
    };
    this.ajaxCallback = function(ajaxScript, validRole, sc){
        return function(){
            if(ajaxScript.xmlHttp.readyState == 4){
                if(ajaxScript.xmlHttp.status == 200){
                    var _xmlHandle = new jsy.xmlHandle();
                    _xmlHandle.setXmlText(ajaxScript.xmlHttp.responseText);
                    var retVal = _xmlHandle.getText(_xmlHandle.rootElement.getElementsByTagName("Exists")[0]);
                    validRole.isValid = parseInt(retVal) <= 0;
                    sc.testObjIsValid(validRole, sc);
                }else{
                    validRole.isValid = false;
                    validRole.summeryObj.innerHTML = validRole.ajaxErrText;
                }
                sc.submitButton.disabled = false;
            }
        }
    };
    this.ajaxWaitStateTimer = function(ajaxScript, validRole, sc){
        return function(){
            if(ajaxScript.xmlHttp.readyState != 4){
                validRole.summeryObj.innerHTML = validRole.ajaxWaitText;
                setTimeout(sc.ajaxWaitStateTimer(ajaxScript, validRole, sc), 200);
            }
        }
    };
    this.regRegularExpression = function(obj, regx, summeryObj, errorText, rightText){
        var validElement = $D(obj);
        this.validRole.push(new this.validRegularExpression(obj, regx, summeryObj, errorText, rightText));
        if(this.alertType == 1) jsy.attachEvent(validElement, "onblur", this.validItemStartEvent(this, validElement));
    };
    this.regRequiredField = function(obj, summeryObj, errorText, rightText){
        var validElement = $D(obj);
        this.validRole.push(new this.validRequiredField(obj, summeryObj, errorText, rightText));
        if(this.alertType == 1) jsy.attachEvent(validElement, "onblur", this.validItemStartEvent(this, validElement));
    };
    this.regCompare = function(obj1, obj2, summeryObj, errorText, rightText){
        var validElement = $D(obj1);
        this.validRole.push(new this.validCompare(obj1, obj2, summeryObj, errorText, rightText));
        if(this.alertType == 1) jsy.attachEvent(validElement, "onblur", this.validItemStartEvent(this, validElement));
    };
    this.regAjax = function(obj, ajaxUrl, summeryObj, errorText, rightText, ajaxErrText, ajaxWaitText){
        var validElement = $D(obj);
        this.validRole.push(new this.validAjax(obj, ajaxUrl, summeryObj, errorText, rightText, ajaxErrText, ajaxWaitText));
        if(this.alertType == 1) jsy.attachEvent(validElement, "onblur", this.validItemStartEvent(this, validElement));
    };
    this.regRange = function(obj, num1, num2, summeryObj, errorText, rightText){
        var validElement = $D(obj);
        this.validRole.push(new this.validRange(obj, num1, num2, summeryObj, errorText, rightText));
        if(this.alertType == 1) jsy.attachEvent(validElement, "onblur", this.validItemStartEvent(this, validElement));
    };
    this.regSubmitButton = function(obj){
        this.submitButton = $D(obj);
    };
    this.validRegularExpression = function(obj, regx, summeryObj, errorText, rightText){
        this.type = "RegularExpression";
        this.isValid = true;
        this.validObj = $D(obj);
        this.regx = regx;
        this.summeryObj = $D(summeryObj);
        this.errorText = errorText;
        this.rightText = rightText;
    };
    this.validRequiredField = function(obj, summeryObj, errorText, rightText){
        this.type = "RequiredField";
        this.isValid = true;
        this.validObj = $D(obj);
        this.summeryObj = $D(summeryObj);
        this.errorText = errorText;
        this.rightText = rightText;
    };
    this.validCompare = function(obj1, obj2, summeryObj, errorText, rightText){
        this.type = "Compare";
        this.isValid = true;
        this.validObj = $D(obj1);
        this.validObj1 = $D(obj2);
        this.summeryObj = $D(summeryObj);
        this.errorText = errorText;
        this.rightText = rightText;
    };
    this.validAjax = function(obj, ajaxUrl, summeryObj, errorText, rightText, ajaxErrText, ajaxWaitText){
        this.type = "Ajax";
        this.isValid = true;
        this.validObj = $D(obj);
        this.ajaxUrl = ajaxUrl;
        this.oldValue = $D(obj).value;
        this.summeryObj = $D(summeryObj);
        this.errorText = errorText;
        this.rightText = rightText;
        this.ajaxErrText = ajaxErrText;
        this.ajaxWaitText = ajaxWaitText;
    };
    this.validRange = function(obj, num1, num2, summeryObj, errorText, rightText){
        this.type = "Range";
        this.isValid = true;
        this.validObj = $D(obj);
        this.num1 = num1;
        this.num2 = num2;
        this.summeryObj = $D(summeryObj);
        this.errorText = errorText;
        this.rightText = rightText;
    };
    this.testObjIsValid = function(validRole, sc){
        for(var i = 0; i < sc.validRole.length; i++){
            if(sc.validRole[i].validObj.id == validRole.validObj.id){
                if(!sc.validRole[i].isValid){
                    if(sc.alertType == 1) validRole.summeryObj.innerHTML = sc.validRole[i].errorText;
                    return;
                }
            }
        }
        if(sc.alertType == 1){
            validRole.summeryObj.innerHTML = validRole.rightText;
        }
    };
    this.validItemStart = function(sc, validObj){
        for(var i = 0; i < sc.validRole.length; i++){
            if(sc.validRole[i].validObj.id == validObj.id){
                switch(sc.validRole[i].type){
                    case "RegularExpression":
                        sc.validRegularExpressionStart(sc.validRole[i], sc);
                        break;
                    case "RequiredField":
                        sc.validRequiredFieldStart(sc.validRole[i], sc);
                        break;
                    case "Compare":
                        sc.validCompareStart(sc.validRole[i], sc);
                        break;
                    case "Ajax":
                        sc.validAjaxStart(sc.validRole[i], sc);
                        break;
                    case "Range":
                        sc.validRangeStart(sc.validRole[i], sc);
                        break;
                }
                if(!sc.validRole[i].isValid) return;
            }
        }
    };
    this.pageValid = function(sc){
        var source = sc || this;
        for(var i = 0; i < source.validRole.length; i++){
            if(source.validRole[i].type == "Ajax") continue;
            source.validItemStart(source, source.validRole[i].validObj);
        }
        return source.isValid();
    };
    this.validStartEvent = function(sc){
        return function(ev){
            var source = sc || this;
            var e = ev || event;
            for(var i = 0; i < source.validRole.length; i++){
                if(source.validRole[i].type == "Ajax") continue;
                source.validItemStart(source, source.validRole[i].validObj);
            }
            if(!source.isValid()){
                jsy.cancelEvent(e);
                if(sc.alertType == 0){
                    alert(source.errorInfo("\n"));
                }
            }
        }
    };
    this.validItemStartEvent = function(sc, validObj){
        return function(){
            for(var i = 0; i < sc.validRole.length; i++){
                if(sc.validRole[i].validObj.id == validObj.id){
                    switch(sc.validRole[i].type){
                        case "RegularExpression":
                            sc.validRegularExpressionStart(sc.validRole[i], sc);
                            break;
                        case "RequiredField":
                            sc.validRequiredFieldStart(sc.validRole[i], sc);
                            break;
                        case "Compare":
                            sc.validCompareStart(sc.validRole[i], sc);
                            break;
                        case "Ajax":
                            sc.validAjaxStart(sc.validRole[i], sc);
                            break;
                        case "Range":
                            sc.validRangeStart(sc.validRole[i], sc);
                            break;
                    }
                    if(!sc.validRole[i].isValid) return;
                }
            }
        }
    };
    this.isValid = function(){
        for(var i = 0; i < this.validRole.length; i++){
            if(!this.validRole[i].isValid) return false;
        }
        return true;
    };
    this.errorInfo = function(splitText){
        if(this.isValid()) return "";
        var errorText = "";
        for(var i = 0; i < this.validRole.length; i++){
            if(!this.validRole[i].isValid){
                if(errorText == ""){
                    errorText = this.validRole[i].errorText;
                }else{
                    errorText += splitText + this.validRole[i].errorText;
                }
            }
        }
        return errorText;
    }
}
if(!window.__localHost) window.__localHost = "http://www.5qg.com/";
if(!window.__swfHost) window.__swfHost = "http://58.221.32.12/";
