﻿
var objUser = null;
var keyVal = "请输入关键字";
var keyType = "p";
var opts = null;
var del = "del";
var urlmain = 'http://www.buy-hk.org/';
var urlmy = 'http://my.buy-hk.org/';
var urlso = 'http://www.buy-hk.org/so/';
var urlresource = 'http://img.buy-hk.org/';

function getContact(t, d) {
    return false;
}

var sKey = { "p": ["输入关键字或产品名称"], "c": ["输入关键字或公司名称"], "b": ["输入求购关键字或产品名称"], "n": ["输入信息关键词"] };



function scrollas(obj) {
    var $self = obj.find("ul:first");
    var lineHeight = "22px";
    $self.animate({ "marginTop": -lineHeight + "px" }, 320, function () {
        $self.css({ marginTop: 0 }).find("li:first").appendTo($self);
    })
}

$(function () {
	var buyNote = $(".hot_noice"); var timer;
	buyNote.hover(function () { clearInterval(timer); }, function () { timer = setInterval(function () { scrollas(buyNote); }, 5000); }).trigger("mouseleave");

    $("#search_tab li").not("#other").each(function () {
        $(this).click(function () {
            $("#search_tab li").not("#other").removeClass().addClass("none");
            $(this).removeClass().addClass("aolisearch-current");
            var key = $.trim($("#searchkey").val());
            if (key.indexOf("输入") != -1 || key == "") { $("#searchkey").val(sKey[$(this).attr("key")]); }
            $("#searchtype").val($(this).attr("key"));
        });
    });
    $("#searchkey").keydown(function (event) { if (event.keyCode == 13) { FastSearch(); return false; } });
    $("#bt_search").click(function () { FastSearch(); return false; });
    $("#searchkey").blur(function () { $("#searchkey").css("color", "#ccc"); if ($.trim($("#searchkey").val()) != "") { return; } $("#searchkey").val(sKey[$("#searchtype").val()]); });
    $("#searchkey").focus(function () { $("#searchkey").css("color", "#333"); if ($.trim($("#searchkey").val()) != sKey[$("#searchtype").val()]) { return; } $("#searchkey").val(""); });
    $("#searchkey").val(sKey[$("#searchtype").val()]);
    $("#servceCommunity").mouseover(function () { $("#servceCommunity").removeClass().addClass("Community_On"); });
    $("#servceCommunity").mouseout(function () { $("#servceCommunity").removeClass().addClass("Community"); });

    /*wibsite */
    $("#nav_website").hover(function () { $(this).find("ul").show(); }, function () { $(this).find("ul").hide(); });

    LoginInfo();
});
function FastSearch() {
    var K = $.trim($("#searchkey").val());
    var B = $("#searchtype").val();
    return Search(K, B, "", "");
}

function Search(K, B, U, T) {
    if (K == "" || K.indexOf("输入") != -1 || K == T || K == sKey[B]) { alert(sKey[B]); return false; }
    var A = ""; A += "key=" + encodeURIComponent(K); A += "&type=" + B + U;
    if (B == "n") { location.href = urlmain + "news/search?" + A; } else { location.href = urlso + "?" + A }
    return true;
}

function LoginInfo() {
    var sUrl = urlmy+"Ajax/Ajax.ashx?action=UserInfo";
    $.getScript(sUrl, function () {
        if (obj && obj.cid > 0 && obj.uid > 0) {
            var str = String.Format('欢迎回来, <a target="_blank" href="{0}">{1}</a><span>|</span><a href="{0}signout.html">退出</a>', urlmy , obj.user);
            $("#loginInfo").html(str);
            objUser = obj;
            str = String.Format('<div class="logafter_in">欢迎，<span>{1}</span>,&nbsp;请进入<a href="{0}">会员中心</a></div>',urlmy , obj.user);
            $(".reglogin").removeClass().addClass("logafter").html(str);
        }
    });
}

function applyInqury(applyInqury) {
    var str = getItemStr("ItemsID");
    if (str.IsNullOrEmpty()) { alert("请选择操作项"); return false; }
    if (applyInqury == "p") { str = "product|" + str }
    else if (applyInqury == "b") { str = "buying|" + str }
    else if (applyInqury == "s") { str = "selling|" + str }
    else if (applyInqury == "c") { str = "company|" + str }
    window.open(urlmy + "inquiry.html?" + str);
    return false;
}

function imgErr(obj) {
    obj.onerror = '';
    obj.src = urlresource + 'v1/images/nophoto.gif';
}

function initImg(ImgD, proMaxWidth, proMaxHeight) {
    var image = new Image();
    image.src = ImgD.src;
    if (image.width > 0 && image.height > 0) {
        var rate = (proMaxWidth / image.width < proMaxHeight / image.height) ? proMaxWidth / image.width : proMaxHeight / image.height;
        if (rate <= 1) {
            ImgD.width = image.width * rate;
            ImgD.height = image.height * rate;
        }
        else {
            ImgD.width = image.width;
            ImgD.height = image.height;
        }
    }
}

function Jump(id) {
    switch ($("#" + id)[0].tagName.toLowerCase()) {
        case "img":
            $("#" + id).parents("td").focus();
            break;
        case "input":
        case "a":
        case "select":
        case "textarea":
        case "textarea":
        case "textarea":
        default:
            shake($("#" + id), "error", 5);
            $("#" + id).focus();
            break;
    }
}

function shake(ele, cls, times) {
    var i = 0, t = false, o = ele.attr("class") + " ", c = "", times = times || 2;
    if (t) return;
    t = setInterval(function () {
        i++;
        c = i % 2 ? o + cls : o;
        ele.attr("class", c);
        if (i == 2 * times) {
            clearInterval(t);
            ele.removeClass(cls);
        }
    }, 300);
}

function funItemUrl(cbxName, strUrl) {
    var itmes = $("input[name='" + cbxName + "']:checked");
    if (itmes.length == 0) {
        alert('请选择需要项');
        return "";
    }
    var arrChk = "0";
    $(itmes).each(function () { arrChk += ',' + this.value; });
    return strUrl + arrChk;
}

        /*全选*/
        function funCheckAll(obj, itemName){
            if(obj.checked)
                $("input[name=" + itemName + "]").attr("checked", true);
            else
                $("input[name=" + itemName + "]").attr("checked", false);
        }
        
        /*反选*/
        function funCheckOther(obj, itemName){
            $("input[name=" + itemName + "]").each(function(){
                $(this).attr("checked", !$(this).attr("checked"));
            });
        }
        
        /*获取选中*/
        function getItemStr(cbxName){
            var itmes = $("input[name='" + cbxName + "']:checked");
            if(itmes.length == 0){
                return "";
            }
            var arrChk = "";
            $(itmes).each(function(){
                arrChk += ',' + this.value;
            });
            if(arrChk != null && arrChk != "")
                arrChk = arrChk.substring(1, arrChk.length);
            return arrChk;
        }
        
        /*从url中获取一个get值*/
        function getParam(url, name){
            url = url.substring(url.indexOf('?') + 1);
            var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
            var r = url.match(reg);
            if(r)
                return unescape(r[2]);
            return null;
        }
        
        /*删除,快速查询,刷新*/
        function FastAction(Type,name) {
            Action(Type, function(res){
                if(fillResult("#" + name + "Result", res)){
                    eval('if(typeof ' + name + 'Success != "undefined") ' + name + 'Success()');
                }
            });
        }
        
        function Action(Type, callback){
            var str = getItemStr("Item");
            if (str.IsNullOrEmpty()) {
                alert("Please check at least one");
                return false;
            }
            if (Type == "Delete") {
                if (!confirm("Are you sure you want to delete this item?")) {
                    return false;
                } 
            }
            else if (Type == "Refresh") {
            }
            else if (Type == "Read") {
            }
            else if (Type == "Unread") {
            }
            var action = location.href.substring(0, location.href.indexOf('?'));
            action = String.Format("{2}?Action={0}&IDStr={1}", Type, str, action);
            $.ajax({
                type : 'post',
                url : action,
                dataType : 'json',
                cache : false,
                success : function(res){
                    if(callback)
                        callback(res);
                }
            });
        }
        
        //表单提交
        function submit(form, action, type, callback) {
            action = action || location.href;
            type = type || 'get';
            $.ajax({
                type: type,
                url: action,
                dataType: 'json',
                data: $(form).serialize(),
                cache: false,
                beforeSend: function () {
                    $(form + " :input").attr("disabled", "true");
                },
                success: function (res) {
                    $(form + " :input").attr("disabled", "");
                    //document.forms[form.replace('#','')].reset();
                    if (callback)
                        callback(res);
                },
                error: function (res) {
                    alert('The operation failure, please wait a moment later and try again..' + res);
                    $(form + " :input").attr("disabled", "");
                }
            });
        }
        
        function fillResult(expr, result){
            if( ! result || result.Message.length == 0)
                return "";
            var val = "";
            var success = false;
            switch(result.Type){
                case 0 : 
                    val = "<ul class=\"Success\">";
                    success = true;
                    break;
                case 1 : 
                    val = "<ul class=\"Error\">";
                    break;
                case 2 : 
                    val = "<ul class=\"Information\">";
                    break;
            }
            for(var i = 0; i < result.Message.length; i ++ ){
                val += "<li>" + result.Message[i] + "</li>";
            }
            val += "</ul>";
            $(expr).html(val);
            if(success){
                setTimeout("$('" + expr + "').html('');", 3000);
            }
            return success;
        }


        $(function () {
            var validator;
            if (opts != undefined || opts != null) { validator = $("form.auto").validate(opts); }
            $("form.auto").submit(function () {
                if (validator != undefined && validator != null) { if (!validator.form()) { return false; } }
                var me = $(this);
                var name = me.attr("id");
                var reUrl = me.attr("reUrl");
                submit('#' + name, me.attr("action"), me.attr("method"), function (res) {
                    if (fillResult("#" + name + "Result", res)) {
                        eval('if(typeof ' + name + 'Success != "undefined") ' + name + 'Success()');
                        if (reUrl) { setTimeout("location.href = '" + reUrl + "'", 1000); }
                    }
                });
                return false;
            });

            $("a." + del).click(function () {
                if (confirm("确认删除?")) {
                    var id = getParam($(this).attr("href"), "IDStr");
                    $.ajax({
                        type: "Post",
                        url: $(this).attr("href"),
                        dataType: 'json',
                        cache: false,
                        success: function (result) { if (result.Type == 0) { $("#tr" + id).remove(); } }
                    });
                }
                return false;
            });

            $("table.list tr").hover(function () {
                $(this).addClass("alt")
            }, function () {
                $(this).removeClass("alt")
            })

            $("input[type='text'],input[type='password'],textarea").not($("input[name=key]")).addClass("inputBox").focus(function () {
                $(this).addClass("focus");
            }).blur(function () {
                $(this).removeClass("focus");
            });

         
        });



        $.format = function (source, params) {
            if (arguments.length == 1)
                return function () {
                    var args = $.makeArray(arguments);
                    args.unshift(source);
                    return $.format.apply(this, args);
                };
            if (arguments.length > 2 && params.constructor != Array) {
                params = $.makeArray(arguments).slice(1);
            }
            if (params.constructor != Array) {
                params = [params];
            }
            $.each(params, function (i, n) {
                source = source.replace(new RegExp("\\{" + i + "\\}", "g"), n);
            });
            return source;
        };

        /*--------------------------------------------------------------------------------------------------------------------------*/
        //用于扩展对象 destination对象类型,source实例
        Object.extend = function (destination, source) {
            for (var property in source) {
                destination[property] = source[property]
            };
            return destination;
        }
        /*--------------------------------------------------------------------------------------------------------------------------*/
        //扩展Function原型
        Object.extend(Function.prototype, {
            //
            bind: function () {
                if (arguments.length < 2 && arguments[0] === undefined) return this;
                var __method = this, args = $A(arguments), object = args.shift();
                return function () {
                    return __method.apply(object, args.concat($A(arguments)));
                }
            },
            //
            bindAsEventListener: function () {
                var __method = this, args = $A(arguments), object = args.shift();
                return function (event) {
                    return __method.apply(object, [event || window.event].concat(args));
                }
            }
        });
        /*-------------------------------------------------------------------------------------------------------------------------*/
        //字符串扩展
        Object.extend(String.prototype, {
            //去除首尾空格
            Trim: function () {
                return this.replace(/(^\s+)|(\s+$)|(^　+)|(　+$)/g, "")
            },

            //将所有空格替换为指字的字符串或替换为空
            TrimAll: function (str) {
                str = str ? str : "";
                return this.replace(/(^\s*)|(\s*$)/g, str);
            },

            IsNullOrEmpty: function () {
                return /^\s*$/.test(this) || /^　*$/.test(this) || this == '';
            },

            //去除html标签
            RemoveHtmlTags: function () {
                return this.replace(/<\/?[^>]+>/gi, "");
            },

            //将html标签进行编码
            EscapeHtml: function () {
                var self = arguments.callee;
                self.text.data = this;
                return self.div.innerHTML;
            },

            //对html标签进行解码
            unescapeHTML: function () {
                var div = document.createElement('div');
                div.innerHTML = this.stripTags();
                return div.childNodes[0] ? (div.childNodes.length > 1 ?
			$A(div.childNodes).inject('', function (memo, node) { return memo + node.nodeValue }) :
			div.childNodes[0].nodeValue) : '';
            },

            //验证email格式
            IsEmail: function () {
                return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(this);
            },

            //验证是否包含中文字符
            IsChinese: function () {
                return /[\u4e00-\u9fa5]/.test(this);
            },

            //验证是否包含html标记
            IsHtml: function () {
                return /<[^<]*>/.test(this);
            },

            //验证是否为英文
            IsEnglish: function () {
                return /[a-zA-Z]+$/.test(this);
            },

            IsMoney: function () {
                return /^((([1-9]\d*)|0)(\.\d{1,2})?)$/.test(this);
            },

            IsFoalt: function () {
                return /^((([1-9]\d*)|0)(\.\d{1,2})?)$/.test(this);
            },

            //转换为数组 
            toArray: function () {
                return [this];
            },

            IsPwd: function () {
                return /^[a-zA-Z0-9\.]{6,18}$/.test(this);
            },

            ContainBlank: function () {
                return /\s+$/.test(this);
            },

            IsNum: function () {
                return /^[0-9]+$/.test(this);
            },

            IsImg: function () {
                return /^.*?\.(jpg|jpeg|bmp|gif|png)$/.test(this.toLowerCase());
            },

            IsSimpleName: function () {
                return /^[a-zA-Z0-9_]{4,18}$/.test(this);
            },

            IncludeChineseChar: function () {
                return !/^[\x00-\x7F]*$/.test(this);
            }
        })

        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;
        }
		
		$(function(){  
	    $(".child_title").hover(function () {
		$(this).addClass("add_cate_bg")
	     }, function () {
		$(this).removeClass("add_cate_bg")
	    });
        });
