Commit Graph

1199 Commits

Author SHA1 Message Date
imperosol
1c79c25262 better tab style 2024-12-03 19:41:09 +01:00
imperosol
04b4b34bfe add back user profiles on subscription form 2024-12-03 19:41:09 +01:00
imperosol
d2d639e5f6 Split SubscriptionForm into SubscriptionNewUserForm and SubscriptionExistingUserForm 2024-12-03 19:41:09 +01:00
imperosol
75406f7b58 Tabs jinja component 2024-11-26 16:17:44 +01:00
Bartuccio Antoine
d7ae601c52
Merge pull request #911 from ae-utbm/skia/fix_user_profile_picture
core: fix user profile picture size
2024-11-21 19:13:36 +01:00
thomas girod
33b9ff78bb
Merge pull request #913 from ae-utbm/dump-accounts
Dump accounts
2024-11-21 18:39:49 +01:00
Sli
ca8c1c9d92 Mirror -index.css generation with their import location in -index.js/ts files 2024-11-19 21:22:14 +01:00
Sli
0485ab1120 Remove defer from script where type=module is used 2024-11-19 21:22:14 +01:00
Sli
8a8851847c Passage de webpack à vite.dev 2024-11-19 21:22:14 +01:00
Sli
7b41051d0d Go for a more generic js bundling architecture
* Don't tie the output name to webpack itself
* Don't call js bundling webpack in python code
* Make the doc more generic about js bundling
2024-11-19 21:22:14 +01:00
imperosol
3b39049c20 Make User.generate_username less stupid 2024-11-19 13:07:59 +01:00
imperosol
ee9f36d883 implement the dump_accounts command 2024-11-19 00:48:35 +01:00
Sli
9991f5dc64 Create nice animation when scanning nfc cards 2024-11-15 14:51:45 +01:00
Sli
fce6c3d29c Convert nfc input to a web component 2024-11-15 14:51:45 +01:00
thomas girod
37c4621e9e
Merge pull request #912 from ae-utbm/refactor_populate
Refactor populate
2024-11-13 15:43:18 +01:00
Sli
dc1e1fc897 Fix typos 2024-11-12 21:38:38 +01:00
Sli
40f2f7033e Add test for AllowFragment mixin 2024-11-11 13:49:38 +01:00
Sli
aebf909dc6 Apply review comments 2024-11-11 13:49:38 +01:00
Sli
ec7d45fd91 Add documentation for htmx 2024-11-11 13:49:38 +01:00
Sli
3af5d96bf5 Introduce htmx in sith files
* Convert FileModerationView into ListView and add pagination with htmx
* Don't allow sas moderation in file moderation view
* Split up base.jinja and introduce base_fragment.jinja
* Improve FileModerationView performances and make it root only
* Add permissions tests for file modération
2024-11-11 13:49:38 +01:00
imperosol
a97dba18c2 Reduce width of non-multiple ajax selects 2024-11-11 00:26:16 +01:00
imperosol
26770de40e Make selected option more visible 2024-11-11 00:26:16 +01:00
imperosol
486047b929 remove the honeypot from the login page
Des utilisateurs humains se font régulièrement "éclairer" par le honeypot. Les mesures anti-bot ne devraient pas bloquer des humains.
2024-11-11 00:22:07 +01:00
imperosol
b65ec6463b fix picture display in profile page 2024-11-10 16:18:56 +01:00
thomas girod
7cc13ea669
Merge pull request #899 from ae-utbm/ajax-select
Improve ajax select
2024-11-10 13:37:57 +01:00
imperosol
c2efc969d0 refactor populate.py 2024-11-10 02:59:43 +01:00
imperosol
b091fee035 custom queryset method to bulk update customer balance 2024-11-10 02:59:43 +01:00
Skia
2a0f2454f4 core: fix user profile picture size
Since 28f397574f and the removal of the
`flex-basis: 50px` property from `user_profile_pictures_thumbnails`,
the main picture was always displayed small-ish, at least on Firefox.
Setting back a flex-basis helps getting more consistent behavior once
again.
2024-11-07 15:51:43 +01:00
NaNoMelo
b9f51596e9 Add promo 25 logo 2024-11-07 13:39:24 +01:00
Sli
0610794dbe Fix ajax-select visual 2024-10-28 18:18:56 +01:00
Sli
a6b32fcad1 Fix readability and avoid instantiating too many TypeAdapter 2024-10-28 18:08:13 +01:00
Sli
e583e78a4e Convert the whole request to json at once on select widget 2024-10-21 17:11:07 +02:00
Sli
3eb3feea49 Fix deprecated usage of schema json method and avoid multiple inheritance on select widgets 2024-10-21 16:14:00 +02:00
Sli
935914428b Remove ajax_select completely 2024-10-21 13:30:12 +02:00
Sli
8b419dcee6 Remove ajax_select from core 2024-10-20 23:25:56 +02:00
Sli
e7181257e3 Remove ajax_select from core/views/forms.py 2024-10-20 23:04:54 +02:00
Sli
8e7c09332f Remove ajax_select from core/views/group.py 2024-10-20 22:58:39 +02:00
Sli
7f8a2c1eaf Remove ajax_select from counters 2024-10-20 20:55:05 +02:00
Sli
125157fdf4 Move gettext to the top 2024-10-20 18:35:55 +02:00
Sli
517263dd58 Automatically move inner html in created node when inheriting from HTMLElement 2024-10-20 18:29:48 +02:00
Sli
301fc73687 Fix markdown input initial value and crash when alpine is not loaded 2024-10-20 18:13:48 +02:00
Sli
45441c351d Improve ajax-select style 2024-10-20 17:37:51 +02:00
Sli
be5ce414ba Add proper delete button and fix item ordering 2024-10-20 16:57:38 +02:00
Sli
bb3f277ba5 Extract js and css from select widgets to editable class attributes 2024-10-20 13:40:59 +02:00
Sli
8bbebfdb13 Add AutoCompleteSelectGroup 2024-10-20 13:33:44 +02:00
Sli
0af3505c2a Make a generic AjaxSelect abstract class 2024-10-20 02:26:32 +02:00
Sli
f78b968075 Move markdown input and select widgets to a widget folder 2024-10-20 01:05:34 +02:00
Sli
e3dcad62cc Migrates lookups
* products
* files
* Groups
* Clubs
* Accounting
2024-10-20 00:47:31 +02:00
Sli
ce4f57bd8f Add ajax user widget and remove ajax_select from elections 2024-10-19 22:06:34 +02:00
Sli
8be8328830 Create select widget based on tomselect on django backend
Replace make_ajax in elections by the new widget
2024-10-19 21:32:58 +02:00
Sli
0a0092e189 Add link-once and script-once web components 2024-10-19 18:55:32 +02:00
Sli
c50f0a2ac5 Simplify ajax-select inheritance and make simple auto complete 2024-10-19 16:02:54 +02:00
Sli
6b3012d21c Fix broken sas ui in webkit based browsers 2024-10-18 23:50:04 +02:00
Sli
729f848c14 Add min-characters-for-search attribute for user-ajax-select 2024-10-18 23:34:37 +02:00
Sli
56cc4776a6 Create base class for ajax-select 2024-10-18 23:26:04 +02:00
Sli
4165f8d4af Add register decorator for web components and a better inheriting system for html elements 2024-10-17 23:14:54 +02:00
Sli
cac185634d Avoid keeping text after selecting item 2024-10-17 18:21:51 +02:00
Sli
66dceefcf0 Fix bad constructor when adding attrs that are not part of the parent and fix tom-select on safari 2024-10-17 18:15:55 +02:00
Sli
677ff51ea5 Create web component util 2024-10-17 18:15:55 +02:00
Sli
645b8a543e Make easymde compatible with safari 2024-10-17 18:15:55 +02:00
Sli
74a506c48b Add missing features
* Fix display
* Add internationalization
* Avoid querying under a certain amount of characters
* Update docs for translations with typescript
* Add interpolate to typescript globals
2024-10-17 18:15:55 +02:00
Sli
deda2b4055 Replace selec2 with tom-select 2024-10-17 18:15:55 +02:00
imperosol
5d16ba135a fix: xss on select2 results 2024-10-17 08:15:34 +02:00
thomas girod
d16a207a83
Add more Ruff rules (#891)
* ruff: apply rule F

* ruff: apply rule E

* ruff: apply rule SIM

* ruff: apply rule TCH

* ruff: apply rule ERA

* ruff: apply rule PLW

* ruff: apply rule FLY

* ruff: apply rule PERF

* ruff: apply rules FURB & RUF
2024-10-15 11:36:26 +02:00
Sli
d114b01bcc Make sure Alpine is always loaded when using markdown-input component 2024-10-15 00:28:43 +02:00
Sli
dee54c3b41 Use manifest storage and correct webpack conversion on easymde form 2024-10-15 00:28:43 +02:00
Sli
670d2fa12e Use a web component for easymde
* Bump tsconfig output to es6
* Fix wrong import behavior on typescript according to webpack's doc
* Create an easymde component
2024-10-15 00:28:43 +02:00
thomas girod
496ad7ce9b
Merge pull request #868 from ae-utbm/delete-picture-confirm-button
Delete picture confirm button
2024-10-14 14:12:50 +02:00
Sli
0b31b215f6 Remove check_front command 2024-10-14 00:55:48 +02:00
Sli
7e1734aed5 Migrate chartjs to npm 2024-10-14 00:55:48 +02:00
imperosol
19cd51043a feat: display moderation requests to moderators 2024-10-14 00:47:07 +02:00
Sli
361a06e5b3 Migrate sentry to webpack 2024-10-13 17:14:21 +02:00
thomas girod
143713fac1
Merge pull request #878 from ae-utbm/fix-invoices
fix: InvoiceQuerySet.annotate_total() (but this time good)
2024-10-13 11:57:59 +02:00
imperosol
e4845b580b fix: invoices month grouping 2024-10-13 11:47:22 +02:00
Sli
40c623b202 Optimize select2 import 2024-10-13 10:55:15 +02:00
Sli
b6e1c3bc88 Add helper function to export ts functions to html 2024-10-13 10:55:15 +02:00
Sli
3b1d06a71d Update select2 documentation 2024-10-13 10:55:15 +02:00
Sli
a5d8c96bab Remove select2 from vendored
* Make core/utils/select2.ts
* Convert viewer-index.js to typescript
2024-10-13 10:55:15 +02:00
imperosol
564d95f701 fix: InvoiceQuerySet.annotate_total() (but for real this time) 2024-10-13 10:37:48 +02:00
Sli
f07a855e7e Remove history management from script.js and migrate sas albums to webpack 2024-10-12 19:19:23 +02:00
thomas girod
2fa9daf627
Merge pull request #872 from ae-utbm/invoices-bug
fix: InvoiceQuerySet.annotate_total()
2024-10-12 19:18:37 +02:00
NaNoMelo
a1bae7ced3 fix empty options in paginated with typescript 2024-10-12 18:59:06 +02:00
imperosol
7312580a8d fix: InvoiceQuerySet.annotate_total() 2024-10-12 15:52:40 +02:00
imperosol
465e0f31d9 write command test 2024-10-11 09:57:46 +02:00
imperosol
6a64e05247 select inactive users 2024-10-11 09:45:54 +02:00
thomas girod
81a64eed08
Merge pull request #867 from ae-utbm/barmen-link
Better UX and performance for counter state display
2024-10-11 09:31:12 +02:00
Bartuccio Antoine
29b27dc626
Merge pull request #866 from ae-utbm/openapi
Typescript support and auto generated typescript client API
2024-10-11 09:30:35 +02:00
imperosol
ca25a12be0 Increase the barmen timeout limit
La limite actuelle est trop faible. En soirée, on s'en fout. Mais en journée, c'est terriblement chiant. Certains barmens passent leur temps à rafraichir la la page, certains mettent un rechargement auto à intervalles réguliers (ce qui tue le concept du timeout), et d'autres encore ont juste arrêté d'y prêter attention (mais le comptoir apparait alors comme fermé, et des étudiants qui auraient pu venir au Foyer ne viennent finalement pas)
2024-10-10 19:38:49 +02:00
imperosol
c0a6f5eb30 Optimize barmen timeout and counter state fetch
Le timeout se fait en une seule requête et la récupération de l'état des comptoirs en une seule requête aussi. Grâce à ça, on peut en grande partie retirer le cache pour l'affichage de l'état des comptoirs, ce qui a des implications excellentes en termes d'UX (comme le fait que la redirection vers la page de comptoir ou d'activité aura plus une apparence de truc aléatoire)
2024-10-10 19:38:49 +02:00
imperosol
4bc4d266c2 Remove the question mark from the counter state
En raison de la manière dont le timeout marche et de l'activité des comptoirs, la notion de "comptoir inactif" n'est pas intuitive. Un comptoir est ouvert ou fermé. Point.
2024-10-10 19:37:00 +02:00
Sli
579d077b35 Fix docstring 2024-10-10 15:45:43 +02:00
Sli
32444fac90 Apply review comments 2024-10-10 15:42:11 +02:00
Sli
849177562d Add a way to get the base url of an endpoint 2024-10-10 02:57:54 +02:00
Sli
46e58bb49e Remove fetchPaginated and migrate viewer.js to viewer-index.js in webpack 2024-10-09 21:46:56 +02:00
Sli
9199f91151 Use typescript api for user pictures and allow imports across js files
* Add imports paths for js files in node
* Add a ts version of fetchPaginated
* Update documentation
2024-10-09 20:59:12 +02:00
Sli
37f62e15cf Use new typescript api for user graphs 2024-10-09 17:21:05 +02:00
Sli
a98c924b24 Use auto generated api for markdown input 2024-10-09 16:56:53 +02:00
Sli
a71ca60270 Add typescript support and automatic openapi client generation from ninja 2024-10-09 16:28:54 +02:00
thomas girod
12bb7e9294 remove stock application 2024-10-09 14:50:41 +02:00
Sli
6f4e93bb76 Use configuration object for load builders 2024-10-09 12:14:10 +02:00