var uploadHandle='JScript/fileHandle.php',

	  thumbnailSize=150;



var BGUpload=function()

{

	var oa_attr;// added by nick  17 10 07

	var site_url = 'http://www.mycreativelicense.com';

	var $C=YAHOO.util.Connect,$D=YAHOO.util.Dom,retObj={},imgArr=['jpg','gif','png','tif','bmp'];

	retObj.fileElem={};

	imgArr.inArray=function(param)

	{

		for(var i=0;i<this.length;i++)

			if(this[i]==param)return true;

		return false;

	};

	function _HandleResult(upload_result)

	{

		var rNode,nNode,hNode,dNode,region,imgDim;

		rNode=$D.get(upload_result.file_field);

		if(rNode)

		{

			/*added by nick 17 10 08*/

			var elNode;

			elNode = document.getElementById('oa_attributes['+oa_attr+']');

			elNode.value = site_url+upload_result.path;

			/* */

			hNode=document.createElement('INPUT');

			hNode.type='hidden';

			hNode.id=upload_result.file_field;

			hNode.name=hNode.id;

			hNode.value=site_url+upload_result.path;

			rNode.parentNode.insertBefore(hNode,rNode);

			dNode=document.createElement('DIV');

			$D.addClass(dNode,"HDW_DELETE_FILE");

			dNode.onclick=function()

			{

				BGUpload.deleteFile(this,upload_result.file_field);

			};

			retObj.fileElem[upload_result.file_field]=rNode.cloneNode(false);

			if(imgArr.inArray(upload_result.ext))

			{

				nNode=document.createElement('IMG');

				nNode.style.visibility='hidden';

				nNode.border=0;

				nNode.src=site_url+"/mcl2/phpThumb/phpThumb.php?src="+upload_result.path+"&w=150&h=150";

				nNode.id="HDW_"+upload_result.file_field+"_CONTAINER";

				rNode.parentNode.insertBefore(nNode,rNode);

				var loadingInterval=window.setInterval(function()

				{

					if(nNode.complete)

					{

						window.clearInterval(loadingInterval);

						region=$D.getRegion(nNode);

						imgDim={

							w:(region["right"]-region["left"]),h:(region["bottom"]-region["top"])

						};

						/*if(imgDim.w>=thumbnailSize)

						{

							imgDim.h=Math.round(imgDim.h*thumbnailSize/imgDim.w);

							imgDim.w=thumbnailSize;

						}

						if(imgDim.h>=thumbnailSize)

						{

							imgDim.w=Math.round(imgDim.w*thumbnailSize/imgDim.h);

							imgDim.h=thumbnailSize;

						}

						nNode.width=imgDim.w;

						nNode.height=imgDim.h;*/

						nNode.style.visibility='visible';

					}

				},10);

			}

			else

			{

				nNode=document.createElement('A');

				nNode.innerHTML=upload_result.file_name;

				nNode.href=site_url+"mcl2/phpThumb/phpThumb.php?src="+upload_result.path+"&w=150&h=150";

				nNode.target='_blank';

				nNode.id="HDW_"+upload_result.file_field+"_CONTAINER";

				rNode.parentNode.insertBefore(nNode,rNode);

			}

			rNode.parentNode.insertBefore(dNode,rNode);

			rNode.parentNode.removeChild(rNode);



			/*added by nick		*/

			document.getElementById('buttonAddToCard').style.display = 'block';

			document.getElementById('uploadloader').style.display = 'none';



		}

	};

	function _deleteFile(delTag,idFileField)

	{

		var hNode=$D.get(idFileField),cNode;

		if(hNode)

		{

			$C.asyncRequest('POST',uploadHandle,{},"HDW_DELETE_FILE="+hNode.getAttribute("VALUE"));

			if(retObj.fileElem[idFileField])

			{

				cNode=$D.get("HDW_"+idFileField+"_CONTAINER");

				hNode.parentNode.insertBefore(retObj.fileElem[idFileField],hNode);

				delTag.parentNode.removeChild(delTag);

				hNode.parentNode.removeChild(hNode);

				cNode.parentNode.removeChild(cNode);

			}

		}

	};

	retObj.upload=function(obj)

	{

		var upload_result;

		eval(obj.responseText);

		if(upload_result&&upload_result.error=='')_HandleResult(upload_result);

	};

	retObj.uploadFile=function(inputFile,attr)// changed by nick 17 10 07

	{

		var me=this,actionF,transObj;

		//added by nick 17 10 07

		oa_attr = attr;



		if(inputFile.form)

		{

			actionF=inputFile.form.getAttribute('ACTION');

			targetF=inputFile.form.getAttribute('TARGET');

			$C.setForm(inputFile.form,true);

			transObj=$C.asyncRequest('POST',uploadHandle,me);

			inputFile.form.setAttribute('ACTION',actionF,false);

			inputFile.form.setAttribute('TARGET',targetF,false);

		}

	};

	retObj.deleteFile=function(delTag,idFileField)

	{

		_deleteFile(delTag,idFileField);

	};

	return retObj;

}();
