//==========================================================================================
// JavaScript Global Functions


// ---------------------------------------------------------------------------------------
// BEGIN: SWFObject
/* SWFObject v2.1 <http://code.google.com/p/swfobject/>
	Copyright (c) 2007-2008 Geoff Stearns, Michael Williams, and Bobby van der Sluis
	This software is released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
*/
var swfobject=function(){var b="undefined",Q="object",n="Shockwave Flash",p="ShockwaveFlash.ShockwaveFlash",P="application/x-shockwave-flash",m="SWFObjectExprInst",j=window,K=document,T=navigator,o=[],N=[],i=[],d=[],J,Z=null,M=null,l=null,e=false,A=false;var h=function(){var v=typeof K.getElementById!=b&&typeof K.getElementsByTagName!=b&&typeof K.createElement!=b,AC=[0,0,0],x=null;if(typeof T.plugins!=b&&typeof T.plugins[n]==Q){x=T.plugins[n].description;if(x&&!(typeof T.mimeTypes!=b&&T.mimeTypes[P]&&!T.mimeTypes[P].enabledPlugin)){x=x.replace(/^.*\s+(\S+\s+\S+$)/,"$1");AC[0]=parseInt(x.replace(/^(.*)\..*$/,"$1"),10);AC[1]=parseInt(x.replace(/^.*\.(.*)\s.*$/,"$1"),10);AC[2]=/r/.test(x)?parseInt(x.replace(/^.*r(.*)$/,"$1"),10):0}}else{if(typeof j.ActiveXObject!=b){var y=null,AB=false;try{y=new ActiveXObject(p+".7")}catch(t){try{y=new ActiveXObject(p+".6");AC=[6,0,21];y.AllowScriptAccess="always"}catch(t){if(AC[0]==6){AB=true}}if(!AB){try{y=new ActiveXObject(p)}catch(t){}}}if(!AB&&y){try{x=y.GetVariable("$version");if(x){x=x.split(" ")[1].split(",");AC=[parseInt(x[0],10),parseInt(x[1],10),parseInt(x[2],10)]}}catch(t){}}}}var AD=T.userAgent.toLowerCase(),r=T.platform.toLowerCase(),AA=/webkit/.test(AD)?parseFloat(AD.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):false,q=false,z=r?/win/.test(r):/win/.test(AD),w=r?/mac/.test(r):/mac/.test(AD);/*@cc_on q=true;@if(@_win32)z=true;@elif(@_mac)w=true;@end@*/return{w3cdom:v,pv:AC,webkit:AA,ie:q,win:z,mac:w}}();var L=function(){if(!h.w3cdom){return }f(H);if(h.ie&&h.win){try{K.write("<script id=__ie_ondomload defer=true src=//:><\/script>");J=C("__ie_ondomload");if(J){I(J,"onreadystatechange",S)}}catch(q){}}if(h.webkit&&typeof K.readyState!=b){Z=setInterval(function(){if(/loaded|complete/.test(K.readyState)){E()}},10)}if(typeof K.addEventListener!=b){K.addEventListener("DOMContentLoaded",E,null)}R(E)}();function S(){if(J.readyState=="complete"){J.parentNode.removeChild(J);E()}}function E(){if(e){return }if(h.ie&&h.win){var v=a("span");try{var u=K.getElementsByTagName("body")[0].appendChild(v);u.parentNode.removeChild(u)}catch(w){return }}e=true;if(Z){clearInterval(Z);Z=null}var q=o.length;for(var r=0;r<q;r++){o[r]()}}function f(q){if(e){q()}else{o[o.length]=q}}function R(r){if(typeof j.addEventListener!=b){j.addEventListener("load",r,false)}else{if(typeof K.addEventListener!=b){K.addEventListener("load",r,false)}else{if(typeof j.attachEvent!=b){I(j,"onload",r)}else{if(typeof j.onload=="function"){var q=j.onload;j.onload=function(){q();r()}}else{j.onload=r}}}}}function H(){var t=N.length;for(var q=0;q<t;q++){var u=N[q].id;if(h.pv[0]>0){var r=C(u);if(r){N[q].width=r.getAttribute("width")?r.getAttribute("width"):"0";N[q].height=r.getAttribute("height")?r.getAttribute("height"):"0";if(c(N[q].swfVersion)){if(h.webkit&&h.webkit<312){Y(r)}W(u,true)}else{if(N[q].expressInstall&&!A&&c("6.0.65")&&(h.win||h.mac)){k(N[q])}else{O(r)}}}}else{W(u,true)}}}function Y(t){var q=t.getElementsByTagName(Q)[0];if(q){var w=a("embed"),y=q.attributes;if(y){var v=y.length;for(var u=0;u<v;u++){if(y[u].nodeName=="DATA"){w.setAttribute("src",y[u].nodeValue)}else{w.setAttribute(y[u].nodeName,y[u].nodeValue)}}}var x=q.childNodes;if(x){var z=x.length;for(var r=0;r<z;r++){if(x[r].nodeType==1&&x[r].nodeName=="PARAM"){w.setAttribute(x[r].getAttribute("name"),x[r].getAttribute("value"))}}}t.parentNode.replaceChild(w,t)}}function k(w){A=true;var u=C(w.id);if(u){if(w.altContentId){var y=C(w.altContentId);if(y){M=y;l=w.altContentId}}else{M=G(u)}if(!(/%$/.test(w.width))&&parseInt(w.width,10)<310){w.width="310"}if(!(/%$/.test(w.height))&&parseInt(w.height,10)<137){w.height="137"}K.title=K.title.slice(0,47)+" - Flash Player Installation";var z=h.ie&&h.win?"ActiveX":"PlugIn",q=K.title,r="MMredirectURL="+j.location+"&MMplayerType="+z+"&MMdoctitle="+q,x=w.id;if(h.ie&&h.win&&u.readyState!=4){var t=a("div");x+="SWFObjectNew";t.setAttribute("id",x);u.parentNode.insertBefore(t,u);u.style.display="none";var v=function(){u.parentNode.removeChild(u)};I(j,"onload",v)}U({data:w.expressInstall,id:m,width:w.width,height:w.height},{flashvars:r},x)}}function O(t){if(h.ie&&h.win&&t.readyState!=4){var r=a("div");t.parentNode.insertBefore(r,t);r.parentNode.replaceChild(G(t),r);t.style.display="none";var q=function(){t.parentNode.removeChild(t)};I(j,"onload",q)}else{t.parentNode.replaceChild(G(t),t)}}function G(v){var u=a("div");if(h.win&&h.ie){u.innerHTML=v.innerHTML}else{var r=v.getElementsByTagName(Q)[0];if(r){var w=r.childNodes;if(w){var q=w.length;for(var t=0;t<q;t++){if(!(w[t].nodeType==1&&w[t].nodeName=="PARAM")&&!(w[t].nodeType==8)){u.appendChild(w[t].cloneNode(true))}}}}}return u}function U(AG,AE,t){var q,v=C(t);if(v){if(typeof AG.id==b){AG.id=t}if(h.ie&&h.win){var AF="";for(var AB in AG){if(AG[AB]!=Object.prototype[AB]){if(AB.toLowerCase()=="data"){AE.movie=AG[AB]}else{if(AB.toLowerCase()=="styleclass"){AF+=' class="'+AG[AB]+'"'}else{if(AB.toLowerCase()!="classid"){AF+=" "+AB+'="'+AG[AB]+'"'}}}}}var AD="";for(var AA in AE){if(AE[AA]!=Object.prototype[AA]){AD+='<param name="'+AA+'" value="'+AE[AA]+'" />'}}v.outerHTML='<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+AF+">"+AD+"</object>";i[i.length]=AG.id;q=C(AG.id)}else{if(h.webkit&&h.webkit<312){var AC=a("embed");AC.setAttribute("type",P);for(var z in AG){if(AG[z]!=Object.prototype[z]){if(z.toLowerCase()=="data"){AC.setAttribute("src",AG[z])}else{if(z.toLowerCase()=="styleclass"){AC.setAttribute("class",AG[z])}else{if(z.toLowerCase()!="classid"){AC.setAttribute(z,AG[z])}}}}}for(var y in AE){if(AE[y]!=Object.prototype[y]){if(y.toLowerCase()!="movie"){AC.setAttribute(y,AE[y])}}}v.parentNode.replaceChild(AC,v);q=AC}else{var u=a(Q);u.setAttribute("type",P);for(var x in AG){if(AG[x]!=Object.prototype[x]){if(x.toLowerCase()=="styleclass"){u.setAttribute("class",AG[x])}else{if(x.toLowerCase()!="classid"){u.setAttribute(x,AG[x])}}}}for(var w in AE){if(AE[w]!=Object.prototype[w]&&w.toLowerCase()!="movie"){F(u,w,AE[w])}}v.parentNode.replaceChild(u,v);q=u}}}return q}function F(t,q,r){var u=a("param");u.setAttribute("name",q);u.setAttribute("value",r);t.appendChild(u)}function X(r){var q=C(r);if(q&&(q.nodeName=="OBJECT"||q.nodeName=="EMBED")){if(h.ie&&h.win){if(q.readyState==4){B(r)}else{j.attachEvent("onload",function(){B(r)})}}else{q.parentNode.removeChild(q)}}}function B(t){var r=C(t);if(r){for(var q in r){if(typeof r[q]=="function"){r[q]=null}}r.parentNode.removeChild(r)}}function C(t){var q=null;try{q=K.getElementById(t)}catch(r){}return q}function a(q){return K.createElement(q)}function I(t,q,r){t.attachEvent(q,r);d[d.length]=[t,q,r]}function c(t){var r=h.pv,q=t.split(".");q[0]=parseInt(q[0],10);q[1]=parseInt(q[1],10)||0;q[2]=parseInt(q[2],10)||0;return(r[0]>q[0]||(r[0]==q[0]&&r[1]>q[1])||(r[0]==q[0]&&r[1]==q[1]&&r[2]>=q[2]))?true:false}function V(v,r){if(h.ie&&h.mac){return }var u=K.getElementsByTagName("head")[0],t=a("style");t.setAttribute("type","text/css");t.setAttribute("media","screen");if(!(h.ie&&h.win)&&typeof K.createTextNode!=b){t.appendChild(K.createTextNode(v+" {"+r+"}"))}u.appendChild(t);if(h.ie&&h.win&&typeof K.styleSheets!=b&&K.styleSheets.length>0){var q=K.styleSheets[K.styleSheets.length-1];if(typeof q.addRule==Q){q.addRule(v,r)}}}function W(t,q){var r=q?"visible":"hidden";if(e&&C(t)){C(t).style.visibility=r}else{V("#"+t,"visibility:"+r)}}function g(s){var r=/[\\\"<>\.;]/;var q=r.exec(s)!=null;return q?encodeURIComponent(s):s}var D=function(){if(h.ie&&h.win){window.attachEvent("onunload",function(){var w=d.length;for(var v=0;v<w;v++){d[v][0].detachEvent(d[v][1],d[v][2])}var t=i.length;for(var u=0;u<t;u++){X(i[u])}for(var r in h){h[r]=null}h=null;for(var q in swfobject){swfobject[q]=null}swfobject=null})}}();return{registerObject:function(u,q,t){if(!h.w3cdom||!u||!q){return }var r={};r.id=u;r.swfVersion=q;r.expressInstall=t?t:false;N[N.length]=r;W(u,false)},getObjectById:function(v){var q=null;if(h.w3cdom){var t=C(v);if(t){var u=t.getElementsByTagName(Q)[0];if(!u||(u&&typeof t.SetVariable!=b)){q=t}else{if(typeof u.SetVariable!=b){q=u}}}}return q},embedSWF:function(x,AE,AB,AD,q,w,r,z,AC){if(!h.w3cdom||!x||!AE||!AB||!AD||!q){return }AB+="";AD+="";if(c(q)){W(AE,false);var AA={};if(AC&&typeof AC===Q){for(var v in AC){if(AC[v]!=Object.prototype[v]){AA[v]=AC[v]}}}AA.data=x;AA.width=AB;AA.height=AD;var y={};if(z&&typeof z===Q){for(var u in z){if(z[u]!=Object.prototype[u]){y[u]=z[u]}}}if(r&&typeof r===Q){for(var t in r){if(r[t]!=Object.prototype[t]){if(typeof y.flashvars!=b){y.flashvars+="&"+t+"="+r[t]}else{y.flashvars=t+"="+r[t]}}}}f(function(){U(AA,y,AE);if(AA.id==AE){W(AE,true)}})}else{if(w&&!A&&c("6.0.65")&&(h.win||h.mac)){A=true;W(AE,false);f(function(){var AF={};AF.id=AF.altContentId=AE;AF.width=AB;AF.height=AD;AF.expressInstall=w;k(AF)})}}},getFlashPlayerVersion:function(){return{major:h.pv[0],minor:h.pv[1],release:h.pv[2]}},hasFlashPlayerVersion:c,createSWF:function(t,r,q){if(h.w3cdom){return U(t,r,q)}else{return undefined}},removeSWF:function(q){if(h.w3cdom){X(q)}},createCSS:function(r,q){if(h.w3cdom){V(r,q)}},addDomLoadEvent:f,addLoadEvent:R,getQueryParamValue:function(v){var u=K.location.search||K.location.hash;if(v==null){return g(u)}if(u){var t=u.substring(1).split("&");for(var r=0;r<t.length;r++){if(t[r].substring(0,t[r].indexOf("="))==v){return g(t[r].substring((t[r].indexOf("=")+1)))}}}return""},expressInstallCallback:function(){if(A&&M){var q=C(m);if(q){q.parentNode.replaceChild(M,q);if(l){W(l,true);if(h.ie&&h.win){M.style.display="block"}}M=null;l=null;A=false}}}}}();
// END: SWFObject

// ---------------------------------------------------------------------------------------
// BEGIN: JW Player
function deletePlayer(theWrapper, thePlaceholder, thePlayerId) {
	swfobject.removeSWF(thePlayerId);
	var tmp = document.getElementById(theWrapper);
	if (tmp) { tmp.innerHTML = "<div id=" + thePlaceholder + "></div>"; }
}
function createPlayer(thePlaceholder, thePlayerId, theFile, width, height) {
	var flashvars = {
	  file: theFile,
	  autostart: "true"
	  //type: "video" if type is set to video then youtube videos don't play.
	}
	var params = {
	  allowfullscreen: "true",
	  allowscriptaccess: "always",
	  wmode: "transparent"
	}
	var attributes = {
	  id: thePlayerId,
	  name: thePlayerId
	}
	swfobject.embedSWF("/_Flash/player-licensed.swf", thePlaceholder, width, height, "9.0.115", false, flashvars, params, attributes);
}
function initPlayer(theFile, width, height) {
	deletePlayer('videowrapper', 'placeholder1', 'player1');
	createPlayer('placeholder1', 'player1', theFile, '560', '340');
}
function closePlayer() {
	deletePlayer('videowrapper', 'placeholder1', 'player1');
}
// END: JW Player



//==========================================================================================
// Functions written with jQuery shorthand $
// BEGIN jQuery Safety
jQuery(function($) {

	/* ------------------------------------------------------------------ */
	/* Home Gallery */
	function gallery(_obj) {
		// defaults options
		var _this = this;
		_this.options = {
			hold: 'div.gallery-slide',
			duration: 700,
			slideElement: 1,
			autoRotation: false,
			effect: false,
			listOfSlides: 'ul > li',
			switcher: false,
			disableBtn: false,
			nextBtn: 'a.link-next, a.btn-next, a.next',
			prevBtn: 'a.link-prev, a.btn-prev, a.prev',
			circle: true,
			direction: false
		};
		for(key in _obj) _this.options[key] = _obj[key];
		
		// Variables
		$(_this.options.hold).each(function(){
			var _hold = $(this);
			var _speed = _this.options.duration;
			var _timer = _this.options.autoRotation;
			var _el = _hold.find(_this.options.listOfSlides);
			if (_this.options.effect) var _list = _el;
			else var _list = _el.parent();
			var _switcher = _hold.find(_this.options.switcher);
			var _next = _hold.find(_this.options.nextBtn);
			var _prev = _hold.find(_this.options.prevBtn);
			var _count = _el.index(_el.filter(':last'));
			var _w = _el.outerWidth(true);
			var _h = _el.outerHeight(true);
			if (_timer) var _t;
			if (_this.options.switcher) var _active = _switcher.index(_switcher.filter('.active:eq(0)'));
			else var _active = _el.index(_el.filter('.active:eq(0)'));
			if (_active < 0) _active = 0;
			var _last = _active;
			
			// Installation directions
			if (!_this.options.direction) {
				var _wrapHolderW = Math.ceil(_list.parent().width() / _w);
				if (((_wrapHolderW - 1) * _w + _w / 2) > _list.parent().width()) _wrapHolderW--;
			}
			else{
				var _wrapHolderW = Math.ceil(_list.parent().height()/_h);
				if (((_wrapHolderW-1)*_h + _h/2) > _list.parent().height()) _wrapHolderW--;
			}
			
			// Setting "fade" or "slide" effect
			if (!_this.options.effect) var rew = _count - _wrapHolderW + 1;
			else var rew = _count;
			if (!_this.options.effect) {
				if (!_this.options.direction) _list.css({marginLeft: -(_w * _active)})
				else _list.css({marginTop: -(_h * _active)})
			}
			else {
				_list.css({
					opacity: 0
				}).removeClass('active').eq(_active).addClass('active').css({
					opacity: 1
				}).css('opacity', 'auto');
				_switcher.removeClass('active').eq(_active).addClass('active');
			}
			
			// Disable or enable buttons "prev next"
			if (_this.options.disableBtn) {
				if (_count < _wrapHolderW) _next.addClass(_this.options.disableBtn);
				_prev.addClass(_this.options.disableBtn);
			}
			
			// Function to "fade"
			function fadeElement(){
				if (_last != _active) {
					_list.eq(_last).animate({opacity:0}, {queue:false, duration: _speed});
					_list.removeClass('active').eq(_active).addClass('active').animate({
						opacity:1
					}, {queue:false, duration: _speed, complete: function(){
						$(this).css('opacity','auto');
					}});
					if (_this.options.switcher) _switcher.removeClass('active').eq(_active).addClass('active');
					_last = _active;
				}
			}
			
			// Function for "slide"
			function scrollEl(){
				if (_last != _active) {
					if (!_this.options.direction) _list.animate({marginLeft: -(_w * _active)}, {queue:false, duration: _speed})
					else _list.animate({marginTop: -(_h * _active)}, {queue:false, duration: _speed})
					if (_this.options.switcher) _switcher.removeClass('active').eq(_active).addClass('active');
					_last = _active;
				}
			}
			function toPrepare(){
				if ((_active == rew) && _this.options.circle) _active = -_this.options.slideElement;
				for (var i = 0; i < _this.options.slideElement; i++){
					_active++;
					if (_active > rew) {
						_active--;
						if (_this.options.disableBtn &&(_count > _wrapHolderW)) _next.addClass(_this.options.disableBtn);
					}
				};
				if (_active == rew) if (_this.options.disableBtn &&(_count > _wrapHolderW)) _next.addClass(_this.options.disableBtn);
				if (!_this.options.effect) scrollEl();
				else fadeElement();
			}
			function runTimer(){
				_t = setInterval(function(){
					toPrepare();
				}, _timer);
			}
			_next.click(function(){
				if(_t) clearTimeout(_t);
				if (_this.options.disableBtn &&(_count > _wrapHolderW)) _prev.removeClass(_this.options.disableBtn);
				toPrepare();
				if (_timer) runTimer();
				return false;
			});
			_prev.click(function(){
				if(_t) clearTimeout(_t);
				if (_this.options.disableBtn &&(_count > _wrapHolderW)) _next.removeClass(_this.options.disableBtn);
				if ((_active == 0) && _this.options.circle) _active = rew + _this.options.slideElement;
				for (var i = 0; i < _this.options.slideElement; i++){
					_active--;
					if (_active < 0) {
						_active++;
						if (_this.options.disableBtn &&(_count > _wrapHolderW)) _prev.addClass(_this.options.disableBtn);
					}
				};
				if (_active == 0) if (_this.options.disableBtn &&(_count > _wrapHolderW)) _prev.addClass(_this.options.disableBtn);
				if (!_this.options.effect) scrollEl();
				else fadeElement();
				if (_timer) runTimer();
				return false;
			});
			if (_this.options.switcher) _switcher.click(function(){
				_active = _switcher.index($(this));
				if(_t) clearTimeout(_t);
				if (!_this.options.effect) scrollEl();
				else fadeElement();
				if (_timer) runTimer();
				return false;
			});
			if (_timer) runTimer();
			
			_this.stop = function(){
				if (_t) clearTimeout(_t);
			}
			_this.play = function(){
				if (_t) clearTimeout(_t);
				if (_timer) runTimer();
			}
		});
	}
	
	function gallery1(_obj) {
		// defaults options
		var _this = this;
		_this.options = {
			hold: 'div.gallery-slide',
			duration: 700,
			slideElement: 1,
			autoRotation: false,
			effect: false,
			listOfSlides: 'ul > li',
			switcher: false,
			disableBtn: false,
			nextBtn: 'a.link-next, a.btn-next, a.next',
			prevBtn: 'a.link-prev, a.btn-prev, a.prev',
			circle: true,
			direction: false
		};
		for(key in _obj) _this.options[key] = _obj[key];
		
		// Variables
		$(_this.options.hold).each(function(){
			var _hold = $(this);
			var _speed = _this.options.duration;
			var _timer = _this.options.autoRotation;
			var _el = _hold.find(_this.options.listOfSlides);
			if (_this.options.effect) var _list = _el;
			else var _list = _el.parent();
			var _switcher = _hold.find(_this.options.switcher);
			var _next = _hold.find(_this.options.nextBtn);
			var _prev = _hold.find(_this.options.prevBtn);
			var _count = _el.index(_el.filter(':last'));
			var _w = _el.outerWidth(true);
			var _h = _el.outerHeight(true);
			if (_timer) var _t;
			if (_this.options.switcher) var _active = _switcher.index(_switcher.filter('.active:eq(0)'));
			else var _active = _el.index(_el.filter('.active:eq(0)'));
			if (_active < 0) _active = 0;
			var _last = _active;
			
			// Installation directions
			if (!_this.options.direction) {
				var _wrapHolderW = Math.ceil(_list.parent().width() / _w);
				if (((_wrapHolderW - 1) * _w + _w / 2) > _list.parent().width()) _wrapHolderW--;
			}
			else{
				var _wrapHolderW = Math.ceil(_list.parent().height()/_h);
				if (((_wrapHolderW-1)*_h + _h/2) > _list.parent().height()) _wrapHolderW--;
			}
			
			// Setting "fade" or "slide" effect
			if (!_this.options.effect) var rew = _count - _wrapHolderW + 1;
			else var rew = _count;
			if (!_this.options.effect) {
				if (!_this.options.direction) _list.css({marginLeft: -(_w * _active)})
				else _list.css({marginTop: -(_h * _active)})
			}
			else {
				_list.css({
					opacity: 0
				}).removeClass('active').eq(_active).addClass('active').css({
					opacity: 1
				}).css('opacity', 'auto');
				_switcher.removeClass('active').eq(_active).addClass('active');
			}
			
			// Disable or enable buttons "prev next"
			if (_this.options.disableBtn) {
				if (_count < _wrapHolderW) _next.addClass(_this.options.disableBtn);
				_prev.addClass(_this.options.disableBtn);
			}
			
			// Function to "fade"
			function fadeElement(){
				if (_last != _active) {
					_list.eq(_last).animate({opacity:0}, {queue:false, duration: _speed});
					_list.removeClass('active').eq(_active).addClass('active').animate({
						opacity:1
					}, {queue:false, duration: _speed, complete: function(){
						$(this).css('opacity','auto');
					}});
					if (_this.options.switcher) _switcher.removeClass('active').eq(_active).addClass('active');
					_last = _active;
				}
			}
			
			// Function for "slide"
			function scrollEl(){
				if (_last != _active) {
					if (!_this.options.direction) _list.animate({marginLeft: -(_w * _active)}, {queue:false, duration: _speed})
					else _list.animate({marginTop: -(_h * _active)}, {queue:false, duration: _speed})
					if (_this.options.switcher) _switcher.removeClass('active').eq(_active).addClass('active');
					_last = _active;
				}
			}
			function toPrepare(){
				if ((_active == rew) && _this.options.circle) _active = -_this.options.slideElement;
				for (var i = 0; i < _this.options.slideElement; i++){
					_active++;
					if (_active > rew) {
						_active--;
						if (_this.options.disableBtn &&(_count > _wrapHolderW)) _next.addClass(_this.options.disableBtn);
					}
				};
				if (_active == rew) if (_this.options.disableBtn &&(_count > _wrapHolderW)) _next.addClass(_this.options.disableBtn);
				if (!_this.options.effect) scrollEl();
				else fadeElement();
			}
			function runTimer(){
				_t = setInterval(function(){
					toPrepare();
				}, _timer);
			}
			_next.click(function(){
				if(_t) clearTimeout(_t);
				if (_this.options.disableBtn &&(_count > _wrapHolderW)) _prev.removeClass(_this.options.disableBtn);
				toPrepare();
				if (_timer) runTimer();
				return false;
			});
			_prev.click(function(){
				if(_t) clearTimeout(_t);
				if (_this.options.disableBtn &&(_count > _wrapHolderW)) _next.removeClass(_this.options.disableBtn);
				if ((_active == 0) && _this.options.circle) _active = rew + _this.options.slideElement;
				for (var i = 0; i < _this.options.slideElement; i++){
					_active--;
					if (_active < 0) {
						_active++;
						if (_this.options.disableBtn &&(_count > _wrapHolderW)) _prev.addClass(_this.options.disableBtn);
					}
				};
				if (_active == 0) if (_this.options.disableBtn &&(_count > _wrapHolderW)) _prev.addClass(_this.options.disableBtn);
				if (!_this.options.effect) scrollEl();
				else fadeElement();
				if (_timer) runTimer();
				return false;
			});
			if (_this.options.switcher) _switcher.click(function(){
				_active = _switcher.index($(this));
				if(_t) clearTimeout(_t);
				if (!_this.options.effect) scrollEl();
				else fadeElement();
				if (_timer) runTimer();
				return false;
			});
			if (_timer) runTimer();
			
			_this.stop = function(){
				if (_t) clearTimeout(_t);
			}
			_this.play = function(){
				if (_t) clearTimeout(_t);
				if (_timer) runTimer();
			}
		});
	}
	/*--- /Gallery Home ---*/
	
	/* ------------------------------------------------------------------ */
	/*--- Gallery Collection Landing ---*/
	function gallery2(_obj) {
		
		// defaults options
		this.options = {
			hold: 'div.gallery-slide',
			duration: 700,
			slideElement: 1,
			autoRotation: false,
			effect: false,
			fadeEl: 'ul',
			switcher: 'ul > li',
			disableBtn: false,
			nextBtn: 'a.link-next, a.btn-next, a.next',
			prevBtn: 'a.link-prev, a.btn-prev, a.prev',
			circle: true,
			direction: false
		};
		for(key in _obj) this.options[key] = _obj[key];
		
		var _this = this;
		var _hold = $(_this.options.hold);
		var _speed = $.browser.msie ? 0 : _this.options.duration;
		var _timer = _this.options.autoRotation;
		var _wrap = _hold.find(_this.options.fadeEl);
		var _el = _hold.find(_this.options.switcher);
		var _next = _hold.find(_this.options.nextBtn);
		var _prev = _hold.find(_this.options.prevBtn);
		var _count = _el.index(_el.filter(':last'));
		var _w = _el.outerWidth(true);
		var _h = _el.outerHeight(true);
		if (!_this.options.direction) {
			var _wrapHolderW = Math.ceil(_wrap.parent().width() / _w);
			if (((_wrapHolderW - 1) * _w + _w / 2) > _wrap.parent().width()) _wrapHolderW--;
		}
		else{
			var _wrapHolderW = Math.ceil(_wrap.parent().height()/_h);
			if (((_wrapHolderW-1)*_h + _h/2) > _wrap.parent().height()) _wrapHolderW--;
		}
		if (_timer) var _t;
		var _active = _el.index(_el.filter('.active:eq(0)'));
		if (_active < 0) _active = 0;
		var _last = _active;
		if (!_this.options.effect) var rew = _count - _wrapHolderW + 1;
		else var rew = _count;
		
		if (!_this.options.effect) {
			if (!_this.options.direction) _wrap.css({marginLeft: -(_w * _active)})
			else _wrap.css({marginTop: -(_h * _active)})
		}
		else {
			_wrap.css({
				opacity: 0
			}).removeClass('active').eq(_active).addClass('active').css({
				opacity: 1
			}).css('opacity', 'auto');
			_el.removeClass('active').eq(_active).addClass('active');
		}
		if (_this.options.disableBtn) {
			if (_count < _wrapHolderW) _next.addClass(_this.options.disableBtn);
			_prev.addClass(_this.options.disableBtn);
		}
		
		function fadeElement(){
			_wrap.eq(_last).animate({opacity:0}, {queue:false, duration: _speed});
			_wrap.removeClass('active').eq(_active).addClass('active').animate({
				opacity:1
			}, {queue:false, duration: _speed, complete: function(){
				$(this).css('opacity','auto');
			}});
			_el.removeClass('active').eq(_active).addClass('active');
			_last = _active;
		}
		function scrollEl(){
			if (!_this.options.direction) _wrap.animate({marginLeft: -(_w * _active)}, {queue:false, duration: _speed})
			else _wrap.animate({marginTop: -(_h * _active)}, {queue:false, duration: _speed})
		}
		function toPrepare(){
			if ((_active == rew) && _this.options.circle) _active = -_this.options.slideElement;
			for (var i = 0; i < _this.options.slideElement; i++){
				_active++;
				if (_active > rew) {
					_active--;
					if (_this.options.disableBtn &&(_count > _wrapHolderW)) _next.addClass(_this.options.disableBtn);
				}
			};
			if (_active == rew) if (_this.options.disableBtn &&(_count > _wrapHolderW)) _next.addClass(_this.options.disableBtn);
			if (!_this.options.effect) scrollEl();
			else fadeElement();
		}
		function runTimer(){
			_t = setInterval(function(){
				toPrepare();
			}, _timer);
		}
		_next.click(function(){
			flag=true;
			if(_t) clearTimeout(_t);
			if (_this.options.disableBtn &&(_count > _wrapHolderW)) _prev.removeClass(_this.options.disableBtn);
			toPrepare();
			if (_timer) runTimer();
			return false;
		});
		_prev.click(function(){
			flag=true;
			if(_t) clearTimeout(_t);
			if (_this.options.disableBtn &&(_count > _wrapHolderW)) _next.removeClass(_this.options.disableBtn);
			if ((_active == 0) && _this.options.circle) _active = rew + _this.options.slideElement;
			for (var i = 0; i < _this.options.slideElement; i++){
				_active--;
				if (_active < 0) {
					_active++;
					if (_this.options.disableBtn &&(_count > _wrapHolderW)) _prev.addClass(_this.options.disableBtn);
				}
			};
			if (_active == 0) if (_this.options.disableBtn &&(_count > _wrapHolderW)) _prev.addClass(_this.options.disableBtn);
			if (!_this.options.effect) scrollEl();
			else fadeElement();
			if (_timer) runTimer();
			return false;
		});
		if (_this.options.effect) _el.click(function(){
			_active = _el.index($(this));
			if(_t) clearTimeout(_t);
			fadeElement();
			if (_timer) runTimer();
			if(_this.options.fadeEl != _this.options.switcher ){
				return false;
			}
		});
		if (_timer) runTimer();
		
		this.stop = function(){
			if (_t) clearTimeout(_t);
		}
		this.play = function(){
			if (_t) clearTimeout(_t);
			if (_timer) runTimer();
		}
	}
	/*--- /Gallery Collection Landing ---*/
	
	/*--- popup function ---*/
	function initPopup(){
		if($('#fader').length == 0) $('form').append('<div id="fader"></div>');
		var _fader = $('#fader');
		_fader.hide();
		var _popup = -1;
		
		$(".popup").appendTo("form");
		$(".popup").hide();
		
		$('a.with-popup').each(function(){
			var _el = this;
			if(true){
							
				// Popup with large image
				if ($(this).hasClass("j_popup_large")){
					_el._popup = $("#popup-large-image");
				} else if ($(this).hasClass("j_video_popup")){
					_el._popup = $("#popup-video");
				} else {
					_el._popup = $("#popup");
				}
				if(_el._popup.length){
					_el.onclick = function(){
						if(_el._popup){
							_el._popup.hide();
							_popup = _el._popup;
							
							// Load Content In Popup First and then call "showPopup()"
							
							//specific for quickview
							if ($(this).hasClass("j_quickview")) {
									CallAJAX($(this).attr("rel"));
							}
							// Popup for large images
							if ($(this).hasClass("j_popup_large")){
								$("#popup-large-image .valign img").attr("src", $(this).attr("href"));
							}
							// Popup specific for Popup YouTube Videos Only
							if ($(this).hasClass("j_video_popup")){
								$(".popup2 .headings h3").html( $(this).attr("title") );
								initPlayer(this.href);
							}
							
							// Show Fader and Popup container
							showPopup();
						}
						return false;
					}
					_el._popup.find('.popup-close').click(function(){
						if(_popup != -1){
							// Delete Player for IE6
							if ( $(".j_video_popup").css("visibility") != "hidden" ){
								closePlayer();
							}
							
							if($.browser.msie){
								_popup.hide();
								_fader.fadeOut(200);
								_popup = -1;
								if($.browser.version < 7) $('#wrapper select:not(".outtaHere")').css('visibility', 'visible');
							}
							else{
								_popup.fadeOut(400, function(){
									_fader.fadeOut(200);
									 _popup = -1;
								});
							}
							$('div.optionsDivVisible').removeClass('optionsDivVisible').addClass('optionsDivInvisible');
							gal3.play();
							gal4.play();
						}
						return false;
					});
				}
			}
		});
		_fader.click(function(){
			if(_popup != -1){
				
				// Delete Player for IE6
				if ( $(".j_video_popup").css("visibility") != "hidden" ){
					closePlayer();
				}
				
				if($.browser.msie){
					_popup.hide();
					_fader.fadeOut(200);
					_popup = -1;
					if($.browser.version < 7) $('#wrapper select:not(".outtaHere")').css('visibility', 'visible');
				}
				else{
					_popup.fadeOut(400, function(){
						_fader.fadeOut(200);
						_popup = -1;
					});
				}
				$('div.optionsDivVisible').removeClass('optionsDivVisible').addClass('optionsDivInvisible');
				gal3.play();
				gal4.play();
			}
			return false;
		});
		$(document).keydown(function(e){
			if(!e)evt = window.event;
			if(e.keyCode == 27 && _popup != -1){
				if($.browser.msie){
					_popup.hide();
					_fader.fadeOut(200);
					_popup = -1;
					if($.browser.version < 7) $('#wrapper select:not(".outtaHere")').css('visibility', 'visible');
				}
				else{
					_popup.fadeOut(400, function(){
						_fader.fadeOut(200);
						_popup = -1;
					});
				}
				$('div.optionsDivVisible').removeClass('optionsDivVisible').addClass('optionsDivInvisible');
				gal3.play();
				gal4.play();
			}
		});
		function showPopup(){
			_fader.css({
				opacity: 0,
				height: initH(),
				display:'block'
			});
			_popup.css({top: $(window).scrollTop()});
			if($.browser.msie && $.browser.version < 7) if($.browser.version < 7) $('#wrapper select:not(".outtaHere")').css('visibility', 'hidden');
			_fader.fadeTo(400, 0.5, function(){
				if(_popup != -1){
					if($.browser.msie) _popup.show();
					else _popup.fadeIn(200, function(){
						if(initH() < _popup.outerHeight()+_popup.offset().top) _fader.height(_popup.outerHeight()+_popup.offset().top);
					});
					_popup.css({top: $(window).scrollTop()+ ($(window).height() - _popup.outerHeight())/2});
					if(initH() < _popup.outerHeight()+_popup.offset().top) _fader.height(_popup.outerHeight()+_popup.offset().top);
					_popup.find('.download-drop').removeClass('download-active');
					if(typeof(replaceSelects) == 'function'){
						replaceSelects();
					}
					gal3.stop();
					gal4.stop();
				}
			});
			
		}
		function initH(){
			var _h = $('#wrapper').outerHeight();
			if(_h < $(window).height()) _h = $(window).height();
			if(_h < $('body').outerHeight(true)) _h = $('body').outerHeight(true);
			return _h;
		}
	}
	/*--- /popup function ---*/
	
	/*---GUIDs with Pipe Delimited ( ProductID | CurrentProductSectionID ) ---*/
	function CallAJAX(GUIDs) {
		//alert(GUID);
		$.ajax({
			url: "/Utility/service.aspx",
			data: "param=" + GUIDs,
			success: function(data) {
				var html = data;
				if (html) {
					$("#popup").find(".inner-popup").html(html);
					initPopupScript();
				}
			}
		});
	}
	
	
	function initPopupScript() {
		// ------------------------------------------------------------------------------
		// Change Views: grid-view | list-view
		$("#popup .prod-photo-area .swicher li a").click(function() {
			var index = $("#popup .prod-photo-area .swicher li").index($(this).parent());
			// Photo
			$(this).parents(".frame").find(".photo-box li.active").removeClass("active");
			$($(this).parents(".frame").find(".photo-box li").get(index)).addClass("active");
			
			// List Prices
			$(this).parents(".inner-popup").find(".model-switcher .model.active").removeClass("active");
			$($(this).parents(".inner-popup").find(".model-switcher .model").get(index)).addClass("active");
			
			// List Prices
			$(this).parents(".frame").find(".add-section dl dd.active").removeClass("active");
			$($(this).parents(".frame").find(".add-section dl dd").get(index)).addClass("active");
		});
		$('#popup .j_redirect_blank').change(function() {
			if ($(this).val() != "")
				window.open($(this).val());
		});
	}
	
	
	/*--- Detect Registered and Trademarked symbols and add sup ---*/
	var tm = new RegExp('\u2122','g');		// Trademarked
	var reg = new RegExp('\u00ae','g');		// Registered
	
	window.detectEntities = function(classname) {
		if ($(classname).length) {
			$(classname).each(function(){
				newTitle1 = $(this).html().replace(/<\/?[^>]+>/gi, '').replace(reg, '<sup>&reg;</sup>').replace(tm, '<sup class="trade">&trade;</sup>');
				$(this).html(newTitle1);
			});
		}
	}

	//==========================================================================================
	// BEGIN: Jquery - document ready
	jQuery(document).ready(function($) {
		
		// ------------------------------------------------------------------------------
		// j_on
		// If JavaScript is enabled this adds "j_on" to body tag.
		$("body").addClass("j_on");
		
		
		// ------------------------------------------------------------------------------
		// Detect Registered and Trademarked symbols and add sup
		detectEntities (".caption .holder .h2 a");
		detectEntities (".col-area h1");
		detectEntities (".heading h1");
		detectEntities (".fe-main h2");
		detectEntities (".p-info h1");
		
		// Render Cufon Fonts
		initCufon();
		
		
		// ------------------------------------------------------------------------------
		// .clear_value
		// On Load
		$(".clear_value").each(function(){
			if ($(this).val() != $(this).attr("title")) {
				$(this).removeClass("clear_value_off");
			}
		});
		// Clears default input text value when it's on focus. Default text value should be set in the "title" attribute
		$(".clear_value").focus(function() {
		  if ($(this).val() == $(this).attr("title")) {
				$(this).val("");
				$(this).removeClass("clear_value_off");
		  }
		}).blur(function() {
		  if ($(this).val() == "") {
				$(this).val($(this).attr("title"));
				$(this).addClass("clear_value_off");
		  }
		});
		
		// ------------------------------------------------------------------------------
		// Home gallery
		// gal1 = News Slider
		var gal1 = new gallery({
		  hold: 'div.news-slider',
		  autoRotation: 8000,
		  duration: 800,
		  circle: true,
		  listOfSlides: 'ul.slide > li',
		  nextBtn: 'a.btn-next',
		  prevBtn: false
		});
		$(".home-container ul.slide").hover(function() {
		  gal1.stop();
		});
		// gal2 = Hero Images
		var gal2 = new gallery1({
		  hold: 'div#content',
		  autoRotation: 5000,
		  duration: 800,
		  listOfSlides: 'ul.gallery > li',
		  switcher: 'ul.thumbnails > li',
		  effect: 'fade',
		  nextBtn: false,
		  prevBtn: false
		});
		$('.home-container ul.gallery').mouseenter(function() {
			gal2.stop();
		}).mouseleave(function() {
		  gal2.play();
		});
		
		
		
		// ------------------------------------------------------------------------------
		// Collection Landing
		gal3 = new gallery2({
		  hold: '.gall-fade',
		  duration: 1000,
		  autoRotation: 5000,
		  fadeEl: 'ul.gallery2 > li',
		  switcher: '.panel li a',
		  effect: 'fade'
		});
		gal4 = new gallery2({
		  hold: '.gall-fade',
		  duration: 1000,
		  autoRotation: 5000,
		  fadeEl: '.details-list-gallery > li',
		  switcher: '.panel li a',
		  effect: 'fade'
		});
		$('ul.gallery2, .details-list-gallery').mouseenter(function() {
		  gal3.stop();
		  gal4.stop();
		}).mouseleave(function() {
		  gal3.play();
		  gal4.play();
		});
		if ($(".jqzoom").length) {
		  $(".jqzoom").jqzoom();
		}
		initPopup();
		
		
		// ------------------------------------------------------------------------------
		// j_redirect
		// get your select element and listen for a change event on it
		$('#wrapper .j_redirect').change(function() {
			if (($(this).val() != "") && ($(this).val() != "nolink"))
				window.location = $(this).val();
		});
		$('#wrapper .j_redirect_ongo').click(function() {
			if (($(this).parents(".row").find(".j_redirect_select_ongo").val() != "") && ($(this).parents(".row").find(".j_redirect_select_ongo").val() != "nolink")) {
				window.location = $(this).parents(".row").find(".j_redirect_select_ongo").val();
			}
		});
		$('#wrapper .j_redirect_blank').change(function() {
			if (($(this).val() != "") && ($(this).val() != "nolink"))
				window.open($(this).val());
		});
		
	
		// ------------------------------------------------------------------------------
		// Change Views: grid-view | list-view
		$(".link-list-view").click(function() {
		  if ($(".grid-view").length) {
				$(".grid-view").addClass("list-view");
				$(".grid-view").removeClass("grid-view");
				$(this).parents(".view").find("li.active").removeClass("active");
				$(this).parents("li:first").addClass("active");
		  }
		});
		$(".link-grid-view").click(function() {
		  if ($(".list-view").length) {
				$(".list-view").addClass("grid-view");
				$(".list-view").removeClass("list-view");
				$(this).parents(".view").find("li.active").removeClass("active");
				$(this).parents("li:first").addClass("active");
		  }
		});
		
		// ------------------------------------------------------------------------------
		// Change Views: grid-view | list-view
		$("#wrapper .prod-photo-area .swicher li a").click(function() {
			var index = $(".prod-photo-area .swicher li").index($(this).parent());
			// Toggle Product Photo
			$(this).parents(".frame").find(".photo-box li.active").removeClass("active");
			$($(this).parents(".frame").find(".photo-box li").get(index)).addClass("active");
			
			// SKU
			$(this).parents(".p-details").find(".sku-switch h3.active").removeClass("active");
			$($(this).parents(".p-details").find(".sku-switch h3").get(index)).addClass("active");
			
			// List Price
			$(this).parents(".p-details").find(".msrp dd.active").removeClass("active");
			$($(this).parents(".p-details").find(".msrp dd").get(index)).addClass("active");
		});
		
		
		// ------------------------------------------------------------------------------
		// Add style to bottom paging
		$(".paging-box:odd").addClass("paging-box-btm");
		
		
		
	});
	// END: Jquery - document ready

});
// END jQuery Safety
