PageSourceSearch

https://www.jogossantacasa.pt/html/scripts/30/add-ins/jsc_user_password_30.js

js jogossantacasa.pt collected 2026-09-24 09:04:48 UTC 7,324 bytes, 272 lines download raw bytes

1if (!View) var View = {};
2
3View.messages = {
4		'error_empty_user': 'O campo Utilizador é de preenchimento obrigatório.',
5		'error_user_length': 'O utilizador tem de ter entre 6 e 15 caracteres/números.',
6		'error_user_invalid_char': 'O campo Utilizador não pode conter o caráter {1}.',
7		'user_already_exists': 'O utilizador que escolheu já existe. Por favor escolha outro utilizador.',
8		'user_valid': 'Utilizador válido. Prossiga com o processo de registo.',
9		'error_password_fields': 'Todos os campos relativos à Password devem ser preenchidos.',
10		'error_password_conf_not_equal': 'Os campos relativos à nova Password e Confirmação de Password devem ser iguais.',
11		'error_password_invalid_char': 'O campo Password não pode utilizar o caráter {1}.',
12		'error_password_conf_invalid_char': 'O campo Confirmação de Password não pode utilizar o caráter {1}.',
13		'error_password_old_invalid_char': 'O campo Password Atual não pode utilizar o caráter {1}.',
14		'error_password_old_length': 'O campo Password Atual deverá ter entre 8 e 15 caracteres.',
15		'error_password_new_length': 'O campo Nova Password deverá ter entre 8 e 15 caracteres.',
16		'error_password_conf_length': 'O campo Confirmar Password deverá ter entre 8 e 15 caracteres.'
17};
18
19View.start = function(){
20	$('input[name="verifyDisponibility"]').bind('click' , function () {
21		Board.verifyDisponibility();
22	});		
23	
24	$('input[name="gravarLogin"]').bind('click' , function () {
25		Board.submitLogin();
26	});	
27	
28	$('input[name="gravarPassword"]').bind('click' , function () {
29		Board.submitPassword();
30	});
31};
32
33View.messageUser = function (error) {
34	var message = View.messages[error] || false;
35	if (!message) {
36		var split = error.split('|');
37		message = View.messages[split[0]] || error;
38		var i = 1;
39		while (i < split.length) {
40			message = message.replace('{' + i + '}', split[i]);
41			if (message.indexOf('{'+ i +'}') < 0) i++;
42		}
43	}
44	
45	$(".errorUser").html(message);
46};
47
48View.message = function (error) {
49	var message = View.messages[error] || false;
50	if (!message) {
51		var split = error.split('|');
52		message = View.messages[split[0]] || error;
53		var i = 1;
54		while (i < split.length) {
55			message = message.replace('{' + i + '}', split[i]);
56			if (message.indexOf('{'+ i +'}') < 0) i++;
57		}
58	}
59	
60	$(".errorMsg").html(message);
61};
62
63View.messagePassword = function (error) {
64	var message = View.messages[error] || false;
65	if (!message) {
66		var split = error.split('|');
67		message = View.messages[split[0]] || error;
68		var i = 1;
69		while (i < split.length) {
70			message = message.replace('{' + i + '}', split[i]);
71			if (message.indexOf('{'+ i +'}') < 0) i++;
72		}
73	}
74	
75	$(".errorPassword").html(message);
76};
77
78View.messageUserValidation = function (validate) {
79	var message;
80	var sColor;
81	
82	if(validate == "1"){
83		message = View.messages['user_already_exists'] || false;	
84		sColor = "#F04E23";
85	}else{
86		message = View.messages['user_valid'] || false;
87		sColor = "#737373";
88	}		
89		
90	if (!message) {
91		var split = error.split('|');
92		message = View.messages[split[0]] || error;
93		var i = 1;
94		while (i < split.length) {
95			message = message.replace('{' + i + '}', split[i]);
96			if (message.indexOf('{'+ i +'}') < 0) i++;
97		}
98	}	
99	
100	document.getElementById("divServerMsg").style.color = sColor
101	document.getElementById("divServerMsg").innerHTML = message;
102};
103
104if (!Board) var Board = {};
105
106Board.verifyDisponibility = function(){
107	var inputField = $('input[name="user"]');
108	
109	Board.validateChangeLogin();
110	
111	if (Board.error) {
112		View.messageUser(Board.error);
113		delete Board.error;
114	}else{
115		Board.spinner.spin($('.loading')[0]);
116		$.ajax({
117			type: "GET",
118			cache: false,
119		    url: Board.contextPath + "/web/ContaUserPassword/validateUserExists",
120		    data: { sLogin: inputField.val() },
121		    success: function(data) {
122		    	if($.isXMLDoc(data)){
123		    		Board.parseValidate(data);
124		    	} else {
125		    		//Received the login.jsp which means that the session expired
126		    		window.location.replace(Board.contextPath + "/web/ContaUserPassword/");
127		    	}
128		    	Board.spinner.stop($('.loading')[0]);
129		    },
130		    error: function () {
131		    	Board.spinner.stop($('.loading')[0]);
132		    }
133		 })		
134	}			
135};
136
137Board.parseValidate = function(responseXML){
138	var sValidate = "1";		
139	var validatePromoteXML = responseXML.getElementsByTagName("validation")[0];	
140	if(validatePromoteXML != null){			
141		var validateXML = validatePromoteXML.childNodes[0];
142		var sValue = validateXML.getElementsByTagName("value")[0];				
143		sValidate = sValue.childNodes[0].nodeValue;																
144	}else{
145		sValidate = "1"
146	}
147	
148	View.messageUserValidation(sValidate);	
149}; 
150
151Board.validateChangeLogin = function(){
152	var inputField = $('input[name="user"]');
153	
154	if(inputField.val() == ""){
155		Board.error = 'error_empty_user';
156	}else if (inputField.val().length < 6){
157		Board.error = 'error_user_length';
158	}else{
159		var invalidChar = Board.validateChars(inputField.val());
160		if (invalidChar != ""){
161			Board.error = 'error_user_invalid_char|' + invalidChar;
162		}				
163	}		
164};
165
166Board.validateOldPassword = function(){
167	var elOldPass 	= $('input[name="currentPass"]').val();	
168	
169	if(elOldPass == ""){
170		Board.error = 'error_password_fields';
171		return;
172	}
173	
174	var invalidChar = Board.validateChars(elOldPass);
175	if (invalidChar != ""){
176		Board.error = 'error_password_old_invalid_char|' + invalidChar;
177	    return;
178	}
179	
180	if ( elOldPass.length < 8 || elOldPass.length > 15 ) {
181		Board.error = 'error_password_old_length';
182		return;
183	}	
184};
185
186Board.validateChangePassword = function(){	
187	var elNewPass 	= $('input[name="newPass"]').val();
188	var elConfPass 	= $('input[name="confPass"]').val();	
189	var elHNewPass 	= $('input[name="hnewPass"]').val();
190	var elHConfPass	= $('input[name="hconfPass"]').val();
191		
192	if(elNewPass == "" || elConfPass == ""){
193		Board.error = 'error_password_fields';
194		return;
195	}	
196	
197	var invalidChar = Board.validateChars(elNewPass);
198	if (invalidChar != ""){
199		Board.error = 'error_password_invalid_char|' + invalidChar;
200	    return;
201	}
202
203	invalidChar = Board.validateChars(elConfPass);
204	
205	if (invalidChar != ""){
206		Board.error = 'error_password_conf_invalid_char|' + invalidChar;
207	    return;
208	}		
209	
210	if ( elNewPass.length < 8 || elNewPass.length > 15 ) {
211		Board.error = 'error_password_new_length';
212		return;
213	}
214	
215	if ( elConfPass.length < 8 || elConfPass.length > 15 ) {
216		Board.error = 'error_password_conf_length';
217		return;
218	}
219	
220	if(elHNewPass != elHConfPass){
221		Board.error = 'error_password_conf_not_equal';
222		return;
223	}
224}
225
226
227Board.validateChars = function(str){
228	var sValidChars = new String("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_-!|.,+/*^#$%&()=?`^@{[]}");
229
230	for (var i = 0; i < str.length; i++){
231		if (sValidChars.indexOf(str.charAt(i)) == -1)
232			return str.charAt(i);
233	}
234	
235	return "";
236};
237
238Board.submitPassword = function(){
239	var _form = $("#frmChangePass");
240	
241	Board.validateOldPassword();
242	
243	if (!Board.error) {
244		Board.validateChangePassword();
245	}			
246	
247	if (Board.error) {
248		View.messagePassword(Board.error);
249		delete Board.error;
250		return false;
251	}
252	
253	_form.submit(); 
254};
255
256Board.submitLogin = function(){
257	var _form = $("#frmChangeLogin");
258		
259	Board.validateChangeLogin();
260	
261	if (Board.error) {
262		View.messageUser(Board.error);
263		delete Board.error;
264		return false;
265	}
266	
267	_form.submit(); 
268};
269
270Board.run = function(){	
271	View.start();	
272};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.