jQuery(function($) {
    $(document).ready(function(){
        var name = "Nachname";
        var vorname = "Vorname";
        var email = "E-Mail";
        var telefon = "Handy-Nr.";

        var suche_text = 'z.B. Künstlername, Event';
        var suche_start_date = new Date();
        suche_start_date = suche_start_date.getDate() + "." + (suche_start_date.getMonth()+1) + "." + suche_start_date.getFullYear();
        var suche_end_date = new Date();
        suche_end_date = suche_end_date.getDate()+'.'+ (suche_end_date.getMonth()+1) + '.' + (suche_end_date.getFullYear()+1);

        var user = "Benutzername";
        var pass = "Kennwort";

        auto_fill($("#name"), name);
        auto_fill($("#vorname"), vorname);
        auto_fill($("#email"), email);
        auto_fill($("#telefon"), telefon);

        auto_fill($(".searchbox-sword"), suche_text);
        auto_fill($(".searchbox-dfrom"), suche_start_date);
        auto_fill($(".searchbox-dto"), suche_end_date);

        auto_fill($("#user"), user);
        auto_fill($("#pass"), pass);

        /* LOGIN */
        var user = "Benutzername";
        var pass = "Passwort";

        auto_fill($('#user'), user);
        auto_fill($('#pass'), pass);

        function auto_fill(id, v){
            fill_empty(id, v);
            set_default(id, v);

            $(id).focus(function(){
                if($(this).val()==v){
                    $(this).val("").css({
                        color: "#333"
                    });
                }
            }).blur(function(){
                fill_empty(id,v);
            });

        }
        function set_default(id, v){
            if($(id).val() == v) {
                switch ($(id).attr('id')) {
                    case "name":
                        $(id).css({
                            color: "#c4c2c1"
                        });
                        break;
                    case "vorname":
                        $(id).css({
                            color: "#c4c2c1"
                        });
                        break;
                    case "email":
                        $(id).css({
                            color: "#c4c2c1"
                        });
                        break;
                    case "telefon":
                        $(id).css({
                            color: "#c4c2c1"
                        });
                        break;
                    default:
                        $(id).css({
                            color: "#b2adad"
                        });
                        break;
                }
            }
        }
        function fill_empty(id,v){
            if($(id).val()==""){
                //$(id).css({ color: "#b2adad" }).val(v);
                // Pflichtfelder
                switch ($(id).attr('id')) {
                    case "name":
                        $(id).css({
                            color: "#c4c2c1"
                        }).val(v);
                        break;
                    case "vorname":
                        $(id).css({
                            color: "#c4c2c1"
                        }).val(v);
                        break;
                    case "email":
                        $(id).css({
                            color: "#c4c2c1"
                        }).val(v);
                        break;
                    case "telefon":
                        $(id).css({
                            color: "#c4c2c1"
                        }).val(v);
                        break;
                    default:
                        $(id).css({
                            color: "#b2adad"
                        }).val(v);
                        break;
                }

            }

        }
        
        
        
        
        
        /*  Live E-Mail validation
         *
         *
         **/
        // clear server errors
        $("#name").keyup(function(){
            $("input#name").next('.error').remove();
        });
        $("#vorname").keyup(function(){
            $("input#vorname").next('.error').remove();
        });
        $("#email").keyup(function(){
            $("input#email").next('.error').remove();
        });
        $("#telefon").keyup(function(){
            $("input#telefon").next('.error').remove();
        });
        /* function valid_email
         *
         **/
        function valid_email(email_address) {
            var pattern = new RegExp(/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i);
            return pattern.test(email_address);
        }
        /*
         *  function valid_phone
         *
         */
        function valid_phone(phone) {
            var pattern = new RegExp(/^\d{7,}$/);
            return pattern.test(phone.replace(/[\s()+\-\.]|ext/gi, ''));
        }
        /*  function check_email(id)
         *  id = $(email).val()
         *  delayed validyes / validno img
         *  if email ok -> set check contact per email
         **/
        function check_email(id){
            var error = $("#email");
            error.css({
                "background-image": "url('fileadmin/scripts/ajax-loader.gif')"
            });
            
            var delayed;
            clearTimeout(delayed);
            delayed = setTimeout(function() {
                if(id != 0){
                    if(valid_email(id)){
                        error.css({
                            "background-image": "url('fileadmin/scripts/validyes.png')"
                        });
                        $("#per_email").attr('checked', true);
                    } else {
                        error.css({
                            "background-image": "url('fileadmin/scripts/validno.gif')"
                        });
                    }
                } else {
                    error.css({
                        "background-image": "none"
                    });
                }
            }, 800);
        }
        /**
         *  function check_telefon
         *
         */
        function check_phone(id){
            var error = $("#telefon");
            error.css({
                "background-image": "url('fileadmin/scripts/ajax-loader.gif')"
            });

            var delayed;
            clearTimeout(delayed);
            delayed = setTimeout(function() {
                if(id != 0){
                    if(valid_phone(id)){
                        error.css({
                            "background-image": "url('fileadmin/scripts/validyes.png')"
                        });
                        $("#per_telefon").attr('checked', true);
                    } else {
                        error.css({
                            "background-image": "url('fileadmin/scripts/validno.gif')"
                        });
                    }
                } else {
                    error.css({
                        "background-image": "none"
                    });
                }
            }, 1200);
        }
        /*
         *  Event
         *  - clear server error
         *  - show error image
         **/
        $("#email").bind("keyup blur keydown", function(){
            var email = $("#email").val();
            $("#email").next('.error').remove();
            check_email(email);
        });

        /*
         *  Event
         *  - clear server error
         *  - show error image
         **/
        $("#telefon").bind("keyup blur keydown", function(){
            var telefon = $("#telefon").val();
            $("#telefon").next('.error').remove();
            check_phone(telefon);
        });



        

    });
});
