﻿// functions for artist-collection-ajax
// handles ajax calls and hiding, showing, positioning and populating the feedback div, and confirming deletes

function confirmdelete() {
	return confirm("Are you sure you want to delete this item?\n\nPLEASE NOTE: This Cannot Be Undone!");
}


function createRequestObject() {
  var ro;
  ro = window.XMLHttpRequest
       ? new XMLHttpRequest() :
         new ActiveXObject("Microsoft.XMLHTTP");
  return ro;
}

var http = createRequestObject();

function sndReq(handler, postback, pageaction, id, frame,other) {
	var sDate = new Date();
	var sTime = sDate.getMinutes() + '' + sDate.getSeconds() + '' + sDate.getMilliseconds();
  http.open('get', handler + '?postback=' + postback + '&pageaction=' + pageaction + '&id='+id+ '&frame='+frame+ "&" + other + '&time=' + sTime);
  http.onreadystatechange = handleResponse;
  http.send(null);
  return false;
}

function handleResponse() {
  if(http.readyState == 4){
    var response = http.responseText;
    var arrResponse = new Array();
    if(response.indexOf('|') != -1) { 
		arrResponse = response.split('|');
		document.getElementById('cartMenu').style.display = 'block';
		document.getElementById('cartItemsCount').innerHTML = arrResponse[1];
		document.getElementById('cartTotalItemsPrice').innerHTML = arrResponse[2];
		document.getElementById('holdingDiv').innerHTML = arrResponse[3];
		document.getElementById('holdingDiv').style.display = 'block';
		// PositionLayer(arrResponse[0]);
		PositionLayer('holdingDiv');
    }
  }
}

function PositionLayer(layerName)
{	
	var IE = document.all?true:false;
	if(navigator.userAgent.indexOf('Netscape/7.0') != -1) var ns7 = true;
	layer = document.getElementById(layerName);
	
	if(IE)
	{ 
		layer.style.top = (document.documentElement.clientHeight / 2) - 62;
		layer.style.left = ( document.body.clientWidth / 2 ) - 131;
	}
	else
	{
		var newTop = ( window.innerHeight / 2) - 62;
		var newLeft = ( document.body.clientWidth / 2 ) - 131;
		newTop += 'px';
		newLeft += 'px';
		layer.style.top = newTop;
		layer.style.left = newLeft;
	}
	if(ns7)
	{			
		sNetscapeLeft = (window.innerWidth / 2) - 100 + 'px';
		sNetscapeTop = window.pageYOffset + 300 + 'px';
		layer.style.left = sNetscapeLeft;
		layer.style.top = sNetscapeTop;
	}
	if(navigator.userAgent.indexOf('MSIE 5.5') != -1) 
	{
		sIE5Left = (document.body.clientWidth / 2) - 100 + 'px';
		layer.style.left = sIE5Left;
	}
	if (document.getElementById('errorFrame')) {
		
		frame = document.getElementById('errorFrame'); // find iFrame to position behind layer to fix selects breaking layer.
	
		if(layerName == 'holdingDiv')
		{
			var errorFrameTop = layer.style.top.substring(0, layer.style.top.indexOf('px')) - 0;
			var errorFrameLeft = layer.style.left.substring(0, layer.style.left.indexOf('px')) - 0;
			if(document.getElementById('alert'))
			{
				var errorFrameHeight = document.getElementById('alert').clientHeight - 0;
				errorFrameHeight = 300;
			}
			else
			{
				var errorFrameHeight = 120;
			}
			frame.style.top = errorFrameTop+5;
			frame.style.left = errorFrameLeft+5;
			frame.style.width = '265px';
			frame.style.height = errorFrameHeight - 19;
			frame.style.display = "block";
			frame.style.filter='progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=0)';
		}
		else
		{
		}
	}
}

function hideLayer(layerName)
{
	document.getElementById(layerName).style.display = 'none';
	if(document.getElementById('errorFrame')) document.getElementById('errorFrame').style.display = 'none';
}

