// (c) Albert Jindra Trebla

var activetab='residential';

var thumbpage=0;
var thumbpages=0;
var thumheight=0;
var thlist;

var accordion;

function thumpaging(x) {
// set buttons:
thumbpage=x;

var alltb=$$('#thumbpaging a');
alltb.each(function(el) {
el.removeClass('act');
});


min=12*x;
max=min+12;
//console.log("min="+min+ " | max="+max);
var list = $$('#thumbs a[rel]');
var i=0;
list.each(function(element) {
//console.log("min="+min+ " | max="+max+" | i="+i+" |?"+((i>=min) && (i<max))*1);
//console.log(element);
if ( !element.hasClass('pagingnav')) {
if ((i>=min) && (i<max)) element.removeClass('hideit'); else element.addClass('hideit');
}
i++;

});

$$('#thumbpaging a')[x].addClass('act');

//e = new Event(e).stop(); 
//console.log(i);
return 0;

}


function menu(x) {
// make a tabs

//make land
activetab=x;
var perpage=10;

// change X menu:
var cat = $$('#categorymenu a');
cat.each(function(el) {
if (el.rel==x) el.addClass('active'); else el.removeClass('active');
});



var tabs = $$('#tabsource li.'+x);
//console.log(tabs.length);
var pages=Math.ceil(tabs.length/perpage);


// reset
var acor=$('accordion').empty();
var tabnav=$('tabnav').empty();

//for(var i=0;i<pages;i++) {
$('tabsource').setStyle('display','none');
//$('menubottom').setStyle('display','none');

//console.log("pages"+pages+"\nprops:"+tabs.length);

page=0;
var lines=0;
var blocks=new Array();
//create a 
for(var i=0;i<pages;i++) {
ul=new Element('ul').inject(acor);
blocks[i]=ul;
}


tabs.each(function(el) {
if(lines==perpage) {
lines=0;page++; 
// bold=new Element('b').appendText(page);
// bold.inject(tabnav);
}
var clone =el.clone().inject(blocks[page]);
lines++;

});

/*
for (var el=0;el<perpage;el++) {
var clone = tabs[(i*perpage+el)].clone();

}

*/

//}

var tabs = $$('#accordion ul');


var h="<span>"+x+":</span> ";
h="";
var start=0;
var props=0;
var panel=0;
tabs.each(function(t) {
h+='<b><span>'+(props+1);
props+=t.getElements('li').length;
h+=' - '+(props)+'</span></b>';
if (t.getElements('li.active').length==1) start=panel;
panel++;
});

$E('#tabnav').innerHTML=h+"<div class=\"clearer exminus\"></div>";



accordion = new Accordion('#tabnav b', '#accordion ul', {
	opacity: false,
	onActive: function(toggler, element){
		toggler.addClass('active');
		//setStyle('color', '#ff3300');
	},
 
	onBackground: function(toggler, element){
		toggler.removeClass('active');
		//setStyle('color', '#222');
	}
}, $('accordion'));
 
accordion.display(start);

var list = $$('#menu li');
list.each(function(element) {
 if (!element.hasClass("active")) {
// console.log(element.hasClass="active");
	var fx = new Fx.Styles(element, {duration:200, wait:false});
 
 	element.addEvent('click', function(){
		document.location.href=this.getFirst().href;
		//console.log(this);
		//console.log(this.getFirst().href);
	});

 
	element.addEvent('mouseenter', function(){
		fx.start({
			'margin-left': 0,
			'padding-right': 30,
			'background-color': '#F28B44'
		});
	});
 
	element.addEvent('mouseleave', function(){
		fx.start({
			'margin-left': 10,
			'padding-right': 20,
			'background-color': '#6F6F6F'
		});
	});
	}
 
});
void(0);
return false;
}



// --- action ----
window.addEvent('domready', function(){

//console.log($$('#thumbs a').length);


if ($('thumbs')) {

thumheight=$('thumbs').getSize().size.y-4;
thumheightplus=thumheight+6;

var list = $$('#thumbs a[rel]');
list.each(function(element) {

	var ifx = new Fx.Styles(element, {duration:200, wait:false});
 
	element.addEvent('mouseenter', function(){
$('captions').innerHTML=element.title;
		ifx.start({
			'opacity': .7
		});
	});
 
	element.addEvent('mouseleave', function(){
	$('captions').innerHTML=$E('#propety_photo a').title;
		ifx.start({
			'opacity': 1
		});
	});
	
 
});

	// LETS TRY PAGING
	
if(list.length>12) {
//console.log(list.length);
	thumheightplus+=24;
var thumbpaging = new Element('div', {'id': 'thumbpaging'});	
	thumbpaging.innerHTML="thumbnail pages: ";
thumbpages=Math.ceil((list.length)/12);	

for(i=0;i<thumbpages;i++) {
thumbpaging.innerHTML+="<a href=\"#\" onclick=\"void(thumpaging("+i+"));return false\" class=\"pagingnav\"> "+(i+1)+" </a>&nbsp;&nbsp;";

}
	
thumbpaging.injectTop($('thumbs'));	
$('thumbpaging').style.display="none";
$$('#thumbpaging a')[0].addClass("act");

element=$('thumbpaging');
// ROLL OVER FOR PAGING:
	var thbfx = new Fx.Styles(element, {duration:200, wait:false});
 
	element.addEvent('mouseenter', function(){
		thbfx.start({
			'opacity': 1
		});
	});
 
	element.addEvent('mouseleave', function(){
		thbfx.start({
			'opacity': .8
		});
	});



}
if(list.length>3) {
	var thumbfx = new Fx.Styles($('thumbs'), {duration:200, wait:false});

	$('thumbs').addEvent('mouseenter', function(){
		if ($('thumbpaging')) $('thumbpaging').style.display="block";

		thumbfx.start({
			'width': 650,
			'margin-left':3,
			'height': thumheightplus
		});
	});
 
	$('thumbs').addEvent('mouseleave', function(){
	iedest=(window.ie)? 4:0;
	if ($('thumbpaging')) $('thumbpaging').style.display="none";
		thumbfx.start({
			'width': 158,
			'margin-left':(489-iedest),
			'height': thumheight
		});
	});
	}
	
	
	
}



var list = $$('#categorymenu a');
if ($E('#categorymenu a')) {


list.each(function(el) {
el.addEvent('click', function(){
		menu(this.rel);
		//console.log(this);
		//console.log(this.getFirst().href);
	});
});

if (!($$('#categorymenu a.active')[0])) {
$$('#categorymenu a')[0].addClass('active');
}

activetab=$$('#categorymenu a.active')[0].rel;


menu(activetab);

}


}); 





// MAP ONLY ON LOAD:

window.addEvent('load', function(){
// GMAP -----------------
if ( $('gmap')) {  


//load gmap asset


if (GBrowserIsCompatible()) { 

    var map;
    var geo;
    var reasons=[];
var marker;

      map = new GMap(document.getElementById("gmap"));
      map.addControl(new GLargeMapControl());
      map.addControl(new GMapTypeControl());
      map.setCenter(new GLatLng(20,0),2);
 /*     
      // ====== Create a Client Geocoder ======
      geo = new GClientGeocoder(); 

      // ====== Array for decoding the failure codes ======
      reasons[G_GEO_SUCCESS]            = "Success";
      reasons[G_GEO_MISSING_ADDRESS]    = "Missing Address: The address was either missing or had no value.";
      reasons[G_GEO_UNKNOWN_ADDRESS]    = "Unknown Address:  No corresponding geographic location could be found for the specified address.";
      reasons[G_GEO_UNAVAILABLE_ADDRESS]= "Unavailable Address:  The geocode for the given address cannot be returned due to legal or contractual reasons.";
      reasons[G_GEO_BAD_KEY]            = "Bad Key: The API key is either invalid or does not match the domain for which it was given";
      reasons[G_GEO_TOO_MANY_QUERIES]   = "Too Many Queries: The daily geocoding quota for this site has been exceeded.";
      reasons[G_GEO_SERVER_ERROR]       = "Server error: The geocoding request could not be successfully processed.";
 */     
par=p.split(';');


      // var map = new GMap2(document.getElementById("map"));
        var center = new GLatLng(par[1], par[2]);
      //  alert(par[3]);
        map.setCenter(center, parseInt(par[3]));

   marker = new GMarker(center, {draggable: true});
       GEvent.addListener(marker, "dragstart", function() {
          map.closeInfoWindow();
        });

        GEvent.addListener(marker, "dragend", function() {
        updatecoord()
        });

        map.addOverlay(marker);
        
        
 if(parseInt(par[4])) marker.show(); else  marker.hide();

if(par[5]=="Satellite") map.setMapType(G_SATELLITE_MAP);
if(par[5]=="Hybrid") map.setMapType(G_HYBRID_MAP);

             
             
  map.hideControls();

////'mouseover' listener shows controls

GEvent.addListener(map, "mouseover", function(){
map.showControls();
});

////'mouseout' listener hides controls

GEvent.addListener(map, "mouseout", function(){
map.hideControls(); 
});


window.onunload=GUnload;

}}

//------------- END GMAP --------------------


}); 