
jQuery(document).ready(function()
{
	jQuery('.jcarousel-skin-svg').jcarousel({});
	jQuery('.tabs').tabs();
});


YAHOO.namespace('svg.container');


function basketAdd(url1, url2)
{
	callMe(
	{
		url : url1,
		title : 'Produkt wird hinzugefügt',
		callback : function()
		{
			if (this.success && url2)
			{
				callMe(
				{
					url : url2,
					title : 'Warenkorb wird aktualisiert',
					callback : function()
					{
						if (this.success)
						{
							var c = document.getElementById('basketCount');
							var s = document.getElementById('basketSum');
							///
							c.replaceChild(document.createTextNode(this.count), c.firstChild);
							s.replaceChild(document.createTextNode(this.sum.replace(/\./g,',')), s.firstChild);
						}
						YAHOO.svg.container.wait.hide();
					}
				});
			}
		}
	});
}


function basketUpdate(url1, url2)
{
	callMe(
	{
		url : url1,
		title : 'Eintrag wird geändert',
		callback : function()
		{
			if (this.success && url2)
			{
				document.location = url2;
			}
		}
	});
}


function basketRemove(url1, url2)
{
	callMe(
	{
		url : url1,
		title : 'Eintrag wird entfernt',
		callback : function()
		{
			if (this.success && url2)
			{
				document.location = url2;
			}
		}
	});
}


function callMe(params)
{
	if (!YAHOO.svg.container.wait)
	{
		YAHOO.svg.container.wait = new YAHOO.widget.Panel('wait',
		{
			width: '240px',
			fixedcenter: true,
			close: false,
			draggable: true,
			zindex: 4,
			modal: true,
			visible: false
		});
		YAHOO.svg.container.wait.setHeader('Bitte warten...');
		YAHOO.svg.container.wait.setBody('<img src="pix/loading.gif"/>');
		YAHOO.svg.container.wait.render(document.body);
	}
	YAHOO.svg.container.wait.setHeader(params.title ? params.title : 'Bitte warten...');
	YAHOO.svg.container.wait.show();
	YAHOO.util.Connect.asyncRequest('GET', params.url + (params.url.indexOf('?') == -1 ? '?' : '&') + 'rnd=' + Math.random(),
	{
		success : function(o)
		{
			var x = o.responseXML;
			var root = x.documentElement;
			var r = { success : true, message : '' };
			///
			for (var i = 0;i < root.childNodes.length;i++)
			{
				var n = root.childNodes[i];
				///
				if (n.nodeType == 1)
				{
					switch (n.nodeName)
					{
						case 'success':
							r.success = (n.firstChild.nodeValue == 'true');
							break;
						case 'message':
							r.message = n.firstChild.nodeValue;
							break;
						default:
							r[n.nodeName] = n.firstChild.nodeValue;
							break;
					}
				}
			}
			if (params.callback)
			{
				params.callback.call(r);
			}
			else
			{ 
				YAHOO.svg.container.wait.hide();
			}
		},
		failure : function(o)
		{
			YAHOO.svg.container.wait.hide();
			alert('Ein Fehler ist aufgetreten.');
		},
		argument : null
	}, null); 
}

