def theme_upload(request, theme): if request.method == 'POST': up_file = request.FILES.getlist('dragupload[]')[0] try: import_theme(up_file, theme=theme) # Calls the signal after static files changed theme_static_files_changed.send(sender=request.site, theme=theme, request=request, items=list(theme['static_files'].exclude(file=None))) request.info(_('File imported with success!')) except ValueError as e: request.info(e) return {'theme':theme, 'uploaded':True} else: return {'theme':theme}
def theme_import(request): if request.method == 'POST': try: # Calls the theme importing function to save theme, templates and static files in the right places theme = import_theme(request.FILES['file']) # Calls the signal after static files changed theme_static_files_changed.send(sender=request.site, theme=theme, request=request, items=list(theme['static_files'].exclude(file=None))) # Final message and redirecting request.info(_('File imported with success!')) url_redirect = reverse('themes_theme', kwargs={'name': theme['name']}) except ValueError as e: request.info(e) url_redirect = reverse('themes_home') return HttpResponseRedirect(url_redirect)