﻿function OnSetAllTextBox(controlID)
{
    // GetControlID : ต้อง Include ไฟล์ common
    var myTextBoxID = GetControlID(controlID);
    // ทำการ Replace เพื่อหา Server ID ของ TtextBox ที่เหลือ
    var txtSearchSellingLeadID = controlID.replace(myTextBoxID,"txtSearchSellingLead");
    var txtSearchProductID = controlID.replace(myTextBoxID,"txtSearchProduct");
    var txtSearchSupplierID = controlID.replace(myTextBoxID,"txtSearchSupplier");
    var txtSearchBuyingLeadID = controlID.replace(myTextBoxID,"txtSearchBuyingLead");
    // เมื่อได้ ID ของ TextBox ทุกตัวแล้วทำการ Assign ค่าของ TextBox ที่เกิด Event ให้กับ TextBox ตัวอื่นๆ
    document.getElementById(txtSearchSellingLeadID).value = document.getElementById(controlID).value;       
    document.getElementById(txtSearchProductID).value = document.getElementById(controlID).value;
    document.getElementById(txtSearchSupplierID).value = document.getElementById(controlID).value;
    document.getElementById(txtSearchBuyingLeadID).value = document.getElementById(controlID).value;
}

function DisableSearch(textboxID,buttonID)
{
//    if(document.getElementById(textboxID).value.length == 0)
//    {
//        document.getElementById(buttonID).disabled = true;
//    }
//    else
//    {
//        document.getElementById(buttonID).disabled = false;
//    }
    OnSetAllTextBox(textboxID);
}

function replaceChars(textboxID,oldKeyword,newReplace) 
{
    out = oldKeyword; // replace this
    add = newReplace; // with this
    temp = "" + document.getElementById(textboxID).value; // temporary holder

    while (temp.indexOf(out)>-1) 
    {
        pos= temp.indexOf(out);
        temp = "" + (temp.substring(0, pos) + add + 
        temp.substring((pos + out.length), temp.length));
    }
    document.getElementById(textboxID).value = temp;
}

function OnDropDownSelected(dropdownID)
{
    // Get DropDown Selected : ต้อง Include ไฟล์ common
    var dropdownValue = GetValueOfDropDownListSelected(dropdownID);

    // GetControlID
    var myDropDownSelectedID = GetControlID(dropdownID);
    var ddlCategorySellingLeadID = dropdownID.replace(myDropDownSelectedID,"ddlCategorySellingLead");
    var ddlCategoryProductID = dropdownID.replace(myDropDownSelectedID,"ddlCategoryProduct");
    var ddlCategorySupplierID = dropdownID.replace(myDropDownSelectedID,"ddlCategorySupplier");
    var ddlCategoryBuyingLeadID = dropdownID.replace(myDropDownSelectedID,"ddlCategoryBuyingLead");
    
    // เมื่อได้ ID ของ DropDown ทุกตัวแล้วทำการ Assign ค่าของ DropDown ที่เกิด Event ให้กับ DropDown ตัวอื่นๆ
    document.getElementById(ddlCategorySellingLeadID).value = dropdownValue;       
    document.getElementById(ddlCategoryProductID).value = dropdownValue;
    document.getElementById(ddlCategorySupplierID).value = dropdownValue;
    document.getElementById(ddlCategoryBuyingLeadID).value = dropdownValue;
}
// Generate PageURL Of Remember Keyword And Subcategory
function ReplacePageURL(PageURL,TabIndex,CheckQueryString,CheckService)
{
    var hidEnableChange ;
    var hidURLName;
    
    switch(CheckService)
    {
        case "Subcategory":{
                                hidEnableChange = document.getElementById(hidSubCatEnableChangeID);
                                hidURLName = document.getElementById(hidURLNameID);
                            }break;
        case "RememberKeyword":{
                                hidEnableChange = document.getElementById(hidRememberKeywordEnableChangeID);
                                hidURLName = document.getElementById(hidCurrentPageRememberKeywordID);
                            }break;
    }
    
    if(typeof hidEnableChange == "undefined" || typeof hidURLName == "undefined")
        return; 
    if( hidEnableChange.value == "False")
        return; 
        
    var eLink =  document.getElementsByTagName("a");
    if(typeof eLink == "undefined" )
        return;
    
    //Current PageURL
    var currentURL = hidURLName.value;
    //Active Next PageURL : กำหนดค่าของ PageURL ที่ได้ Active ให้กับ Hidden Field
    hidURLName.value = PageURL;
    
    for(var i=0; i < eLink.length; i++)
    {
        // Get New Path URL
        var newLink = eLink[i].href.replace(currentURL,PageURL);
        //ป้องกันกรณีที่ไม่ใช่ A Href ที่ไม่ใช่ที่จะเปลี่ยน
        if(newLink.indexOf(CheckQueryString) == -1)
            continue;
        
        // ถ้าเป็น Subcategory ต้องทำการ Concate QueryString เพื่อ Active TabIndex
        if(TabIndex > -1)
        {
            var index = newLink.indexOf("?")+1;
            // Get QueryString
            strQueryString = newLink.substring(index);
            var arrayQueryString = strQueryString.split("&");
            //Clear ทิ้ง
            strQueryString = "";
        
            //Generate TabName ใหม่
            for (var num=0;num<arrayQueryString.length;num++) 
            {
                //ชื่อ QueryString
                var valueQueryString = arrayQueryString[num].split("=");
                if (valueQueryString[0] == CheckQueryString) 
                {
                    strQueryString += valueQueryString[0] + "=" + TabIndex;
                }
                else
                {
                    strQueryString += valueQueryString[0] + "=" + valueQueryString[1];
                }
                 strQueryString += "&";
            }
            index = newLink.indexOf("?") + 1;
            strQueryString = strQueryString.substring(0,strQueryString.length -1);
            newLink = newLink.substring(0,index);
            newLink = newLink + strQueryString;
        }      
        // Assign Link ให้กับ A Linke
        var strLinkId = eLink[i].id;
        
        if(strLinkId != "")
            document.getElementById(strLinkId).href = newLink;
    }
    // Generate จำนวนหมวด ใน Tab ที่เลือก
    GenerateCountofCategory(PageURL);
}

// Generate จำนวนหมวด ใน Tab ที่เลือก
// โดยจะไป Get ข้อมูลมาจาก Hiddenfield ใน HomeCategoryUC.ascx
function GenerateCountofCategory(PageURL)
{
    if (strPageURL == "Default.aspx" || strPageURL == "CategoryPrefix.aspx")
    {
        var spanArray = document.getElementsByTagName('span');
        if (spanArray)
        {
            var hidValue;
            // Get ค่าตามประเภทของ หมวดที่เลือก
            switch(PageURL)
            {        
                case "SellerList.aspx":{
                    hidValue = document.getElementById(hidCountSellingLeadID).value;
                       }break;
                case "ProductList.aspx":{
                    hidValue = document.getElementById(hidCountProductID).value;
                       }break;
                case "SupplierList.aspx":{
                    hidValue = document.getElementById(hidCountSupplierID).value;
                       }break;
                case "BuyerList.aspx":{
                    hidValue = document.getElementById(hidCountBuyingLeadID).value;
                       }break;
            }
            
            if(hidValue)
            {
                // ทำการ Split เพื่อแบ่งประเภทของหมวด
                var collection = hidValue.split(";");
                var index = 0;
                for(var i=0; i < spanArray.length; i++)
                {
                    // ตรวจสอบว่าต้องเป็น Span ที่มี id ตามนี้เท่านั้น
                    if(spanArray[i].id.indexOf(strCheckType) == -1)
                    continue;
                    
                    spanArray[i].innerHTML = collection[index];
                    index++;
                }
            }
        }
    }
}

// Generate PageURL Of SubCategory
function GenerateTitleCategory(ctrlALinkID,TitleName,TabIndex)
{
    var alinkTitleCategory = document.getElementById(ctrlALinkID);
    if(typeof alinkTitleCategory == "undefined")
        return; 

    alinkTitleCategory.innerHTML  = TitleName;
                        
    var newLink = alinkTitleCategory.href;
    var index = newLink.indexOf("?");
    
    newLink = newLink.substring(0,index);         
    alinkTitleCategory.href = "Category.aspx?TabName="+TabIndex;
}

function DoSetFontColor(Control,Color) {
    //Set Font Color
    Control.style.color = Color;
}

//Set ข้อความค้นหา เพื่อแสดงว่าตอนนี้เป็นการค้นที่ Tab ไหน
function DoSetSearchText(ActiveTab,IsActive) {

    var strControlName = "";
    var strSearchText = "";
    var strColor = "#9a9a9a";

    switch (ActiveTab) {
        case 0:
            {
                strControlName = txtSearchSellingLeadID;
                strSearchText = "Search SellingLeads ...";
            } break;
        case 1:
            {
                strControlName = txtSearchProductID;
                strSearchText = "Search Products ...";
            } break;
        case 2:
            {
                strControlName = txtSearchSupplierID;
                strSearchText = "Search Suppliers ...";
            } break;
        case 3:
            {
                strControlName = txtSearchBuyingLeadID;
                strSearchText = "Search Buyers ...";
            } break;
    }

    if (IsActive) {
        if (document.getElementById(strControlName).value == "") {
            //Active Tab Set Text In TextBox
            document.getElementById(strControlName).value = strSearchText;
            strColor = "#9a9a9a";
        }
    }
    else {
        //Focus TextBox จะทำการ Clear TextBox
        if (document.getElementById(strControlName).value == strSearchText) {
            document.getElementById(strControlName).value = "";
            strColor = "#000000";
        }
    }

    if (document.getElementById(strControlName).value == strSearchText) {
        strColor = "#9a9a9a";
    }
    else
        strColor = "#000000";
        
    //Set Font Color
    document.getElementById(strControlName).style.color = strColor;
}

// ClientSideEvent ของ DevExpress TabControl
// จะทำการเรียก ตัวแปรจาก CodeBehide ที่ทำการสร้างไว้ที่หน้า SearchPanelUC.ascx
function ActiveTabChanged(e) {
    DoSetSearchText(e.tab.index,true);
    
    if (strPageURL == "Default.aspx")
    {   
        switch(e.tab.index)
        {        
            case 0:{
                        // Generate PageURL Of Remember Keyword
                        ReplacePageURL("SellerList.aspx","-1","key","RememberKeyword");
                        // Generate PageURL Of SubCategory
                        ReplacePageURL("SubCategory.aspx","0","TabName","Subcategory");
                        // Generate PageURL And Title name Of SubCategory
                        GenerateTitleCategory(alinkTitleCateID,"หมวดสินค้าโปรโมชั่น","0");
                   }break;
            case 1:{
                        // Generate PageURL Of Remember Keyword
                        ReplacePageURL("ProductList.aspx","-1","key","RememberKeyword");
                        // Generate PageURL Of SubCategory
                        ReplacePageURL("SubCategory.aspx","1","TabName","Subcategory");
                        // Generate PageURL And Title name Of SubCategory
                        GenerateTitleCategory(alinkTitleCateID,"หมวดสินค้า","1");
                    }break;
            case 2:{
                        // Generate PageURL Of Remember Keyword
                        ReplacePageURL("SupplierList.aspx","-1","key","RememberKeyword");
                        // Generate PageURL Of SubCategory
                        ReplacePageURL("SubCategory.aspx","2","TabName","Subcategory");
                        // Generate PageURL And Title name Of SubCategory
                        GenerateTitleCategory(alinkTitleCateID,"หมวดผู้ขาย","2");
                    }break;
            case 3:{
                        // Generate PageURL Of Remember Keyword
                        ReplacePageURL("BuyerList.aspx","-1","key","RememberKeyword");
                        // Generate PageURL Of SubCategory
                        ReplacePageURL("SubCategory.aspx","3","TabName","Subcategory");
                        // Generate PageURL And Title name Of SubCategory
                        GenerateTitleCategory(alinkTitleCateID,"หมวดประกาศซื้อ","3");    
                    }break;
        }
    }    
    else
        if (strPageURL == "ProductList.aspx" || strPageURL == "SellerList.aspx"  || strPageURL == "BuyerList.aspx" || strPageURL == "SupplierList.aspx")
        {   
            var strCid = GetQueryString("cid");
            if(typeof strCid == "undefined" )
                strCid = "";

            var strPageName = "";
            var strSearchText = "";
            var strTextBoxID = "";
            var strDropDownID = "";
                
            switch(e.tab.index)
            {
                case 0:
                    {

                        strSearchText = "Search SellingLeads ...";
                        strPageName = "SellerList.aspx?key=";
                        strTextBoxID = txtSearchSellingLeadID;
                        strDropDownID = ddlCategorySellingLeadID;
                    } break;
                case 1:
                    {
                        strSearchText = "Search Products ...";
                        strPageName = "ProductList.aspx?key=";
                        strTextBoxID = txtSearchProductID;
                        strDropDownID = ddlCategoryProductID;
                    } break;
                case 2:
                    {
                        strSearchText = "Search Suppliers ...";
                        strPageName = "SupplierList.aspx?key=";
                        strTextBoxID = txtSearchSupplierID;
                        strDropDownID = ddlCategorySupplierID;
                    } break;
                case 3:
                    {
                        strSearchText = "Search Buyers ...";
                        strPageName = "BuyerList.aspx?key=";
                        strTextBoxID = txtSearchBuyingLeadID;
                        strDropDownID = ddlCategoryBuyingLeadID;
                    } break;
            }

            if (document.getElementById(strTextBoxID).value == strSearchText) {
                document.getElementById(strTextBoxID).value = "";
            }
            
            if (strPageName != "") {
                
                window.location = strPageName + document.getElementById(strTextBoxID).value + "&cat=" + GetValueOfDropDownListSelected(strDropDownID) + "&cid=" + strCid;
            }
        }
        else
            if (strPageURL == "SubCategory.aspx")
            {   
                var strCid = GetQueryString("cid");
                if(typeof strCid == "undefined" )
                    strCid = "";
                    
                switch(e.tab.index)
                {
                    case 0:window.location = "SubCategory.aspx?cid="+strCid+"&TabName=0";break;
                    case 1:window.location = "SubCategory.aspx?cid="+strCid+"&TabName=1";break;
                    case 2:window.location = "SubCategory.aspx?cid="+strCid+"&TabName=2";break;
                    case 3:window.location = "SubCategory.aspx?cid="+strCid+"&TabName=3";break;
                }
            }
             else
                if (strPageURL == "Category.aspx")
                {   
                    switch(e.tab.index)
                    {
                        case 0:window.location = "Category.aspx?TabName=0";break;
                        case 1:window.location = "Category.aspx?TabName=1";break;
                        case 2:window.location = "Category.aspx?TabName=2";break;
                        case 3:window.location = "Category.aspx?TabName=3";break;
                    }
                }
                else
                    if (strPageURL == "CategoryPrefix.aspx" )
                    {   
                        switch(e.tab.index)
                        {
                            case 0:{
                                        // Generate PageURL Of Remember Keyword
                                        ReplacePageURL("SellerList.aspx","-1","key","RememberKeyword");
                                   }break;
                            case 1:{
                                        // Generate PageURL Of Remember Keyword
                                        ReplacePageURL("ProductList.aspx","-1","key","RememberKeyword");
                                    }break;
                            case 2:{
                                        // Generate PageURL Of Remember Keyword
                                        ReplacePageURL("SupplierList.aspx","-1","key","RememberKeyword");
                                    }break;
                            case 3:{
                                        // Generate PageURL Of Remember Keyword
                                        ReplacePageURL("BuyerList.aspx","-1","key","RememberKeyword");  
                                    }break;
                        }
                        
                        var hidPrefix = document.getElementById("ctl00_ContentPlaceHolderContent_CategoryPrefixUC1_hidPrefix");
                        if(hidPrefix)
                        {
                            var collection = hidPrefix.value.substring(0,hidPrefix.value.length -1);
                            hidPrefix.value = collection + e.tab.index;
                        }
                    }
                        
}

//ทำการเปลี่ยน Link ของ AdvancedSearch โดยทำการส่ง Searxh Text กับ หมวดสินค้าท่เลือกไปด้วย
function AdSearchReplacePageURL(CurrentPage,Control)
{
    if(Control)
    {   
        var newLink = "";
        switch(CurrentPage)
        {
            case 'SellerList'   :newLink = "key="+document.getElementById(txtSearchSellingLeadID).value+"&cat="+GetValueOfDropDownListSelected(ddlCategorySellingLeadID)+"&tab=SellerList";break;
            case 'ProductList'  :newLink = "key="+document.getElementById(txtSearchProductID).value+"&cat="+GetValueOfDropDownListSelected(ddlCategoryProductID)+"&tab=ProductList";break;
            case 'SupplierList' :newLink = "key="+document.getElementById(txtSearchSupplierID).value+"&cat="+GetValueOfDropDownListSelected(ddlCategorySupplierID)+"&tab=SupplierList";break;
            case 'BuyerList'    :newLink = "key="+document.getElementById(txtSearchBuyingLeadID).value+"&cat="+GetValueOfDropDownListSelected(ddlCategoryBuyingLeadID)+"&tab=BuyerList";break;
        }
        Control.href = "AdvancedSearch.aspx?"+newLink;    
    }
}
