var pop_window;

function getScreenWidth()
{
    if (screen.availWidth) {
        return screen.availWidth;
    } else {
        return 0;
    }
}

function getScreenHeight()
{
    if (screen.availHeight) {
        return screen.availHeight;
    } else {
        return 0;
    }
}

function openFullDialog(pop_url) {
    x = getScreenWidth();
    if(!x) { x = 750; }

    y = getScreenHeight();
    if(!y) { y = 550; }

    openDialog(pop_url, x, y);
}

function openDialog(pop_url, x, y) {
    if (x == 0) {
        x = 500;
    }

    if (y == 0) {
        y=500;
    }

    pop_window = open(pop_url,'','scrollbars,width='+x+',height='+y);
    setTimeout('focusPop(pop_window)',1000);
}

function focusPop(pop_window){
	pop_window.focus();	
}

 

function closeWindow() 
{
   /* don't want cofirm message in ie7 */
   window.open('','_self','');
	 window.close();
	 
	 /*window.open(window.close();,'_self’,');*/
}

 

function refreshParent()
{
    opener.history.go(0);
}

function toggleSearchForm()
{
   if (document.getElementById('search_container')) {
       var el = document.getElementById('search_container');
       var on_button = document.getElementById('show_search');
       var off_button = document.getElementById('hide_search');
       if (el.style.display == "none") {
           el.style.display = "block";
           
       } else {
           el.style.display = "none";
           
       }
   }
}

function toggleBatchForm()
{
   if (document.getElementById('batch_container')) {
       var el = document.getElementById('batch_container');
       var on_button = document.getElementById('show_batch');
       var off_button = document.getElementById('hide_batch');
       if (el.style.display == "none") {
           el.style.display = "block";
           on_button.style.display = 'none';
           off_button.style.display = 'inline';
       } else {
           el.style.display = "none";
           on_button.style.display = 'inline';
           off_button.style.display = 'none';
       }
   }
}

function toggleReportsForm()
{
   if (document.getElementById('reports_container')) {
       var el = document.getElementById('reports_container');
       var on_button = document.getElementById('show_reports');
       var off_button = document.getElementById('hide_reports');
       if (el.style.display == "none") {
           el.style.display = "block";
           on_button.style.display = 'none';
           off_button.style.display = 'inline';
       } else {
           el.style.display = "none";
           on_button.style.display = 'inline';
           off_button.style.display = 'none';
       }
   }
}

function toggleExportForm()
{
   if (document.getElementById('export_container')) {
       var el = document.getElementById('export_container');
       var on_button = document.getElementById('show_export');
       var off_button = document.getElementById('hide_export');
       if (el.style.display == "none") {
           el.style.display = "block";
           on_button.style.display = 'none';
           off_button.style.display = 'inline';
       } else {
           el.style.display = "none";
           on_button.style.display = 'inline';
           off_button.style.display = 'none';
       }
   }
}

function toggleForm(param)
{
   var container = param + "_container";
	 var show = "show_" + param;
	 
   if (document.getElementById(container)) {
       var el = document.getElementById(container);
       var on_button = document.getElementById(show);
       var off_button = document.getElementById(show);
       if (el.style.display == "none") {
           el.style.display = "block";
           on_button.style.display = 'none';
           off_button.style.display = 'inline';
       } else {
           el.style.display = "none";
           on_button.style.display = 'inline';
           off_button.style.display = 'none';
       }
   }
}

function closeForm(param)
{
   var container = param + "_container";
	 var show = "show_" + param;
	 var hide = "hide_" + param;
	 
   if (document.getElementById(container)) {
       var el = document.getElementById(container);
       var on_button = document.getElementById(show);
       var off_button = document.getElementById(hide);
       el.style.display = "none";
       on_button.style.display = 'inline';
       off_button.style.display = 'none';       
   }
}

function setElDisplay(el_name, state)
{
   if (document.getElementById(el_name)) {
       var el = document.getElementById(el_name);
       if (state) {
           el.style.display = "inline";
       } else {
           el.style.display = "none";
       }
   }
}

function setCookie(name, value, expires, path, domain, secure) {
    var curCookie = name + "=" + escape(value) +
        ((expires) ? "; expires=" + expires.toGMTString() : "") +
        ((path) ? "; path=" + path : "") +
        ((domain) ? "; domain=" + domain : "") +
        ((secure) ? "; secure" : "");
    document.cookie = curCookie;
}

function setComboText(form_name, the_select, the_text)
{
    el_select = eval("document." + form_name + '.' + the_select);
    el_text = eval("document." + form_name + '.' + the_text);
    el_text.value = el_select.options[el_select.selectedIndex].value;
}

function setComboSelect(form_name, the_select, the_text)
{
    el_select = eval("document." + form_name + '.' + the_select);
    if (el_select) {
        el_text = eval("document." + form_name + '.' + the_text);
        if (el_text) {
            setSelect(form_name, the_select, el_text.value)
        }
    }
}

// populate form fields with data from an array
// array must have the key as the form field name
// the value as the data to be set
function populateForm(destination_form, the_data)
{
    for (var i in the_data) {
        s = 'document.' + destination_form + '.' + i;
        el = eval(s);

        // text inputs and combo boxes
        if (el) {
            if (el.type == 'text') {
                el.value = the_data[i];
                // if this is a combo box, update the select as well
                select_name = i + '_select';
                setComboSelect(destination_form, select_name, i);
            }
            if (el.type == 'select-one') {
                setSelect(destination_form, i, the_data[i]);
            }
            if (el[0] && el[0].type == 'radio') {
                setRadio(destination_form, i, the_data[i]);
            }
        }
    }
}

function setSelect(form_name, el_name, el_val)
{
    el_select = eval("document." + form_name + '.' + el_name);
    if (el_select) {
        l = el_select.length;
        for (i = 0; i < l; i++) {
            if (el_val == el_select.options[i].value) {
                el_select.selectedIndex = i;
                break;
            }
        }
    }
}

function setRadio(form_name, el_name, el_val)
{
    el_radio = eval('document.' + form_name + '.' + el_name);
    if (el_radio) {
        for (var i = 0; i < el_radio.length; i++) {
            if (el_radio[i].value == el_val) {
                el_radio[i].checked = true;
            }
        }
    }
}

function setCheckbox(form_name, el_name, el_val)
{
    el_cb = eval('document.' + form_name + '.' + el_name);
    if (el_cb) {
        if (el_val == 'on') {
            el_cb.checked = true;
        }
        if (el_val == 'off') {
            el_cb.checked = false;
        }
    }
}

function setTextInput(form_name, el_name, el_val)
{
    el_text = eval('document.' + form_name + '.' + el_name);
    if (el_text) {
        el_text.value = el_val;
    }
}


function setCheckboxById(elname, state)
{
    if (document.getElementById(elname)) {
        el = document.getElementById(elname);

        if (state == 'on') {
            el.checked = true;
        }
        if (state == 'off') {
            el.checked = false;
        }
    }
}

function numbersonly(myfield, e, allow_dec)
{
   var key;
   var keychar;
   
   if (window.event)
      key = window.event.keyCode;
   else if (e)
      key = e.which;
   else
      return true;
   keychar = String.fromCharCode(key);
   
   // control keys
   if ((key==null) || (key==0) || (key==8) || 
       (key==9) || (key==13) || (key==27) )
      return true;
   
   // numbers
   else {
	    if (allow_dec == true && (("0123456789.").indexOf(keychar) > -1))
      return true;
			
			else if ((("0123456789").indexOf(keychar) > -1))
      return true;
			
			else
			  return false;
   }
   
   return false;
}

function setActiveStyleSheet(title) 
			{
         var i, a, main;
         for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
           if(a.getAttribute("rel").indexOf("style") != -1
              && a.getAttribute("title")) {
             a.disabled = true;
             if(a.getAttribute("title") == title) a.disabled = false;
           }
         }
				setCookie('textStyle', title, 1, '', '', '');				 
      }
			
			function getPreferredStyleSheet() {
        var i, a;
        for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
          if(a.getAttribute("rel").indexOf("style") != -1
             && a.getAttribute("rel").indexOf("alt") == -1
             && a.getAttribute("title")
             ) return a.getAttribute("title");
        }
        return null;
      }
			
			function setCookie( name, value, expires, path, domain, secure ) 
      {
         // set time, it's in milliseconds
         var today = new Date();
         today.setTime( today.getTime() );
         
         /*
         if the expires variable is set, make the correct 
         expires time, the current script below will set 
         it for x number of days, to make it for hours, 
         delete * 24, for minutes, delete * 60 * 24
         */
         if ( expires )
         {
            expires = expires * 1000 * 60 * 60 * 24;
         }
         var expires_date = new Date( today.getTime() + (expires) );
         
         document.cookie = name + "=" +escape( value ) +
         ( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) + 
         ( ";path=/"  );
      }
			
			// this function gets the cookie, if it exists
      function getCookie( name ) 
			{      	   
         var start = document.cookie.indexOf( name + "=" );
         var len = start + name.length + 1;
         if ( ( !start ) &&
         ( name != document.cookie.substring( 0, name.length ) ) )
         {
         return null;
         }
         if ( start == -1 ) return null;
         var end = document.cookie.indexOf( ";", len );
         if ( end == -1 ) end = document.cookie.length;
         return unescape( document.cookie.substring( len, end ) );
      }



