forked from enviPath/enviPy
Co-authored-by: Tim Lorsbach <tim@lorsba.ch> Reviewed-on: enviPath/enviPy#216 Reviewed-by: liambrydon <lbry121@aucklanduni.ac.nz> Reviewed-by: Tobias O <tobias.olenyi@envipath.com>
33 lines
915 B
Python
33 lines
915 B
Python
"""
|
|
Context processors for enviPy application.
|
|
|
|
Context processors automatically make variables available to all templates.
|
|
"""
|
|
|
|
from .logic import PackageManager
|
|
from django.conf import settings as s
|
|
|
|
|
|
def package_context(request):
|
|
"""
|
|
Provides package data for the search modal which is included globally
|
|
in framework_modern.html.
|
|
|
|
Returns:
|
|
dict: Context dictionary with reviewed and unreviewed packages
|
|
"""
|
|
current_user = request.user
|
|
|
|
reviewed_package_qs = PackageManager.get_reviewed_packages()
|
|
|
|
unreviewed_package_qs = s.GET_PACKAGE_MODEL().objects.none()
|
|
|
|
# Only get user-specific packages if user is authenticated
|
|
if current_user.is_authenticated:
|
|
unreviewed_package_qs = PackageManager.get_all_readable_packages(current_user)
|
|
|
|
return {
|
|
"reviewed_packages": reviewed_package_qs,
|
|
"unreviewed_packages": unreviewed_package_qs,
|
|
}
|