
// CSS init (c) Agents.se - v4.0
/*
CSS Browser Selector v0.4.0 (Nov 02, 2010)
Rafael Lima (http://rafael.adm.br)
http://rafael.adm.br/css_browser_selector
License: http://creativecommons.org/licenses/by/2.5/
Contributors: http://rafael.adm.br/css_browser_selector#contributors
*/
function css_browser_selector(u){var ua=u.toLowerCase(),is=function(t){return ua.indexOf(t)>-1},g='gecko',w='webkit',s='safari',o='opera',m='mobile',h=document.documentElement,b=[(!(/opera|webtv/i.test(ua))&&/msie\s(\d)/.test(ua))?('ie ie'+RegExp.$1):is('firefox/2')?g+' ff2':is('firefox/3.5')?g+' ff3 ff3_5':is('firefox/3.6')?g+' ff3 ff3_6':is('firefox/3')?g+' ff3':is('gecko/')?g:is('opera')?o+(/version\/(\d+)/.test(ua)?' '+o+RegExp.$1:(/opera(\s|\/)(\d+)/.test(ua)?' '+o+RegExp.$2:'')):is('konqueror')?'konqueror':is('blackberry')?m+' blackberry':is('android')?m+' android':is('chrome')?w+' chrome':is('iron')?w+' iron':is('applewebkit/')?w+' '+s+(/version\/(\d+)/.test(ua)?' '+s+RegExp.$1:''):is('mozilla/')?g:'',is('j2me')?m+' j2me':is('iphone')?m+' iphone':is('ipod')?m+' ipod':is('ipad')?m+' ipad':is('mac')?'mac':is('darwin')?'mac':is('webtv')?'webtv':is('win')?'win'+(is('windows nt 6.0')?' vista':''):is('freebsd')?'freebsd':(is('x11')||is('linux'))?'linux':'','js']; c = b.join(' '); h.className += ' '+c; return c;}; css_browser_selector(navigator.userAgent);

// No spam e-mail address v2
function noSpam(a,b,c,d) {
	if (d==null) {
		d = c+'@'+b+'.'+a;
	}
	document.write('<a href="mai'+'lto:'+c+'@'+b+'.'+a+'" class="sticky">'+d+'</a>');
}

// Go to url
function go(a) {
	document.location.href = a;
}

function goerror(a,b) {
	if (!a && !b) {
	} else {
		if(a.status==0){
			alert("You are offline!\n Please Check Your Network.");
		}else if(a.status==404){
			alert("Requested URL not found.");
		}else if(a.status==500){
			alert("Internel Server Error. ("+b+")");
		}else if(b=="timeout"){
		}else {
			alert("Unknow Error: "+a.responseText);
		}
	}
}

// Validate form v3
var regEml = /^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i;
var regDrp = /[^0]/i;
var fvalid = true;
function validate(a,b,c,e,d) {
	if (e.keyCode != 9 || e.keyCode == null) { // Don't run on tab key
		switch (b) {
			case "txt": a.value.length >= c ? g=1 : g=0; break;
			case "eml": a.value.match(regEml) ? g=1 : g=0; break;
			case "drp":	a.value.match(regDrp) ? g=1 : g=0; break;
			case "rad":	a.checked ? g=1 : g=0; break;
		}
		h = "s"+a.id;
		f = document.getElementById(h);
		g ? f.className = "fsignok" : f.className = "fsignalert";
		if (!g) {
			d ? d = d : d = "Invalid field";
			$("#"+h).html('<span class="tooltip" title="!'+d+'">&nbsp;</span>');
			tooltip();
			fvalid = false;
		} else {
			$("#"+h).html("");
		}
		return true;
	}
}
function formgo(a) {
	fvalid = true;
	$("#"+a+" input, #"+a+" select, #"+a+" textarea").each(function(i) {	// Revalidate form
		var b = String($(this).attr("onblur")).split(",");
		if (b[0].indexOf("validate") != -1) {
			b[4].charAt(0) == " " ? c = 2 : c = 1; // FF comp.
			validate(this,b[1].slice(-4,-1),b[2],a,b[4].slice(c,b[4].length-5));
		}
	});
	if (!fvalid) {
		$("#"+a+"_notice").html('<ul class="alert"><li>All mandatory fields must be filled in.</li></ul>');
		$("#"+a+"_notice").hide().slideDown(200,"jswing");
	} else {
		$("#form_return").val(a);
//		$("#form1").attr("action",$("#form1").attr("action")+"#"+a);
		document.forms[0].submit();
	}
	return false;
}

// Jquery easeing
jQuery.easing['jswing'] = jQuery.easing['swing'];
jQuery.extend( jQuery.easing,
{
	def: 'easeInOutExpo',
	swing: function (x, t, b, c, d) {
		return jQuery.easing[jQuery.easing.def](x, t, b, c, d);
	},
	easeInOutExpo: function (x, t, b, c, d) {
		if (t==0) return b;
		if (t==d) return b+c;
		if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
		return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
	},
	easeInOutCubic: function (x, t, b, c, d) {
		if ((t/=d/2) < 1) return c/2*t*t*t + b;
		return c/2*((t-=2)*t*t + 2) + b;
	}
});
// Background Position Hooks
(function($) {
	var $div = $('<div style="background-position: 3px 5px">');
	$.support.backgroundPosition   = $div.css('backgroundPosition')  === "3px 5px" ? true : false;
	$.support.backgroundPositionXY = $div.css('backgroundPositionX') === "3px" ? true : false;
	$div = null;
	var xy = ["X","Y"];
	function parseBgPos(bgPos) {
		var parts  = bgPos.split(/\s/),
		values = {
			"X": parts[0],
			"Y": parts[1]
		};
		return values;
	}
	if (!$.support.backgroundPosition && $.support.backgroundPositionXY) {
		$.cssHooks.backgroundPosition = {
			get: function( elem, computed, extra ) {
				return $.map(xy, function( l, i ) {
					return $.css(elem, "backgroundPosition" + l);
				}).join(" ");
			},
			set: function( elem, value ) {
				$.each(xy, function( i, l ) {
					var values = parseBgPos(value);
					elem.style[ "backgroundPosition" + l ] = values[ l ];
				});
			}
		};
	}
	if ($.support.backgroundPosition && !$.support.backgroundPositionXY) {
			$.each(xy, function( i, l ) {
				$.cssHooks[ "backgroundPosition" + l ] = {
					get: function( elem, computed, extra ) {
						var values = parseBgPos( $.css(elem, "backgroundPosition") );
						return values[ l ];
					},
					set: function( elem, value ) {
						var values = parseBgPos( $.css(elem, "backgroundPosition") ),
						isX = l === "X";
						elem.style.backgroundPosition = (isX ? value : values[ "X" ]) + " " + (isX ? values[ "Y" ] : value);
					}
				};
				$.fx.step[ "backgroundPosition" + l ] = function( fx ) {
					$.cssHooks[ "backgroundPosition" + l ].set( fx.elem, fx.now + fx.unit );
				};
			});
		}
})(jQuery);

// jQuery setup on page load
$(document).ready(function() {
	autoblur();
	tooltip();
	$("#news").newsTicker(5000);
});
function autoblur() {
	$("a").mouseup(function(){
		$(this).blur();
	});
}

// Tooltip v2
this.tooltip = function(){
	$("span.tooltip").unbind();
	$("span.tooltip").hover(function(e){
		t = this.title;
		this.title = "";
		if (t.charAt(0) == "!") {
			b = t.substring(1);
			$("body").append("<div id='tooltip'>"+ b +"</div>");
			$("#tooltip").css("background","#cd2323");
		} else {
			$("body").append("<div id='tooltip'>"+ t +"</div>");
		}
		$("#tooltip")
			.css("top",(e.pageY - 10) + "px")
			.css("left",(e.pageX + 20) + "px")
			.show()
    },
		function(){
			this.title = t;
			$("#tooltip").remove();
    });
	$("span.tooltip").mousemove(function(e){
		$("#tooltip")
			.css("top",(e.pageY - 10) + "px")
			.css("left",(e.pageX + 20) + "px");
	});
}

// Toggle div
function toggle(a) {
	if ($("#"+a).is(":hidden")) {
		$("#"+a).slideDown(800);
	} else {
		$("#"+a).slideUp(800);
	}
	return false;
}
function more() {
	$("a.more").hide();
	$("div.more").slideDown(800);
	scrollPage("#a-agents",320);
	return false;
}
function less() {
	$("div.more").slideUp(800);
	$("html, body").animate({scrollTop:"0px"}, 501, "jswing", function() {
		$("a.more").show();
	});
	return false;
}

var gotop = 1;
var lockdown = false;
function gopage(a,b) {
	if (!lockdown && a) {
		lockdown = true;
		if (a=="jump")
		b < gotop ? a = "prev" : a = "next";
		gotop = b;
		if (a=="next") {
			$("#cluster").animate({left:"-=960px"}, 1200, function() {
				loadpage();
		  });
		} else {
			$("#cluster").animate({left:"+=960px"}, 1200, function() {
				loadpage();
		  });
		}
	}
	return false;
}
function loadpage() {
	$.ajax({
		type:"POST",
		url:"data_projects.asp",
		data:"cmd=imgs&page="+gotop+"&rnd="+Math.random(),
		cache:false,
		success:function(b){
			$("#ajaxcases").replaceWith(b);
			$("#ajaxcases .case").hide();
			$("#ajaxcases .case").fadeIn(700, function() {
			casearr[0] = 1;
			casearr[1] = 1;
			casearr[2] = 1;
			lockdown = false;
      });
		},
		error:function(a,b){goerror(a,b);}
	});
	$.ajax({
		type:"POST",
		url:"data_projects.asp",
		data:"cmd=info&page="+gotop+"&rnd="+Math.random(),
		cache:false,
		success:function(b){
			$("#ajaxcaseinfo").replaceWith(b);
		},
		error:function(a,b){goerror(a,b);}
	});
}
var casearr=new Array(1,1,1);
function gocase(a,b,c) {
	pos = 0;
	if (a=="r") {
		if (casearr[c-1] < b)
		casearr[c-1]++;
		else
		casearr[c-1] = 1;
		a = casearr[c-1];
	} else if (a=="l") {
		casearr[c-1]--;
		a = casearr[c-1];
	} else {
		casearr[c-1] = a;
	}
	cap = $("#c"+c+" pre").html().split(";");	// Display caption
	$("#c"+c+" span").html(cap[a-1]);
	$("#c"+c+" a").removeClass("curr"); // Set current plup
	$("#n"+a+"-c"+c).addClass("curr");
	if (casearr[c-1]>=b) // Show/hide arrows
	$("#nr-c"+c).css({visibility:"hidden"});
	else
	$("#nr-c"+c).css({visibility:"visible"});
	if (casearr[c-1]<=1)
	$("#nl-c"+c).hide();
	else
	$("#nl-c"+c).show();
	pos = 0-((a-1)*300);
	$("#c"+c).animate({backgroundPositionX:pos+"px"}, 800); // Using hooks fix for FF4 support
	return false;
}

function goinfo(a) {
	switch (a) {
		case "agents":
			if ($("#ajaxcases").is(":visible")) {
				$("#ajaxcases").slideUp(800);
				$("#ajaxcaseinfo").slideUp(800);
				$("#ftrd").slideUp(800);
				$("#ftrd2").slideDown(800);
			}
			if ($("#contactinfo").is(":visible"))
			$("#contactinfo").slideUp(800);

			$("#agentsinfo").slideDown(800);
			$("#a-contact").removeClass("dark").animate({paddingTop:"4px"}, 600);
			$("#a-agents").addClass("dark").animate({paddingTop:"12px"}, 600);
			break;
		case "contact":
			if ($("#ajaxcases").is(":visible")) {
				$("#ajaxcases").slideUp(800);
				$("#ajaxcaseinfo").slideUp(800);
				$("#ftrd").slideUp(800);
				$("#ftrd2").slideDown(800);
			}
			if ($("#agentsinfo").is(":visible"))
			$("#agentsinfo").slideUp(800);

			$("#contactinfo").slideDown(800);
			$("#a-agents").removeClass("dark").animate({paddingTop:"4px"}, 600);
			$("#a-contact").addClass("dark").animate({paddingTop:"12px"}, 600);
			break;
		case "projects":
			$("div.more").hide();
			$("a.more").show();
			if ($("#agentsinfo").is(":visible"))
			$("#agentsinfo").slideUp(800);
			if ($("#contactinfo").is(":visible"))
			$("#contactinfo").slideUp(800);
			$("#a-contact").removeClass("dark").animate({paddingTop:"4px"}, 600);
			$("#a-agents").removeClass("dark").animate({paddingTop:"4px"}, 600);
			$("#ajaxcases").slideDown(800);
			$("#ajaxcaseinfo").slideDown(800);
			$("#ftrd2").slideUp(800);
			$("#ftrd").slideDown(800);
			break;
	}
	scrollPage("#master",0);
	return false;
}

function scrollPage(a,b) {
	if($.browser.safari){bodyelem=$("body")}else{bodyelem=$("html")}
	d = ($(a).offset().top+b)-($(window).height()+bodyelem.scrollTop());
//	if (d>30)
	$("html, body").animate({scrollTop:"+="+d+"px"}, 1000);
}

function gomap() {
	initialize();
	$("#mapoverlay").fadeOut(800, "jswing");
	return false;
}



