/* JavaScript Document */
loading.push('checkCommand();');

var section = document.location.href.replace(/^.*(&|\?)section=([^&]*).*$/g, '$2');
var module  = document.location.href.replace(/^.*(&|\?)module=([^&]*).*$/g, '$2');


var maxBannerCnt = 5;
function changePic(cnt1)
{
	$$('.infront').each(function(el){
		el.removeClass('infront');
		el.setStyles({'width': '0', 'height': '0'});
		var fx = new Fx.Style(el, 'opacity', {duration: 0}).set(1);
	});
	var pic = $$('.topBanner');
	var p1 = pic[cnt1];
	var cnt2 = (cnt1 >= maxBannerCnt - 1) ? 0 : cnt1 + 1;
	var p2 = pic[cnt2];
	
	p1.setStyles({'width': '933px', 'height': '273px', 'visibility': 'visible', 'opacity': 1});
	
	var fx = new Fx.Style(p1, 'opacity', {duration: 2000});
	fx.start(1, 0);
	$('topBanner_div').setStyle('background-image', 'url('+p2.src+')');
	p1.addClass('infront');
	setTimeout("changePic("+cnt2+");", 8000);
}
	
function setHeight()
{
		var mainh = $('mainboxHeight').getSize().size.y;
		var sideh = $('sidebarHeight').getSize().size.y;
		if(sideh > mainh){
			$('mainboxHeight').setStyle('height', sideh+'px');
			$('mainboxHeight').setStyle('min-height', sideh+'px');
			if (window.ie){
				$('mainboxHeight').setStyle('height', 'expression(this.scrollHeight>'+(sideh+1)+'?"'+sideh+'px":"auto")');
			}
		}
		
}

function gotoLink(href)
{
	document.location.href = href;
}
function addRecord(sender, obj)
{
	obj = $(obj);
	var clone = obj.clone();
	clone.injectBefore($(sender));
	clone.id = 'temp_cloned';
	$$('#temp_cloned INPUT, #temp_cloned SELECT, #temp_cloned TEXTAREA').each(function(el){
		el.name = el.name.replace(/^~/, '');
	});
	clone.id = null;
	clone.removeClass('hidden');
}
function localAct(action, obj, id)
{
	switch(action) {
		case 'detail' :
			if( typeof(a_window) != 'undefined') a_close(a_window, 'edit_box');			
			var id = id ? id : findID(obj);
			$('edit_box').style.top =  window.getSize().scroll.y+4+'px';
			$('edit_box').style.left = Math.max((window.getSize().size.x-$('edit_box').getSize().size.x)/2, 8)+'px';
			$('loading').removeClass('hidden');
			new ajax('index.php?section='+section+'&module='+module+'&cmd=detail&lang=en&id='+id, { update:'edit_box', loading:null, onComplete:hideLoading }).request();
			break;
		case 'msg' :
		case 'replay' :
		case 'forward' :
			if( typeof(a_window) != 'undefined') a_close(a_window, 'edit_box');			
			var id = id ? id : findID(obj);
			$('edit_box').style.top =  window.getSize().scroll.y+4+'px';
			$('edit_box').style.left = Math.max((window.getSize().size.x-$('edit_box').getSize().size.x)/2, 8)+'px';
			$('loading').removeClass('hidden');
			new ajax('index.php?section='+section+'&module='+module+'&cmd=edit&lang=en&btn='+action+'&id='+id, { update:'edit_box', loading:null, onComplete:hideLoading }).request();
			break;
	}
}
function changeDisplayImage(imagecontainer, imageid)
{
	$(imagecontainer).src = $(imagecontainer).src.replace(/pic=\d*/, 'pic='+imageid);
}
function previousImageBar() {
	if(CurrentImageBarNumber>1) {
		$('ImageBar'+CurrentImageBarNumber).style.display = 'none';
		CurrentImageBarNumber--;
		$('ImageBar'+CurrentImageBarNumber).style.display = '';
	}
}
function nextImageBar() {
	if($('ImageBar'+(CurrentImageBarNumber+1))) {
		$('ImageBar'+CurrentImageBarNumber).style.display = 'none';
		CurrentImageBarNumber++;
		$('ImageBar'+CurrentImageBarNumber).style.display = '';
	}
}
function checkTextDOM(dom1)
{
	if(dom1.value=="") {
		dom1.className = "RequiredField";
		return false;
	}
	else {
		dom1.className = "";
		return true;
	}
}
function checkFormItem(dom1)
{
	//you must set form onsubmit="checkFormItem(this);"
	//and set onblur items...
	//if need check before send form onblur="checkFormItem(this);"
	//else onblur="" that goal is check this item on onsubmit
	var retflag = true;
	if(dom1.tagName=="FORM") {
		for(i=dom1.elements.length-1;i>=0;i--) {
			try{
				if(dom1.elements[i].onblur!=null) {
					if(dom1.elements[i].id=="xpassword2") {
						if(!checkFormPassword(dom1.elements[i-1], dom1.elements[i])) {
							retflag = false;
							dom1.elements[i].focus();
						}
					} else if(dom1.elements[i].id=="Email") {
						if(!checkEmail(dom1.elements[i])) {
							retflag = false;
							dom1.elements[i].focus();
						}
					} else {
						if(!checkFormItem(dom1.elements[i])) {
							retflag = false;
							dom1.elements[i].focus();
						}
					}
				}
			}catch(e){}
		}
	} else if(dom1.tagName=="INPUT" || dom1.tagName=="TEXTAREA") {
		if(dom1.value=="") {
			dom1.className = "RequiredField";
			retflag = false;
		}
		else {
			dom1.className = "";
		}
	} else if(dom1.tagName=="SELECT") {
		if(dom1.selectedIndex==0) {
			dom1.className = "RequiredField";
			retflag = false;
		}
		else {
			dom1.className = "";
		}
	}
	return retflag;
}
function checkEmail(dom1)
{
	var retflag = true;
	var str = dom1.value;
	var at="@"
	var dot="."
	var lat=str.indexOf(at)
	var lstr=str.length
	var ldot=str.indexOf(dot)
	if (str.indexOf(at)==-1) retflag = false;
	if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr) retflag = false;
	if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr) retflag = false;
	if (str.indexOf(at,(lat+1))!=-1) retflag = false;
	if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot) retflag = false;
	if (str.indexOf(dot,(lat+2))==-1) retflag = false;
	if (str.indexOf(" ")!=-1) retflag = false;
	if(retflag)
		dom1.className = "";
	else
		dom1.className = "RequiredField";
	return retflag;
}

function checkFormPassword(dom1, dom2)
{
	var retflag = true;
	if(checkFormItem(dom2)) {
		if(dom1.value==dom2.value){
			dom2.className = "";
		} else {
			dom2.className = "RequiredField";
			retflag = false;
		}
	} else {
		retflag = false;
	}
	return retflag;
}


function setSubHotel(obj, data)
{	
	obj = $(obj);
	try {
		var id = obj.name.replace(/^.*\[row(\d+)\].*$/, '$1');
		var src = $('hotelItem_'+id).getElementsBySelector('.group1')[0];
		var des = $('hotelItem_'+id).getElementsBySelector('.group2')[0];
	} catch(e){};
	if(!src || !des || !data) return;
	while(des.options[0]){
		des.options[0] = null;
	};
	data = data[src.value];
	for(el in data){
		des.options[des.options.length] = new Option(data[el], el);					
	};
}
function setSubAtt(obj, data)
{	
	obj = $(obj);
	var id = obj.name.replace(/^.*\[row(\d+)\].*$/, '$1');
	var src = $('tourItem_'+id).getElementsBySelector('.group1')[0];
	var des = $('tourItem_'+id).getElementsBySelector('.group2')[0];
	if(!src || !des || !data) return;
	while(des.options[0]){
		des.options[0] = null;
	};
	data = data[src.value];
	for(el in data){
		des.options[des.options.length] = new Option(data[el], el);					
	};
}
function duplicate_row(obj) {
	var row1 = $(obj).getParent().getParent();
	var row2 = row1.clone();
	cnt = 1
	row2.injectAfter(row1);
	$$(".flight").each(function(el){
		el.getFirst().innerHTML = cnt;
		el.getElementsBySelector("input, select").each(function(el){
			el.id = el.id.replace(/\[\d+\]$/, '['+cnt+']');
			el.name = el.id;
		});			
		cnt++;
	});
	row2.getElementsBySelector("input").each(function(el){
		el.value = '';
	});
	row2.getElementsBySelector("select").each(function(el){
		el.selectedIndex = 0;
		el.disabled = 0;
	});
}

function delete_row(obj) {
	$(obj).getParent().getParent().remove();
}

function checkNight(obj) {
	var date1 = $(obj).getParent().getParent().getElementsBySelector('.checkin')[0].value;
	var date2 = $(obj).getParent().getParent().getElementsBySelector('.checkout')[0].value;
	if(!date1 || !date2) return;
	window.obj = obj;
	new ajax('index.php?section=agency&module=order&cmd=calc&date1='+date1+'&date2='+date2, {evalScripts:true}).request();
}

function checkDateAdmin(selectedDate) {
	var currdate = new Date();
	currdate.setSeconds(0);
	currdate.setMinutes(0);
	currdate.setHours(0);
	currentdate = Date.parse(currdate);
	var seldate = Date.parse(selectedDate);
	if(currentdate > seldate) {
		alert('You must be enter date greater than or equal to currentdate.');
		$$('.errDate').each(function(el){
			el.focus();
			el.value = "";
		});
	}
}

function doEditEx(obj, id, exmodule, extraCmd)			
{
	if(typeof(exmodule)!='undefined' && exmodule!=null) { 
		module = exmodule;
		if($('module')) $('module').value = module;
	}
	var lang = document.location.href.split('lang=')[1].split('&')[0].split('#')[0];
	if( typeof(a_window) != 'undefined') a_close(a_window, 'edit_box');
	extraCmd = (typeof(extraCmd) == 'undefined' || !extraCmd)?'':'&'+extraCmd;
	var cmd = id ? 'edit' : 'new';
	var id = id ? id : findID(obj);
	$('edit_box').style.top =  window.getSize().scroll.y+4+'px';
	$('edit_box').style.left = Math.max((window.getSize().size.x-$('edit_box').getSize().size.x)/2, 8)+'px';
	//resizeLoading();
	$('loading').removeClass('hidden');
//	alert('index.php?section='+section+'&module='+module+'&cmd='+cmd+'&id='+id+extraCmd);
	new ajax('index.php?section='+section+'&module='+module+'&cmd='+cmd+'&lang='+lang+'&id='+id+extraCmd, { update:'edit_box', loading:null, onComplete:hideLoading }).request();
}

function checkCommand()
{
	var cmd = document.location.href.split('#')[1];
	var id=0;
	if(!cmd)
		return;
	if(cmd.indexOf('_') != -1){
		id = cmd.split('_')[0];
		cmd = cmd.split('_')[1];
	}else{
		id = cmd;
		cmd = null;
	}
	var module = document.location.href.split('module=')[1].split('&')[0].split('#')[0];
//	var section = document.location.href.split('section=')[1].split('&')[0];
	if(cmd == "msg"){
		new ajax('index.php?section='+section+'&module=msg&cmd=edit&btn=msg&id='+id, { update:'edit_box', loading:null, onComplete:hideLoading }).request();
	}
	else
		doEditEx(null, id, module, cmd);
}

function setSubFlight(obj, data)
{	
	obj = $(obj);
	try {
		var src = $('flightdate');
		var des = $('flightlist');
	} catch(e){};
	if(!src || !des || !data) return;
	while(des.options[0]){
		des.options[0] = null;
	};
	data = data[src.value];
	if(typeof(data)=='undefined') des.options[des.options.length] = new Option('No flight is available', 0);
	for(el in data){
		des.options[des.options.length] = new Option(data[el], el);
	};
}

function getSelectDateFlight(Value)
{
	var d = new Date(Value);
	var date = d.getFullYear()+''+(Number(d.getMonth())+1)+''+d.getDate();
	$('flightdate').value = date;
	setSubFlight($('flightdate'),flightdetail);
	$('flightdate').value = d.getFullYear()+'-'+(Number(d.getMonth())+1)+'-'+d.getDate();
}
function openAnswer(id)
{
	var name = "answer_"+id;
	$$('.slide').each(function(el){
		if(el == $(name)) {
			el.myfx.toggle();
			setTimeout(function(){setHeight();}, 500);	
			el.getParent().getPrevious().removeClass('GreenArrow');
			el.getParent().getPrevious().addClass('BrownArrow');
		}else {
			//el.myfx.slideOut();			
			el.getParent().getPrevious().removeClass('BrownArrow');	
			el.getParent().getPrevious().addClass('GreenArrow');	
			$('mainboxHeight').style.height='';
		}
	});
}

function hideAnswer()
{
	$$('.slide').each(function(el){
		if(!el.myfx)								
			el.myfx = new Fx.Slide(el);
		el.myfx.hide();
	});
}
function setHeightImg()
{
	var maximgh = 0;		
	$$('.ImgHeight').each(function(el) {
		if(maximgh < el.getSize().size.y) {
			maximgh = el.getSize().size.y+'px';
		}
		el.setStyle('height', maximgh);
	});
}
function setHeightText()
{
	var maxtexth = 0;		
	$$('.TextHeight').each(function(el) {
		if(maxtexth < el.getSize().size.y) {
			maxtexth = el.getSize().size.y+'px';
		}
		el.setStyle('height', maxtexth);
	});
}
function showTab(id)
{
	$$('.tab, .tablink').each(function(el){
		if(el.hasClass('tab'))
			el.addClass('hidden');
		else
			el.setStyle('color','#333333');

	});
	//$('tabdiv'+id).removeClass('hidden');	
	//$('link'+id).addClass('active');
	//$('link'+id).setStyle('color','#af006b');
	
}
function openAttraction(id)
{
	var name = "adetail_r_"+id;
	
	$$('.sliderArrow').each(function(e3){
		e3.removeClass('openSlide');
	});
	$$('.taDetail').each(function(el){
		if(el == $(name)) {
			el.myfx.toggle();
			if(!el.myfx.open){
				$('test'+id).addClass('openSlide');	
				//setTimeout(function(){setHeight();}, 500);
			}
		} else {
			if(el.myfx.open)
				el.myfx.slideOut();			
		}
	});	
}

function hideAttraction()
{
	$$('.taDetail').each(function(el){
		if(!el.myfx)								
			el.myfx = new Fx.Slide(el);
		el.myfx.hide();
	});
	
}
function openGallery(id)
{
	var name = "gdetail_"+id;
	$$('.galleryDetail').each(function(el){
		if(el == $(name)) {
			el.myfx.toggle();			
				setTimeout(function(){setHeight();}, 500);			
		}else {
			el.myfx.slideOut();
			$('mainboxHeight').style.height='';
		}
	});
}

function hideGallery()
{
	$$('.galleryDetail').each(function(el){
		if(!el.myfx)								
			el.myfx = new Fx.Slide(el, {duration: 500});
		el.myfx.hide();
	});
}
function setMargin()
{
	text = $('toptext').getSize().size.y;
	logo = $('toplogo').getSize().size.y;
	margin = logo - text;
	$('toptext').setStyle('margin-top',margin+'px');
	
}
function doGallery(dir){
	$('contgal').getParent().setStyle('height', $('contgal').getSize().size.y+'px');
	$('contgal').setStyle('position', 'absolute');
	var xwidth = $('contgal').getSize().size.x - (count*60);
	
	if(dir=='next'){
		pnow += 60;
		if(pnow>=xwidth) pnow = xwidth;
	}else if(dir=='previous'){
		pnow -= 60;
		if(pnow<=0) pnow = 0; 
	} else {
		doGallery.delay(100);
		return;
	}
	gallfx.start(-pnow);
}
function changeImage(img)
{
	img = $(img);
	$('image').src = img.src.replace('w=40&h=35', 'w=222&h=269');
	newhr = $('image').src.match(/pic=[0-9]+/);
	$('image').getParent().href = $('image').getParent().href.replace('w=40&h=35', 'w=222&h=269').replace(/pic=[0-9]+/,newhr);
	if($$('.thumbnail_active') && $$('.thumbnail_active')[0]) 
		$$('.thumbnail_active')[0].removeClass('thumbnail_active');
	img.addClass('thumbnail_active');
}
   function showImg(id){
		
		$('largeImg').setProperty('src',$('Loading').src);
		
		var img = new Image();		
		
		img.addEvent('load', function(){
			$('largeImg').src = this.src;
			w = window.getSize().size.x;
			w = (w-$('largeDiv').getSize().size.x)/2;	
			//$('largeDiv').style.left = w+'px';
		}.bind(img));
		img.src = 'showpic.php?mw=700&mh=600&dir=map/pattaya&pic=p'+id+'.jpg';
		
		w = window.getSize().size.x;
		w = (w-$('largeDiv').getSize().size.x)/2;	
		$('largeDiv').style.left = w+'px';
		
		$('largeDiv').style.top =  window.getSize().scroll.y+10+'px';
		var myEffect = $('largeDiv').effect('opacity', {duration: 2000, transition: Fx.Transitions.sineInOut});
		myEffect.start(0, 1);
		
		newDiv = new Element('div').setProperty('id', 'loadingBackground').injectInside(document.body);
		divOpacity = newDiv.effect('opacity', {duration: 2000}).hide();
		divOpacity.start(0, 0.8);
		var h = window.getScrollHeight()+'px'; 
		var w = window.getScrollWidth()+'px';
		newDiv.setStyles({'background-color':'#000', 'position': 'absolute', 'top': '0px', 'left': '0px', 'height': h, 'width': w });
		
		
		setTimeout("$('Loading').setStyle('visibility','hidden')",1000);
   }

