//------------------------------------------------------------------------------
jQuery.fn.extend({
	tabs: function(options) {
		var defaults = {
			active: 1,
			duration: 0,
			navClass: "ui-tabs",
			selectedClass: "selected"
		};
		return this.each(function() {
			var obj = $(this);
			var tabDivs = $("div", obj);
			var link = $("ul li a", obj);
			tabDivs.hide();
			var o = $.extend(defaults, options);
			obj.addClass(o.navClass);
			
			tabDivs.eq(o.active-1).show(o.duration);
			for(i=0;i<link.length;i++) {
				if(i != o.active)
					link.eq(i).removeClass(o.selectedClass);
				link.eq(o.active-1).addClass(o.selectedClass);
			}

			link.click(function() {
				var index = link.index(this);
				$('li a',obj).each(function() {
					$(this).removeClass(o.selectedClass);
					tabDivs.hide(o.duration);
				});
				$(this).addClass(o.selectedClass);
				tabDivs.eq(index).fadeIn();
			});
		});
	},
	blockUI: function(options) {
		var defaults = {
			msg: "",
			color: "orange",
			bgColor: "#000"
		};
		return this.each(function() {
			var obj = $(this);
			var tag = obj.get(0).tagName;
			var o = $.extend(defaults, options);
			$(".ovl,.ovlContent", obj).remove();
			layer = $('<div class="ovl"><div class="ovlContent">'+o.msg+'</div></div>').appendTo(obj);
			var os = $(this).offset(); var posL = os.left; var posT = os.top;
			var posW = $(this).width();	var posH = $(this).height(); var winH = $(window).height();
			$('.ovl',obj).css({backgroundColor:o.bgColor, cursor:"wait", color:o.color, opacity:.79, left:posL, top:posT, width:posW, height:posH});
			if ( tag.toLowerCase() == 'body' ) { 
				$('.ovl',obj).css('position','fixed'); 
				$('.ovlContent',obj).css('margin-top',winH/2);
			} else {
				$('.ovlContent',obj).css({"margin-top":(posH/2)-20});
			}
		});
	},
	unblockUI: function() {
		return this.each(function() {
			var obj = $(this);
			$(".ovl,.ovlContent", obj).animate({opacity:0}, 1000).hide("slow");
		});
	},
	ticker: function() {
		return this.each(function() {
			var obj	=	$(this);
			obj.hover(function(e) {
				$("span", obj).css({top:e.pageY+10, left:e.pageX-5, width:'200px'}).show();
			}, function() {
				$("span", obj).hide();
			});
		});
	},
	tableMgr: function(options) {
		var defaults = {rOdd:'rOdd',rEven:'rEven',rHover:'rHover',rClick:'rClick'};
		return this.each(function() {
			var o = $.extend(defaults, options);var obj = $(this);
			$('tr:odd', obj).addClass(o.rOdd);$('tr:even',obj).addClass(o.rEven);
			$('tr', obj).mouseover(function() {$(this).addClass(o.rHover);}).mouseout(function() {$(this).removeClass(o.rHover);}).click(function() {$(this).toggleClass(o.rClick);});
		});
	}
});
//------------------------------------------------------------------------------
jQuery.extend({
	paging: function(url, page, totalPages) {
		if(!this.isNumeric(page)) {
			alert('Invalid page no'); page.focus(); return false;
		}
		pageNo = $.trim(page.value);
		if(pageNo > totalPages || pageNo < 1) {
			alert('Invalid Page'); page.focus(); return false;
		}
		this.goTo(url+pageNo);
		return false;
	},

	loadPage: function(url, divID) {
		$("#"+divID).blockUI({msg:"<img src=\"/views/default/images/loader3.gif\">"}).load(url);
		//$("#"+divID).blockUI().load(url, function() {$("#"+divID).unblockUI();});
		return false;
	},

	controlLbLayer: function(mode) {
		if(mode == "block") { $('select').hide(); $('#lb_layer').show(); }
		else { $('select').show(); $('#lb_layer').hide(); }
	},

	goBack: function(url) {
		if( url == undefined )
			history.go(-1);
		else
			window.location	= url;
	},

	goTo: function(url) {
		window.location	=	url;
	},
	
	delAlert: function(url, msg) {
		msg = msg ? msg : "Are you sure to delete?";
		if ( confirm(msg) ) {
			this.goTo(url);
		} else {
			return false;
		}
	},

	//getURL(hash|host|hostname|href|pathname|port|protocol|search|uri)
	getURL: function(what) {
		url = document.location;
		if ( what != undefined && what != 'uri' )
			return eval('document.location.'+what);
		else if ( what == 'uri' )
			return (url.pathname + url.search);
		else
			return document.location;
	},

	getParam: function(key) {
		var strQS = unescape(document.location.search);
		var re = new RegExp('('+key+'=){1}[^&]*', 'ig');
		x = strQS.match(re);
		if ( x != null ) { y = x.toString().split('='); return y[1]; }
		return x;
	},
	
	popUp: function(url, win_name, width, height, resize, scroll, top, left) {
		popWin = window.open(url, win_name, "toolbar=no, location=no, directories=no, status=no, menubar=no, resizable="+(!resize ? "yes" : resize)+", copyhistory=no, scrollbars="+(!scroll ? "yes" : scroll)+", width="+(!width ? "400" : width)+", height="+(!height ? "300" : height)+", top="+(!top ? "50" : top)+", left="+(!left ? "50" : left));
		popWin.focus();
	},

	openTarget: function(form, windowName, width, height, resize, scroll, top, left) {
		form.target = windowName;
		this.popUp('', windowName, width, height, resize, scroll, top, left);
	},
	
	//random bet'n 0 and x
	random: function(x) {
	    return Math.floor(x * (Math.random() % 1));
	},

	randomBetween: function(minV, maxV) {
	  return minV + this.random(maxV - minV + 1);
	},

	round: function(number, x) {
		x = (!x ? 2 : x);
		return Math.round(number*Math.pow(10,x))/Math.pow(10,x);
	},

	isEmpty: function(objElt) {
		data =	$.trim(objElt.value);
		if ( data.length > 0 ) { return false; }
		return true;
	},

	isAlpha: function(objElt) {
		return	/^[a-zA-Z]+$/.test(objElt.value);
	},
	
	isAlpha1: function(objElt) {
		return	/^[a-zA-Z ]+$/.test(objElt.value);
	},
	
	isNumeric: function(objElt) {
		return	/^[0-9]+$/.test(objElt.value);
	},
	
	isAlphaNumeric: function(objElt) {
		return	/^[a-zA-Z0-9 ]+$/.test(objElt.value);
	},
	
	isPhone: function(objElt) {
		return	/^[0-9\-()+ ]+$/.test(objElt.value);
	},
	
	isEmail: function(objElt) {
		return	/^[a-z0-9]([a-z0-9_\-\.]*)@([a-z0-9_\-\.]*)(\.[a-z]{2,4}(\.[a-z]{2}){0,2})$/i.test(objElt.value);
	},
	
	isAmount: function(objElt) {
		return	/^[0-9]+(.){0,1}([0-9]*)$/i.test(objElt.value);
	},

	isPositiveInt: function(objElt) {
		if(parseInt(objElt.value)>0) {	return true; }
		return false;
	},

	isPositiveFloat: function(objElt) {
		return this.isNotNegativeFloat(objElt) && (parseFloat(objElt.value)>0);	
	},

	isNotNegativeFloat: function(objElt) {
		return /^[0-9]*[.]{0,1}[0-9]*$/.test(objElt.value);
	},

	isNotNegativeInt: function(objElt) {
		return /^[0-9]*$/.test(objElt.value);
	},

	isZip: function(objElt, noOfChars) {
		patZip	=	eval("/^[0-9]{"+noOfChars+"}$/");
		return patZip.test(objElt.value);
	},

	isPeriod: function(objElt) {
		return /^[1-9][0-9]{2}$/.test(objElt.value);
	},

	isFloat: function(objElt) {
		return /^[\-\+]{0,1}[0-9]*[.]{0,1}[0-9]*$/.test(objElt.value);
	},

	isInt: function(objElt) {
		i = parseInt(objElt.value);
		if(i>0 ||i==0 || i<0) { return true; }
		return false;
	},
	
	isSpace: function(objElt) {
		return /^[ ]+$/.test(objElt.value);
	},

	itemsChecked: function(objElt) {
		var a = 0; var x = objElt.length;
		for(var i=0; i<x; i++) {
			if(objElt[i].checked) { a++; }
		}
		return a;
	},

	itemSelected: function(objElt) {
		var objSI = objElt.options.selectedIndex;
		if(objSI == 0 || objSI == -1)
			return false;
		return true;
	},

	itemsSelected: function(objElt) {
		var a = 0; var x = objElt.length;
		for(var i=0; i<x; i++) {
		  if(objElt.options[i].selected) { a++; }
		}
		return a;
	},

	itemSelectedData: function(objElt, mode) {
		return (mode == "value") ? objElt.value : objElt.options[objElt.selectedIndex].text;
	},

	radioValue: function(objElt) {
		var x = null; var n = objElt.length;
		for(var i=0; i<n; i++) {
			if (objElt[i].checked) { x = objElt[i].value; break; }
		}
		return x;
	},

	checkAll: function(chk, objElt) {
		var n = objElt.length;
		for(i=0; i<n; i++)
			objElt[i].checked = chk.checked;
	}, 

	transfer: function(fromId, toId) {
		return !$('#'+fromId).children('option:selected').remove().appendTo($('#'+toId)); 
	},

	moveUp: function(eltId) {
		var oSel = $('#'+eltId);
		if($('option:selected', oSel).val() > 0)
			$('option:selected', oSel).each(function(){$(this).insertBefore($(this).prev());});
		else
			alert("Please select an item"); oSel.focus();
	},

	moveDown: function(eltId) {
		var oSel = $('#'+eltId);
		if($('option:selected', oSel).val() > 0) {
			var eleValue = $('option:selected:last', oSel).next();
			$('option:selected', oSel).each(function() {
				$(this).insertAfter(eleValue);
				eleValue = $(eleValue).next();
			});
		}
		else
			alert("Please select an item"); oSel.focus();
	},

	populateDD: function(url, srcDD, destDD) {
		qdata	=	$("select#"+srcDD).val();
		if ( qdata == null || qdata == "" )
			$("select#"+destDD).html('');

		$.getJSON(url, "qd="+qdata, function(j) {
			var n = j.length;
			if ( $("select#"+destDD).attr("multiple") )
				var optx = '<option value="0">All</option>';
			else
				var optx = '<option value="">Select</option>';
			for (var i = 0; i < n; i++) {
				optx += '<option value="' + j[i].ov + '">' + j[i].od + '</option>';
			}
			$("select#"+destDD).html(optx);
			//$("option:first", "select#"+destDD).attr("selected","selected");
			//$("select#"+destDD+" option:first").attr('selected', 'selected');
			//$("select#"+destDD).attr("value","1");
		})
	},

	validateCaptcha: function(chkUrl, cCode) {
		qdata	=	$("#"+cCode).val();
		return	$.ajax({ type: "GET", url: chkUrl, data: "qd="+qdata, cache: false, async: false}).responseText;
	},

	formatMoney: function(amount) {
		var i = parseFloat(amount);
		if(isNaN(i)) { i = 0.00; }
		var minus = '';
		if(i < 0) { minus = '-'; }
		i = Math.abs(i);
		i = parseInt((i + .005) * 100);
		i = i / 100;
		s = new String(i);
		if(s.indexOf('.') < 0) { s += '.00'; }
		if(s.indexOf('.') == (s.length - 2)) { s += '0'; }
		s = minus + s;
		return s;
	},
	
	setCookie: function(cookieName, cookieValue, lifeTime, path, domain, isSecure) {
		if ( !cookieName ) { return false; }
		life_time	=	lifeTime * 24 * 60 * 60 * 1000;
		document.cookie = encodeURIComponent(cookieName) + "=" + encodeURIComponent(cookieValue) + (lifeTime ? ";expires=" + ( new Date( ( new Date() ).getTime() + (life_time) )).toGMTString() : "") + (path ? ";path=" + path : "") + (domain ? ";domain=" + domain : "") + (isSecure ? ";secure" : "");
	},

	getCookie: function(cookieName) {
		var cookieJar = document.cookie.split(";");
		for(var x = 0; x < cookieJar.length; x++) {
			var arrCookie = cookieJar[x].split("=");
			if(arrCookie[0] == decodeURIComponent(cookieName) ) { return decodeURIComponent(arrCookie[1]); }
		}
		return null;
	},
	
	//var prelod = ['image1.gif', 'image2.gif'];
	//$.preloadImages(preload);
	//$.preloadImages('image1.gif', 'image2.gif');
	preloadImages: function() {
		var a = (typeof arguments[0] == 'object') ? arguments[0] : arguments;
		var n = a.length-1;
		for(var i=n; i>0; i--) {
			jQuery("<img>").attr("src", a[i]);
		}
	},

	correctPNG: function() {
		var n = document.images.length - 1;
		for (var i = n, img = null; (img = document.images[i]); i--) {
			if (img.src.match(/\.png$/i) != null) {
				var src = img.src;
				var div = document.createElement("div");
				div.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + src + "', sizing='scale')"
				div.style.width = img.width + "px";
				div.style.height = img.height + "px";
				img.replaceNode(div);
			}
			img.style.visibility = "visible";
		}
	},

	navHover: function() {
		$("#navmenu li").hover(
			function() { $(this).addClass('iehover'); },
			function() { $(this).removeClass('iehover'); }
		);
	}
});

if ( $.browser.msie && parseInt($.browser.version) <= 6 ) {
	if (window.attachEvent) window.attachEvent("onload", $.navHover);
}

if ( $.browser.msie && parseInt($.browser.version) >= 5.5 ) {
	if (window.attachEvent) window.attachEvent("onload", $.correctPNG);
}


/*images preloader */
function MM_preloadImages()
{
//v3.0
var d=document;
if(d.images)
{
if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; 
for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0)
{
d.MM_p[j]=new Image;
d.MM_p[j++].src=a[i];
}
}
}

MM_preloadImages('/views/default/en/images/bg_tile.jpg','/views/default/en/images/tab_home_on.gif','/views/default/en/images/tab_home_off.gif','/views/default/en/images/tab_about_on.gif','/views/default/en/images/tab_about_off.gif','/views/default/en/images/tab_our_on.gif','/views/default/en/images/tab_our_off.gif','/views/default/en/images/tab_team_on.gif','/views/default/en/images/tab_team_off.gif','/views/default/en/images/tab_portfolio_on.gif','/views/default/en/images/tab_portfolio_off.gif','/views/default/en/images/tab_news_on.gif','/views/default/en/images/tab_news_off.gif','/views/default/en/images/tab_contact_on.gif','/views/default/en/images/tab_contact_off.gif','/views/default/en/images/bg_blue_port.gif','/views/default/en/images/bg_green_port.gif','/views/default/en/images/bg_gray_port.gif','/views/default/en/images/bg_body_work.jpg','/views/default/en/images/hd_aboutus.jpg','/views/default/en/images/hd_contact.jpg','/views/default/en/images/hd_news.jpg','/views/default/en/images/hd_ourvalue.jpg','/views/default/en/images/hd_portfolio.jpg','/views/default/en/images/hd_sitemap.jpg','/views/default/en/images/hd_team.jpg','/views/default/en/images/home_bg.jpg','/views/default/en/images/contact_world.jpg','/views/default/en/images/map_usa.gif','/views/default/en/images/map_europe.gif','/views/default/en/images/map_china.gif','/views/default/en/images/map_india.gif','/views/default/en/images/bg_menu.gif','/views/default/en/images/bg_blue_bot_port.gif','/views/default/en/images/bg_blue_port.gif','/views/default/en/images/bg_gray_bot_port.gif','/views/default/en/images/bg_gray_port.gif','/views/default/en/images/bg_green_bot_port.gif','/views/default/en/images/bg_green_port.gif','/views/default/en/images/bullet.gif','/views/default/en/images/bull_blk.gif','/views/default/en/images/txt_inthepress.gif','/views/default/en/images/txt_ceomessage.gif','/views/default/en/images/txt_portfolio.gif','/views/default/en/images/lst_globe.gif','/views/default/en/images/logo_header.gif','/views/default/en/images/logo_chinese_off.gif','/views/default/en/images/menu_rht_cv.gif','/views/default/en/images/contact_world.jpg','/views/default/en/images/map_usa.gif','/views/default/en/images/map_europe.gif','/views/default/en/images/map_china.gif','/views/default/en/images/map_india.gif','/views/default/en/images/map_china1.jpg');
/*topnav preloader */
//-->

/*flag position change script*/

var perm_wid=document.documentElement.clientWidth;

var i=0;
function check()
{
	wid=document.documentElement.clientWidth;
	ht=document.documentElement.clientHeight;
	//alert(wid);
	if (wid>230 && wid<1004)
	{
		document.getElementById('lang').style.left=wid-232+'px';
	}
	else if(wid>=1004)
	{
		document.getElementById('lang').style.left=777+'px';
	}
}
