Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
1# @review: tidy this module when complete
3from builtins import object
4import logging
5import pyramid.httpexceptions as exc
6from pyramid.httpexceptions import HTTPFound
7from pyramid.response import Response
8from pyramid.view import view_config, view_defaults
9from marshall_webapp.templates.responses import templates_transients_history
10from marshall_webapp.models.transients_history.element import models_transients_element_history_delete, models_transients_element_history_put, models_transients_element_history_post
11from dryxPyramid.views.views_base import base_view
12from venusian import lift
14# RESOURCE ELEMENT
16@view_defaults(route_name='transients_history', permission="view_users")
17@lift()
18class views_transients_history(base_view):
20 def __init__(self, request):
21 super().__init__(request)
22 self.resourceName = "transients_history"
24 @view_config(request_method='DELETE', permission="superuser")
25 @view_config(request_param="method=delete", permission="superuser")
26 def delete(self):
27 transients_history = models_transients_element_history_delete(
28 log=self.log,
29 request=self.request,
30 elementId=self.request.matchdict["elementId"]
31 )
32 responseContent = transients_history.delete()
33 if "redirectURL" in self.request.params:
34 url = self.request.params["redirectURL"]
35 return HTTPFound(location=url)
36 else:
37 return Response(responseContent)
39 @view_config(request_method='PUT', permission="superuser")
40 @view_config(request_param="method=put", permission="superuser")
41 def put(self):
42 transients_history = models_transients_element_history_put(
43 log=self.log,
44 request=self.request,
45 elementId=self.request.matchdict["elementId"]
46 )
47 responseContent = transients_history.put()
48 if "redirectURL" in self.request.params:
49 url = self.request.params["redirectURL"]
50 return HTTPFound(location=url)
51 else:
52 return Response(responseContent)
54 @view_config(request_method='POST', permission="edit_users")
55 @view_config(request_param="method=post", permission="edit_users")
56 def post(self):
57 transients_history = models_transients_element_history_post(
58 log=self.log,
59 request=self.request,
60 elementId=self.request.matchdict["elementId"]
61 )
62 responseContent = transients_history.post()
63 if "redirectURL" in self.request.params:
64 url = self.request.params["redirectURL"]
65 return HTTPFound(location=url)
66 else:
67 return Response(responseContent)
69 @view_config(request_method='GET', permission="view_users")
70 @view_config(request_param="method=get", permission="view_users")
71 def get(self):
72 transients_history = templates_transients_history(
73 log=self.log,
74 request=self.request,
75 elementId=self.request.matchdict["elementId"]
76 )
77 responseContent = transients_history.get()
78 return Response(responseContent)