/* ************************************************
# file    : lib.mailbox.js
# build   : 3
# date	  : 2010-06-14
# def     : mail css box
# Copyright Bugpics, dev.bugpics.fr, 2010
************************************************ */

// Password
//------------------------------------------------------------------

if (!window.Mailbox) {
	Mailbox = new Object();	
}

Mailbox = {
	hashcode: false,
	
	open: function(){
		
		var entier1 = Math.floor(Math.random() * 5);;
		var entier2 = Math.floor(Math.random() * 5);;
		this.hashcode = entier1 + entier2;
		
		var paramsCssBox = {
			title: "Envoyer un message",
			content: "<label for='mBname'>Nom</label><br/>" +
			"<input type='text' style='width: 360px;' name='mBname' maxlength='50' value='' tabindex='20'/><br/>" +
			"<label for='mBemail'>Email</label><br/>" +
			"<input type='text' style='width: 342px;' name='mBemail' id='mBemail' maxlength='50' value='' tabindex='21'/>"+
			"<div id='testMail' class='cssBoxTest'></div><br/>" +
			"<label for='mBmessage'>Message</label><br/>" +
			"<textarea name='mBmessage' style='width: 360px; height: 80px;'  rows='10' cols='10' tabindex='22'></textarea>"+
			"<label for='mBhashcode'>AntiSpam :</label> "+entier1+" + "+entier2+" = "+
			"<input type='text' style='width: 20px; text-align: center;' name='mBhashcode' maxlength='1' value='' tabindex='23'/>",
			width: 400,
			height: 265,
			form: "formMailbox",
			submitFunction: Mailbox.send,
			maxtabindex: 3,
			icon: 3
		};
		cssBox.show(paramsCssBox);
		document.getElementById("mBemail").onkeyup = function() {
			var email = this.value;
			email = email.toLowerCase();
			this.value = email;
			
			testIcon = document.getElementById("testMail");
			
			var reg = /^([_a-z0-9-]+(\.[_a-z0-9-]+)*)@([_a-z0-9-]+(\.[_a-z0-9-]+)*)\.([a-z]{2,6})$/i;
			if (reg.test(email))
				testIcon.style.backgroundPosition = "right top";
			else 
				testIcon.style.backgroundPosition = "left top";
		};
	},
	
	send: function() {
		var values = cssBox.formValues();
		var code = parseInt(values['mBhashcode']);
		var name = encodeURIComponent(values['mBname']);
		var email = encodeURIComponent(values['mBemail']);
		var message = encodeURIComponent(values['mBmessage']);
		
		if (name && email && message) {
			if (code == Mailbox.hashcode) {
				var corps = "name="+name+"&email="+email+"&message="+message;
			}
			else {
				var corps = "code=false";
			}
				
			Ajax.request(pathBugpics+"/mail/ajax.mailbox.php", corps, Mailbox.result);	
		}
		Mailbox.hashcode = false;
	},
	
	result: function(result){
	
		var mtitle = "Erreur", micon = 2, mtxt;
		switch (result) {
			case 'spam':
				mtxt = "<span class='error'>Le code AntiSpam est erroné !</span>";
				break;
			case 'false':
				mtxt = "<span class='error'>L'envoi de l'email a échoué !</span>";
				break;
			case 'nomail':
				mtxt = "<span class='error'>L'email est erroné !</span>";
				break;				
			default:
				mtitle = "Information";
				mtxt = "Votre message a été envoyé.";
				micon = 1;
		}
		
		var params = {
			title: mtitle,
			content: mtxt,
			center: 1,
			icon: micon,
			time: 4
		};
		cssBox.show(params);
	}
};