function windowSize(x)
{
  var myWidth = 0, myHeight = 0;
  if( typeof( window.innerWidth ) == 'number' ) {
    //Non-IE
    myWidth = window.innerWidth;
    myHeight = window.innerHeight;
  } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) {
    //IE 6+ in 'standards compliant mode'
    myWidth = document.documentElement.clientWidth;
    myHeight = document.documentElement.clientHeight;
  } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
    //IE 4 compatible
    myWidth = document.body.clientWidth;
    myHeight = document.body.clientHeight;
  }
  
  if(x == 'w') return myWidth;
  if(x == 'h') return myHeight;
}

//======== Logon scripts ===================================================

function SMClogon()
{
    document.getElementById('ads_table').style.display = "none";

	//closeAdviceDisclaimer();
	//h = (typeof window.innerHeight != 'undefined' ? window.innerHeight : document.body.offsetHeight);
	//w = (typeof window.innerWidth != 'undefined' ? window.innerWidth : document.body.offsetWidth);
	
	h = windowSize('h');
	w = windowSize('w');
	
	document.getElementById('SLOLayer').style.display = "block";
	document.getElementById('SLOLayer').style.height = h+"px";
		
	lform = document.getElementById('SLOForm');
	lform.style.display = "block";
		
	//alert(h);
	hm = (h/2)-100;
	lform.style.top = hm+"px";
	
	
	wm = (w/2)-150;
	lform.style.left = wm+"px";
}


function SMClogonClose()
{
	document.getElementById('SLOLayer').style.display = "none";
	document.getElementById('SLOForm').style.display = "none";
    
    document.getElementById('ads_table').style.display = "block";
}

//==========================================================================

function createCookie(name,value,days) {
	if (days) {
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name,"",-1);
}

//==========================================================================

function showAdviceDisclaimer()
{
	document.getElementById('ads_table').style.display = "none";
    document.getElementById('advice_disclaimer').style.display = "block";
}

function closeAdviceDisclaimer()
{
	createCookie("DISCL","1","");
	document.getElementById('advice_disclaimer').style.display = "none";
    document.getElementById('ads_table').style.display = "block";
}

function showQlinks()
{
	document.getElementById('Qlinks').style.display = "block";
	document.getElementById('QlinkButton').innerHTML = "hide quick links";
	createCookie('Qlinks','On');	
}

function hideQlinks()
{
	document.getElementById('Qlinks').style.display = "none";
	document.getElementById('QlinkButton').innerHTML = "show quick links";
	createCookie('Qlinks','Off');
}

function showHideQlinks()
{
	var h = document.getElementById('Qlinks').offsetHeight;
	
	if(document.getElementById('Qlinks').style.display == "none") showQlinks();
	else hideQlinks();
}


function qlinksSwitch()
{
	if(readCookie('Qlinks') == 'On') showQlinks();
	else hideQlinks();
}

function openUrl(url,nw)
{
	if(nw) window.open(url);
	else location=url;
}

function confirmDelete(delUrl,name)
{
	if(confirm("Delete Event:\n\n\t" + name + "\n\nAre you sure you wish to remove this event?"))
	{
		document.location = delUrl;
	}
}

function confirmDeleteEvent(delUrl,name)
{
	if(confirm("Delete Event:\n\n\t" + name + "\n\nAre you sure you wish to remove this event?\n\nYour booked seats will move to the history page \n and all dates will be deleted!!!"))
	{
		document.location = delUrl;
	}
}

function confirmDeleteDate(delUrl,name)
{
	if(confirm("Delete Date:\n\n\t" + name + "\n\nAre you sure you wish to remove this date?\n\nYour booked seats will move to the history page!!!"))
	{
		document.location = delUrl;
	}
}

function confirmDeleteClient(delUrl,name)
{
	if(confirm("Delete Client:\n\n\t" + name + "\n\nAre you sure you wish to remove this client?"))
	{
		document.location = delUrl;
	}
}

function GoBack(backUrl)
{
    document.location = backUrl;
}

//==========================================================================

//Show Booking
function show(booknr) {
    if (document.getElementById('book_'+booknr+'').style.display == 'none'){
        document.getElementById('book_'+booknr+'').style.display = 'block';
    } else {
        document.getElementById('book_'+booknr+'').style.display = 'none';
    }
}
//Hide Booking
function hide(booknr) {
    document.getElementById('book_'+booknr+'').style.display = 'none';
}
//Done Booking
function done(booknr) {
    document.getElementById('done_'+booknr+'').style.display = 'none';
}
//Error Booking
function error(booknr) {
    document.getElementById('error_'+booknr+'').style.display = 'none';
}

//Show Add Date
function dateshow() {
    document.getElementById('dateadd').style.display = 'block';
}
//Hide Add Date
function datehide(booknr) {
    document.getElementById('dateadd').style.display = 'none';
}
//Done Add Date
function dateadddone() {
    document.getElementById('dateadddone').style.display = 'none';
}
//Error Add Date
function dateadderror() {
    document.getElementById('dateadderror').style.display = 'none';
}

//Show Edit Date
function dateedit(editnr) {
    document.getElementById('dateedit_'+editnr+'').style.display = 'block';
}
//Hide Edit Date
function dateedithide(editnr) {
    document.getElementById('dateedit_'+editnr+'').style.display = 'none';
}
//Done Edit Date
function dateeditdone(editnr) {
    document.getElementById('dateeditdone_'+editnr+'').style.display = 'none';
}
//Error Edit Date
function dateediterror(editnr) {
    document.getElementById('dateediterror_'+editnr+'').style.display = 'none';
}

//Done Delete Date
function datedeletedone() {
    document.getElementById('datedeletedone').style.display = 'none';
}
//Error Delete Date
function datedeleteerror() {
    document.getElementById('datedeleteerror').style.display = 'none';
}

//Done Add Event
function eventadddone() {
    document.getElementById('eventadddone').style.display = 'none';
}
//Done Edit Event
function eventeditdone() {
    document.getElementById('eventeditdone').style.display = 'none';
}

//==========================================================================

// calculate the ASCII code of the given character
function CalcKeyCode(aChar) {
  var character = aChar.substring(0,1);
  var code = aChar.charCodeAt(0);
  return code;
}

function checkNumber(val) {
  var strPass = val.value;
  var strLength = strPass.length;
  var lchar = val.value.charAt((strLength) - 1);
  var cCode = CalcKeyCode(lchar);

  if (cCode == 46) {
    return false;
  } else if (cCode < 48 || cCode > 57 ) {
    var myNumber = val.value.substring(0, (strLength) - 1);
    val.value = myNumber;
  }

  return false;
}

//==========================================================================

function checkForm(booknr) {
name = document.getElementById('name_'+booknr+'').value;
surname = document.getElementById('surname_'+booknr+'').value;
email = document.getElementById('email_'+booknr+'').value;
cell = document.getElementById('cell_'+booknr+'').value;
seats = document.getElementById('seats_'+booknr+'').options[document.getElementById('seats_'+booknr+'').selectedIndex].value;

  if (name == "") {
hideAllErrors(booknr);
document.getElementById('nameError_'+booknr+'').style.display = "block";
  return false;
  } else if (surname == "") {
hideAllErrors(booknr);
document.getElementById('surnameError_'+booknr+'').style.display = "block";
  return false;
  } else if (email == "") {
hideAllErrors(booknr);
document.getElementById('emailError_'+booknr+'').style.display = "block";
  return false;
  } else if (!isValidEmail(email)) {
hideAllErrors(booknr);
document.getElementById('emailError_'+booknr+'').style.display = "block";
  return false;  
  } else if (cell == "") {
hideAllErrors(booknr);
document.getElementById('cellError_'+booknr+'').style.display = "block";
  return false;
    } else if (seats == "0") {
hideAllErrors(booknr);
document.getElementById('seatsError_'+booknr+'').style.display = "block";
  return false;
  }
  hideAllErrors(booknr)
  return true;
  }
 
  function hideAllErrors(booknr) {
document.getElementById('nameError_'+booknr+'').style.display = "none";
document.getElementById('surnameError_'+booknr+'').style.display = "none";
document.getElementById('emailError_'+booknr+'').style.display = "none";
document.getElementById('cellError_'+booknr+'').style.display = "none";
document.getElementById('seatsError_'+booknr+'').style.display = "none";
  }

//==========================================================================

function checkFormAdd() {
name = document.getElementById('name_add').value;
surname = document.getElementById('surname_add').value;
email = document.getElementById('email_add').value;
cell = document.getElementById('cell_add').value;
seats = document.getElementById('seats_add').options[document.getElementById('seats_add').selectedIndex].value;

  if (name == "") {
hideAllErrorsAdd();
document.getElementById('nameError').style.display = "block";
  return false;
  } else if (surname == "") {
hideAllErrorsAdd();
document.getElementById('surnameError').style.display = "block";
  return false;
  } else if (email == "") {
hideAllErrorsAdd();
document.getElementById('emailError').style.display = "block";
  return false;
  } else if (!isValidEmail(email)) {
hideAllErrorsAdd();
document.getElementById('emailError').style.display = "block";
  return false;  
  } else if (cell == "") {
hideAllErrorsAdd();
document.getElementById('cellError').style.display = "block";
  return false;
    } else if (seats == "0") {
hideAllErrorsAdd();
document.getElementById('seatsError').style.display = "block";
  return false;
  }
  hideAllErrorsAdd()
  return true;
  }
 
  function hideAllErrorsAdd() {
document.getElementById('nameError').style.display = "none";
document.getElementById('surnameError').style.display = "none";
document.getElementById('emailError').style.display = "none";
document.getElementById('cellError').style.display = "none";
document.getElementById('seatsError').style.display = "none";
  }

//==========================================================================

function isValidEmail(email, required) {
    if (required==undefined) {   // if not specified, assume it's required
        required=true;
    }
    if (email==null) {
        if (required) {
            return false;
        }
        return true;
    }
    if (email.length==0) {  
        if (required) {
            return false;
        }
        return true;
    }
    if (! allValidChars(email)) {  // check to make sure all characters are valid
        return false;
    }
    if (email.indexOf("@") < 1) { //  must contain @, and it must not be the first character
        return false;
    } else if (email.lastIndexOf(".") <= email.indexOf("@")) {  // last dot must be after the @
        return false;
    } else if (email.indexOf("@") == email.length) {  // @ must not be the last character
        return false;
    } else if (email.indexOf("..") >=0) { // two periods in a row is not valid
	return false;
    } else if (email.indexOf(".") == email.length) {  // . must not be the last character
	return false;
    }
    return true;
}

function allValidChars(email) {
  var parsed = true;
  var validchars = "abcdefghijklmnopqrstuvwxyz0123456789@.-_";
  for (var i=0; i < email.length; i++) {
    var letter = email.charAt(i).toLowerCase();
    if (validchars.indexOf(letter) != -1)
      continue;
    parsed = false;
    break;
  }
  return parsed;
}

//==========================================================================

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-18004325-1']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

//==========================================================================
