Commit e6c71e98dd1f39305989534c390576c1f696a18f

Authored by erick.sato
1 parent 1eecaa5c
Exists in master

[Redmine #5011]Confirma se deseja fechar aba

cit-portal-web/src/main/java/br/com/centralit/listener/StartupListener.java
@@ -808,6 +808,7 @@ public class StartupListener extends UtilStartup implements ApplicationListener< @@ -808,6 +808,7 @@ public class StartupListener extends UtilStartup implements ApplicationListener<
808 parametros.add(new ConfiguracaoParametroSistema("TERMO_ENCERRAMENTO_INTRODUCAO", INTRODUCAO, configuracao, true)); 808 parametros.add(new ConfiguracaoParametroSistema("TERMO_ENCERRAMENTO_INTRODUCAO", INTRODUCAO, configuracao, true));
809 parametros.add(new ConfiguracaoParametroSistema("TERMO_ENCERRAMENTO_ENCAMINHAMENTOS", ENCAMINHAMENTOS, configuracao, true)); 809 parametros.add(new ConfiguracaoParametroSistema("TERMO_ENCERRAMENTO_ENCAMINHAMENTOS", ENCAMINHAMENTOS, configuracao, true));
810 parametros.add(new ConfiguracaoParametroSistema("TERMO_ENCERRAMENTO_DECISAO", DECISAO, configuracao, true)); 810 parametros.add(new ConfiguracaoParametroSistema("TERMO_ENCERRAMENTO_DECISAO", DECISAO, configuracao, true));
  811 + parametros.add(new ConfiguracaoParametroSistema("VALIDAR_FECHAR_ABA", "true", configuracao, false));
811 812
812 configuracao.setParametros(parametros); 813 configuracao.setParametros(parametros);
813 configuracao = configuracaoService.saveIfNotExist(configuracao); 814 configuracao = configuracaoService.saveIfNotExist(configuracao);
@@ -1313,6 +1314,8 @@ public class StartupListener extends UtilStartup implements ApplicationListener< @@ -1313,6 +1314,8 @@ public class StartupListener extends UtilStartup implements ApplicationListener<
1313 internacionalizacaoList.add(new Internacionalizacao("PORTAL.MSG.EXCLUIR_NAO_PERMITIDO_ACAO_VISUALIZAR", "Não é permitido excluir um item na visualização do registro", dominio, modulo)); 1314 internacionalizacaoList.add(new Internacionalizacao("PORTAL.MSG.EXCLUIR_NAO_PERMITIDO_ACAO_VISUALIZAR", "Não é permitido excluir um item na visualização do registro", dominio, modulo));
1314 internacionalizacaoList.add(new Internacionalizacao("PORTAL.MSG.REMOCAO_GRUPO_NAO_PERMITIDA", "Não é permitido remover este grupo.", dominio, modulo)); 1315 internacionalizacaoList.add(new Internacionalizacao("PORTAL.MSG.REMOCAO_GRUPO_NAO_PERMITIDA", "Não é permitido remover este grupo.", dominio, modulo));
1315 internacionalizacaoList.add(new Internacionalizacao("PORTAL.MSG.CHAVE_MENU_DUPLICADA", "A chave do menu já existe", dominio, modulo)); 1316 internacionalizacaoList.add(new Internacionalizacao("PORTAL.MSG.CHAVE_MENU_DUPLICADA", "A chave do menu já existe", dominio, modulo));
  1317 + internacionalizacaoList.add(new Internacionalizacao("PORTAL.MSG.CONFIRMA_RELOAD_CLOSE_PAGE", "Você deseja mesmo sair? informações fornecidas podem ser perdidas.", dominio, modulo));
  1318 + internacionalizacaoList.add(new Internacionalizacao("PORTAL.MSG.CONFIRMA_CLOSE_WORKSPACE", "Você deseja mesmo fechar essa aba? informações fornecidas podem ser perdidas.", dominio, modulo));
1316 1319
1317 } 1320 }
1318 1321
@@ -1477,7 +1480,7 @@ public class StartupListener extends UtilStartup implements ApplicationListener< @@ -1477,7 +1480,7 @@ public class StartupListener extends UtilStartup implements ApplicationListener<
1477 internacionalizacaoList.add(new Internacionalizacao("LABEL.DOCUMENTOS", "Documentos", dominio, modulo)); 1480 internacionalizacaoList.add(new Internacionalizacao("LABEL.DOCUMENTOS", "Documentos", dominio, modulo));
1478 1481
1479 internacionalizacaoList.add(new Internacionalizacao("LABEL.CPF_CNPJ", "CPF/CNPJ", dominio, modulo)); 1482 internacionalizacaoList.add(new Internacionalizacao("LABEL.CPF_CNPJ", "CPF/CNPJ", dominio, modulo));
1480 - 1483 + internacionalizacaoList.add(new Internacionalizacao("PORTAL.LABEL.VALIDAR_FECHAR_ABA", "Confirma antes de fechar aba", dominio, modulo));
1481 } 1484 }
1482 1485
1483 /** 1486 /**
cit-portal-web/src/main/webapp/assets/js/angular/custom/controller/AppController.js
@@ -17,7 +17,7 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca @@ -17,7 +17,7 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca
17 17
18 $scope.notificacao = {}; 18 $scope.notificacao = {};
19 19
20 - //CONSTANTES 20 + // CONSTANTES
21 $scope.MASK_CPF = "999.999.999.99"; 21 $scope.MASK_CPF = "999.999.999.99";
22 $scope.MASK_CNPJ = "99.999.999/9999-99"; 22 $scope.MASK_CNPJ = "99.999.999/9999-99";
23 $scope.LIMITE_FAVORITO_MENU = 5; 23 $scope.LIMITE_FAVORITO_MENU = 5;
@@ -35,6 +35,26 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca @@ -35,6 +35,26 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca
35 $scope.usuarioLogado.organizacoes = $filter('itemOrganizacaoDistinct')($scope.usuarioLogado.organizacoes, $scope.usuarioLogado.organizacao); 35 $scope.usuarioLogado.organizacoes = $filter('itemOrganizacaoDistinct')($scope.usuarioLogado.organizacoes, $scope.usuarioLogado.organizacao);
36 }); 36 });
37 37
  38 + ConfiguracaoParametroSistemaRepository.getParametro("VALIDAR_FECHAR_ABA").then(function(result) {
  39 + if(result.valor){
  40 + $scope.validarFecharAba = result.valor;
  41 + }else{
  42 + $scope.validarFecharAba = false;
  43 + }
  44 +
  45 + if($scope.validarFecharAba && $scope.validarFecharAba == 'true'){
  46 + $(window).on('beforeunload', function() {
  47 + if($scope.workspaces.length > 0){
  48 + return $translate.instant("PORTAL.MSG.CONFIRMA_RELOAD_CLOSE_PAGE");
  49 + }
  50 + });
  51 +
  52 + $(window).unload(function() {
  53 + logout();
  54 + });
  55 + }
  56 + });
  57 +
38 ConfiguracaoParametroSistemaRepository.getParametro("TEMPO_GRAVACAO_RASCUNHO").then(function(result) { 58 ConfiguracaoParametroSistemaRepository.getParametro("TEMPO_GRAVACAO_RASCUNHO").then(function(result) {
39 if(result.valor){ 59 if(result.valor){
40 $scope.tempoGravacaoRascunho = result.valor * 1000; 60 $scope.tempoGravacaoRascunho = result.valor * 1000;
@@ -93,14 +113,14 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca @@ -93,14 +113,14 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca
93 }; 113 };
94 114
95 115
96 - //Método responsável por abrir a tela inicial de Notificação 116 + // Método responsável por abrir a tela inicial de Notificação
97 $scope.openNotificacoes = function(){ 117 $scope.openNotificacoes = function(){
98 118
99 $scope.openMenuPorNome($translate.instant('PORTAL.LABEL.NOTIFICACAO')); 119 $scope.openMenuPorNome($translate.instant('PORTAL.LABEL.NOTIFICACAO'));
100 120
101 }; 121 };
102 122
103 - //Métoto responsável por abir o favorito 123 + // Métoto responsável por abir o favorito
104 $scope.openWorkspaceFavorito = function(titulo, pagina, classePagina, paginaId){ 124 $scope.openWorkspaceFavorito = function(titulo, pagina, classePagina, paginaId){
105 125
106 MenuRepository.buscarMenusPorPagina({pagina : pagina}).then(function(result) { 126 MenuRepository.buscarMenusPorPagina({pagina : pagina}).then(function(result) {
@@ -112,7 +132,7 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca @@ -112,7 +132,7 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca
112 }; 132 };
113 133
114 134
115 - //Método responsável por abir o menu através do nome 135 + // Método responsável por abir o menu através do nome
116 $scope.openMenuPorNome = function(nome){ 136 $scope.openMenuPorNome = function(nome){
117 137
118 MenuRepository.obterPorNome(nome).then(function(result) { 138 MenuRepository.obterPorNome(nome).then(function(result) {
@@ -184,7 +204,8 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca @@ -184,7 +204,8 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca
184 } 204 }
185 }; 205 };
186 206
187 - //Controla a visualização das notificações individualmente na nav-bar do topo da tela 207 + // Controla a visualização das notificações individualmente na nav-bar do
  208 + // topo da tela
188 $scope.visualizarNotificacao = function(notificacao) { 209 $scope.visualizarNotificacao = function(notificacao) {
189 210
190 NotificacaoRepository.visualizar(notificacao.originalElement).then(function(result) { 211 NotificacaoRepository.visualizar(notificacao.originalElement).then(function(result) {
@@ -393,7 +414,7 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca @@ -393,7 +414,7 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca
393 414
394 /** 415 /**
395 * Metodo para mostrar mensagens para o usuario 416 * Metodo para mostrar mensagens para o usuario
396 - * 417 + *
397 * type: success|info|warning|error 418 * type: success|info|warning|error
398 */ 419 */
399 $scope.showAlert = function(type, message, title) { 420 $scope.showAlert = function(type, message, title) {
@@ -467,7 +488,8 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca @@ -467,7 +488,8 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca
467 citsmart: false 488 citsmart: false
468 }; 489 };
469 490
470 - // CASO CONTENHA A SUBSTRING .load, é uma página citsmart redireciona para o iframe. 491 + // CASO CONTENHA A SUBSTRING .load, é uma página citsmart redireciona
  492 + // para o iframe.
471 if(page.indexOf(".load") > -1){ 493 if(page.indexOf(".load") > -1){
472 workspace.grp = false; 494 workspace.grp = false;
473 workspace.citsmart = true; 495 workspace.citsmart = true;
@@ -475,7 +497,7 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca @@ -475,7 +497,7 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca
475 497
476 $scope.workspaceRelatorio = angular.copy(workspace); 498 $scope.workspaceRelatorio = angular.copy(workspace);
477 499
478 - //VALIDA SE A WORKSPACE E FAVORITA 500 + // VALIDA SE A WORKSPACE E FAVORITA
479 isWorkspaceFavorito(workspace); 501 isWorkspaceFavorito(workspace);
480 502
481 $scope.workspaces.push(workspace); 503 $scope.workspaces.push(workspace);
@@ -539,13 +561,29 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca @@ -539,13 +561,29 @@ citApp.controller('AppController', ['$scope', '$routeParams', '$timeout', '$loca
539 }; 561 };
540 562
541 $scope.removeWorkspace = function(id) { 563 $scope.removeWorkspace = function(id) {
  564 +
  565 + if($scope.validarFecharAba && $scope.validarFecharAba != 'true'){
  566 + $scope.closeWorkspace(id);
  567 + }else{
  568 + $scope.$openModalConfirm({
  569 + message: $translate.instant("PORTAL.MSG.CONFIRMA_CLOSE_WORKSPACE"),
  570 + callback: function () {
  571 + $scope.closeWorkspace(id);
  572 + $scope.$modalConfirmInstance.dismiss('cancel');
  573 + }
  574 +
  575 + });
  576 + }
  577 + };
  578 +
  579 + $scope.closeWorkspace = function(id){
542 var workspaces = $scope.workspaces, 580 var workspaces = $scope.workspaces,
543 - i;  
544 - for (i = 0; i < workspaces.length; i = i + 1) { 581 + i;
  582 + for (i = 0; i < workspaces.length; i = i + 1) {
545 if (id === workspaces[i].id) { 583 if (id === workspaces[i].id) {
546 var workspaceTarget = workspaces[i], 584 var workspaceTarget = workspaces[i],
547 - workspaceNext = workspaces[i + 1],  
548 - workspacePrev = workspaces[i - 1]; 585 + workspaceNext = workspaces[i + 1],
  586 + workspacePrev = workspaces[i - 1];
549 587
550 if(workspaceTarget.active === true) { 588 if(workspaceTarget.active === true) {
551 589
@@ -573,7 +611,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -573,7 +611,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
573 } 611 }
574 } 612 }
575 }; 613 };
576 - // Método responsável por remover os interval dos widget. 614 +
  615 + // Método responsável por remover os interval dos widget.
577 $scope.removeIntervalDashboard = function () { 616 $scope.removeIntervalDashboard = function () {
578 617
579 if($rootScope.listaWidgetIntervals){ 618 if($rootScope.listaWidgetIntervals){
@@ -587,8 +626,9 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -587,8 +626,9 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
587 }; 626 };
588 }; 627 };
589 628
590 -// Foi desabilitado o dashboard pelo fato de nao esta ainda funcionado  
591 -// $scope.workspaces = [{ id: 1, name: "Dasboard", page: '/cit-portal-web/html/home/home.html', active:true }]; 629 +// Foi desabilitado o dashboard pelo fato de nao esta ainda funcionado
  630 +// $scope.workspaces = [{ id: 1, name: "Dasboard", page:
  631 +// '/cit-portal-web/html/home/home.html', active:true }];
592 $scope.workspaces = []; 632 $scope.workspaces = [];
593 633
594 $scope.addWorkspace = function () { 634 $scope.addWorkspace = function () {
@@ -597,8 +637,9 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -597,8 +637,9 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
597 }; 637 };
598 638
599 /** 639 /**
600 - * Funcao responsavel por validar se a Workspace adicionada ja e favorita - O class do favorito muda de acordo com o booleano  
601 - */ 640 + * Funcao responsavel por validar se a Workspace adicionada ja e favorita -
  641 + * O class do favorito muda de acordo com o booleano
  642 + */
602 var isWorkspaceFavorito = function(workspace) { 643 var isWorkspaceFavorito = function(workspace) {
603 var paginaUsuario = $scope.recuperarPaginaUsuario(workspace); 644 var paginaUsuario = $scope.recuperarPaginaUsuario(workspace);
604 645
@@ -606,8 +647,9 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -606,8 +647,9 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
606 }; 647 };
607 648
608 /** 649 /**
609 - * Responsável por adicionar a Workspace ativa como favorito ou nao conforme status atual  
610 - */ 650 + * Responsável por adicionar a Workspace ativa como favorito ou nao conforme
  651 + * status atual
  652 + */
611 $scope.addFavorito = function(workspace){ 653 $scope.addFavorito = function(workspace){
612 654
613 var favoritoVH = { 655 var favoritoVH = {
@@ -618,18 +660,20 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -618,18 +660,20 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
618 // SALVA OU REMOVE O FAVORITO 660 // SALVA OU REMOVE O FAVORITO
619 PaginaUsuarioRepository.saveFavorito(favoritoVH).then(function(result){ 661 PaginaUsuarioRepository.saveFavorito(favoritoVH).then(function(result){
620 workspace.favorito = result.favorito; 662 workspace.favorito = result.favorito;
621 - // DETERMINA A LISTA DE PAGINAS DO USUARIO COM A ULTIMA VERSAO SALVA. 663 + // DETERMINA A LISTA DE PAGINAS DO USUARIO COM A ULTIMA VERSAO
  664 + // SALVA.
622 $scope.usuarioLogado.paginasUsuario = result.paginasUsuario; 665 $scope.usuarioLogado.paginasUsuario = result.paginasUsuario;
623 - //ATUALIZA AS ABAS REPETIDAS 666 + // ATUALIZA AS ABAS REPETIDAS
624 atualizarWorkspacesFavorito(workspace); 667 atualizarWorkspacesFavorito(workspace);
625 - //ATUALIZA A LISTA DE PÁGINAS FAVORITAS MENU 668 + // ATUALIZA A LISTA DE PÁGINAS FAVORITAS MENU
626 $scope.getPaginasFavoritadas(); 669 $scope.getPaginasFavoritadas();
627 }); 670 });
628 }; 671 };
629 672
630 /** 673 /**
631 - * Funcao responsavel por atualizar a lista de workspaces apos clicar em favoritar. Util para as abas repetidas  
632 - */ 674 + * Funcao responsavel por atualizar a lista de workspaces apos clicar em
  675 + * favoritar. Util para as abas repetidas
  676 + */
633 var atualizarWorkspacesFavorito = function(workspace){ 677 var atualizarWorkspacesFavorito = function(workspace){
634 678
635 for(var index = 0; index < $scope.workspaces.length; index++){ 679 for(var index = 0; index < $scope.workspaces.length; index++){
@@ -642,8 +686,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -642,8 +686,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
642 }; 686 };
643 687
644 /** 688 /**
645 - * Responsavel por obter as páginas favoritas no menu  
646 - */ 689 + * Responsavel por obter as páginas favoritas no menu
  690 + */
647 $scope.getPaginasFavoritadas = function(){ 691 $scope.getPaginasFavoritadas = function(){
648 692
649 $scope.paginasUsuarioFavoritoTemp = []; 693 $scope.paginasUsuarioFavoritoTemp = [];
@@ -739,7 +783,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -739,7 +783,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
739 783
740 var idRelatorioCount = 0; 784 var idRelatorioCount = 0;
741 $scope.arrayContentReports = new Object(); 785 $scope.arrayContentReports = new Object();
742 - // Metodo responsavel por fazer a requisicao relatorios no GRP em uma TAB, abrindo uma nova workspace posteriormente 786 + // Metodo responsavel por fazer a requisicao relatorios no GRP em uma TAB,
  787 + // abrindo uma nova workspace posteriormente
743 $scope.visualizarRelatorio = function(url, titleTab) { 788 $scope.visualizarRelatorio = function(url, titleTab) {
744 789
745 $scope.titleReport = titleTab; 790 $scope.titleReport = titleTab;
@@ -796,7 +841,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -796,7 +841,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
796 }); 841 });
797 }; 842 };
798 843
799 - // Metodo responsavel por fazer a requisicao relatorios no GRP em uma MODAL, abrindo uma nova $modalRelatorioInstace posteriormente 844 + // Metodo responsavel por fazer a requisicao relatorios no GRP em uma MODAL,
  845 + // abrindo uma nova $modalRelatorioInstace posteriormente
800 $scope.visualizarRelatorioModal = function(url) { 846 $scope.visualizarRelatorioModal = function(url) {
801 847
802 if(url.indexOf("download") < 0){ 848 if(url.indexOf("download") < 0){
@@ -872,7 +918,9 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -872,7 +918,9 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
872 }); 918 });
873 }; 919 };
874 920
875 - // Método responsável por cortar uma string de visualização em tela para o tamanho definido como parametro se não for definido parametro de tamanho corta para 50 caracteres 921 + // Método responsável por cortar uma string de visualização em tela para o
  922 + // tamanho definido como parametro se não for definido parametro de tamanho
  923 + // corta para 50 caracteres
876 $scope.splitText = function(string, tamanho) { 924 $scope.splitText = function(string, tamanho) {
877 if (!tamanho) { 925 if (!tamanho) {
878 tamanho = 50; 926 tamanho = 50;
@@ -905,7 +953,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -905,7 +953,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
905 } 953 }
906 }; 954 };
907 955
908 - // Verifica se a data em formato BR da referencia esta dentro da referencia vigente 956 + // Verifica se a data em formato BR da referencia esta dentro da referencia
  957 + // vigente
909 $scope.isDataBRDentroReferenciaVigenteBR = function(data) { 958 $scope.isDataBRDentroReferenciaVigenteBR = function(data) {
910 959
911 if(data !== undefined){ 960 if(data !== undefined){
@@ -926,7 +975,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -926,7 +975,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
926 } 975 }
927 }; 976 };
928 977
929 - // Verifica se a data em formato BR da referencia é maior ou igual a data da referencia vigente 978 + // Verifica se a data em formato BR da referencia é maior ou igual a data da
  979 + // referencia vigente
930 $scope.isDataBRMaiorOuIgualReferenciaVigente = function(data) { 980 $scope.isDataBRMaiorOuIgualReferenciaVigente = function(data) {
931 981
932 if(data !== undefined){ 982 if(data !== undefined){
@@ -953,7 +1003,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -953,7 +1003,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
953 } 1003 }
954 }; 1004 };
955 1005
956 - // Verifica se a data em formato US da referencia esta dentro da referencia vigente 1006 + // Verifica se a data em formato US da referencia esta dentro da referencia
  1007 + // vigente
957 $scope.isDataUSDentroReferenciaVigente = function(data) { 1008 $scope.isDataUSDentroReferenciaVigente = function(data) {
958 1009
959 if(data !== undefined){ 1010 if(data !== undefined){
@@ -974,7 +1025,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -974,7 +1025,8 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
974 } 1025 }
975 }; 1026 };
976 1027
977 - // Verifica se a data em formato BR da referencia é maior ou igual a data da referencia vigente 1028 + // Verifica se a data em formato BR da referencia é maior ou igual a data da
  1029 + // referencia vigente
978 $scope.isDataUSMaiorOuIgualReferenciaVigente = function(data) { 1030 $scope.isDataUSMaiorOuIgualReferenciaVigente = function(data) {
979 1031
980 if(data !== undefined){ 1032 if(data !== undefined){
@@ -1001,7 +1053,9 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -1001,7 +1053,9 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
1001 } 1053 }
1002 }; 1054 };
1003 1055
1004 - //TODO refatorar assim que o login estiver pronto. Foi preciso timeout por ter que atualizar o menu com quantidade de favoritos, sem ele o usuario logado ainda nao foi completamente carregado. 1056 + // TODO refatorar assim que o login estiver pronto. Foi preciso timeout por
  1057 + // ter que atualizar o menu com quantidade de favoritos, sem ele o usuario
  1058 + // logado ainda nao foi completamente carregado.
1005 $timeout(function() { 1059 $timeout(function() {
1006 1060
1007 $scope.getPaginasFavoritadas(); 1061 $scope.getPaginasFavoritadas();
@@ -1531,7 +1585,7 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -1531,7 +1585,7 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
1531 } 1585 }
1532 1586
1533 var workspace = undefined; 1587 var workspace = undefined;
1534 -// angular.element('#' + idFormEdit).scope().resetForm(); 1588 +// angular.element('#' + idFormEdit).scope().resetForm();
1535 $timeout(function() { 1589 $timeout(function() {
1536 $scope.setLoadingGet(true); 1590 $scope.setLoadingGet(true);
1537 for(var i = 0; i < $scope.workspaces.length; i++){ 1591 for(var i = 0; i < $scope.workspaces.length; i++){
@@ -1543,7 +1597,7 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca @@ -1543,7 +1597,7 @@ citApp.controller(&#39;AppController&#39;, [&#39;$scope&#39;, &#39;$routeParams&#39;, &#39;$timeout&#39;, &#39;$loca
1543 1597
1544 getRascunho(workspace, rascunho.id); 1598 getRascunho(workspace, rascunho.id);
1545 $timeout(function(){ 1599 $timeout(function(){
1546 -// workspace.rascunho = rascunho; 1600 +// workspace.rascunho = rascunho;
1547 angular.element('#' + $scope.nomeFormIdController).scope().setRascunho(JSON.parse(rascunho.json)); 1601 angular.element('#' + $scope.nomeFormIdController).scope().setRascunho(JSON.parse(rascunho.json));
1548 $scope.$showPageEditWorkspace(workspace); 1602 $scope.$showPageEditWorkspace(workspace);
1549 $scope.$modalInstance.dismiss('cancel'); 1603 $scope.$modalInstance.dismiss('cancel');
cit-portal-web/src/main/webapp/html/configuracao/configuracao.html
@@ -69,7 +69,7 @@ @@ -69,7 +69,7 @@
69 <div class="row"> 69 <div class="row">
70 <div class="col-sm-4"> 70 <div class="col-sm-4">
71 <div class="form-group"> 71 <div class="form-group">
72 - <label class="control-label"><translate>LABEL.USUARIO</translate>:</label> <input type="text" class="form-control" ng-model="parametro.EMAIL_LOGIN" /> 72 + <label class="control-label"><translate>LABEL.USUARIO</translate>:</label> <input type="text" class="form-control" id="parametro.EMAIL_LOGIN" ng-model="parametro.EMAIL_LOGIN" />
73 </div> 73 </div>
74 <!-- .form-control --> 74 <!-- .form-control -->
75 </div> 75 </div>
@@ -80,7 +80,7 @@ @@ -80,7 +80,7 @@
80 <div class="row"> 80 <div class="row">
81 <div class="col-sm-4"> 81 <div class="col-sm-4">
82 <div class="form-group"> 82 <div class="form-group">
83 - <label class="control-label"><translate>PORTAL.LABEL.SENHA</translate>:</label> <input type="password" class="form-control" ng-model="parametro.EMAIL_SENHA" /> 83 + <label class="control-label"><translate>PORTAL.LABEL.SENHA</translate>:</label> <input type="password" class="form-control" id="parametro.EMAIL_SENHA" ng-model="parametro.EMAIL_SENHA" />
84 </div> 84 </div>
85 <!-- .form-control --> 85 <!-- .form-control -->
86 </div> 86 </div>
@@ -92,7 +92,7 @@ @@ -92,7 +92,7 @@
92 <div class="col-sm-4"> 92 <div class="col-sm-4">
93 <div class="form-group"> 93 <div class="form-group">
94 <div class="checkbox" style="margin: 0;"> 94 <div class="checkbox" style="margin: 0;">
95 - <label> <input type="checkbox" ng-model="parametro.EMAIL_EXIGE_AUTENTICACAO" ng-true-value="'true'" ng-false-value="'false'" /> <translate>PORTAL.LABEL.EXIGE_AUTENTICACAO</translate> 95 + <label> <input type="checkbox" id= "parametro.EMAIL_EXIGE_AUTENTICACAO" ng-model="parametro.EMAIL_EXIGE_AUTENTICACAO" ng-true-value="'true'" ng-false-value="'false'" /> <translate>PORTAL.LABEL.EXIGE_AUTENTICACAO</translate>
96 </label> 96 </label>
97 </div> 97 </div>
98 <!-- .checkbox --> 98 <!-- .checkbox -->
@@ -107,7 +107,7 @@ @@ -107,7 +107,7 @@
107 <div class="col-sm-4"> 107 <div class="col-sm-4">
108 <div class="form-group"> 108 <div class="form-group">
109 <div class="checkbox" style="margin: 0;"> 109 <div class="checkbox" style="margin: 0;">
110 - <label> <input type="checkbox" ng-model="parametro.EMAIL_TSL_SSL" ng-true-value="'true'" ng-false-value="'false'" /> <translate>PORTAL.LABEL.TSL_SSL</translate> 110 + <label> <input type="checkbox" id="parametro.EMAIL_TSL_SSL" ng-model="parametro.EMAIL_TSL_SSL" ng-true-value="'true'" ng-false-value="'false'" /> <translate>PORTAL.LABEL.TSL_SSL</translate>
111 </label> 111 </label>
112 </div> 112 </div>
113 <!-- .checkbox --> 113 <!-- .checkbox -->
@@ -164,7 +164,7 @@ @@ -164,7 +164,7 @@
164 <div class="col-sm-4"> 164 <div class="col-sm-4">
165 <div class="form-group"> 165 <div class="form-group">
166 <div class="checkbox" style="margin: 0;"> 166 <div class="checkbox" style="margin: 0;">
167 - <label> <input type="checkbox" ng-model="parametro.EMAIL_EXIGE_AUTENTICACAO" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXIGE_AUTENTICACAO</translate> 167 + <label> <input type="checkbox" id="parametro.EMAIL_EXIGE_AUTENTICACAO" ng-model="parametro.EMAIL_EXIGE_AUTENTICACAO" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXIGE_AUTENTICACAO</translate>
168 </label> 168 </label>
169 </div> 169 </div>
170 <!-- .checkbox --> 170 <!-- .checkbox -->
@@ -186,7 +186,7 @@ @@ -186,7 +186,7 @@
186 <div class="col-sm-12"> 186 <div class="col-sm-12">
187 <div class="form-group"> 187 <div class="form-group">
188 <div class="checkbox" style="margin: 0;"> 188 <div class="checkbox" style="margin: 0;">
189 - <label> <input type="checkbox" ng-model="parametro['EXECUTAR_SCRIPT_MENU']" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXECUTAR_SCRIPT_MENU</translate> 189 + <label> <input type="checkbox" id="parametro.EXECUTAR_SCRIPT_MENU" ng-model="parametro['EXECUTAR_SCRIPT_MENU']" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXECUTAR_SCRIPT_MENU</translate>
190 </label> 190 </label>
191 </div> 191 </div>
192 <!-- .checkbox --> 192 <!-- .checkbox -->
@@ -200,7 +200,7 @@ @@ -200,7 +200,7 @@
200 <div class="col-sm-12"> 200 <div class="col-sm-12">
201 <div class="form-group"> 201 <div class="form-group">
202 <div class="checkbox" style="margin: 0;"> 202 <div class="checkbox" style="margin: 0;">
203 - <label> <input type="checkbox" ng-model="parametro['EXECUTAR_BASE_INICIAL']" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXECUTAR_BASE_INICIAL</translate> 203 + <label> <input type="checkbox" id="parametro.EXECUTAR_BASE_INICIAL" ng-model="parametro['EXECUTAR_BASE_INICIAL']" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXECUTAR_BASE_INICIAL</translate>
204 </label> 204 </label>
205 </div> 205 </div>
206 <!-- .checkbox --> 206 <!-- .checkbox -->
@@ -214,7 +214,7 @@ @@ -214,7 +214,7 @@
214 <div class="col-sm-12"> 214 <div class="col-sm-12">
215 <div class="form-group"> 215 <div class="form-group">
216 <div class="checkbox" style="margin: 0;"> 216 <div class="checkbox" style="margin: 0;">
217 - <label> <input type="checkbox" ng-model="parametro['EXECUTAR_INTERNACIONALIZACAO']" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXECUTAR_INTERNACIONALIZACAO</translate> 217 + <label> <input type="checkbox" id="parametro.EXECUTAR_INTERNACIONALIZACAO" ng-model="parametro['EXECUTAR_INTERNACIONALIZACAO']" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXECUTAR_INTERNACIONALIZACAO</translate>
218 </label> 218 </label>
219 </div> 219 </div>
220 <!-- .checkbox --> 220 <!-- .checkbox -->
@@ -237,7 +237,7 @@ @@ -237,7 +237,7 @@
237 <div class="form-group"> 237 <div class="form-group">
238 <div class="checkbox" style="margin: 0;"> 238 <div class="checkbox" style="margin: 0;">
239 <label> 239 <label>
240 - <input type="checkbox" ng-model="parametro['ITSM_ATIVO']" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> 240 + <input type="checkbox" id="parametro.ITSM_ATIVO" ng-model="parametro['ITSM_ATIVO']" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" />
241 <translate>LABEL.ITSM_ATIVO</translate> 241 <translate>LABEL.ITSM_ATIVO</translate>
242 </label> 242 </label>
243 </div> 243 </div>
@@ -262,7 +262,7 @@ @@ -262,7 +262,7 @@
262 <div class="col-sm-12"> 262 <div class="col-sm-12">
263 <div class="form-group"> 263 <div class="form-group">
264 <div class="checkbox" style="margin: 0;"> 264 <div class="checkbox" style="margin: 0;">
265 - <label> <input type="checkbox" ng-model="parametro['EXECUTAR_SCRIPT_MENU-'+modulo.id]" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXECUTAR_SCRIPT_MENU</translate> 265 + <label> <input type="checkbox" id="parametro.EXECUTAR_SCRIPT_MENU-{{modulo.id}}" ng-model="parametro['EXECUTAR_SCRIPT_MENU-'+modulo.id]" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXECUTAR_SCRIPT_MENU</translate>
266 </label> 266 </label>
267 </div> 267 </div>
268 <!-- .checkbox --> 268 <!-- .checkbox -->
@@ -276,7 +276,7 @@ @@ -276,7 +276,7 @@
276 <div class="col-sm-12"> 276 <div class="col-sm-12">
277 <div class="form-group"> 277 <div class="form-group">
278 <div class="checkbox" style="margin: 0;"> 278 <div class="checkbox" style="margin: 0;">
279 - <label> <input type="checkbox" ng-model="parametro['EXECUTAR_BASE_INICIAL-'+modulo.id]" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXECUTAR_BASE_INICIAL</translate> 279 + <label> <input type="checkbox" id="parametro.EXECUTAR_BASE_INICIAL-{{modulo.id}}" ng-model="parametro['EXECUTAR_BASE_INICIAL-'+modulo.id]" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoModulosForm" /> <translate>PORTAL.LABEL.EXECUTAR_BASE_INICIAL</translate>
280 </label> 280 </label>
281 </div> 281 </div>
282 <!-- .checkbox --> 282 <!-- .checkbox -->
@@ -478,7 +478,7 @@ @@ -478,7 +478,7 @@
478 <fieldset> 478 <fieldset>
479 <div class="row"> 479 <div class="row">
480 <div class="col-sm-8"> 480 <div class="col-sm-8">
481 - <label-input-radio ng-label="PORTAL.LABEL.MASCARA_NUMERO_IDENTIFICACAO" list="radioValueList" ng-model="mascara.dominioTipoMascara.codigo" ng-disabled="false" text="descricao" ng-obrigatorio="true" 481 + <label-input-radio ng-label="PORTAL.LABEL.MASCARA_NUMERO_IDENTIFICACAO" list="radioValueList" ng-model="mascara.dominioTipoMascara.codigo" ng-disabled="false" text="descricao"
482 value="codigo" form="configuracaoGeralForm" ng-click="configurarMascara()"></label-input-radio> 482 value="codigo" form="configuracaoGeralForm" ng-click="configurarMascara()"></label-input-radio>
483 </div> 483 </div>
484 <!-- .col --> 484 <!-- .col -->
@@ -488,7 +488,7 @@ @@ -488,7 +488,7 @@
488 <div class="row"> 488 <div class="row">
489 <div class="col-sm-2"> 489 <div class="col-sm-2">
490 <label-input-number label-info-tooltip="{{$translate.instant('PORTAL.MSG.INFO_TAMANHO_MASCARA_OPERACAO')}}" ng-id="mascara.tamanhoSequencial" ng-label="PORTAL.LABEL.TAMANHO_MASCARA" 490 <label-input-number label-info-tooltip="{{$translate.instant('PORTAL.MSG.INFO_TAMANHO_MASCARA_OPERACAO')}}" ng-id="mascara.tamanhoSequencial" ng-label="PORTAL.LABEL.TAMANHO_MASCARA"
491 - form="configuracaoGeralForm" ng-disabled="false" ng-obrigatorio="true" ng-model="mascara.tamanhoSequencial" ng-custom-maxlength="2" ng-min-number="5" ng-max-number="10" 491 + form="configuracaoGeralForm" ng-disabled="false" ng-model="mascara.tamanhoSequencial" ng-custom-maxlength="2" ng-min-number="5" ng-max-number="10"
492 ng-keyup="configurarMascara()" /> 492 ng-keyup="configurarMascara()" />
493 </div> 493 </div>
494 <!-- .col --> 494 <!-- .col -->
@@ -511,6 +511,20 @@ @@ -511,6 +511,20 @@
511 </div> 511 </div>
512 <!-- .col --> 512 <!-- .col -->
513 </div> 513 </div>
  514 +
  515 + <div class="row">
  516 + <div class="col-sm-12">
  517 + <div class="form-group">
  518 + <div class="checkbox" style="margin: 0;">
  519 + <label> <input type="checkbox" id="parametro.VALIDAR_FECHAR_ABA" ng-model="parametro.VALIDAR_FECHAR_ABA" ng-true-value="'true'" ng-false-value="'false'" form="configuracaoGeralForm" /> <translate>PORTAL.LABEL.VALIDAR_FECHAR_ABA</translate>
  520 + </label>
  521 + </div>
  522 + <!-- .checkbox -->
  523 + </div>
  524 + <!-- .form-control -->
  525 + </div>
  526 + <!-- .col -->
  527 + </div>
514 <!-- .row --> 528 <!-- .row -->
515 529
516 <div class="row margin-top"> 530 <div class="row margin-top">