var currentFeature= 1;
var featureButton_Back= "";
var featureButton_Forward= "";
var featureButton_Play= "";
var featureButton_Pause= "";
var playStatus= true;
var optBlock_color;
function transition_feature(tothis){
	$("#feature_options_loader").css("width","0%");
	var origFeature= currentFeature;
	currentFeature= tothis;
	/*$(".item").fadeOut(1000);
	$(".opt").css({"background-image":"url(images/features/opt_slice_basics.jpg)","color":page_color});
	$("#opt"+tothis).css({"background-image":"none","color":"#fff"});
	$("#item"+tothis).fadeIn(1000);*/
	/*if(playStatus){
		$("#opt"+tothis).animate({
			opacity: 0.1
		},5000,function(){
			feature_go();
			$(this).css("opacity","1");
		});
	}*/
	$(".opt").css({"background-color":"#fff"});
	$("#opt"+tothis).css({"background-color":page_color});
/*	$("#item1").fadeOut(1000);
	$("#item2").fadeOut(1000);
	$("#item3").fadeOut(1000);
	$("#item4").fadeOut(1000,function(){
		$("#item"+tothis).fadeIn(1000);
	});*/
	if(origFeature != currentFeature){ //don't transition feature if already on that feature
		var total= $(".item").size();
		var now= 0;
		$(".item").fadeOut(500,function(){
			now++;
			//alert(now);
			if(now == total){
				//alert('now its ready');
				$("#item"+tothis).fadeIn(500);
			}
		});
	}
}
function autoTransition(){
	//playStatus= false; //comment out if using autoTransitioning
	if(playStatus){
		$("#feature_options_loader").css("width","1%").animate({
			'width': '99%'
		},15000,function(){
			feature_go();
			$("#feature_options_loader").css("width","0%");
		});
	}else{
		$("#feature_options_loader").css("width","0%").stop();
	}
}
function togglePlay(){
	playStatus= (playStatus)? false : true;
	if(playStatus){
		//alert(featureButton_Pause);
		$("#feature_play_button").attr('src',featureButton_Pause);
	}else{
		//alert(featureButton_Play);
		$("#feature_play_button").attr('src',featureButton_Play);
	}
	autoTransition();
}
function feature_go(dir){
	if(!dir) var dir= 'right';
	if(dir == 'right'){
		if(currentFeature == maxFeature){
			transition_feature(1);
		}else{
			transition_feature(currentFeature+1);
		}
	}else{
		if(currentFeature == 1){
			transition_feature(maxFeature);
		}else{
			transition_feature(currentFeature-1);
		}
	}
	autoTransition();
}
function testParent(){
	var parentT= parent.window.location+'';
	var lastbrak= parentT.lastIndexOf("/")+1;
	parentT= parentT.substr(lastbrak);
	lastbrak= parentT.lastIndexOf("?");
	if(lastbrak > 0) parentT= parentT.substr(0,lastbrak);
	if(parentT == 'pagemanage.php'){
		return false;
	}else{
		return true;
	}
}
function initFeature(startPath){
	if(!startPath) var startPath= "";
	maxFeature= $(".opt").size();
	$(".opt").each(
		function(intIndex){
			$(this).bind(
				"click",
				function(){
					if(playStatus) togglePlay();
					transition_feature(intIndex+1);
					optBlock_color= "";
				}
			);
		}
	);
	featureButton_Back= $("#feature_back_button").attr('src');
	featureButton_Forward= $("#feature_forward_button").attr('src');
	featureButton_Pause= $("#feature_play_button").attr('src');
	featureButton_Play= str_replace('_pause','_play',featureButton_Pause);
	$("#feature_back_button").mouseover(function(){
		$(this).attr('src',startPath+'images/global/FeatureButtons/down_back.png');
	}).mouseout(function(){
		$(this).attr('src',featureButton_Back);
	});
	$("#feature_forward_button").mouseover(function(){
		$(this).attr('src',startPath+'images/global/FeatureButtons/down_forward.png');
	}).mouseout(function(){
		$(this).attr('src',featureButton_Forward);
	});
	$("#feature_play_button").mouseover(function(){
		var currentsrc= $(this).attr('src');
		//alert(currentsrc);
		if(currentsrc.indexOf('_play') >= 0){
			$(this).attr('src',startPath+'images/global/FeatureButtons/down_play.png');
		}else{
			$(this).attr('src',startPath+'images/global/FeatureButtons/down_pause.png');
		}
	}).mouseout(function(){
		var currentsrc= $(this).attr('src');
		if(currentsrc.indexOf('_play') >= 0){
			$(this).attr('src',featureButton_Play);
		}else{
			$(this).attr('src',featureButton_Pause);
		}
	});
	$("#feature_play_button").click(function(){
		togglePlay();
	});
	$("#feature_forward_button").click(function(){
		if(playStatus){
			$("#feature_options_loader").css("width","0%").stop();
			//autoTransition();
		}
		feature_go();		
	});
	$("#feature_back_button").click(function(){
		if(playStatus){
			$("#feature_options_loader").css("width","0%").stop();
			//autoTransition();
		}
		feature_go('left');		
	});
	$(".opt").mouseover(function(){
		optBlock_color = $(this).css("background-color").toLowerCase();
		$(this).css({"background-color":page_color});
    }).mouseout(function(){
		//alert(color);
		if(optBlock_color == "rgb(255, 255, 255)" || optBlock_color == "#ffffff" || optBlock_color == "#fff"){
			$(this).css({"background-color":"#FFFFFF"});
		}
    });
	if(testParent()) autoTransition();
	currentFeature= 0;
	if(testParent()){
		//randomStart(); //uncomment to use a random starting position
		transition_feature(1);
	}else{
		transition_feature(1);
	}
}
function randomStart(){
	var d= new Date();
	var randomNum= (d.getMilliseconds()%1000)/1000;
	randomNum= Math.floor(randomNum*maxFeature)+1;
	//alert(randomNum);
	transition_feature(randomNum);
}
function str_replace(search, replace, subject) {
    // *     example 1: str_replace(' ', '.', 'Kevin van Zonneveld');
    // *     returns 1: 'Kevin.van.Zonneveld'
    // *     example 2: str_replace(['{name}', 'l'], ['hello', 'm'], '{name}, lars');
    // *     returns 2: 'hemmo, mars'
 
    var s = subject;
    var ra = r instanceof Array, sa = s instanceof Array;
    var f = [].concat(search);
    var r = [].concat(replace);
    var i = (s = [].concat(s)).length;
    var j = 0;
    
    while (j = 0, i--) {
        if (s[i]) {
            while (s[i] = (s[i]+'').split(f[j]).join(ra ? r[j] || "" : r[0]), ++j in f){};
        }
    }
 
    return sa ? s : s[0];
}
