+admin.site.register(models.Client, ClientAdmin)
+admin.site.register(models.Service, ServiceAdmin)
+
+
+from cloudcms.forms import RstZipImportForm
+
+def import_from_sphinx(request):
+ if not request.user.is_superuser:
+ return HttpResponse(status=401)
+
+ 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:
+ saved, log = form.save(request.user)
+ if saved:
+ messages.add_message(request, messages.INFO, 'Form saved')
+ request.session['save_log'] = log.replace("\n", "<br />")
+ return redirect('/cmsmanage/rstimport/' + '?form_saved=1')
+ else:
+ messages.add_message(request, messages.ERROR, 'Form failed')
+ context['save_log'] = log.replace("\n", "<br />")
+ except Exception, e:
+ context['save_log'] = e
+
+ else:
+ context['error'] = True
+
+ context['form'] = form
+
+ return direct_to_template(request, 'cms/admin_import_guide_faq.html', context)
+
+sphinx_import = admin.site.admin_view(import_from_sphinx)