var regexp = $H();
regexp['int'] = /^[1-9]\d*$/;
regexp['integer'] = regexp['int'];
regexp['tinyint'] = regexp['int'];
regexp['smallint'] = regexp['int'];
regexp['mediumint'] = regexp['int'];
regexp['bigint'] = regexp['int'];
regexp['decimal'] = /^\d+(\.\d+)?$/;
regexp['dec'] = regexp['decimal'];
regexp['float'] = /^\-?\d+(\.\d+)*$/;
regexp['double'] = regexp['float'];
regexp['date'] = /^\d{4}((\-|\/)\d{2}){2}$/;
regexp['datetime'] = /^\d{4}((\-|\/)\d{2}){2}\s[0-2]\d(:[0-5]\d){2}$/;
regexp['time'] = /^[0-2]\d(:[0-5]\d){2}$/;
regexp['url'] = /^http:\/\/[\w\-]+(\.[\w\-]+)+/i;
regexp['email'] = /^\w{2,}@[\w\-]+(\.[\w\-]+)+$/i;
regexp['postcode'] = /^\d{6}$/;
regexp['handset'] = /^1\d{10,}$/;
regexp['phone'] = /^(0[1-9]+0?(-|\s))?\d{7,}(-\d+)?$/;
regexp['fax'] = regexp['phone'];
regexp['phperr'] = /^<br\s?\/?>\s*<b>/i;
function initSelect(element) {
    $(element).length = 0;
    $(element).options[0] = new Option('', '');
}
function getAjaxUrl(type) {
    var url = webRoot + '/ajax/' + type + '.ajax.php?token=' + token;
    return url;
}
function scrollToTop(element) {
    $(element).scrollTop = 0;
    if (Prototype.Browser.IE) {
        document.body.scrollTop = 0;
    } else {
        document.body.scrollTo();
    }
}
function paginate(queryStr, type, container, unscroll) {
    loading.show();
    document.body.focus();
    var url = webRoot + '/ajax/' + type + '.ajax.php' + queryStr;
    if (!queryStr.include('token=')) url += '&token=' + token;
    ajaxRequest(url, '', function(thisRequest) {
        loading.hide();
        if (!dispose) return;
        var response = thisRequest.responseText.strip();
        if (response && !regexp['phperr'].test(response)) {
            $(container).update(response);
            if (typeof(unscroll) == 'undefined') scrollToTop(container);
        }
    });
}
function userEntry(form, container) {
    var element = 'username';
    try {
        if (!$F(element)) throw new Error('请输入用户名!');
        element = 'password';
        if (!$F(element)) throw new Error('请输入密码!');
        loading.insert(container, 'bottom');
        var url = getAjaxUrl('login');
        var postData = $(form).serialize();
        ajaxRequest(url, postData, function(thisRequest) {
            loading.hide();
            if (!dispose) return;
            var response = thisRequest.responseText.strip();
            if (response && !regexp['phperr'].test(response)) {
                if ($('enteracct') && $('enteracct').checked) {
                    window.location.replace('http://www.bearing.cn/member/');
                } else {
                    $(container).update(response);
                }
            }
        });
    } catch (e) {
        alert(e.message);
        $(element).focus();
    } finally {
        return false;
    }
}
function logout() {
    loading.show;
    var url = getAjaxUrl('login');
    url += '&logout=1';
    ajaxRequest(url, '', function(thisRequest) {
        loading.hide();
        if (!dispose) return;
        var response = thisRequest.responseText.strip();
        if (!response) {
            url = window.location.href;
            window.location.replace(url);
        }
    });
}
function setClass(element, cls) {
    var element = $(element);
    if (typeof(cls) == 'undefined') var cls = 'hover';
    if (element.hasClassName(cls)) {
        element.removeClassName(cls);
    } else {
        element.addClassName(cls);
    }
}
function tabsSwitch() {
    var numargs = arguments.length;
    switch (numargs) {
        case 1:
            var element = arguments[0]
            var layer = 0;
            var className = 'current';
            break;
        case 2:
            var element = arguments[0]
            var layer = arguments[1];
            var className = 'current';
            break;
        case 3:
            var element = arguments[0]
            var layer = arguments[1];
            var className = arguments[3];
        default:
            return;
    }
    if ($(element).hasClassName(className)) return;
    var parent = $(element).up(layer);
    var labels = parent.getElementsByClassName(className);
    labels.each(function(item) {
        if ($(item).hasClassName(className)) {
            $(item).removeClassName(className);
            throw $break;
        }
    });
    $(element).addClassName(className);
    var eltId = $(element).readAttribute('id');
    var temp = eltId.split('_');
    eval("var content=temp[0]+'_content_'+temp[2];");
    var elts = $(content).siblings();
    elts.each(function(item) {
        if (!$(item).hasClassName('hide')) {
            $(item).addClassName('hide');
            throw $break;
        }
    });
    $(content).removeClassName('hide');
}
function forwardUrl(url) {
    if (!/^http:\/\//i.test(url)) url = 'http://' + url;
    window.open(url);
}
function forbidShow() {
    alert('对不起，本信息仅供已登录的收费网员查看，请先登录。');
}
function allowShow(element) {
    if (!$(element)) return;
    var forbids = $(element).getElementsByClassName('forbid');
    var allows = $(element).getElementsByClassName('allow');
    if (!forbids.size() || !allows.size()) return;
    forbids.each(function(item) {
        $(item).remove();
    });
    allows.each(function(item) {
        $(item).removeClassName('allow');
    });
}
function addFavorite(title, url, desc) {
    if (Prototype.Browser.IE) {
        window.external.AddFavorite(url, title);
    } else {
        window.sidebar.addPanel(title,url,desc);
    }
}
function ContactState(uid, type) {
    var url = getAjaxUrl('state');
    url += '&uid='+uid+'&type='+type;
    new Ajax.Request(url, {
        method: 'get',
        onSuccess: function(thisRequest) {},
        onFailure: function(thisRequest) {},
        onException: function(thisRequest, e) {alert(thisRequest);}
    });
}
var UnifyLogin = {
    callback:function() {},
    login:function() {
        try {
            var element = 'UnifyLogin_username';
            if (!$F(element)) throw new Error('请输入用户名!');
            element = 'UnifyLogin_password';
            if (!$F(element)) throw new Error('请输入密码!');
            element = 'UnifyLogin_checkcode';
            if (!$F(element)) throw new Error('请输入验证码!');
            this.callback();
        } catch (e) {
            alert(e.message);
            $(element).focus();
        } finally {
            return false;
        }
    },
    checkcode:function() {
        var src = $('unifyLogin_checkcode_image').src;
        $('unifyLogin_checkcode_image').src = src;
    }
};