Révision f704453d
Ajouté par Serghei Mihai (congés, retour 15/05) il y a presque 9 ans
uauth/organization/views.py | ||
---|---|---|
263 | 263 |
return redirect(self.get_success_url()) |
264 | 264 |
|
265 | 265 |
static_delete = StaticDelete.as_view() |
266 |
|
|
267 |
|
|
268 |
class FederationsView(OrganizationMixin, TemplateView): |
|
269 |
template_name = 'organization/federations.html' |
|
270 |
|
|
271 |
def get_success_url(self): |
|
272 |
return reverse_lazy('manage-federations', kwargs={'organization_slug': self.kwargs['organization_slug']}) |
|
273 |
|
|
274 |
def get_context_data(self, **kwargs): |
|
275 |
ctx = super(FederationsView, self).get_context_data(**kwargs) |
|
276 |
org = ctx['organization'] |
|
277 |
federations_dir = os.path.join(settings.ORGANIZATIONS_DIR, |
|
278 |
org.slug, 'federations') |
|
279 |
ctx['federations_dir'] = federations_dir |
|
280 |
if os.path.exists(federations_dir): |
|
281 |
ctx['federations'] = os.listdir(federations_dir) |
|
282 |
else: |
|
283 |
ctx['federations'] = [] |
|
284 |
return ctx |
|
285 |
|
|
286 |
federations = FederationsView.as_view() |
|
287 |
|
|
288 |
|
|
289 |
class FederationsAdd(UploadMixin, FederationsView): |
|
290 |
form_class = FederationForm |
|
291 |
filename_param = 'federation_file' |
|
292 |
upload_dir = 'federations' |
|
293 |
|
|
294 |
federations_add = FederationsAdd.as_view() |
|
295 |
|
|
296 |
|
|
297 |
class FederationsDelete(TemplateView): |
|
298 |
def get(self, request, *args, **kwargs): |
|
299 |
ctx = self.get_context_data(**kwargs) |
|
300 |
s = request.GET.get('federation') |
|
301 |
if os.path.exists(os.path.join(ctx['federations_dir'], f)): |
|
302 |
try: |
|
303 |
os.remove(os.path.join(ctx['federations_dir'], f)) |
|
304 |
messages.info(request, _('Federation file %s successfully removed') % f) |
|
305 |
except IOError: |
|
306 |
messages.error(request, _('An error occured while removing file %s') % f) |
|
307 |
else: |
|
308 |
messages.error(request, _('Unknown federation file %s') % f) |
|
309 |
return redirect(self.get_success_url()) |
|
310 |
|
|
311 |
federations_delete = FederationsDelete.as_view() |
Formats disponibles : Unified diff
federation files management (#7067)