﻿$(document).ready(function() {
jQuery.extend($.xs.help, {
    requestPassword: function() {
        $('#PasswordForm').validate({
            submitHandler: function(form) {
                if ($.xs.isDisabled($('#Save'))) return false;
                
                $('#Save').attr('disabled',true);
                var strPostData = $("#PasswordForm").serialize();
                
                $.ajax({
                    type: 'POST',
                    url: '/xseno/_site/pages/help/_post.aspx?id=1',
                    data: strPostData,
                    success: function(data) {
                        $('#Save').attr('disabled',false);
                        
                        var intResponseId = parseFloat(data);
                        if (isNaN(intResponseId)) { alert('Het verwerken is niet gelukt, probeer het nogmaals (fout: '+data+').'); }
                        else if (intResponseId < 0) {
                            switch(intResponseId) {
                                case -1: alert('Fout bij het verzenden van de gegevens.'); break;
                                case -2: alert('Deze nickname of dit e-mail adres is niet bij ons geregistreerd.'); break;
                                default: alert('Het verwerken is niet gelukt, probeer het nogmaals (fout: '+data+').'); break;
                            }
                        }
                        
                        else {
                           alert('Er is een e-mail gestuurd. Deze bevat instructies om in te loggen.\nLet op: het kan enkele seconden duren voordat je de e-mail ontvangt.\nOntvang je geen e-mail van ons? Check je ongewenste post of neem contact op met ons.');
                        }
                    }
                });
            },

            focusInvalid: true,
            rules: {
                UserName: { required:true, maxlength:100 }
            }
        });
    },
    resetPassword: function() {
        $('#PasswordForm').validate({
            submitHandler: function(form) {
                if ($.xs.isDisabled($('#Save'))) return false;
                
                $('#Save').attr('disabled',true);
                var strPostData = $("#PasswordForm").serialize();
                
                $.ajax({
                    type: 'POST',
                    url: '/xseno/_site/pages/help/_post.aspx?id=2',
                    data: strPostData,
                    success: function(data) {
                        $('#Save').attr('disabled',false);
                        if (!$.xs.error.checker(parseFloat(data))) { return false; }
                        alert('Je wachtwoord is veranderd. Let op: je kunt nu alleen nog met dit wachtwoord inloggen.', null);
                        $.xs.redirect('/home/');
                    }
                });
            },
            focusInvalid: true,
            rules: {
                Password: { validChars:true },
                PasswordCheck: { required:true, minlength:4, maxlength:20, equalTo:'#Password' }
            },
            messages: {
                Password: { validChars:'<div class="b_misc_error">De volgende karakters zijn niet toegestaan:<br />!@#$%^&*()+=-\\[]\';,./{}|\":<>?._ en spaties</div>' },
	            PasswordCheck: '<div class="b_misc_error">Dit wachtwoord is onjuist.</div>'
            }
        });
    },
    contact: function() {
        $('#ContactForm').validate({
            submitHandler: function(form) {
                if ($.xs.isDisabled($('#Save'))) return false;
                
                $('#Save').attr('disabled',true);
                var strPostData = $("#ContactForm").serialize();
                
                $.ajax({
                    type: 'POST',
                    url: '/xseno/_site/pages/help/_post.aspx?id=3',
                    data: strPostData,
                    success: function(data) {
                        if (!$.xs.error.checker(parseFloat(data))) { $('#Save').attr('disabled',false); return false; }
                        alert('Je bericht is verzonden.', null);
                    }
                });
            },
            focusInvalid: true,
            rules: {
                Name: { required:true, minlength:2, maxlength:50 },
                Email: { required:true, email:true, maxlength:210 },
                Category: { required:true },
                Message: { required:true, maxlength:2000 }
            },
            messages: {
                Name: {
		            required: '<div class="b_misc_error">Een volledige voornaam of bedrijfsnaam is verplicht.</div>',
		            minlength: '<div class="b_misc_error">Een volledige voornaam of bedrijfsnaam is verplicht.</div>'
		        },
		        Email: {
		            required:'<div class="b_misc_error">Een juist e-mail adres is verplicht.</div>',
		            email:'<div class="b_misc_error">Dit is een ongeldig e-mail adres.</div>'
                },
                Category:'<div class="b_misc_error">Kies een categorie.</div>',
                Message: {
		            required: '<div class="b_misc_error">Type een bericht.</div>',
		            maxlength: '<div class="b_misc_error">Het bericht mag maximaal 500 karakters lang zijn.</div>'
		        }
            }
        });
    }
});
});