
var cPage = 1;
var nTotalPages;
var cSorting = '';

var activeDealsFilters = new Array();
var inactiveDealsFilters = new Array();
var activeDealsGroup = new Array();


function waitToLoad()
{
	//scrollTo(0,0);
	//document.getElementById("listingLoadBox").style.backgroundColor = "#c1d6f6";
	document.getElementById("preloadingGraphic").style.display = "inline";
	document.getElementById("dealsResults").style.display = "none";
	loadedStatus = 1;
}

function isLoaded()
{
	document.getElementById("preloadingGraphic").style.display = "none";
	//document.getElementById("listingResults").style.overflowY = "scroll";
	document.getElementById("dealsResults").style.display = "block";
	document.getElementById("dealsLoadBox").style.backgroundColor = "";
	loadedStatus = 0;
  try
  {
    $('#innerContent').css('min-height',0);
  }
  catch(e) {
    return false;
  }
}


function showFullSubFilters(filterName)
{
	if(document.getElementById(filterName+"_shown").style.display == "")
	{
		document.getElementById(filterName+"_shown").style.display = "none";
		document.getElementById(filterName+"_hidden").style.display = "";
	}
	else
	{
		document.getElementById(filterName+"_hidden").style.display = "none";
		document.getElementById(filterName+"_shown").style.display = "";
	}
}

function addToActiveDealsFilters(filterID,groupName,filterName)
{
	var activeDealsFiltersHTML = '';
	var inactiveDealsFiltersHTML = '';
	var inactiveDealsFiltersHiddenHTML = '';
	var inactiveDealsFilters = new Array();
	var activeDealsFilterName = new Array();
	
	if(in_array(activeDealsFilters,filterID) == 0)
	{
		activeDealsFilters.push(filterID);
		//activeEventFilters[filterID][groupName] = filterName;
	}
	
	for(i in dealsStatus)
	{
		if(i == filterID)
		{
			dealsStatus[i] = 1;
		}
	}

	if(in_array(activeDealsGroup,groupName) == 0)
	{
		activeDealsGroup.push(groupName);
	}

	if(in_array(activeDealsFilterName,filterName) == 0)
	{
		activeDealsFilterName.push(filterName);
	}


	for(i=0;i<activeDealsFilters.length;i++)
	{
		for(z in dealsID)
		{
			if(z == activeDealsFilters[i])
			{
				activeDealsFiltersHTML += "<div style=\"cursor: pointer;padding-bottom: 7px;\"><a href='javascript:void(0)' class='listingsFilters' style='padding-right: 4px;' onclick=\"removeFromActiveDealsFilters('"+activeDealsFilters[i]+"','"+dealsIDGroup[activeDealsFilters[i]]+"');\"><img src='/images/shell/listing_closebtn.gif' border='0' valign='absmiddle'></a><a href='javascript:void(0)' class='listingsFilters'  onclick=\"removeFromActiveDealsFilters('"+activeDealsFilters[i]+"','"+dealsIDGroup[activeDealsFilters[i]]+"');\">"+dealsID[z]+"</a></div>";
			}
		}
	}
	
	for(z in aSubFilterID)
	{

    var el = document.getElementById(z+"_shown");
		if(el && el.style.display == "")
		{
			inactiveDealsFiltersHTML += "<div id='"+z+"_shown'><span class=\"listTypeHeading\">"+z+"</span>";
		}
		else
		{
			inactiveDealsFiltersHTML += "<div id='"+z+"_shown' style='display: none;'><span class=\"listTypeHeading\">"+z+"</span>";
		}


		//inactiveEventFiltersHTML += "<div id='"+z+"_shown'>";
		//inactiveEventFiltersHiddenHTML += "<div id='"+z+"_hidden' style='display: none;'>";
		
		var cnt = 1;
		for(y in aSubFilterID[z])
		{
			if(cnt < 7)
			{
				if(dealsStatus[aSubFilterID[z][y]] != 1)
				{
					if(in_array(activeDealsGroup,z) == 1 && z == "City")
					{
						//modified: 
						inactiveDealsFiltersHTML += "<input type='checkbox' disabled><span class='listingsFilters'><i>"+y+"</i></span><br>";
					}
					else
					{
						//modified: 
						inactiveDealsFiltersHTML += "<input type='checkbox' onclick=\"addToActiveDealsFilters('"+aSubFilterID[z][y]+"','"+z+"','"+y+"');\"><span class=\"listingsFilters\">"+y+"</span><br>";
					}
				}else{//modified:
						inactiveDealsFiltersHTML +="<input type='checkbox' onclick=\"removeFromActiveDealsFilters('"+aSubFilterID[z][y]+"','"+z+"');\" checked><span class='listingsFilters'>"+y+"</span><br>";
				}

			}
			cnt++;
		}
		
		if(cnt > 6)
		{
			inactiveDealsFiltersHTML += "<a href=\"javascript:void(0);\" class=\"showMoreLess\" onclick=\"showFullSubFilters('"+z+"');\">[+] show more</a><div style='height: 5px;'></div></div>";
		}		
	
    var el = document.getElementById(z+"_hidden");
		if(el && el.style.display == "")
		{
			inactiveDealsFiltersHTML += "<div id='"+z+"_hidden'><span class=\"listTypeHeading\">"+z+"</span>";
		}
		else
		{
			inactiveDealsFiltersHTML += "<div id='"+z+"_hidden' style='display: none;'><span class=\"listTypeHeading\">"+z+"</span>";
		}
		
		//executes when show more is clicked
		for(y in aSubFilterID[z])
		{
			if(dealsStatus[aSubFilterID[z][y]] != 1)
			{
				if(in_array(activeDealsGroup,z) == 1 && z == "City")
				{	//modified:
					inactiveDealsFiltersHTML += "<input type='checkbox' disabled><span class='listingsFilters'><i>"+y+"</i></span><br>";
				}
				else
				{	//modified:
					inactiveDealsFiltersHTML += "<input type='checkbox' onclick=\"addToActiveDealsFilters('"+aSubFilterID[z][y]+"','"+z+"','"+y+"');\"><span class='listingsFilters'>"+y+"</span><br>";
					
				}
			}else{
					inactiveDealsFiltersHTML +="<input type='checkbox' onclick=\"removeFromActiveDealsFilters('"+aSubFilterID[z][y]+"','"+z+"');\" checked><span class='listingsFilters'>"+y+"</span><br>";
			}
		}

		inactiveDealsFiltersHTML += "<a href=\"javascript:void(0);\" class=\"showMoreLess\" onclick=\"showFullSubFilters('"+z+"');\">[-] show less</a><div style='height: 5px;'></div></div>";
	}
	
	document.getElementById("subFilterGroups").innerHTML = inactiveDealsFiltersHTML;
	document.getElementById("activeSuperFilters").innerHTML = activeDealsFiltersHTML;
	
	
	cPage = 0;
	reloadDeals(0);
}

function removeFromActiveDealsFilters(filterID,groupName)
{
	var tempArray = new Array();
	var activeDealsFiltersHTML = '';
	var inactiveDealsFiltersHTML = '';
     //just get rid of this group
     
	for(i=0;i<activeDealsGroup.length;i++)
	{
		if(activeDealsGroup[i] != groupName)
		{
			tempArray.push(activeDealsGroup[i]);
		}
	}

	activeDealsGroup = tempArray;
	tempArray = new Array();

	//get rid of the active filter

	for(i=0;i<activeDealsFilters.length;i++)
	{
		if(activeDealsFilters[i] != filterID)
		{
			tempArray.push(activeDealsFilters[i]);
		}
	}

	activeDealsFilters = tempArray;


	if(activeDealsFilters.length > 0)
	{

		for(i=0;i<activeDealsFilters.length;i++)
		{
			for(z in dealsID)
			{
				if(z == activeDealsFilters[i])
				{
					activeDealsFiltersHTML += "<div style=\"cursor: pointer;padding-bottom: 7px;\"><a href='javascript:void(0)' class='listingsFilters' style='padding-right: 4px;' onclick=\"removeFromActiveDealsFilters('"+activeDealsFilters[i]+"','"+dealsIDGroup[activeDealsFilters[i]]+"')\"><img src='/images/shell/listing_closebtn.gif' border='0' valign='absmiddle'></a><a href='javascript:void(0)' class='listingsFilters'  onclick=\"removeFromActiveDealsFilters('"+activeDealsFilters[i]+"','"+dealsIDGroup[activeDealsFilters[i]]+"');\">"+dealsID[z]+"</a></div>";
				}
			}
		}

		document.getElementById("activeSuperFilters").innerHTML = activeDealsFiltersHTML;
	}
	else
	{
		document.getElementById("activeSuperFilters").innerHTML = "<div style='font-family: Tahoma,Arial,Verdana;font-size: 11px;margin-top: 10px;margin-bottom: 10px;'><i>No filter(s) selected</i></div>";
	}



	for(z in aSubFilterID)
	{
		for(y in aSubFilterID[z])
		{
			if(aSubFilterID[z][y] == filterID)
			{
				dealsStatus[aSubFilterID[z][y]] = 0;
			}
		}
	}


	for(z in aSubFilterID)
	{

		if(document.getElementById(z+"_shown").style.display == "")
		{
			inactiveDealsFiltersHTML += "<div id='"+z+"_shown'><span class=\"listTypeHeading\">"+z+"</span>";
		}
		else
		{
			inactiveDealsFiltersHTML += "<div id='"+z+"_shown' style='display: none;'><span class=\"listTypeHeading\">"+z+"</span>";
		}


		//inactiveEventFiltersHTML += "<div id='"+z+"_shown'>";
		//inactiveEventFiltersHiddenHTML += "<div id='"+z+"_hidden' style='display: none;'>";

		var cnt = 1;
		for(y in aSubFilterID[z])
		{
			if(cnt < 7)
			{
				if(dealsStatus[aSubFilterID[z][y]] == 0)
				{
					if(in_array(activeDealsGroup,z) == 1 && z == "City" || in_array(activeDealsGroup,z) == 1 && z == "Upcoming")
					{
						inactiveDealsFiltersHTML += "<input type='checkbox' disabled><span class='listingsFilters'><i>"+y+"</i></span><br>";
					}
					else
					{
						inactiveDealsFiltersHTML += "<input type='checkbox' onclick=\"addToActiveDealsFilters('"+aSubFilterID[z][y]+"','"+z+"','"+y+"');\"><span class='listingsFilters'>"+y+"</span><br>";
					}
				}else{
						inactiveDealsFiltersHTML += "<input type='checkbox' checked onclick=\"removeFromActiveDealsFilters('"+aSubFilterID[z][y]+"','"+z+"');\"><span class='listingsFilters'>"+y+"</span><br>";
				}

			}
			cnt++;
		}
		
		if(cnt > 6)
		{
			inactiveDealsFiltersHTML += "<a href=\"javascript:void(0);\" class=\"showMoreLess\" onclick=\"showFullSubFilters('"+z+"');\">[+] show more</a><div style='height: 5px;'></div></div>";
		}
		

		if(document.getElementById(z+"_hidden").style.display == "")
		{
			inactiveDealsFiltersHTML += "<div id='"+z+"_hidden'><span class=\"listTypeHeading\">"+z+"</span>";
		}
		else
		{
			inactiveDealsFiltersHTML += "<div id='"+z+"_hidden' style='display: none;'><span class=\"listTypeHeading\">"+z+"</span>";
		}

		for(y in aSubFilterID[z])
		{
			if(dealsStatus[aSubFilterID[z][y]] == 0)
			{
				if(in_array(activeDealsGroup,z) == 1 && z == "City" || in_array(activeDealsGroup,z) == 1 && z == "Upcoming")
				{
					inactiveDealsFiltersHTML += "<input type='checkbox'><span class='listingsFilters'>"+y+"</span><br>";
				}
				else
				{
					inactiveDealsFiltersHTML += "<input type='checkbox' onclick=\"addToActiveDealsFilters('"+aSubFilterID[z][y]+"','"+z+"','"+y+"');\"><span class=\"listingsFilters\">"+y+"</span><br>";
				}
			}else{
					inactiveDealsFiltersHTML += "<input type='checkbox' checked onclick=\"removeFromActiveDealsFilters('"+aSubFilterID[z][y]+"','"+z+"');\"><span class='listingsFilters'>"+y+"</span><br>";
				}
		}

		inactiveDealsFiltersHTML += "<a href=\"javascript:void(0);\" class=\"showMoreLess\" onclick=\"showFullSubFilters('"+z+"');\">[-] show less</a><div style='height: 5px;'></div></div>";
	}


	document.getElementById("subFilterGroups").innerHTML = inactiveDealsFiltersHTML;
	
	cPage = 0;
	reloadDeals(0);
}

function reloadDeals(nPage)
{
    waitToLoad();	
    
    var commaGroup ='';

    var z =1;
    var sComma = '';
    
    for(i=0;i<activeDealsFilters.length;i++)
    {
    	if(z < activeDealsFilters.length)
    	{
    		sComma = "|";
    	}
    	else
    	{
    	    sComma = "";	
    	}
    	
      // commaGroup += "('"+activeDealsFilters[i]+"')"+sComma;
       commaGroup += activeDealsFilters[i]+sComma;
       z++;
    }
 	 
	 x_reloadDeals(tagGroup,dealID,commaGroup,nPage,cSorting,showNewDeals);
}

function showNewDeals(results)
{
	isLoaded();
	
	spResults = results.split("//rows//");
	
	document.getElementById("dealsResults").innerHTML = spResults[0];
	
	if(spResults[1] != 0)
	{
		
	    nTotalPages = parseInt(spResults[1]);
		var nPages = Math.ceil(nTotalPages/40);
		var sLinks = '';

		if(nPages > 0 )
		{

			if( (cPage+1) < nPages && cPage > 0)
			{
				sLinks = "<a href='javascript:void(0);' onclick='gridPage("+(cPage-1)+");'><img src=\"/images/shell/cal_left_blue.gif\" border='0' /></a>&nbsp;";
				sLinks += "Page "+(cPage+1)+" of "+nPages+"";
				sLinks += "&nbsp;<a href='javascript:void(0);' onclick='gridPage("+(cPage+1)+");'><img src=\"/images/shell/cal_right_blue.gif\" border='0' /></a>";
			}

			else if((cPage+1) >= 1)
			{
				if((cPage+1) == nPages && cPage == 0)
				{
					sLinks += "Page "+(cPage+1)+" of "+nPages+"";
				}
				else if( (cPage+1) == nPages)
				{
					sLinks = "<a href='javascript:void(0);' onclick='gridPage("+(cPage-1)+");'><img src=\"/images/shell/cal_left_blue.gif\" border='0' /></a>&nbsp;";
					sLinks += "Page "+(cPage+1)+" of "+nPages+"";
				}
				else
				{
					sLinks = "Page "+(cPage+1)+" of "+nPages+"";
					sLinks += "&nbsp;<a href='javascript:void(0);' onclick='gridPage("+(cPage+1)+");'><img src=\"/images/shell/cal_right_blue.gif\" border='0' /></a>";
				}
			}
		}
		else
		{
			sLinks = "";
		}


		document.getElementById("total").innerHTML = sLinks;
		document.getElementById("total_bottom").innerHTML = sLinks;	
		document.getElementById("current_deals_label").innerHTML = tagGroupLabel+"Hot Deals("+spResults[1]+")";
	}
	else
	{
	   document.getElementById("dealsResults").innerHTML = "<span class='regularNonBold'>No results found.</span>";		   
	}

  resizeInnerContent();
	
}


function showLongDesc(deal_id)
{
  document.getElementById("desc_"+deal_id).innerHTML = document.getElementById("desc_long_"+deal_id).innerHTML;
  document.getElementById("desc_link_"+deal_id).onclick = new Function("showShortDesc('"+deal_id+"')");
  document.getElementById("desc_link_"+deal_id).innerHTML = "Read Less";
}

function showShortDesc(deal_id)
{
   document.getElementById("desc_"+deal_id).innerHTML = document.getElementById("desc_short_"+deal_id).innerHTML;	
   document.getElementById("desc_link_"+deal_id).onclick = new Function("showLongDesc('"+deal_id+"')");
   document.getElementById("desc_link_"+deal_id).innerHTML = "Read More";
}

function showLongDisclaimer(deal_id)
{
 document.getElementById("disc_"+deal_id).innerHTML = document.getElementById("disc_long_"+deal_id).innerHTML;
}

function showShortDisclaimer(deal_id)
{
 document.getElementById("disc_"+deal_id).innerHTML = document.getElementById("disc_short_"+deal_id).innerHTML;
}


function gridPage(nPageNum)
{
	cPage = nPageNum;
	reloadDeals(nPageNum);
}


function orderByDate()
{
	cPage = 0;
	cSorting = "end_date_asc";
	document.getElementById("orderbydate_link").style.fontWeight = "bold";
	document.getElementById("orderbyname_link").style.fontWeight = "normal";

	reloadDeals(0);
}

function orderByName()
{
	//#5f5c5c
	cPage = 0;
	cSorting = "name_asc";
	document.getElementById("orderbydate_link").style.fontWeight = "normal";
	document.getElementById("orderbydate_link").style.color = "#7f7f7f";
	document.getElementById("orderbyname_link").style.fontWeight = "bold";
	document.getElementById("orderbyname_link").style.color = "#7f7f7f";

	reloadDeals(0);
}

/* Following function is added only for Amex Deals :29-01-2009
** This function will update the images section by showing 'On' and 'Off' states
** based on the tag selected and also calls the reloadDeals() function to
** load the results by Ajax.
*/
function gettagDeals(tagName)
{
	//alert(tagName);
	tagGroup = tagName;//alert(tagName);
	document.getElementById("total").innerHTML = "";
	document.getElementById("total_bottom").innerHTML = "";
	if(tagName=='amex_beach')
	{
		ImageName1 = "beach-getaways-on.jpg";
	}
	else
	{
		ImageName1 = "beach-getaways-off.jpg";
	}
	if(tagName=='amex_spa_golf')
	{
		ImageName2 = "spa-golf-on.jpg";
	}
	else
	{
		ImageName2 = "spa-golf-off.jpg";
	}
	if(tagName=='amex_lodging')
	{
		ImageName3 = "sophisticated-on.jpg";
	}
	else
	{
		ImageName3 = "sophisticated-off.jpg";
	}
	if(tagName=='amex_dining')
	{
		ImageName4 = "delectable-on.jpg";
	}
	else
	{
		ImageName4 = "delectable-off.jpg";
	}
	
	leftButtonsHTML = "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" width=\"291\"><tr><td align=\"left\" valign=\"top\"><a href=\"javascript:void(0);\" onclick=\"gettagDeals('amex_beach');\"><img src=\"images/"+ImageName1+"\" width=\"254\" height=\"47\" border=\"0\" id=\"Image1\" onMouseOver=\"MM_swapImage('Image1','','images/beach-getaways-on.jpg',1)\" onMouseOut=\"MM_swapImgRestore()\"></a></td></tr><tr><td align=\"left\" valign=\"top\"><a href=\"javascript:void(0);\" onclick=\"gettagDeals('amex_spa_golf');\"><img src=\"images/"+ImageName2+"\" width=\"254\" height=\"45\" border=\"0\" id=\"Image2\" onMouseOver=\"MM_swapImage('Image2','','images/spa-golf-on.jpg',1)\" onMouseOut=\"MM_swapImgRestore()\"></a></td></tr><tr><td align=\"left\" valign=\"top\"><a href=\"javascript:void(0);\" onclick=\"gettagDeals('amex_lodging');\"><img src=\"images/"+ImageName3+"\" width=\"254\" height=\"44\" border=\"0\" id=\"Image3\" onMouseOver=\"MM_swapImage('Image3','','images/sophisticated-on.jpg',1)\" onMouseOut=\"MM_swapImgRestore()\"></a></td></tr><tr><td align=\"left\" valign=\"top\"><a href=\"javascript:void(0);\" onclick=\"gettagDeals('amex_dining');\"><img src=\"images/"+ImageName4+"\" width=\"254\" height=\"49\" border=\"0\" id=\"Image4\" onMouseOver=\"MM_swapImage('Image4','','images/delectable-on.jpg',1)\" onMouseOut=\"MM_swapImgRestore()\"></a></td></tr></table>";
	
	if(tagName=='amex_beach'||tagName=='amex_spa_golf'||tagName=='amex_lodging'||tagName=='amex_dining')
	{
		document.getElementById("onPageLoad").innerHTML = "";
		document.getElementById("onAjaxLoad").style.display = "block";
		document.getElementById("onPageLoad").style.display = "none";
		document.getElementById("onAjaxLoad").innerHTML = leftButtonsHTML;
	}
	cPage = 0;
	reloadDeals(0);
}


