// JavaScript Document
var browsequeue ="" ;
var current =0 ;
var previousFlag = false;
var selected ="";

var currentContent ="";

var _posx;
var _posy;
var __posx;
var __posy;


function resetCurrent()
{current =0;}
function show(e,image)
{	e.src ="images/"+image;}


function addToBrowseQueue(entry)
{
	
	if(browsequeue != "")
	{ 	
		browsequeue += ","+entry ;
		var browserqueue = browsequeue.split(",");	
		current = 	browserqueue.length -1;
	}
	else
	{	
		browsequeue += entry;
		current +=1;
	}

		
}
function previous()
{
	
	previousFlag =true;
	var browserqueue = browsequeue.split(",");
	
	var toBeShown ="";
	var tobeShownIndex = current -1 ;
	
	if(current.value !=0 )
		tobeShown =browserqueue[tobeShownIndex]; 
	
	var toBeShownArray = tobeShown.split("#");
	
	
	browserqueue.splice(browserqueue.length-1, 1);
	browsequeue =browserqueue.join(",");
	alert (browsequeue +" /n " + current );
	current = current- 1;
	if(toBeShownArray[0] == "funcA")
	{	mainWindowLeftMenuClick(toBeShownArray[1] ); }
	else if(toBeShownArray[0] == "funcB")
	{ mainWindowRightFolderClick(toBeShownArray[1],toBeShownArray[2]);}
	else if (toBeShownArray[0] == "funcC")
	{ window2RightFolderClick(toBeShownArray[1],toBeShownArray[2],toBeShownArray[3],toBeShownArray[4]);}
	
	
}


function previous()
{
	
	previousFlag =true;
	var browserqueue = browsequeue.split(",");
	
	var toBeShown ="";
	var tobeShownIndex = current -1 ;
	
	if(current.value !=0 )
		tobeShown =browserqueue[tobeShownIndex]; 
	
	var toBeShownArray = tobeShown.split("#");
	
	
	browserqueue.splice(browserqueue.length-1, 1);
	browsequeue =browserqueue.join(",");
	
	current = current- 1;
	if(toBeShownArray[0] == "funcA")
	{	mainWindowLeftMenuClick(toBeShownArray[1] ); }
	else if(toBeShownArray[0] == "funcB")
	{ mainWindowRightFolderClick(toBeShownArray[1],toBeShownArray[2]);}
	else if (toBeShownArray[0] == "funcC")
	{ window2RightFolderClick(toBeShownArray[1],toBeShownArray[2],toBeShownArray[3],toBeShownArray[4]);}
	
	
}

function concatObject(obj) { 
  str='';
  for(prop in obj)
  {
    str+=prop + " value :"+ obj[prop]+"\n";
  }
  return(str);
}

function showMainWindow(thisobj)
{ 
	var p = $(thisobj).position();
	var posx = p.left;
	var posy = p.top;
	_posx = posx; // save positions as globals
	_posy = posy;
	
	$(".dropShadow").hide(); 
	$( "#mainwindowcontainer" ).show();
	$( "#mainWindow" ).show( "scale", {percent:100,origin:['literal','literal',posx, posy]}, 1, callback );
	//	$( "#mainWindow" ).show( "scale", {percent:100,origin:['literal','literal',posx, posy]}, 100, callback );
	function callback() {$(".dropShadow").show();};

 	//var mainWindowDIV = document.getElementById('drive');
 	//mainWindowDIV.style.display ="None";
	//$(".dropShadow").show();
	
	$("#windowLeft").load("left_main_window.php", function(){$("#i1").addClass('selected');selected="i1"});
	
				
}


/////////////////////////////////
/* WINDOW CLOSING FUNCTIONS */
/////////////////////////////////


function closeMainWindow(sourceElement)
{	
	$(".dropShadow").hide();
	$( "#mainWindow" ).hide( "scale", {percent:0,origin:['literal','literal',_posx, _posy]}, 200, callback );
	function callback() {$( "#mainwindowcontainer" ).hide(); 	};
	//$( "#mainwindowcontainer" ).hide();
	var mainWindowDIV = document.getElementById('drive');
 	mainWindowDIV.style.display ="Block";
}


function closeWindow2(sourceElement)
{	//var mainWindowDIV = document.getElementById('mainWindow');
	//mainWindowDIV.style.display ="None";
	$(".dropShadow").hide();
	$( "#window2" ).hide( "scale", {percent:0, origin:['literal','literal',_posx,_posy]}, 200, callback );
	function callback() {$( "#window2container" ).hide();};
		
	
}

function closeWindow3(sourceElement)
{	//var mainWindowDIV = document.getElementById('mainWindow');
	//mainWindowDIV.style.display ="None";
	document.getElementById('window3Left').innerHTML="";
	
	$(".dropShadow").hide();
	$( "#window3" ).hide(); // "scale", {percent:0,origin:['literal','literal',__posx, __posy]}, 100, callback );
	function callback() { $( "#window3container" ).hide();};
		
	
}


/////////////////////////////////////////////
/*       FOLDER CLICK FUNCTIOMS       */
/////////////////////////////////////////////

function mainWindowLeftMenuClick(i)
{
		var temp_attr;
		var selected;
		
				
		_id = $("#windowLeft .selected").attr("id");
		_selected_img = $("#windowLeft .selected a img").attr("src");
		
		
		if(_selected_img!=null) {
	
			removeMenuSelected(_id, _selected_img);
		}
		
		$("#mainwindowTitle").load("title_main_window.php?i="+i);
		$("#windowRight").load("right_main_window.php?i="+i);
				
		if(!previousFlag)
		{
			var entry="funcA#"+i;
			addToBrowseQueue(entry);	
		}
		previousFlag = false ;
		
		var idOfSelected = "i"+i;
		$("#"+idOfSelected).addClass('selected'); 

			temp_attr = $("#"+idOfSelected+" a img").attr("src");
			
			if($("#"+idOfSelected+" a img[src*='-selected']").length < 1) { 
				if(temp_attr!=null) {
					addMenuSelected("#"+idOfSelected+" a img", temp_attr);
				}
			}
		//selected =idOfSelected;
}




function mainWindowRightFolderClick(i,j)
{
	$("#mainwindowTitle").load("title_window2.php?i="+i+"&j="+j);
	function callback() {$(".dropShadow").show();};
	$("#windowRight").load("right_window2.php?i="+i+"&j="+j);
	
	_id = $("#windowLeft .selected").attr("id");
	_selected_img = $("#windowLeft .selected a img").attr("src");
	
	if(_selected_img!=null)
	   removeMenuSelected(_id, _selected_img);
	   
	if(!previousFlag)
	{
		var entry  = "funcB#"+i+"#"+j;
	addToBrowseQueue(entry);	
	}
	previousFlag = false ;
	
	var idOfSelected = "i"+i+"j"+j;
	$("#"+idOfSelected).addClass('selected');
	temp_attr = $("#"+idOfSelected+" a img").attr("src");
			
			if($("#"+idOfSelected+" a img[src*='-selected']").length < 1) { 
				if(temp_attr!=null) {
					addMenuSelected("#"+idOfSelected+" a img", temp_attr);
				}
			}
	
	
	//if(selected !="")$("#"+selected).removeClass('selected');
	//selected =idOfSelected;
}

function removeMenuSelected(_id, _selected_img){
	//console.log(_id+ " - "+_selected_img);
	temp_attr =  _selected_img.replace("-selected.jpg", ".jpg");
	temp_attr = temp_attr.replace("menu-selected", "menu");
	$("#"+_id).removeClass('selected'); 
	$("#"+_id+" a img").attr("src", temp_attr);
}

function addMenuSelected(_element, temp_attr){
	temp_attr = temp_attr.replace(".jpg", "-selected.jpg");
	temp_attr = temp_attr.replace("menu", "menu-selected");
	$(_element).attr("src", temp_attr);

}

function window2RightFolderClick(i,j,k,itemtype, thisobj)
{ 
 		var p = $(thisobj).position();
		var posx = p.left;
		var posy = p.top;
	
		// alert("opening window3:"+ posx+" - "+posy);
		posx = posx - 200;
		posy = posy - 54;
		
		__posx = posx; // save positions as globals
		__posy = posy;
		
		$("#window3Title").load("title_window3.php?i="+i+"&j="+j+"&k="+k+"&type="+itype);
		$(".dropShadow").hide();
		$( "#window3container" ).show();
		var itype =itemtype ;
		$( "#window3" ).show( "scale", {percent:100,origin:['literal','literal', posx, posy]}, 50, callback );
		function callback() {$(".dropShadow").show();};
		$("#window3Right").load("right_window3.php?i="+i+"&j="+j+"&k="+k+"&type="+itype);
		
		currentContent ="c0";
	//var entry  = "funcC#"+i+"#"+j+"#"+k+"#"+itemtype;
	//addToBrowseQueue(entry);
}

function window2RightOneClick(thisobj, img, _thumb_path){ 
		var temp_attr;
		
		if(img!=null) {
			//removeMenuSelected(thisobj, _selected_img);
			var last_obj = $(_thumb_path+".selected");
			//$(last_obj).find("a img").attr("alt","wack");
			var _last_img = $(last_obj).find("a img").attr("src");
			//console.log(_last_img);
			if(_last_img!=undefined){
				temp_attr =  _last_img.replace("-selected.jpg", ".jpg");
				temp_attr = temp_attr.replace("thumbs-selected", "thumbs");
				$(_thumb_path).removeClass("selected");
				
				$(last_obj).find("a img").attr("src",temp_attr);
				//$(last_obj).find("a img").attr("alt", "-");
			}
		}
		
		$(thisobj).addClass('selected');
		//console.log($(thisobj).find("a img[src*='-selected']").length);
		if($(thisobj).find("a img[src*='-selected']").length < 1) { 
		
			if(img!=null) {
				var current_img = $(thisobj).find("a img").attr("src");
				temp_attr = current_img.replace(".jpg", "-selected.jpg");
				temp_attr = temp_attr.replace("thumbs", "thumbs-selected");
				$(thisobj).find(" a img").attr("src", temp_attr); 
				
				//$(thisobj).find(" a img").attr("alt", "selected");
			}
		}
}

function window3RightItemClick(e,sourceurl,itemtype,itemname, link1, link2, link3)
{
	
	var surl = encodeURIComponent(sourceurl);
	var itype = itemtype;
	var iname = encodeURIComponent(itemname);

	//var ajax_load = "<div class='preview' style='vertical-align:middle;text-align:center'><img src='images/load.gif' alt='loading...' style='margin:auto'/></div>";  


	var url;
	url = "left_window3.php?source="+surl+"&type="+itype+"&name="+iname;
	
	if(link1!=null){ // one of the link types

	
		url="left_window3.php?source="+surl+"&type="+itype+"&name="+iname;
	}
	var ajax_load = "<div class='preview' style='vertical-align:middle;text-align:center'></div>";  
	
		$("#window3Left").html(ajax_load).load(url, { 'link1': link1, 'link2' : link2, 'link3' : link3 } , function(){
			
		});
		
		currentContent = e.id;		 
		//$("#"+e.id).parent().css('background', 'url("images/icon-bg.png") no-repeat scroll 2px 1px transparent');
		$(".thumb3").removeClass("clicked");
		$("#"+e.id).parent().addClass("clicked");
		$(".list-thumbs").focus(); 	
		
}

// Initialize
function window3RightItemLoad(sourceurl,itemtype,itemname,link1, link2, link3)
{
	var surl = encodeURIComponent(sourceurl);
	var itype = itemtype;
	var iname = encodeURIComponent(itemname);
  
	

	var url;
	
	url="left_window3.php?source="+surl+"&type="+itype+"&name="+iname;
	
	if(link1!=null){ // one of the link types
	
		url="left_window3.php?source="+surl+"&type="+itype+"&name="+iname;
	}
		var ajax_load = "<div class='preview' style='vertical-align:middle;text-align:center'></div>";  

		$("#window3Left").html(ajax_load).load(url, { 'link1': link1, 'link2' : link2, 'link3' : link3 } , function(){
			
		});
		
		currentContent = "c0";		
		$(".thumb3").removeClass("clicked");
		$("#c0").parent().addClass("clicked");
	$(".list-thumbs").focus(); 	
}


function replaceAll(_target, _look, _replace){
	var strReplaceAll = _target;
	var intIndexOfMatch = strReplaceAll.indexOf( _look );

	// Loop over the string value replacing out each matching
	// substring.
	while (intIndexOfMatch != -1){
	  // Relace out the current instance.
	  strReplaceAll = strReplaceAll.replace( _look, _replace )

	  // Get the index of any next matching substring.
	  intIndexOfMatch = strReplaceAll.indexOf( _look );
	}
	
	return strReplaceAll;
}

////////////////////////////
/* CONTENT PREV/NEXT FUNCTIONS */ 
//////////////////////////

function contentPrevious()
{	
	var index = parseInt(currentContent.replace("c", ""));
	index = index -1;
	var newid = "c"+index ;
	var newElement = document.getElementById(newid);

	
	var methodName= newElement.attributes["onclick"].value ;
	//window3RightItemClick(e,sourceurl,itemtype,itemname)
	var methodParamCSV = methodName.substring(22,methodName.length-1 );
	var methodParams = methodParamCSV.split(",");
	var sourceurl = methodParams[1].substring(1,methodParams[1].length-1);
	var itemtype = methodParams[2].substring(1,methodParams[2].length-1);
	var itemname = methodParams[3].substring(1,methodParams[3].length-1);
	
	var link1 = methodParams[4].substring(1,methodParams[4].length-1);
	var link2 = methodParams[5].substring(1,methodParams[5].length-1);
	var link3 = methodParams[6].substring(1,methodParams[6].length-1);
	
	window3RightItemClick(newElement,sourceurl,itemtype,itemname, link1, link2, link3);
	$(".list-thumbs").focus(); 
	
}

function contentNext()
{	
	var index = parseInt(currentContent.replace("c", ""));
	index = index + 1;
	var newid = "c"+index ;

	var newElement = document.getElementById(newid);
	if(newElement == null) {
			return null;
	}
	//$(newid).css("visibility","hidden");
	var methodName= newElement.attributes["onclick"].value;
	
	//window3RightItemClick(e,sourceurl,itemtype,itemname)
	var methodParamCSV = methodName.substring(22,methodName.length-1 );
	var methodParams = methodParamCSV.split(",");
	var sourceurl = methodParams[1].substring(1,methodParams[1].length-1);
	var itemtype = methodParams[2].substring(1,methodParams[2].length-1);
	var itemname = methodParams[3].substring(1,methodParams[3].length-1);
	var link1 = methodParams[4].substring(1,methodParams[4].length-1);
	var link2 = methodParams[5].substring(1,methodParams[5].length-1);
	var link3 = methodParams[6].substring(1,methodParams[6].length-1);

	window3RightItemClick(newElement,sourceurl,itemtype,itemname, link1, link2, link3);
	$(".list-thumbs").focus(); 
	
	return index;
	
}

///////////////////////////////
/* OTHER UTILITY FUNCTIONS */
//////////////////////////////

function prefetchImages()
{
	upimage = new Image();
	upimage.src = "images/drive.png";

	upimage = new Image();
	upimage.src = "images/window_header.jpg";


	upimage = new Image();
	upimage.src = "images/window_footer.jpg";


	upimage = new Image();
	upimage.src = "images/window2_header.jpg";


	upimage = new Image();
	upimage.src = "images/window2_footer.jpg";
}




