﻿var domain_name = "http://localhost:1628/amsbio_ukfastnet/";
//var domain_name = "http://test.amsbio.com/";
var news_current_record = 0;
var news_last_record;
var showroom_current_record = 0;
var showroom_last_record;
var creditals = "&vsUser=amsd&vsPwd=amsd";
var record_delim = "#";
var field_delim = "|";
var url = "wsSearch.asmx/sGetResults?vsSearchTerms=";  //sGetResults?vsSearchTerms=";
var urlquery = "wsSearch.asmx/sGetResultsBySQL?vsSQLQuery=";
var urlquerysearches = "wsSearch.asmx/sReturnHTMLSearchResultsBySQL?vsSQLQuery=";
var urlnews = "wsSearch.asmx/sGetNewsRecordsBySQL";
var urlshowroom = "wsSearch.asmx/sGetShowroomRecordsBySQL";
var http = null;
var http1 = null;
var httpnews = null;
var httpshowroom = null;
var news_records = new Array();
var news_fields = new Array();
var news_link_text = new Array();
var news_link_href = new Array();
var news_img_src = new Array();
var showroom_records = new Array();
var showroom_fields = new Array();
var showroom_link_text = new Array();
var showroom_link_href = new Array();
var showroom_img_src = new Array();
var response = '';
var keyvalue = '';
var keytype = 0;
var _pagerender = 0;
var _topofpagelink = "<a style='font-weight:bold;float:right;padding:20px;' href='#topofpage'>Top of page>></a>";
var _recorddisplaylimit = 500;
var _browserhttptype = false;
var _options = null;
var _myhttp = null;
var selectedfields ='SELECT P.LEVEL_2_ID,P.CODE,P.DESCRIPTION,P.QUANTITY,P.PROMOTIONAL_FLAG,P.presedence,p.species_reactivity,p.applications,p.level_1_id,p.cloneno FROM ';
var selectfields = null;
var innerjoin = '' //' AS P inner join mem_products_PRICES AS PP ON PP.CODE=P.CODE ';
var selectedtabledefault = ' MEM_PRODUCTS AS P ';
var selectedtablememory = ' MEM_PRODUCTS AS p ';
var orderby = ' ORDER BY P.LEVEL_2_ID,P.presedence DESC,P.CODE;'
//var searchinghtml = '<center><img src="images/pagelayout/ajax-loader_pik.gif"'
//                     + ' style="width:24px;vertical-align:middle;" />'
//                     + 'Searching, please wait....'
//                     + '</center>';
var searchinghtml = '<center>Searching, please wait....</center>';
var searcherrorhtml="<div><font style='color:red;'>Sorry, there has been a SEARCH ERROR:</font><br/><br/><b>If you would like further assistance please contact our Customer Service Team. Thank you.</b>"; 
var _GLOBALSEARCHPAGE = 1;
var _PAGESEARCH = 2;
var browser = navigator.appName;
var _IE = 'Microsoft Internet Explorer';

function _getselectedtabledefault(nlevel1) {
    if (nlevel1 > 100 && nlevel1<110) {
       return " MEM_PRODUCTS AS P ";
       //return " MEM_PRODUCTS_" + nlevel1 + " AS P ";
    } else {
        return " MEM_PRODUCTS AS P ";
    }
}

function processmenu(vsId) {
    var _state = document.getElementById(vsId).style.display;
    if (_state == '' || _state == null) {
        document.getElementById(vsId).style.display = 'block';
        document.getElementById('btn' + vsId).innerHTML = '[-]';
    } else {
        document.getElementById(vsId).style.display = 'none';
        document.getElementById('btn' + vsId).innerHTML = '[+]';
    }
}

function _getformsearchtermsquery() {
    var formsearchtermsquery = '';
    formsearchtermsquery = formsearchtermsquery + "&keywords=";
    if (document.getElementById("inputkeywords")) {
        formsearchtermsquery = formsearchtermsquery + document.getElementById("inputkeywords").value;
    };
    formsearchtermsquery = formsearchtermsquery + "&cloneno=";
    if (document.getElementById("inputCloneNumber")) {
        formsearchtermsquery = formsearchtermsquery + document.getElementById("inputCloneNumber").value;
    };
    formsearchtermsquery = formsearchtermsquery + "&abtype=";
    if (document.getElementById("selectAntibodyType")) {
        formsearchtermsquery = formsearchtermsquery + document.getElementById("selectAntibodyType").value;
    };
    formsearchtermsquery = formsearchtermsquery + "&speciesreactivity=";
    if (document.getElementById("selectSpeciesReactivity")) {
        formsearchtermsquery = formsearchtermsquery + document.getElementById("selectSpeciesReactivity").value;
    };
    formsearchtermsquery = formsearchtermsquery + "&sourcespecies=";
    if (document.getElementById("selectSourceSpecies")) {
        formsearchtermsquery = formsearchtermsquery + document.getElementById("selectSourceSpecies").value;
    };

    formsearchtermsquery = formsearchtermsquery + "&accessionnumber=";
    if (document.getElementById("inputaccessionnumber")) {
        formsearchtermsquery = formsearchtermsquery + document.getElementById("inputaccessionnumber").value;
    };     
    return formsearchtermsquery;
}

function _onsearchtermspage(blnmemory, level1, level2, level3, searchterms) {
    var keyname = null;
    var keyvalue = null;
    var _found = false;
    var keypairs = new Array();
    var keyitem = new Array();
    var _querylevels = ' (p.level_1_id=' + level1;
    var _query = null;
    _pagerender = _PAGESEARCH;
    if (searchterms != '') {       
        if (blnmemory == false) {
            _query = selectedfields + _getselectedtabledefault(level1) + innerjoin + ' WHERE ';
        } // if (blnmemory == false)
        if (blnmemory == true) {
            _query = selectedfields + selectedtablememory + ' WHERE ';
            _query = _query.replace('PP.', 'P.');
        } // if (blnmemory == false)   
        if (level1 == 999) {
            _querylevels = " (p.promotional_flag>0 ";
        }
        if (level1 == 998) {
            _querylevels = " p.level_1_id=101 and (p.is_stemcell=1 ";
        }
        if (level2) { _querylevels = _querylevels + " AND p.LEVEL_2_ID='" + level2 + "'"; }
        if (level3) { _querylevels = _querylevels + " AND p.LEVEL_3_ID='" + level3 + "'"; }
        keypairs = searchterms.split("&");
        for (var i = 1; i < (keypairs.length); i++) {
            keyitem = keypairs[i].split('=');
            keyname = keyitem[0];
            keyvalue = keyitem[1];
            if (keyvalue) {
                if (keyname == 'keywords') {
                    if (_found == true) { _query = _query + ' AND '; }
                    _query = _query + ' ('+  _returnsearchtermquery("P.DESCRIPTION", keyvalue, blnmemory);
                    _query = _query + ' OR ' + _returnsearchtermquery("P.CODE", keyvalue, blnmemory)+') ';
                    _found = true;
                } // if (keyname='keywords') {
                if (keyname == 'cloneno') {
                    if (_found == false) { _query = _query + ' '; }
                    if (_found == true) { _query = _query + ' AND '; }
                    _query = _query + +_returnsearchtermquery("P.CLONENO", keyvalue, blnmemory) ;
                    _found = true;
                } // (keyname == 'cloneno')
                if (keyname == 'abtype' && keyvalue != 'Show All')
                 { _querylevels = _querylevels + " AND p.LEVEL_2_ID='" + keyvalue + "' "; }

                if (keyname == 'speciesreactivity' && keyvalue != 'Show All') {
                    if (_found == false) { _query = _query + ' '; }
                    if (_found == true) { _query = _query + ' AND '; }
                    _query = _query + _returnsearchtermquery("P.SPECIES_REACTIVITY", keyvalue, blnmemory);
                    _found = true;
                } // keyname == 'speciesreactivity

                if (keyname == 'sourcespecies' && keyvalue != 'Show All') {
                    if (_found == false) { _query = _query + ' '; }
                    if (_found == true) { _query = _query + ' AND '; }
                    _query = _query + _returnsearchtermquery("P.source_species", keyvalue, blnmemory);
                    _found = true;
                } // keyname == 'sourcespecies'
            } // if(keyvalue)           
        } // for (var i = 0; i < (keypairs.length - 1); i++) {
        if (_found == true) { _query = _query + " and "; }
        _querylevels = _querylevels + " ) ";
        _query = _query + _querylevels + orderby;
        cleardropdowns();
        document.getElementById("subcatdiv").innerHTML = '';
        document.getElementById("fulllistdiv").innerHTML = '';
        getServerMessage1(urlquery + _query, null);
    } // if (searchterms != '') {
}

function _CreateRelatedAreasList(blnmemory,level1,level2,level3) {
    _myhttp = getXMLHTTPRequest();
    var _query = null;
    if (blnmemory == false) {
        _query = 'SELECT DISTINCT(wf.title),wf.page_url,wf.image_url FROM mem_web_feature_areas as wf'
                + ' inner join mem_web_feature_areas_cross_ref as wxf on wxf.feature_id=wf.id where level_1_id=' + level1;
    }
    if (blnmemory == true) {
        _query = 'SELECT DISTINCT(wf.title),wf.page_url,wf.image_url FROM mem_web_feature_areas as wf'
                + ' inner join mem_web_feature_areas_cross_ref as wxf on wxf.feature_id=wf.id where level_1_id=' + level1;
    }
    if (level2) { _query = _query + ' AND LEVEL_2_ID="' + level2 + '"'; }
    if (level3) { _query = _query + ' AND LEVEL_3_ID="' + level3 + '"'; }     
    _query=_query + ' ORDER BY wf.title;';
    var url = urlquery + _query;
    var _returnHTML = '<div style="height:auto;width:180px;vertical-align:top;font-size:8pt;">';
    if (_myhttp) {
        _myhttp.onreadystatechange = _GetFeatures;
        _myhttp.open('GET', url, _browserhttptype);
        _myhttp.send(null);
    }
    _returnHTML = _returnHTML + _options;
    _returnHTML = _returnHTML + '</div>'; 
    return _returnHTML;
}

function _GetFeatures() {
    var _myresponse;
    var _response_text;
    var root;
    var records = new Array();
    var fields = new Array();
    if (_myhttp) {
        if (_myhttp.readyState == 4 && _myhttp.status == 200) {
            _options ='';
            _myresponse = _myhttp.responseXML;
            _response_text = _myhttp.responseText;
            if (_response_text.length <= 100) { return ''; }
            var _rootstring = _myresponse.getElementsByTagName("string")[0].firstChild.nodeValue;
            if (_rootstring != null) {
                var _searchterms = keyvalue;
                root = _myresponse.getElementsByTagName('string').item(0).firstChild.data;
                records = root.split('#');
                for (var i = 1; i < records.length; i++) {
                    if (records[i]) {
                        fields = records[i].split('|');
                        _options = _options + '<div style="width:175px;text-indent:16px;float:left;display:block;><center>';
                        _options = _options + '<div style="width:100%;overflow:flow;"><img style="width:64px;" src="' + fields[2] + '"/></div>';
                        _options = _options + '<div style="width:100%px;overflow:flow;"><a href="' + fields[1] + '">' + fields[0] + '</a></div>';
                        _options = _options + '</center></div>';
                    } // if (records[i] != null) {
                } // for (var i = 0; i < records.length; i++) {
            } // if (_rootstring != null) {
            return _options;
        } //if (myhttp1.readyState == 4 && myhttp1.status == 200) {        
    } //if (_myhttp) {
} // function _GetFeatures()

function _CreateSearchInputBox(_title) {
    var _returnHTML = '<div style="height:26px;width:490px;float:left;">';
    _returnHTML = _returnHTML + '<div class="products_sub_block_blue" style="text-indent:8px;height:26px;width:150px;float:left;vertical-align:middle;padding:4px;">' + _title + '</div>';
    _returnHTML = _returnHTML + '<div class="products_sub_block_gray" style="height:100%;width:270px;float:left;vertical-align:middle;text-align:center;padding:4px;">';
    _returnHTML = _returnHTML + '<input id="input' + _title.replace(' ','') + '" type="text" size="36" style="font-size:14px;"/></div></div>';
    return _returnHTML;   
}

function _CreateNamedSelect(title, _query) {
    _myhttp = getXMLHTTPRequest();
    var url = urlquery + _query;
    var _returnHTML = '<div style="height:26px;width:490px;float:left;text-align:left;">';
    _returnHTML = _returnHTML + '<div class="products_sub_block_blue" style="text-indent:8px;height:26px;width:150px;float:left;vertical-align:middle;padding:4px;">' + title + '</div>';
    _returnHTML = _returnHTML + '<div class="products_sub_block_gray" style="height:100%;width:270px;float:left;vertical-align:middle;text-align:center;padding:4px;">';
    _returnHTML = _returnHTML + '<select style="font-size:14px;" id="select' + title.replace(' ', '') + '"><option value ="Show All">Show All</option>';
    if (_myhttp) {
        _myhttp.open('GET', url, _browserhttptype);
        _myhttp.onreadystatechange = _GetOptions;
        _myhttp.send(null);
        _returnHTML = _returnHTML + _options + '</select></div>';
    }   
    _returnHTML = _returnHTML + '<div style="height:16px;width:auto;float:left;"></div></div>';
    return _returnHTML;
}

function _GetOptions()
{
    var _myresponse;
    var _response_text;
    var root;
    var records = new Array();
    if (_myhttp.readyState == 4 && _myhttp.status == 200) {            
        _options = '';
        _myresponse = _myhttp.responseXML;
        _response_text = _myhttp.responseText;
        if (_response_text.length <= 80) { return null; }
        var _rootstring = _myresponse.getElementsByTagName("string")[0].firstChild.nodeValue;
        if (_rootstring != null) {
            var _searchterms = keyvalue;
            root = _myresponse.getElementsByTagName('string').item(0).firstChild.data;
            records = root.split('#');
            for (var i = 1; i < records.length; i++) {
                if (records[i]) {
                    _options = _options + '<option value="' + records[i] + '">' + records[i] + '</option>';
                } // if (records[i] != null) {
            } // for (var i = 0; i < records.length; i++) {
        } // if (_rootstring != null) {
        _myhttp.abort();
        return _options;
    } //if (myhttp1.readyState == 4 && myhttp1.status == 200) {        
} // function _GetOptions()

function geturlkeys() {
    var _keys = new Array();
    var _eachkey = new Array();
    _keys = window.location.search.split('&');
    if (_keys != '') {
        _eachkey = _keys[0].split('=');
        keyvalue = _eachkey[1].replace('%20', ' ');
        _eachkey = _keys[1].split('=');
        keytype = _eachkey[1];
    }
    return keyvalue + '|' + keytype;
}

function load_complete() {page_init();}

function homepage_init() {
    initbrowser();
    getServerMessageNews(urlnews);
    getServerMessageShowroom(urlshowroom);
}

function page_init() {
    initbrowser();
    banner_flip();
}

function homebanner_flip() {
    var _img = new Array();
    var _imgimgid = "imgbanner";
    _img[0] = "images/syndicut/home_banner1.jpg";
    _img[1] = "images/syndicut/home_banner2.jpg";
    _img[2] = "images/syndicut/home_banner3.jpg";
    _img[3] = "images/syndicut/home_banner4.jpg";
    _img[4] = "images/syndicut/home_banner5.jpg";
    // load adrotator
    _imgindex = (Math.floor(Math.random() * 5));
    document.getElementById(_imgimgid).src = _img[_imgindex];
}  // end of function load_complete()


function initbrowser() {
    // detect browser
    var browser = navigator.appName;
    if (browser == _IE) {
        _browserhttptype = false;
    } else {
        _browserhttptype = true;
    }
    if (document.getElementById("searchreturns")) {
        document.getElementById("searchreturns").style.visiblilty = 'hidden';
    }
}

function page_load(_id) {
    var msg = '';
    var _query = '';
    var keylist = geturlkeys();
    _pagerender = _id;
    // detect browser
    if (browser ==_IE) {
        // _browserhttptype = false;
        _browserhttptype = true;       
    } else {
    _browserhttptype = true;
    //_browserhttptype = false;
    }    
    selectfields = selectedfields + selectedtabledefault +  innerjoin;
    // global search page
    if ( _pagerender == _GLOBALSEARCHPAGE && keyvalue !='') {
        document.getElementById("searchterms").value = keyvalue        
        document.getElementById("messagediv").innerHTML = searchinghtml;
        _query = selectfields + " WHERE "
                              + _returnsearchtermquery("P.DESCRIPTION", keyvalue)
                              + " OR " + _returnsearchtermquery("P.CODE", keyvalue);
        // level 1 grouping
        if (keytype >= 101 && keytype < 108) {
            _query = selectfields + "  WHERE "
                                  + _returnsearchtermquery("P.DESCRIPTION", keyvalue)
                                  + " OR " + _returnsearchtermquery("P.CODE", keyvalue);
                                  + " AND P.LEVEL_1_ID=" + keytype;
        }
        // product code
        if (keytype == 5) {
            _query = selectfields + _returnsearchtermquery("P.CODE", keyvalue); ;
        }
        // accn
        if (keytype == 2) {
            _query = selectfields + " WHERE "
                                  + _returnsearchtermquery("P.DESCRIPTION", keyvalue)
                                  + " OR " + _returnsearchtermquery("P.ACCESSION_NUMBER", keyvalue);
        }
        //cloneno
        if (keytype == 2) {
            _query = selectfields + " WHERE "
                    + _returnsearchtermquery("P.DESCRIPTION", keyvalue)
                    + " OR " + _returnsearchtermquery("P.CLONENO", keyvalue);
        }
        _query = _query + orderby;
        _onsearchtermsClient(keyvalue, _query);        
    } //  if (_id == _GLOBALSEARCHPAGE) {
} // function page_load(_id)

function _returnsearchtermquery(vsColumn, vsSearchterms) {
    var sreturn = "";
    var sterms = new Array();
    var terms = vsSearchterms;
    // added to catch TUNEL for TACS.
    terms = terms.replace('tunel', 'TACS');
    terms = terms.replace('TUNEL', 'TACS');
    terms = terms.replace('%20', ' ');
    sterms = terms.split(' ');    
    for (var i = 0; i <= sterms.length; i++) {
        if (sterms[i] != null && sterms[i] != '') {
            if (i==0) {  sreturn = sreturn + " (";}
            if (i > 0) { sreturn = sreturn + " AND ("; }
            sreturn = sreturn + vsColumn + " LIKE('%" + sterms[i] + "') OR ";
            sreturn = sreturn + vsColumn + " LIKE('%" + sterms[i] + "%') OR ";
            sreturn = sreturn + vsColumn + " LIKE('" + sterms[i] + "%')) ";            
        }
    }
    return sreturn;
}

function banner_flip() {
    var _img = new Array();
    var _imgimgid = "imgbanner";
    _img[0] = "images/syndicut/products_banner1.jpg";
    _img[1] = "images/syndicut/products_banner2.jpg";
    _img[2] = "images/syndicut/products_banner3.jpg";
    _img[3] = "images/syndicut/products_banner4.jpg";
    _img[4] = "images/syndicut/products_banner5.jpg";
    _img[5] = "images/syndicut/products_banner6.jpg";
    _img[6] = "images/syndicut/products_banner7.jpg";
    _img[7] = "images/syndicut/products_banner8.jpg";
    _img[8] = "images/syndicut/products_banner9.jpg";
    _img[9] = "images/syndicut/products_banner10.jpg";
    // load adrotator
    _imgindex = (Math.floor(Math.random() * 10));
    document.getElementById(_imgimgid).src = _img[_imgindex];
    }

// part of main generic header inc. do not change
function getSearchResults(_searchterms) {
    var _results = new Array(_searchterms.split(" "));
    return _results;
}

function getXMLHTTPRequest() {
    try {        
            req = new XMLHttpRequest();
        } catch (err1) {
        try {
                req = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (err2) {
        try {
                req = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (err3) {

       req = false; }
        }
    } // try {
    return req;
} //getXMLHTTPRequest() {

function _onsearchtermsClient(searchterms, _query) {
    if (searchterms != '') {
        cleardropdowns();
        getServerMessage1(urlquery + _query, null);
    } // if (searchterms != '') {
} // _onsearchtermsClient(searchterms, _query) {

function getServerMessage(url, parameters) {
    http = getXMLHTTPRequest();
    if (http) {
        http.open('GET', url, _browserhttptype);
        http.onreadystatechange = process_response;
        http.send(null);
    } //if (http) {
} // getServerMessage(url, parameters) {

function getServerMessage1(url, parameters) {
    http1 = getXMLHTTPRequest();
    if (http1) {
        http1.open('GET', url, _browserhttptype);
        http1.onreadystatechange = process_response_page_render;
        http1.send(null);
    } // if (http1) {
} // getServerMessage1(url, parameters) {


function _ReturnProductLink(vsFlag, vsCode, vsQty, vsName,vsSpeciesReactivity,vsApplications,vllevel1,vscloneno) {
    var sReturn = '<div style="height:auto;width:608px;display:block;text-decoration:none;">';
    sReturn = sReturn + "<a class='grayHyperlink_style1a' target='_blank' href='productpage.aspx?code=" + vsCode + "' title='click to order'>";
    sReturn = sReturn + "<div>";
    sReturn = sReturn + "<div style='width:130px;float:left;overflow:hidden;'>" + vsCode + "</div>";
    sReturn = sReturn + "<div style='width:100px;float:left;overflow:hidden;text-align:centre;'>" + vsQty + "</div>";
    sReturn = sReturn + "<div style='width:348px;float:left;overflow:hidden;'>" + vsName + "</div></div></a>";    
    sReturn = sReturn + "<div style='width: 30px; float: left;overflow:hidden;'>";
    if (vsFlag == 0) {
        sReturn = sReturn + "<img style='border:0px;width:24px;' src='images/pagelayout/0.png'/>";
    }        
    if (vsFlag > 0) {
      sReturn = sReturn + "<a href='promotions.aspx' target='_blank' "
      + " title='click to view all products on promotion'>"
      + " <img style='border:0px;' src='images/pagelayout/" + vsFlag + ".png'/></a>";
    }
    sReturn = sReturn + "</div>";
    sReturn = sReturn + "</div>";
    if (vllevel1 == 101) {
        sReturn = sReturn + "<div style='width:608px;float:left;text-align:left;'>";
        if (vsApplications) { sReturn = sReturn + "<span> <b>Applications</b>: " + vsApplications +"</span>"; }
        if (vsSpeciesReactivity) { sReturn = sReturn + "<span> <b>Reactivity</b>: " + vsSpeciesReactivity + "</span>"; }
        if (vscloneno) { sReturn = sReturn + "<span> <b>Clone No.</b>: " + vscloneno + "</span>"; }
        sReturn = sReturn + "</div>";        
    }
    sReturn = sReturn + "</div>";
    return sReturn;
}

function _GetProductCount(blnmemory, level1id, level2id, level3id) {
    var _table =  " MEM_PRODUCTS ";
    var _query=null;
    _query = "SELECT COUNT(CODE) FROM " + _table +  " WHERE LEVEL_1_ID=" + level1id;    
    if (level2id != '') { _query = _query + " AND LEVEL_2_ID='" + level2id + "' "; }
    if (level3id != '') { _query = _query + " AND LEVEL_3_ID='" + level3id + "' "; }
    if (level1id == 999) {
        _query = "SELECT COUNT(CODE) FROM MEM_PRODUCTS WHERE promotional_flag>0";
    } //(level1id == 999)
    if (level1id == 998) {
        _query = "SELECT COUNT(CODE) FROM MEM_PRODUCTS WHERE IS_STEMCELL=1 and level_1_id=101 ";
    } //(level1id == 999)   
    _query = _query + ";";    
    getServerMessageProductCount(urlquery + _query);
}

// main search bar to not change.
function _onsearchterms(searchterms) {    
    cleardropdowns();
    if (searchterms != '') {
        searchterms = searchterms.replace("%20", " ");
        searchterms = searchterms.replace(" ", "%");
        var _query = "SELECT distinct(DESCRIPTION) FROM mem_products WHERE DESCRIPTION LIKE('" + searchterms + "') OR CODE LIKE('" + searchterms + "') OR DESCRIPTION LIKE('" + searchterms + "') OR CODE LIKE('" + searchterms + "') ORDER BY DESCRIPTION;";
        getServerMessage(urlquery + _query, null);
    }    
}

// main search bar to not change.
function process_response() {
    // only if req shows "complete"
    var _display;
    var _displaycosmetic;
    if (http) {
        if (http.readyState == 4 && http.status == 200) {
            response = http.responseXML;
            if (document.getElementById("searchreturns")) {
                if (response != null || response != '') {
                    var _searchterms = document.getElementById("searchreturns").value;
                    var root = response.getElementsByTagName('string')[0].firstChild.data;
                    var records = new Array();
                    records = root.split('#');
                    //document.getElementById("totalrecords").innerHTML = " (records found: " + records.length + ")";
                    var displayHTML = '';
                    if (_searchterms != null) {
                        for (n = 0; n < 6; n++) {
                            _displaycosmetic = _searchterms;
                            _display = records[n].replace(_searchterms, _displaycosmetic);
                            _mouseover = "onclick='onmouseover_main_returns(this.innerHTML)'";
                            displayHTML = displayHTML + "<div " + _mouseover + ">" + _display + "</div>";
                        } //for (n = 0; n < 6; n++) {
                        document.getElementById("searchreturns").innerHTML = displayHTML;
                        document.getElementById("searchreturns").style.visiblilty = 'visible';
                    } //if (_searchterms != null) {                
                } //if (response.text != null || response.text !='' ) {
            } //if (document.getElementById("searchreturns")) {
        } //if (http.readyState == 4 && http.status == 200) {
    } //if (http) {
} //function process_response() {

function cleardropdowns() {
    document.getElementById("searchreturns").innerHTML = '';
    document.getElementById("totalrecords").innerHTML = '';
    document.getElementById("totalrecords").innerHTML = '';
}

function process_menu_over(sElementId) {
    process_menu_out();
    document.getElementById(sElementId).style.visibility = 'visible';
}

function process_menu_out() {
    //document.getElementById('').style.visibility = 'hidden';
    document.getElementById('div_products_menu').style.visibility = 'hidden';
    document.getElementById('div_customservices_menu').style.visibility = 'hidden';
    document.getElementById('div_presentations_menu').style.visibility = 'hidden';
    document.getElementById('div_news_menu').style.visibility = 'hidden';
    document.getElementById('div_partners_menu').style.visibility = 'hidden';
    document.getElementById('div_contactus_menu').style.visibility = 'hidden';
}

function news_scroll_up() {
    news_current_record--;
    news_populate_container();
    access_newscontrols();
}

function news_scroll_down() {
    news_current_record++;
    news_populate_container();
    access_newscontrols();
}

function access_newscontrols() {
    document.getElementById("newscontainer_control_up").style.visibility = 'visible';
    document.getElementById("newscontainer_control_down").style.visibility = 'visible';
}

function mainsearchbutton_onclick() {
    var _searchterms = document.getElementById("searchterms").value;
    var _url = "search-results.aspx?value=" + _searchterms + "&type=" + keytype;
    window.location = _url;
}

function getServerMessageProductCount(_url) {
    http = getXMLHTTPRequest();
    if (http) {
        http.open('GET', _url, true);
        http.onreadystatechange = process_response_productcount;
        http.send(null);
    }
    return 0;
}

function process_response_productcount() {
    if (http) {
        if (http.readyState == 4 && http.status == 200) {
            response = http.responseXML;
            if (response.text != '') {
                var _searchterms = document.getElementById("searchreturns").value;
                var root = response.getElementsByTagName('string')[0].firstChild.data;
                var records = new Array();
                records = root.split('#');
                var count = records[1];
                if (count < 0) { count = 0; }                
                document.getElementById("totalproductsforthispage").innerHTML = "<span style='text-indent:8px;padding: 8px;'> (" + count + " products)</span>";
                if (records[0] <= 151) {
                    var searchbutton = document.getElementById("pagesearchbutton");
                    var func = searchbutton.onclick;
                    func();
                } // if (records[0] <= 151) {               
            } // if (response.text != '') {
        } // if (http.readyState == 4 && http.status == 200) {
    } // if (http) {
} // function process_response_productcount() {

function getServerMessageNews(_url) {
    httpnews = getXMLHTTPRequest();
    if (httpnews) {
        httpnews.open('GET', _url, true);
        httpnews.onreadystatechange = process_response_news;
        httpnews.send(null);
    }
}

function process_response_news() {
    if (httpnews) {
        if (httpnews.readyState == 4 && httpnews.status == 200) {
            response = httpnews.responseXML;
            if (response.text != '') {
                var root = response.getElementsByTagName('string')[0].firstChild.data;
                // split out string into records
                news_records = root.split(record_delim);
                news_last_record = (news_records.length - 2);
                // cycle through records and add to field arrays
                for (var record = 0; record <= news_last_record; record++) {
                    news_fields = news_records[record].split(field_delim);
                    news_img_src[record] = news_fields[3];
                    news_link_text[record] = news_fields[2];
                    news_link_href[record] = news_fields[5];
                }  // end of for (var record; record++; record<=news_records.length)
                // set random start point for home page
                news_current_record = Math.floor(Math.random() * news_last_record + 1);
                news_populate_container();
                access_newscontrols();  
            }//if (response.text != '') {
        }//if (http.readyState == 4 && http.status == 200) {
    } // if (httpnews)
} //function process_response_news() {

function news_populate_container() {
    var news_id_1 = news_current_record;
    if (news_id_1 > news_last_record) { news_id_1 = 0; }
    if (news_id_1 < 0) { news_id_1 = news_last_record; }
    var news_id_2 = news_id_1 + 1;
    if (news_id_2 > news_last_record || news_id_2 < 0) { news_id_2 = 0; }
    if (news_id_2 < 0) { news_id_2 = news_last_record; }
    var news_id_3 = news_id_2 + 1;
    if (news_id_3 > news_last_record || news_id_3 < 0) { news_id_3 = 0; }
    if (news_id_3 < 0) { news_id_3 = news_last_record; }
    var img_1 = document.getElementById("news_item_img_1");
    var link_1 = document.getElementById("news_item_link_1");
    img_1.setAttribute("src", news_img_src[news_id_1]);
    link_1.setAttribute("innerHTML", news_link_text[news_id_1]);
    link_1.setAttribute("href", news_link_href[news_id_1]);
    var img_2 = document.getElementById("news_item_img_2");
    var link_2 = document.getElementById("news_item_link_2");
    img_2.setAttribute("src", news_img_src[news_id_2]);
    link_2.setAttribute("innerHTML", news_link_text[news_id_2]);
    link_2.setAttribute("href", news_link_href[news_id_2]);
    var img_3 = document.getElementById("news_item_img_3");
    var link_3 = document.getElementById("news_item_link_3");
    img_3.setAttribute("src", news_img_src[news_id_3]);
    link_3.setAttribute("innerHTML", news_link_text[news_id_3]);
    link_3.setAttribute("href", news_link_href[news_id_3]);
}

function getServerMessageShowroom(_url) {
    httpshowroom = getXMLHTTPRequest();
    if (httpshowroom) {
        httpshowroom.open('GET', _url, true);
        httpshowroom.onreadystatechange = process_response_showroom;
        httpshowroom.send(null);
    }
}

function process_response_showroom() {
    if (httpshowroom) {
        if (httpshowroom.readyState == 4 && httpshowroom.status == 200) {
            response = httpshowroom.responseXML;
            if (response.text != '') {
                var root = response.getElementsByTagName('string')[0].firstChild.data;
                // split out string into records
                showroom_records = root.split(record_delim);
                showroom_last_record = (showroom_records.length -1);
                // cycle through records and add to field arrays
                for (var record = 0; record <= showroom_last_record; record++) {
                    showroom_fields = showroom_records[record].split(field_delim);
                    showroom_img_src[record] = showroom_fields[2];
                    showroom_link_text[record] = showroom_fields[0];
                    showroom_link_href[record] = showroom_fields[1];
                }  // end of for (var record; record++; record<=news_records.length)
                showroom_current_record = Math.floor(Math.random() * showroom_last_record + 1);
                showroom_populate_container();
            } //if (response.text != '') {
        } //if (httpshowroom.readyState == 4 && httpshowroom.status == 200) {
    } //if (httpshowroom) {
} //function process_response_showroom {

function showroom_populate_container() {
    var showroom_id_1 = showroom_current_record;
    if (showroom_id_1 > showroom_last_record) { showroom_id_1 = 0; }
    if (showroom_id_1 < 0) { showroom_id_1 = showroom_last_record; }
    var showroom_id_2 = showroom_id_1 + 1;
    if (showroom_id_2 > showroom_last_record || showroom_id_2 < 0) { showroom_id_2 = 0; }
    if (showroom_id_2 < 0) { showroom_id_2 = showroom_last_record; }
    var showroom_id_3 = showroom_id_2 + 1;
    if (showroom_id_3 > showroom_last_record || showroom_id_3 < 0) { showroom_id_3 = 0; }
    if (showroom_id_3 < 0) { showroom_id_3 = showroom_last_record; }
    var img_1 = document.getElementById("showroom_item_img_1");
    var link_1 = document.getElementById("showroom_item_link_1");
    img_1.setAttribute("src", showroom_img_src[showroom_id_1]);
    link_1.setAttribute("innerHTML", showroom_link_text[showroom_id_1]);
    link_1.setAttribute("href", showroom_link_href[showroom_id_1]);
    var img_2 = document.getElementById("showroom_item_img_2");
    var link_2 = document.getElementById("showroom_item_link_2");
    img_2.setAttribute("src", showroom_img_src[showroom_id_2]);
    link_2.setAttribute("innerHTML", showroom_link_text[showroom_id_2]);
    link_2.setAttribute("href", showroom_link_href[showroom_id_2]);
    var img_3 = document.getElementById("showroom_item_img_3");
    var link_3 = document.getElementById("showroom_item_link_3");
    img_3.setAttribute("src", showroom_img_src[showroom_id_3]);
    link_3.setAttribute("innerHTML", showroom_link_text[showroom_id_3]);
    link_3.setAttribute("href", showroom_link_href[showroom_id_3]);
}


function process_response_page_render() {
    // only if req shows "complete"
    var _display;
    var _levelcount = 0;
    var _displaycosmetic;
    var _displayfound = '';
    var _displaySubDivide = '';
    var _displayFullList = '<a name="#allrecordslist"/><div style="height:24px;width:608px;"></div><div style="width:608px;height:24px; float: left; top: 0px;" ><span style="font-weight: bold;">All Products (_totalrecords)</span></div>';
    var _headerbar = '<div class="products_sub_block_blue" style="width:608px;float:left;height:24px;text-decoration:none;">'
    + '<div style="width:130px;float:left;overflow:hidden;">Cat Code.</div>'
    + '<div style="width:100px;float:left;overflow:hidden;">Pack Size</div>'
    + '<div style="width:348px;float:left;overflow:hidden;">Description</div>'
    + '<div style="width:30px;float:left;overflow:hidden;"><img style="border:0px;width:24px;" src="images/pagelayout/0.png"/></div>'
    + '</div>';

    var _altrow = 0;
    var _divstyle;
    var _level_2_ids_name = new Array();
    var root;
    var records = new Array();
    var _lastone;
    var _totalrecords = 0;
    var _subgrpid = 0;
    var _response_text = null;
    var _displaysummarylinks = '<ul><div style="height:24px;"></div><div style="width:100%;height:24px;"><li><a href="#allrecordslist">All Records (_totalrecords)</a></li></div>';
    var _rootcount = new Array();
    if (http1) {
        if (document.getElementById("messagediv").innerHTML != searchinghtml) {
            document.getElementById("messagediv").innerHTML = searchinghtml;
        }
        if (http1.readyState == 4 && http1.status == 200) {
            response = http1.responseXML;
            var _rootstring = response.getElementsByTagName("string")[0].firstChild.nodeValue;
            if (_rootstring != null) {
                //if (_pagerender == _GLOBALSEARCHPAGE || _pagerender ==_PAGESEARCH ) {
                var _searchterms = keyvalue;
                _searchterms = _searchterms.replace('%20', ' ');
                root = response.getElementsByTagName('string').item(0).firstChild.data;
                records = new Array();
                records = root.split('#');
                if (parseInt(records[0]) > 0 && parseInt(records[0]) < _recorddisplaylimit) {

                    document.getElementById("messagediv").innerHTML = " Your search for <b>" + _searchterms + "</b> found " + (records.length - 1) + " records.<br/>";

                    if (http1) { http1.abort(); }

                    _displayFullList = _displayFullList.replace("_totalrecords", parseInt(records[0])) + _headerbar;
                    _displaysummarylinks = _displaysummarylinks.replace("_totalrecords", parseInt(records[0]));
                    var displayHTML = '';
                    var _displayrecord = '';
                    for (n = 1; n < (records.length); n++) {
                        fields = records[n].split('|');
                        if (_altrow == 0) {
                            _divstyle = "<div style='text-decoration:normal;overflow:hidden;width:608px;height:auto;background-color:#FFFFFF;color: #333333;font-size:8pt;font-weight:normal;'>";
                            _altrow = 1;
                        }
                        else {
                            _divstyle = "<div style='text-decoration:normal;overflow:hidden;width:608px;height:auto;background-color:#DAE9FA;color: #333333;font-size:8pt;font-weight:normal;'>";
                            _altrow = 0;
                        } //  if (_altrow == 0)
                        // vsFlag, vsCode, vsQty, vsName,vsSpeciesReactivity,vsApplications,vllevel1,vscloneno
                        if (fields[1] != null) {
                            _displayrecord = _divstyle + _ReturnProductLink(fields[4], fields[1], fields[3], fields[2], fields[6], fields[7], fields[8], fields[9]);
                            if (fields[1] != null && fields[1] != null && fields[2] != null) {
                                _displayFullList = _displayFullList + _displayrecord;
                            }

                            if (_lastone != fields[0] && fields[1] != null) {
                                // if (n > 1) { _displaySubDivide = _displaySubDivide + "</div>"; }
                                if (n > 1) { _displaySubDivide = _displaySubDivide + "</tr>"; }
                                if (fields[0] != null) {
                                    if (_subgrpid > 0) {
                                        _displaySubDivide = _displaySubDivide.replace("_totalrecords", _totalrecords);
                                        _displaysummarylinks = _displaysummarylinks.replace("_totalrecords", _totalrecords);
                                        _displaySubDivide = _displaySubDivide + _topofpagelink
                                    }

                                    _displaySubDivide = _displaySubDivide + "<a name='#" + n + "' id='#" + n + "'/>"
                                                                      + "<div style='width:608px;height:24px;cursor:none;float:left;display:block;'>"
                                                                      + "<span style='font-weight:bold;text-decoration:none;'>"
                                                                      + fields[0] + " (_totalrecords)</span></div>"
                                                                      + _headerbar;


                                    _displaysummarylinks = _displaysummarylinks + '<div style="width:90%;text-decoration:none;"><li><a href="#' +
                                    n + '">' + fields[0] + ' (_totalrecords)</a></li></div>';
                                    _displaySubDivide = _displaySubDivide + "<div id='subgrpcontent" + _subgrpid + "' style='width:608px;float:left;height:auto;'>";
                                    _subgrpid++;
                                    _totalrecords = 0;
                                }

                            } // if (_lastone !=_level_2_ids_name[n] )

                            if (fields[0] != null) {
                                _displaySubDivide = _displaySubDivide + _displayrecord;
                                _totalrecords++;
                            }
                            _lastone = fields[0];
                        }
                    } // for (n = 0; n < (records.length - 1); n++)

                    _displaysummarylinks = "<div style='width:100%;text-align:justify;'>"
                        + _displaysummarylinks.replace("_totalrecords", _totalrecords) + "</div>";

                    _displaySubDivide = _displaySubDivide.replace("_totalrecords", _totalrecords);
                    _displaySubDivide = _displaySubDivide + _topofpagelink;

                    document.getElementById("messagediv").innerHTML =
                        "Found " + (records.length) + " records. Please wait... Thank you.";

                    var resultstext = " Your search for <b>" + _searchterms + "</b> found " + parseInt(records[0]) + " records.<br/>";

                    if (_totalrecords <= _recorddisplaylimit) {

                        if (_subgrpid > 1) {
                            document.getElementById("messagediv").innerHTML =
                            resultstext + _displaysummarylinks + "<br/>" + _displaySubDivide + _displayFullList + _topofpagelink;
                        } else {
                            document.getElementById("messagediv").innerHTML =
                            resultstext + _displayFullList + _topofpagelink;
                        }
                    }
                }
            }

            //  } // if (_id == _GLOBALSEARCHPAGE)
        }

        if (_rootstring) {
            if (parseInt(_rootstring) == 0) {
                document.getElementById("messagediv").innerHTML = " Your search found 0 records. Please adjust your search terms."
                  + " If you would like further assistance please contact our Customer Service Team. Thank you.";
            }

            if (parseInt(_rootstring) >= _recorddisplaylimit) {
                document.getElementById("messagediv").innerHTML = "Your Search found " + parseInt(_rootstring) + " records. Please refine your search terms further as Thank you.";
            }


            if (_rootstring == searcherrorhtml) {
                document.getElementById("messagediv").innerHTML = searcherrorhtml;
            }
        }

    }

}
