(function() {
		var BrowserDetect = {
			init: function () {
				this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
				this.version = this.searchVersion(navigator.userAgent)
					|| this.searchVersion(navigator.appVersion)
					|| "an unknown version";
				this.OS = this.searchString(this.dataOS) || "an unknown OS";
			},
			searchString: function (data) {
				for (var i=0;i<data.length;i++)	{
					var dataString = data[i].string;
					var dataProp = data[i].prop;
					this.versionSearchString = data[i].versionSearch || data[i].identity;
					if (dataString) {
						if (dataString.indexOf(data[i].subString) != -1)
							return data[i].identity;
					}
					else if (dataProp)
						return data[i].identity;
				}
			},
			searchVersion: function (dataString) {
				var index = dataString.indexOf(this.versionSearchString);
				if (index == -1) return;
				return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
			},
			dataBrowser: [
				{
					string: navigator.userAgent,
					subString: "Chrome",
					identity: "Chrome"
				},
				{ 	string: navigator.userAgent,
					subString: "OmniWeb",
					versionSearch: "OmniWeb/",
					identity: "OmniWeb"
				},
				{
					string: navigator.vendor,
					subString: "Apple",
					identity: "Safari",
					versionSearch: "Version"
				},
				{
					prop: window.opera,
					identity: "Opera"
				},
				{
					string: navigator.vendor,
					subString: "iCab",
					identity: "iCab"
				},
				{
					string: navigator.vendor,
					subString: "KDE",
					identity: "Konqueror"
				},
				{
					string: navigator.userAgent,
					subString: "Firefox",
					identity: "Firefox"
				},
				{
					string: navigator.vendor,
					subString: "Camino",
					identity: "Camino"
				},
				{		// for newer Netscapes (6+)
					string: navigator.userAgent,
					subString: "Netscape",
					identity: "Netscape"
				},
				{
					string: navigator.userAgent,
					subString: "MSIE",
					identity: "Explorer",
					versionSearch: "MSIE"
				},
				{
					string: navigator.userAgent,
					subString: "Gecko",
					identity: "Mozilla",
					versionSearch: "rv"
				},
				{ 		// for older Netscapes (4-)
					string: navigator.userAgent,
					subString: "Mozilla",
					identity: "Netscape",
					versionSearch: "Mozilla"
				}
			],
			dataOS : [
				{
					string: navigator.platform,
					subString: "Win",
					identity: "Windows"
				},
				{
					string: navigator.platform,
					subString: "Mac",
					identity: "Mac"
				},
				{
					string: navigator.userAgent,
					subString: "iPhone",
					identity: "iPhone/iPod"
			    },
				{
					string: navigator.platform,
					subString: "Linux",
					identity: "Linux"
				}
			]
		};
		BrowserDetect.init();
		window.$j.client = { os : BrowserDetect.OS, browser : BrowserDetect.browser };
	})();


if (onetimejs == true) {
	onetimejs = false;
	var $j = jQuery.noConflict();
	
	var menu_is_hidden = false, fx_easing = "easeOutBack", loading = false, mouseScrolled = false, animatelogo = false;
	
	function initOneTimeJs() {
		showMenu();
		$j(window).bind('resize', thumbsScroll);
		
		$j("#menubtn").bind("mouseenter", function() { animateMenuInOut(); });
		$j("#menu > li").hover(
			function () {
				//mouse hover		
				var submenu = $j(this).find(".sub-menu");
				if (submenu.length > 0) {
					submenu.find("li").each(function(index) {
						$j(this).css({"opacity" : 0}).stop().delay(index*150+150).animate({"opacity" : 1}, 500);
					});
				}
			}, 
			function () {
				//mouse out
			}
		);
		
		$j("#header").bind("mouseleave", function() {
			if (menu_is_hidden == false) {
				animateMenuInOut();
			}
		});
		
		hideShowMenuBtn();
		showHideMP3Player();
		initCommonJsSweetness();
		
		$j(window).scroll(function () { 
			hideShowMenuBtn();
			//mouseScrolled = true;
	    });
	    
	    $j("html").delegate("body", "mousemove", function(e) {
	    	if ($j("#thumbsWrapper").length > 0) {
		    	var wh = $j(window).height(), mouseY = e.pageY, delta = wh - e.pageY, thumbtoppos = parseInt($j("#thumbsWrapper").css("top").replace(/[^\d\.]/g, ''));
		    	if (delta <= 100 && delta > 0 && $j(window).scrollTop() < 30 && thumbtoppos == 0) {
		    		$j("#thumbsWrapper").stop().animate({"top" : -80}, 300);
		    		$j("#ss_controls").stop().animate({"top" : -100}, 300);
		    	} else if (delta > 100 || delta < 0) {
		    		$j("#thumbsWrapper").stop().animate({"top" : 0}, 300);
		    		$j("#ss_controls").stop().animate({"top" : -20}, 300);
		    	}
	    	}
	    });
	    
	    /**** SWF ADDRESS PART ****/	
	    function handleChange(event) {
	    	//console.log("handle change");
			if (event.path != "/" && event.path != "respond" && event.path != "s" && event.path != "comment" && event.path != "/"+sitepath) {
				if (SWFAddress.getQueryString() != undefined) {
					var path = event.path + "?" + SWFAddress.getQueryString();
				} else {
					var path = event.path;
				}
				var pathToLoad = path.slice(1);
				loadContent(sitepath + "" + pathToLoad);
			} else if (event.path == "/" && firstload != true && SWFAddress.getQueryString() == undefined) {
				loadContent(sitepath);
			} else if (event.path == "/" && firstload != true && SWFAddress.getQueryString() != undefined) {
				loadContent(sitepath+"?"+SWFAddress.getQueryString());
			} else {
				//console.log("firstload");
				firstload = false;
				backgroundSS();
			}
			$j("#menu_padding").css({"height" : $j(document).height()});
		}
		SWFAddress.addEventListener(SWFAddressEvent.CHANGE, handleChange);
	    /**************************/
	    if (blockrc == 'true') {
			$j(this).bind("contextmenu", function(e) {
				e.preventDefault();
			});
		}
	}// end initOneTimeJs
	
	function loadContent(menu_item) {
		$j(".small_slideshow").each(function(){
			$j(this).cycle('destroy');
		});
		var urlToLoad = menu_item;
		
		loading = true;
		loading_sign();
		$j.ajax({
			type: "POST",
			url: urlToLoad,
			data: "ajax=true",
	
			success: function(msg) {
				var classes_to_check = '.current-menu-ancestor, .current-menu-parent, .current-menu-item, .current_page_item',
					classes_to_add = 'current-menu-item',
					classes_to_remove = 'current-menu-ancestor current-menu-parent current-menu-item current_page_item';
					
				if ($j("#menu a[href$="+menu_item+"]").parent().parent().parent().attr("id") == "menu") {
					$j(classes_to_check).removeClass(classes_to_remove);
					$j("#menu a[href$="+menu_item+"]").parent().parent().addClass(classes_to_add);
					
				}
				if ($j("#menu a[href$="+menu_item+"]").parent().parent().parent().parent().attr("id") == "menu") {
					$j(classes_to_check).removeClass(classes_to_remove);
					
					$j("#menu a[href$="+menu_item+"]").parent().parent().parent().addClass(classes_to_add);
				}
				if ($j("#menu a[href$="+menu_item+"]").parent().parent().parent().parent().parent().attr("id") == "menu") {
					$j(classes_to_check).removeClass(classes_to_remove);
					$j("#menu a[href$="+menu_item+"]").parent().parent().addClass(classes_to_add);
					$j("#menu a[href$="+menu_item+"]").parent().parent().parent().parent().addClass("current-menu-ancestor");
				}
	
				if (homepage == "true") {
					homepage = "false";
				}
				$j("#content").html(msg);
				th_hack_new = $j("#thumbsContainer").html();
				
				addBodyClass();
				initCommonJsSweetness();
				firstload = false;
				initJsSweetness();
				delayInitScroll();
				loading = false;
				loading_sign();
				if ($j("body").hasClass("single_blog_post")) {
					clearTimeout(timer);
					busy = false;
				}
			}
		});
	}
		
		
	function addBodyClass() {
		if (isset("bodyextraclass")) {
			var textlength = bodyextraclass.length - 1;
			$j("body").attr("class", bodyextraclass.slice(7, textlength));
		}
	}
	
	function isset(varname) {
		if (typeof(window[varname]) != "undefined") return true;
		else return false;
	}
	function initJsSweetness() {
		portfolioTapeBehaviour();
		if (firstload == false) {
			backgroundSS();
		}
		
		thumbsScroll();
		ajaxLinks();
		searchSubmit();
		
	}
	
	thumbsScroll = function() {
		var $tContainer = $j('#thumbsContainer');
		thumbsDim($tContainer);
		makeScrollable($j('#thumbsWrapper'), $tContainer, 100);
	}
		
	function searchSubmit() {
		$j("#searchform input").click(function(e) {
			e.preventDefault();
			var s_val = $j(this).parent().find("#s").val();
			if (s_val != '') {
				//console.log("dada");
				SWFAddress.setValue('?s='+s_val);
			}
		});
	}
	
	function ajaxLinks() {
		$j("a:not([href*="+sitepath+"])").not("[href^=#]").addClass("external").attr({ target: "_blank" });//, 
		$j("[href*='?show=']").removeAttr("target");
	
		$j("a").not(".post-edit-link, .external, .ss_link").not("[href$='.jpg'], [href$='.pdf'], [href$='.mp3'], [href$='.doc'], [href$='.ppt'], [href$='.xls'], [href$='.mov']").click(function(event) {
			event.preventDefault();
			//mouseScrolled = false;
			if ($j(this).parent().hasClass("gallery-icon")) {
				return;
			}
			if (
				$j(this).parent().parent().hasClass("current-menu-item") == false 
				&& loading == false
				&& $j(this).attr("href") != "#" 
				&& $j(this).attr("href") != "#nextslide" 
				&& $j(this).attr("href") != "#tooltip"
			) {
				if ($j(this).attr("href") != sitepath) {
					var loadurl = $j(this).attr("href").replace(sitepath, "");
					SWFAddress.setValue(loadurl);
				}
				else {
					SWFAddress.setValue("/");
				}
				//
				if (menu_is_hidden == false) {
					animateMenuInOut();
				}
			} else if ($j(this).parent().parent().hasClass("current-menu-item") == true) {
				var pos = $j("#content").position();
				$j("html, body").animate({scrollTop : pos.top+1}, 2500, fx_easing);
			}
		});
	}
	
	function loading_sign() {
		var loading_sign = $j("#loading");
		if (loading) {
			var top = $j(window).scrollTop() + $j(window).height()/2, left = $j(window).width()/2;//parseInt($j(window).scrollTop())
			loading_sign.css({"top" : top, "left" : left}).fadeIn();
			$j("body").bind("mousemove", function(e) {
				var top = e.pageY + 10, left = e.pageX + 10;
				loading_sign.css({"top" : top, "left" : left});
			});
		} else {
			loading_sign.fadeOut(500, function() { $j("body").unbind("mousemove"); });
		}
	}
	
	function hideShowMenuBtn() {
		
		if ($j("#header").length == 1 && $j("body").hasClass("single_blog_post") == false && $j("#header #menu").length == 1) {		
			if ($j.browser.mozilla && $j.client.os == "Windows") {
				var height = parseInt($j("#header").outerHeight()) - parseInt($j("#header #menu").css("margin-top").replace(/[^\d\.]/g, '')) - 20;
			} else {
				var menu_position_top = parseInt($j("#header #menu").position().top);
				var menu_margin_top = parseInt($j("#header #menu").css("margin-top").replace(/[^\d\.]/g, ''));
				
				var height = parseInt($j("#header").css("bottom").replace(/[^\d\.]/g, '')) + parseInt($j("#header").outerHeight()) - menu_position_top - menu_margin_top - 20;
			}
			
			var scrollTop = $j(window).scrollTop();
			if (scrollTop < height) {
				//$j("#menubtn").fadeOut("slow");
				$j("#logotype").css({"opacity" : 1});
				animatelogo = false;
			} else {
				//$j("#menubtn").fadeIn("slow");
				animatelogo = true;
			}
		} else {
			//$j("#menubtn").css({"display" : "none"});
		}
		positionMenu();
	}
	
	function positionMenu() {
		//console.log($j.browser);
		if ($j.browser.mozilla && $j.client.os == "Windows") {//Windows
			var header = $j("#header"), topval = $j(window).scrollTop() + $j(window).height() - 100 - header.outerHeight();
			//header.css({"position" : "absolute", "top" : topval, "bottom" : "auto"});
			header.css({"position" : "absolute", "bottom" : "auto"});
			header.stop().delay(500).animate({"top" : topval}, 5);
		}
	}
	function animateMenuInOut() {
		var menu_holder = $j("#header"), menu_padding = $j("#menu_padding"), menu_container = menu_holder.find("#menu");
	//	console.log(animatelogo);
		if (menu_is_hidden) {
			menu_holder.addClass("menuontop").css({"z-index" : 8});
			
			menu_container.css({"opacity" : 0, "display" : "block"});
			menu_container.stop().delay(500).animate({"opacity" : 1});
			if (animatelogo) { menu_holder.find("#logotype").stop().css({"opacity" : 0}).animate({"opacity" : 1}); }
			
			menu_holder.find("#menu li, #menu li a").css({"opacity" : 1, "cursor" : "pointer"});
			
			menu_is_hidden = false;
			
			var hh = $j(document).height();
			menu_padding.css({"height" : hh, "z-index" : 7, "opacity" : 0, "display" : "block"});
			menu_padding.stop().animate({"opacity" : 0.8});
		} else {
			menu_is_hidden = true;
			
			menu_container.stop().animate({"opacity" : 0});
			if (animatelogo) { menu_holder.find("#logotype").stop().animate({"opacity" : 0}); }
			menu_padding.stop().delay(500).animate({"opacity" : 0}, function() { hideMenu(menu_holder, menu_padding); });
		}
	}
	
	function hideMenu(menu_holder, menu_padding) {
		//menu_holder.removeClass("menuontop").css({"z-index" : 3, "opacity" : 1});
		menu_holder.removeClass("menuontop").css({"z-index" : 3});
		menu_holder.find("#menu li, #menu li a").css({"opacity" : 0, "cursor" : "default"});
		//menu_holder.find("#menu").css({"display" : "none"});
		
		menu_padding.css({"z-index" : 3, "opacity" : 0, "display" : "none"});
		if (animatelogo) { menu_holder.find("#logotype").stop().css({"opacity" : 1}); }
	}
	
	function showHideMP3Player() {
		$j("#playlist img.mp3_ico").bind("mouseenter", function() {
			$j("#player_controls").stop().css({"opacity" : 0, "display" : "block", "left" : 30}).animate({"opacity" : 1, "left" : 100}, 100);
		});
		$j("#player_controls").bind("mouseleave", function() {
			$j(this).stop().animate({"opacity" : 0, "left" : 30}, 500, function() { $j(this).css({"display" : "none"});});
		});
	}
	
	function showMenu() {
		var el_delay = 200, global_delay = 500, fx_speed = 1500;
		//$j("#logotype").css({"opacity" : 0, "position" : "relative", "top" : -50}).delay(500).animate({"opacity" : 1, "top" : 0}, fx_speed/2);
		
		$j("#menu > li").each(function(index) {
			var thisel = $j(this), padleft = parseInt(thisel.find("span a").css("margin-left"));
			thisel.find("span a").css({"margin-left" : -500}).delay(el_delay*index+global_delay).animate({"margin-left" : padleft}, fx_speed, fx_easing);
			thisel.css({"opacity" : 0}).delay(el_delay*index+global_delay).animate({"opacity" : 1}, fx_speed, function() { menuAnimationEnd(index); });
		});
		
		if ($j("#menu").length == 0) {
			initial_bg_fade = true;
			delayInitScroll();
			animateMenuInOut();
		}
	}
	function menuAnimationEnd(index) {
		var first_level_li = $j("#menu > li").length, sibling = 1;
		//if (first_level_li < 2) sibling = 1;
		
		if (parseInt(first_level_li-sibling) == index) {
			initial_bg_fade = true;
			//
			delayInitScroll();
			animateMenuInOut();
		}
	}
	
	var initScrollTimer;
	function delayInitScroll() {
		clearTimeout(initScrollTimer); initScrollTimer = setTimeout( "initScroll()", 500); //1200
	}
	
	function initScroll() {
		if (mouseScrolled == false) {//&& $j("html").scrollTop() > 50
			var scroll_speed = 500, urlstring = SWFAddress.getValue(); //2500
			if (urlstring.indexOf("#respond") != -1) {
				var pos = $j("#respond").position();
				$j("html, body").animate({scrollTop : pos.top+1}, scroll_speed, fx_easing);
			}
			else if (urlstring.indexOf("#comments") != -1) {
				var pos = $j("#comments").position();
				$j("html, body").animate({scrollTop : pos.top+1}, scroll_speed, fx_easing);
			}
			else if ($j("body").hasClass("single-wpbportfolio") == true) {
				if ($j(window).scrollTop() > 20) {
					$j("html, body").animate({scrollTop : 0}, scroll_speed, fx_easing);
				}
			}
			else if (homepage == "false") {
				var pos = $j("#content").position();
				if ($j(window).scrollTop() != pos.top) {
					$j("html, body").animate({scrollTop : pos.top+1}, scroll_speed, fx_easing);
				}
			} else if (homepage == "true") {
				homepage = "false";
				var pos = parseInt($j("#content").position().top*0.35);
				$j("html, body").delay(500).animate({scrollTop : pos}, scroll_speed).delay(500).animate({scrollTop : 0}, scroll_speed);
			}
		} else {
			mouseScrolled = false;
		}
	}
	
	/*** Background change ***/
	var fading_time = 1500, slides_delay = 15000, cur_bg = -1, busy = false, initial_bg_fade = false, initial_timer, timer;
	function backgroundSS() {
		if (th_hack != th_hack_new) {
			th_hack_new = th_hack;
			cur_bg = -1;
		}
		clearTimeout(timer);
		loadBackgroundImage();
		bgThumbnailsBehaviour();
	}
	
	function fadeInThumbnails() {
		$j("#thumbsContainer a img").each(function(index) {
			$j(this).css({"opacity" : 0}).delay(parseInt(200*index)).animate({"opacity" : 0.4});
		});
		
	}
	
	function bgThumbnailsBehaviour() {
		$j("#thumbsContainer a").hover(
			function () {
				//mouse hover
				$j(this).find("img").not(".active").stop().animate({"opacity" : 1});
			}, 
			function () {
				//mouse out
				$j(this).find("img").not(".active").stop().animate({"opacity" : 0.4});
			}
		);
		
		$j("#thumbsContainer a").click(function(e) {
			e.preventDefault();
			if (cur_bg != $j(this).index()) {
				$j("html, body").animate({scrollTop : 0}, 500);
				
				$j(".active").stop().animate({"opacity" : 0.4}).removeClass("active");
				
				cur_bg = parseInt($j(this).index() - 1);
				clearTimeout(timer);
				loadBackgroundImage();
			}
		});
		
		$j("#th_next").click(function() {
			clearTimeout(timer);
			loadBackgroundImage();
		});
		$j("#th_prev").click(function() {
			clearTimeout(timer);
			//cur_bg -= 2;
			loadBackgroundImage("prev");
		});
	}
	function loadBackgroundImage(direction) {
		//console.log("load");
		if (!busy) {
			busy = true;
			$j("#thumbsContainer a:eq("+cur_bg+") img").removeClass("active").animate({"opacity" : 0.4});
			
			if (direction == "prev") {
				cur_bg--;
			} else {
				cur_bg++;
			}
			var total_bg = $j("#thumbsContainer a").length;
			if (cur_bg >= total_bg) { cur_bg = 0; }
			else if (cur_bg == -1) { cur_bg = total_bg - 1; }
			
			var bckimg = new Image();
			bckimg.src = $j("#thumbsContainer a:eq("+cur_bg+")").attr("href");
			// For IE:
			if ($j.browser.msie) {
				function testImg(){
					if (bckimg.complete != null && bckimg.complete == true) {
						changeBackground();
						return;
					}
					setTimeout(testImg, 300);
				}
				setTimeout(testImg, 300);    
			} else {
				bckimg.onload = changeBackground;
			}
			
			bckimgnew = new Image();
			bckimgnew.src = $j("#thumbsContainer a:eq("+parseInt(cur_bg+1)+")").attr("href");
		} else {
			clearTimeout(timer); timer = setTimeout( "loadBackgroundImage()", 500);
		}
	}
	
	function changeBackground() {
		if (initial_bg_fade) {
			busy = false;
			var bg1 = $j("#bg1"), bg2 = $j("#bg2");
			
			if (bg1.css('display') == 'none') {
				bg1.css({'z-index' : 2, "opacity" : 0, "display" : "block"});
				bg2.css({'z-index' : 1});
				bg1.attr('src', $j("#thumbsContainer a:eq("+cur_bg+")").attr("href"));
				bg1.stop().animate({"opacity" : 1}, fading_time, function() { hidePreviousBg(2); });
			} else {
				bg2.css({'z-index' : 2, "opacity" : 0, "display" : "block"});
				bg1.css({'z-index' : 1});
				bg2.attr('src', $j("#thumbsContainer a:eq("+cur_bg+")").attr("href"));
				bg2.stop().animate({"opacity" : 1}, fading_time, function() { hidePreviousBg(1); });
			}
			//busy = false;
			$j("#thumbsContainer a:eq("+cur_bg+") img").addClass("active").animate({"opacity" : 1});
			if ($j("#thumbsContainer a img").length > 1) {
				timer = setTimeout("loadBackgroundImage()", slides_delay+fading_time);
			}
		} else {
			clearTimeout(initial_timer); initial_timer = setTimeout( "changeBackground()", 500);
		}
	}
	
	function hidePreviousBg(cur_bg) {
		$j("#bg"+cur_bg).fadeOut(0).css({"opacity" : 0});
	}
	/******* end background change ****/
	
	//Get our elements for faster access and set overlay width
	function makeScrollable($wrapper, $container, contPadding, repeatElements){
		if (repeatElements == null){
			repeatElements = 'img';
		}
	    //Get menu width
	    var divWidth = $wrapper.width();
	
	    //Remove scrollbars
	    $wrapper.css({
	        overflow: 'hidden'
	    });
	
	    //Find last image container
	    var lastLi = $container.find(repeatElements+':last');
	    $wrapper.scrollLeft(0);
	    
	    //When user move mouse over menu
	    $wrapper.unbind('mousemove').bind('mousemove',function(e){
	
	        //As images are loaded ul width increases,
	        //so we recalculate it each time
	        //var ulWidth = lastLi[0].offsetLeft + lastLi.outerWidth() + contPadding;
	        var ulWidth = lastLi[0].offsetLeft + lastLi.outerWidth();
			var left = (e.pageX - $wrapper.offset().left) * (ulWidth-divWidth) / divWidth;
	        $wrapper.scrollLeft(left);
	    });
	}
	function thumbsDim($elem, repeatElements){
	    if (repeatElements == null){
			repeatElements = 'img';
		}
	    var finalW = 0;
	    $elem.find(repeatElements).each(function(i){
	        var $img 		= $j(this);
	        finalW+=$img.width()+5;
	    //plus 5 -> 4 margins + 1 to avoid rounded calculations
	    });
	    $elem.css('width',finalW+'px').css('visibility','visible');
	}
	
	function portfolioTapeBehaviour() {
		$j('.portfolio_tape').each(function() {
			var total_elements, total_width, this_portfolio_tape, x_shift, this_portfolio_tape_holder, right_boundry;
			
			this_portfolio_tape_holder = $j(this);
			this_portfolio_tape = $j(this).find('ul:first');
			total_elements = $j(this).find('ul li').length;
			
			
			var new_w = $j(window).width() - 180;
			this_portfolio_tape_holder.width(new_w);
			
			total_width = 0;
			var thistape = $j(this), imgs_loaded = 0;
			$j(this).find('ul li img').each(function(index){
				/*$j(this).bind("load", function() {
					imgs_loaded++;
					total_width += $j(this).parent().outerWidth() + parseInt(thistape.find("ul li:eq("+index+")").css("margin-right").replace("px", ""));
					console.log("A : " + $j(this))
					if (imgs_loaded == thistape.find('ul li img').length) {
						imagesLoaded();
					}
				});*/
				var img = new Image(), img_tag = $j(this);
				img.src = $j(this).attr("src");
				// For IE:
				if ($j.browser.msie) {
					function testImg(){
						if (img.complete != null && img.complete == true) {
							img_loaded(img_tag, index);
							return;
						}
						setTimeout(testImg, 300);
					}
					setTimeout(testImg, 300);    
				} else {
					img.onload = img_loaded(img_tag, index);
				}
			});
			function img_loaded(img_tag, index) {
				imgs_loaded++;
				total_width += img_tag.parent().outerWidth() + parseInt(thistape.find("ul li:eq("+index+")").css("margin-right").replace("px", ""));
				if (imgs_loaded == thistape.find('ul li img').length) {
					imagesLoaded();
				}
			}
			
			function imagesLoaded() {
				if (total_width > thistape.width() && total_elements > 1) {
					this_portfolio_tape.find('li:first').addClass('current');
					thistape
					.css({"padding-bottom" : 30})
					.prepend('<a class="portfolio_tape_prev_slide" href="#" title="">&nbsp;</a> <a class="portfolio_tape_next_slide" href="#" title="">&nbsp;</a>');
					
					//next button
					thistape.find('.portfolio_tape_next_slide').click(function() {
						x_shift = 0;
						offset = this_portfolio_tape.find('li.current').position();
						x_shift = offset.left + this_portfolio_tape.find('li.current').outerWidth() + parseInt(this_portfolio_tape.find('li.current').css("margin-right").replace("px", ""));
						
						right_boundry = total_width - this_portfolio_tape_holder.outerWidth() - parseInt(this_portfolio_tape.find('li.current').css("margin-right").replace("px", ""));
		
						if (x_shift < right_boundry ) {
							this_portfolio_tape.animate({"left" : -x_shift});
							
							this_portfolio_tape.find('li.current').removeClass('current').next().addClass('current');
						} else {
							if (this_portfolio_tape.find('li:last').hasClass('current')) {
								this_portfolio_tape.find('li.current').removeClass('current');
								this_portfolio_tape.find('li:first').addClass('current');
								
								this_portfolio_tape.animate({"left" : 0});
							} else {
								this_portfolio_tape.find('li.current').removeClass('current');
								this_portfolio_tape.find('li:last').addClass('current');
								
								this_portfolio_tape.animate({"left" : -right_boundry});
							}
							
						}
						return false;
					});
					
					//previous button
					thistape.find('.portfolio_tape_prev_slide').click(function() {
						x_shift = 0;
						offset = this_portfolio_tape.find('li.current').position();
						right_boundry = total_width - this_portfolio_tape_holder.outerWidth() - parseInt(this_portfolio_tape.find('li.current').css("margin-right").replace("px", ""));
						
						if (offset.left == 0) {
							//if first slide is active
							this_portfolio_tape.animate({"left" : -right_boundry});
							this_portfolio_tape.find('li.current').removeClass('current');
							this_portfolio_tape.find('li:last').addClass('current');
						} else {
							if (parseInt(this_portfolio_tape.css("left").replace("px", "")) == -right_boundry) {
								//if last slide is active
								var ii = total_elements;
								while (ii > 0) {
									//cycle throw slides backwards
									ii--;
									offset = this_portfolio_tape.find('li:eq('+ii+')').position();
									x_shift = offset.left - this_portfolio_tape.find('li:eq('+ii+')').outerWidth() - parseInt(this_portfolio_tape.find('li:eq('+ii+')').css("margin-right").replace("px", ""));
									if (x_shift < right_boundry) {
										//exit while loop
										this_portfolio_tape.find('li.current').removeClass('current');
										this_portfolio_tape.find('li:eq('+parseInt(ii-1)+')').addClass('current');
										break;
									}
								}
							} else {
								x_shift = offset.left - this_portfolio_tape.find('li.current').outerWidth() - parseInt(this_portfolio_tape.find('li.current').css("margin-right").replace("px", ""));
								this_portfolio_tape.find('li.current').removeClass('current').prev().addClass('current');
							}
							this_portfolio_tape.animate({"left" : -x_shift});
						}
						return false;
					});
				}
			}
		});
	}
	
	
	
	/**** Player ***/
	var currenttrackspan = "NULL";
	var currentPlaylistTrack = 0;
	var sitePlayer = true;
	var nativeplayer = false;
	var player_volume = 70;
	//var ios = "false";
	
	if (ios == "true") {
		nativeplayer = true;
		player_volume = 70;
	} else {
		nativeplayer = false;
	}
	
	function startAlbum(t, title, caption) {
		$j("#jquery_jplayer").jPlayer("setFile", t).jPlayer("pause");
		$j('#global_playstop').addClass("playing");
		setTrackTitle(title, caption);
		return false;
	}
	function playTrack(t, title, caption) {
		$j("#jquery_jplayer").jPlayer("setFile", t).jPlayer("play");
		$j('#global_playstop').addClass("playing");
		setTrackTitle(title, caption);
		return false;
	}
	
	function setTrackTitle(title, caption) {
		$j("#tracktitle").fadeOut(700, function() { $j(this).fadeIn().html(title); });
		$j("#trackcaption").fadeOut(700, function() { $j(this).fadeIn().html(caption); });
	}
	
	function playListNext() {
		if (currenttrackspan == "NULL") {
			currentPlaylistTrack++;
			if (currentPlaylistTrack == sitePlaylist.length) {
				currentPlaylistTrack = 0;
			}
			playTrack(sitePlaylist[currentPlaylistTrack], sitePlaylistTitle[currentPlaylistTrack], sitePlaylistCaptions[currentPlaylistTrack]);
			$j('#global_playstop').removeClass("playing");
			}
	}
	function playListPrevious() {
		if (currenttrackspan == "NULL") {
			currentPlaylistTrack--;
			if (currentPlaylistTrack == -1) {
				currentPlaylistTrack = sitePlaylist.length;
			}
			playTrack(sitePlaylist[currentPlaylistTrack], sitePlaylistTitle[currentPlaylistTrack], sitePlaylistCaptions[currentPlaylistTrack]);
			$j('#global_playstop').removeClass("playing");
		}
	}
	
	var th_hack = '', th_hack_new = '';
	jQuery(document).ready(function($j) {
		th_hack = $j("#thumbsContainer").html();
		//
		initOneTimeJs();
		initJsSweetness();
	});
}
