Add initial database erase support

This commit is contained in:
Roberto Rosario
2012-07-26 05:03:02 -04:00
parent bccc228fa0
commit ac65a6db76
7 changed files with 74 additions and 16 deletions

View File

@@ -7,7 +7,7 @@ from django.template import RequestContext
from django.contrib import messages
from django.core.urlresolvers import reverse
from .api import bootstrap_options
from .api import bootstrap_options, nuke_database
def bootstrap_type_list(request):
@@ -49,7 +49,7 @@ def bootstrap_execute(request, bootstrap_name):
'delete_view': False,
'previous': previous,
'next': next,
#'form_icon': u'basket_remove.png',
'form_icon': u'database_lightning.png',
'object': bootstrap,
}
@@ -57,3 +57,35 @@ def bootstrap_execute(request, bootstrap_name):
return render_to_response('generic_confirm.html', context,
context_instance=RequestContext(request))
def erase_database_view(request):
# TODO: check for permission
post_action_redirect = None
previous = request.POST.get('previous', request.GET.get('previous', request.META.get('HTTP_REFERER', '/')))
next = request.POST.get('next', request.GET.get('next', post_action_redirect if post_action_redirect else request.META.get('HTTP_REFERER', '/')))
if request.method == 'POST':
try:
nuke_database()
except Exception, exc:
messages.error(request, _(u'Error erasing database; %s') % exc)
else:
messages.success(request, _(u'Database erased successfully.'))
return HttpResponseRedirect(next)
context = {
#'object_name': _(u'bootstrap setup'),
'delete_view': False,
'previous': previous,
'next': next,
'form_icon': u'radioactivity.png',
#'object': bootstrap,
}
context['title'] = _(u'Are you sure you wish to erase the entire database and document storage?')
return render_to_response('generic_confirm.html', context,
context_instance=RequestContext(request))