コード例 #1
0
ファイル: __init__.py プロジェクト: yytsui/nav
def get_user_navlets(request, dashboard_id=None):
    """Gets all navlets that this user subscribes to for a given dashboard"""
    dashboard = find_dashboard(request.account, dashboard_id)
    usernavlets = dashboard.widgets.all()

    navlets = []
    for usernavlet in usernavlets:
        navlets.append(create_navlet_object(usernavlet))
    return HttpResponse(json.dumps(navlets), content_type="application/json")
コード例 #2
0
ファイル: __init__.py プロジェクト: plan1230/nav
def get_user_navlets(request, dashboard_id=None):
    """Gets all navlets that this user subscribes to for a given dashboard"""
    dashboard = find_dashboard(request.account, dashboard_id)
    usernavlets = dashboard.widgets.all()

    navlets = []
    for usernavlet in usernavlets:
        navlets.append(create_navlet_object(usernavlet))
    return JsonResponse({"items": navlets})
コード例 #3
0
ファイル: __init__.py プロジェクト: plan1230/nav
def add_user_navlet(request, dashboard_id=None):
    """Add a navlet subscription to this user"""
    if request.method == 'POST' and 'navlet' in request.POST:
        account = request.account
        dashboard = find_dashboard(account, dashboard_id=dashboard_id)

        if can_modify_navlet(account, request):
            navlet_class = request.POST.get('navlet')
            navlet = add_navlet(account, navlet_class, dashboard=dashboard)
            return JsonResponse(create_navlet_object(navlet))

    return HttpResponse(status=400)
コード例 #4
0
def index(request, did=None):
    """Controller for main page."""
    # Read files that will be displayed on front page
    if request.account.is_default_account():
        welcome = quick_read(WELCOME_ANONYMOUS_PATH)
    else:
        welcome = quick_read(WELCOME_REGISTERED_PATH)

    dashboard = find_dashboard(request.account, did)
    dashboards = AccountDashboard.objects.filter(account=request.account)

    context = {
        'navpath': [('Home', '/')],
        'date_now': datetime.today(),
        'welcome': welcome,
        'dashboard': dashboard,
        'dashboards': dashboards,
        'navlets': list_navlets(),
        'title': u'NAV - {}'.format(dashboard.name),
    }

    if dashboards.count() > 1:
        dashboard_ids = [d.pk for d in dashboards]
        current_index = dashboard_ids.index(dashboard.pk)
        previous_index = current_index - 1
        next_index = current_index + 1
        if current_index == len(dashboard_ids) - 1:
            next_index = 0
        context.update({
            'previous_dashboard': dashboards.get(pk=dashboard_ids[previous_index]),
            'next_dashboard': dashboards.get(pk=dashboard_ids[next_index])
        })

    return render(
        request,
        'webfront/index.html',
        context
    )