var Cookies = {
        init: function () {
                var allCookies = document.cookie.split('; ');
                for (var i=0;i<allCookies.length;i++) {
                        var cookiePair = allCookies[i].split('=');
                        this[cookiePair[0]] = cookiePair[1];
                }
        },
        create: function (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=/";
                this[name] = value;
        },
        erase: function (name) {
                this.create(name,'',-1);
                this[name] = undefined;
        }
};
Cookies.init();

function tblRatesFormCheck(f)
{
        // at least one room has to be selected for booking, else throw warning
        for (var i=0; i<f.length; i++)
        {
                if (f.elements[i].type == 'select-one' && f.elements[i].value != ''){
                        return true;
		}
        }

        alert('No room has been selected for booking.');
        return false;
}

function getTable(baseurl,f)
{
/*
        // retrieve current user settings
        var ncbkpref =  document.tblCtrlForm.p.value + ',,' +
                        document.tblCtrlForm.i.value + ',,' +
                        document.tblCtrlForm.o.value;

	// store current user settings
	Cookies.create('ncbkpref', ncbkpref, 10);
*/
        var queryStr =  "i="            + f.i.value +
                        "&o="           + f.o.value +
                        "&p="           + f.p.value;

        var url = baseurl + "?" + queryStr;

        el = document.getElementById('pricetable');

        if (el.currentStyle)
                var elHeight = "200px";
        if (document.defaultView)
                var elHeight = document.defaultView.getComputedStyle(el, '').getPropertyValue("height");

        el.innerHTML = '<div id="progress" style="display: block; height: '+elHeight+'; line-height: '+elHeight+';"><img style="vertical-align: middle;" src="/img/indicator.gif" alt="" />&nbsp;' + updateText + '</div>';

        if (window.XMLHttpRequest){
                req = new XMLHttpRequest();
                req.onreadystatechange = function () { showTable() };
                req.open("GET", url, true);
                req.send(null);
        } else if (window.ActiveXObject){
                req = new ActiveXObject("Microsoft.XMLHTTP");
                if (req) {
                        req.onreadystatechange = function () { showTable() };
                        req.open("GET", url, true);
                        req.send();
                }
        }
}
function showTable(){
        if (req.readyState == 4) {
                if (req.status == 200) {
                        // give them a chance to see that the table is changing
                        setTimeout('el.innerHTML = req.responseText', 1000);
                }
        }
}

function showFullComment(id){
	$('#oBTN-'+id).addClass("hide");
	$('#oTXT-'+id).removeClass("hide");

	return false;
}

var shown = new Array();
function toggle(i) {
        if (document.getElementById) {
                shown[i] = (shown[i]) ? false : true;
                currentdisplay = (shown[i]) ? 'block' : 'none';
                document.getElementById(i).style.display = currentdisplay;
        }
}

function adjustCc()
{
        var selCards = document.getElementById('cc_type_id');

        switch(((selCards.options[selCards.selectedIndex].innerHTML).toLowerCase()).replace(/^\s*|\s*$/g, ''))
        {
                case 'american express':
                case 'visa':
                case 'mastercard':
                        document.getElementById('cc_cvc').style.display='block';
                break;
                case 'diners club':
                        document.getElementById('cc_cvc').style.display='none';
                break;
                default:
                        // no card selected, first option shown
                        document.getElementById('cc_cvc').style.display='block';
                break;
        }
}

var livepic = 0;

function toNextPic(n)
{
	livepic += 1;
	if (livepic == album.length)
		livepic = 0;

	shiftToPic(livepic);

	return false;
}

var text="content of text here";
var delay=10;
var currentChar=1;
var destination="[not defined]";

function type()
{
  if (document.getElementById)
  {
    var dest=document.getElementById(destination);
    if (dest)// && dest.innerHTML)
    {
      dest.innerHTML=text.substr(0, currentChar);
      //dest.innerHTML+=text[currentChar-1];
      currentChar++

      if (currentChar<=text.length)
      {
        setTimeout("type()", delay);
      }
	else {
	return true;
	}
    }
  }
}

function startTyping(textParam, delayParam, destinationParam)
{
  text=textParam;
  delay=delayParam;
  currentChar=1;
  destination=destinationParam;
  type();
}


function shiftToPic(n)
{
	livepic = n;

	var pathToImage = "/img/pictures/" + album[n] + ".jpg";

	// preload me while we fadeOut
	bigPreloadedImage = new Image();
	bigPreloadedImage.src = pathToImage;

	$("#pictureObject").fadeOut("slow", function(){
		$(this)[0].src = pathToImage;
//		$("div.pictureText h4").text(title[n]);
//		startTyping(desc[n], 10, "picTextType");

		$("a.pictureStatus").each(function(a){
			$(this).removeClass("active");

			if ($(this)[0].id == n)
			$(this).addClass("active");
		});

		$(this).fadeIn("normal");
	});

	$("#pictureStatusInTitle").text(n+1);

	return false;
}

var btnConfirmText = 'Continue?';
var btnLoadingText = 'Sending...';
function onlyOnce(formNum, ask){
        if (ask == true || confirm(btnConfirmText) == true)
        {
                var theform = document.forms[formNum];
                for (i = 0; i < theform.length; i++)
                {
                        var tempobj = theform.elements[i];
                        if (tempobj.type.toLowerCase() == "submit")
                        {
                                tempobj.disabled = true;
                                tempobj.value = btnLoadingText;
                                return true;
                        }
                }
        }
        return false;
}

function findPosX(obj)
  {
    var curleft = 0;
    if(obj.offsetParent)
        while(1)
        {
          curleft += obj.offsetLeft;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.x)
        curleft += obj.x;
    return curleft;
  }


  function findPosY(obj)
  {
    var curtop = 0;
    if(obj.offsetParent)
        while(1)
        {
          curtop += obj.offsetTop;
          if(!obj.offsetParent)
            break;
          obj = obj.offsetParent;
        }
    else if(obj.y)
        curtop += obj.y;
    return curtop;
  }

