Commit 7b46b5228543f33d71581201208c708179b4934c
1 parent
aa3fa2d6
Exists in
master
Correção de permissões, de templates e menssagens
Showing
8 changed files
with
66 additions
and
56 deletions
Show diff stats
wscacicneo/__init__.py
@@ -5,6 +5,7 @@ from wscacicneo import config | @@ -5,6 +5,7 @@ from wscacicneo import config | ||
5 | from pyramid.authentication import AuthTktAuthenticationPolicy | 5 | from pyramid.authentication import AuthTktAuthenticationPolicy |
6 | from pyramid.authorization import ACLAuthorizationPolicy | 6 | from pyramid.authorization import ACLAuthorizationPolicy |
7 | from pyramid.config import Configurator | 7 | from pyramid.config import Configurator |
8 | +from pyramid.httpexceptions import HTTPNotFound | ||
8 | 9 | ||
9 | 10 | ||
10 | 11 | ||
@@ -31,7 +32,6 @@ def main(global_config, **settings): | @@ -31,7 +32,6 @@ def main(global_config, **settings): | ||
31 | 32 | ||
32 | # Rotas Básicas | 33 | # Rotas Básicas |
33 | cfg.add_route('home', 'home') | 34 | cfg.add_route('home', 'home') |
34 | - cfg.add_route('error', 'error') | ||
35 | cfg.add_route('notifications', 'notifications') | 35 | cfg.add_route('notifications', 'notifications') |
36 | cfg.add_route('orgao', 'orgao/cadastro') | 36 | cfg.add_route('orgao', 'orgao/cadastro') |
37 | 37 |
wscacicneo/models.py
@@ -65,7 +65,7 @@ so = Table('so', Base.metadata, | @@ -65,7 +65,7 @@ so = Table('so', Base.metadata, | ||
65 | mapper(SistemaOperacional, so) | 65 | mapper(SistemaOperacional, so) |
66 | 66 | ||
67 | class RootFactory(object): | 67 | class RootFactory(object): |
68 | - __acl__ = [ (Allow, Everyone, 'view'), | ||
69 | - (Allow, 'Administrador', 'edit') ] | 68 | + __acl__ = [ (Allow, Everyone, 'user'), |
69 | + (Allow, 'Administrador', 'admin') ] | ||
70 | def __init__(self, request): | 70 | def __init__(self, request): |
71 | pass | 71 | pass |
72 | \ No newline at end of file | 72 | \ No newline at end of file |
wscacicneo/templates/editarorgao.pt
@@ -105,8 +105,8 @@ | @@ -105,8 +105,8 @@ | ||
105 | type: "PUT", | 105 | type: "PUT", |
106 | url: "${request.route_url('root')}put_orgao", | 106 | url: "${request.route_url('root')}put_orgao", |
107 | data: data, | 107 | data: data, |
108 | - success: function(){ alert('Cadastro realizado com sucesso') }, | ||
109 | - error: function(){ alert('Erro ao realizar o cadastro. Todos os campos são obrigatórios') }, | 108 | + success: function(){ alert('Alteração realizado com sucesso') }, |
109 | + error: function(){ alert('Erro ao alterar o orgão. Todos os campos são obrigatórios') }, | ||
110 | }); | 110 | }); |
111 | }); | 111 | }); |
112 | </script> | 112 | </script> |
wscacicneo/templates/editaruser.pt
@@ -59,7 +59,7 @@ | @@ -59,7 +59,7 @@ | ||
59 | <div class="form-group"> | 59 | <div class="form-group"> |
60 | <label class="col-lg-2 control-label">Senha</label> | 60 | <label class="col-lg-2 control-label">Senha</label> |
61 | <div class="col-lg-5"> | 61 | <div class="col-lg-5"> |
62 | - <input type="text" id="senha" value="${senha}" class="form-control" placeholder="Informe novamente sua senha"> | 62 | + <input type="text" id="senha" class="form-control" placeholder="Informe novamente sua senha"> |
63 | </div> | 63 | </div> |
64 | </div><div class="form-group"> | 64 | </div><div class="form-group"> |
65 | <label class="col-lg-2 control-label">Confirmar Senha</label> | 65 | <label class="col-lg-2 control-label">Confirmar Senha</label> |
@@ -114,16 +114,30 @@ | @@ -114,16 +114,30 @@ | ||
114 | 'permissao': permissao, | 114 | 'permissao': permissao, |
115 | 'senha': senha | 115 | 'senha': senha |
116 | } | 116 | } |
117 | - if (data.email.indexOf("gov.br") > -1 == false){ | ||
118 | - alert('Somente é permitido cadastro de e-mails institucionais'); | 117 | + var emailCorreto = 0; |
118 | + var senhaConfere = 0; | ||
119 | + if (data.email.indexOf("gov.br") > -1 == true){ | ||
120 | + emailCorreto = 1; | ||
121 | + } | ||
122 | + if(senha.value == confirmarsenha.value && senha.value != "" ){ | ||
123 | + senhaConfere = 1; | ||
124 | + } | ||
125 | + if (emailCorreto == 0 || senhaConfere == 0){ | ||
126 | + if(emailCorreto == 0){ | ||
127 | + setTimeout(function() {noty({text: 'Erro: O campo "E-Mail" deve ser preenchido por um e-mail institucional',layout:'topRight',type:'error',timeout:5000});}, 100); | ||
128 | + } | ||
129 | + if(senhaConfere == 0){ | ||
130 | + setTimeout(function() {noty({text: 'Erro: O campo "Senha" e "Confirmar Senha" estão diferentes ou em branco',layout:'topRight',type:'error',timeout:5000});}, 100); | ||
131 | + } | ||
119 | }else{ | 132 | }else{ |
120 | - $.ajax({ | ||
121 | - type: "PUT", | ||
122 | - url: "${request.route_url('root')}put_user", | ||
123 | - data: data, | ||
124 | - success: function(){ alert('sucesso') }, | ||
125 | - error: function(){ alert('erro') }, | ||
126 | - });} | 133 | + $.ajax({ |
134 | + type: "PUT", | ||
135 | + url: "${request.route_url('root')}put_user", | ||
136 | + data: data, | ||
137 | + success: function(){ alert('Alteração realizado com sucesso') }, | ||
138 | + error: function(){ alert('Erro ao Alterar do usuário. Todos os campos são obrigatórios') }, | ||
139 | + }); | ||
140 | + } | ||
127 | }); | 141 | }); |
128 | </script> | 142 | </script> |
129 | </metal:content> | 143 | </metal:content> |
wscacicneo/templates/home.pt
1 | <metal:main use-macro="load: master.pt"> | 1 | <metal:main use-macro="load: master.pt"> |
2 | <metal:content fill-slot="conteudo"> | 2 | <metal:content fill-slot="conteudo"> |
3 | <div> | 3 | <div> |
4 | - <p><h3 align="center">Sistema Super-Gerente</h3></p> | 4 | + <p><h2 align="center">Sistema Super-Gerente</h2></p> |
5 | + <br> | ||
6 | + <p><h3 align="center"><a href="${request.route_url('root')}login"> Faça Login </a></h3></p> | ||
5 | </div> | 7 | </div> |
6 | </metal:content> | 8 | </metal:content> |
7 | </metal:main> | 9 | </metal:main> |
wscacicneo/templates/list_user.pt
@@ -24,8 +24,7 @@ | @@ -24,8 +24,7 @@ | ||
24 | <tr> | 24 | <tr> |
25 | <th>Nome</th> | 25 | <th>Nome</th> |
26 | <th>Matricula</th> | 26 | <th>Matricula</th> |
27 | - <th>Cargo</th> | ||
28 | - <th>Setor</th> | 27 | + <th>E-mail</th> |
29 | <th>Orgão</th> | 28 | <th>Orgão</th> |
30 | <th>Permissão</th> | 29 | <th>Permissão</th> |
31 | <th>Opções</th> | 30 | <th>Opções</th> |
@@ -35,14 +34,12 @@ | @@ -35,14 +34,12 @@ | ||
35 | <tr tal:repeat="doc user_doc"> | 34 | <tr tal:repeat="doc user_doc"> |
36 | <td>${doc.nome}</td> | 35 | <td>${doc.nome}</td> |
37 | <td>${doc.matricula}</td> | 36 | <td>${doc.matricula}</td> |
38 | - <td>${doc.cargo}</td> | ||
39 | - <td>${doc.setor}</td> | 37 | + <td>${doc.email}</td> |
40 | <td>${doc.orgao}</td> | 38 | <td>${doc.orgao}</td> |
41 | <td>${doc.permissao}</td> | 39 | <td>${doc.permissao}</td> |
42 | <td> | 40 | <td> |
43 | - <a class="btn btn-xs btn-success"><i class="fa fa-check"></i></a> | ||
44 | - <a href="${request.route_url('root')}usuario/editar/${doc.matricula}" class="btn btn-xs btn-warning"><i class="fa fa-pencil"></i></a> | ||
45 | - <a href="${request.route_url('root')}usuario/delete/${doc.matricula}" class="btn btn-xs btn-danger"><i class="fa fa-times"></i></a> | 41 | + <a href="${request.route_url('root')}usuario/editar/${doc.matricula}" class="btn btn-xs btn-warning" title="Editar"><i class="fa fa-pencil"></i></a> |
42 | + <a href="${request.route_url('root')}usuario/delete/${doc.matricula}" class="btn btn-xs btn-danger" title="Apagar"><i class="fa fa-times"></i></a> | ||
46 | </td> | 43 | </td> |
47 | </tr> | 44 | </tr> |
48 | </tbody> | 45 | </tbody> |
wscacicneo/templates/master.pt
@@ -96,7 +96,7 @@ | @@ -96,7 +96,7 @@ | ||
96 | 96 | ||
97 | <!-- Page heading --> | 97 | <!-- Page heading --> |
98 | <div class="page-head"> | 98 | <div class="page-head"> |
99 | - <h2 class="pull-left"><i class="fa fa-home"></i> ${request.path}</h2> | 99 | + <h2 class="pull-left"><i class="fa fa-home"></i> Você está em: ${request.path}</h2> |
100 | 100 | ||
101 | 101 | ||
102 | <div class="clearfix"></div> | 102 | <div class="clearfix"></div> |
wscacicneo/views.py
1 | import requests | 1 | import requests |
2 | import json | 2 | import json |
3 | from pyramid.response import Response | 3 | from pyramid.response import Response |
4 | -from pyramid.httpexceptions import HTTPFound | 4 | +from pyramid.httpexceptions import HTTPFound, HTTPNotFound |
5 | from pyramid.view import view_config | 5 | from pyramid.view import view_config |
6 | from sqlalchemy.orm import sessionmaker | 6 | from sqlalchemy.orm import sessionmaker |
7 | from sqlalchemy import create_engine, MetaData | 7 | from sqlalchemy import create_engine, MetaData |
@@ -50,16 +50,12 @@ def root(request): | @@ -50,16 +50,12 @@ def root(request): | ||
50 | return {'project': 'WSCacicNeo'} | 50 | return {'project': 'WSCacicNeo'} |
51 | 51 | ||
52 | # Views básicas | 52 | # Views básicas |
53 | -@view_config(route_name='home', renderer='templates/home.pt') | 53 | +@view_config(route_name='home', renderer='templates/home.pt', permission="user") |
54 | def home(request): | 54 | def home(request): |
55 | return {'project': 'WSCacicNeo'} | 55 | return {'project': 'WSCacicNeo'} |
56 | 56 | ||
57 | -@view_config(route_name='error', renderer='templates/error.pt') | ||
58 | -def error(request): | ||
59 | - return {'project': 'WSCacicNeo'} | ||
60 | - | ||
61 | # Lista de Notificação | 57 | # Lista de Notificação |
62 | -@view_config(route_name='list_notify', renderer='templates/list_notify.pt') | 58 | +@view_config(route_name='list_notify', renderer='templates/list_notify.pt', permission="admin") |
63 | def list_notify(request): | 59 | def list_notify(request): |
64 | notify_obj = Notify( | 60 | notify_obj = Notify( |
65 | orgao = 'deasdsd', | 61 | orgao = 'deasdsd', |
@@ -72,11 +68,11 @@ def list_notify(request): | @@ -72,11 +68,11 @@ def list_notify(request): | ||
72 | return {'doc': doc} | 68 | return {'doc': doc} |
73 | 69 | ||
74 | 70 | ||
75 | -@view_config(route_name='notify', renderer='templates/notify_coleta.pt') | 71 | +@view_config(route_name='notify', renderer='templates/notify_coleta.pt', permission="admin") |
76 | def notify(request): | 72 | def notify(request): |
77 | return {'project': 'WSCacicNeo'} | 73 | return {'project': 'WSCacicNeo'} |
78 | 74 | ||
79 | -@view_config(route_name='post_notify') | 75 | +@view_config(route_name='post_notify', permission="admin") |
80 | def post_notify(request): | 76 | def post_notify(request): |
81 | requests = request.params | 77 | requests = request.params |
82 | notify_obj = Notify( | 78 | notify_obj = Notify( |
@@ -89,11 +85,11 @@ def post_notify(request): | @@ -89,11 +85,11 @@ def post_notify(request): | ||
89 | return Response(str(results)) | 85 | return Response(str(results)) |
90 | 86 | ||
91 | # Views de Orgão | 87 | # Views de Orgão |
92 | -@view_config(route_name='orgao', renderer='templates/orgao.pt') | 88 | +@view_config(route_name='orgao', renderer='templates/orgao.pt', permission="admin") |
93 | def orgao(request): | 89 | def orgao(request): |
94 | return {'project': 'WSCacicNeo'} | 90 | return {'project': 'WSCacicNeo'} |
95 | 91 | ||
96 | -@view_config(route_name='listorgao', renderer='templates/list_orgao.pt') | 92 | +@view_config(route_name='listorgao', renderer='templates/list_orgao.pt', permission="user") |
97 | def listorgao(request): | 93 | def listorgao(request): |
98 | orgao_obj = Orgao( | 94 | orgao_obj = Orgao( |
99 | nome = 'sahuds', | 95 | nome = 'sahuds', |
@@ -108,7 +104,7 @@ def listorgao(request): | @@ -108,7 +104,7 @@ def listorgao(request): | ||
108 | search = orgao_obj.search_list_orgaos() | 104 | search = orgao_obj.search_list_orgaos() |
109 | return {'orgao_doc': search.results} | 105 | return {'orgao_doc': search.results} |
110 | 106 | ||
111 | -@view_config(route_name='editorgao', renderer='templates/editarorgao.pt') | 107 | +@view_config(route_name='editorgao', renderer='templates/editarorgao.pt', permission="admin") |
112 | def editorgao(request): | 108 | def editorgao(request): |
113 | sigla = request.matchdict['sigla'] | 109 | sigla = request.matchdict['sigla'] |
114 | orgao_obj = Orgao( | 110 | orgao_obj = Orgao( |
@@ -133,7 +129,7 @@ def editorgao(request): | @@ -133,7 +129,7 @@ def editorgao(request): | ||
133 | 'url' : search.results[0].url | 129 | 'url' : search.results[0].url |
134 | } | 130 | } |
135 | 131 | ||
136 | -@view_config(route_name='post_orgao') | 132 | +@view_config(route_name='post_orgao', permission="admin") |
137 | def post_orgao(request): | 133 | def post_orgao(request): |
138 | """ | 134 | """ |
139 | Post doc órgãos | 135 | Post doc órgãos |
@@ -156,7 +152,7 @@ def post_orgao(request): | @@ -156,7 +152,7 @@ def post_orgao(request): | ||
156 | 152 | ||
157 | return Response(str(id_doc)) | 153 | return Response(str(id_doc)) |
158 | 154 | ||
159 | -@view_config(route_name='put_orgao') | 155 | +@view_config(route_name='put_orgao', permission="admin") |
160 | def put_orgao(request): | 156 | def put_orgao(request): |
161 | """ | 157 | """ |
162 | Edita um doc apartir do id | 158 | Edita um doc apartir do id |
@@ -190,7 +186,7 @@ def put_orgao(request): | @@ -190,7 +186,7 @@ def put_orgao(request): | ||
190 | 186 | ||
191 | return Response(edit) | 187 | return Response(edit) |
192 | 188 | ||
193 | -@view_config(route_name='delete_orgao') | 189 | +@view_config(route_name='delete_orgao', permission="admin") |
194 | def delete_orgao(request): | 190 | def delete_orgao(request): |
195 | """ | 191 | """ |
196 | Deleta doc apartir do id | 192 | Deleta doc apartir do id |
@@ -214,7 +210,7 @@ def delete_orgao(request): | @@ -214,7 +210,7 @@ def delete_orgao(request): | ||
214 | return Response(delete) | 210 | return Response(delete) |
215 | 211 | ||
216 | # Views de Favoritos | 212 | # Views de Favoritos |
217 | -@view_config(route_name='favoritos', renderer='templates/favoritos.pt') | 213 | +@view_config(route_name='favoritos', renderer='templates/favoritos.pt', permission="admin") |
218 | def favoritos(request): | 214 | def favoritos(request): |
219 | matricula = request.matchdict['matricula'] | 215 | matricula = request.matchdict['matricula'] |
220 | user_obj = User( | 216 | user_obj = User( |
@@ -245,7 +241,7 @@ def favoritos(request): | @@ -245,7 +241,7 @@ def favoritos(request): | ||
245 | 'senha' : search.results[0].senha | 241 | 'senha' : search.results[0].senha |
246 | } | 242 | } |
247 | 243 | ||
248 | -@view_config(route_name='edit_favoritos') | 244 | +@view_config(route_name='edit_favoritos', permission="admin") |
249 | def edit_favoritos(request): | 245 | def edit_favoritos(request): |
250 | """ | 246 | """ |
251 | Editar do Favoritos | 247 | Editar do Favoritos |
@@ -284,7 +280,7 @@ def edit_favoritos(request): | @@ -284,7 +280,7 @@ def edit_favoritos(request): | ||
284 | return Response(edit) | 280 | return Response(edit) |
285 | 281 | ||
286 | # Reports | 282 | # Reports |
287 | -@view_config(route_name='create_orgao') | 283 | +@view_config(route_name='create_orgao',permission="admin") |
288 | def create_base(request): | 284 | def create_base(request): |
289 | nm_orgao = request.matchdict['nm_orgao'] | 285 | nm_orgao = request.matchdict['nm_orgao'] |
290 | coletaManualBase = coleta_manual.ColetaManualBase(nm_orgao) | 286 | coletaManualBase = coleta_manual.ColetaManualBase(nm_orgao) |
@@ -308,7 +304,7 @@ def conf_report(request): | @@ -308,7 +304,7 @@ def conf_report(request): | ||
308 | search = orgao_obj.search_list_orgaos() | 304 | search = orgao_obj.search_list_orgaos() |
309 | return {'orgao_doc': search.results} | 305 | return {'orgao_doc': search.results} |
310 | 306 | ||
311 | -@view_config(route_name='report_itens', renderer='templates/report.pt') | 307 | +@view_config(route_name='report_itens', renderer='templates/report.pt', permission="admin") |
312 | def report_itens(request): | 308 | def report_itens(request): |
313 | nm_orgao = request.matchdict['nm_orgao'] | 309 | nm_orgao = request.matchdict['nm_orgao'] |
314 | attr = request.matchdict['attr'] | 310 | attr = request.matchdict['attr'] |
@@ -318,11 +314,11 @@ def report_itens(request): | @@ -318,11 +314,11 @@ def report_itens(request): | ||
318 | 314 | ||
319 | # Users | 315 | # Users |
320 | 316 | ||
321 | -@view_config(route_name='user', renderer='templates/user.pt', permission='edit') | 317 | +@view_config(route_name='user', renderer='templates/user.pt', permission='admin') |
322 | def user(request): | 318 | def user(request): |
323 | return {'project': 'WSCacicNeo'} | 319 | return {'project': 'WSCacicNeo'} |
324 | 320 | ||
325 | -@view_config(route_name='post_user') | 321 | +@view_config(route_name='post_user', permission="admin") |
326 | def post_user(request): | 322 | def post_user(request): |
327 | """ | 323 | """ |
328 | Post doc users | 324 | Post doc users |
@@ -355,7 +351,7 @@ def post_user(request): | @@ -355,7 +351,7 @@ def post_user(request): | ||
355 | else: | 351 | else: |
356 | return {"emailerrado":"emailerrado"} | 352 | return {"emailerrado":"emailerrado"} |
357 | 353 | ||
358 | -@view_config(route_name='edituser', renderer='templates/editaruser.pt', permission="edit") | 354 | +@view_config(route_name='edituser', renderer='templates/editaruser.pt', permission="admin") |
359 | def edituser(request): | 355 | def edituser(request): |
360 | matricula = request.matchdict['matricula'] | 356 | matricula = request.matchdict['matricula'] |
361 | user_obj = User( | 357 | user_obj = User( |
@@ -382,7 +378,7 @@ def edituser(request): | @@ -382,7 +378,7 @@ def edituser(request): | ||
382 | 'senha' : search.results[0].senha | 378 | 'senha' : search.results[0].senha |
383 | } | 379 | } |
384 | 380 | ||
385 | -@view_config(route_name='put_user') | 381 | +@view_config(route_name='put_user', permission="admin") |
386 | def put_user(request): | 382 | def put_user(request): |
387 | """ | 383 | """ |
388 | Edita um doc de user apartir do id | 384 | Edita um doc de user apartir do id |
@@ -423,7 +419,7 @@ def put_user(request): | @@ -423,7 +419,7 @@ def put_user(request): | ||
423 | else: | 419 | else: |
424 | return { } | 420 | return { } |
425 | 421 | ||
426 | -@view_config(route_name='listuser', renderer='templates/list_user.pt', permission="view") | 422 | +@view_config(route_name='listuser', renderer='templates/list_user.pt', permission="admin") |
427 | def listuser(request): | 423 | def listuser(request): |
428 | user_obj = User( | 424 | user_obj = User( |
429 | nome = 'asdasd', | 425 | nome = 'asdasd', |
@@ -440,7 +436,7 @@ def listuser(request): | @@ -440,7 +436,7 @@ def listuser(request): | ||
440 | search = user_obj.search_list_users() | 436 | search = user_obj.search_list_users() |
441 | return {'user_doc': search.results} | 437 | return {'user_doc': search.results} |
442 | 438 | ||
443 | -@view_config(route_name='delete_user') | 439 | +@view_config(route_name='delete_user', permission="admin") |
444 | def delete_user(request): | 440 | def delete_user(request): |
445 | """ | 441 | """ |
446 | Deleta doc apartir do id | 442 | Deleta doc apartir do id |
@@ -465,7 +461,7 @@ def delete_user(request): | @@ -465,7 +461,7 @@ def delete_user(request): | ||
465 | return Response(delete) | 461 | return Response(delete) |
466 | 462 | ||
467 | # Autenticação | 463 | # Autenticação |
468 | -@view_config(route_name='login', renderer='templates/login.pt') | 464 | +@view_config(route_name='login', renderer='templates/login.pt', permission="view") |
469 | @forbidden_view_config(renderer='templates/login.pt') | 465 | @forbidden_view_config(renderer='templates/login.pt') |
470 | def login(request): | 466 | def login(request): |
471 | user_obj = User( | 467 | user_obj = User( |
@@ -482,10 +478,11 @@ def login(request): | @@ -482,10 +478,11 @@ def login(request): | ||
482 | ) | 478 | ) |
483 | login_url = request.route_url('login') | 479 | login_url = request.route_url('login') |
484 | referrer = request.url | 480 | referrer = request.url |
481 | + message = 'Você não tem permissão para isso. Autentique-se.' | ||
485 | if referrer == login_url: | 482 | if referrer == login_url: |
486 | referrer = request.route_url('root') + 'home' # never use the login form itself as came_from | 483 | referrer = request.route_url('root') + 'home' # never use the login form itself as came_from |
484 | + message = '' | ||
487 | came_from = request.params.get('came_from', referrer) | 485 | came_from = request.params.get('came_from', referrer) |
488 | - message = '' | ||
489 | email = '' | 486 | email = '' |
490 | senha = '' | 487 | senha = '' |
491 | is_visible = 'none' | 488 | is_visible = 'none' |
@@ -498,12 +495,12 @@ def login(request): | @@ -498,12 +495,12 @@ def login(request): | ||
498 | headers = remember(request, email) | 495 | headers = remember(request, email) |
499 | return HTTPFound(location = came_from, | 496 | return HTTPFound(location = came_from, |
500 | headers = headers) | 497 | headers = headers) |
501 | - is_visible = "block" | ||
502 | message = 'E-mail ou senha incorretos' | 498 | message = 'E-mail ou senha incorretos' |
503 | except: | 499 | except: |
504 | - is_visible = "block" | ||
505 | message = 'E-mail ou senha incorretos' | 500 | message = 'E-mail ou senha incorretos' |
506 | 501 | ||
502 | + if message != '': | ||
503 | + is_visible = "block" | ||
507 | return dict( | 504 | return dict( |
508 | message = message, | 505 | message = message, |
509 | url = request.application_url + '/login', | 506 | url = request.application_url + '/login', |
@@ -513,14 +510,14 @@ def login(request): | @@ -513,14 +510,14 @@ def login(request): | ||
513 | is_visible = is_visible, | 510 | is_visible = is_visible, |
514 | ) | 511 | ) |
515 | 512 | ||
516 | -@view_config(route_name='logout') | 513 | +@view_config(route_name='logout', permission="admin") |
517 | def logout(request): | 514 | def logout(request): |
518 | headers = forget(request) | 515 | headers = forget(request) |
519 | return HTTPFound(location = request.route_url('login'), | 516 | return HTTPFound(location = request.route_url('login'), |
520 | headers = headers) | 517 | headers = headers) |
521 | 518 | ||
522 | # Coleta | 519 | # Coleta |
523 | -@view_config(route_name='cadastro_coleta', renderer='templates/cadastro_coleta.pt') | 520 | +@view_config(route_name='cadastro_coleta', renderer='templates/cadastro_coleta.pt', permission="admin") |
524 | def cadastro_coleta(request): | 521 | def cadastro_coleta(request): |
525 | orgao_obj = Orgao( | 522 | orgao_obj = Orgao( |
526 | nome = 'teste', | 523 | nome = 'teste', |
@@ -536,7 +533,7 @@ def cadastro_coleta(request): | @@ -536,7 +533,7 @@ def cadastro_coleta(request): | ||
536 | return {'orgao_doc': search.results} | 533 | return {'orgao_doc': search.results} |
537 | 534 | ||
538 | 535 | ||
539 | -@view_config(route_name='post_coleta_manual') | 536 | +@view_config(route_name='post_coleta_manual', permission="admin") |
540 | def post_coleta_manual(request): | 537 | def post_coleta_manual(request): |
541 | """ | 538 | """ |
542 | Post doc ColetaManual | 539 | Post doc ColetaManual |