jQuery(document).ready(function() {
    jQuery("#nextBtn").mouseover(function(){
        jQuery(this).attr("src","http://cdn.wibiya.com/Graphics_Website/next_btn_over.png");
    }).mouseout(function(){
        jQuery(this).attr("src","http://cdn.wibiya.com/Graphics_Website/next_btn_normal.png");
    }).click(function(){
        jQuery("#registrationForm").submit();
    }); 
    
    jQuery("#registrationForm").validate({
        errorPlacement: function(error, element) {
            error.appendTo(element.parent().parent().parent().find('.errorMessage'));
        },
        onkeyup: false,
        rules: {
            FullName: {
                required: true,
                minlength: 5
            },
            UserEmail: {
                required: true,
                email: true
            },
            siteName:{
                required: true,
                minlength: 2
            },
            siteUrl:{
                required: true,
                minlength: 5,
                url : true
            },            
            UserPassword:{
                required:  function(element) {
                        return ssoLogin==0;
                      },
                minlength: 2
            }
        },
        messages: {
            FullName: {
                required:  /*<sl:translate>*/"Please specify your full name"/*</sl:translate>*/,
                minlength: /*<sl:translate>*/"Your name must contain at least 5 letters"/*</sl:translate>*/
            },
            UserEmail: {
                required: /*<sl:translate>*/"We need your email address to contact you"/*</sl:translate>*/,
                email: /*<sl:translate>*/"Your email address must be in the format of name@domain.com"/*</sl:translate>*/
            },
            siteName: {
                required: /*<sl:translate>*/"Please specify site name"/*</sl:translate>*/,
                minlength: /*<sl:translate>*/"Site name must contain at least 2 letters"/*</sl:translate>*/
            },
            siteUrl:{
                required:  /*<sl:translate>*/"Please specify your site URL"/*</sl:translate>*/,
                minlength: /*<sl:translate>*/"Your  URL must contain at least 5 letters"/*</sl:translate>*/,
                url : /*<sl:translate>*/"Your URL address must be in the format of http://www.domain.com"/*</sl:translate>*/
            },
            UserPassword:{
                required: /*<sl:translate>*/"Please specify your Password"/*</sl:translate>*/,
                minlength: /*<sl:translate>*/"Your password must contain at least 2 characters"/*</sl:translate>*/
            }
           
        }
    });



    /*   Form elements behave
	*/
    jQuery("#FullName").focus(function () {
        jQuery(this).parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_focused.gif)');
    }).blur(function () {
        jQuery(this).parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_normal.gif)');
    });
    jQuery("#UserEmail").focus(function () {
        jQuery(this).parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_focused.gif)');
        jQuery(".errorMessage[for=UserEmail]").html("");
    }).blur(function () {
        var emailtextbox = jQuery(this);
        CheckEmail(emailtextbox.val());
        emailtextbox.parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_normal.gif)');
    });
    jQuery("#ConfirmUserEmail").focus(function () {
        jQuery(this).parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_focused.gif)');
    }).blur(function () {
        jQuery(this).parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_normal.gif)');
    });
    jQuery("#siteName").focus(function () {
        jQuery(this).parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_focused.gif)');
    }).blur(function () {
        jQuery(this).parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_normal.gif)');
    });
	
    jQuery("#siteUrl").focus(function () {
        jQuery(this).parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_focused.gif)');
    }).blur(function () {
        jQuery(this).parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_normal.gif)');
    });
	
    jQuery("#UserPassword").focus(function () {
        jQuery(this).parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_focused.gif)');
    }).blur(function () {
        jQuery(this).parent().css('background-image','url(http://cdn.wibiya.com/Graphics_Website/textbox_back_normal.gif)');
    });
	
    
   


    

    //selector behaviour
    //populate selector with lang.
    var x; // x is the json index
    var langlistIL = '';
    var langNum = _translationJson.length;
    
    for (x = 0; x < langNum; x++) {
    
        var lang = unescape(_translationJson[x]['Name']);
        var langEng = _translationJson[x]['NameEnglish'];

        var langClass = 'lang' + langEng;


        langlistIL +=  '<li class="langlistLI" langid="' + x + '" id="lang_' + x + '">';
        langlistIL +=   '<div id="langSelectWrap">';
        langlistIL +=  '<div  class="flagLI ' + langClass + '"></div>';
        langlistIL +=  '<div id="langTextLI">' + lang  + '</div>';
        langlistIL +=  '</div>';
        langlistIL +=  '</li>';


    }

    jQuery('#langlistUL').append(langlistIL);
    jQuery("#langText").html("English");
    jQuery("#flag").addClass("langEnglish");
    jQuery("#langToolbarId").attr("value", _translationJson[0]['LangId']);


    jQuery('li.langlistLI').mouseover(function()
    {
        jQuery(this).addClass("lang_li_over");
    }).mouseout(function()
    {
        jQuery(this).removeClass("lang_li_over");
    })

    


    jQuery('#langDropDown').mouseover(function()
    {
        jQuery(this).removeClass("lang_dropdown_normal").addClass("lang_dropdown_over");
    }).mouseout(function()
    {
        jQuery(this).removeClass("lang_dropdown_over").addClass("lang_dropdown_normal");
    }).click(function(event)
    {
        //change langlist class according to resolution
        if (getViewPort('w') <= 1024)
        {
            jQuery("#langlist").removeClass("langlist_normal").addClass("langlist_1024");
        }
        else
        {
            jQuery("#langlist").removeClass("langlist_1024").addClass("langlist_normal");
        }

        if (jQuery("#langlist").css("display") != "none")
        {
            jQuery("#langlist").fadeOut(500);
        }
        else
        {
            jQuery("#langlist").fadeIn(500);
        }

        event.stopPropagation();

        if (jQuery("#langlist").css("display") != "none")
        {
            jQuery("body").click(function() {
                jQuery("body").unbind('click');
                jQuery("#langlist").fadeOut(500);
            });
        }
        
    });

    
    //on language select
    jQuery("#langlistUL").children().click(function()
    {
        
        var indexId = jQuery(this).attr("langid");
        var langEng = _translationJson[indexId]['NameEnglish'];

        var flagClass = 'lang' + langEng;

        jQuery("#langText").html(_translationJson[indexId]['Name']);
        jQuery("#flag").removeClass().addClass(flagClass);
        jQuery("#langToolbarId").attr("value", _translationJson[indexId]['LangId']);
        jQuery("#langlist").fadeOut(500);
    });

});

window.onload = function() {
    SetMainBodyHeight();
}

function getViewPort(dir){
    if (typeof window.innerWidth != "undefined"){
        return dir=='h'?window.innerHeight:window.innerWidth;
    }
    else if (typeof document.documentElement != "undefined"
        && typeof document.documentElement.clientWidth !=
        "undefined" && document.documentElement.clientWidth !== 0){
        return dir=='h'?document.documentElement.clientHeight:document.documentElement.clientWidth;
    }
    else{
        return dir=='h'?document.getElementsByTagName("body")[0].clientHeight:document.getElementsByTagName("body")[0].clientWidth;
    }
}

function CheckEmail(email)
{
     var emailEnvelope = {
        service: "User",
        method: "isEmailExists",
        callback: CheckEmailCB,
        data: [email]
    };
    jqBus.makeRequest(emailEnvelope);
}

function CheckEmailCB(data)
{
    if(data.result == 'success')
    {
        if (data.data==true) {
            jQuery(".errorMessage[for=UserEmail]").html("You already have a Wibiya account (or a Conduit ID), so  <a href=/Login.php>log in here.</a>").show();
        }
        
    }
}
