//! ################################################################
//! This file contains both original and merged/adapted code.
//! Except where indicated, all code is
//! Copyright (c) 2007 love2trade.com.
//! All Rights Reserved.
//! Not to be reused without permission
function revealModal(divID)
{
    var modal=document.getElementById(divID);
    var top=modal.style.top ;//= document.body.scrollTop;
    if (document.documentElement){
      top =  document.documentElement.scrollTop; 
    }
    window.onscroll = function () { 
            //var modal=document.getElementById(divID);   
            modal.style.height= document.body.offsetHeight+ document.body.scrollTop; 
            modal.style.width= document.body.offsetWidth+ document.body.scrollLeft; 
            modal.style.top=0;
            if (document.documentElement){
                modal.style.height= document.documentElement.offsetHeight+ document.documentElement.scrollTop; 
                modal.style.width= document.documentElement.scrollWidth; 
            }
     };
    window.onresize = function () { 
            modal.style.height= document.body.offsetHeight+ document.body.scrollTop; 
            modal.style.width= document.body.offsetWidth+ document.body.scrollLeft; 
            modal.style.top=0;
            if (document.documentElement){
                modal.style.height= document.documentElement.offsetHeight+ document.documentElement.scrollTop; 
                modal.style.width= document.documentElement.scrollWidth; 
            }
     };
    var modalHeight=modal.style.height;     
    modal.style.display = "block";
    modal.style.top = document.body.scrollTop;
    modal.style.width= document.body.scrollLeft; 
    if (document.documentElement){
                modal.style.top =  document.documentElement.scrollTop; 
                modal.style.width= document.documentElement.scrollWidth; 
            }
    return false;
}
function windowChanged(){
//var modal=document.getElementById(divID);   
           
}
function hideModal(divID)
{
    var mod=document.getElementById(divID);
    if(mod!=null)
        mod.style.display = "none";
}

function toggleCheckbox(checkboxId)
{
    var chkBox=document.getElementById(checkboxId);
    chkBox.checked = !chkBox.checked;
}


////////////////////User by div in new /edit ad to expand/collapse cat tree
function ToggleCategoryTree(obj) {
    var el = document.getElementById(obj);
    if(el!=null){
        //alert(el.style.height);
        if ( el.className == 'cat_tree_select_short') {
            el.className = 'cat_tree_select_long';
        }
        else {
            el.className = 'cat_tree_select_short';
        }
    }
}

////////////////////User by div that toggle view
function switchMenu(obj) {
    var el = document.getElementById(obj);
    if(el!=null){
        if ( el.style.display != 'none' ) {
            el.style.display = 'none';
        }
        else {
            el.style.display = '';
        }
    }
}

function switchMenuAndRename(obj,cont) {
    var el = document.getElementById(obj);
    var hide=false;
    if(el!=null){
        if ( el.style.display != 'none' ) {
            el.style.display = 'none';
            hide=true;
        }
        else {
            el.style.display = '';
        }
    }
    var cont = document.getElementById(cont);
    if(hide){
        cont.innerText=">";
        cont.style.width = '5';
    }else{
        cont.innerText="< Hide";
        cont.style.width = '';
    }
    
}

////////////////////Used by WantedItems Control to display details of a wanted item
function ToggleWantedItemDetails(divName){
  var el = document.getElementById(divName);
  if(el.className != '' || el.className == 'WantedItemDetailsClicked')
  {
        el.className ='';
        el.style.display  ='none';
  }
  else
  {
        el.className ='WantedItemDetailsClicked';
        el.style.display  ='block';
  }
}
////////////////////Used by MyOffers to display filters on offers
function ToggleMyOffersFilter(divName){
  var el = document.getElementById(divName);
  if(el.className != '' || el.className == 'MyOffersFilterClicked')
  {
        el.className ='';
        el.style.display  ='none';
  }
  else
  {
        el.className ='MyOffersFilterClicked';
        el.style.display  ='block';
  }
}
////////////////////Used by generic popups..
function ToggleGenericPopup(divName){
  var el = document.getElementById(divName+'Menu');
  if(el==null)
    alert('Finding '+divName+'Menu'+' failed');
  if(el.className != '' || el.className == divName+'Clicked')
  {
        el.className ='';
        el.style.display  ='none';
  }
  else
  {
        el.className =divName+'Clicked';
        el.style.display  ='block';
  }
}
////////////////////Used by static popups..
function pop(divName,clickedClass){
  var el = document.getElementById(divName+'Menu');
  if(el==null)
    alert('Finding '+divName+'Menu'+' failed');
  if(el.className != '' || el.className == clickedClass)
  {
        el.className ='';
        el.style.display  ='none';
  }
  else
  {
        el.className =clickedClass;
        el.style.display  ='block';
        
  }
}
////////////////////Used by CreateOffer to display hints on wanted items
function ToggleAdTagsPopup(){
  var el = document.getElementById('AdTagMenu');
  if(el.className != '' || el.className == 'AdTagClicked')
  {
        el.className ='';
        el.style.display  ='none';
  }
  else
  {
        el.className ='AdTagClicked';
        el.style.display  ='block';
  }
}
////////////////////Used by AdTag to display add tag popup box
function ToggleWantedItemsHints(){
  var el = document.getElementById('WantedItemsHintsMenu');
  if(el.className != '' || el.className == 'WantedItemsHintsClicked')
  {
        el.className ='';
        el.style.display  ='none';
  }
  else
  {
        el.className ='WantedItemsHintsClicked';
        el.style.display  ='block';
  }
}
////////////////////Used by MasterPage to display Prefered Zipcodes
/*
function ToggleZipMenu(){
  var el = document.getElementById('PreferedZipCodeMenu');
  if(el==null)
  alert('Unable to display zipcode');
  if(el.className != '' || el.className == 'PreferedZipCodeClicked')
  {
        el.className ='';
        el.style.display  ='none';
  }
  else
  {
        el.className ='PreferedZipCodeClicked';
        el.style.display  ='block';
    }
}
function CloseZipMenu(){
  var el = document.getElementById('PreferedZipCodeMenu');
  el.style.display  ='none';
}
*/
////////////////////Used by Ad Reviews in ShowAd.aspx
////////////////////Used by Zones to display Prefered Zipcodes
function DisplayTradeZoneMembersMenu(menu_id){
  var el = document.getElementById(menu_id);
  if(el!=null){
    el.className ='TradeZoneMembersMenuClicked';
    el.style.display  ='block';
 }
}
function CloseAddTradeZoneMenu(){
  var el = document.getElementById('AddTradeZoneMenu');
  el.style.display  ='none';
}
////////////////////////////////////////////////////////////////////
// Scrolling code for recent posts switcher
var tickercontents=new Array()
var saveLastViewedMsg=1 //(1=yes, 0=no)?
var tickdelay=5000
var stop=false;
var currentmessage=0

function changeMsgContent(){
	var crosstick=document.getElementById? document.getElementById("marquee") : document.all.marquee
	
	if(!stop && crosstick!=null){
	if (crosstick.filters && crosstick.filters.length>0)
		crosstick.filters[0].Apply()
	crosstick.innerHTML=tickercontents[currentmessage]
	if (crosstick.filters && crosstick.filters.length>0)
		crosstick.filters[0].Play()
	currentmessage=(currentmessage==tickercontents.length-1)? currentmessage=0 : currentmessage+1
	var filterduration=(crosstick.filters&&crosstick.filters.length>0)? crosstick.filters[0].duration*1000 : 0
	}
	setTimeout("changeMsgContent()",tickdelay+filterduration)
}

function beginDisplay(){
	if (saveLastViewedMsg && getCookie("lastMsgNumber")!="")
		revivelastmsg()
	changeMsgContent()
}

function getCookie(Name) {
	var search = Name + "="
	var returnvalue = ""
	if (document.cookie.length > 0) {
		offset = document.cookie.indexOf(search)
		if (offset != -1) {
			offset += search.length
			end = document.cookie.indexOf(";", offset)
			if (end == -1)
			end = document.cookie.length;
			returnvalue=unescape(document.cookie.substring(offset, end))
		}
	}
	return returnvalue;
}

function savelastmsg(){
    document.cookie="lastMsgNumber="+currentmessage
}

function revivelastmsg(){
    currentmessage=parseInt(getCookie("lastMsgNumber"))
    currentmessage=(currentmessage==0)? tickercontents.length-1 : currentmessage-1
    currentmessage=(currentmessage > tickercontents.length)? 0 : currentmessage
}

if (saveLastViewedMsg)
	window.onunload=savelastmsg

function doMarquee(action){
stop = action
}
function showMarquee(msgArray,seperator){
    if(msgArray!=null && seperator != null)
    {
    tickercontents=msgArray.split(seperator);
    beginDisplay()
    }
}
//window.load=createGenericModalLocation
function showGenericModal(msg){
var GenericModalBody=document.getElementById('modalBody_generic'); 
if(GenericModalBody==null){
alert('Fail to Display Popup Modal');
}
    if(msg==null || msg=='')
        msg='Please Wait...'
    GenericModalBody.innerText=msg
    revealModal('mod_generic')
    //document.write('<div style="z-index:1000;width:100%;background-color:red;height:100%">'+msg+'</div>')
       
}
//////////////

function FloatBugReport(id, pos_x, pos_y)
    {
    var ns = (navigator.appName.indexOf("Netscape") != -1);
    var d = document;
    var px = document.layers ? "" : "px";
	var el=d.getElementById?d.getElementById(id):d.all?d.all[id]:d.layers[id];
	window[id + "_obj"] = el;
	if(d.layers)el.style=el;
	el.cx = el.pos_x = pos_x;el.cy = el.pos_y = pos_y;
	el.sP=function(x,y){this.style.left=x+px;this.style.top=y+px;};
	el.fly=function()
	{
		var pX, pY;
		pX = (this.pos_x >= 0) ? 0 : ns ? innerWidth : 
		document.documentElement && document.documentElement.clientWidth ? 
		document.documentElement.clientWidth : document.body.clientWidth;
		pY = ns ? pageYOffset : document.documentElement && document.documentElement.scrollTop ? 
		document.documentElement.scrollTop : document.body.scrollTop;
		if(this.pos_y<0) 
		pY += ns ? innerHeight : document.documentElement && document.documentElement.clientHeight ? 
		document.documentElement.clientHeight : document.body.clientHeight;
		this.cx += (pX + this.pos_x - this.cx)/8;this.cy += (pY + this.pos_y - this.cy)/8;
		this.sP(this.cx, this.cy);
		setTimeout(this.id + "_obj.fly()", 20);
	}
	return el;
}
function start(){
    //FloatBugReport("BugReport",20,-30).fly();
    //if(marqueeText!=null && marqueeTextSeperator!=null)
    //    showMarquee(marqueeText ,marqueeTextSeperator);
}


function toggleAll(contentName,cb) {
    var val = cb.checked;
	//var frm = document.forms[0];
	var frm = document.getElementById(contentName);
	alert(frm.elements);
	var len = frm.elements.length;
	var i=0;
	for( i=0 ; i<len ; i++) {
		if (frm.elements[i].type=="checkbox") {
			frm.elements[i].checked=val;
		}
	}
}

function SetAllCheckBoxes(FormName, FieldName, cb)
{
    var val = cb.checked;
	if(!document.forms[FormName])
		return;
	var objCheckBoxes = document.forms[FormName].elements[FieldName];
	if(!objCheckBoxes)
		return;
	var countCheckBoxes = objCheckBoxes.length;
	if(!countCheckBoxes)
		objCheckBoxes.checked = CheckValue;
	else
		// set the check value for all check boxes
		for(var i = 0; i < countCheckBoxes; i++)
			objCheckBoxes[i].checked = CheckValue;
}
window.onload=start;


function CountryChanged(country, zipLabel, radiusDrp, zipCityTxtToClear) {
    var _radiusDrp = document.getElementById(radiusDrp);
    var _zipCityTxtToClear = document.getElementById(zipCityTxtToClear);
    if (_zipCityTxtToClear != null) {
        _zipCityTxtToClear.value = '';
    }
    if (country != null && country == 'United States') {
        document.getElementById(zipLabel).innerText = 'Zipcode ';
        if (_radiusDrp != null)
            _radiusDrp.disabled = false;

    } else {
        document.getElementById(zipLabel).innerText = 'City ';
        if (_radiusDrp != null) {
            _radiusDrp.disabled = true;
            _radiusDrp.selectedIndex = 0;
        }
    }
}
