def account_detail(request, account_id=None): """Displays details and processes POST-requests for an account""" try: account = Account.objects.get(id=account_id) except Account.DoesNotExist: account = None old_account = copy.deepcopy(account) account_form = forms.AccountForm(instance=account) org_form = forms.OrganizationAddForm(account) group_form = forms.GroupAddForm(account) if request.method == 'POST': if 'submit_account' in request.POST: account_form = forms.AccountForm(request.POST, instance=account) if account_form.is_valid(): return save_account(request, account_form, old_account) elif 'submit_org' in request.POST: org_form = forms.OrganizationAddForm(account, request.POST) if org_form.is_valid(): return save_account_org(request, account, org_form) elif 'submit_group' in request.POST: group_form = forms.GroupAddForm(account, request.POST) if group_form.is_valid(): return save_account_group(request, account, group_form) elif 'submit_sudo' in request.POST: return sudo_to_user(request) if account: active = {"account_detail": True} auditlog_api_parameters = {"object_model": "account", "object_pk": account.pk} add_warnings_for_account(account, request) else: active = {"account_new": True} auditlog_api_parameters = {} context = { 'auditlog_api_parameters': auditlog_api_parameters, 'active': active, 'account': account, 'account_form': account_form, 'org_form': org_form, 'group_form': group_form, } context.update(DEFAULT_NAVPATH) return render(request, 'useradmin/account_detail.html', context)
def account_detail(request, account_id=None): """Displays details and processes POST-requests for an account""" try: account = Account.objects.get(id=account_id) except Account.DoesNotExist: account = None old_account = copy.deepcopy(account) account_form = forms.AccountForm(instance=account) org_form = forms.OrganizationAddForm(account) group_form = forms.GroupAddForm(account) if request.method == 'POST': if 'submit_account' in request.POST: account_form = forms.AccountForm(request.POST, instance=account) if account_form.is_valid(): return save_account(request, account_form, old_account) elif 'submit_org' in request.POST: org_form = forms.OrganizationAddForm(account, request.POST) if org_form.is_valid(): return save_account_org(request, account, org_form) elif 'submit_group' in request.POST: group_form = forms.GroupAddForm(account, request.POST) if group_form.is_valid(): return save_account_group(request, account, group_form) elif 'submit_sudo' in request.POST: return sudo_to_user(request) active = {'account_detail': True} if account else {'account_new': True} auditlog_api_parameters = { 'object_model': 'account', 'object_pk': account.pk } if account else {} return render_to_response('useradmin/account_detail.html', { 'auditlog_api_parameters': auditlog_api_parameters, 'active': active, 'account': account, 'account_form': account_form, 'org_form': org_form, 'group_form': group_form, }, UserAdminContext(request))