var filterSet = "";
var oldLocationFilter = null;
var lastChecked;
var nowShown;
var shownOnes = 0;

var mapFader;
var mapSlider;
var mapThumbSlider;
var thumbHiding 	= false;
var mapHiding	 	= true;
var initFade 		= true;
var cmf;

var ogNews = null;

var gggg = 0;

function animComplete(item){
	if(item.slidesOut == false){
		var p = item.getParent();
		p.setStyle('overflow', 'visible');
		p.setStyle('height', 'auto');
	} else {
		var p = item.getParent();
		p.setStyle('overflow', 'hidden');
	}
}

function showLocation(id){
	var nuFilter = 'area-' + id;
	
	if(nuFilter != filterSet && id != 0){
		filterSet = nuFilter;
	} else {
		filterSet = "";
	}
	if(lastChecked) lastChecked.checked = false;
	toggleForFilters();
}

function updateNewsDiv(request, response){
	if(request != undefined && request != null && request != ""){
		if(ogNews == null){
			ogNews = $('newsContainer').innerHTML;
		}
		$('newsContainer').set('html',request.toString());
	} else if(ogNews != null){
		$('newsContainer').set('html', ogNews);
	}
}

function toggleForFilters(){
	nowShown = new Array();
	shownOnes = 0;
	
	var ogLeft = $('clientColumnLeft');
	var ogRight = $('clientColumnRight');
	//var lefty 		= ogLeft.clone();
	//var righty 		= ogRight.clone();

	//ogLeft.replaces(lefty);
	//ogRight.replaces(righty);
	
	var childs	= ogLeft.getElements('.clientContainer');
	childs	= childs.combine(ogRight.getElements('.clientContainer'));
	
	childs.each(function(item){
		// now - slide in or out?
		if(filterSet == undefined || filterSet == "" || item.hasClass(filterSet)){
			var cn = item.getElement( '.clientName' );
			if(!item.sortOn){
		  		item.sortOn = cn.get('text').toLowerCase();
			}

				//applyClick(cn, item);

			item.doShow = true;
			nowShown.push(item);
			shownOnes++;
		} else {
			var cn = item.getElement( '.clientName' );
			if(!item.sortOn){
		  		item.sortOn = cn.get('text').toLowerCase();
			}
			item.doShow = false;
			nowShown.push(item);
		}
	});
	
	// transfer to Columns
	nowShown.sort(sortDivs);
	var half 		= Math.round(shownOnes / 2);
	var injectTo 	= ogLeft;
	var shown 		= 0;
	for(var i = 0; i < nowShown.length; i++){
		if(nowShown[i].doShow){
			if(shown == half){
			 injectTo 	= ogRight;
			}
			nowShown[i].injectInside(injectTo);
			nowShown[i].setStyle('display', 'block');
			shown++;
		} else {
			nowShown[i].setStyle('display', 'none');
		}		
	}
	
	//lefty.replaces(ogLeft);
	//righty.replaces(ogRight);
	
	lefty  = null;
	righty = null;
	nowShown = null;
	childs = null;
	
	// start an AJAX request
	
	var tok = filterSet.indexOf('-');
	if(tok > 0){
		var f = filterSet.substr(0, tok);
		var i = filterSet.substr(tok+1);
		if(f == 'filter'){
			f = 'pages';
		}
		
		new Request({
			url: '/indpex.php',
			method: 'get',
			data: {
				id: ajaxId,
				eID: 'newsUpdate',
				maxCount: ajaxNewsMax,
				filterId: i,
				field: f
			},
			onComplete: updateNewsDiv
		}).send();
	}
	
}

function sortDivs(a, b){

	var tmp = new Array(a.sortOn,b.sortOn);
	tmp.sort();
	if(tmp[0] == a.sortOn){	
		return -1;
	} else {
		return 1;
	}
	tmp = null;
}


function mapShow(){
	mapThumbSlider.slideOut();
	thumbHiding = true;
	mapHiding   = false;
} 

function mapHide(){
	//mapFader.start({'opacity': 0});
	thumbHiding = false;
	mapHiding   = true;
	$('clientMap').setStyle('opacity', 0);
	checkMapSlider();
	mapSlider.slideOut();

}

function mapSlideComplete(){

	if(thumbHiding != true){
		mapThumbSlider.slideIn();
	} else {
		$('clientMap').setStyle('opacity', 1000);
	}
}

function mapThumbSlideComplete(){
	if(mapHiding != true){
		checkMapSlider();
		mapSlider.slideIn();
	}
}

function mapFaderComplete(){
	if(thumbHiding != true && initFade != true){
		
	}
	initFade = false;
}

function checkMapSlider(){
	if(mapSlider != null) return;
	mapSlider 		= new Fx.Slide(cmf, { duration: 250, onComplete: mapSlideComplete} );
  	mapSlider.hide();
  	cmf.setStyle('display', 'block');
}

function clientToggle(){
  // add the filter clicks
  $$( '.filterCheck' ).each(function(item){
	    if(item.handled) return;
	    item.handled = true;
	    item.addEvent( 'click', function(){ 
	      if(item.checked){
	      	filterSet = item.name;
	      	if(lastChecked && lastChecked != item) lastChecked.checked = false;
	      	lastChecked = item;
	      	//alert(lastChecked);
	      } else {
	      	filterSet = "";
	      }
	      toggleForFilters();
	    });
  });
  
  // make map toggle
  
  cmf = $('clientMapFlash');
  if(cmf.handled) return;
	mapThumbSlider 	= new Fx.Slide( $('clientMapHTML'), { duration: 250, onComplete: mapThumbSlideComplete} );
	cmf.handled = true;
	
}

window.addEvent( 'domready', clientToggle);
//FastInit.addOnLoad(clientToggle);