// JavaScript Document

// Collection functions


var infoopen = '';
var backallowed = true;

var currenttarget = '';
var actioncount = 0;

function createcollection(theForm)
{		
	try
	{
	  	//var movieid = document.forms[theForm].movieid.value;
		
		var submit = theForm.submit.value;				
		var title = theForm.title.value;
		
		if (title == '')
		{
		  	$("titlefeedback").innerHTML = "<font size=4>Missing the Title</font>";
		  	$("titlefeedback").style.padding = "5px;";
			$("titlefeedback").style.background = "#FFFFCC";
		  	theForm.title.focus();
			return;
		}
		
		$("titlefeedback").innerHTML = "";
		$("titlefeedback").display = "none";
		$("titlefeedback").style.visible = "hidden";
		$("titlefeedback").style.background = "";
		
		var description = theForm.description.value;
		var tag1 = theForm.tag1.value;
		var tag2 = theForm.tag2.value;
		var tag3 = theForm.tag3.value;
		var open_to_editors = theForm.open_to_editors.value;
				
		//prep ajax request
		var url = '/ajax_collections.php';
			
		//this can be done better via formserialize I think
		var pars = 'action=createcollection&submit=' + submit 
						+ '&title=' + title 
						+ '&description=' + description 
						+ '&tag1=' + tag1
						+ '&tag2=' + tag2
						+ '&tag3=' + tag3
						+ '&open_to_editors=' + open_to_editors
						;
		
	  	//make a call to get data
	  	var SavetoCollection_myAjax = new Ajax.Request(
			url, 
			{
				method: 'get', 
				parameters: pars, 			
				onLoading: createcollection_handleLoading,
				onComplete: createcollection_handleResponse
			}
		);
		
	}
	catch (err)
	{
	   alert("createcollection:"+err);
	}

	return;
}

function createcollection_handleLoading()
{
	try
	{
		$("feedback").innerHTML = "<font size=4><b>Creating....</b></font>&nbsp;&nbsp;&nbsp;<img src='/images/indicator.gif'>";
	}
	catch (err)
	{
	   alert("createcollection_handleLoading:"+err);
	}

	return;

}

function createcollection_handleResponse(originalRequest)
{
	try
	{	
	  	//alert(originalRequest.responseText);		
	  	
	  	window.location = originalRequest.responseText;
	  	
	}
	catch (err)
	{
	   alert("createcollection_handleResponse:"+err);
	}

	return;
}



function cancelcollectionadd(target)
{		
	try
	{
	  	target = target.substring(6 + 1);
		
		var target_hdn = target+"_hdn";  			
		
		//alert(target_hdn);
		
		$(target).style.background = "";
		$(target).style.border = "0px";
		$(target).style.padding = "1px";
		
		$(target).innerHTML = $(target_hdn).innerHTML;
			
		$(target_hdn).innerHTML = "";	
		
	}
	catch (err)
	{
	   alert("cancelcollectionadd:"+err);
	}

	return;
}

function SavetoCollection(user_id, theForm, theElement, theMovie)
{  	  		
	try
	{
	  	var selectfield = document.forms[theForm].selectfield.value;
	  	var entryid = document.forms[theForm].entryid.value;
		var movieid = document.forms[theForm].movieid.value;
		
		var thisform = theElement;
								
		//prep ajax request
		var url = '/ajax_collections.php';
			
		//this can be done better via formserialize I think
		var pars = 'action=addtocollection&selectfield=' + selectfield 
						+ '&element=' + theElement 
						+ '&movieid=' + movieid 
						+ '&entryid=' + entryid
						+ "&formname=" + thisform 
						;
						
		//alert(pars);
		  	
	  	//make a call to get data
	  	var SavetoCollection_myAjax = new Ajax.Request(
			url, 
			{
				method: 'get', 
				parameters: pars, 			
				onComplete: SavetoCollection_handleResponse
			}//onLoading: handleLoading,
		);
	}
	catch (err)
	{
	   alert("SavetoCollection:"+err);
	}

	return;
	
}

function SavetoCollection_handleResponse(originalRequest)
{  			
	try
	{		
		var firstparts = originalRequest.responseText.split("~");
		var target = firstparts[0];
		
		var thetext = firstparts[1];
		
		$(target).style.background = "";
		$(target).style.border = "0px";
		$(target).style.padding = "1px";
		
		$(target).innerHTML = thetext;

	}
	catch (err)
	{
	   alert("SavetoCollection_handleResponse:"+err);
	}

	return;
}

function closeSaveCollectionResult(target)
{
	try
	{
		var target_hdn = target+"_hdn";  			
				
		$(target).style.background = "";
		$(target).style.border = "0px";
		$(target).style.padding = "1px";
		
		$(target).innerHTML = $(target_hdn).innerHTML;
			
		$(target_hdn).innerHTML = "";	
	}
	
	catch (err)
	{
	   alert("closeSaveCollectionResult:"+err);
	}

	return;  
}

function showcollections(user_id, target, groups_link, movie_id, movie_title)
{				
	try
	{		  	
		var thisform = "theForm"+target;
		
		//hide for later
		var target_hdn = target+"_hdn";		
		$(target_hdn).innerHTML = $(target).innerHTML;
		
		userid = user_id;
		
	  	//this should be a different file? ...not sure, do we need an extra one just for ajax calls?	
		var url = '/ajax_collections.php';
		
		//this can be done better via formserialize I think
		var pars = 'action=popcollectionscombo&userid=' + user_id 
						+ "&formname=" + thisform 
						+ "&movieid=" + movie_id; 
						//+ "&movietitle=" + movie_title;
							  	
	  	//make a call to get data
	  	var showcollections_myAjax = new Ajax.Request(
			url, 
			{
				method: 'get', 
				parameters: pars, 
				onLoading: showcollections_handleLoading(target),			
				onComplete: showcollections_handleResponse
			}//onLoading: handleLoading,
		);		
				
	}
	catch (err)
	{
	   alert("showcollections:"+err);
	}

	return;
}
function showcollections_handleLoading(target)
{
	try
	{			
			$(target).innerHTML = "<img src='/images/indicator.gif' align='absmiddle'>&nbsp;<b><font color='#666666'>Looking up your playlists...</font></b>";
	}
	catch (err)
	{
	   alert("showTags_handleLoading:"+err);
	}

	return;

}
function showcollections_handleResponse(originalRequest)
{  		  		
	try
	{	
		var displaydata = originalRequest.responseText.split("+");	
					
		var theElement = displaydata[0];			  	
		var theInner = displaydata[1];
		
		theElement = theElement.substring(6 + 1);				
		
		//alert(theElement);
		
		$(theElement).innerHTML = theInner;	
		$(theElement).visibility = '';
	}
	catch (err)
	{
	   alert("showcollections_handleResponse:"+err);
	}

	return;
	
}

function backtoinfo()
{
	try
	{
	  	$("theInfoTextdetails").innerHTML = $("theInfoTextdetails_hdn").innerHTML;
	  	backallowed = true;
	}
	catch (err)
	{
	   alert("backtoinfo:"+err);
	}

	return; 
}


function moveto(entryid, folderid)
{
	try
	{	  	
		//prep ajax request
		var url = '/ajax_collections.php';
		var pars = '';
		
		pars = 'action=movetofolder'
					 + '&entryid=' + entryid
					 + '&folderid=' + folderid
					 + '&currentfolder=' + currentfolder
					 ;
		
		//make a call to get data
		var Ajax_thumbDrop = new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: pars,
				onComplete: moveto_handleResponse
			}//onLoading: handleLoading,
		);
	  	
	}
	catch (err)
	{
	   alert("moveto:"+err);
	}

	return;

}

function moveto_handleResponse(originalRequest)
{
	try
	{			
		var firstparts = originalRequest.responseText.split("~");
		var firstpart = firstparts[1];
		
		$("actionfeedback").innerHTML = "<font size=4>&nbsp;</font>";
		
		if (firstparts[0] == '1')
		{			  	
			var parts = firstpart.split("^");
		
			var tofldr = parts[0];
			var fromfldr = parts[1];
					
			//var tofldr_elements = tofldr.split("@");
			//var tofldr_theid = tofldr_elements[0];
			//var tofldr = 'drop'+tofldr_theid;
			//var tofldr_thetext = tofldr_elements[1];
	
			//update 'to' folder
			//$(tofldr).innerHTML = tofldr_thetext;
			//new Effect.Highlight($(tofldr), {startcolor:'#FFFF99', endcolor:'#FFFFCC'});
			
			var fromfldr_elements = fromfldr.split("@");		
			var fromfldr_theid = fromfldr_elements[0];
			var fromfldr = 'drop'+fromfldr_theid;	
			var fromfldr_thetext = fromfldr_elements[1];
			var fromfldr_thetext_2 = fromfldr_thetext.split("__");
			var fromfldr_thetext = fromfldr_thetext_2[0];
			var fromfldr_thetext_entry = 'itemblock_'+fromfldr_thetext_2[1];
			
			//update 'from' folder
			$(fromfldr).innerHTML = fromfldr_thetext;
			new Effect.Highlight($(fromfldr), {startcolor:'#FFFF99', endcolor:'#FFFFCC'});		  					
		  	
			//fade out the moved item		  
			new Effect.Fade(fromfldr_thetext_entry);
			
			decrementpendingactioncount('move');
		}
		else
		{
			$("actionfeedback").innerHTML = originalRequest.responseText;
		}
	}
	catch (err)
	{
	   alert("moveto_handleResponse:"+err);
	}

	return;
}


function showmoveto(entryid)
{
	try
	{
	  	//alert(entryid);
										
		//prep ajax request
		var url = '/ajax_collections.php';
		var pars = '';
				 
		pars = 'action=movetofolder'
					 + '&collectionid=' + currentcollection
					 + '&subaction=' + 'move'
					 ;
				
		//make a call to get data
		var Ajax_showmoveto = new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: pars,
				onLoading: showmoveto_handleLoading,
				onComplete: showmoveto_handleResponse
			}
		);
	  	
	}
	catch (err)
	{
	   alert("showmoveto:"+err);
	}

	return;

}

function showmoveto_handleResponse(originalRequest)
{
	try
	{		
		
		$("theInfoTextdetails").innerHTML = originalRequest.responseText;		
		
	}
	catch (err)
	{
	   alert("showmoveto_handleResponse:"+err);
	}

	return;
}

function showmoveto_handleLoading()
{
	try
	{
	  	if (backallowed) 
		{
		  	backallowed = false;
		  	$("theInfoTextdetails_hdn").innerHTML = $("theInfoTextdetails").innerHTML;
		}		
	  			
		$("theInfoTextdetails").innerHTML = "<img src='/images/indicator.gif'>";
	}
	catch (err)
	{
	   alert("showmoveto_handleLoading:"+err);
	}

	return;

}

function copyto(entryid, folderid)
{
	try
	{	  		  	
		//prep ajax request
		var url = '/ajax_collections.php';
		var pars = '';
		
		pars = 'action=copytofolder'
					 + '&entryid=' + entryid
					 + '&folderid=' + folderid
					 + '&collectionid=' + currentcollection
					 ;
		
		//make a call to get data
		var Ajax_thumbDrop = new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: pars,
				onComplete: copyto_handleResponse
			}//onLoading: handleLoading,
		);
	  	
		  	
	}
	catch (err)
	{
	   alert("copyto:"+err);
	}

	return;

}

function copyto_handleResponse(originalRequest)
{
	try
	{			
		//$("actionfeedback").innerHTML = originalRequest.responseText;
		//alert(originalRequest.responseText);
		//return;
		
		var firstparts = originalRequest.responseText.split("~");
		var firstpart = firstparts[1];
		
		$("actionfeedback").innerHTML = "<font size=4>&nbsp;</font>";
		
		if (firstparts[0] == '0')
		{						
			var fromfldr_elements = firstpart.split("@");		
			var fromfldr_theid = fromfldr_elements[0];
			var fromfldr = 'drop'+fromfldr_theid;	
			var fromfldr_thetext = fromfldr_elements[1];
			var fromfldr_thetext_2 = fromfldr_thetext.split("__");
			var fromfldr_thetext = fromfldr_thetext_2[0];
			var fromfldr_thetext_entry = 'itemblock_'+fromfldr_thetext_2[1];
			
			//update 'from' folder
			$(fromfldr).innerHTML = fromfldr_thetext;
			new Effect.Highlight($(fromfldr), {startcolor:'#FFFF99', endcolor:'#FFFFCC'});		  					
		  	
			decrementpendingactioncount('copy');
								  			  	
		}
		else
		{
			$("actionfeedback").innerHTML = originalRequest.responseText;
		}
		
	}
	catch (err)
	{
	   alert("copyto_handleResponse:"+err);
	}

	return;
}


function showcopyto(entryid)
{
	try
	{
	  	//alert(entryid);
						
		//prep ajax request
		var url = '/ajax_collections.php';
		var pars = '';
				 
		pars = 'action=getfolders'
					 + '&collectionid=' + currentcollection
					 + '&subaction=' + 'copy'
					 ;
				
		//make a call to get data
		var Ajax_showcopyto = new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: pars,
				onLoading: showcopyto_handleLoading,
				onComplete: showcopyto_handleResponse
			}
		);
	  	
	}
	catch (err)
	{
	   alert("showcopyto:"+err);
	}

	return;

}

function showcopyto_handleResponse(originalRequest)
{
	try
	{			
		$("theInfoTextdetails").innerHTML = originalRequest.responseText;		
		
	}
	catch (err)
	{
	   alert("showcopyto_handleResponse:"+err);
	}

	return;
}

function showcopyto_handleLoading()
{
	try
	{
	  	if (backallowed) 
		{
		  	backallowed = false;
		  	$("theInfoTextdetails_hdn").innerHTML = $("theInfoTextdetails").innerHTML;
		}

		$("theInfoTextdetails").innerHTML = "<img src='/images/indicator.gif'>";
	}
	catch (err)
	{
	   alert("showcopyto_handleLoading:"+err);
	}

	return;

}

function thumbDrop(elementThumb, elementFolder, numVideos)
{
	try
	{	  	
		//strip 'drop' from folder obj
		var regex = "/drop/";
		regex = eval(regex);
		elementFolder = elementFolder.replace(regex,"");
				
		//strip 'drag' from thumb obj
		regex = "/drag/";
		regex = eval(regex);
		tmp_elementThumb = elementThumb.replace(regex,"");

		//split out the entryid and itemid
		split_elementThumb = tmp_elementThumb.split("-");
		elementThumb = split_elementThumb[0];
		itemid = split_elementThumb[1];
		
		//prep ajax request
		var url = '/ajax_collections.php';
		var pars = '';
				 
		pars = 'action=dropthumb'
					 + '&elementThumb=' + elementThumb
					 + '&elementFolder=' + elementFolder
					 + '&numVideos=' + numVideos
					 + '&currentfolder=' + currentfolder
					 + '&itemid=' + itemid
					 ;
		
		//make a call to get data
		var Ajax_thumbDrop = new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: pars,
				onComplete: thumbDrop_handleResponse
			}//onLoading: handleLoading,
		);

	}
	catch (err)
	{
	   alert("thumbDrop:"+err);
	}

	return;

}

function thumbDrop_handleResponse(originalRequest)
{
	try
	{		
		var parts = originalRequest.responseText.split("^");
		
		var tofldr = parts[0];
		var fromfldr = parts[1];
				
		var tofldr_elements = tofldr.split("@");		
		var tofldr_theid = tofldr_elements[0];					
		var tofldr = 'drop'+tofldr_theid;
		var tofldr_thetext = tofldr_elements[1];

		//update 'to' folder
		$(tofldr).innerHTML = tofldr_thetext;
		new Effect.Highlight($(tofldr), {startcolor:'#FFFF99', endcolor:'#FFFFCC'});
		
		var fromfldr_elements = fromfldr.split("@");		
		var fromfldr_theid = fromfldr_elements[0];					
		var fromfldr = 'drop'+fromfldr_theid;
		var fromfldr_thetext = fromfldr_elements[1];
		
		//update 'from' folder
		$(fromfldr).innerHTML = fromfldr_thetext;
		new Effect.Highlight($(fromfldr), {startcolor:'#FFFF99', endcolor:'#FFFFCC'});

	}
	catch (err)
	{
	   alert("thumbDrop_handleResponse:"+err);
	}

	return;
}

function menufired(entryid, target, topref, toprefheader, onoff)
{
	try
	{	  			
		infofired(entryid, target, topref, toprefheader, true);
		
	}
	catch (err)
	{
	   alert("menufired:"+err);
	}

	return;

}

function infofired(entryid, target, topref, toprefheader, onoff)
{
	try
	{
	  	if ( onoff )
	  	{
		   	//a show info action fired
		  	//close menu
		  	//exitmenu(topref, toprefheader);
	  		//open info
		  	showinfo(entryid, target);
		}
		else
		{
		  	//an open menu action fired
		  	//close info
		  	exitinfo(entryid, target);
		  	//open menu
		  	//exitmenu(topref, toprefheader);
		}
	  	
	}
	catch (err)
	{
	   alert("infofired:"+err);
	}

	return;

}

function exitinfo(entryid, target)
{
	try
	{
	  	if (!infoopen)
	  	{
	  	  	return;
	  	}
	  	
	  	$("theInfo").style.visibility = "hidden";			
		
	}
	catch (err)
	{
	   alert("exitinfo:"+err);
	}

	return;

}

function showinfo(entryid, target)
{
	try
	{		  		
		//prep ajax request
		var url = '/ajax_collections.php';
		var pars = '';
		
		currenttarget = target;
		
		pars = 'action=getinfo'
					 + '&entryid=' + entryid
					 + '&target=' + target
					 + '&currentcollection=' + currentcollection
					 + '&currentfolder=' + currentfolder
					 ;
			
		//make a call to get data
		var Ajax_showinfo = new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: pars,			
				onLoading: showinfo_handleLoading,
				onComplete: showinfo_handleResponse
			}
		);
		
		infoopen = true;
		
	}
	catch (err)
	{
	   alert("showinfo:"+err);
	}

	return;

}

function showinfo_handleLoading()
{
	try
	{
	  	//left or right side display?
		if ( (getElementPosition(currenttarget).left + 160) > (document.body.clientWidth - 300))
		{
		  	//left-side		  	
			$("theInfo").style.left = ((getElementPosition(currenttarget).left) - 200)+"px";
		}
		else
		{
		  	//right-side		  	
			$("theInfo").style.left = ((getElementPosition(currenttarget).left) + 10)+"px";
		}
								
	  	$("theInfo").style.top = ((getElementPosition(currenttarget).top) + 1)+"px";		
		//$("theInfo").style.left = ((getElementPosition(currenttarget).left) + 10)+"px";
		
		$("theInfo").style.visibility = "visible";						
		$("theInfo").style.display = '';						
		$("theInfoText").innerHTML = "<img src='/images/indicator.gif'>";
		
	}
	catch (err)
	{
	   alert("showinfo_handleLoading:"+err);
	}

	return;

}
function showinfo_handleResponse(originalRequest)
{
	try
	{					
		//alert(originalRequest.responseText);
		
		var elements = originalRequest.responseText.split("@");					
		var targetdiv = elements[0];
		var targetdiv_thetext = elements[1];
				
		//left or right side display?
		if ( (getElementPosition(targetdiv).left + 160) > (document.body.clientWidth - 300))
		{
		  	//left-side		  	
			$("theInfo").style.left = ((getElementPosition(targetdiv).left) - 200)+"px";
		}
		else
		{
		  	//right-side		  	
			$("theInfo").style.left = ((getElementPosition(targetdiv).left) + 10)+"px";
		}
								
	  	$("theInfo").style.top = ((getElementPosition(targetdiv).top) + 1)+"px";		
		//$("theInfo").style.left = ((getElementPosition(targetdiv).left) + 10)+"px";
		
		$("theInfo").style.visibility = "visible";						
		$("theInfo").style.display = '';				
		$("theInfoText").innerHTML = targetdiv_thetext;
		
	}
	catch (err)
	{
	   alert("showinfo_handleResponse:"+err);
	}

	return;
}

function savetitle(titleid, formname)
{
	try
	{							
		var newtitle = document.forms[formname].text.value;
		
		//prep ajax request
		var url = '/ajax_collections.php';
		var pars = '';
		
		var entryid = document.forms[formname].entryid.value;		
		var folderid = document.forms[formname].folderid.value;
		var titleid = document.forms[formname].titleid.value;
		
		var newtitle = document.forms[formname].text.value;
					 
		pars = 'action=retitle'
					 + '&entryid=' + entryid
					 + '&folderid=' + folderid
					 + '&newtitle=' + newtitle
					 + '&titleid=' + titleid					 
					 ;
		
		//make a call to get data
		var Ajax_thumbDrop = new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: pars,
				onComplete: savetitle_handleResponse
			}//onLoading: handleLoading,
		);
		
	}
	catch (err)
	{
	   alert("savetitle:"+err);
	}

	return;

}

function savetitle_handleResponse(originalRequest)
{
	try
	{						
		var elements = originalRequest.responseText.split("@");					
		var targetdiv = elements[0];
		var targetdiv_thetext = elements[1];
				
		var elements2 = targetdiv_thetext.split("^");					
		var targetdiv_thetext = elements2[0];
		var targetdiv_thetext2 = elements2[1];
		
		if (targetdiv_thetext == 'Failure')
		{		  	
		  	$(targetdiv).innerHTML = "<div id=\""+targetdiv+"temp\" style=\"background-color:#FFFFCC;\">Not permitted: You are not an editor</div><br />";
			$(targetdiv).innerHTML = $(targetdiv).innerHTML + $(targetdiv+'hidden').innerHTML;
			$(targetdiv).style.background = $(targetdiv+'hidden').style.background;									
			//new Effect.Highlight($(targetdiv), {startcolor:'#FFFF99', endcolor:'#FFFFCC'});
			new Effect.Fade($(targetdiv+'temp'),{duration:3});
		}
		else
		{
		  	//return original content to div
	  		$(targetdiv).innerHTML = targetdiv_thetext;
			$(targetdiv).style.background = '';			
			$(targetdiv+'hidden').innerHTML = targetdiv_thetext;			
	  	}
	  	
	  	var hiddentitle = targetdiv+'titleform';		
		document.forms[hiddentitle].text.value = targetdiv_thetext2;
		
	}
	catch (err)
	{
	   alert("savetitle_handleResponse:"+err);
	}

	return;
}

function showtext(titleid, entryid, folderid)
{	
	try
	{	var hiddendiv = titleid+'hidden';		
		var hiddentitle = titleid+'titleform';		
		var exsitingtext = document.forms[hiddentitle].text.value;
				
		var theHTML = "<p align=\"center\"><form name=\""+titleid+"form\" id=\""+titleid+"form\"><input type=\"text\" name=\"text\" value=\""+exsitingtext+"\"><br />";
		theHTML = theHTML + "<input type=\"button\" name="+titleid+"btn value=\"OK\" onclick=\"savetitle('"+titleid+"', '"+titleid+"form');\">";		
		theHTML = theHTML + "<input type=\"button\" name=\"cancelbtn\" value=\"Cancel\" onclick=\"reverttitle('"+hiddendiv+"','"+titleid+"');\">";
		theHTML = theHTML + "<input type=\"hidden\" name=\"entryid\" value=\""+entryid+"\">";
		theHTML = theHTML + "<input type=\"hidden\" name=\"titleid\" value=\""+titleid+"\">";
		theHTML = theHTML + "<input type=\"hidden\" name=\"folderid\" value=\""+folderid+"\">";
		theHTML = theHTML + "</form>";
		theHTML = theHTML + "</p>";		
						
		$(hiddendiv).style.background = $(titleid).style.background;		
		$(titleid).style.background = '';			
		$(titleid).innerHTML = theHTML;			
	}
	catch (err)
	{
	   alert("showtext:"+err);
	}
	
	return;
}

function reverttitle(titleid,thetarget)
{	
	try
	{					
		$(thetarget).innerHTML = $(titleid).innerHTML;
		$(thetarget).style.background = $(titleid).style.background;
	}
	catch (err)
	{
	   alert("reverttitle:"+err);
	}
	
	return;
}

function deletefromcollection(entryid)
{
	try
	{	  	
		//prep ajax request
		var url = '/ajax_collections.php';
		var pars = '';
		
		pars = 'action=deletefromcollection'
					 + '&entryid=' + entryid
					 + '&currentfolder=' + currentfolder
					 + '&currentcollection=' + currentcollection
					 ;
		
		//make a call to get data
		var Ajax_deletefromcollection = new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: pars,
				onComplete: deletefromcollection_handleResponse
			}//onLoading: handleLoading,
		);
	  	
	}
	catch (err)
	{
	   alert("deletefromcollection:"+err);
	}

	return;

}

function deletefromcollection_handleResponse(originalRequest)
{
	try
	{			
		//$("actionfeedback").innerHTML = originalRequest.responseText;
		//return;
		
		var firstparts = originalRequest.responseText.split("~");
		var firstpart = firstparts[1];
		
		$("actionfeedback").innerHTML = "<font size=4>&nbsp;</font>";
		
		//1~57@Incoming (3)rss__1950
		
		if (firstparts[0] == '1')
		{			  	
			//var parts = firstpart.split("^");
		
			var fromfldr_elements = firstpart.split("@");		
			var fromfldr_theid = fromfldr_elements[0];
			var fromfldr = 'drop'+fromfldr_theid;	
			var fromfldr_thetext = fromfldr_elements[1];
			var fromfldr_thetext_2 = fromfldr_thetext.split("__");
			var fromfldr_thetext = fromfldr_thetext_2[0];
			var fromfldr_thetext_entry = 'itemblock_'+fromfldr_thetext_2[1];
		
			//update 'from' folder
			$(fromfldr).innerHTML = fromfldr_thetext;
			new Effect.Highlight($(fromfldr), {startcolor:'#FFFF99', endcolor:'#FFFFCC'});
			
			//fade out the moved item		  
			new Effect.Fade(fromfldr_thetext_entry);		  	
			
			decrementpendingactioncount('delete');
		}
	}
	catch (err)
	{
	   alert("deletefromcollection_handleResponse:"+err);
	}

	return;
}

function queuefromcollection(entryid)
{
	try
	{	  	
		//prep ajax request
		var url = '/ajax_collections.php';
		var pars = '';
		
		pars = 'action=queuefromcollection'
					 + '&entryid=' + entryid;
					 //+ '&currentfolder=' + currentfolder
					 //+ '&currentcollection=' + currentcollection
					 		
		//make a call to get data
		var Ajax_queuefromcollection = new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: pars,
				onComplete: queuefromcollection_handleResponse
			}//onLoading: handleLoading,
		);
	  	
	}
	catch (err)
	{
	   alert("queuefromcollection:"+err);
	}

	return;

}

function queuefromcollection_handleResponse(originalRequest)
{
	try
	{			
		//$("actionfeedback").innerHTML = originalRequest.responseText;
		//return;
        decrementpendingactioncount('add to queue');		
	}
	catch (err)
	{
	   alert("queuefromcollection_handleResponse:"+err);
	}

	return;
}

function favfromcollection(entryid)
{
	try
	{	  	
		//prep ajax request
		var url = '/ajax_collections.php';
		var pars = '';
		
		pars = 'action=favfromcollection'
					 + '&entryid=' + entryid
					 + '&currentfolder=' + currentfolder
					 + '&currentcollection=' + currentcollection
					 ;
		
		//make a call to get data
		var Ajax_favfromcollection = new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: pars,
				onComplete: favfromcollection_handleResponse
			}//onLoading: handleLoading,
		);
	  	
	}
	catch (err)
	{
	   alert("queuefromcollection:"+err);
	}

	return;

}

function favfromcollection_handleResponse(originalRequest)
{
	try
	{			
		//$("actionfeedback").innerHTML = originalRequest.responseText;
		//return;
		
		var firstparts = originalRequest.responseText.split("~");
		var firstpart = firstparts[1];
		
		$("actionfeedback").innerHTML = "<font size=4>&nbsp;</font>";
		
		//1~57@Incoming (3)rss__1950
		
		if (firstparts[0] == '1')
		{			  	
			//var parts = firstpart.split("^");
		
			var fromfldr_elements = firstpart.split("@");		
			var fromfldr_theid = fromfldr_elements[0];
			var fromfldr = 'drop'+fromfldr_theid;	
			var fromfldr_thetext = fromfldr_elements[1];
			var fromfldr_thetext_2 = fromfldr_thetext.split("__");
			var fromfldr_thetext = fromfldr_thetext_2[0];
			var fromfldr_thetext_entry = 'itemblock_'+fromfldr_thetext_2[1];
		
			//update 'from' folder
			$(fromfldr).innerHTML = fromfldr_thetext;
			new Effect.Highlight($(fromfldr), {startcolor:'#FFFF99', endcolor:'#FFFFCC'});
			
			//fade out the moved item		  
			new Effect.Fade(fromfldr_thetext_entry);		  	
			
			decrementpendingactioncount('delete');
		}
	}
	catch (err)
	{
	   alert("favfromcollection_handleResponse:"+err);
	}

	return;
}

function removefromfolder(entryid)
{
	try
	{	  					
		//prep ajax request
		var url = '/ajax_collections.php';
		var pars = '';
		
		pars = 'action=removefromfolder'
					 + '&entryid=' + entryid
					 + '&currentfolder=' + currentfolder
					 ;
		
		//make a call to get data
		var Ajax_removefromfolder = new Ajax.Request(
			url,
			{
				method: 'get',
				parameters: pars,
				onComplete: removefromfolder_handleResponse
			}//onLoading: handleLoading,
		);
	  	
	}
	catch (err)
	{
	   alert("removefromfolder:"+err);
	}

	return;

}

function removefromfolder_handleResponse(originalRequest)
{
	try
	{			
		//$("actionfeedback").innerHTML = originalRequest.responseText;
		//return;
		
		var firstparts = originalRequest.responseText.split("~");
		var firstpart = firstparts[1];
		
		$("actionfeedback").innerHTML = "<font size=4>&nbsp;</font>";
		
		//1~57@Incoming (3)rss__1950
		
		if (firstparts[0] == '1')
		{			  	
			//var parts = firstpart.split("^");
		
			var fromfldr_elements = firstpart.split("@");		
			var fromfldr_theid = fromfldr_elements[0];
			var fromfldr = 'drop'+fromfldr_theid;	
			var fromfldr_thetext = fromfldr_elements[1];
			var fromfldr_thetext_2 = fromfldr_thetext.split("__");
			var fromfldr_thetext = fromfldr_thetext_2[0];
			var fromfldr_thetext_entry = 'itemblock_'+fromfldr_thetext_2[1];
		
			//update 'from' folder
			$(fromfldr).innerHTML = fromfldr_thetext;
			new Effect.Highlight($(fromfldr), {startcolor:'#FFFF99', endcolor:'#FFFFCC'});
			
			//fade out the moved item		  
			new Effect.Fade(fromfldr_thetext_entry);		  	
			
			decrementpendingactioncount('remove');
		}
	}
	catch (err)
	{
	   alert("removefromfolder_handleResponse:"+err);
	}

	return;
}


function IsNumeric(sText)
{
   try
	{
		var ValidChars = "0123456789.";
	   	var IsNumber=true;
	   	var Char;
	
	 
	   for (i = 0; i < sText.length && IsNumber == true; i++) 
	      { 
	      Char = sText.charAt(i); 
	      if (ValidChars.indexOf(Char) == -1) 
	         {
	         IsNumber = false;
	         }
	      }
	   
	   return IsNumber;
	}
	catch (err)
	{
	   alert("IsNumeric:"+err);
	}
	
	return;	
   
}

function actionoptionchange(theform)
{
	try
	{
	  	if (theform.folderlist.value == 'none')
	  	{
	  	  	theform.btnAction.disabled = true;
	  	}
	  	else	  		
	  	{
	  	  	theform.btnAction.disabled = false;
	  	}
	}
	catch (err)
	{
	   alert("actionoptionchange:"+err);
	}
	
	return;	
}

function actionbarfired(theform)
{
	try
	{	  		   	
	  	var folderlist = theform.folderlist.value;
	  		  	
	  	//alert(folderlist);
	  	
	  	if (folderlist == 'queue')
		{  			  	
		  	doaction('queue');
		}
		else if (folderlist == 'fav')
		{  	
		  	doaction('fav');
		}
		else if (folderlist == 'delete')
		{  			  	
			doaction('delete');			
		}
		else if (folderlist == 'remove')
		{
		  	doaction('remove');					
		}
		else
		{
		  	folderlist = folderlist.split('_');
		  	var thereturn = '';
		  	
		  	if (folderlist[1])
			{
			  	//copy to or move to
			  	//get the folder id
				if (IsNumeric(folderlist[1]))
				{			  	
				  	var folderid = folderlist[1];
					var action = folderlist[0];  			  					
													
				  	//copy or move?
				  	if (action == 'copyto')
					{
				  		doaction(action);
				  	}
				  	else if (action == 'moveto')
				  	{					  		
						doaction(action);
				  	}			  	
				}
			}
		}		
	  	
	}
	catch (err)
	{
	   alert("actionbarfired:"+err);
	   
	}

	return;	
}

function doaction(theaction)
{
  	try
	{					
		//get count of how many actions are queued
		pendingactioncount = getactioncount();
		if (pendingactioncount > 0)
		{
		  	$("actionfeedback").style.background = "#FFFFCC";
		  	$("actionfeedback").style.border = "";
		  	
			$("actionfeedback").innerHTML = "<font size=4>" + pendingactioncount + " action(s) pending&nbsp;&nbsp;&nbsp;<img src='/images/indicator.gif'></font>";
			
			document.actionbar.btnAction.disabled = true;
	  		document.actionbar.folderlist.disabled = true;
	  	
		}
			
		frmcount = document.forms.length;
		for (i=0; i < frmcount; i++) 
		{
		  	chkcount = document.forms[i].elements.length;		  			  	
		  	
			for (y=0; y < chkcount; y++) 
			{					
				targetname = document.forms[i].elements[y].value;
                  			  	
				if(!targetname.indexOf('chk_'))	
			  	{															  	  	
			  	  	if(document.forms[i].elements[y].checked)	
				  	{	
                        var elements = targetname.split('chk_');
						var entryid = elements[1];											
						                                               
						switch (theaction)
						{			
							case 'moveto':
							
								var destfolders = document.actionbar.folderlist.value.split('moveto_');
								var destfolder = destfolders[1];
								
								moveto(entryid, destfolder);
								break;
							
							case 'copyto':
							
								var destfolders = document.actionbar.folderlist.value.split('copyto_');
								var destfolder = destfolders[1];
								
								copyto(entryid, destfolder);
								break;
								
							case 'remove':
								removefromfolder(entryid);
								break;
							
							case 'delete':
								deletefromcollection(entryid);
								break;
								
							case 'queue':
							
							    //var itemidelemnt = document.forms[i].elements[y+1].value;                        
                                //var itemidelemnts = itemidelemnt.split('itemid_');
						        //var itemid = itemidelemnts[1];
						                                
								//queuefromcollection(itemid);
								queuefromcollection(entryid);
								break;
								
							case 'fav':
								favfromcollection(entryid);
								break;
								
						}
						
						document.forms[i].elements[y].checked = false;
				 	}									
			 	}			
			} 	
		}			
	}
	
	catch (err)
	{
	   alert("doaction:"+err);
	}
	
	return;	
}

function getactioncount()
{
  	try
	{	  		   	
		actioncount = 0;
		
		frmcount = document.forms.length;
		for (i=0; i < frmcount; i++) 
		{
		  	chkcount = document.forms[i].elements.length;		  			  	
		  	
			for (y=0; y < chkcount; y++) 
			{					
				targetname = document.forms[i].elements[y].value;
				if(!targetname.indexOf('chk_'))	
			  	{
				    //get count of how many actions are queued
					//pendingactioncount
																  	  	
			  	  	if(document.forms[i].elements[y].checked)	
				  	{										
						actioncount++;
				 	}									
			 	}			
			} 	
		}
  
  	}
	
	catch (err)
	{
	   alert("getactioncount:"+err);
	}
	
	return actioncount;	
}

function decrementpendingactioncount(pendingactiontype)
{
	try
	{	  		
		pendingactioncount--;
		//all actions done
		if (pendingactioncount == 0)
		{			
			$("actionfeedback").innerHTML = "<font size=4>" + pendingactiontype  + " completed</font>";
			$("actionfeedback").style.background = "";
			new Effect.Highlight($("actionfeedback"), {startcolor:'#FFFFCC', endcolor:'#FFFFFF'});			
			
			document.actionbar.btnAction.disabled = false;
			document.actionbar.folderlist.disabled = false;
			
		}
		else
		{
			$("actionfeedback").innerHTML = "<font size=4>" + pendingactioncount + " " + pendingactiontype  + " action(s) pending&nbsp;&nbsp;&nbsp;<img src='/images/indicator.gif'></font>";
		}  		
		
	}
	
	catch (err)
	{
	   alert("decrementpendingactioncount:"+err);
	}
	
	return actioncount;	
	
}

function addPlaylistsNotLoggedIn(flag, target, movie_id)
{
	try
	{
		//hide for later
		var target_hdn = target+"_hdn";		
		
		toggleBox(target_hdn,1);	//show
		//toggleBox(target,0);		//hide
		
		var theMessage = "<div style=\"border-width:thin; border-style:dashed; border-color:#FF0000; padding-left:2px;\"><span class='lessimportant'><em><b>You need to be logged in to Add a video to a Playlist.<b></em><br><br>When you join Mefeedia, Playlists are a great way of collecting videos and sharing them with friends.<br><br><em>Please <a href='/sign-in.php?url=/entry/"+movie_id+"/'>login</a> or <a href='/sign-in.php?url=/entry/"+movie_id+"/'>sign up</a></em><br><br></span></div>";
		
		$(target_hdn).innerHTML = theMessage;
		
	}
	catch (err)
	{
	   alert("addPlaylistsNotLoggedIn:"+err+"\n"+err.number+" - "+err.description);
	}

	return;
}
function handleNoUniqueCollections()
{	
	alert ('failure of AJAX call');
}


function validateURLTaken_Collections(friendlyurl,infofield)

{
	//return true;
	var params = "&friendlyurl=" + friendlyurl.value + "&sq=friendlyurlcol";
	var path = "/SQ.php";
	//alert ('calling AJAX path = ' + path + ' with params = ' + params + ' .');

	new Ajax.Request(path, {
		method: 'get',
		asynchronous: 'true',
		parameters: params,
		onSuccess: function(retVal) { 
	        var resp=retVal.responseText;
			//alert (' response is ' + resp);
			resp = trim(resp);
			//alert ('resp is = ' + resp + ' .');
			if(resp != 'available') {
				msg (infofield, "error", "This URL is already in use - please try another.");
				return false;
			} else {
				msg (infofield, "warn", "URL looks good.");
				return true;
			}

		},//retVal; },
		onFailure: handleNoUniqueCollections,
		onException: handleNoUniqueCollections
	});
	return true;
}

