function checkForm(frm){
	err='';

	if(frm.elements['address'].value.length<3)
		err+="Please fill in \"Address\" field !\r\n";
	var rx=new RegExp("^[\\w\.=-]+@[\\w\\.-]+\\.[a-z]{2,4}$");
	if(!rx.test(frm.elements['email'].value))
		err+="Please fill in \"Owner's Email Address\" field !\r\n";
	if(frm.elements['name'].value.length<3)
		err+="Please fill in \"Owner's Name\" field !\r\n";
	if(frm.elements['phone'].value.length<4)
		err+="Please fill in \"Owner's Daytime - Telephone Number\" field !\r\n";
	if(frm.elements['comments'].value.length<3)
		err+="The field \"Comments\" cannot be empty !\r\n";

	if(err!=''){
		alert(err);
		return false;
	}
	else
		return;
}

function checkRequests(frm){
	err='';

	if(frm.elements['fname'].value.length<3)
		err+="Please fill in \"First Name\" field !\r\n";
	if(frm.elements['lname'].value.length<3)
		err+="Please fill in \"Last Name\" field !\r\n";
	var rx=new RegExp("^[\\w\.=-]+@[\\w\\.-]+\\.[a-z]{2,4}$");
	if(!rx.test(frm.elements['email'].value))
		err+="Please fill in \"Email Address\" field !\r\n";
	if(frm.elements['phone_number'].value.length<3)
		err+="Please fill in \"Contact Number\" field !\r\n";
	if(frm.elements['move_in'].value.length<4)
		err+="Please pick a date for the \"Move in date\" field !\r\n";
	if(frm.elements['move_out'].value.length<4)
		err+="Please pick a date for the \"Move out date\" field !\r\n";

	if(err!=''){
		alert(err);
		return false;
	}
	else
		return;
}

function open_media(img, w, h){
	ww=(w==0)?200:w;
	wh=(h==0)?200:h;
	scr=window.open(base_href+'pic.php?img='+img+'&w='+w+'&h='+h, 'pic', 'height='+wh+',width='+ww+',top=100 ,left='+((screen.width-ww)/2)+',scrollbars=0, resizable=1');
	scr.focus();
}

function trim(strText)
{
    while (strText.substring(0,1) == ' ')
	strText = strText.substring(1, strText.length);

    while (strText.substring(strText.length-1,strText.length) == ' ')
	strText = strText.substring(0, strText.length-1);

    return strText;
}

function doValidate(){
	var s="";
	if(trim(document.frmData.fname.value)==""){
		s=s+"The field \"First Name\" is empty!\r\n";
	}
	if(trim(document.frmData.lname.value)==""){
		s=s+"The field \"Last Name\" is empty!\r\n";
	}
	var rx=new RegExp("^[\\w\.=-]+@[\\w\\.-]+\\.[a-z]{2,4}$");
	if(!rx.test(document.frmData.email.value)){
		s=s+"Please, verify your email address!\r\n";
	}
	if(trim(document.frmData.comments.value)==""){
		s=s+"The field \"Comments\" cant be empty!\r\n";
	}
	if(s!=""){
		alert(s);
		return;
	}
	document.frmData.submit();
}

function doSendEmail(){
	var s="";
	if(trim(document.frmData.yname.value)==""){
		s=s+"The field \"Your Name\" is empty!\r\n";
	}
	var rx=new RegExp("^[\\w\.=-]+@[\\w\\.-]+\\.[a-z]{2,4}$");
	if(!rx.test(document.frmData.yemail.value)){
		s=s+"Please, verify \"Your Email Address\"!\r\n";
	}
	if(trim(document.frmData.rname.value)==""){
		s=s+"The field \"Recipient's Name\" is empty!\r\n";
	}
	var rx=new RegExp("^[\\w\.=-]+@[\\w\\.-]+\\.[a-z]{2,4}$");
	if(!rx.test(document.frmData.remail.value)){
		s=s+"Please, verify \"Recipient's Email Address\"!\r\n";
	}
	if(s!=""){
		alert(s);
		return;
	}
	document.frmData.submit();
}

function getPdf(txt)
{
	newwindow=window.open(base_href+'export_pdf.php?q='+txt,'popu','width=1, height=1, height=200,width=150');
	if (window.focus)
	{
		newwindow.focus();
	}
	return false;
}

var Lightbox = {
	lightboxType : null,
	lightboxCurrentContentID : null,

	showBoxString : function(content, boxWidth, boxHeight){
		this.setLightboxDimensions(boxWidth, boxHeight);
		this.lightboxType = 'string';
		var contents = $('boxContents');
		contents.innerHTML = content;
		this.showBox();
		return false;
	},

	showBoxImage : function(href) {
		this.lightboxType = 'image';
		var contents = $('boxContents');
		var objImage = document.createElement("img");
		objImage.setAttribute('id','lightboxImage');
		objImage.onclick = function(e) {	// close Lightbox is user clicks shadow overlay
			if (!e) var e = window.event;
			var clickObj = Event.element(e).id;
			if ( clickObj == 'lightboxImage') {
				Lightbox.hideBox();
			}
		};
		contents.appendChild(objImage);

		var objOverlay=$('overlay');
		objOverlay.onclick = function() { Lightbox.hideBox(); }

		imgPreload = new Image();
		imgPreload.onload=function(){
			objImage.src = href;
			Lightbox.showBox();
			$('boxContents').innerHTML+='<div class="links">';
			if(Lightbox.hasPrev)
				$('boxContents').innerHTML+='<span style="float:left;"><a href="javascript://" onClick="moveImg(-1);"><b>&laquo; Previous</b></a></span>';
			if(Lightbox.hasNext)
				$('boxContents').innerHTML+='<span style="float:right;"><a href="javascript://" onClick="moveImg(1);"><b>Next &raquo;</b></a></span>';
			$('boxContents').innerHTML+='</div>';
		}

		imgPreload.src = href;
		return false;
	},

	showBoxByID : function(id, boxWidth, boxHeight) {
		this.lightboxType = 'id';
		this.lightboxCurrentContentID = id;
		this.setLightboxDimensions(boxWidth, boxHeight);
		var element = $(id);
		var contents = $('boxContents');
		contents.appendChild(element);
		Element.show(id);
		this.showBox();
		return false;
	},

	showBoxByAJAX : function(href, boxWidth, boxHeight) {
		this.lightboxType = 'ajax';
		this.setLightboxDimensions(boxWidth+20, boxHeight+50);
		//var contents = $('boxContents');
		//var myAjax = new Ajax.Updater(contents, href, {method: 'get'});
		var fr=document.createElement("iframe");
		fr.src=href;
		fr.style.height=boxHeight+'px';
		fr.style.width=boxWidth+'px';
		$('boxContents').appendChild(fr);

		this.showBox();
		return false;
	},

	setLightboxDimensions : function(width, height) {
		var windowSize = this.getPageDimensions();
		if(width) {
			if(width < windowSize[0]) {
				$('box').style.width = width + 'px';
			} else {
				$('box').style.width = (windowSize[0] - 50) + 'px';
			}
		}
		if(height) {
			if(height < windowSize[1]) {
				$('box').style.height = height + 'px';
			} else {
				$('box').style.height = (windowSize[1] - 50) + 'px';
			}
		}
	},


	showBox : function() {
		Element.show('overlay');
		this.center('box');
		return false;
	},


	hideBox : function(){
		var contents = $('boxContents');
		if(this.lightboxType == 'id') {
			var body = document.getElementsByTagName("body").item(0);
			Element.hide(this.lightboxCurrentContentID);
			body.appendChild($(this.lightboxCurrentContentID));
		}
		contents.innerHTML = '';
		$('box').style.width = null;
		$('box').style.height = null;
		Element.hide('box');
		Element.hide('overlay');
		return false;
	},

	// taken from lightbox js, modified argument return order
	getPageDimensions : function(){
		var xScroll, yScroll;

		if (window.innerHeight && window.scrollMaxY) {
			xScroll = document.body.scrollWidth;
			yScroll = window.innerHeight + window.scrollMaxY;
		} else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
			xScroll = document.body.scrollWidth;
			yScroll = document.body.scrollHeight;
		} else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
			xScroll = document.body.offsetWidth;
			yScroll = document.body.offsetHeight;
		}

		var windowWidth, windowHeight;
		if (self.innerHeight) {	// all except Explorer
			windowWidth = self.innerWidth;
			windowHeight = self.innerHeight;
		} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
			windowWidth = document.documentElement.clientWidth;
			windowHeight = document.documentElement.clientHeight;
		} else if (document.body) { // other Explorers
			windowWidth = document.body.clientWidth;
			windowHeight = document.body.clientHeight;
		}

		// for small pages with total height less then height of the viewport
		if(yScroll < windowHeight){
			pageHeight = windowHeight;
		} else {
			pageHeight = yScroll;
		}

		// for small pages with total width less then width of the viewport
		if(xScroll < windowWidth){
			pageWidth = windowWidth;
		} else {
			pageWidth = xScroll;
		}
		arrayPageSize = new Array(windowWidth,windowHeight,pageWidth,pageHeight)
		return arrayPageSize;
	},

	center : function(element){
		try{
			element = document.getElementById(element);
		}catch(e){
			return;
		}
		var windowSize = this.getPageDimensions();
		var window_width  = windowSize[0];
		var window_height = windowSize[1];

		$('overlay').style.height = windowSize[3] + 'px';

		element.style.position = 'absolute';
		element.style.zIndex   = 9999;

		var scrollY = 0;

		if ( document.documentElement && document.documentElement.scrollTop ){
			scrollY = document.documentElement.scrollTop;
		}else if ( document.body && document.body.scrollTop ){
			scrollY = document.body.scrollTop;
		}else if ( window.pageYOffset ){
			scrollY = window.pageYOffset;
		}else if ( window.scrollY ){
			scrollY = window.scrollY;
		}

		var elementDimensions = Element.getDimensions(element);
		var setX = ( window_width  - elementDimensions.width  ) / 2;
		var setY = ( window_height - elementDimensions.height ) / 2 + scrollY;

		setX = ( setX < 0 ) ? 0 : setX;
		setY = ( setY < 0 ) ? 0 : setY;

		element.style.left = setX + "px";
		element.style.top  = setY + "px";
		Element.show(element);
	},

	init : function() {
		var lightboxtext = '<div id="overlay" style="display:none"></div>';
		lightboxtext += '<div id="box" style="display:none">';
		lightboxtext += '<img id="close" src="images/close.gif" onClick="Lightbox.hideBox()" alt="Close" title="Close this window" />';
		lightboxtext += '<div id="boxContents"></div>';
		lightboxtext += '</div>';
		var body = document.getElementsByTagName("body").item(0);
		new Insertion.Bottom(body, lightboxtext);
	},

	currentIndex: 0,
	hasNext: true,
	hasPrev: false
}

function popup_img(idx){
	Lightbox.hideBox();
	Lightbox.currentIndex=idx;
	Lightbox.hasNext=Lightbox.currentIndex<imgs.length-1;
	Lightbox.hasPrev=Lightbox.currentIndex>0;
	Lightbox.showBoxImage(base_href+'images/managed/full/'+imgs[idx]);
}

function moveImg(dir){ // dir=-1|1
	if(dir==1)
		var idx=Lightbox.currentIndex>=imgs.length-1?0:Lightbox.currentIndex+1;
	else
		var idx=Lightbox.currentIndex==0?imgs.length-1:Lightbox.currentIndex-1;
	popup_img(idx);
}