﻿/***************************/
//@Author: Adrian "yEnS" Mato Gondelle & Ivan Guardado Castro
//@website: www.yensdesign.com
//@email: yensamg@gmail.com
//@license: Feel free to use it, but keep this credits please!					
/***************************/

$(document).ready(function(){
	//global vars
	var inputUser = $("#nick");
	var inputMessage = $("#message");
	var loading = $("#loading");
	var messageList = $(".content > li");

	//functions
function parseMsg(m)
{
var i=j=1;
while (i || j) {
if(m.indexOf("+")!=-1)
{
m=m.substring(0,m.indexOf("+"))+"%2B"+m.substring(m.indexOf("+")+1,m.length);
}
else i=0;

if(m.indexOf("&")!=-1)
{
m=m.substring(0,m.indexOf("&"))+"%26"+m.substring(m.indexOf("&")+1,m.length);
}
else j=0;
}
return m;
}	

	function updateShoutbox(){
		//send the post to shoutbox.php
		$.ajax({
			type: "POST", url: "shoutbox.php", data: "action=update",
			complete: function(data){
				loading.remove();
				messageList.html(data.responseText);
			}
		});
	}
	//check if all fields are filled
	function checkForm(){
		if(inputUser.attr("value") && inputMessage.attr("value"))
			return true;
		else
			return false;
	}
	
	//Load for the first time the shoutbox data
	updateShoutbox();
	
	//on submit event
	$("#form").submit(function(){
		if(checkForm()){
			var nick = inputUser.attr("value");
			var message = inputMessage.attr("value");
			message=parseMsg(message);
			//we deactivate submit button while sending
			$("#send").attr({ disabled:true, value:"Sending..." });
			$("#send").blur();
			//send the post to shoutbox.php
			$.ajax({
				type: "POST", url: "shoutbox.php", data: "action=insert&nick=" + nick + "&message=" + message,
				complete: function(data){
					messageList.html(data.responseText);
					updateShoutbox();
					//reactivate the send button
					$("#send").attr({ disabled:false, value:"Shout it!" });
					$('#message').val('').focus();
				}
			 });
		}
		else alert("Please fill all fields!");
		//we prevent the refresh of the page after submitting the form
		return false;
	});
//Auto update shoutbox data
shoutboxtimer=setInterval(updateShoutbox, 10000);
});


