Source code for nlpmed_portal.context_processors
# SPDX-FileCopyrightText: Copyright (C) 2026 Omid Jafari <omidjafari.com>
# SPDX-License-Identifier: AGPL-3.0-or-later
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
from django.conf import settings
from django.core.cache import cache
from nlpmed_portal.management.models import SystemMessage
_SYSTEM_MESSAGE_CACHE_KEY = "system_message_text"
[docs]
def general_settings(request):
"""Expose some general settings in templates."""
return {
"APP_VERSION": settings.APP_VERSION,
"DEMO": settings.DEMO,
}
[docs]
def system_message(request):
msg = cache.get(_SYSTEM_MESSAGE_CACHE_KEY)
if msg is None:
msg = SystemMessage.solo().message.strip()
cache.set(_SYSTEM_MESSAGE_CACHE_KEY, msg, timeout=None)
return {"SYSTEM_MESSAGE": msg}