$(document).ready(function() {

    // initialization
    //_________________________________________________________________
    var baseUrl = $("#baseUrl").val();

    /**
     * bind the enter key in submit button (ui dialog)
     *
     */
    $(document).keypress(function(e) {

        if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {
            
            if ($('#member-login-dialog').dialog('isOpen'))
                        $('[aria-labelledby$=member-login-dialog]').find(":button:contains('Submit')").click();
            else if ($('#refer-a-friend-dialog').dialog('isOpen'))
                        $('[aria-labelledby$=refer-a-friend-dialog]').find(":button:contains('Submit')").click();
            else if ($('#quick-contact-dialog').dialog('isOpen'))
                        $('[aria-labelledby$=quick-contact-dialog]').find(":button:contains('Submit')").click();
            else if ($('#news-letter-dialog').dialog('isOpen'))
                        $('[aria-labelledby$=news-letter-dialog]').find(":button:contains('Submit')").click();
            return false;

        }
    });




    // on load
    //_________________________________________________________________
    $('.scroll-pane').jScrollPane();



    // onclick events
    //_________________________________________________________________

    /**
     * Client login onclick event
     *
     */
    $('.member-login').click(function(){

        $("#error-pane-login").empty();

        $("#email_address").val("");

        $("#password").val("");

        $('#member-login-dialog').dialog('open');

        return false;

    });


    /**
     * forgot password onclick event
     *
     */
    $('#forgot-password-link').click(function(){

        $("#error-pane-forgot").empty();

        $('#member-login-dialog').dialog("close");

        $("#email_address_forgot").val("");

        $('#forgot-password-dialog').dialog('open');

        return false;
        
    });


    /**
     * refer a friend onclick event
     *
     */
    $('.refer-a-friend').click(function(){

        $("#error-pane-refer").empty();

        $("#error-name").text("");
        $("#sender").val("");

        $("#error-email").text("");
        $("#sender_email").val("");

        $("#error-sendee").text("");
        $("#sendee").val("");

        $("#error-sendee-email").text("");
        $("#sendee_email").val("");

        $("#error-message").text("");
        $("#sender_message").val("");

        $('#refer-a-friend-dialog').dialog('open');

        return false;

    });


    /**
     * quick contact onclick event
     *
     */
    $('.email-us').click(function(){

        $("#error-pane-contact").empty();

        $("#error-name-contact").text("");
        $("#sender-contact").val("");

        $("#error-email-contact").text("");
        $("#sender_email_contact").val("");

        $("#error-subject-contact").text("");
        $("#subject_contact").val("");

        $("#error-message-contact").text("");
        $("#sender_message_contact").val("");

        $('#quick-contact-dialog').dialog('open');

        return false;
        
    });

    /**
     * newsletter onclick event
     *
     */
    $('.newsletter').click(function(){

        $("#error-pane-newsletter").empty();

        $("#email_address_newsletter").val("");

        $('#news-letter-dialog').dialog('open');

        return false;

    });



    // dialog boxes
    //_________________________________________________________________

    /**
     * Client login Dialog
     *
     */
    $('#member-login-dialog').dialog({
        autoOpen: false,
        width: 278,
        height: 270,
        modal: true,
        resizable: false,
        buttons: {

            "Submit": function() {

                $("#error-pane-login").empty();

                $("#error-pane-login").append('<img src="'+baseUrl+'image/loading.gif" style="display:block; margin:0 auto;"/> ');

                if ($("#email_address").val()) {
                    var emailValue  = $("#email_address").val();
                }  else {
                    var emailValue  = '';
                }

                if($("#password").val()) {
                    var passwordValue   = $("#password").val();
                } else {
                    var passwordValue   = '';
                }

                $.post( baseUrl + "main/login", {

                    email_address : emailValue,
                    password : passwordValue

                },
                    function(data){

                        if(data) {
                        
                        	if (data == 'redirect') {

                            	window.location=baseUrl + "main/step2";
                            
	                    	} else {
	                    		$("#error-pane-login").empty();

	                            $("#error-clone-message").text(data);
	
	                            $("#error-pane-login").append($("#error-clone").clone(true).show().attr("id","error-message-set"));
	
	                            $('#error-message-set').delay(4000).fadeOut('slow');
	                    	}

                        } else {

                            window.location=baseUrl + "client";

                        }

                    }

                    );


                }/*,
            "Close": function() {
                $(this).dialog("close");
            }*/
        }
    });



    /**
     * Forgot Password Dialog
     *
     */
    $('#forgot-password-dialog').dialog({
            autoOpen: false,
            width: 278,
            height: 190,
            modal: true,
            resizable: false,
            buttons: {
                    "Submit": function() {

            $("#error-pane-forgot").empty();

            $("#error-pane-forgot").append('<img src="'+baseUrl+'image/sending.gif" style="display:block; margin:0 auto;"/> ');

            if($("#email_address_forgot").val()) {
                var emailValue  = $("#email_address_forgot").val();
            }  else {
                var emailValue  = '';
            }



            $.post( baseUrl + "main/forgot", {

                        email_address : emailValue

                                            },
                                                    function(data){

                            if(data == "Your request has been sent. Please check your email.") {

                                $("#error-pane-forgot").empty();

                                $("#highlight-clone-message").text(data);

                                $("#error-pane-forgot").append($("#highlight-clone").clone(true).show().attr("id","error-message-set"));

                                $('#error-message-set').delay(4000).fadeOut('slow');

                            } else {

                                $("#error-pane-forgot").empty();

                                $("#error-clone-message").text(data);

                                $("#error-pane-forgot").append($("#error-clone").clone(true).show().attr("id","error-message-set"));

                                $('#error-message-set').delay(4000).fadeOut('slow');

                            }

                                                    }

                                            );


                    }/*,
                    "Close": function() {
                            $(this).dialog("close");
                    }*/
            }
    });


    /**
     * Refer a friend Dialog
     *
     */
    $('#refer-a-friend-dialog').dialog({
            autoOpen: false,
            width:348,
            height:450,
            modal: true,
            resizable: false,
            buttons: {
                    "Submit": function() {

            $("#error-pane-refer").empty();

            $("#error-pane-refer").append('<img src="'+baseUrl+'image/sending.gif" style="display:block; margin:0 auto;"/> ');

            $("#error-name").text("");
            $("#error-email").text("");
            $("#error-sendee").text("");
            $("#error-sendee-email").text("");
            $("#error-message").text("");

            $("#error-name").show();
            $("#error-email").show();
            $("#error-sendee").show();
            $("#error-sendee-email").show();
            $("#error-message").show();


            var errorFlag = '';


            if($("#sender").val()) {
                var sender = $("#sender").val();
            } else {
                var sender = '';
                $("#error-name").text("Please enter your name.");
                $('#error-name').delay(6000).fadeOut('slow');
                var errorFlag = 1;
            }

            if($("#sender_email").val()) {

                if(isEmail($("#sender_email").val())) {
                    var senderEmail = $("#sender_email").val();
                } else {
                     var senderEmail = '';
                    $("#error-email").text("Invalid Email address.");
                    $('#error-email').delay(6000).fadeOut('slow');
                    var errorFlag = 1;
                }

            } else {
                var senderEmail = '';
                $("#error-email").text("Please enter your email address.");
                $('#error-email').delay(6000).fadeOut('slow');
                var errorFlag = 1;
            }

            if($("#sendee").val()) {
                var sendee= $("#sendee").val();
            } else {
                var sendee = '';
                $("#error-sendee").text("Please enter your friend's name.");
                $('#error-sendee').delay(6000).fadeOut('slow');
                var errorFlag = 1;
            }

            if($("#sendee_email").val()) {

                if(isEmail($("#sendee_email").val())) {
                    var sendeeEmail = $("#sendee_email").val();
                } else {
                     var sendeeEmail = '';
                    $("#error-sendee-email").text("Invalid Email address.");
                    $('#error-sendee-email').delay(6000).fadeOut('slow');
                    var errorFlag = 1;
                }

            } else {
                var sendeeEmail = '';
                $("#error-sendee-email").text("Please enter your friend's email.");
                $('#error-sendee-email').delay(6000).fadeOut('slow');
                var errorFlag = 1;
            }

            if($("#sender_message").val()) {
                var senderMessage= $("#sender_message").val();
            } else {
                var senderMessage = '';
                $("#error-message").text("Please enter your message.");
                $('#error-message').delay(6000).fadeOut('slow');
                var errorFlag = 1;
            }



            if(errorFlag <= 0) {


                 $.post( baseUrl + "main/refer", {

                        sender: sender,
                        senderEmail: senderEmail,
                        sendee: sendee,
                        sendeeEmail: sendeeEmail,
                        senderMessage: senderMessage

                                            },
                                                    function(data){


                                $("#error-pane-refer").empty();

                                $("#highlight-clone-message").text(data);

                                $("#error-pane-refer").append($("#highlight-clone").clone(true).show().attr("id","error-message-set"));

                                $('#error-message-set').delay(4000).fadeOut('slow');

                                $("#sender").val("");

                                $("#sender_email").val("");

                                $("#sendee").val("");

                                $("#sendee_email").val("");

                                $("#sender_message").val("");


                                                    }

                                            );


            } else {
                $("#error-pane-refer").empty();
            }



                    }/*,
                    "Close": function() {
                            $(this).dialog("close");
                    }*/
            }
    });


    /**
     * Quick Contact Dialog
     *
     */
    $('#quick-contact-dialog').dialog({
        autoOpen: false,
        width:350,
        height:450,
        modal: true,
        resizable: false,
        buttons: {
                "Submit": function() {

        $("#error-pane-contact").empty();

         $("#error-pane-contact").append('<img src="'+baseUrl+'image/sending.gif" style="display:block; margin:0 auto;"/> ');

        $("#error-name-contact").text("");
        $("#error-email-contact").text("");
        $("#error-subject-contact").text("");
        $("#error-message-contact").text("");

        $("#error-name-contact").show();
        $("#error-email-contact").show();
        $("#error-subject-contact").show();
        $("#error-message-contact").show();


        var errorFlag = '';


        if($("#sender-contact").val()) {
            var sender = $("#sender-contact").val();
        } else {
            var sender = '';
            $("#error-name-contact").text("Please enter your name.");
            $('#error-name-contact').delay(6000).fadeOut('slow');
            var errorFlag = 1;
        }

        if($("#sender_email_contact").val()) {

            if(isEmail($("#sender_email_contact").val())) {
                var senderEmail = $("#sender_email_contact").val();
            } else {
                 var senderEmail = '';
                $("#error-email-contact").text("Invalid Email address.");
                $('#error-email-contact').delay(6000).fadeOut('slow');
                var errorFlag = 1;
            }

        } else {
            var senderEmail = '';
            $("#error-email-contact").text("Please enter your email address.");
            $('#error-email-contact').delay(6000).fadeOut('slow');
            var errorFlag = 1;
        }

        if($("#subject_contact").val()) {
            var subject= $("#subject_contact").val();
        } else {
            var subject = '';
            $("#error-subject-contact").text("Please enter a subject.");
            $('#error-subject-contact').delay(6000).fadeOut('slow');
            var errorFlag = 1;
        }


        if($("#sender_message_contact").val()) {
            var senderMessage= $("#sender_message_contact").val();
        } else {
            var senderMessage = '';
            $("#error-message-contact").text("Please enter your message.");
            $('#error-message-contact').delay(6000).fadeOut('slow');
            var errorFlag = 1;
        }



        if(errorFlag <= 0) {


             $.post( baseUrl + "main/quickContact", {

                    sender: sender,
                    senderEmail: senderEmail,
                    subject: subject,
                    senderMessage: senderMessage

                                        },
                                                function(data){


                            $("#error-pane-contact").empty();

                            $("#highlight-clone-message").text(data);

                            $("#error-pane-contact").append($("#highlight-clone").clone(true).show().attr("id","error-message-set"));

                            $('#error-message-set').delay(4000).fadeOut('slow');

                            $("#sender-contact").val("");

                            $("#sender_email_contact").val("");

                            $("#subject_contact").val("");

                            $("#sender_message_contact").val("");


                                                }

                                        );


        } else {
            $("#error-pane-contact").empty();
        }



                }/*,
                "Close": function() {
                        $(this).dialog("close");
                }*/
        }
    });


    /**
     * Newsletter Dialog
     *
     */
    $('#news-letter-dialog').dialog({
            autoOpen: false,
            width: 278,
            height: 190,
            modal: true,
            resizable: false,
            buttons: {
                    "Submit": function() {

            $("#error-pane-newsletter").empty();

            $("#error-pane-newsletter").append('<img src="'+baseUrl+'image/sending.gif" style="display:block; margin:0 auto;"/> ');

            if($("#email_address_newsletter").val()) {
                var emailValue  = $("#email_address_newsletter").val();
            }  else {
                var emailValue  = '';
            }



            $.post( baseUrl + "main/newsletter", {

                        email_address : emailValue

                                            },
                                                    function(data){

                            if(data == "Email saved.") {

                                $("#error-pane-newsletter").empty();

                                $("#highlight-clone-message").text(data);

                                $("#error-pane-newsletter").append($("#highlight-clone").clone(true).show().attr("id","error-message-set"));

                                $('#newsletter-registration').val("");

                                $('#error-message-set').delay(4000).fadeOut('slow');

                            } else {

                                $("#error-pane-newsletter").empty();

                                $("#error-clone-message").text(data);

                                $("#error-pane-newsletter").append($("#error-clone").clone(true).show().attr("id","error-message-set"));

                                $('#error-message-set').delay(4000).fadeOut('slow');

                            }

                                                    }

                                            );


                    }/*,
                    "Close": function() {
                            $(this).dialog("close");
                    }*/
            }
    });

$('#dialog-delete-participant').dialog({
        autoOpen: false,
        width: 272,
        height: 170,
        modal: true,
        resizable: false,
        buttons: {

            "Delete": function() {
				
            	$("#error-pane-delete").empty();

                $.post( baseUrl + "client/deletebridalparty", {
					id : $("#idValue").val()
                },
                    function(data){

                        if(data) {

                        		
								$("#error-pane-delete").empty();

	                            $("#error-clone-message").text(data);

	                            $("#error-pane-delete").append($("#error-clone").clone(true).show().attr("id","error-message-set"));

	                            $('#error-message-set').delay(4000).fadeOut('slow');
                                    //window.location=baseUrl + "client/bridalparty#tabs-2";

	             

                        } else {

                            window.location=baseUrl + "client/redirect/bridalparty#tabs-2";

                        }

                    }

                    );


                },
            "Cancel": function() {
                $(this).dialog("close");
            }
        }
    });


    $('#dialog-delete-guest').dialog({
        autoOpen: false,
        width: 272,
        height: 170,
        modal: true,
        resizable: false,
        buttons: {

            "Delete": function() {

            	$("#error-pane-delete").empty();

                $.post( baseUrl + "client/deleteguest", {
					id : $("#idValue").val()
                },
                    function(data){

                        if(data) {


                                    $("#error-pane-delete").empty();

	                            $("#error-clone-message").text(data);

	                            $("#error-pane-delete").append($("#error-clone").clone(true).show().attr("id","error-message-set"));

	                            $('#error-message-set').delay(4000).fadeOut('slow');
                                    //window.location=baseUrl + "client/bridalparty#tabs-2";



                        } else {

                            window.location=baseUrl + "client/redirect/guestlist#tabs-2";

                        }

                    }

                    );


                },
            "Cancel": function() {
                $(this).dialog("close");
            }
        }
    });




    $('#dialog-delete-gallery').dialog({
        autoOpen: false,
        width: 272,
        height: 170,
        modal: true,
        resizable: false,
        buttons: {

            "Delete": function() {

            	$("#error-pane-delete").empty();

                $.post( baseUrl + "client/deletegallery", {
					id : $("#idValue").val(),
                                        type: $("#typeValue").val()
                },
                    function(data){

                        if(data) {


                                    $("#error-pane-delete").empty();

	                            $("#error-clone-message").text(data);

	                            $("#error-pane-delete").append($("#error-clone").clone(true).show().attr("id","error-message-set"));

	                            $('#error-message-set').delay(4000).fadeOut('slow');
                                    //window.location=baseUrl + "client/bridalparty#tabs-2";



                        } else {

                            window.location=baseUrl + "client/redirect/gallery";

                        }

                    }

                    );


                },
            "Cancel": function() {
                $(this).dialog("close");
            }
        }
    });


    $('#dialog-delete-comment').dialog({
        autoOpen: false,
        width: 272,
        height: 170,
        modal: true,
        resizable: false,
        buttons: {

            "Delete": function() {

            	$("#error-pane-delete").empty();

                $.post( baseUrl + "client/deletecomment", {
					id : $("#idValue").val()
                                       
                },
                    function(data){

                        if(data) {


                                    $("#error-pane-delete").empty();

	                            $("#error-clone-message").text(data);

	                            $("#error-pane-delete").append($("#error-clone").clone(true).show().attr("id","error-message-set"));

	                            $('#error-message-set').delay(4000).fadeOut('slow');
                                    //window.location=baseUrl + "client/bridalparty#tabs-2";



                        } else {

                            window.location=baseUrl + "preview/thankyou/";

                        }

                    }

                    );


                },
            "Cancel": function() {
                $(this).dialog("close");
            }
        }
    });

    // Funtions
    //_____________________________________________________________________________________________

    function isEmail(string) {
        if (string.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
            return true;
        else
            return false;
    }





});


