equal
deleted
inserted
replaced
69 |
69 |
70 self._params = helper.params.constructParams(params) |
70 self._params = helper.params.constructParams(params) |
71 self._logic = params['logic'] |
71 self._logic = params['logic'] |
72 |
72 |
73 |
73 |
74 def public(self, request, page_name=None, params=None, **kwargs): |
74 def public(self, request, access_type, |
|
75 page_name=None, params=None, **kwargs): |
75 """Displays the public page for the entity specified by **kwargs. |
76 """Displays the public page for the entity specified by **kwargs. |
76 |
77 |
77 Params usage: |
78 Params usage: |
78 rights: The rights dictionary is used to check if the user has |
79 rights: The rights dictionary is used to check if the user has |
79 the required rights to view the public page for this entity. |
80 the required rights to view the public page for this entity. |
95 """ |
96 """ |
96 |
97 |
97 params = dicts.merge(params, self._params) |
98 params = dicts.merge(params, self._params) |
98 |
99 |
99 try: |
100 try: |
100 access.checkAccess('public', request, rights=params['rights']) |
101 access.checkAccess(access_type, request, rights=params['rights']) |
101 except out_of_band.Error, error: |
102 except out_of_band.Error, error: |
102 return helper.responses.errorResponse(error, request) |
103 return helper.responses.errorResponse(error, request) |
103 |
104 |
104 # create default template context for use with any templates |
105 # create default template context for use with any templates |
105 context = helper.responses.getUniversalContext(request) |
106 context = helper.responses.getUniversalContext(request) |
124 |
125 |
125 template = params['public_template'] |
126 template = params['public_template'] |
126 |
127 |
127 return helper.responses.respond(request, template, context) |
128 return helper.responses.respond(request, template, context) |
128 |
129 |
129 def create(self, request, page_name=None, params=None, **kwargs): |
130 def create(self, request, access_type, |
|
131 page_name=None, params=None, **kwargs): |
130 """Displays the create page for this entity type. |
132 """Displays the create page for this entity type. |
131 |
133 |
132 Params usage: |
134 Params usage: |
133 The params dictionary is passed on to edit, see the docstring |
135 The params dictionary is passed on to edit, see the docstring |
134 for edit on how it uses it. |
136 for edit on how it uses it. |
154 empty_kwargs = {} |
156 empty_kwargs = {} |
155 fields = self._logic.getKeyFieldNames() |
157 fields = self._logic.getKeyFieldNames() |
156 for field in fields: |
158 for field in fields: |
157 empty_kwargs[field] = None |
159 empty_kwargs[field] = None |
158 |
160 |
159 return self.edit(request, page_name=page_name, |
161 return self.edit(request, access_type, page_name=page_name, |
160 params=params, seed=kwargs, **empty_kwargs) |
162 params=params, seed=kwargs, **empty_kwargs) |
161 |
163 |
162 def edit(self, request, page_name=None, params=None, seed=None, **kwargs): |
164 def edit(self, request, access_type, |
|
165 page_name=None, params=None, seed=None, **kwargs): |
163 """Displays the edit page for the entity specified by **kwargs. |
166 """Displays the edit page for the entity specified by **kwargs. |
164 |
167 |
165 Params usage: |
168 Params usage: |
166 The params dictionary is passed on to either editGet or editPost |
169 The params dictionary is passed on to either editGet or editPost |
167 depending on the method type of the request. See the docstring |
170 depending on the method type of the request. See the docstring |
188 """ |
191 """ |
189 |
192 |
190 params = dicts.merge(params, self._params) |
193 params = dicts.merge(params, self._params) |
191 |
194 |
192 try: |
195 try: |
193 access.checkAccess('edit', request, rights=params['rights']) |
196 access.checkAccess(access_type, request, rights=params['rights']) |
194 except out_of_band.Error, error: |
197 except out_of_band.Error, error: |
195 return helper.responses.errorResponse(error, request) |
198 return helper.responses.errorResponse(error, request) |
196 |
199 |
197 context = helper.responses.getUniversalContext(request) |
200 context = helper.responses.getUniversalContext(request) |
198 context['page_name'] = page_name |
201 context['page_name'] = page_name |
340 else: |
343 else: |
341 form = params['create_form']() |
344 form = params['create_form']() |
342 |
345 |
343 return self._constructResponse(request, entity, context, form, params) |
346 return self._constructResponse(request, entity, context, form, params) |
344 |
347 |
345 def list(self, request, page_name=None, params=None, filter=None): |
348 def list(self, request, access_type, |
|
349 page_name=None, params=None, filter=None): |
346 """Displays the list page for the entity type. |
350 """Displays the list page for the entity type. |
347 |
351 |
348 Args: |
352 Args: |
349 request: the standard Django HTTP request object |
353 request: the standard Django HTTP request object |
350 page_name: the page name displayed in templates as page and header title |
354 page_name: the page name displayed in templates as page and header title |
364 """ |
368 """ |
365 |
369 |
366 params = dicts.merge(params, self._params) |
370 params = dicts.merge(params, self._params) |
367 |
371 |
368 try: |
372 try: |
369 access.checkAccess('list', request, rights=params['rights']) |
373 access.checkAccess(access_type, request, rights=params['rights']) |
370 except out_of_band.Error, error: |
374 except out_of_band.Error, error: |
371 return helper.responses.errorResponse(error, request) |
375 return helper.responses.errorResponse(error, request) |
372 |
376 |
373 content = helper.lists.getListContent(request, params, filter) |
377 content = helper.lists.getListContent(request, params, filter) |
374 contents = [content] |
378 contents = [content] |
403 |
407 |
404 template = params['list_template'] |
408 template = params['list_template'] |
405 |
409 |
406 return helper.responses.respond(request, template, context) |
410 return helper.responses.respond(request, template, context) |
407 |
411 |
408 def delete(self, request, page_name=None, params=None, **kwargs): |
412 def delete(self, request, access_type, |
|
413 page_name=None, params=None, **kwargs): |
409 """Shows the delete page for the entity specified by **kwargs. |
414 """Shows the delete page for the entity specified by **kwargs. |
410 |
415 |
411 Args: |
416 Args: |
412 request: the standard Django HTTP request object |
417 request: the standard Django HTTP request object |
413 page_name: the page name displayed in templates as page and header title |
418 page_name: the page name displayed in templates as page and header title |
428 """ |
433 """ |
429 |
434 |
430 params = dicts.merge(params, self._params) |
435 params = dicts.merge(params, self._params) |
431 |
436 |
432 try: |
437 try: |
433 access.checkAccess('delete', request, rights=params['rights']) |
438 access.checkAccess(access_type, request, rights=params['rights']) |
434 except out_of_band.Error, error: |
439 except out_of_band.Error, error: |
435 return helper.responses.errorResponse(error, request) |
440 return helper.responses.errorResponse(error, request) |
436 |
441 |
437 # create default template context for use with any templates |
442 # create default template context for use with any templates |
438 context = helper.responses.getUniversalContext(request) |
443 context = helper.responses.getUniversalContext(request) |