예제 #1
0
def account_processor(request):
    """Provides account information to RequestContext.

    Returns these variables:
     - account: This is the nav.models.profiles.Account object representing the
       current user.
     - is_admin: Does this user belong to the NAV administrator group
     - messages: A list of message dictionaries which is meant for the user to
       see.
    """
    account = get_account(request)
    admin = is_admin(account)
    messages = Messages(request)
    messages = messages.get_and_delete()
    sudo = get_sudoer(request)

    my_links = NavbarLink.objects.filter(account=account)

    tools = sorted(tool_list(account), key=attrgetter('name'))

    current_user_data = {
        'account': account,
        'is_admin': admin,
        'sudoer': sudo,
        'messages': messages,
        'my_links': my_links,
        'tools': tools,
        'split_tools': split_tools(tools)
    }
    return {
        'current_user_data': current_user_data,
    }
예제 #2
0
def account_processor(request):
    """Provides account information to RequestContext.

    Returns these variables:
     - account: This is the nav.models.profiles.Account object representing the
       current user.
     - is_admin: Does this user belong to the NAV administrator group
     - messages: A list of message dictionaries which is meant for the user to
       see.
    """
    account = get_account(request)
    admin = is_admin(account)
    messages = Messages(request)
    messages = messages.get_and_delete()
    sudo = get_sudoer(request)

    my_links = NavbarLink.objects.filter(account=account)

    tools = sorted(tool_list(account), key=attrgetter('name'))

    current_user_data = {
        'account': account,
        'is_admin': admin,
        'sudoer': sudo,
        'messages': messages,
        'my_links': my_links,
        'tools': tools,
        'split_tools': split_tools(tools)
    }
    return {
        'current_user_data': current_user_data,
    }
예제 #3
0
파일: views.py 프로젝트: snauman817/nav
def toolbox(request):
    """Render the toolbox"""
    account = request.account
    tools = sorted(tool_list(account), key=attrgetter('name'))

    return render(
        request,
        'webfront/toolbox.html',
        {
            'navpath': [('Home', '/'), ('Toolbox', None)],
            'tools': tools,
            'title': 'NAV toolbox',
        },
    )
예제 #4
0
파일: views.py 프로젝트: Cloudxtreme/nav
def toolbox(request):
    """Render the toolbox"""
    account = get_account(request)
    try:
        layout_prop = AccountProperty.objects.get(account=account,
                                            property='toolbox-layout')
        layout = layout_prop.value
    except AccountProperty.DoesNotExist:
        layout = 'grid'

    tools = sorted(get_account_tools(account, tool_list(account)))

    return direct_to_template(
        request,
        'webfront/toolbox.html',
        {
            'navpath': [('Home', '/'), ('Toolbox', None)],
            'layout': layout,
            'tools': tools,
            'title': 'NAV toolbox',
        },
    )
예제 #5
0
def toolbox(request):
    return {'available_tools': tool_list(get_account(request))}
예제 #6
0
def toolbox(request):
    return {'available_tools': tool_list(get_account(request))}
예제 #7
0
def test_tools_should_be_readable():
    admin = Mock()
    tools = tool_list(admin)
    assert len(tools) > 0