From 7e90e657a7d7c022df55c7ff28774627606d77f9 Mon Sep 17 00:00:00 2001 From: Skia Date: Fri, 19 Aug 2016 23:24:23 +0200 Subject: [PATCH] Add ajax-select app and improve some templates --- core/lookups.py | 39 +++ core/models.py | 14 + core/static/core/form.css | 192 ------------- core/static/core/style.css | 46 +-- core/templates/core/base.jinja | 3 +- core/templates/core/macros.jinja | 21 ++ core/templates/core/user_detail.jinja | 48 ++-- core/templates/core/user_edit.jinja | 8 +- core/templates/core/user_mini.jinja | 20 +- core/urls.py | 1 + core/views/forms.py | 14 + core/views/site.py | 41 ++- counter/migrations/0014_auto_20160819_1650.py | 24 ++ counter/templates/counter/counter_click.jinja | 51 +++- counter/templates/counter/counter_edit.jinja | 19 ++ counter/templates/counter/counter_list.jinja | 14 +- counter/urls.py | 1 + counter/views.py | 43 ++- locale/fr/LC_MESSAGES/django.mo | Bin 28173 -> 28360 bytes locale/fr/LC_MESSAGES/django.po | 261 ++++++++++-------- migrate.py | 2 +- sith/settings_sample.py | 1 + sith/urls.py | 2 + .../templates/subscription/subscription.jinja | 4 +- subscription/views.py | 10 + 25 files changed, 468 insertions(+), 411 deletions(-) create mode 100644 core/lookups.py delete mode 100644 core/static/core/form.css create mode 100644 counter/migrations/0014_auto_20160819_1650.py create mode 100644 counter/templates/counter/counter_edit.jinja diff --git a/core/lookups.py b/core/lookups.py new file mode 100644 index 00000000..1e061674 --- /dev/null +++ b/core/lookups.py @@ -0,0 +1,39 @@ +from ajax_select import register, LookupChannel + +from core.views.site import search_user +from core.models import User +from counter.models import Product, Counter + +@register('users') +class UsersLookup(LookupChannel): + 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('counters') +class CountersLookup(LookupChannel): + 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') +class ProductsLookup(LookupChannel): + model = Product + + def get_query(self, q, request): + print(request.__dict__) + return (self.model.objects.filter(name__icontains=q) | self.model.objects.filter(code__icontains=q))[:50] + + def format_item_display(self, item): + return item.name diff --git a/core/models.py b/core/models.py index 62c3a3d5..c3135377 100644 --- a/core/models.py +++ b/core/models.py @@ -351,6 +351,20 @@ class User(AbstractBaseUser): def can_be_edited_by(self, user): return user.is_in_group(settings.SITH_MAIN_BOARD_GROUP) or user.is_root + def get_mini_item(self): + return """ +