//
var isActive     = false;
var ajaxFile     = "_photoPage/_ajax.php";
var ajaxLoadIMG  = "images/ajax-loader.gif";
var delImgDef    = "images/small_icons/coquette/delete.png";
var imgDb        = new Array();
//
imgDb['default'] = ['grey',  'images/small_icons/coquette/green_button.png'];
imgDb['success'] = ['green', 'images/small_icons/coquette/accept.png'];
imgDb['error']   = ['warn',  'images/small_icons/coquette/warning.png'];

// ----------------------------------------------------------------------------------------------------
function deletePhoto(itemID)
{
	var ajaxScript = ajaxFile + "?action=deletePhoto&id=" + itemID;
	var rowObject  = document.getElementById("item_" + itemID);
	var imgObject  = document.getElementById("delImg_" + itemID);
	// --- 
	if(!popConfirm("Confirm: Delete this photo image?")){ return; }
	// --- 
	fadeObj = "item_" + itemID;
	imgObject.src = ajaxLoadIMG;
	// --- 
	xmlHttp = GetXmlHttpObject();
	xmlHttp.onreadystatechange = function()
	{
        if((xmlHttp.readyState==4) || (xmlHttp.readyState=="complete"))
		{ 
			if(xmlHttp.responseText == "ok")
			{
				fadeAndRemove();
			}
			else
			{
				imgObject.src = delImgDef;	
				alert(xmlHttp.responseText);
			}
			CloseXmlHttpObject();
		}
	}
	xmlHttp.open("GET", ajaxScript, true);
    xmlHttp.send(null);
}

// ----------------------------------------------------------------------------------------------------
function deleteAlbum(itemID)
{
	var ajaxScript = ajaxFile + "?action=deleteAlbum&id=" + itemID;
	var rowObject  = document.getElementById("item_" + itemID);
	var imgObject  = document.getElementById("delImg_" + itemID);
	// --- 
	if(!popConfirm("Confirm: Delete this photo album?")){ return; }
	// --- 
	fadeObj = "item_" + itemID;
	imgObject.src = ajaxLoadIMG;
	// --- 
	xmlHttp = GetXmlHttpObject();
	xmlHttp.onreadystatechange = function()
	{
        if((xmlHttp.readyState==4) || (xmlHttp.readyState=="complete"))
		{ 
			if(xmlHttp.responseText == "ok")
			{
				fadeAndRemove();
			}
			else
			{
				imgObject.src = delImgDef;	
				alert(xmlHttp.responseText);
			}
			CloseXmlHttpObject();
		}
	}
	xmlHttp.open("GET", ajaxScript, true);
    xmlHttp.send(null);
}

// ----------------------------------------------------------------------------------------------------
function deleteWidget(itemID)
{
	var ajaxScript = ajaxFile + "?action=deleteWidget&id=" + itemID;
	var rowObject  = document.getElementById("item_" + itemID);
	var imgObject  = document.getElementById("delImg_" + itemID);
	// --- 
	if(!popConfirm("Confirm: Delete this artwork widget?")){ return; }
	// --- 
	fadeObj = "item_" + itemID;
	imgObject.src = ajaxLoadIMG;
	// --- 
	xmlHttp = GetXmlHttpObject();
	xmlHttp.onreadystatechange = function()
	{
        if((xmlHttp.readyState==4) || (xmlHttp.readyState=="complete"))
		{ 
			if(xmlHttp.responseText == "ok")
			{
				fadeAndRemove();
			}
			else
			{
				imgObject.src = delImgDef;	
				alert(xmlHttp.responseText);
			}
			CloseXmlHttpObject();
		}
	}
	xmlHttp.open("GET", ajaxScript, true);
    xmlHttp.send(null);
}

// ----------------------------------------------------------------------------------------------------
function makeAlbum(p)
{
	var object = document.getElementById("newAlbumDiv");
	var aName = document.newAlbumForm.aName;
	var aInfo = document.newAlbumForm.aInfo;
	var ajaxScript = ajaxFile + "?action=makeAlbum&name=" + aName.value + "&info=" + aInfo.value;
	var nextP   = (p == '' || p == null) ? 'my_artwork' : p;
	//
	if((aName.value.length <= 0) || (aName.value == null))
	{
		alert('Please enter a name for this album');
		aName.focus();
	}
	else
	{
		if(popConfirm('Confim: Create this new artwork album?'))
		{ 
			xmlHttp = GetXmlHttpObject();
			xmlHttp.onreadystatechange = function()
			{
				if((xmlHttp.readyState==4) || (xmlHttp.readyState=="complete"))
				{ 
					if(xmlHttp.responseText == "ok")
					{ 
					    alert('Done, your new album has been created!');
						top.location.href = '/art.php?action=' + nextP;
				    }
					else
					{ 
						alert(xmlHttp.responseText); 
					}
					// 
					CloseXmlHttpObject();
				} 
			}
			xmlHttp.open("GET", ajaxScript, true);
			xmlHttp.send(null);
		}
	}
}

// ----------------------------------------------------------------------------------------------------
function resetViews(itemID)
{
	var span    = document.getElementById("editViewsSpan");
	var ajaxScript = ajaxFile + "?action=resetViews&id=" + itemID;
	//
	if(popConfirm('Confim: Reset this image\'s view count back to 0?'))
	{ 
		span.innerHTML = '<font color="#DDDDDD"><i>Working, one sec...</i></font>';
		xmlHttp = GetXmlHttpObject();
		xmlHttp.onreadystatechange = function()
		{
			if((xmlHttp.readyState==4) || (xmlHttp.readyState=="complete"))
			{ 
				if(xmlHttp.responseText == "ok")
				{ 
					span.innerHTML = '<font color="#33AA00"><i>Done, this image\'s view count has been reset to 0.</i></font>';
				}
				else
				{ 
					alert(xmlHttp.responseText); 
				}
				//
				CloseXmlHttpObject();
			} 
		}
		xmlHttp.open("GET", ajaxScript, true);
		xmlHttp.send(null);
	}
}

// ----------------------------------------------------------------------------------------------------
function rateArt(score, itemID)
{
	if(popConfirm('Rate this art image with a score of '+score+'?'))
	{
		var scoreSpan =  document.getElementById("scoreSpan");
		var votesSpan =  document.getElementById("votesSpan");
		var ajaxScript = ajaxFile + "?action=rateArt&itemID=" + itemID + "&score=" + score;
		//
		xmlHttp = GetXmlHttpObject();
		xmlHttp.onreadystatechange = function()
		{
			if((xmlHttp.readyState==4) || (xmlHttp.readyState=="complete"))
			{ 
				if(xmlHttp.responseText.indexOf("error") != -1){ alert(xmlHttp.responseText); }
				else
				{ 
					scoreSpan.innerHTML = '<b>'+xmlHttp.responseText+'</b>';
					alert('Done! New rating score: ' + xmlHttp.responseText);
				}
				// --- 
				CloseXmlHttpObject();
			} 
		}
		xmlHttp.open("GET", ajaxScript, true);
		xmlHttp.send(null);
	}
}

// ----------------------------------------------------------------------------------------------------
function ajaxShowOrder()
{
	if(!isActive)	   
   {
		if(popConfirm('Confirm: Save the new order?'))
		{
			var i        = 0;
			var imgArr   = new Array();
			var params   = '';
			var addOn    = '';
			var newOrder = '';
			var oldOrder = document.getElementById("oldOrder").innerHTML;
			var imgObj   = document.getElementById("sortResult_img");
			var msgObj   = document.getElementById("sortResult_msg");
			var ajaxScript = ajaxFile + "?action=sortOrder";
			var order    = Sortable.serialize('thumbListSort');
			order        = order.replace(/thumbListSort\[\]=/g,'');
			order        = order.split('&');

			imgArr['blank']   = '../images/small_icons/button-withe.png';
			imgArr['load']    = '../images/ajax-loader.gif';
			imgArr['success'] = '../images/small_icons/coquette/accept.png';
			imgArr['error']   = '../images/small_icons/coquette/delete.png';
			imgObj.innerHTML  = '<img src="'+imgArr['load']+'" border="0" width="16" height="16" alt="" />';
			msgObj.innerHTML  = 'Updating the order...';
			isActive          = true;
	  
			for(i=0; i < order.length; i++)
			{
	            addOn = (i > 0) ? '-' : '';
		 		newOrder += addOn + order[i];
			}
	  
			if(newOrder == oldOrder)
			{
		 		imgObj.innerHTML = '<img src="'+imgArr['blank']+'" border="0" width="16" height="16" alt="" />';
		 		msgObj.innerHTML = 'Ok, no changes made...';
		 		isActive         = false;
			}
			else
			{
		 		params += "newArray=" + newOrder + "&";
				params += "oldArray=" + oldOrder;

				xmlHttp = GetXmlHttpObject();
				xmlHttp.onreadystatechange = function()
				{
					if((xmlHttp.readyState==4) || (xmlHttp.readyState=="complete"))
					{ 
						if(xmlHttp.responseText == "ok")
						{
							imgObj.innerHTML = '<img src="'+imgArr['success']+'" border="0" width="16" height="16" alt="" />';
		 					msgObj.innerHTML = '<span class="green"><b>Done, the new changes have been saved!</b></span>';
							document.getElementById("oldOrder").innerHTML = newOrder;
		 					isActive = false;
						}
						else
						{
							imgObj.innerHTML = '<img src="'+imgArr['error']+'" border="0" width="16" height="16" alt="" />';
		 					msgObj.innerHTML = '<span class="warn"><b>'+xmlHttp.responseText+'</b></span>';
		 					isActive = false;
						}
						CloseXmlHttpObject();
					} 
				}
				// --- 
				xmlHttp.open("POST", ajaxScript, true);
				xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
				xmlHttp.setRequestHeader("Content-length", params.length);
				xmlHttp.setRequestHeader("Connection", "close");
				xmlHttp.send(params);
			}
		}
	}
}

function trackStars(v)
{
	var scoreSpan =  document.getElementById("scoreSpan");
	scoreSpan.innerHTML = '<b>'+v+'</b>';
}

function toggleAlbumCreateForm(what)
{
   var fObj = document.getElementById("albumArea");
   var form = document.postForm;
   // --- 
   if(what == "new")
   {
      fObj.style.display = '';
   }
   else if(what == "hide")
   {
      fObj.style.display = 'none';
	  form.artAlbum.selectedIndex = 0;
	  form.artAlbumName.value = '';
	  form.artAlbumInfo.value = '';
   }
}

function checkCommentForm(form)
{
   if((form.commText.value.length <= 0) || (form.commText.value == null))
   {
      alert("Please enter a comment first!");
      form.commText.focus();
      return false;
   }
   else if((form.postKey.value.length <= 0) || (form.postKey.value == null))
   {
      alert("Please enter the security number at the bottom!");
      form.postKey.focus();
      return false;
   }	
   else
   {
	  if(popConfirm('Add this new comment?')){ return true; }
	  else{ return false; }
   }
}

function checkEditForm(form)
{
	//--------------- 
   if ((form.artCategory.value.length==0) || (form.artCategory.value == null)){
      alert("Choose a category!");
      form.artCategory.focus();
      return false ;
   }
   //--------------- 
   else if ((form.artTitle.value.length==0) || (form.artTitle.value == null)){
      alert("Type in a title!");
      form.artTitle.focus();
      return false ;
   }
   //--------------- 
   else if (form.artTitle.value.length > 20 && form.artTitle.value.indexOf(" ") <= 0){
      alert("Please enter a proper title!");
      form.artTitle.focus();
      return false ;
   }
   //--------------- 
   else if ((form.artInfo.value.length==0) || (form.artInfo.value == null)){
      alert("Please write some details about this artwork!");
      form.artInfo.focus();
      return false ;
   }
   else{
      // -- 
	  if(popConfirm('Confirm: Save new changes?')){ return true; }else{ return false; }
	  // --
   }
}

function checkEditAlbumForm()
{
   if ((form.artTitle.value.length==0) || (form.artTitle.value == null)){
      alert("Type in a title!");
      form.artTitle.focus();
      return false ;
   }
   //--------------- 
   else if (form.artTitle.value.length > 20 && form.artTitle.value.indexOf(" ") <= 0){
      alert("Please enter a proper title!");
      form.artTitle.focus();
      return false ;
   }
   //--------------- 
   else{
      // -- 
	  if(popConfirm('Confirm: Save new changes?')){ return true; }else{ return false; }
	  // --
   }
}

function checkAssignForm(form)
{
	var action = form.process_val;
	var imgList = form.list;
	var totalSelected = 0;
	// --- 
	for(i=0; i < imgList.length; i++)
	{
		if(imgList[i].checked == true){ totalSelected++; }
	}
	if(totalSelected <= 0)
	{
		alert("Please select the images you want to manage first!");
		return false;
	}
	if((action.value.length <= 0) || (action.value == null))
	{
		alert("Please select what to do first!");
		action.focus();
		return false;
	}
	else
	{
	   if(popConfirm('Confim: continue with changes?')){ return true; }
	   else{ return false; } 
	}
}

function doFolderSelection(what)
{
	if(what == "showAll"){ top.location.href = 'art.php?action=my_artwork'; }
	else if(what == "createNew"){ showAlbumForm(); }
	else
	{ 
		if(what != ""){ top.location.href = 'art.php?action=my_artwork&album='+what; }
	}
}

function showAlbumForm()
{
	document.getElementById("newAlbumDiv").style.display = '';
	document.newAlbumForm.aName.value = '';
	document.newAlbumForm.aInfo.value = '';
}

function hideAlbumForm()
{
	document.getElementById("newAlbumDiv").style.display = 'none';
	document.newAlbumForm.aName.value = '';
	document.newAlbumForm.aInfo.value = '';
}

function loadSampleWidget(font, bg)
{
	var flashObj = new SWFObject("flash/sample_widget.swf", "sampleWidget", "165", "165", "9", "#f2f2f2");  
	flashObj.addVariable("FONT_COL", font); 
	flashObj.addVariable("BG_COL", bg); 
	flashObj.write("widgetFlash");	
}

function updateSampleWidget(font, bg)
{
	var fc = new JSFCommunicator(sampleWidget);
	fc.callFunction("_root","changeWidgetColor",[font,bg]);
}

function checkWidgetForm(f)
{
	var name = f.name;
	var folder = f.folder;
	var font = f.font;
	var bg = f.bg;
	// --- 
	if((name.value.length <= 0) || (name.value == null))
	{
		alert('Please enter a name for this widget');
		name.focus();
		return false;
	}
	else if((folder.value.length <= 0) || (folder.value == null))
	{
		alert('Please select what this widget will display');
		folder.focus();
		return false;
	}
	else if((font.value.length <= 0) || (font.value == null))
	{
		alert('Please select or enter a font color');
		font.focus();
		return false;
	}
	else if((bg.value.length <= 0) || (bg.value == null))
	{
		alert('Please select or enter a background color');
		bg.focus();
		return false;
	}
	else
	{
		if(popConfirm('Confim: create this new widget?')){ return true; }
	    else{ return false; } 
	}
}






