mirror of
https://github.com/ae-utbm/sith.git
synced 2024-11-15 02:33:22 +00:00
Remove ajax_select completely
This commit is contained in:
parent
ab63ba1c54
commit
935914428b
141
core/lookups.py
141
core/lookups.py
@ -1,141 +0,0 @@
|
|||||||
#
|
|
||||||
# Copyright 2023 © AE UTBM
|
|
||||||
# ae@utbm.fr / ae.info@utbm.fr
|
|
||||||
#
|
|
||||||
# This file is part of the website of the UTBM Student Association (AE UTBM),
|
|
||||||
# https://ae.utbm.fr.
|
|
||||||
#
|
|
||||||
# You can find the source code of the website at https://github.com/ae-utbm/sith
|
|
||||||
#
|
|
||||||
# LICENSED UNDER THE GNU GENERAL PUBLIC LICENSE VERSION 3 (GPLv3)
|
|
||||||
# SEE : https://raw.githubusercontent.com/ae-utbm/sith/master/LICENSE
|
|
||||||
# OR WITHIN THE LOCAL FILE "LICENSE"
|
|
||||||
#
|
|
||||||
#
|
|
||||||
|
|
||||||
from ajax_select import LookupChannel, register
|
|
||||||
from django.core.exceptions import PermissionDenied
|
|
||||||
|
|
||||||
from accounting.models import ClubAccount, Company
|
|
||||||
from club.models import Club
|
|
||||||
from core.models import Group, SithFile, User
|
|
||||||
from core.views.site import search_user
|
|
||||||
from counter.models import Counter, Customer, Product
|
|
||||||
from counter.utils import is_logged_in_counter
|
|
||||||
|
|
||||||
|
|
||||||
class RightManagedLookupChannel(LookupChannel):
|
|
||||||
def check_auth(self, request):
|
|
||||||
if not request.user.was_subscribed and not is_logged_in_counter(request):
|
|
||||||
raise PermissionDenied
|
|
||||||
|
|
||||||
|
|
||||||
@register("users") # Migrated
|
|
||||||
class UsersLookup(RightManagedLookupChannel):
|
|
||||||
model = User
|
|
||||||
|
|
||||||
def get_query(self, q, request):
|
|
||||||
return search_user(q)
|
|
||||||
|
|
||||||
def format_match(self, obj):
|
|
||||||
return obj.get_mini_item()
|
|
||||||
|
|
||||||
def format_item_display(self, item):
|
|
||||||
return item.get_display_name()
|
|
||||||
|
|
||||||
|
|
||||||
@register("customers") # Never used
|
|
||||||
class CustomerLookup(RightManagedLookupChannel):
|
|
||||||
model = Customer
|
|
||||||
|
|
||||||
def get_query(self, q, request):
|
|
||||||
return list(Customer.objects.filter(user__in=search_user(q)))
|
|
||||||
|
|
||||||
def format_match(self, obj):
|
|
||||||
return obj.user.get_mini_item()
|
|
||||||
|
|
||||||
def format_item_display(self, obj):
|
|
||||||
return f"{obj.user.get_display_name()} ({obj.account_id})"
|
|
||||||
|
|
||||||
|
|
||||||
@register("groups") # Migrated
|
|
||||||
class GroupsLookup(RightManagedLookupChannel):
|
|
||||||
model = Group
|
|
||||||
|
|
||||||
def get_query(self, q, request):
|
|
||||||
return self.model.objects.filter(name__icontains=q)[:50]
|
|
||||||
|
|
||||||
def format_match(self, obj):
|
|
||||||
return obj.name
|
|
||||||
|
|
||||||
def format_item_display(self, item):
|
|
||||||
return item.name
|
|
||||||
|
|
||||||
|
|
||||||
@register("clubs") # Migrated
|
|
||||||
class ClubLookup(RightManagedLookupChannel):
|
|
||||||
model = Club
|
|
||||||
|
|
||||||
def get_query(self, q, request):
|
|
||||||
return self.model.objects.filter(name__icontains=q)[:50]
|
|
||||||
|
|
||||||
def format_match(self, obj):
|
|
||||||
return obj.name
|
|
||||||
|
|
||||||
def format_item_display(self, item):
|
|
||||||
return item.name
|
|
||||||
|
|
||||||
|
|
||||||
@register("counters") # Migrated
|
|
||||||
class CountersLookup(RightManagedLookupChannel):
|
|
||||||
model = Counter
|
|
||||||
|
|
||||||
def get_query(self, q, request):
|
|
||||||
return self.model.objects.filter(name__icontains=q)[:50]
|
|
||||||
|
|
||||||
def format_item_display(self, item):
|
|
||||||
return item.name
|
|
||||||
|
|
||||||
|
|
||||||
@register("products") # Migrated
|
|
||||||
class ProductsLookup(RightManagedLookupChannel):
|
|
||||||
model = Product
|
|
||||||
|
|
||||||
def get_query(self, q, request):
|
|
||||||
return (
|
|
||||||
self.model.objects.filter(name__icontains=q)
|
|
||||||
| self.model.objects.filter(code__icontains=q)
|
|
||||||
).filter(archived=False)[:50]
|
|
||||||
|
|
||||||
def format_item_display(self, item):
|
|
||||||
return "%s (%s)" % (item.name, item.code)
|
|
||||||
|
|
||||||
|
|
||||||
@register("files") # Migrated
|
|
||||||
class SithFileLookup(RightManagedLookupChannel):
|
|
||||||
model = SithFile
|
|
||||||
|
|
||||||
def get_query(self, q, request):
|
|
||||||
return self.model.objects.filter(name__icontains=q)[:50]
|
|
||||||
|
|
||||||
|
|
||||||
@register("club_accounts") # Migrated
|
|
||||||
class ClubAccountLookup(RightManagedLookupChannel):
|
|
||||||
model = ClubAccount
|
|
||||||
|
|
||||||
def get_query(self, q, request):
|
|
||||||
return self.model.objects.filter(name__icontains=q)[:50]
|
|
||||||
|
|
||||||
def format_item_display(self, item):
|
|
||||||
return item.name
|
|
||||||
|
|
||||||
|
|
||||||
@register("companies") # Migrated
|
|
||||||
class CompaniesLookup(RightManagedLookupChannel):
|
|
||||||
model = Company
|
|
||||||
|
|
||||||
def get_query(self, q, request):
|
|
||||||
return self.model.objects.filter(name__icontains=q)[:50]
|
|
||||||
|
|
||||||
def format_item_display(self, item):
|
|
||||||
return item.name
|
|
@ -7,7 +7,6 @@
|
|||||||
<link rel="shortcut icon" href="{{ static('core/img/favicon.ico') }}">
|
<link rel="shortcut icon" href="{{ static('core/img/favicon.ico') }}">
|
||||||
<link rel="stylesheet" href="{{ static('user/user_stats.scss') }}">
|
<link rel="stylesheet" href="{{ static('user/user_stats.scss') }}">
|
||||||
<link rel="stylesheet" href="{{ static('core/base.css') }}">
|
<link rel="stylesheet" href="{{ static('core/base.css') }}">
|
||||||
<link rel="stylesheet" href="{{ static('ajax_select/css/ajax_select.css') }}">
|
|
||||||
<link rel="stylesheet" href="{{ static('core/style.scss') }}">
|
<link rel="stylesheet" href="{{ static('core/style.scss') }}">
|
||||||
<link rel="stylesheet" href="{{ static('core/markdown.scss') }}">
|
<link rel="stylesheet" href="{{ static('core/markdown.scss') }}">
|
||||||
<link rel="stylesheet" href="{{ static('core/header.scss') }}">
|
<link rel="stylesheet" href="{{ static('core/header.scss') }}">
|
||||||
@ -303,7 +302,6 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% block script %}
|
{% block script %}
|
||||||
<script src="{{ static('ajax_select/js/ajax_select.js') }}"></script>
|
|
||||||
<script>
|
<script>
|
||||||
function showMenu() {
|
function showMenu() {
|
||||||
let navbar = document.getElementById("navbar-content");
|
let navbar = document.getElementById("navbar-content");
|
||||||
|
12
poetry.lock
generated
12
poetry.lock
generated
@ -520,16 +520,6 @@ tzdata = {version = "*", markers = "sys_platform == \"win32\""}
|
|||||||
argon2 = ["argon2-cffi (>=19.1.0)"]
|
argon2 = ["argon2-cffi (>=19.1.0)"]
|
||||||
bcrypt = ["bcrypt"]
|
bcrypt = ["bcrypt"]
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "django-ajax-selects"
|
|
||||||
version = "2.2.1"
|
|
||||||
description = "Edit ForeignKey, ManyToManyField and CharField in Django Admin using jQuery UI AutoComplete."
|
|
||||||
optional = false
|
|
||||||
python-versions = "*"
|
|
||||||
files = [
|
|
||||||
{file = "django-ajax-selects-2.2.1.tar.gz", hash = "sha256:996ffb38dff1a621b358613afdf2681dbf261e5976da3c30a75e9b08fd81a887"},
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "django-countries"
|
name = "django-countries"
|
||||||
version = "7.6.1"
|
version = "7.6.1"
|
||||||
@ -2691,4 +2681,4 @@ filelock = ">=3.4"
|
|||||||
[metadata]
|
[metadata]
|
||||||
lock-version = "2.0"
|
lock-version = "2.0"
|
||||||
python-versions = "^3.12"
|
python-versions = "^3.12"
|
||||||
content-hash = "cb47f6409e629d8369a19d82f44a57dbe9414c79e6e72bd88a6bcb34d78f0bc0"
|
content-hash = "e64ed169395d2c32672a2f2ad6a40d0910e4a51941b564fbdc505db6332084d2"
|
||||||
|
@ -30,7 +30,6 @@ django-jinja = "^2.11"
|
|||||||
cryptography = "^43.0.0"
|
cryptography = "^43.0.0"
|
||||||
django-phonenumber-field = "^8.0.0"
|
django-phonenumber-field = "^8.0.0"
|
||||||
phonenumbers = "^8.13"
|
phonenumbers = "^8.13"
|
||||||
django-ajax-selects = "^2.2.1"
|
|
||||||
reportlab = "^4.2"
|
reportlab = "^4.2"
|
||||||
django-haystack = "^3.2.1"
|
django-haystack = "^3.2.1"
|
||||||
xapian-haystack = "^3.0.1"
|
xapian-haystack = "^3.0.1"
|
||||||
|
@ -81,7 +81,6 @@ INSTALLED_APPS = (
|
|||||||
"honeypot",
|
"honeypot",
|
||||||
"django_jinja",
|
"django_jinja",
|
||||||
"ninja_extra",
|
"ninja_extra",
|
||||||
"ajax_select",
|
|
||||||
"haystack",
|
"haystack",
|
||||||
"captcha",
|
"captcha",
|
||||||
"core",
|
"core",
|
||||||
|
@ -13,7 +13,6 @@
|
|||||||
#
|
#
|
||||||
#
|
#
|
||||||
|
|
||||||
from ajax_select import urls as ajax_select_urls
|
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.conf.urls.static import static
|
from django.conf.urls.static import static
|
||||||
from django.contrib import admin
|
from django.contrib import admin
|
||||||
@ -59,7 +58,6 @@ urlpatterns = [
|
|||||||
path("matmatronch/", include(("matmat.urls", "matmat"), namespace="matmat")),
|
path("matmatronch/", include(("matmat.urls", "matmat"), namespace="matmat")),
|
||||||
path("pedagogy/", include(("pedagogy.urls", "pedagogy"), namespace="pedagogy")),
|
path("pedagogy/", include(("pedagogy.urls", "pedagogy"), namespace="pedagogy")),
|
||||||
path("admin/", admin.site.urls),
|
path("admin/", admin.site.urls),
|
||||||
path("ajax_select/", include(ajax_select_urls)),
|
|
||||||
path("i18n/", include("django.conf.urls.i18n")),
|
path("i18n/", include("django.conf.urls.i18n")),
|
||||||
path("jsi18n/", JavaScriptCatalog.as_view(), name="javascript-catalog"),
|
path("jsi18n/", JavaScriptCatalog.as_view(), name="javascript-catalog"),
|
||||||
path("captcha/", include("captcha.urls")),
|
path("captcha/", include("captcha.urls")),
|
||||||
|
Loading…
Reference in New Issue
Block a user