﻿
function cC(obj)
{
    obj.style.backgroundColor = '#3a3a3a';
    obj.style.border = 'dashed 1px #ff7f00';
    obj.style.textDecoration = 'underline';
    obj.style.cursor = 'pointer';
}
function rC(obj)
{
    obj.style.backgroundColor = '#313131';
    obj.style.border = 'solid 1px #313131';
    obj.style.textDecoration = 'none';
    obj.style.cursor = 'normal';
}

if (document.getElementById('divContent') != null)
{
    document.getElementById('divContent').style.overflow = 'auto';
    document.getElementById('divContent').style.height = '120px';
    document.getElementById('divContent').style.scrollbarBaseColor = '#313131';   
}
function cc(obj)
{
    window.location.href = obj.innerHTML.substring(obj.innerHTML.indexOf('href=')+6, obj.innerHTML.indexOf('.html')+5);
}

function viewAll()
{
    PopProcessing();
    AjaxCallType = 'viewallitemspermenu_server';
	var queryString = '';
	queryString += '?func=viewallitemspermenu_server';
	queryString += '&id=' + document.getElementById('ctl00_ContentPlaceHolder1_hdnMenuID').value;
    GetSearchResults('misc/Recieve.aspx', queryString);
    try
    {
        pageTracker._trackEvent("Category", "ShowAllItems", document.getElementById('ctl00_ContentPlaceHolder1_hdnMenuName').value);
    }
    catch(err){}    
}
function LoadLastSearch()
{
    if (readCookie("LastSearch") == null) return;
    cookieValue = readCookie("LastSearch").split('*');
    FillCbl('ctl00_ContentPlaceHolder1', cookieValue[0], cookieValue[1], cookieValue[2], cookieValue[3], cookieValue[4]);
    AdvancedSearch(cookieValue[0], cookieValue[1], cookieValue[2], cookieValue[3], cookieValue[4]);
}
function AdvancedSearch(occasion, color, manf, size, price)
{
    var d2 = new Date();  
    var _idn = ''; 
    if (location.href.match('localhost'))
        _idn = d2.getTime(); 
    PopProcessing();
    AjaxCallType = 'advancedsearch_server';
	var queryString = '';
	queryString += '?func=advancedsearch_server';
	queryString += '&occasion=' + occasion;
	queryString += '&color=' + color;
	queryString += '&manf=' + manf;
	queryString += '&size=' + size;
	queryString += '&price=' + price;
	queryString += '&' + _idn;
    GetSearchResults('misc/Recieve.aspx', queryString);
    createCookie("LastSearch", occasion+'*'+color+'*'+manf+'*'+size+'*'+price, 259200);
    try
    {
        pageTracker._trackEvent("Search", "Advanced Search", occasion+'*'+color+'*'+manf+'*'+size+'*'+price);
        
    }
    catch(err){} 
}
function HideDhtmlAltDescription()
{
	document.getElementById('DhtmlAltDescription').style.visibility = 'hidden';
	document.getElementById('fontInDivAltDescription').innerHTML = '';
	document.body.style.filter = 'alpha(opacity=100)';
    //document.getElementById('DhtmlAltDescription').style.filter = 'alpha(opacity=100)';
}

function PopProcessing()
{
    document.getElementById('DhtmlAltDescription').style.visibility = 'visible';
    document.getElementById('fontInDivAltDescription').innerHTML = "<div style='background-color:#ffffff'><img src='Images/polling2.gif' border='0' /></div>";
	document.getElementById('DhtmlAltDescription').style.top = document.body.scrollTop + 340;
    document.getElementById('DhtmlAltDescription').style.left = document.body.scrollLeft + 380;
    document.body.style.filter = 'alpha(opacity=80)';
    document.getElementById('DhtmlAltDescription').style.filter = 'alpha(opacity=100)'; 
}
(new Image).src='images/PleaseWait.gif';

function GetSearchResults(url, parameters) 
{
  http_request = false;
  if (window.XMLHttpRequest) { // Mozilla, Safari,...
     http_request = new XMLHttpRequest();
     if (http_request.overrideMimeType) {
        http_request.overrideMimeType('text/xml');
     }
  } else if (window.ActiveXObject) { // IE
     try {
        http_request = new ActiveXObject("Msxml2.XMLHTTP");
     } catch (e) {
        try {
           http_request = new ActiveXObject("Microsoft.XMLHTTP");
        } catch (e) {}
     }
  }
  //alert(http_request);
  if (!http_request) {
     alert('Cannot create XMLHTTP instance');
     return false;
  }
  http_request.onreadystatechange = onreturnFromGetSearchResults;
  http_request.open('GET', url + parameters, true);
  http_request.send(null);
}

function onreturnFromGetSearchResults() 
{
    if (http_request.readyState == 4) 
    {
        if (http_request.status == 200) 
        {
            switch(AjaxCallType)
			{
				case('viewallitemspermenu'):
				    BinddlItemsFromJSON(http_request.responseText, 'ctl00_ContentPlaceHolder1_dlItems');
                    break; 
                case('viewallitemspermenu_server'):
                    BindItemsFromServer(http_request.responseText, 'ctl00_ContentPlaceHolder1_dlItems');
                    break;
				case('advancedsearch_server'):
				    //alert(http_request.responseText);
				    BindItemsFromServer(http_request.responseText, 'ctl00_ContentPlaceHolder1_dlItems');
                    break;                                        
            }
        }
    }
}     
function BinddlItemsFromJSON(JSONstring, dlItemsID)
{
	var html = '';
    var tblJSON = eval("("+JSONstring+")");
    
    for (var i = 0; i < tblJSON.ROW.length; i++)
    {
        html += '<span valign="top">';
        html += '<div style="float:left;">';
        html += '<table style="width:100px; padding-right:3px; padding-left:3px; border:solid 1px #313131; " onmouseover="cC(this)" onmouseout="rC(this)" onclick="cc(this)">';
        html += '<tr><td valign="top"><div class="preview" style="width:155px;height:250px;float:left"><a href="'+tblJSON.ROW[i].COL[4].DATA+'/'+tblJSON.ROW[i].COL[3].DATA+'.html"><img class="preview" style="width:155px;height:250px;z-index:0; " src="images/Items_mainimage/'+tblJSON.ROW[i].COL[9].DATA+'" alt="'+tblJSON.ROW[i].COL[8].DATA+'" onmouseover="larger(this,249,400)" onmouseout="smaller(this,300,503)" onclick="SaveScrollPos()" /></a></div></td></tr>';
        html += '<tr><td align="center"><span><span class="productSpecialPrice">'+((tblJSON.ROW[i].COL[16].DATA == '$0.00')? '' : '<span style="color:red; text-decoration: line-through;"><span style="FONT-SIZE: 15px; COLOR: #919191; LINE-HEIGHT: 24px; padding:0 10 0 0;">' + tblJSON.ROW[i].COL[16].DATA +"</span></span>") + '</span><span class="productSpecialPrice">'+tblJSON.ROW[i].COL[15].DATA+'</span></td></tr>';
        html += '<tr><td align="center" class="prod_info1" style="padding-bottom:10px; height:95px; ">'+tblJSON.ROW[i].COL[5].DATA+' '+tblJSON.ROW[i].COL[8].DATA+'<br />'+tblJSON.ROW[i].COL[11].DATA+'</td></tr>';
        html += '</table>';
        html += '</div>';
        html += '</span>';
        //html += '<span valign="top"><div style="float:left;"><table style="width:100px; padding-right:3px; padding-left:3px; border:solid 1px #313131; " onmouseover="cC(this)" onmouseout="rC(this)" onclick="cc(this)"><tr><td valign="top"><div class="preview" style="width:155px;height:250px;float:left"><a href="'+tblJSON.ROW[i].COL[4].DATA+'/'+tblJSON.ROW[i].COL[3].DATA+'.html"><img class="preview" style="width:155px;height:250px;z-index:0; " src="images/Items_mainimage/'+tblJSON.ROW[i].COL[9].DATA+'" alt="'+tblJSON.ROW[i].COL[8].DATA+'" onmouseover="larger(this,249,400)" onmouseout="smaller(this,300,503)" onclick="SaveScrollPos()" /></a></div></td></tr><tr><td align="center"><span><span class="productSpecialPrice">'+((tblJSON.ROW[i].COL[16].DATA == '$0.00')? '' : '<span style="color:red; text-decoration: line-through;"><span style="FONT-SIZE: 15px; COLOR: #919191; LINE-HEIGHT: 24px; padding:0 10 0 0;">' + tblJSON.ROW[i].COL[16].DATA +"</span></span>") + '</span><span class="productSpecialPrice">'+tblJSON.ROW[i].COL[15].DATA+'</span></td></tr><tr><td align="center" class="prod_info1" style="padding-bottom:10px; height:95px; ">'+tblJSON.ROW[i].COL[5].DATA+' '+tblJSON.ROW[i].COL[8].DATA+'<br />'+tblJSON.ROW[i].COL[11].DATA+'</td></tr></table></div></span>';
    }
    document.getElementById(dlItemsID).innerHTML = html;
    HideDhtmlAltDescription();
    document.getElementById('ctl00_ContentPlaceHolder1_PagerNavigation2_lblPager').innerHTML = "<span><div class='sb_pag'><ul><li onmouseover='return' style='cursor:normal'><a style='cursor:normal'>All " + tblJSON.ROW.length + " dresses</a></li></ul></div></span>";
    document.getElementById('ctl00_ContentPlaceHolder1_PagerNavigation1_lblPager').innerHTML = "";
    fdoScroll();
}
function BindItemsFromServer(ResponseString, dlItemsID)
{
    var counter = '';
	var html = ResponseString;
	//if (html == '<!--0-->')
	//    document.getElementById(dlItemsID).innerHTML = '<table><tr><td style="color:#ffffff; padding: 40 0 0 30"><h1><b>No match found !!!</b></h1><br />Please modify your search.</td></tr></table>';
    //else
        document.getElementById(dlItemsID).innerHTML = html;
    counter = html.substring(4,html.indexOf('-->'));
    HideDhtmlAltDescription();
    fdoScroll();
    if (counter == 0)
    {
        document.getElementById(dlItemsID).innerHTML = '<table><tr><td style="color:#ffffff; padding: 40 0 0 30"><h1><b>No match found !!!</b></h1><br />Please modify your search.</td></tr></table>';
        document.getElementById('spnResultsMessage').innerHTML = '';
    }
    else if (counter == 300)
        document.getElementById('spnResultsMessage').innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;More than 300 results found. This search is limited to maximum 300 results, please refine your search.<br />';
    else
        document.getElementById('spnResultsMessage').innerHTML = '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'+counter+' results found.<br />';
}
/***********************************************
* Image w/ description tooltip- By Dynamic Web Coding (www.dyn-web.com)
* Copyright 2002-2007 by Sharon Paine
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

/* IMPORTANT: Put script after tooltip div or 
	 put tooltip div just before </BODY>. */

var dom = (document.getElementById) ? true : false;
var ns5 = (!document.all && dom || window.opera) ? true: false;
var ie5 = ((navigator.userAgent.indexOf("MSIE")>-1) && dom) ? true : false;
var ie4 = (document.all && !dom) ? true : false;
var nodyn = (!ns5 && !ie4 && !ie5 && !dom) ? true : false;

var origWidth, origHeight;

// avoid error of passing event object in older browsers
if (nodyn) { event = "nope" }

///////////////////////  CUSTOMIZE HERE   ////////////////////
// settings for tooltip 
// Do you want tip to move when mouse moves over link?
var tipFollowMouse= true;	
// Be sure to set tipWidth wide enough for widest image
var tipWidth= 350;
var offX= 80;	// how far from mouse to show tip
var offY= 12; 
var tipFontFamily= "Verdana, arial, helvetica, sans-serif";
var tipFontSize= "8pt";
// set default text color and background color for tooltip here
// individual tooltips can have their own (set in messages arrays)
// but don't have to
var tipFontColor= "#000000";
var tipBgColor= "#ffffcc"; 
var tipBorderColor= "#616161";
var tipBorderWidth= 2;
var tipBorderStyle= "ridge";
var tipPadding= 4;

// tooltip content goes here (image, description, optional bgColor, optional textcolor)
//var messages = new Array();
// multi-dimensional arrays containing: 
// image and text for tooltip
// optional: bgColor and color to be sent to tooltip
//messages[0] = new Array('red_balloon.gif','Here is a red balloon on a white background',"#FFFFFF");
//messages[1] = new Array('duck2.gif','Here is a duck on a light blue background.',"#DDECFF");
//messages[2] = new Array('test.gif','Test description','black','white');

////////////////////  END OF CUSTOMIZATION AREA  ///////////////////

// preload images that are to appear in tooltip
// from arrays above
//if (document.images) {
//	var theImgs = new Array();
//	for (var i=0; i<messages.length; i++) {
//  	theImgs[i] = new Image();
//		theImgs[i].src = messages[i][0];
//  }
//}

// to layout image and text, 2-row table, image centered in top cell
// these go in var tip in doTooltip function
// startStr goes before image, midStr goes between image and text
var startStr = '<table width="' + tipWidth + '"><tr><td align="center" width="100%"><img src="';
var midStr = '" border="0"></td></tr><tr><td valign="top">';
var endStr = '</td></tr></table>';

////////////////////////////////////////////////////////////
//  initTip	- initialization for tooltip.
//		Global variables for tooltip. 
//		Set styles
//		Set up mousemove capture if tipFollowMouse set true.
////////////////////////////////////////////////////////////
var tooltip, tipcss;
function initTip() {
	if (nodyn) return;
	tooltip = (ie4)? document.all['tipDiv']: (ie5||ns5)? document.getElementById('tipDiv'): null;
	tipcss = tooltip.style;
	if (ie4||ie5||ns5) {	// ns4 would lose all this on rewrites
		tipcss.width = tipWidth+"px";
		tipcss.fontFamily = tipFontFamily;
		tipcss.fontSize = tipFontSize;
		tipcss.color = tipFontColor;
		tipcss.backgroundColor = tipBgColor;
		tipcss.borderColor = tipBorderColor;
		tipcss.borderWidth = tipBorderWidth+"px";
		tipcss.padding = tipPadding+"px";
		tipcss.borderStyle = tipBorderStyle;
	}
	if (tooltip&&tipFollowMouse) {
		document.onmousemove = trackMouse;
	}
}

window.onload = initTip;

/////////////////////////////////////////////////
//  doTooltip function
//			Assembles content for tooltip and writes 
//			it to tipDiv
/////////////////////////////////////////////////
var t1,t2;	// for setTimeouts
var tipOn = false;	// check if over tooltip link
function doTooltip(evt,num, imgsrc) {
	if (!tooltip) return;
	if (t1) clearTimeout(t1);	if (t2) clearTimeout(t2);
	tipOn = true;
	// set colors if included in messages array
	//if (messages[num][2])	var curBgColor = messages[num][2];
	curBgColor = tipBgColor;
	//if (messages[num][3])	var curFontColor = messages[num][3];
	curFontColor = tipFontColor;
	if (ie4||ie5||ns5) {
		var tip = '<img src="images/Items/'+imgsrc+'" />';// startStr + messages[num][0] + midStr + '<span style="font-family:' + tipFontFamily + '; font-size:' + tipFontSize + '; color:' + curFontColor + ';">' + messages[num][1] + '</span>' + endStr;
		tipcss.backgroundColor = curBgColor;
	 	tooltip.innerHTML = tip;
	}
	if (!tipFollowMouse) positionTip(evt);
	else t1=setTimeout("tipcss.visibility='visible'",100);
}

var mouseX, mouseY;
function trackMouse(evt) {
	standardbody=(document.compatMode=="CSS1Compat")? document.documentElement : document.body //create reference to common "body" across doctypes
	mouseX = (ns5)? evt.pageX: window.event.clientX + standardbody.scrollLeft;
	mouseY = (ns5)? evt.pageY: window.event.clientY + standardbody.scrollTop;
	if (tipOn) positionTip(evt);
}

/////////////////////////////////////////////////////////////
//  positionTip function
//		If tipFollowMouse set false, so trackMouse function
//		not being used, get position of mouseover event.
//		Calculations use mouseover event position, 
//		offset amounts and tooltip width to position
//		tooltip within window.
/////////////////////////////////////////////////////////////
function positionTip(evt) {
	if (!tipFollowMouse) {
		standardbody=(document.compatMode=="CSS1Compat")? document.documentElement : document.body
		mouseX = (ns5)? evt.pageX: window.event.clientX + standardbody.scrollLeft;
		mouseY = (ns5)? evt.pageY: window.event.clientY + standardbody.scrollTop;
	}
	// tooltip width and height
	var tpWd = (ie4||ie5)? tooltip.clientWidth: tooltip.offsetWidth;
	var tpHt = (ie4||ie5)? tooltip.clientHeight: tooltip.offsetHeight;
	// document area in view (subtract scrollbar width for ns)
	var winWd = (ns5)? window.innerWidth-20+window.pageXOffset: standardbody.clientWidth+standardbody.scrollLeft;
	var winHt = (ns5)? window.innerHeight-20+window.pageYOffset: standardbody.clientHeight+standardbody.scrollTop;
	// check mouse position against tip and window dimensions
	// and position the tooltip 
	if ((mouseX+offX+tpWd)>winWd) 
		tipcss.left = mouseX-(tpWd+offX)+"px";
	else tipcss.left = mouseX+offX+"px";
	if ((mouseY+offY+tpHt)>winHt) 
		tipcss.top = winHt-(tpHt+offY)+"px";
	else tipcss.top = mouseY+offY+"px";
	if (!tipFollowMouse) t1=setTimeout("tipcss.visibility='visible'",100);
}

function hideTip() {
	if (!tooltip) return;
	t2=setTimeout("tipcss.visibility='hidden'",100);
	tipOn = false;
}

document.write('<div id="tipDiv" style="position:absolute; visibility:hidden; z-index:100; width:350px"></div>');
document.write('<div id="DhtmlAltDescription" style="z-index:1000;position:absolute;visibility:hidden;border: 1px solid #FF7F00"><font id="fontInDivAltDescription">AltDescription</font></div>');


function SaveScrollPos()
{
    var lastSearch = readCookie("LastSearch");//document.getElementById('ctl00_ContentPlaceHolder1_hdnMenuID').value;
    var scrollPos = 0;
    if (navigator.appName == "Microsoft Internet Explorer")
        scrollPos = document.body.scrollTop;
    else
        scrollPos = window.pageYOffset;
    createCookie("menuScrollPos", lastSearch + '#' + scrollPos.toString(), 1);
}

function fdoScroll()
{
    var lastSearch = readCookie("LastSearch");
    if (readCookie("menuScrollPos") == null) return;
    cookieValue = readCookie("menuScrollPos").split('#');
    if (cookieValue[0] != lastSearch) return;
    scrollPos = readCookie("menuScrollPos");
    if (navigator.appName == "Microsoft Internet Explorer")
        window.scrollTo(0, cookieValue[1]);
    else
        window.scroll(0, cookieValue[1]);
}

function createCookie(name,value,min)  
{ 
    if (min)  
    { 
        var date = new Date();  
        date.setTime(date.getTime()+(min*60*1000)); 
        var expires = "; expires="+date.toGMTString();  
    } 
        else var expires = "";  
    document.cookie = name+"="+value+expires+"; path=/";  
} 
function readCookie(name)  
{ 
    var nameEQ = name + "=";  
    var ca = document.cookie.split(';');  
    for(var i=0;i < ca.length;i++)  
    { 
        var c = ca[i];  
        while (c.charAt(0)==' ')  
            c = c.substring(1,c.length); 
        if (c.indexOf(nameEQ) == 0)  
        return c.substring(nameEQ.length,c.length);  
    } 
    return null;  
} 
function eraseCookie(name)  
{ 
    createCookie(name,"",-1);  
} 

