﻿addDomLoad(function() {
    //Form.Methods.checkAll($('chkAll'), Form.Methods.getInputs('checkbox', $('searchResult')));

    var hidComID = $("hidComID"),
    pageItems = $("items"),
    HviewList = $("HviewList"),
    HviewGallery = $("HviewGallery"),
    txtFooterKey = $("txtFooterKey"),
    btnFooterSearch = $("btnFooterSearch");

    if ($('searchResult') && $('searchResult').className == 'seaWinTable') {
        var tds = $('searchResult').getElementsByTagName('td');

        each(tds, function(o) {
            o.onmouseover = function() {
                this.style.background = '#F2F2F2'
            }
            o.onmouseout = function() {
                this.style.background = '#fff'
            }
        })
    }

    if ($("btnGoto")) {
        var btnGoto = $("btnGoto");
        btnGoto.onclick = function() { Gotopage() };
    }

    pageItems.onchange = function() { ChangePageSize(pageItems.value) };
    HviewList.onclick = function() { ViewSearchResult('l') };
    HviewGallery.onclick = function() { ViewSearchResult('g') };
    txtFooterKey.onkeydown = function() { if (EventUtil.getEvent().keyCode == 13) { FooterSearch() } }
    btnFooterSearch.onclick = function() { FooterSearch() };
})

function each(list, fun) {
    for (var i = 0, len = list.length; i < len; i++) {
        fun(list[i], i)
    }
}

function openAlert(dlLogin) {
    var dw = document.body.offsetWidth,
	dh = document.body.offsetHeight,
	vh = Public.Dom.getDocumentViewHeight();

    if (hidComID.value == 0) {
        dlLogin.style.display = 'block';
        trans.className = "transShow";
        trans.style.width = dw + 'px';
        trans.style.height = dh + 'px';
        dlLogin.style.top = document.documentElement.scrollTop + vh / 2 - dlLogin.offsetHeight / 2 + 'px';
        dlLogin.style.left = dw / 2 - dlLogin.offsetWidth / 2 + 'px';
        $('aClose').onclick = function() { closeAlert(dlLogin) }
    }
    else
        AddToBasket(hidComID.value);
}

function ChangePageSize(value) {
    var url = location.href;
    var varRegex = /&viewsize=\d+/i;
    var varRegexNew = /&page=\d+/i;
    url = url.replace(varRegexNew, "");
    url = url.replace(varRegex, "");
    window.location.href = String.Format("{0}&viewsize={1}", url, value);
}

function ViewSearchResult(value) {
    var url = location.href.replace("#", "");
    var varRegexL = /&view=g/i;
    var varRegexG = /&viewsize=\d+/i;
    var varRegexP = /&page=\d+/i;

    switch (value) {
        case "l":
            if (!varRegexL.test(url))
                return;
            url = url.replace(varRegexL, "");
            break;
        case "g":
            if (varRegexL.test(url))
                return;
            url = url.replace(varRegexG, "");
            url = String.Format("{0}&view=g", url);
            break;
    }

    url = url.replace(varRegexP, "");
    window.location.href = url;
}

function FooterSearch() {
    var Keywords = $("txtFooterKey").value.Trim().replace("<", "");

    var obj = Form.Methods.getInputs("radio", $("hsoContent"));
    for (var i = 0; i < obj.length; i++) {
        if (obj[i].checked) {
            IndexType = obj[i].value;
            break;
        }
    }

    if (Keywords == "")
        return;
    else if (Keywords.IsChinese() || Keywords.IsHtml()) {
        alert("Please enter English characters only.");
        return;
    }
    else {
        var Url = "";

        if (Keywords != "")
            Url += "key=" + escape(Keywords);
        if (IndexType != "P") {
            Url += "&type=" + IndexType;
        }
        window.location.href = "/search?" + Url;
    }
}

function ContactCom(cid) {
    self.location = String.Format("/inquiry?id={0}", cid);
}

function seaLiOver(_this, over) {
    if (over) {
        _this.className = 'active';
    } else _this.className = '';
}

function AddToBasket() {
    var str = "";
    var varArr = Form.Methods.getChkId($("searchResult"));
    for (var i = 0; i < varArr.length; i++) {
        str += varArr[i] + ",";
    }

    var var1 = $("IndexType").value;

    if (str.IsNullOrEmpty())
        alert("Please check at least one");
    else {
        $("MsgSpan").innerHTML = "progressing...";
        TransferAjax("/ajax", String.Format("type=addToBasket&id={0}&itemtype={1}&cid={2}", str, var1, cid), DisponseAjaxByBasket);
    }
}

function DisponseAjaxByBasket(obj) {
    $("basketNumSpan").innerHTML = obj;
    $("MsgSpan").innerHTML = "";
}

function ContactAll() {
    var str = "";
    var varArr = Form.Methods.getChkId($("searchResult"));
    for (var i = 0; i < varArr.length; i++) {
        var varArrNew = varArr[i].split("_");
        if (varArrNew.length == 2)
            str += varArrNew[1] + "_";
    }

    if (str.IsNullOrEmpty())
        alert("Please check at least one");
    else
        self.location = String.Format("/inquiry?id={0}", str);
}

function showAlert(el, trans) {
    var dw = document.body.offsetWidth,
			dh = Public.Dom.getDocumentSize()[1],
			vh = Public.Dom.getDocumentViewHeight(),
			sro = getDocScroll();
    trans.className = "transShow";
    trans.style.width = dw + 'px';
    trans.style.height = dh + 'px';
    el.style.display = 'block';
    el.style.top = sro[1] + vh / 2 - el.offsetHeight / 2 + 'px';
    el.style.left = dw / 2 - el.offsetWidth / 2 + 'px';
}

function hideEl(el, trans) {
    el.style.display = 'none';
    trans.className = "transHide";
}

function getDocScroll(doc) {
    doc = doc || document;
    return [Math.max(doc.documentElement.scrollLeft, doc.body.scrollLeft),
		Math.max(doc.documentElement.scrollTop, doc.body.scrollTop)];
}

function tipError(_this, txt, hide) {
    var spanError = $C('txtError', _this.parentNode)[0];
    if (hide) { spanError.className = 'txtError' } else {
        spanError.className = 'txtError active';
        spanError.innerHTML = txt;
    }
}

function QuickPost() {
    var IsSuccess = { subject: false, details: false };
    var var1 = $("pro_name").value.Trim();
    var var2 = $("pro_description").value.Trim();

    var obj1 = $("pro_name");
    var obj2 = $("pro_description");

    if (var1 == "" || var1 == "I want to buy") {
        tipError(obj1, "Please enter subject");
        IsSuccess.subject = false;
    }
    else if (var1.IsChinese() || var1.IsHtml()) {
        tipError(obj1, "Please enter english characters only");
        IsSuccess.subject = false;
    }
    else {
        tipError(obj1, "", true);
        IsSuccess.subject = true;
    }


    if (var2 == "") {
        tipError(obj2, "Please enter subject");
        IsSuccess.details = false;
    }
    else if (var2.IsChinese() || var2.IsHtml()) {
        tipError(obj2, "Please enter english characters only");
        IsSuccess.details = false;
    }
    else {
        tipError(obj2, "", true);
        IsSuccess.details = true;
    }

    if (!IsSuccess.subject || !IsSuccess.details)
        return false;
}

function selectItem(parent, count) {
    var list = $(parent).getElementsByTagName('a');
    switch (count) {
        case 10:
            {
                list[0].className = 'active'; return;
            }
        case 20:
            {
                list[1].className = 'active'; return;
            }
        case 38:
            {
                list[2].className = 'active'; return;
            }
        case 50:
            {
                list[3].className = 'active'; return;
            }
        default:
            {
                list[0].className = 'active'; return;
            }
    }
}

function Gotopage() {
    var url = location.href;
    var varRegex = /&page=\d+/i;

    var value = $("txtToto").value.Trim();
    if (value == "" || !value.IsNum())
        alert("Please enter numbers");
    else {
        url = url.replace(varRegex, "");
        url = String.Format("{0}&page={1}", url, value);
        window.location.href = url;
    }
}