Beispiel #1
0
    def get_context_data(self, parent_context):
        site_details = get_site_for_user(self.request.user)
        root_page = site_details['root_page']
        site_name = site_details['site_name']

        if root_page:
            page_count = Page.objects.descendant_of(root_page,
                                                    inclusive=True).count()

            if root_page.is_root():
                # If the root page the user has access to is the Wagtail root,
                # subtract one from this count because the root is not a real page.
                page_count -= 1

                # If precisely one site exists, link to its homepage rather than the
                # tree root, to discourage people from trying to create pages as siblings
                # of the homepage (#1883)
                try:
                    root_page = Site.objects.get().root_page
                except (Site.DoesNotExist, Site.MultipleObjectsReturned):
                    pass
        else:
            page_count = 0

        return {
            'root_page': root_page,
            'total_pages': page_count,
            'site_name': site_name,
        }
Beispiel #2
0
    def get_context_data(self, parent_context):
        site_name = get_site_for_user(self.request.user)['site_name']

        return {
            'total_images': get_image_model().objects.count(),
            'site_name': site_name,
        }
Beispiel #3
0
    def get_context(self):
        site_name = get_site_for_user(self.request.user)['site_name']

        return {
            'total_docs': get_document_model().objects.count(),
            'site_name': site_name,
        }
Beispiel #4
0
    def get_context_data(self, parent_context):
        site_name = get_site_for_user(self.request.user)["site_name"]

        return {
            "total_images": get_image_model().objects.count(),
            "site_name": site_name,
        }
Beispiel #5
0
def home(request):

    panels = [
        SiteSummaryPanel(request),
        UpgradeNotificationPanel(request),
        WorkflowPagesToModeratePanel(request),
        PagesForModerationPanel(request),
        UserPagesInWorkflowModerationPanel(request),
        RecentEditsPanel(request),
        LockedPagesPanel(request),
    ]

    for fn in hooks.get_hooks('construct_homepage_panels'):
        fn(request, panels)

    site_details = get_site_for_user(request.user)

    return TemplateResponse(
        request, "wagtailadmin/home.html", {
            'root_page': site_details['root_page'],
            'root_site': site_details['root_site'],
            'site_name': site_details['site_name'],
            'panels': sorted(panels, key=lambda p: p.order),
            'user': request.user
        })
Beispiel #6
0
def home(request):

    panels = [
        SiteSummaryPanel(request),
        UpgradeNotificationPanel(),
        WorkflowPagesToModeratePanel(),
        PagesForModerationPanel(),
        UserPagesInWorkflowModerationPanel(),
        RecentEditsPanel(),
        LockedPagesPanel(),
    ]

    for fn in hooks.get_hooks("construct_homepage_panels"):
        fn(request, panels)

    media = Media()

    for panel in panels:
        media += panel.media

    site_details = get_site_for_user(request.user)

    return TemplateResponse(
        request,
        "wagtailadmin/home.html",
        {
            "root_page": site_details["root_page"],
            "root_site": site_details["root_site"],
            "site_name": site_details["site_name"],
            "panels": sorted(panels, key=lambda p: p.order),
            "user": request.user,
            "media": media,
        },
    )
Beispiel #7
0
    def get_site_details(self):
        request = self.request
        site = get_site_for_user(request.user)

        return {
            "root_page": site["root_page"],
            "root_site": site["root_site"],
            "site_name": site["site_name"],
        }
Beispiel #8
0
def home(request):

    panels = [
        SiteSummaryPanel(request),
        UpgradeNotificationPanel(),
        WorkflowPagesToModeratePanel(),
        PagesForModerationPanel(),
        UserPagesInWorkflowModerationPanel(),
        RecentEditsPanel(),
        LockedPagesPanel(),
    ]

    for fn in hooks.get_hooks('construct_homepage_panels'):
        fn(request, panels)

    media = Media()

    for panel in panels:
        if hasattr(panel, 'render') and not hasattr(panel, 'render_html'):
            # NOTE: when this deprecation warning is removed the 'fallback_render_method=True' in
            # wagtailadmin/home.html should be removed too
            message = (
                "Homepage panel %r should provide a render_html method. "
                "See https://docs.wagtail.org/en/stable/releases/2.15.html#template-components-2-15"
                % panel)
            warn(message, category=RemovedInWagtail217Warning)

        # RemovedInWagtail217Warning: this hasattr check can be removed when support for
        # non-component-based panels ends
        if hasattr(panel, 'media'):
            media += panel.media

    site_details = get_site_for_user(request.user)

    return TemplateResponse(
        request, "wagtailadmin/home.html", {
            'root_page': site_details['root_page'],
            'root_site': site_details['root_site'],
            'site_name': site_details['site_name'],
            'panels': sorted(panels, key=lambda p: p.order),
            'user': request.user,
            'media': media,
        })