PageSourceSearch

https://dfe.eprviamineira.com.br/content/js/angular/controllers/loginController.js

js eprviamineira.com.br collected 2026-10-02 18:16:10 UTC 3,080 bytes, 119 lines download raw bytes

1(function (window, angular) {
2	'use strict';
3
4	angular
5		.module('RFPe')
6		.controller('loginController', LoginController);
7
8	LoginController.$inject = ['$scope', 'userService', 'dialogService', 'loginService', '$interval', '$sce'];
9
10	function LoginController($scope, userService, dialogService, loginService, $interval, $sce) {
11
12		$scope.settings = {};
13
14		$scope.form = {
15			username: '',
16			password: ''
17		};
18
19		$scope.reCaptcha = {
20			valid: false,
21			response: ''
22		};
23
24		function getSettings() {
25			loginService.getSettings()
26				.success(function (data, status, headers) {
27					for (var p in data.login) {
28						if (typeof data.login[p] === 'string') {
29							data.login[p] = $sce.trustAsHtml(data.login[p]);
30						}
31					}
32
33					for (var p in data.general) {
34						if (typeof data.general[p] === 'string') {
35							data.general[p] = $sce.trustAsHtml(data.general[p]);
36						}
37					}
38
39					$scope.settings = data.login;
40					$scope.general = data.general;
41
42					if (data.general.enableReCaptcha) {
43						grecaptcha.ready(() => {
44							grecaptcha.render('captchaContainer', {
45								'sitekey': data.general.reCaptchaSiteKey,
46								'callback': onReCaptchaCallback,
47								'expired-callback': onReCaptchaExpiredCallback,
48								'error-callback': onReCaptchaErrorCallback
49							});
50						});
51					}
52				});
53		};
54
55		function onReCaptchaCallback(response) {
56			$scope.reCaptcha.valid = true;
57			$scope.reCaptcha.response = response;
58			$scope.$apply()
59		}
60
61		function onReCaptchaExpiredCallback() {
62			$scope.reCaptcha.valid = false;
63			$scope.reCaptcha.response = '';
64			$scope.$apply()
65		}
66
67		function onReCaptchaErrorCallback(response) {
68			$scope.reCaptcha.valid = false;
69			$scope.reCaptcha.response = '';
70			$scope.$apply()
71		}
72
73		function doLogin() {
74
75			var token = '';
76
77			loginService.doLogin($scope.form)
78				.success(function (data, status, headers, config) {
79					console.log(data);
80					token = headers('x-auth-token');
81					loginService.registerToken(token);
82					sessionStorage.token = token;
83					sessionStorage.userId = data.body.id;
84					sessionStorage.email = data.body.email;
85					sessionStorage.nome = data.body.nome;
86					sessionStorage.tipoPessoa = data.body.tipoPessoa;
87					sessionStorage.cpf = data.body.cpf;
88					sessionStorage.cnpj = data.body.cnpj;
89					sessionStorage.ddd = data.body.ddd;
90					sessionStorage.telefone = data.body.telefone;
91
92					$scope.redirectToIndex();
93
94				}).error(function (data, status, headers, config) {
95					dialogService.error((data && data.errorMessage ? data.errorMessage : status < 500 ? 'Usuário ou Senha inválidos' : 'Sua solicitação não foi processada. Tente mais tarde!'));
96				});
97		};
98
99		$scope.redirectToIndex = function () {
100			document.location.href = 'index.html';
101		}
102
103		$scope.clickEntrar = function () {
104			doLogin();
105		}
106
107		$scope.clickclickRedirecionarLogin = function () {
108			document.location.href = 'login.html';
109		}
110
111		if (sessionStorage.token) {
112			loginService.registerToken(sessionStorage.token);
113			$scope.redirectToIndex();
114		}
115		else {
116			getSettings();
117		}
118	};
119})(window, angular);

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.