var FCKXml = function()
{}

FCKXml.prototype.GetHttpRequest = function()
{
	if ( window.XMLHttpRequest )		// Gecko
		return new XMLHttpRequest() ;
	else if ( window.ActiveXObject )	// IE
		return new ActiveXObject("MsXml2.XmlHttp") ;
}

FCKXml.prototype.LoadUrl = function( urlToCall, asyncFunctionPointer )
{
	var oFCKXml = this ;

	var bAsync = ( typeof(asyncFunctionPointer) == 'function' ) ;

	//alert("bAsync of "+asyncFunctionPointer+"="+bAsync);
	var oXmlHttp = this.GetHttpRequest() ;

	oXmlHttp.open( "GET", urlToCall, bAsync ) ;

	if ( bAsync )
	{
		oXmlHttp.onreadystatechange = function()
		{
			if ( oXmlHttp.readyState == 4 )
			{
				oFCKXml.DOMDocument = oXmlHttp.responseXML ;
				if ( oXmlHttp.status == 200 ) {
					//alert("before callback!!"+asyncFunctionPointer);
					asyncFunctionPointer( oFCKXml ) ;
					//alert("after callback!!"+asyncFunctionPointer);
				}
				else
				{
					alert( 'XML request error: ' + oXmlHttp.statusText + ' (' + oXmlHttp.status + ')' ) ;
				}
			}
		}
	}

	oXmlHttp.send( null ) ;

	if ( ! bAsync )
	{
		if ( oXmlHttp.status == 200 )
			this.DOMDocument = oXmlHttp.responseXML ;
		else
		{
			alert( 'XML request error: ' + oXmlHttp.statusText + ' (' + oXmlHttp.status + ')' ) ;
		}
	}
}

FCKXml.prototype.SelectNodes = function( xpath )
{
	if ( document.all )		// IE
		return this.DOMDocument.selectNodes( xpath ) ;
	else					// Gecko
	{
		var aNodeArray = new Array();

		var xPathResult = this.DOMDocument.evaluate( xpath, this.DOMDocument,
				this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), XPathResult.ORDERED_NODE_ITERATOR_TYPE, null) ;
		if ( xPathResult )
		{
			var oNode = xPathResult.iterateNext() ;
 			while( oNode )
 			{
 				aNodeArray[aNodeArray.length] = oNode ;
 				oNode = xPathResult.iterateNext();
 			}
		}
		return aNodeArray ;
	}
}

FCKXml.prototype.SelectSingleNode = function( xpath )
{
	if ( document.all )		// IE
		return this.DOMDocument.selectSingleNode( xpath ) ;
	else					// Gecko
	{
		var xPathResult = this.DOMDocument.evaluate( xpath, this.DOMDocument,
				this.DOMDocument.createNSResolver(this.DOMDocument.documentElement), 9, null);

		if ( xPathResult && xPathResult.singleNodeValue )
			return xPathResult.singleNodeValue ;
		else
			return null ;
	}
}

var oConnector = new Object() ;
oConnector.SendCommand = function( command, params, callBackFunction )
{
	//alert("inside SendCommand="+command);
	//var sUrl = this.ConnectorUrl + 'Command=' + command ;
	//sUrl += '&Type=' + this.ResourceType ;
	//sUrl += '&CurrentFolder=' + escape( this.CurrentFolder ) ;

	sUrl=command;
	if ( params ) sUrl += '&' + params ;

	var oXML = new FCKXml() ;
	//alert("surl="+sUrl);
	if ( callBackFunction )

		oXML.LoadUrl( sUrl, callBackFunction ) ;	// Asynchronous load.
	else
		return oXML.LoadUrl( sUrl ) ;
}

oConnector.CheckError = function( responseXml )
{
	var iErrorNumber = 0
	var oErrorNode = responseXml.SelectSingleNode( 'Connector/Error' ) ;

	if ( oErrorNode )
	{
		iErrorNumber = parseInt( oErrorNode.attributes.getNamedItem('number').value ) ;

		switch ( iErrorNumber )
		{
			case 0 :
				break ;
			case 1 :	// Custom error. Message placed in the "text" attribute.
				alert( oErrorNode.attributes.getNamedItem('text').value ) ;
				break ;
			case 101 :
				alert( 'Folder already exists' ) ;
				break ;
			case 102 :
				alert( 'Invalid folder name' ) ;
				break ;
			case 103 :
				alert( 'You have no permissions to create the folder' ) ;
				break ;
			case 110 :
				alert( 'Unknown error creating folder' ) ;
				break ;
			default :
				alert( 'Error on your request. Error number: ' + iErrorNumber ) ;
				break ;
		}
	}
	return iErrorNumber ;
}

function GetStandartCallBack( fckXml )
{
	if ( oConnector.CheckError( fckXml ) != 0 )
		return ;

	// Get the current folder path.
	var oNodes = fckXml.SelectNodes( 'Connector/Items/Item' ) ;

	//alert("oNodes.length="+oNodes.length);

	for ( var i = 0 ; i < oNodes.length ; i++ )
	{
		var sItemName = oNodes[i].attributes.getNamedItem('name').value ;
		var sItemValue = oNodes[i].attributes.getNamedItem('value').value ;
		//alert("name="+sItemName+" - value="+sItemValue);

		if (document.getElementById(sItemName)) {
			document.getElementById(sItemName).innerHTML=sItemValue;
		}

	}
}
function GetBasketCallBack( fckXml )
{
	if ( oConnector.CheckError( fckXml ) != 0 )
		return ;

	// Get the current folder path.
	var oNodes = fckXml.SelectNodes( 'Connector/Items/Item' ) ;

	//alert("oNodes.length="+oNodes.length);
	for ( var i = 0 ; i < oNodes.length ; i++ )
	{

		var sItemName = oNodes[i].attributes.getNamedItem('name').value ;
		var sItemValue = oNodes[i].attributes.getNamedItem('value').value ;
		//alert("name="+sItemName+" - value="+sItemValue);

		if (document.getElementById(sItemName)) {
			document.getElementById(sItemName).innerHTML=sItemValue;
		}


	}
}
function GetLoginCallBack( fckXml )
{
	if ( oConnector.CheckError( fckXml ) != 0 )
		return ;

	// Get the current folder path.
	var oNodes = fckXml.SelectNodes( 'Connector/Items/Item' ) ;

	var CustomerFound=0;
	var CustomerName='';
	var OrdersCount='';
	var BonusPoints='';

	for ( var i = 0 ; i < oNodes.length ; i++ )
	{
		var sItemName = oNodes[i].attributes.getNamedItem('name').value ;
		var sItemValue = oNodes[i].attributes.getNamedItem('value').value ;

		//alert("name="+sItemName+" - value="+sItemValue);

		if ((sItemName=='IdCustomer')&& (sItemValue>0)) {
			CustomerFound=1;
		}

		if (sItemName=='CustomerName') {
			CustomerName=sItemValue;
			//alert("CustomerName="+CustomerName);
		}
		if (sItemName=='OrdersCount') {
			OrdersCount=sItemValue;
			//alert("OrdersCount="+OrdersCount);
		}
		if (sItemName=='BonusPoints') {
			BonusPoints=sItemValue;
			//alert("BonusPoints="+BonusPoints);
		}

	}

	var htmlstr='';

	if (CustomerFound==0) {


	 htmlstr=htmlstr+'<form action="/store/customerAuthenticateExec.asp" method="post" target="_top">';
	 htmlstr=htmlstr+'<table width="100%" cellpaddig="0" cellspacing="0">';
	 htmlstr=htmlstr+'<tr><td align="right">';
	 htmlstr=htmlstr+'Hoşgeldiniz <a href="/store/customerAuthenticateForm.asp">Üye iseniz</a> Yeni üye olacaksanız <a href="/store/customerRegistrationForm.asp">Tıklayınız</a>'
	 htmlstr=htmlstr+'</td></tr>';

	 htmlstr=htmlstr+'</table>';


	}
	else {

	htmlstr=htmlstr+'<table width="100%" cellpaddig="0" cellspacing="0">';
	htmlstr=htmlstr+'<tr>';
	htmlstr=htmlstr+'<td  width="100%" align="right">';
		htmlstr=htmlstr+'<font color="#000000">';
		htmlstr=htmlstr+'Merhaba '+ CustomerName+' <a href="/store/customerUtilitiesMenu.asp">Hesabınız</a>'+' <a href="/store/customerLogout.asp">Çıkış</a>'
		htmlstr=htmlstr+'</td></tr>';
	htmlstr=htmlstr+'</table>';

	//alert("htmlstr2="+htmlstr);
	}

	document.getElementById('LoginPanel').innerHTML=htmlstr;

}

function GetAnketCallBack( fckXml )
{
	if ( oConnector.CheckError( fckXml ) != 0 )
		return ;

	// Get the current folder path.
	var oNodes = fckXml.SelectNodes( 'Connector/Items/Item' ) ;

	//alert("oNodes.length="+oNodes.length);
	var selectitem=document.anketform.anketselect;
	//alert("selectitem index="+selectitem.selectedIndex);
	var countx=0;
	for ( var i = 0 ; i < oNodes.length ; i++ )
	{
		var sItemName = oNodes[i].attributes.getNamedItem('name').value ;
		var sItemValue = oNodes[i].attributes.getNamedItem('value').value ;
		//alert("name="+sItemName+" - value="+sItemValue);

		//
		//alert("name="+sItemName);


		if (sItemName!='anket_soru') {

			countx=countx+1; //ilk eleman boş.

			var sItemId = oNodes[i].attributes.getNamedItem('idval').value ;

			//new Option(text, value, defaultSelected, selected)

			selectitem.options[countx]=new Option(sItemValue, sItemId, false, false);

		}

		if (document.getElementById(sItemName)) {
			document.getElementById(sItemName).innerHTML=sItemValue;
		}

	}
}

function GetMostSoldProductsCallBack( fckXml )
{
	if ( oConnector.CheckError( fckXml ) != 0 )
		return ;

	// Get the current folder path.
	var oNodes = fckXml.SelectNodes( 'Connector/Items/Item' ) ;
	var htmlstr='';
	var idProduct='';
	var pCurrencySign='';
	var description='';
	var Price='';
	var smallImageUrl='';
	htmlstr=htmlstr+'<table width="100%" border="0">';
    htmlstr=htmlstr+'<tbody>';
	pCurrencySign = oNodes[0].attributes.getNamedItem('value').value ;
	for ( var i = 1 ; i < oNodes.length ; i++ )
	{
		var sItemName = oNodes[i].attributes.getNamedItem('name').value ;
		var sItemValue = oNodes[i].attributes.getNamedItem('value').value ;
		//alert("name="+sItemName+" - value="+sItemValue);
		if (sItemName=='IdProduct') {
			idProduct=sItemValue;
			//alert("CustomerName="+CustomerName);
		}
		if (sItemName=='description') {
			description=sItemValue;
			//alert("CustomerName="+CustomerName);
		}
		if (sItemName=='Price') {
			Price=sItemValue;
			//alert("CustomerName="+CustomerName);
		}
		if (sItemName=='smallImageUrl') {
			smallImageUrl=sItemValue;
			//alert("CustomerName="+CustomerName);
		}
		if (sItemName=='smallImageUrl') {
			if (smallImageUrl==''){
				htmlstr=htmlstr+'<tr><td colspan="2">'+'<p class="altbaslik" align="left"><a href="/store/viewItem.asp?idProduct='+idProduct+'" style="text-decoration: none;"><font face="Tahoma" color="#999999" size="2">'+description+'</a><br>'+Price+' '+pCurrencySign+'</font></p>';
				htmlstr=htmlstr+'</td></tr>';
			}
			else{
	            htmlstr=htmlstr+'<tr><td>';
	            htmlstr=htmlstr+'<p class="altbaslik" align="left"><a href="/store/viewItem.asp?idProduct='+idProduct+'" style="text-decoration: none;"><font face="Tahoma" color="#999999" size="2">'+description+'</a><br>'+Price+' '+pCurrencySign+'</font></p>';
	            htmlstr=htmlstr+'</td>';
	            htmlstr=htmlstr+'<td class="altbaslik">';
	            htmlstr=htmlstr+'<p align="left">&nbsp;<a href="/store/viewItem.asp?idProduct='+idProduct+'"><img  alt="" src="'+smallImageUrl+'" border="0" width="65"/></a></p>';
	            htmlstr=htmlstr+'</td></tr>';
			}
		}

	}

	htmlstr=htmlstr+'</tbody>';
    htmlstr=htmlstr+'</table>';

	document.getElementById('GetMostSoldProducts').innerHTML=htmlstr;

}

function GetVipProductsCallBack( fckXml )
{
	if ( oConnector.CheckError( fckXml ) != 0 )
		return ;

	// Get the current folder path.
	var oNodes = fckXml.SelectNodes( 'Connector/Items/Item' ) ;
	var htmlstr='';
	var idProduct='';
	var pCurrencySign='';
	var description='';
	var Price='';
	var smallImageUrl='';
	htmlstr=htmlstr+'<table width="100%" border="0">';
    htmlstr=htmlstr+'<tbody>';
	pCurrencySign = oNodes[0].attributes.getNamedItem('value').value ;
	for ( var i = 1 ; i < oNodes.length ; i++ )
	{
		var sItemName = oNodes[i].attributes.getNamedItem('name').value ;
		var sItemValue = oNodes[i].attributes.getNamedItem('value').value ;
		//alert("name="+sItemName+" - value="+sItemValue);
		if (sItemName=='IdProduct') {
			idProduct=sItemValue;
			//alert("CustomerName="+CustomerName);
		}
		if (sItemName=='description') {
			description=sItemValue;
			//alert("CustomerName="+CustomerName);
		}
		if (sItemName=='Price') {
			Price=sItemValue;
			//alert("CustomerName="+CustomerName);
		}
		if (sItemName=='smallImageUrl') {
			smallImageUrl=sItemValue;
			//alert("CustomerName="+CustomerName);
		}
		if (sItemName=='smallImageUrl') {
			if (smallImageUrl==''){
				htmlstr=htmlstr+'<tr><td colspan="2">'+'<p class="altbaslik" align="left"><a href="/store/viewItem.asp?idProduct='+idProduct+'" style="text-decoration: none;"><font face="Tahoma" color="#999999" size="2">'+description+'</a><br>'+Price+' '+pCurrencySign+'</font></p>';
				htmlstr=htmlstr+'</td></tr>';
			}
			else{
	            htmlstr=htmlstr+'<tr><td>';
	            htmlstr=htmlstr+'<p class="altbaslik" align="left"><a href="/store/viewItem.asp?idProduct='+idProduct+'" style="text-decoration: none;"><font face="Tahoma" color="#999999" size="2">'+description+'</a><br>'+Price+' '+pCurrencySign+'</font></p>';
	            htmlstr=htmlstr+'</td>';
	            htmlstr=htmlstr+'<td class="altbaslik">';
	            htmlstr=htmlstr+'<p align="left">&nbsp;<a href="/store/viewItem.asp?idProduct='+idProduct+'"><img  alt="" src="'+smallImageUrl+'" border="0" width="65"/></a></p>';
	            htmlstr=htmlstr+'</td></tr>';
			}
		}

	}

	htmlstr=htmlstr+'</tbody>';
    htmlstr=htmlstr+'</table>';

	document.getElementById('GetVipProducts').innerHTML=htmlstr;

}