var sdolutpart='<div id="con_1_2" class="tab_content"><table width="220" cellpadding="0" cellspacing="0" border="0"><tr><td class="title"><img src="_i/customize/t_part_bos.png" width="220" height="32" alt="" /></td></tr><tr><td class="cont small"><table width="100%" cellpadding="0" cellspacing="0" border="0" class="table_type_2"><tr><td class="font-style:italic" colspan="2" align="center">XXXX</td></tr><tr><td class="f" colspan="2"><img src="_i/customize/tpart_01.gif" border="0" /></td></tr><tr><td class="f"><a href="#" onClick="removeitem(\'YYYY\');"><p align="center"><img src="_i/customize/t_part_cikar_ok.png" border="0" /></p></a></td><td class="f">&nbsp;</td></tr></table></td></tr><tr><td><img src="_i/customize/tpart_footer.gif" border="0" /></td></tr></table></div>';
var sbostpart='<img src="_i/customize/tpart_off.png" border="0" alt="Kisisellestirmek istediginiz ögeyi buraya birakabilirsiniz" />';
function CustomizePanel() {

	//alert ( "CustomizePanel" );

	CPobj = this;

	this.move = "";
	this.mouse = [];
	this.dragItemClone = "";
	this.dropItemClone = "";
	this.scrollTop = document.documentElement.scrollTop;
	this.scrollLeft = document.documentElement.scrollLeft;
    
    this.html = '<div id="Main"><div id="Title"><div id="Left"><img src="_i/customize/tit_kisisellestirme.gif" border="0" alt="" /></div><div id="Right"><img src="_i/customize/btn_minimize_0.gif" border="0" alt="" onMouseOver="this.src=\'/_i/customize/btn_minimize_1.gif\'" onMouseOut="this.src=\'/_i/customize/btn_minimize_0.gif\'" /><img src="_i/customize/btn_close_0.gif" border="0" alt="" onMouseOver="this.src=\'/_i/customize/btn_close_1.gif\'" onMouseOut="this.src=\'/_i/customize/btn_close_0.gif\'" /></div></div><div id="Body"><div id="Top"></div><div id="Content"></div><div id="Bottom"></div></div><div id="SubButton"><a href="#"><img onClick="return savecustom();" src="_i/customize/btn_kaydet.gif" border="0" alt="" /></a><a href="#"><img src="_i/customize/bottom_right.gif" onClick="return resetcustom();" border="0" alt="" id="bottomRightImg" /></a></div><div id="LeftMO" style="display:none;"><div id="FlipFlop"></div></div></div><div id="Shadow"></div><div id="IFrameHack"><iframe id="IFrame" style="display:none; left:0px; position:absolute; top:0px" src="javascript:false;" frameBorder="0" scrolling="no"></iframe></div>';
	this.html_min = '<div id="Main"><div id="Title"><div id="Left"><img src="_i/customize/tit_kisisellestirme.gif" border="0" alt="" /></div><div id="Right"><img src="_i/customize/btn_maximize_0.gif" border="0" alt="" onMouseOver="this.src=\'/_i/customize/btn_maximize_1.gif\'" onMouseOut="this.src=\'/_i/customize/btn_maximize_0.gif\'" /><img src="_i/customize/btn_close_0.gif" border="0" alt="" onMouseOver="this.src=\'/_i/customize/btn_close_1.gif\'" onMouseOut="this.src=\'/_i/customize/btn_close_0.gif\'" /></div></div></div><div id="Shadow"></div><div id="IFrameHack"><iframe id="IFrame" style="display:none; left:0px; position:absolute; top:0px" src="javascript:false;" frameBorder="0" scrolling="no"></iframe></div>';

	this.div = document.createElement("div");
	this.div.id = "CustomizePanel";
	this.div.style.display = "none";
	this.div.style.position = "absolute";
	this.div.style.left = "800px";
	this.div.style.top = "150px";
	this.div.innerHTML = this.html;
	this.div.childNodes[2].childNodes[0].style.top = "0px";
	this.div.childNodes[2].childNodes[0].style.left = "0px";
	this.div.childNodes[2].childNodes[0].style.width = "225px";
	this.div.childNodes[2].childNodes[0].style.height = "447px";
	this.div.childNodes[2].childNodes[0].style.zIndex = "1";
	this.div.childNodes[2].childNodes[0].style.display = "";
//	document.getElementsByTagName('body')[0].appendChild(this.div);
	document.getElementById("CPHolder").appendChild(this.div);

	this.div_min = document.createElement("div");
	this.div_min.id = "CustomizePanel_min";
	this.div_min.style.display = "none";
	this.div_min.style.position = "absolute";
	this.div_min.style.left = "0px";
	this.div_min.style.top = "0px";
	this.div_min.innerHTML = this.html_min;
	this.div_min.childNodes[2].childNodes[0].style.top = "0px";
	this.div_min.childNodes[2].childNodes[0].style.left = "0px";
	this.div_min.childNodes[2].childNodes[0].style.width = "225px";
	this.div_min.childNodes[2].childNodes[0].style.height = "52px";
	this.div_min.childNodes[2].childNodes[0].style.zIndex = "1";
	this.div_min.childNodes[2].childNodes[0].style.display = "";
//	document.getElementsByTagName('body')[0].appendChild(this.div_min);
	document.getElementById("CPHolder").appendChild(this.div_min);

	this.div.onmouseover = function() {
		if (CPobj.dropItemClone != "") {
			document.body.style.cursor = "pointer";
		}
	}
	
	this.div.onmouseout = function() {
		if (CPobj.dragItemClone != "" || CPobj.dropItemClone != "") {
			document.body.style.cursor = "move";
		} else {
			document.body.style.cursor = "";
		}
	}
	
	this.div.onmouseup = function() {
		if (CPobj.dropItemClone != "") {
			CPobj.fire(CPobj.dropItemClone.base,this);
		}
	}

	this.div.childNodes[0].childNodes[0].childNodes[0].childNodes[0].onmousedown = function() {
		CPobj.move = CPobj.div;
	}
	
	this.div_min.childNodes[0].childNodes[0].childNodes[0].childNodes[0].onmousedown = function() {
		CPobj.move = CPobj.div_min;
	}
	
	this.div.childNodes[0].childNodes[0].childNodes[0].childNodes[0].onmouseup = this.div_min.childNodes[0].childNodes[0].childNodes[0].childNodes[0].onmouseup = function() {
		CPobj.mouse = [];
		CPobj.move = "";
	}
	
	this.div.childNodes[0].childNodes[0].childNodes[0].childNodes[0].ondrag = this.div_min.childNodes[0].childNodes[0].childNodes[0].childNodes[0].ondrag = function() {
		return false;
	}
	
	this.div.childNodes[0].childNodes[0].childNodes[1].childNodes[0].onclick = function() {
		CPobj.minimize();
	}

	this.div_min.childNodes[0].childNodes[0].childNodes[1].childNodes[0].onclick = function() {
		CPobj.maximize();
	}
	
	this.div.childNodes[0].childNodes[0].childNodes[1].childNodes[1].onclick = this.div_min.childNodes[0].childNodes[0].childNodes[1].childNodes[1].onclick = function() {
		CPobj.hide();
	}

	document.onselectstart = function () { return false; };
	
	document.onmousemove = function() {
		CPobj.moveByMouse();
	}
	
	document.onmousedown = function() {
		CPobj.mouse[0] = event.clientX;
		CPobj.mouse[1] = event.clientY;
	}
	
	document.onmouseup = function() {
		if (CPobj.dragItemClone != "") {
			CPobj.mouse = [];
			CPobj.move = "";
			CPobj.dragItemClone.base.onmouseout();
			document.getElementsByTagName('body')[0].removeChild(CPobj.dragItemClone);
			CPobj.dragItemClone = "";
			document.body.style.cursor = "";
		}
		if (CPobj.dropItemClone != "") {
			CPobj.mouse = [];
			CPobj.move = "";
			document.getElementsByTagName('body')[0].removeChild(CPobj.dropItemClone);
			CPobj.dropItemClone = "";
			document.body.style.cursor = "";
		}
	}
	
	document.documentElement.onscroll = function() {
		var oseDIV = (CPobj.div.style.display == "" ? CPobj.div:CPobj.div_min);
		if (document.documentElement.scrollTop != CPobj.scrollTop) {
			if (CPobj.move != oseDIV) {
				var oseY = (oseDIV.style.pixelTop+(document.documentElement.scrollTop-CPobj.scrollTop));
				if (oseY > 0 && (oseY+oseDIV.offsetHeight) < document.body.offsetHeight) {
					oseDIV.style.top = oseY+"px";
				}
			}
			CPobj.scrollTop = document.documentElement.scrollTop;
		}
		if (document.documentElement.scrollLeft != CPobj.scrollLeft) {
			if (CPobj.move != oseDIV) {
				var oseX = (oseDIV.style.pixelLeft+(document.documentElement.scrollLeft-CPobj.scrollLeft));
				if (oseX > 0 && (oseX+oseDIV.offsetWidth) < document.body.offsetWidth) {
					oseDIV.style.left = oseX+"px";
				}
			}
			CPobj.scrollLeft = document.documentElement.scrollLeft;
		}
	}
}

CustomizePanel.prototype.addDragItem = function(id)
{
	//alert( "CustomizePanel.prototype.addDragItem" + id );
	
	if (ItemMap[id]) {
		var DragItem = document.createElement("div");

		DragItem.id = id;
		DragItem.className = "item";
		DragItem.innerHTML = '<img src="_i/customize/items/'+ItemMap[id][0]+'" border="0" alt="" /><p>'+ItemMap[id][2]+'</p>';
		DragItem.im = ItemMap[id];
		this.div.childNodes[0].childNodes[1].childNodes[1].appendChild(DragItem);

		DragItem.onmouseover = function() {
			if (CPobj.dropItemClone == "") {
				this.className = "selectedItem";
				this.childNodes[0].src = "_i/customize/items/"+this.im[1];
				//this.parentNode.parentNode.parentNode.childNodes[2].style.display = "";
			} else {
				document.body.style.cursor = "pointer";
			}
		}
		
		DragItem.onmouseout = function() {
			if (CPobj.dropItemClone == "") {
				this.className = "item";
				this.childNodes[0].src = "_i/customize/items/"+this.im[0];
				//this.parentNode.parentNode.parentNode.childNodes[2].style.display = "none";
			} else {
				document.body.style.cursor = "move";
			}
		}

		DragItem.childNodes[0].onmousedown = function() {
			CPobj.dragItemClone = document.createElement("div");
			CPobj.dragItemClone.base = this.parentNode;
			CPobj.dragItemClone.className = "selectedItem";
			CPobj.dragItemClone.style.position = "absolute";
			CPobj.dragItemClone.style.left = event.clientX+document.documentElement.scrollLeft;
			CPobj.dragItemClone.style.top = event.clientY+document.documentElement.scrollTop;
			CPobj.dragItemClone.style.width = this.parentNode.childNodes[0].width+"px";
			CPobj.dragItemClone.style.height = this.parentNode.childNodes[0].height+"px";
			document.body.style.cursor = "move";
			CPobj.dragItemClone.innerHTML = '<img src="_i/customize/items/'+this.parentNode.im[1]+'" border="0" alt="" />';
			document.getElementsByTagName('body')[0].appendChild(CPobj.dragItemClone);

			CPobj.move = CPobj.dragItemClone;
		}
		
		DragItem.childNodes[0].ondrag = function() {
			return false;
		}
	}
}

CustomizePanel.prototype.addDropItem = function(id,item)
{
	//alert( "CustomizePanel.prototype.addDropItem" + " ID : " + id  + " ITEM : " + item );
	
	if (document.getElementById(id)) {
		var DropItem = document.getElementById(id);
		var iteminside=checkdropinside(id);
		var strItem;
		var saktifdolutpart;
		DropItem.im = (ItemMap[item] ? ItemMap[item]:"");
		if (iteminside=="")
		{
			DropItem.innerHTML='<img src="_i/customize/tpart_off.png" border="0" alt="" />';
		}
		else
		{
			try
			{
				strItem=ItemMap[iteminside][2].toString();
				saktifdolutpart=sdolutpart ;
				saktifdolutpart= saktifdolutpart.replace("XXXX",strItem);
				saktifdolutpart=saktifdolutpart.replace("YYYY",id );
				DropItem.innerHTML=saktifdolutpart;
				
			}
			catch (ex)
			{
				strItem="";
				DropItem.innerHTML='<img src="_i/customize/tpart_off.png" border="0" alt="'+strItem+'" />';	
		  		
		   }
		}
		
		DropItem.onmouseover = function() {
			document.body.style.cursor = "pointer";
		}
		
		DropItem.onmouseout = function() {
			if (CPobj.dragItemClone != "" || CPobj.dropItemClone != "") {
				document.body.style.cursor = "move";
			} else {
				document.body.style.cursor = "";
			}
		}
		
		DropItem.onmouseup = function() {
			if (CPobj.dragItemClone != "") {
				CPobj.fire(CPobj.dragItemClone.base,this);
			}
			if (CPobj.dropItemClone != "") {
				CPobj.fire(CPobj.dropItemClone.base,this);
			}
		}
		
		DropItem.onmousedown = function() {
			if (this.im != "") {
				CPobj.dropItemClone = document.createElement("div");
				CPobj.dropItemClone.base = this;
				CPobj.dropItemClone.style.position = "absolute";
				CPobj.dropItemClone.style.left = event.clientX+document.documentElement.scrollLeft;
				CPobj.dropItemClone.style.top = event.clientY+document.documentElement.scrollTop;
				//CPobj.dropItemClone.style.width = this.parentNode.childNodes[0].width+"px";
				//CPobj.dropItemClone.style.height = this.parentNode.childNodes[0].height+"px";
				document.body.style.cursor = "move";
				CPobj.dropItemClone.innerHTML = '<img src="_i/customize/items/'+this.im[1]+'" border="0" alt="" />';
				document.getElementsByTagName('body')[0].appendChild(CPobj.dropItemClone);

				CPobj.move = CPobj.dropItemClone;
			}
		}
		
		DropItem.ondrag = function() {
			return false;
		}
	}
}

CustomizePanel.prototype.moveByMouse = function()
{
	if (this.move != "")
	{
		var x = ((this.dragItemClone != "" ? (this.move.style.pixelLeft+10):this.move.offsetLeft)+(event.clientX-this.mouse[0]));
		var y = ((this.dragItemClone != "" ? (this.move.style.pixelTop+14):this.move.offsetTop)+(event.clientY-this.mouse[1]));

		if (x > document.documentElement.scrollLeft && x < (document.documentElement.scrollLeft+document.documentElement.clientWidth-this.move.offsetWidth))
		{
			this.move.style.left = (x+(this.dragItemClone != "" ? -10:0))+"px";
			this.mouse[0] = event.clientX;
		}
		else if (x > 0 && x < (document.body.offsetWidth-this.move.offsetWidth))
		{
			var scrollX;
			
			if (x <= document.documentElement.scrollLeft)
			{
				scrollX = -5;
			} 
			else
			{
				scrollX = 5;
			}
			if (typeof(parent.window.mainFrame) != "undefined")
			{
				parent.window.mainFrame.scrollBy(scrollX,0);
				
			}
			else
			{
				window.parent.scrollBy(scrollX,0);
			}
			
			this.move.style.left = (this.move.style.pixelLeft+scrollX)+"px";
		}
		
		//alert(parent.frames[0]);
		if (y > document.documentElement.scrollTop && y < (document.documentElement.scrollTop+document.documentElement.clientHeight-this.move.offsetHeight))
		{
			this.move.style.top = (y+(this.dragItemClone != "" ? -14:0))+"px";
			this.mouse[1] = event.clientY;
		}
		else if (y > 0 && y < (document.body.offsetHeight-this.move.offsetHeight))
		{
			var scrollY;
			
			if (y <= document.documentElement.scrollTop)
			{
				scrollY = -5;
			}
			else
			{
				scrollY = 5;
			}

			if (typeof(parent.window.mainFrame) != "undefined")
			{
				parent.window.mainFrame.scrollBy(0,scrollY);
				
			}
			else
			{
				window.parent.scrollBy(0,scrollY);
			}
			this.move.style.top = (this.move.style.pixelTop+scrollY)+"px";
		}
	}
}

CustomizePanel.prototype.show = function()
{
	this.div.style.display = "";
}

CustomizePanel.prototype.hide = function()
{
	this.div.style.display = "none";
}

CustomizePanel.prototype.minimize = function()
{
	//alert( "CustomizePanel.prototype.minimize" );
	this.div_min.style.left = this.div.style.left;
	this.div_min.style.top = this.div.style.top;
	this.div.style.display = "none";
	this.div_min.style.display = "";
}

CustomizePanel.prototype.maximize = function()
{
	//alert( "CustomizePanel.prototype.maximize" );
	this.div.style.left = this.div_min.style.left;
	this.div.style.top = this.div_min.style.top;
	this.div_min.style.display = "none";
	this.div.style.display = "";
	if (this.div.style.pixelTop > (document.documentElement.scrollTop+document.documentElement.clientHeight-this.div.offsetHeight)) {
		this.div.style.top = (document.documentElement.scrollTop+document.documentElement.clientHeight-this.div.offsetHeight-10)+"px";
	}
}

CustomizePanel.prototype.fire = function(source,target)
{
	//alert( "CustomizePanel.prototype.fire" + " SOURCE : " + source + " TARGET : " + target );
	
	var str, tar;
	str=source.id;
	tar=target.id;
	var nBulundu;
	var oMap;
	var strItem;
	var saktifdolutpart;
	var TID;
	var tValue;
	var DIV;
	var dValue;
	var sStr;
	var sTar;
	var bControl = true;
	var i;

	nBulundu=0;
	//window.alert("Array boyu:"+oLocation.length.toString());
	strItem=ItemMap[str][2].toString();	
	saktifdolutpart=sdolutpart ;
	saktifdolutpart= saktifdolutpart.replace("XXXX",strItem);
	saktifdolutpart=saktifdolutpart.replace("YYYY",tar );
		
	for (i = 0; i < oLocation.length; i++)
		{
				oMap=oLocation[i];
				if (oMap.location==tar)
				{
				
					oMap.item=str;
					oMap.location=tar;
					strItem=ItemMap[str][2].toString();	
					//oMap.innerHTML=newContent;
					oLocation[i]=oMap;
					nBulundu=1;
					//document.getElementById(tar).innerHTML ='<img src="_i/customize/tpart_on.png" border="0" alt="'+strItem+'" />';
					document.getElementById(tar).innerHTML =saktifdolutpart;
					break;
				}
		}
		if (nBulundu==0)
		{
				
				addelementtoarray(tar,str,"");
				document.getElementById(tar).innerHTML = saktifdolutpart;
		}
		//window.alert("Array boyu:"+oLocation.length.toString());
}

function addelementtoarray(sLocation,sItem,sInnerHTML)
{
	//alert( "addelementtoarray" + " SLOCATION : " + sLocation + " SITEM : " + sItem + " SINNERHTML : " + sInnerHTML );
	
	var nYer;
	var oMap;
	oMap=new TPartMap(sLocation,sItem,sInnerHTML);
	nYer=oLocation.length;
	oLocation[nYer]=oMap;
}

function applytparts()
{
	//alert( "applytparts" );
	
	var oObject;
	for (var i = 0; i < oLocation.length;i++)
	{
		//alert(oLocation[i].location);
		//alert(oLocation[i].item);
		oObject=document.getElementById(oLocation[i].location);
			if (oObject!=null){
			oObject.innerHTML=oLocation[i].innerHTML;}
			
	}
}

function TPartMap(sLocation,sItem,sInnerHTML)
{
	//alert( "TPartMap"  + " SLOCATION : " + sLocation + " SITEM : " + sItem + " SINNERHTML : " + sInnerHTML );
	
	this.location=sLocation;
	this.innerHTML=sInnerHTML;
	this.item=sItem;
}

function removeitem(sDrop)
{
	//alert( "removeitem" + " SDROP : " + sDrop );
	
	for (var i = 0; i < oLocation.length; i++)
	{
		
		if (sDrop==oLocation[i].location)
		{
			oLocation.splice(i,1);
			document.getElementById (sDrop).innerHTML=sbostpart;
		}
	}
}

function getxmlarray()
{
	var oContentMap;
	oContentMap= document.getElementById ("ContentMap").XMLDocument;
	return oContentMap;
}

function writearraytoxml()
{
	//alert( "writearraytoxml" );
	
	var oContentMap=null;
	var oXMLItem=null;
	var oXMLLocation=null;
	var oXMLMap=null;
	var oXMLInner=null;
	oContentMap= document.getElementById ("ContentMap").XMLDocument;
	oContentMap.loadXML("<ROOT><PAGE_SECTION></PAGE_SECTION></ROOT>");

	for (var i = 0; i < oLocation.length; i++)
	{
		
		oXMLMap=oContentMap.createElement("MAP");
		oXMLItem=oContentMap.createElement("ITEM");
		oXMLLocation=oContentMap.createElement("LOCATION");
		oXMLInner=oContentMap.createElement("INNERTEXT");// Inner texti yazmiyoruz.luzumsuz
		
		oXMLLocation.text=oLocation[i].location;
		oXMLItem.text=oLocation[i].item;
		
//		alert( oXMLMap.xml );
		oXMLMap.appendChild(oXMLInner);
		oXMLMap.appendChild(oXMLLocation);
		oXMLMap.appendChild(oXMLItem);
//		alert( oXMLMap.xml );

		oContentMap.childNodes[0].childNodes[0].appendChild(oXMLMap);
	}
//alert(	oContentMap.xml );
}

function savecustom()
{	
	//alert( "savecustom" );
	
	var ocustomXml;
	var oContentMap;
	writearraytoxml();
	oContentMap= document.getElementById ("ContentMap").XMLDocument;
	ocustomXml=document.getElementById ("customxml");
	ocustomXml.value=oContentMap.xml;
	document.SaveCustom.submit();
	return true;
}

function readarrayfromxml()
{
	var oContentMapXml;
	var oContentMapItemList;
	var oContentMap;
	var oXMLMap;
	var oXMLItem;
	var oXMLInner;
	var oXMLLocation;
	var oMap=null;
	
	oContentMapXml = document.getElementById ("ContentMap").XMLDocument;

	if(oContentMapXml != null)
	{
		oContentMapItemList = oContentMapXml.selectNodes("ROOT/PAGE_SECTION/MAP");
		
		if (oContentMapItemList.length > 0 && oContentMapItemList != null)
		{
			for (var i = 0; i < oContentMapItemList.length ;i++)
			{
				oXMLMap=oContentMapItemList[i];
				
				oXMLInner=oXMLMap.childNodes[0];
				oXMLLocation=oXMLMap.childNodes[1];
				oXMLItem=oXMLMap.childNodes[2];

				addelementtoarray(oXMLLocation.text,oXMLItem.text,oXMLInner.text);
			}
		}
	}
}

function resetcustom()
{
	//alert( "resetcustom" );
	
	oLocation=new Array();
	for (var i = 0; i < oLocation.length; i++)
		{
                document.getElementById ("xMap").InnerHTML=sbostpart;
        }
	savecustom();
}

function checkdropinside(sDrop)
{
	var oContentMap;
	
	var oXMLMap;
	var oXMLItem;
	var oXMLItemList;
	var oXMLInner;
	var oXMLLocation;
	var oMap=null;
	var oTemp = null;

	oContentMap= document.getElementById("xMap").XMLDocument;
	
	//alert( "!!!! checkdropinside  " + " SDROP : " + sDrop + " OCONTENTMAP : " + oContentMap.xml );

	oXMLItemList = oContentMap.selectNodes("ROOT/PAGE_SECTION/MAP");
	 
	if (oXMLItemList.length >0 && oXMLItemList != null)
	{
		for (var i = 0; i < oXMLItemList.length;i++)
		{
			oTemp = oXMLItemList[i];
			
			oXMLLocation = oTemp.childNodes[1];
			oXMLItem = oTemp.childNodes[2];

			if (oXMLLocation.text == sDrop)
			{
				return oXMLItem.text;
			}
		}
	}
	
	return "";		
}
