Beispiel #1
0
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)
Beispiel #2
0
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))