﻿/////// Code for the browser detection ///////////////////
var BrowserDetect = {
    init: function() {
        this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
        this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
        this.OS = this.searchString(this.dataOS) || "an unknown OS";
    },
    searchString: function(data) {
        for (var i = 0; i < data.length; i++) {
            var dataString = data[i].string;
            var dataProp = data[i].prop;
            this.versionSearchString = data[i].versionSearch || data[i].identity;
            if (dataString) {
                if (dataString.indexOf(data[i].subString) != -1)
                    return data[i].identity;
            }
            else if (dataProp)
                return data[i].identity;
        }
    },
    searchVersion: function(dataString) {
        var index = dataString.indexOf(this.versionSearchString);
        if (index == -1) return;
        return parseFloat(dataString.substring(index + this.versionSearchString.length + 1));
    },
    dataBrowser: [
		{
		    string: navigator.userAgent,
		    subString: "Chrome",
		    identity: "Chrome"
		},
		{ string: navigator.userAgent,
		    subString: "OmniWeb",
		    versionSearch: "OmniWeb/",
		    identity: "OmniWeb"
		},
		{
		    string: navigator.vendor,
		    subString: "Apple",
		    identity: "Safari",
		    versionSearch: "Version"
		},
		{
		    prop: window.opera,
		    identity: "Opera"
		},
		{
		    string: navigator.vendor,
		    subString: "iCab",
		    identity: "iCab"
		},
		{
		    string: navigator.vendor,
		    subString: "KDE",
		    identity: "Konqueror"
		},
		{
		    string: navigator.userAgent,
		    subString: "Firefox",
		    identity: "Firefox"
		},
		{
		    string: navigator.vendor,
		    subString: "Camino",
		    identity: "Camino"
		},
		{		// for newer Netscapes (6+)
		    string: navigator.userAgent,
		    subString: "Netscape",
		    identity: "Netscape"
		},
		{
		    string: navigator.userAgent,
		    subString: "MSIE",
		    identity: "Explorer",
		    versionSearch: "MSIE"
		},
		{
		    string: navigator.userAgent,
		    subString: "Gecko",
		    identity: "Mozilla",
		    versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
		    string: navigator.userAgent,
		    subString: "Mozilla",
		    identity: "Netscape",
		    versionSearch: "Mozilla"
		}
	],
    dataOS: [
		{
		    string: navigator.platform,
		    subString: "Win",
		    identity: "Windows"
		},
		{
		    string: navigator.platform,
		    subString: "Mac",
		    identity: "Mac"
		},
		{
		    string: navigator.userAgent,
		    subString: "iPhone",
		    identity: "iPhone/iPod"
		},
		{
		    string: navigator.userAgent,
		    subString: "iPad",
		    identity: "iPad"
		},
		{
		    string: navigator.platform,
		    subString: "BlackBerry",
		    identity: "BlackBerry"
		}
		,
		{
		    string: navigator.platform,
		    subString: "Android",
		    identity: "Android"
		}
		,
		{
		    string: navigator.platform,
		    subString: "PalmOS",
		    identity: "PalmOS"
		}
		,
		{
		    string: navigator.platform,
		    subString: "LG",
		    identity: "LG"
		}
		,
		{
		    string: navigator.platform,
		    subString: "Samsung",
		    identity: "Samsung"
		}
		
	]

};
BrowserDetect.init();

function isMobileBrowser() {
var MobOperatingSystems = "iPad	BlackBerry	Android	iPhone/iPod	PalmOS	SymbianOS	LG	Samsung";
        if (MobOperatingSystems.indexOf(BrowserDetect.OS, 0) >= 0) {
            return true;
        }
        else
        {
        return false;
        }
}

////// Ends code for the browser detection. /////////////////////



function pausecomp(millis) {
    var date = new Date();
    var curDate = null;

    do { curDate = new Date(); }
    while (curDate - date < millis);
}
function ShowCatalog(CatalogOID, SupplierID, openAMCatalog, strSitURL) {
    if (openAMCatalog == 'True') {
        var width = 970;
        var height = 656;
        var property = "top=0, left=0, width=" + width + ", height=" + height;
        //alert(strSitURL + "CatalogView.aspx?CatalogOID=" + CatalogOID + "&SupplierID=" + SupplierID);
        var wincatalog = window.open(strSitURL + "CatalogView.aspx?CatalogOID=" + CatalogOID + "&SupplierID=" + SupplierID , 'CatalogViews', property);
        wincatalog.focus();
    }
}
function ShowSearchResult(CatalogOID, SupplierID, SearchCriteria,strSitURL) {
    var width = $(window).width();
    var height = $(window).height();

    var property = "top=0, left=0, resizable=1, width=" + width + ", height=" + height;
    var wincatalog = window.open(strSitURL + "JQCatalogView.aspx?CatalogOID=" + CatalogOID + "&SupplierID=" + SupplierID + "&Password=" + "&SearchCriteria=" + SearchCriteria + "&Rand=" + Math.random(), 'CatalogViewsSearch', property);
    wincatalog.focus();

}
function ShowProductCategories() {
        var width = 970;
        var height = 656;
        var property = "top=0,scrollbars=1, left=0, width=" + width + ", height=" + height;
        //alert(strSitURL + "CatalogView.aspx?CatalogOID=" + CatalogOID + "&SupplierID=" + SupplierID);
        var wincatalog = window.open("ProductCategorylist.aspx", 'ProductCategories', property);
        wincatalog.focus();
    
}


/////////// AM Catalog roll over functionaliy ////////////////////////////////////////
var CurrentMouseOverDivIDs = ""; 
var LoadedDivIDs = "";
var MousePositionX = 0;
var MousePositionY = 0;

function CloseCurrentMouseOverDivs() {

    while (CurrentMouseOverDivIDs.indexOf('|') != -1 && CurrentMouseOverDivIDs != "|") {
        var DivIDtoClose = CurrentMouseOverDivIDs.substring(0, CurrentMouseOverDivIDs.indexOf('|')).replace('|').replace('|');
        CurrentMouseOverDivIDs = CurrentMouseOverDivIDs.substring(CurrentMouseOverDivIDs.indexOf('|') + 1);
        try {
            if (document.getElementById(DivIDtoClose) != null) {
                document.getElementById(DivIDtoClose).style.visibility = "hidden";
                document.getElementById(DivIDtoClose).style.display = "none";
             }
        }
        catch (e) { }
    }
}

function showcatalogfirstpages(Catalog_OID) {
    
    CloseCurrentMouseOverDivs();
    if (LoadedDivIDs.indexOf('|' + Catalog_OID + '|') != -1) {
        CurrentMouseOverDivIDs += "div" + Catalog_OID + "|";
        document.getElementById("div" + Catalog_OID).style.visibility = "visible";
        document.getElementById("div" + Catalog_OID).style.display = "block";
        return 1;
    }
    else {
        return 0;
    }

}

function showfirstpages(Catalog_OID, strSitURL) {
    if (!isMobileBrowser()) {
        try {
            var searchcriteria = "";
            if (document.getElementById("txtSearch") != null) {
                searchcriteria = document.getElementById("txtSearch").value;
            }

            var strURL = strSitURL + "FirstPagesForCatalog2.aspx?CatalogOID=" + Catalog_OID;
            if (searchcriteria != "") { strURL += "&SearchCriteria=" + searchcriteria; }

            var strIFrame = "<iframe id='IframeRollover' name='IframeRollover' src='" + strURL + "' frameborder='no'";
            strIFrame += " style='background-color:transparent; padding:0px; position:absolute;left:0px;top:0px; width:100%;height:100%; overflow:hidden'></iframe>";
            $("#div" + Catalog_OID).html(strIFrame);
            LoadedDivIDs += '|' + Catalog_OID + '|';
            var parentleft = $('#divCover' + Catalog_OID).offset().left;
            var parenttop = $('#divCover' + Catalog_OID).offset().top;
            var parentWidth = $('#divCover' + Catalog_OID).width();
            var myleft = parentleft + 70;
            var mytop = parenttop - 120;
            if (mytop < 0) {
                mytop = 0;
            }

            if (myleft > 500) {

                var windowwidth = 800;
                if (typeof (window.innerWidth) == 'number') { //Non-IE
                    windowwidth = window.innerWidth;
                } else if (document.documentElement && document.documentElement.clientWidth) {
                    //IE 6+ in 'standards compliant mode'
                    windowwidth = document.documentElement.clientWidth;
                } else if (document.body && document.body.clientWidth) {     //IE 4 compatible
                    windowwidth = document.body.clientWidth;
                }
                if (windowwidth - myleft < 360) { myleft = myleft - 452; }
            }

            $("#div" + Catalog_OID).css("padding", "0px").css("left", myleft + "px").css("width", "342px").css("height", "326px").css("top", mytop + "px").css("overflow", "hidden");
            CurrentMouseOverDivIDs += "div" + Catalog_OID + "|";
            document.getElementById("div" + Catalog_OID).style.visibility = "visible";
            document.getElementById("div" + Catalog_OID).style.display = "block";
        }
        catch (e) { }
    }
}


function hidefirstpages() {
    CloseCurrentMouseOverDivs();
}


/////////// Ends AM Catalog roll over functionaliy ////////////////////////////////////////

function ShowWalkingMap() {
    var width = 1275;
    var height = 656;
    var windowwidth = 800;
    var windowheight = 600;
    if (typeof (window.innerWidth) == 'number') { //Non-IE
        windowwidth = window.innerWidth;
        
    } else if (document.documentElement && document.documentElement.clientWidth) {
        //IE 6+ in 'standards compliant mode'
    windowwidth = document.documentElement.clientWidth;
    
    } else if (document.body && document.body.clientWidth) {     //IE 4 compatible
    windowwidth = document.body.clientWidth;


}
windowheight = screen.height;
    if (windowwidth < width) {
        width = windowwidth * .95;
    }
    height = windowheight * .75;
    var left = (windowwidth - width) / 2;
    var top = (windowheight - height) / 2 -10;
    var property = "top=" + top + ",scrollbars=1, left=" + left + ",resizable =yes, width=" + width + ", height=" + height;
    //alert(strSitURL + "CatalogView.aspx?CatalogOID=" + CatalogOID + "&SupplierID=" + SupplierID);
    var wincatalog = window.open("walkingmappdf.aspx", 'NYIGFWalkingMap', property);
    wincatalog.focus();

}

//// Auto complete JS ///////

function showhtml(source, eventArgs) {
    //alert('hi');
//    if ($.browser.msie) {
//        if ($.browser.version == "8.0") {
//            $(".autocomplete_completionListElement").removeClass().addClass('autocomplete_completionListElementIE8');
//        }
//    }
    $(".autocomplete_listItem:even").addClass('autocomplete_listItemEven').mouseover(function() {
        $(this).removeClass().addClass('autocomplete_highlighted_listitem');
        $(source).data("title", "mouse");

    })
    $(".autocomplete_listItem").addClass('autocomplete_listItemOdd').mouseover(function() {
        $(this).removeClass().addClass('autocomplete_highlighted_listitem');
        $(source).data("title", "mouse");

    });
    $('li').filter(':contains("Exhibitors")').filter(":eq(0)").removeClass().addClass('autocomplete_headerlistitem');
    $('li').filter(':contains("Product Categories")').filter(":eq(0)").removeClass().addClass('autocomplete_headerlistitem');
    $('li').filter(':contains("Divisions")').filter(":eq(0)").removeClass().addClass('autocomplete_headerlistitem');
    $('li').filter(':contains("Suggestions")').filter(":eq(0)").removeClass().addClass('autocomplete_headerlistitem');

}
function itemout(source, eventArgs) {
    $('li:even').filter(':contains(' + eventArgs.get_value() + ')').addClass('autocomplete_listItemEven');
    $('li:odd').filter(':contains(' + eventArgs.get_value() + ')').addClass('autocomplete_listItemOdd');
    $('li').filter(':contains("Exhibitors")').filter(":eq(0)").removeClass().addClass('autocomplete_headerlistitem');
    $('li').filter(':contains("Product Categories")').filter(":eq(0)").removeClass().addClass('autocomplete_headerlistitem');
    $('li').filter(':contains("Divisions")').filter(":eq(0)").removeClass().addClass('autocomplete_headerlistitem');
    $('li').filter(':contains("Suggestions")').filter(":eq(0)").removeClass().addClass('autocomplete_headerlistitem');
}

//// Auto complete JS ///////



/// Jquery UI Blocker////

function onUpdating() {
    $.blockUI(
    {
        message: '<div align="center"><table border="0"><tr><td><img src="skin/images/Ajax-loader.gif" /></td><td>&nbsp;&nbsp;&nbsp;<b>Processing...</b></td></tr></table></div>'
     , overlayCSS: { backgroundColor: '#dcdcdc' }
     , css: {
         border: 'none',
         padding: '15px',
         backgroundColor: 'white',
         '-webkit-border-radius': '10px',
         '-moz-border-radius': '10px',
         opacity: 1,
         color: 'red'
     }
    });    
}
function onUpdatingMAP() {
    $.blockUI(
    {
        message: '<div align="center"><table border="0"><tr><td><img src="skin/images/Ajax-loader.gif" /></td><td>&nbsp;&nbsp;&nbsp;<b>Processing...</b></td></tr></table></div>'
     , overlayCSS: { backgroundColor: '#dcdcdc' }
     ,centerY: 0 
     , css: {
         top: '10px', left: '', right: '200px'
         ,border: 'none',
         padding: '15px',
         backgroundColor: 'white',
         '-webkit-border-radius': '10px',
         '-moz-border-radius': '10px',
         opacity: 1,
         color: 'red'
     }
    });
}
function onUpdated() {
    $.unblockUI();
}
