Subversion-Projekte lars-tiefland.cienc

Revision

Details | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
9 lars 1
var Login = function () {
2
 
3
	var handleLogin = function() {
4
		$('.login-form').validate({
5
	            errorElement: 'span', //default input error message container
6
	            errorClass: 'help-block', // default input error message class
7
	            focusInvalid: false, // do not focus the last invalid input
8
	            rules: {
9
	                username: {
10
	                    required: true
11
	                },
12
	                password: {
13
	                    required: true
14
	                },
15
	                remember: {
16
	                    required: false
17
	                }
18
	            },
19
 
20
	            messages: {
21
	                username: {
22
	                    required: "Username is required."
23
	                },
24
	                password: {
25
	                    required: "Password is required."
26
	                }
27
	            },
28
 
29
	            invalidHandler: function (event, validator) { //display error alert on form submit
30
	                $('.alert-danger', $('.login-form')).show();
31
	            },
32
 
33
	            highlight: function (element) { // hightlight error inputs
34
	                $(element)
35
	                    .closest('.form-group').addClass('has-error'); // set error class to the control group
36
	            },
37
 
38
	            success: function (label) {
39
	                label.closest('.form-group').removeClass('has-error');
40
	                label.remove();
41
	            },
42
 
43
	            errorPlacement: function (error, element) {
44
	                error.insertAfter(element.closest('.input-icon'));
45
	            },
46
 
47
	            submitHandler: function (form) {
48
	                form.submit();
49
	            }
50
	        });
51
 
52
	        $('.login-form input').keypress(function (e) {
53
	            if (e.which == 13) {
54
	                if ($('.login-form').validate().form()) {
55
	                    $('.login-form').submit();
56
	                }
57
	                return false;
58
	            }
59
	        });
60
	}
61
 
62
	var handleForgetPassword = function () {
63
		$('.forget-form').validate({
64
	            errorElement: 'span', //default input error message container
65
	            errorClass: 'help-block', // default input error message class
66
	            focusInvalid: false, // do not focus the last invalid input
67
	            ignore: "",
68
	            rules: {
69
	                email: {
70
	                    required: true,
71
	                    email: true
72
	                }
73
	            },
74
 
75
	            messages: {
76
	                email: {
77
	                    required: "Email is required."
78
	                }
79
	            },
80
 
81
	            invalidHandler: function (event, validator) { //display error alert on form submit
82
 
83
	            },
84
 
85
	            highlight: function (element) { // hightlight error inputs
86
	                $(element)
87
	                    .closest('.form-group').addClass('has-error'); // set error class to the control group
88
	            },
89
 
90
	            success: function (label) {
91
	                label.closest('.form-group').removeClass('has-error');
92
	                label.remove();
93
	            },
94
 
95
	            errorPlacement: function (error, element) {
96
	                error.insertAfter(element.closest('.input-icon'));
97
	            },
98
 
99
	            submitHandler: function (form) {
100
	                form.submit();
101
	            }
102
	        });
103
 
104
	        $('.forget-form input').keypress(function (e) {
105
	            if (e.which == 13) {
106
	                if ($('.forget-form').validate().form()) {
107
	                    $('.forget-form').submit();
108
	                }
109
	                return false;
110
	            }
111
	        });
112
 
113
	        jQuery('#forget-password').click(function () {
114
	            jQuery('.login-form').hide();
115
	            jQuery('.forget-form').show();
116
	        });
117
 
118
	        jQuery('#back-btn').click(function () {
119
	            jQuery('.login-form').show();
120
	            jQuery('.forget-form').hide();
121
	        });
122
 
123
	}
124
 
125
	var handleRegister = function () {
126
 
127
		        function format(state) {
128
            if (!state.id) { return state.text; }
129
            var $state = $(
130
             '<span><img src="../assets/global/img/flags/' + state.element.value.toLowerCase() + '.png" class="img-flag" /> ' + state.text + '</span>'
131
            );
132
 
133
            return $state;
134
        }
135
 
136
        if (jQuery().select2 && $('#country_list').size() > 0) {
137
            $("#country_list").select2({
138
	            placeholder: '<i class="fa fa-map-marker"></i>&nbsp;Select a Country',
139
	            templateResult: format,
140
                templateSelection: format,
141
                width: 'auto',
142
	            escapeMarkup: function(m) {
143
	                return m;
144
	            }
145
	        });
146
 
147
 
148
	        $('#country_list').change(function() {
149
	            $('.register-form').validate().element($(this)); //revalidate the chosen dropdown value and show error or success message for the input
150
	        });
151
    	}
152
 
153
 
154
         $('.register-form').validate({
155
	            errorElement: 'span', //default input error message container
156
	            errorClass: 'help-block', // default input error message class
157
	            focusInvalid: false, // do not focus the last invalid input
158
	            ignore: "",
159
	            rules: {
160
 
161
	                fullname: {
162
	                    required: true
163
	                },
164
	                email: {
165
	                    required: true,
166
	                    email: true
167
	                },
168
	                address: {
169
	                    required: true
170
	                },
171
	                city: {
172
	                    required: true
173
	                },
174
	                country: {
175
	                    required: true
176
	                },
177
 
178
	                username: {
179
	                    required: true
180
	                },
181
	                password: {
182
	                    required: true
183
	                },
184
	                rpassword: {
185
	                    equalTo: "#register_password"
186
	                },
187
 
188
	                tnc: {
189
	                    required: true
190
	                }
191
	            },
192
 
193
	            messages: { // custom messages for radio buttons and checkboxes
194
	                tnc: {
195
	                    required: "Please accept TNC first."
196
	                }
197
	            },
198
 
199
	            invalidHandler: function (event, validator) { //display error alert on form submit
200
 
201
	            },
202
 
203
	            highlight: function (element) { // hightlight error inputs
204
	                $(element)
205
	                    .closest('.form-group').addClass('has-error'); // set error class to the control group
206
	            },
207
 
208
	            success: function (label) {
209
	                label.closest('.form-group').removeClass('has-error');
210
	                label.remove();
211
	            },
212
 
213
	            errorPlacement: function (error, element) {
214
	                if (element.attr("name") == "tnc") { // insert checkbox errors after the container
215
	                    error.insertAfter($('#register_tnc_error'));
216
	                } else if (element.closest('.input-icon').size() === 1) {
217
	                    error.insertAfter(element.closest('.input-icon'));
218
	                } else {
219
	                	error.insertAfter(element);
220
	                }
221
	            },
222
 
223
	            submitHandler: function (form) {
224
	                form.submit();
225
	            }
226
	        });
227
 
228
			$('.register-form input').keypress(function (e) {
229
	            if (e.which == 13) {
230
	                if ($('.register-form').validate().form()) {
231
	                    $('.register-form').submit();
232
	                }
233
	                return false;
234
	            }
235
	        });
236
 
237
	        jQuery('#register-btn').click(function () {
238
	            jQuery('.login-form').hide();
239
	            jQuery('.register-form').show();
240
	        });
241
 
242
	        jQuery('#register-back-btn').click(function () {
243
	            jQuery('.login-form').show();
244
	            jQuery('.register-form').hide();
245
	        });
246
	}
247
 
248
    return {
249
        //main function to initiate the module
250
        init: function () {
251
 
252
            handleLogin();
253
            handleForgetPassword();
254
            handleRegister();
255
 
256
            // init background slide images
257
		    $.backstretch([
258
		        "../assets/pages/media/bg/1.jpg",
259
		        "../assets/pages/media/bg/2.jpg",
260
		        "../assets/pages/media/bg/3.jpg",
261
		        "../assets/pages/media/bg/4.jpg"
262
		        ], {
263
		          fade: 1000,
264
		          duration: 8000
265
		    	}
266
        	);
267
        }
268
    };
269
 
270
}();
271
 
272
jQuery(document).ready(function() {
273
    Login.init();
274
});