var Seenlauf = {
	/*
	send_new:			function(form) {
		Form.request(form, {
			onComplete: function(xmlHttpRequest) {
				value = JSON.parse(xmlHttpRequest.responseText);

				switch (value.status_message) {
				case 'successful':
					alert('Der Eintrag wurde erfolgreich gespeichert.');
					new Ajax.Updater('content', 'processAJAX.php?use=GuestbookModule');
					break;
					
				default:
					alert('Es ist ein Fehler aufgetreten.');
					break;
				}
			}
		});
	}*/
	
	add_article:			function(form) {
		Form.request(form, {
			onComplete: function(xmlHttpRequest) {
				value = JSON.parse(xmlHttpRequest.responseText);

				switch (value.status_message) {
				case 'successful':
					alert("Der Artikel wurde erfolgreich in den Warenkorb eingefügt.");
					new Ajax.Updater('content', 'processAJAX.php?use=SLModule:overview:');
					break;
					
				default:
					alert('Es ist ein Fehler aufgetreten.');
					break;
				}
			}
		});
	},
	/*
	add_article:		function(articleID, attributeID, count) {
		if (count == 0) {
			alert("Bitte geben Sie eine gültige Menge ein.");
			document.form_articles["count_" + articleID].focus;
			return;
		}
		
		new Ajax.Request("process_shop_seenlauf.php5?action=addArticleToBasket", {
			asynchronous: 	false,
			method: 		'get',
			parameters:		{
				articleID:		articleID,
				attributeID:	attributeID,
				count:			count
			}
		});
		
		this.requestBasket();
		alert("Der Artikel wurde erfolgreich in den Warenkorb eingefügt.");
	};*/
	
	delete_article:		 	function(article, attribute) {
		if (!confirm('Möchten Sie den gewählte Artikel wirklich aus Ihrem Warenkorb entfernen?'))
			return;
			
		new Ajax.Request('processAJAX.php?use=SLModule::delete_article&article=' + article + '&attribute=' + attribute, {
			onComplete:		function(xmlHttpRequest) {
				new Ajax.Updater('content', 'processAJAX.php?use=SLModule:overview');
			}
		});
	},
	
	admin_delete:			function(order) {
		if (!confirm('Möchten Sie die Bestellung wirklich löschen?'))
			return;
			
		new Ajax.Request('processAJAX.php?use=SLModule::admin_delete&order=' + order, {
			onComplete: 	function(xmlHttpRequest) {
				value = JSON.parse(xmlHttpRequest.responseText);

				switch (value.status_message) {
				case 'access denied':
					alert("Zugang verweigert.");
					break;
					
				case 'parameter order not found':
					alert("Der Parameter order wurde nicht gesetzt.");
					break;
					
				case 'successful':
					alert("Die Bestellung wurde erfolgreich gelöscht.");
					new Ajax.Updater('content', 'processAJAX.php?use=SLModule:admin');
					break;
					
				default:
					alert('Es ist ein Fehler aufgetreten.');
					break;
				}
			}
		});
	},
	
	admin_confirm:			function(order) {
		if (!confirm("Soll der Zahlungseingang bestätigt werden?"))
			return;
			
		new Ajax.Request('processAJAX.php?use=SLModule::admin_confirm&order=' + order, {
			onComplete: 	function(xmlHttpRequest) {
				value = JSON.parse(xmlHttpRequest.responseText);

				switch (value.status_message) {
				case 'access denied':
					alert("Zugang verweigert.");
					break;
					
				case 'parameter order not found':
					alert("Der Parameter order wurde nicht gesetzt.");
					break;
					
				case 'successful':
					alert("Die eMail wurde erfolgreich gesendet.");
					new Ajax.Updater('content', 'processAJAX.php?use=SLModule:admin');
					break;
					
				default:
					alert('Es ist ein Fehler aufgetreten.');
					break;
				}
			}
		});
	},
	
	admin_request_payment:	function(order) {
		if (!confirm("Soll eine Zahlungserinnerung gesendet werden?"))
			return;
			
		new Ajax.Request('processAJAX.php?use=SLModule::admin_request_payment&order=' + order, {
			onComplete: 	function(xmlHttpRequest) {
				value = JSON.parse(xmlHttpRequest.responseText);

				switch (value.status_message) {
				case 'access denied':
					alert("Zugang verweigert.");
					break;
					
				case 'parameter order not found':
					alert("Der Parameter order wurde nicht gesetzt.");
					break;
					
				case 'successful':
					alert("Die eMail wurde erfolgreich gesendet.");
					break;
					
				default:
					alert('Es ist ein Fehler aufgetreten.');
					break;
				}
			}
		});
	},
	
	admin_config:			function(form) {
		Form.request(form, {
			onComplete: function(xmlHttpRequest) {
				value = JSON.parse(xmlHttpRequest.responseText);

				switch (value.status_message) {
				case 'successful':
					alert("Die Konfiguration wurde erfolgreich gespeichert.");
					break;
					
				default:
					alert('Es ist ein Fehler aufgetreten.');
					break;
				}
			}
		});
	},
	
	order:					function(form) {
		Form.request(form, {
			onComplete: function(xmlHttpRequest) {
				value = JSON.parse(xmlHttpRequest.responseText);

				switch (value.status_message) {
				case 'no articles':
					alert("Ihr Warenkorb ist leer.");
					break;
					
				case 'user not logged in':
					alert("Bitte melden Sie sich erst mit Ihren Benutzerdaten an.");
					break;
					
				case 'successful':
					alert("Der Bestellung wurde erfolgreich aufgegeben.");
					new Ajax.Updater('content', 'processAJAX.php?use=SLModule:overview');
					break;
					
				default:
					alert('Es ist ein Fehler aufgetreten.');
					break;
				}
			}
		});
	}
}

function _Seenlauf() {
	this.checkOrder = function() {
		return false;
	};

	this.orderArticles = function() {
		var form = document.articles_form;

		// Eingaben prüfen		
		if (form.elements["user_id"]) {
			// User angemeldet
		} else {
			// User nicht angemeldet
			var elements = new Array("first_name", "last_name", "email");
			var messages = new Array("Bitte geben Sie einen Vornamen ein.", "Bitte geben Sie einen Nachnamen ein.", "Bitte geben Sie eine gültige e-Mail-Adresse ein.");

			for (var i = 0; i < elements.length; i++) {
				if (form.elements[elements[i]].value == "") {
					alert(messages[i]);
					form.elements[elements[i]].focus();
					return false;
				}
			}
		}
		
		// Bestellung aufgeben
		if (!confirm("Möchten Sie die Bestellung jetzt abschließen?"))
			return;
			
		var parameters = Form.serialize(form);
		new Ajax.Request("process_shop_seenlauf.php5?action=order", {
			asynchronous: 	false,
			method: 		'post', 
			parameters: 	parameters,
			onComplete: 	function(xmlHttpRequest) {
				alert(xmlHttpRequest.responseText);
			}
		});
		
		//location.reload();
		form.reset();
		this.requestBasket();
	};

	
	// NEU
	this.requestBasket = function() {
		new Ajax.Request("process_shop_seenlauf.php5?action=requestBasket", {
			asynchronous: 	false,
			method: 		'get',
			onComplete: 	function(xmlHttpRequest) {
				document.getElementById('basket').innerHTML = xmlHttpRequest.responseText;
			}
		});
	};
	
	this.requestPayment = function(order) {
		if (!confirm("Soll eine Zahlungserinnerung gesendet werden?"))
			return;
			
		new Ajax.Request("process_shop_seenlauf.php5?action=request_payment&order=" + order, {
			asynchronous: 	false,
			method: 		'get',
			onComplete: 	function(xmlHttpRequest) {
				alert("Die Zahlungserinnerung wurde erfolgreich gesendet.");
			}
		});
	};

	this.addArticle = function(articleID, attributeID, count) {
		if (count == 0) {
			alert("Bitte geben Sie eine gültige Menge ein.");
			document.form_articles["count_" + articleID].focus;
			return;
		}
		
		new Ajax.Request("process_shop_seenlauf.php5?action=addArticleToBasket", {
			asynchronous: 	false,
			method: 		'get',
			parameters:		{
				articleID:		articleID,
				attributeID:	attributeID,
				count:			count
			}
		});
		
		this.requestBasket();
		alert("Der Artikel wurde erfolgreich in den Warenkorb eingefügt.");
	};
	
	this.deleteArticle = function(articleID, attributeID) {
		if (!confirm("Möchten Sie den gewählte Artikel wirklich aus Ihrem Warenkorb entfernen?"))
			return;
			
		new Ajax.Request("process_shop_seenlauf.php5?action=deleteArticleFromBasket", {
			asynchronous: 	false,
			method: 		'get',
			parameters:		{
				articleID:		articleID,
				attributeID:	attributeID
			}
		});

		this.requestBasket();
	};
};
