﻿/* Copyright©:2008-2011,重庆五奥网络科技有限公司
* Version: 1.0
* Encoding:UTF-8
* Creater:     steven
* Create Date: 2011-10-20
* Description: 后台基本脚本框架类
* Modifier: 
* Modify Date: 
* Description: 
*/


//获取url参数
function request(paras) {
    var url = top.location.href;
    var paraString = url.substring(url.indexOf("?") + 1, url.length).split("&");
    var paraObj = {}
    for (i = 0; j = paraString[i]; i++) {
        paraObj[j.substring(0, j.indexOf("=")).toLowerCase()] = j.substring(j.indexOf("=") + 1, j.length);
    }
    var returnValue = paraObj[paras.toLowerCase()];
    if (typeof (returnValue) == "undefined") {
        return "";
    } else {
        return returnValue;
    }
}

//获取URL是否是通过广告商进入，如果是，将广告商信息 写入cookie
if (request("apcode").length > 0) {
    var _date = new Date();
    _date.setTime(_date.getTime() + (24 * 3600 * 7 * 1000));
    document.cookie = "AdverCode=" + request("apcode") + "; path=/; expires=" + _date.toGMTString();
}



String.prototype.trim=function()
{
     return this.replace(/(^\s*)(\s*$)/g, "");
}
/**
* 删除左边的空格
*/
String.prototype.ltrim=function()
{
     return this.replace(/(^\s*)/g,"");
}
/**
* 删除右边的空格
*/
String.prototype.rtrim=function()
{
     return this.replace(/(\s*$)/g,"");
 }


 String.prototype.format = function () {
     var args = arguments;
     return this.replace(/\{(\d+)\}/g,
                    function (m, i) {
                        return args[i];
                    });
 }

 String.format = function () {
     if (arguments.length == 0)
         return null;

     var str = arguments[0];
     for (var i = 1; i < arguments.length; i++) {
         var re = new RegExp('\\{' + (i - 1) + '\\}', 'gm');
         str = str.replace(re, arguments[i]);
     }
     return str;
 }

 //添加指定控件的事件
 if (!window.attachEvent && window.addEventListener) { //绑定事件函数 ie 用attachEvent， firefox 使用addEventListener；
     Window.prototype.attachEvent = HTMLDocument.prototype.attachEvent = HTMLElement.prototype.attachEvent = function (en, func, cancelBubble) {
         var cb = cancelBubble ? true : false;
         this.addEventListener(en.toLowerCase().substr(2), func, cb);
     };
 }

 //删除指定控件的事件
 if (!window.detachEvent && window.removeEventListener) { //删除绑定事件函数 ie 用detachEvent， firefox 使用removeEventListener；
     Window.prototype.detachEvent = HTMLDocument.prototype.detachEvent = HTMLElement.prototype.detachEvent = function (en, func, cancelBubble) {
         var cb = cancelBubble ? true : false;
         this.removeEventListener(en.toLowerCase().substr(2), func, cb);
     };
 }

//窗体的keydown事件
document.onkeydown = function (event) {
    var isie = (document.all) ? true : false;
    event = event || window.event;
    var sender = event.srcElement || event.target;

    //IE下如果有text或password控件回车时,直接改变其keyCode值
    if (isie && event.keyCode == 13 &&
        (sender.type == 'text' || sender.type == 'password')) {
        event.keyCode = 9;
        //firefox下
    } else if (!isie && event.which == 13 &&
        (sender.type == 'text' || sender.type == 'password')) {
        var inputs = $("input[type!=hidden],textarea,select");

        for (var i = 0; i < inputs.length; i++)
            if (inputs[i] == sender)
                break;

        inputs[++i % inputs.length].focus();
        return false;
    }
}


//复制文本内容到粘贴板上
function copyToClipboard(txt) {
    if (window.clipboardData) {
        window.clipboardData.clearData();
        window.clipboardData.setData("Text", txt);
        alert("复制成功,您可粘贴到你想要的位置上");
    } else if (navigator.userAgent.indexOf("Opera") != -1) {
        window.location = txt;
    } else if (window.netscape) {
        try {
            netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
        } catch (e) {
            alert("如果您正在使用FireFox！\n请在浏览器地址栏输入'about:config'并回车\n然后将'signed.applets.codebase_principal_support'设置为'true'");
        }

        var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
        if (!clip)
            return;
        var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
        if (!trans)
            return;
        trans.addDataFlavor('text/unicode');
        var str = new Object();
        var len = new Object();
        var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
        var copytext = txt;
        str.data = copytext;
        trans.setTransferData("text/unicode", str, copytext.length * 2);
        var clipid = Components.interfaces.nsIClipboard;
        if (!clip)
            return false;
        clip.setData(trans, null, clipid.kGlobalClipboard);
        alert("复制成功,您可粘贴到你想要的位置上");
    }
}

//加入收藏
function addFavorite(sURL, sTitle) {
    try {
        window.external.addFavorite(sURL, sTitle);
    }
    catch (e) {
        try {
            window.sidebar.addPanel(sTitle, sURL, "");
        }
        catch (e) {
            alert("加入收藏失败，请使用Ctrl+D进行添加");
        }
    }
}

//设为首页
function setHome(obj, vrl) {
    try {
        obj.style.behavior = 'url(#default#homepage)';
        obj.setHomePage(vrl);
    }
    catch (e) {
        if (window.netscape) {
            try {
                netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
            }
            catch (e) {
                alert("此操作被浏览器拒绝！\n请在浏览器地址栏输入“about:config”并回车\n然后将 [signed.applets.codebase_principal_support]的值设置为'true',双击即可。");
            }
            var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
            prefs.setCharPref('browser.startup.homepage', vrl);
        }
    }
}
