function showHide(element){
   var el = $(element);
   el.style.display = (el.style.display == '' || el.style.display == 'block') ? 'none' : 'block';
}
function show(element){
   var el = $(element);
   el.style.display = 'block';
}
function hide(element){
   var el = $(element);
   el.style.display = 'none';
}

function toggleSnap(handler, elementToSnap) {
	var handler = $(handler);
	var el = $(elementToSnap);
		
	if(handler.hasClass("snapOff")) {
		handler.removeClass("snapOff");
		handler.addClass("snapOn");
		el.style.display = 'none';
		if(elementToSnap == "SearchPanelContent") {
			$('datagridContainer').setStyle('height',$("datagridContainer").getStyle("height").toInt()+searchHeight+'px');
		}
	} else {
		handler.removeClass("snapOn");
		handler.addClass("snapOff");
		el.style.display = 'block';
		if(elementToSnap == "SearchPanelContent") {
			$('datagridContainer').setStyle('height',$("datagridContainer").getStyle("height").toInt()-searchHeight+'px');
		}
	}
}

window.addEvent('domready', function() {
	searchHeight = 0;
	if ($("SearchPanelContent")!=null)
		searchHeight = $("SearchPanelContent").getStyle("height").toInt();
});

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}
/* Add to favorite */
function AddToFavorite() {
	window.external.AddFavorite(document.URL,document.title);
}
function Popup(sUrl,width,height)
{
	var win1 = window.open(sUrl,'','top=0,left=0,height='+height+',width='+width+',status=no,toolbar=no,menubar=no,location=no,resizable=no,titlebar=yes,scrollbars=auto');
}
/*==================================================
  Cookie functions
  ==================================================*/
function setCookie(name, value, expires, path, domain, secure) {
    document.cookie= name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires.toGMTString() : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
}

function getCookie(name) {
    var dc = document.cookie;
    var prefix = name + "=";
    var begin = dc.indexOf("; " + prefix);
    if (begin == -1) {
        begin = dc.indexOf(prefix);
        if (begin != 0) return null;
    } else {
        begin += 2;
    }
    var end = document.cookie.indexOf(";", begin);
    if (end == -1) {
        end = dc.length;
    }
    return unescape(dc.substring(begin + prefix.length, end));
}
function deleteCookie(name, path, domain) {
    if (getCookie(name)) {
        document.cookie = name + "=" +
            ((path) ? "; path=" + path : "") +
            ((domain) ? "; domain=" + domain : "") +
            "; expires=Thu, 01-Jan-70 00:00:01 GMT";
    }
}

/* TABBER */
/* Optional: Temporarily hide the "tabber" class so it does not "flash"
   on the page as plain HTML. After tabber runs, the class is changed
   to "tabberlive" and it will appear. */

document.write('<style type="text/css">.tabber{display:none;}<\/style>');

/*==================================================
  Set the tabber options (must do this before including tabber.js)
  ==================================================*/
var tabberOptions = {

  'cookie':"tabber", /* Name to use for the cookie */

  'onLoad': function(argsObj)
  {
    var t = argsObj.tabber;
    var i;

    /* Optional: Add the id of the tabber to the cookie name to allow
       for multiple tabber interfaces on the site.  If you have
       multiple tabber interfaces (even on different pages) I suggest
       setting a unique id on each one, to avoid having the cookie set
       the wrong tab.
    */
    if (t.id) {
      t.cookie = t.id + t.cookie;
    }

    /* If a cookie was previously set, restore the active tab */
    i = parseInt(getCookie(t.cookie));
    if (isNaN(i)) { return; }
    t.tabShow(i);
    //alert('getCookie(' + t.cookie + ') = ' + i);
  },

  'onClick':function(argsObj)
  {
    var c = argsObj.tabber.cookie;
    var i = argsObj.index;
    //alert('setCookie(' + c + ',' + i + ')');
    setCookie(c, i);
  }
};