From d240ebcb505748fa2488bc02a90253dd3098ad1c Mon Sep 17 00:00:00 2001 From: Kostas Papadimitriou Date: Mon, 16 Jul 2012 18:20:29 +0300 Subject: [PATCH] Improved sphinx import admin page - Display log - Improved vew exception handling --- cloudcms/admin.py | 19 ++++++++++++---- cloudcms/templates/cms/admin_import_guide_faq.html | 23 +++++++++++++++++++- 2 files changed, 37 insertions(+), 5 deletions(-) diff --git a/cloudcms/admin.py b/cloudcms/admin.py index 4d42eaf..bc362e4 100644 --- a/cloudcms/admin.py +++ b/cloudcms/admin.py @@ -80,15 +80,26 @@ def import_from_sphinx(request): context = {} form = RstZipImportForm() + if request.GET.get('form_saved'): + context['save_log'] = request.session.get('save_log') + else: + if request.session.get('save_log'): + del request.session['save_log'] + if request.method == 'POST': form = RstZipImportForm(request.POST, request.FILES) if form.is_valid(): try: - ret = form.save(request.user) - messages.add_message(request, messages.INFO, 'Form saved') - return redirect('/cmsmanage/sphinximport/') + saved, log = form.save(request.user) + if saved: + messages.add_message(request, messages.INFO, 'Form saved') + request.session['save_log'] = log.replace("\n", "
") + return redirect('/cmsmanage/sphinximport/' + '?form_saved=1') + else: + messages.add_message(request, messages.ERROR, 'Form failed') + context['save_log'] = log.replace("\n", "
") except Exception, e: - context['exception'] = e + context['save_log'] = e else: context['error'] = True diff --git a/cloudcms/templates/cms/admin_import_guide_faq.html b/cloudcms/templates/cms/admin_import_guide_faq.html index 3d1d2b0..bcd094d 100644 --- a/cloudcms/templates/cms/admin_import_guide_faq.html +++ b/cloudcms/templates/cms/admin_import_guide_faq.html @@ -3,6 +3,15 @@ {% block extrahead %}{{ block.super }} + {% url admin:jsi18n as jsi18nurl %} {{ media }} @@ -40,5 +49,17 @@ {{ form.as_p }} - + + +{% if save_log %} +
+

Log

+
+
+ {{ save_log|safe }} +
+
+{% endif %} + + {% endblock %} -- 1.7.10.4