//----------------------------------------------------------------------------
// Code to determine the browser and version.
//----------------------------------------------------------------------------
function Browser() {
  var ua, s, i;

  this.isIE    = false;  // Internet Explorer
  this.isOP    = false;  // Opera
  this.isNS    = false;  // Netscape
  this.version = null;

  ua = navigator.userAgent;

  s = "Opera";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isOP = true;
    this.version = parseFloat(ua.substr(i + s.length));
    return;
  }

  s = "Netscape6/";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isNS = true;
    this.version = parseFloat(ua.substr(i + s.length));
    return;
  }

  // Treat any other "Gecko" browser as Netscape 6.1.

  s = "Gecko";
  if ((i = ua.indexOf(s)) >= 0) {
    this.isNS = true;
    this.version = 6.1;
    return;
  }

  s = "MSIE";
  if ((i = ua.indexOf(s))) {
    this.isIE = true;
    this.version = parseFloat(ua.substr(i + s.length));
    return;
  }
}


function isBlank(val) {
        if (val.length == 0) { return true; }
        for (var i=0; i < val.length; i++) {
                if ((val.charAt(i) != ' ') && (val.charAt(i) != "\t") && (val.charAt(i) != "\n")) { return false; }
        }
        return true;
}

function redirectPage(page) {
  return false; //for now
}


function checkAll2(checkboxes,flag,button) {
  var newValue=true;
    if(flag.value=='true') {
    newValue=true;
        flag.value='false';
        button.value='Uncheck All';
    } else {
    newValue=false;
        flag.value='true';
        button.value='Check All';
    }

    for(var i=0;i<checkboxes.length;i++) {
        checkboxes[i].checked = newValue;
    }

  return true;
}

function checkAll(checkboxes,value) {
  value = true;
    for(var i=0;i<checkboxes.length;i++) {
        checkboxes[i].checked = value;
    }
}
function checkemail(str){
  var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
  if (filter.test(str)) return true; else return false;
}

function checkurl(str) {
  var filter=/^http\:\/\/((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?).*$/i
  if (filter.test(str)) return true; else return false;
}

function validateCreditCard(s) {
var v = "0123456789";
var w = "";
for (var i=0; i < s.length; i++) {
x = s.charAt(i);
if (v.indexOf(x,0) != -1)
w += x;
}
var j = w.length / 2;
if (j < 6.5 || j > 8 || j == 7) return false;
var k = Math.floor(j);
var m = Math.ceil(j) - k;
var c = 0;
for ( i=0; i<k; i++) {
a = w.charAt(i*2+m) * 2;
c += a > 9 ? Math.floor(a/10 + a%10) : a;
}
for ( i=0; i<k+m; i++) c += w.charAt(i*2+1-m) * 1;
return (c%10 == 0);
}

function checklogin(str) {
  var filter=/^[\w-\ ]{4,16}$/i
  if (filter.test(str)) return true; else return false;
}

function checkpassword(str) {
  var filter=/^[\w-\ ]{6,16}$/i
  if (filter.test(str)) return true; else return false;
}

function checkdate(str) {
  var filter=/^\d\d\d\d-\d\d-\d\d$/
  if (filter.test(str)) return true; else return false;
}

function checkdate2(str) {
  var filter=/^\d{1,2}\/\d{1,2}\/\d{2,4}$/
  if (filter.test(str)) return true; else return false;
}

function check_usdate(str) {
  var filter=/^\d{1,2}\/\d{1,2}\/\d{2,4}$/
  if (filter.test(str)) return true; else return false;
}

function compare_dates(date1, date2){
  var arrDate1 = date1.split("/");
  var arrDate2 = date2.split("/");
  var rdate1= new Date(arrDate1[2],arrDate1[0]-1,arrDate1[1]);
  var rdate2= new Date(arrDate2[2],arrDate2[0]-1,arrDate2[1]);
  if ( rdate1 > rdate2) return false; else return true;
}


function compare_dates_strong(date1, date2){
  var arrDate1 = date1.split("/");
  var arrDate2 = date2.split("/");
  var rdate1= new Date(arrDate1[2],arrDate1[0]-1,arrDate1[1]);
  var rdate2= new Date(arrDate2[2],arrDate2[0]-1,arrDate2[1]);
  if ( rdate1 >= rdate2) return false; else return true;
}

function date_tousformat(date) {
  var y=date.getFullYear();
  var m=date.getMonth()+1;
  var d=date.getDate();
  if (m<10) m='0'+m;
  if (d<10) d='0'+d;
  return m+'/'+d+'/'+y;
}

function checkoccupants(str) {
  var filter=/^\d$/
  if (filter.test(str)) return true; else return false;
}

function checknumber(str) {
  var filter=/^\d+$/
  if (filter.test(str)) return true; else return false;
}

function checkprice(str) {
  var filter=/^\d*(\.\d+)?$/
  if (filter.test(str)) return true; else return false;
}

function checkanynumber(str) {
  var filter=/^[\d\-]*(\.\d+)?$/
  if (filter.test(str)) return true; else return false;
}

function openPopup(theURL,w, h) {
        var left = (screen.width - w) / 2;
        var top = (screen.height - h) / 2;
        var twindow=window.open(theURL,'_blank',"toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,left="+left+",top="+top+",width="+w+",height="+h);
        twindow.focus();
}

function replaceLocation(href) {
    window.open(href,'_self',"",false);
    return;
}

function openPage(file,target) {
    if (target != '')
        target.window.location.href = file;
    else
        window.location.href = file;
}

function ShowTip(fArg) {
  var tooltipOBJ = (document.getElementById) ? document.getElementById('tt' + fArg) : eval("document.all['tt" + fArg + "']");
  if (tooltipOBJ != null) {
    var tooltipLft = (document.body.offsetWidth?document.body.offsetWidth:document.body.style.pixelWidth) - (tooltipOBJ.offsetWidth?tooltipOBJ.offsetWidth:(tooltipOBJ.style.pixelWidth?tooltipOBJ.style.pixelWidth:380)) - 30;
    var tooltipTop = 10;
    if  (navigator.appName == 'Netscape')  {
      tooltipTop = (document.body.scrollTop>=0?document.body.scrollTop+10:event.clientY+10);
      tooltipOBJ.style.top = tooltipTop+"px";
      tooltipOBJ.style.left = tooltipLft+"px";
    } else {
      tooltipTop = (document.body.scrollTop>=0?document.body.scrollTop+10:event.clientY+10);
      tooltipTop = (document.body.scrollTop>=0?document.body.scrollTop+10:event.clientY+10);
      if ((event.clientX > tooltipLft) && (event.clientY < (tooltipOBJ.scrollHeight?tooltipOBJ.scrollHeight:tooltipOBJ.style.pixelHeight) + 10)) {
        tooltipTop = (document.body.scrollTop?document.body.scrollTop:document.body.offsetTop) + event.clientY + 20;
      }
      tooltipOBJ.style.left = tooltipLft;
      tooltipOBJ.style.top = tooltipTop;
    }
    tooltipOBJ.style.visibility = "visible";
  }
}

function HideTip(fArg) {
  var tooltipOBJ = (document.getElementById) ? document.getElementById('tt' + fArg) : eval("document.all['tt" + fArg + "']");
  if (tooltipOBJ != null) {
    tooltipOBJ.style.visibility = "hidden";
  }
}

function changeCurentPage(page_tag, curl) {
  var page_id=page_tag.options[page_tag.selectedIndex].value;
  eval("parent.location='"+curl+"&page="+page_id+"'");
}
