By default, Django doesn't run any context processors for server errors, to make the error path as simple as possible. However, this has the downside that our template does not load correctly. To fix this, I added a custom 500 error handler, which will run the context processor. Fixes: #2736
168 lines
5 KiB
Python
168 lines
5 KiB
Python
""" make sure all our nice views are available """
|
|
# site admin
|
|
from .admin.announcements import Announcements, Announcement
|
|
from .admin.announcements import EditAnnouncement, delete_announcement
|
|
from .admin.automod import AutoMod, automod_delete, run_automod
|
|
from .admin.automod import schedule_automod_task, unschedule_automod_task
|
|
from .admin.celery_status import CeleryStatus, celery_ping
|
|
from .admin.dashboard import Dashboard
|
|
from .admin.federation import Federation, FederatedServer
|
|
from .admin.federation import AddFederatedServer, ImportServerBlocklist
|
|
from .admin.federation import block_server, unblock_server, refresh_server
|
|
from .admin.email_blocklist import EmailBlocklist
|
|
from .admin.email_config import EmailConfig
|
|
from .admin.imports import (
|
|
ImportList,
|
|
disable_imports,
|
|
enable_imports,
|
|
set_import_size_limit,
|
|
)
|
|
from .admin.ip_blocklist import IPBlocklist
|
|
from .admin.invite import ManageInvites, Invite, InviteRequest
|
|
from .admin.invite import ManageInviteRequests, ignore_invite_request
|
|
from .admin.link_domains import LinkDomain, update_domain_status
|
|
from .admin.reports import (
|
|
ReportAdmin,
|
|
ReportsAdmin,
|
|
resolve_report,
|
|
suspend_user,
|
|
unsuspend_user,
|
|
moderator_delete_user,
|
|
)
|
|
from .admin.site import Site, Registration, RegistrationLimited
|
|
from .admin.themes import Themes, delete_theme
|
|
from .admin.user_admin import UserAdmin, UserAdminList, ActivateUserAdmin
|
|
|
|
# user preferences
|
|
from .preferences.change_password import ChangePassword
|
|
from .preferences.edit_user import EditUser
|
|
from .preferences.export import Export
|
|
from .preferences.delete_user import DeleteUser, DeactivateUser, ReactivateUser
|
|
from .preferences.block import Block, unblock
|
|
from .preferences.two_factor_auth import (
|
|
Edit2FA,
|
|
Confirm2FA,
|
|
Disable2FA,
|
|
GenerateBackupCodes,
|
|
LoginWith2FA,
|
|
Prompt2FA,
|
|
)
|
|
|
|
# books
|
|
from .books.books import (
|
|
Book,
|
|
upload_cover,
|
|
add_description,
|
|
resolve_book,
|
|
)
|
|
from .books.series import BookSeriesBy
|
|
from .books.books import update_book_from_remote
|
|
from .books.edit_book import (
|
|
EditBook,
|
|
ConfirmEditBook,
|
|
CreateBook,
|
|
create_book_from_data,
|
|
)
|
|
from .books.editions import Editions, switch_edition
|
|
from .books.links import BookFileLinks, AddFileLink, delete_link
|
|
|
|
# landing
|
|
from .landing.about import about, privacy, conduct, impressum
|
|
from .landing.landing import Home, Landing
|
|
from .landing.login import Login, Logout
|
|
from .landing.register import Register
|
|
from .landing.register import ConfirmEmail, ConfirmEmailCode, ResendConfirmEmail
|
|
from .landing.password import PasswordResetRequest, PasswordReset
|
|
|
|
# shelves
|
|
from .shelf.shelf import Shelf
|
|
from .shelf.shelf_actions import create_shelf, delete_shelf
|
|
from .shelf.shelf_actions import shelve, unshelve
|
|
|
|
# csv import
|
|
from .imports.import_data import Import
|
|
from .imports.import_status import ImportStatus, retry_item, stop_import
|
|
from .imports.troubleshoot import ImportTroubleshoot
|
|
from .imports.manually_review import (
|
|
ImportManualReview,
|
|
approve_import_item,
|
|
delete_import_item,
|
|
)
|
|
|
|
# lists
|
|
from .list.curate import Curate
|
|
from .list.embed import unsafe_embed_list
|
|
from .list.list_item import ListItem
|
|
from .list.lists import Lists, SavedLists, UserLists
|
|
from .list.list import (
|
|
List,
|
|
save_list,
|
|
unsave_list,
|
|
delete_list,
|
|
add_book,
|
|
remove_book,
|
|
set_book_position,
|
|
)
|
|
|
|
# misc views
|
|
from .author import Author, EditAuthor, update_author_from_remote
|
|
from .directory import Directory
|
|
from .discover import Discover
|
|
from .feed import DirectMessage, Feed, Replies, Status
|
|
from .follow import (
|
|
follow,
|
|
unfollow,
|
|
ostatus_follow_request,
|
|
ostatus_follow_success,
|
|
remote_follow,
|
|
remote_follow_page,
|
|
)
|
|
from .follow import accept_follow_request, delete_follow_request
|
|
from .get_started import GetStartedBooks, GetStartedProfile, GetStartedUsers
|
|
from .goal import Goal, hide_goal
|
|
from .group import (
|
|
Group,
|
|
UserGroups,
|
|
FindUsers,
|
|
delete_group,
|
|
invite_member,
|
|
remove_member,
|
|
accept_membership,
|
|
reject_membership,
|
|
)
|
|
from .hashtag import Hashtag
|
|
from .inbox import Inbox
|
|
from .interaction import Favorite, Unfavorite, Boost, Unboost
|
|
from .isbn import Isbn
|
|
from .notifications import Notifications
|
|
from .outbox import Outbox
|
|
from .reading import ReadThrough, delete_readthrough, delete_progressupdate
|
|
from .reading import ReadingStatus
|
|
from .report import Report
|
|
from .rss_feed import (
|
|
RssFeed,
|
|
RssReviewsOnlyFeed,
|
|
RssQuotesOnlyFeed,
|
|
RssCommentsOnlyFeed,
|
|
)
|
|
from .search import Search
|
|
from .setup import InstanceConfig, CreateAdmin
|
|
from .status import CreateStatus, EditStatus, DeleteStatus, update_progress
|
|
from .status import edit_readthrough
|
|
from .updates import get_notification_count, get_unread_status_string
|
|
from .user import (
|
|
User,
|
|
UserReviewsComments,
|
|
hide_suggestions,
|
|
user_redirect,
|
|
toggle_guided_tour,
|
|
)
|
|
from .relationships import Relationships
|
|
from .wellknown import *
|
|
from .annual_summary import (
|
|
AnnualSummary,
|
|
personal_annual_summary,
|
|
summary_add_key,
|
|
summary_revoke_key,
|
|
)
|
|
from .server_error import server_error
|