/******* LOGIN   FUNCTIONS ********/
var SHOCKOEAPP = APP_URL;
var SERVER = new dojo.rpc.JsonService(SHOCKOEAPP+"/index.php?rpcmap=1");

function doLogin(){
	var username = document.getElementById( 'l_username' ).value;
	var password = document.getElementById( 'l_password' ).value;
	if ( !username.match(/^\S+@\S+\.\S+$/) ){
		showMessage("Invalid Email Address","error");
	}else if (!(password.length > 0 )){
		showMessage("Please type your password","error");
	}else{
	    SERVER.login( username, password ).addCallback( doLoginResult );
	}
}

function doLoginResult( result ){
	if ( result.error ){
		showMessage(result.error,"error");
	}else if ( result.responseText ){
		showMessage("Network error","error");
	}else if ( result.sid ){
		parent.location.href=APP_URL;
	}else{
		showMessage(result.error,"error");
	}
}
function dosendMail() {
    var subject     = document.getElementById( 'subject' ).value;
    var email       = document.getElementById( 'email' ).value;
	var message     = document.getElementById( 'message' ).value;
	var contactTo   = document.getElementById( 'contactTo').value;
	
    if (!(subject.length > 0 )){
		showMessage("Subject field is empty","error");
	}else if ( !email.match(/^\S+@\S+\.\S+$/) ){
		showMessage("Email address is not valid","error");
	}else if (!(message.length > 0 )){
		showMessage("You should type some words in the message field","error");
	}else{
	    //SERVER.sendMail( subject, email, message, contactTo).addCallback( doSendMailResult );	   	
	    var myAjax = new Ajax("contact_us.php", {method: 'post',data: "subject="+subject+"&email="+email+"&message="+message+"&contactTo="+contactTo,onComplete:doSendMailResult}).request();	    
	}
}
function doSendMailResult( result ){
	if ( result.error ){
		showMessage(result.error,"error");
	}else if ( result.responseText ){
		showMessage("Network error","error");
	}else{
	    showMessage("Email sent successfully");
	}
}
/******* SIGN UP FUNCTIONS ********/
function doSignupStep1(){
	var username = document.getElementById( 'username' ).value;
	var password = document.getElementById( 'password' ).value;
	var password2 = document.getElementById( 'password2' ).value;
	if ( !username.match(/^\S+@\S+\.\S+$/) ){
		showMessage("Email address is not valid","error");
	}else if ( !(password == password2 && password.length > 0 ) ){
		showMessage("Review your passwords, they don't match","error");
	}else{
		SERVER.signupStep1( username, password ).addCallback( doSignupStep1Result );
	}
}

function doSignupStep1Result( result ){
	if ( result.responseText ){
	    showMessage("Network error","error");
	}else if( result.error ){
	    showMessage("User already signed up. Request new password","error");
	}else if ( result )	{
	    hide('step1');
	    show( 'step2' );
	}
}

function doSignupStep2(){
	var confirm = document.getElementById( 'txtCode' ).value;
	SERVER.signupStep2( confirm ).addCallback( doSignupStep2Result );
}

function doSignupStep2Result( result ){
	if ( result.responseText ){
		showMessage("Network error","error");
	}else if ( result.sid ){
		showMessage("Redirecting you to the application");
		parent.location.href=APP_URL;

	}else{
		showMessage("Please check your code","error");
	}
}

/******* HELPER FUNCTIONS ********/
function hideMsg(){
	var msgDiv  = document.getElementById('divInfo1');
	var miSlide = new Fx.Slide(msgDiv);
	setTimeout(miSlide.slideOut(),5000);
}

function hideTbl(){
	var tbl     = document.getElementById('tblEfecto');
	tbl.style.display="none";
}
function showMessage(msg,type){
    if(type == "error"){
        alert("-- ERROR --\n"+msg);
    }else{
        alert(msg);
    }

}

function show(obj){
	if(document.getElementById(obj).style.display != "block"){
		document.getElementById(obj).style.display="block";
	}
}

function hide(obj){
	if(document.getElementById(obj)){
		document.getElementById(obj).style.display="none";
	}
}

function addSlideEffect(divId, linkId)
{
    var miSlide = new Fx.Slide(divId);
       miSlide.hide();
       miSlide.toggle();
}


function newWindow(page,w,h){
            emailwindow=window.open(page,"Email","width="+w+",height="+h+",scrollbars=yes")
            emailwindow.focus();
}

