Revision 8fb8d0cf snf-astakos-app/astakos/im/views/util.py
b/snf-astakos-app/astakos/im/views/util.py | ||
---|---|---|
70 | 70 |
return True # suppress exception |
71 | 71 |
|
72 | 72 |
|
73 |
def render_response(template, tab=None, status=200, context_instance=None, **kwargs): |
|
73 |
def render_response(template, tab=None, status=200, context_instance=None, |
|
74 |
**kwargs): |
|
74 | 75 |
""" |
75 |
Calls ``django.template.loader.render_to_string`` with an additional ``tab``
|
|
76 |
keyword argument and returns an ``django.http.HttpResponse`` with the
|
|
77 |
specified ``status``. |
|
76 |
Calls ``django.template.loader.render_to_string`` with an additional |
|
77 |
``tab`` keyword argument and returns an ``django.http.HttpResponse``
|
|
78 |
with the specified ``status``.
|
|
78 | 79 |
""" |
79 | 80 |
if tab is None: |
80 | 81 |
tab = template.partition('_')[0].partition('.html')[0] |
... | ... | |
84 | 85 |
response = HttpResponse(html, status=status) |
85 | 86 |
return response |
86 | 87 |
|
88 |
|
|
87 | 89 |
@commit_on_success_strict() |
88 | 90 |
def _create_object(request, model=None, template_name=None, |
89 |
template_loader=template_loader, extra_context=None, post_save_redirect=None,
|
|
90 |
login_required=False, context_processors=None, form_class=None,
|
|
91 |
msg=None): |
|
91 |
template_loader=template_loader, extra_context=None,
|
|
92 |
post_save_redirect=None, login_required=False,
|
|
93 |
context_processors=None, form_class=None, msg=None):
|
|
92 | 94 |
""" |
93 | 95 |
Based of django.views.generic.create_update.create_object which displays a |
94 | 96 |
summary page before creating the object. |
95 | 97 |
""" |
96 | 98 |
response = None |
97 | 99 |
|
98 |
if extra_context is None: extra_context = {} |
|
100 |
if extra_context is None: |
|
101 |
extra_context = {} |
|
99 | 102 |
if login_required and not request.user.is_authenticated(): |
100 | 103 |
return redirect_to_login(request.path) |
101 | 104 |
try: |
... | ... | |
115 | 118 |
else: |
116 | 119 |
new_object = form.save() |
117 | 120 |
if not msg: |
118 |
msg = _("The %(verbose_name)s was created successfully.") |
|
121 |
msg = _( |
|
122 |
"The %(verbose_name)s was created successfully.") |
|
119 | 123 |
msg = msg % model._meta.__dict__ |
120 | 124 |
messages.success(request, msg, fail_silently=True) |
121 | 125 |
response = redirect(post_save_redirect, new_object) |
... | ... | |
125 | 129 |
messages.error(request, e) |
126 | 130 |
return None |
127 | 131 |
else: |
128 |
if response == None:
|
|
132 |
if response is None:
|
|
129 | 133 |
# Create the template, context, response |
130 | 134 |
if not template_name: |
131 |
template_name = "%s/%s_form.html" %\ |
|
132 |
(model._meta.app_label, model._meta.object_name.lower())
|
|
135 |
template_name = "%s/%s_form.html" % \
|
|
136 |
(model._meta.app_label, model._meta.object_name.lower()) |
|
133 | 137 |
t = template_loader.get_template(template_name) |
134 | 138 |
c = RequestContext(request, { |
135 | 139 |
'form': form |
... | ... | |
138 | 142 |
response = HttpResponse(t.render(c)) |
139 | 143 |
return response |
140 | 144 |
|
145 |
|
|
141 | 146 |
@commit_on_success_strict() |
142 | 147 |
def _update_object(request, model=None, object_id=None, slug=None, |
143 |
slug_field='slug', template_name=None, template_loader=template_loader, |
|
144 |
extra_context=None, post_save_redirect=None, login_required=False, |
|
145 |
context_processors=None, template_object_name='object', |
|
146 |
form_class=None, msg=None): |
|
148 |
slug_field='slug', template_name=None, |
|
149 |
template_loader=template_loader, extra_context=None, |
|
150 |
post_save_redirect=None, login_required=False, |
|
151 |
context_processors=None, template_object_name='object', |
|
152 |
form_class=None, msg=None): |
|
147 | 153 |
""" |
148 | 154 |
Based of django.views.generic.create_update.update_object which displays a |
149 | 155 |
summary page before updating the object. |
150 | 156 |
""" |
151 | 157 |
response = None |
152 | 158 |
|
153 |
if extra_context is None: extra_context = {} |
|
159 |
if extra_context is None: |
|
160 |
extra_context = {} |
|
154 | 161 |
if login_required and not request.user.is_authenticated(): |
155 | 162 |
return redirect_to_login(request.path) |
156 | 163 |
|
... | ... | |
171 | 178 |
else: |
172 | 179 |
obj = form.save() |
173 | 180 |
if not msg: |
174 |
msg = _("The %(verbose_name)s was created successfully.") |
|
181 |
msg = _( |
|
182 |
"The %(verbose_name)s was created successfully.") |
|
175 | 183 |
msg = msg % model._meta.__dict__ |
176 | 184 |
messages.success(request, msg, fail_silently=True) |
177 | 185 |
response = redirect(post_save_redirect, obj) |
... | ... | |
181 | 189 |
messages.error(request, e) |
182 | 190 |
return None |
183 | 191 |
else: |
184 |
if response == None:
|
|
192 |
if response is None:
|
|
185 | 193 |
if not template_name: |
186 |
template_name = "%s/%s_form.html" %\ |
|
194 |
template_name = "%s/%s_form.html" % \
|
|
187 | 195 |
(model._meta.app_label, model._meta.object_name.lower()) |
188 | 196 |
t = template_loader.get_template(template_name) |
189 | 197 |
c = RequestContext(request, { |
... | ... | |
192 | 200 |
}, context_processors) |
193 | 201 |
apply_extra_context(extra_context, c) |
194 | 202 |
response = HttpResponse(t.render(c)) |
195 |
populate_xheaders(request, response, model, getattr(obj, obj._meta.pk.attname)) |
|
203 |
populate_xheaders(request, response, model, |
|
204 |
getattr(obj, obj._meta.pk.attname)) |
|
196 | 205 |
return response |
197 | 206 |
|
207 |
|
|
198 | 208 |
def _resources_catalog(for_project=False, for_usage=False): |
199 | 209 |
""" |
200 | 210 |
`resource_catalog` contains a list of tuples. Each tuple contains the group |
... | ... | |
273 | 283 |
resource_catalog.pop(group_index) |
274 | 284 |
resource_groups.pop(group) |
275 | 285 |
|
276 |
|
|
277 | 286 |
return resource_catalog, resource_groups |
Also available in: Unified diff