var $j = jQuery.noConflict();

// Product Gallery EqualHeights()
$j(document).ready(function() {
	/* $j(".item").equalHeights(); */
	imagePreview();
});

// Suckerfish drop-downs
sfHover = function() {
	var sfEls = document.getElementById("primaryNav").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);

/* Function definitions 
 ---------------------------------------- */
function deleteItem(itemID)
{
	$j.ajax({
		type:	"post",
		url:	"/lib/delete.php",
		data: 	'itemID='+itemID,
		success: 
			function(msg) 
			{
				var itemName = $j("tr#" + itemID).children(".itemName").html();
				$j("tr#" + itemID).html('<td colspan="5" class="alert">' + itemName + ' was successfully removed!</td>');
				$j("tr#" + itemID).animate({ "opacity": "hide" }, 2500);
			} 
	});
	return false;
}

function validate(formData, formID)
{
	var errors = 0;
	if (formID == 'editForm')
	{	
		// Bypass image input validation
		formData['image'] = 1;
		
		if (!formData['itemName']) errors = 1;
		else if (!formData['material1']) errors = 1;
		else if (!formData['industry1']) errors = 1;
		
		return errors;
	}
	else
	{
		if (!formData['itemName']) errors = 1;
		else if (!formData['material1']) errors = 1;
		else if (!formData['industry1']) errors = 1;
		else if (!formData['image']) errors = 1;
		
		return errors;
	}
}

function showAddForm()
{
	var options = { modal : 'true' };
	Boxy.load("/lib/add-item-form.html", options);
	return false;
}

function addProduct()
{
	// Get form data
	var formData =
	{
		"itemName" 	: $j("input#itemName").val(),
		"material1" : $j("input#material1").val(),
		"material2" : $j("input#material2").val(),
		"industry1" : $j("input#industry1").val(),
		"industry2" : $j("input#industry2").val(),
		"image"		: $j("input#imageUpload").val()
	}
	
	if(validate(formData))
	{
		// Validate() failed, so notify user
		$j("p.error").remove();
		$j("h2#formHeader").after('<p class="error">You must fill in 1 material, 1 industry and an image.</p>');
	}
	
	else
	{
		// Validate() successfull, so set up options for ajaxSubmit()
		var options = 
		{
			// Set options for ajaxSubmit()
			data	: 'submitted=1&itemName='+formData['itemName']+'&material1='+formData['material1']+'&material2='+formData['material2']								+'&industry1='+formData['industry1']+'&industry2='+formData['industry2']+'&image='+formData['image'],
			success	: 
				function(data)
				  {
				  	  if (document.getElementById("alert"))
				  	  {
				  	  	
				  	  	$j("p#alert").slideUp("fast", function() {
				  	  		$j("p#alert").html("<a href=\"#\" class=\"closeAlert\" onclick=\"closeAlert($j(this).parent()); return false;\">[x]</a>" + formData['itemName'] + ' was added successfully!');
				  	  		$j("p#alert").slideDown("normal");
				  	  	});
				  	  
				  	  }
				  	  
				  	  else 
				  	  {
				  	  
				  	  	 // DB edit succesful, so notify user
					  	 /*
$j("table#products").before("<p id=\"alert\" style=\"display:none;\"><a href=\"#\" class=\"closeAlert\" onclick=\"closeAlert($j(this).parent()); return false;\">[x]</a>" + formData['itemName'] + ' was added successfully!</p>');
					  	 $j("p#alert").slideDown("normal");
*/
							$j.noticeAdd({
								text: 'Successfully added item.',
								stay: false
							});
				  	  
				  	  }
				  }
		};
		// Submit form with options
		$j("#addForm").ajaxSubmit(options);
		Boxy.get("#addForm").hideAndUnload();
	}
	return false;
}

function closeAlert(paragraph)
{

	paragraph.slideUp("slow");
	
}

function showEditForm(itemID)
{
	$j.ajax
	({
		type:	"post",
		url:	"/lib/edit.php",
		data: 	'itemID='+itemID,
		cache:  "false",
		success: function(data, textStatus) 
		{
			var options = { modal : 'true' };
			new Boxy(data, options);
		}
		
	});
	return false;
}

function submitEditForm()
{
	// Get form data
	var formData =
	{
		"itemID"	: $j("input#itemID").val(),
		"itemName" 	: $j("input#itemName").val(),
		"material1" : $j("input#material1").val(),
		"material2" : $j("input#material2").val(),
		"industry1" : $j("input#industry1").val(),
		"industry2" : $j("input#industry2").val(),
		"image"		: $j("input#image").val()
	}
	
	// Validate data and process form
	if (validate(formData, "editForm"))
	{
		// Validate() returned an error, so don't submit and show error msg 
		$j("p.error").remove();
		$j("h2#formHeader").after('<p class="error">You must fill in 1 material, 1 industry and an image.</p>');
		return false;
	}
	
	else
	{
		// Validate() successful, so send formData to server
		var options = 
		{
			// Set options for ajaxSubmit()
			data	: 'submitted=1&itemName='+formData['itemName']+'&material1='+formData['material1']+'&material2='+formData['material2']								+'&industry1='+formData['industry1']+'&industry2='+formData['industry2']+'&image='+formData['image'],
			success	: 
				function(data)
				  {
				  	  // DB edit succesful, so notify user
				      $j("p.alert").remove();
				      
				      $j("tr#" + formData['itemID'] + " td").effect("highlight", {}, 2000);
				  }
		};
		$j("#editForm").ajaxSubmit(options);
		Boxy.get("#editForm").hideAndUnload();
		
		industry = formData['industry1'];
		if(formData['industry2'] != null){
			industry += ", "+formData['industry2'];
		}
		
		material = formData["material1"];
		if(formData['material2'] != null){
			material += ", "+formData['material2'];
		}
		
		$j("tr#" + formData['itemID'] + " td.itemName").html((formData['itemName']).toString());
		$j("tr#" + formData['itemID'] + " td.industry").html((industry).toString());
		$j("tr#" + formData['itemID'] + " td.material").html((material).toString());
	}
	return false;
}

function showConfirmDelete(itemID)
{	
	// Get item data and put it in a table
	var itemHTML = '<table id="delete-item"><tr><th>Name</th><th>Industries</th><th>Materials</th></tr><tr>';
	$j("tr#" + itemID).children().not(".link").each(function() { itemHTML += '<td>'+$j(this).html()+'</td>'; });
	itemHTML += '</tr></table>';
	
	// Set up content
	var boxyContent = "<h2>Are you sure you want to delete this item?</h2>"+itemHTML;
	
	boxyContent 	+= "<ul id=\"deleteControls\"><li><a href=\"#\" onclick=\"deleteItem($j(this).attr('rel')); Boxy.get(this).hideAndUnload(); 							return false;\" class=\"confirm-delete close\" rel=\""+itemID+"\">Delete</a></li>";
	
	boxyContent 	+= "<li><a class=\"cancel-delete\" onclick=\"Boxy.get(this).hideAndUnload(); return false;\" rel=\""+itemID+"\" href=\"#								\">Cancel</a></li></ul>";
	
	// Create modal with content
	var options = {
			modal : 'true'
	};
	new Boxy(boxyContent, options);
	return false;
}

/*
 * Image preview script 
 * powered by jQuery (http://www.jquery.com)
 * 
 * written by Alen Grakalic (http://cssglobe.com)
 * 
 * for more info visit http://cssglobe.com/post/1695/easiest-tooltip-and-image-preview-using-jquery
 *
 */
 
function imagePreview(){	
	/* CONFIG */
		
		xOffset = 10;
		yOffset = 30;
		
		// these 2 variable determine popup's distance from the cursor
		// you might want to adjust to get the right result
		
	/* END CONFIG */
	$j("td.link").hover(function(e){
		$j("body").append("<p id='preview'><img src='"+ $j(this).attr('rel') +"' alt='Image preview' /></p>");								 
		$j("#preview")
			.css("top",(e.pageY - xOffset) + "px")
			.css("left",(e.pageX + yOffset) + "px")
			.fadeIn("fast");						
    },
	function(){
		$j(this).title = $j(this).t;	
		$j("#preview").remove();
    });	
	$j("td.link").mousemove(function(e){
		$j("#preview")
			.css("top",(e.pageY - xOffset) + "px")
			.css("left",(e.pageX + yOffset) + "px");
	});			
};


// Get Date For Form Processor
var getDate=new Date();

var getYear=getDate.getYear();
if (getYear < 1000) getYear+=1900;

var getDay = getDate.getDay();

var getMonth = getDate.getMonth()+1;
if (getMonth<10) getMonth="0"+getMonth;

var getCurrentDay = getDate.getDate();
if (getCurrentDay<10) getCurrentDay = "0" +getCurrentDay;

theDate = getMonth+"/"+getCurrentDay+"/"+getYear;