diff --git a/envipath/settings.py b/envipath/settings.py index dd6491d0..095105a3 100644 --- a/envipath/settings.py +++ b/envipath/settings.py @@ -87,6 +87,7 @@ TEMPLATES = [ "django.template.context_processors.request", "django.contrib.auth.context_processors.auth", "django.contrib.messages.context_processors.messages", + "epdb.context_processors.package_context", ], }, }, diff --git a/epdb/context_processors.py b/epdb/context_processors.py new file mode 100644 index 00000000..77a971b3 --- /dev/null +++ b/epdb/context_processors.py @@ -0,0 +1,32 @@ +""" +Context processors for enviPy application. + +Context processors automatically make variables available to all templates. +""" + +from .logic import PackageManager +from .models import Package + + +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 = Package.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, + } diff --git a/epdb/views.py b/epdb/views.py index 08134917..306d2e0a 100644 --- a/epdb/views.py +++ b/epdb/views.py @@ -682,7 +682,6 @@ def search(request): if request.method == "GET": package_urls = request.GET.getlist("packages") searchterm = request.GET.get("search", "").strip() - mode = request.GET.get("mode") # add HTTP_ACCEPT check to differentiate between index and ajax call @@ -783,6 +782,7 @@ def package_models(request, package_uuid): elif request.method == "POST": log_post_params(request) + name = request.POST.get("model-name") description = request.POST.get("model-description") @@ -1174,7 +1174,7 @@ def package_compounds(request, package_uuid): elif request.method == "POST": compound_name = request.POST.get("compound-name") - compound_smiles = request.POST.get("compound-smiles").strip() + compound_smiles = request.POST.get("compound-smiles") compound_description = request.POST.get("compound-description") c = Compound.create(current_package, compound_smiles, compound_name, compound_description) @@ -1684,7 +1684,6 @@ def package_reactions(request, package_uuid): elif request.method == "POST": reaction_name = request.POST.get("reaction-name") reaction_description = request.POST.get("reaction-description") - reactions_smirks = request.POST.get("reaction-smirks").strip() educts = reactions_smirks.split(">>")[0].split(".") products = reactions_smirks.split(">>")[1].split(".") @@ -2259,6 +2258,7 @@ def package_pathway_edges(request, package_uuid, pathway_uuid): elif request.method == "POST": log_post_params(request) + edge_name = request.POST.get("edge-name") edge_description = request.POST.get("edge-description") diff --git a/static/css/input.css b/static/css/input.css index 43ad742b..98ad1678 100644 --- a/static/css/input.css +++ b/static/css/input.css @@ -30,6 +30,7 @@ /* Import DaisyUI plugin */ @plugin "daisyui" { logs: true; + exclude: rootscrollgutter; } @import "./daisyui-theme.css"; diff --git a/templates/framework.html b/templates/framework.html index 2f6ea7da..516d8194 100644 --- a/templates/framework.html +++ b/templates/framework.html @@ -286,7 +286,6 @@ {% block modals %} {% include "modals/cite_modal.html" %} - {% include "modals/signup_modal.html" %} {% include "modals/predict_modal.html" %} {% include "modals/batch_predict_modal.html" %} {% endblock %} diff --git a/templates/framework_modern.html b/templates/framework_modern.html index 87f008c9..bd7ffce2 100644 --- a/templates/framework_modern.html +++ b/templates/framework_modern.html @@ -1,38 +1,49 @@ - + -{% load static %} -
+ {% load static %} +