/*
 * jQuery hashchange event - v1.3 - 7/21/2010
 * http://benalman.com/projects/jquery-hashchange-plugin/
 * 
 * Copyright (c) 2010 "Cowboy" Ben Alman
 * Dual licensed under the MIT and GPL licenses.
 * http://benalman.com/about/license/
 */
(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('<iframe tabindex="-1" title="empty"/>').hide().one("load",function(){r||l(a());n()}).attr("src",r||"javascript:0").insertAfter("body")[0].contentWindow;h.onpropertychange=function(){try{if(event.propertyName==="title"){q.document.title=h.title}}catch(s){}}}};j.stop=k;o=function(){return a(q.location.href)};l=function(v,s){var u=q.document,t=$.fn[c].domain;if(v!==s){u.title=h.title;u.open();t&&u.write('<script>document.domain="'+t+'"<\/script>');u.close();q.location.hash=v}}})();return j})()})(jQuery,this);

var c = 0, n, t, o = null, p, fhash, klast = 0,	kpos = 1, ktot, rss, flast = 0,	fpos = 1, ftot, frss;

function b(p) {
	if (p) {
		c = p - 1;
		clearInterval(t); 
		t = setInterval('b()', 5000);
	} else {
		if (c < n - 1) {
			c = c + 1;
		} else {
			c = 0;
		}
	}
	$('#slideInner').animate({
		'marginLeft' : 929 * (-c)
	});
}

function filter_waiter(last) {
	$("#sok_resultat").html("<tr><td colspan=\"4\" style=\"text-align: center;\"><img src=\"/local/site/layout/spinner.gif\" alt=\"\" /> Söker...</td></tr>");
	if (o != null)
		clearTimeout(o);
		o = setTimeout(function() {filter(last,0); }, 1000);
};
			
function filter(last,page) {
	var data = '', result = '';
	if(!page) page = 0; 
	p.each(function(){
		data += $(this).val() + ",";
	});
	data += escape($("#res_filter_text").val());
	fhash = data+","+page;
	window.location.hash = data+","+page;
	$.ajax({
		type: "POST",
		url: "?a=f",
		async: false,
		dataType: "json",
		data: "data="+data+"&p="+page,
		success: function(j){
			var i = 0;
			for(i; i < j.data.length; i++) {
				result += "<tr style=\"cursor: pointer;\" onclick=\"window.location.href='"+j.data[i].url+"';\" class=\"";
				result += i%2?"even":"odd";
				result += "\">";
				result += "<td>"+j.data[i].name+"</td>";
				$.each(j.data[i].payload, function(key, value){
					result += "<td>"+value+"</td>";
				})
				result += "</tr>";
			}
			result += j.pages;
		},
		error: function(j){
			result ="<tr><td colspan=\"4\" style=\"text-align: center;\">Inga träffar, prova ändra "+last+"</td></tr>";
		}
	 });
	 $("#sok_resultat").html(result);
};


			
function fPage(s, p) {
	$("#sok_resultat").html("<tr><td colspan=\"4\" style=\"text-align: center;\"><img src=\"/local/site/layout/spinner.gif\" alt=\"\" /> Söker...</td></tr>");
	filter(s,p);
}


$(document).ready(function () {
	$("#content_body").css("min-height",(document.documentElement.clientHeight-465));

	$(".datepicker").datepicker();
	$("#ui-datepicker-div").hide();
	
	n = $('.slide').length;
	if (n) {
		$('#slideInner').css('width', 929 * n);
		t = setInterval('b()', 6000);
		q = $(".slide_toggle div");
		
		$(".slide_start").click(function(){
			t = setInterval('b()', 6000);
		});	

		$(".slide_pause").click(function(){
			clearInterval(t); 
		});		

		q.click(function () {
			q.toggle();
		});
	}
	
	p = $(".res_filter");
	if(p) {
		$("#res_filter_text").keyup(function() {
			if($(this).val().length < 4 && $(this).val().length != 0) return false;
			filter_waiter($(this).attr("name"));
		});	
		p.change(function(a){
			filter_waiter($(this).attr("name"));
		});
		
	}
	
	$(window).hashchange( function(){
		if(fhash !== location.hash.replace( /^#/, '')) {
			prepFilter();
			filter("parametrar");
		}
			
	})
	
	if($("#rss-content")) {
		$("#rss-content").load("?a=rss", function() {
			ktot = ($("#knews > span").length-1);
			rss = setInterval('switch_knews()',3500); 
			
			$("#knews").mouseleave(function() {
				rss = setInterval('switch_knews()', 3500);
			});	
			$("#knews").mouseenter(function() {
				clearInterval(rss); 
			});		
		});
	}
	
	if($("#facebook-content")) {
		$("#facebook-content").load("?a=facebook", function() {
			ftot = ($("#fnews > span").length-1);
			frss = setInterval('switch_fnews()',3500); 
			
			$("#fnews").mouseleave(function() {
				frss = setInterval('switch_fnews()', 3500);
			});	
			$("#fnews").mouseenter(function() {
				clearInterval(frss); 
			});		
		});
	}
});


function drawGMap(p,q,z,t,u) {
	var a = new google.maps.LatLng(p,q);
 	var b = new google.maps.Map(document.getElementById('gmap'), {  
  		zoom: z,  
 		center: a,  
  		mapTypeId: google.maps.MapTypeId.ROADMAP  
 	});
 	if(u) {
    	var c = new google.maps.Marker({
        	position: a,
        	map: b,
        	title: t
    	});
	}
}


function getScrollOffset() {
	var scrollx, scrolly, scrollarr;
	scrollx = typeof window.pageXOffset != 'undefined' ? window.pageXOffset : document.documentElement.scrollLeft;
	scrolly = typeof window.pageYOffset != 'undefined' ? window.pageYOffset : document.documentElement.scrollTop;
	scrollarr = new Array(scrollx,scrolly);
	return scrollarr;
}

function setPopup(a) {
	var s = getScrollOffset();
	$(a).css("top",(s[1]+150)+"px");
	$(a).css("left",(s[0]+((document.documentElement.clientWidth/2))-($(a).width()/2))+'px');
}

function getHash() {
    return window.location.hash.slice(window.location.hash.indexOf('#') + 1).split(',');
}

function selectOptionByValue(selObj, val){
    var a = selObj.options, l = a.length;
    while(l){
        if (a[--l].value== val){
            selObj.selectedIndex= l;
            l = 0;
        }
    }
}

function prepFilter() {
	var hash = getHash(), i = 0;
	p.each(function(){
		switch($(this).get(0).tagName) {
			case "INPUT":
				if($(this).attr('id') === "event_type_container") {
					if(hash[i] == "1") {
						$('#hander_alltid_radio').attr('checked',true);
						$('#event_type_container').val('1');
						$('#alltid').addClass('aktiv');
						$('#just_nu').removeClass('aktiv');
					} else {
						$('#hander_just_nu_radio').attr('checked',true);
						$('#event_type_container').val('0');
						$('#just_nu').addClass('aktiv');
						$('#alltid').removeClass('aktiv');
					}
				}
				$(this).val(hash[i]);
				break;
			case "SELECT":
				selectOptionByValue($(this).get(0),hash[i])
				break;
		}
		i++;	
	});	
	$("#res_filter_text").val(hash[i++]);
	return hash[i];
}


function switch_knews() {
	$("#knews > span:eq("+klast+")").fadeOut(400, function() {				
		$("#knews > span:eq("+kpos+")").fadeIn(400, function() {
  			klast = kpos;
  			if(kpos == ktot) {
  				kpos = 0;
			} else {
				kpos++;
			}
		});
	});
}

function switch_fnews() {
	$("#fnews > span:eq("+flast+")").fadeOut(400, function() {
	//	$(this).hide();				
		$("#fnews > span:eq("+fpos+")").fadeIn(400, function() {
  			flast = fpos;
  			if(fpos == ftot) {
  				fpos = 0;
			} else {
				fpos++;
			}
		});
	});
}
