Commit graph

544 commits

Author SHA1 Message Date
Aurélien Delobelle 38539a9d53 Name url to export calendar to ical 2018-01-21 18:19:43 +01:00
Aurélien Delobelle acf284862a Users should be able to refuse to subscribe to shows and events 2018-01-21 18:17:27 +01:00
Aurélien Delobelle 2e6a54c7db cof -- Add tests for calendar views 2018-01-21 18:17:26 +01:00
Aurélien Delobelle bbe46645f7 cof -- Fix the club list view 2018-01-20 22:24:25 +01:00
Aurélien Delobelle a5071aa257 cof -- Add tests for club views 2018-01-20 22:24:13 +01:00
Evarin 8551ffcfd3 Merge branch 'master' into evarin/site-cof 2018-01-20 19:37:12 +01:00
Evarin ea495e8f29 Archives beta 2018-01-20 19:33:50 +01:00
Aurélien Delobelle 4084444dc3 Fix autocomplete in registration views.
django-autocomplete-light v3.x doesn't include anymore the
$('').yourlabsAutocomplete() function, leading to issues in cof
registration and kfet account creation views.

Adding jquery-autocomplete-light fixes these issues.

See:
- (dal) https://github.com/yourlabs/django-autocomplete-light
- (jal) https://github.com/yourlabs/jquery-autocomplete-light
2018-01-20 17:29:15 +01:00
Aurélien Delobelle 7bf2f73e72 Merge branch 'aureplop/cof_tests' into aureplop/cof-tests_registration 2018-01-20 17:02:54 +01:00
Aurélien Delobelle c239f28f17 syncmails should be able to be silent 2018-01-20 17:02:23 +01:00
Aurélien Delobelle 0921f32e4c cof -- Fix urls naming related to registration 2018-01-20 16:17:57 +01:00
Aurélien Delobelle 7160a9c954 cof -- Add tests for registration views 2018-01-20 16:14:55 +01:00
Aurélien Delobelle dfb9ccb0af Fix use of Widget.build_attrs in TriStateCheckbox
Signature changed in Django 1.11.
2018-01-19 18:41:06 +01:00
Aurélien Delobelle a6f52cfdc5 cof -- Fix urls naming in event template 2018-01-19 18:38:34 +01:00
Aurélien Delobelle f5b280896f cof -- Add tests for event views 2018-01-19 18:36:03 +01:00
Aurélien Delobelle ce73499077 Fix use of Widget.build_attrs in TriStateCheckbox
Signature changed in Django 1.11.
2018-01-19 18:15:57 +01:00
Aurélien Delobelle 8675948d9e cof -- Fix urls naming in survey templates 2018-01-19 18:01:36 +01:00
Aurélien Delobelle 57de31d59a cof -- Add tests for survey views 2018-01-19 17:57:43 +01:00
Aurélien Delobelle 776ff28141 cof -- Add helpers to test cof views. 2018-01-19 17:52:08 +01:00
Aurélien Delobelle 42e762bc4a Py3 allows to shorten super() 2018-01-16 16:50:27 +01:00
Martin Pépin 5a5b60ec4d Merge branch 'master' into Kerl/drop_py2_compat 2018-01-10 20:12:59 +01:00
Ludovic Stephan 501d592d2f Merge branch 'master' into Aufinal/bda_fixes 2018-01-10 20:00:34 +01:00
Martin Pépin c80e63415b Load custommails before bda tests 2018-01-07 14:30:33 +01:00
Martin Pépin 57411ab46f Remove __future__ imports 2018-01-06 16:10:13 +01:00
Martin Pépin 475f1adec5 Remove "coding: utf8" line 2018-01-06 16:10:13 +01:00
Aurélien Delobelle b0b0542407 Upgrade to Django 1.11
- Deprecation warnings using Django 1.8 are resolved.
- Deprecation warnings using Django 1.11 are resolved.

- Admin: grappelli is no longer used.
- Upgrade to django-autocomplete-light v3 (v2 is not 1.11 compatible).
  * autocomplete.modelform_factory being dropped, code uses dal Select2
    views and widgets.
2017-11-19 18:41:39 +01:00
Martin Pépin f18959c0a1 BdA-Revente: meaningful names, some help tests 2017-11-01 17:26:40 +01:00
Martin Pépin e1794a654f Merge branch 'master' into Aufinal/bda_fixes 2017-11-01 11:25:52 +01:00
Martin Pépin 1a136088bf Add missing type in custommail (dev only) 2017-10-25 22:08:29 +02:00
Martin Pépin a07b5308a3 PetitCoursAttributionCounter defaults to 0 2017-10-25 22:01:58 +02:00
Aurélien Delobelle 1cc51f17a3 Prevent connection to LDAP when settings is None 2017-10-24 17:55:02 +02:00
Ludovic Stephan 1b0e4285ec Reverse match fix 2017-10-23 20:26:07 +02:00
Ludovic Stephan e74dbb11f1 Organize revente files and function names 2017-10-23 18:39:45 +02:00
Ludovic Stephan 732e47707e Add unsubscribe option + list of current draws 2017-10-23 17:25:58 +02:00
Evarin adf43889e1 Fixtures site cof 2017-10-23 11:05:49 +02:00
Martin Pépin b9aaea0f99 Merge branch 'master' into Production 2017-10-16 14:26:05 +02:00
Evarin 5a22b1cd37 Affichage des actus 2017-10-10 11:22:02 +02:00
Martin Pépin 435e211b3d Add a "PEI" status + "Gratis" subscription fees 2017-10-02 13:58:52 +02:00
Evarin 0e19abb51a Cleaner homepage 2017-09-27 23:58:50 +02:00
Martin Pépin 6f2652c485 Prod quick hack for Mega export 2017-09-20 18:23:36 +02:00
Martin Pépin 937a485704 Merge branch 'master' into Production 2017-09-09 22:03:32 +02:00
Martin Pépin 439f49c3ba We ♥ hardcoding stuff… 2017-09-05 15:21:19 +02:00
Martin Pépin 51f4bf3fb5 Clipper logins may be > 8 characters 2017-09-04 13:25:09 +02:00
Evarin 38af50a866 Nouvelles couleurs 2017-08-29 17:58:44 +02:00
Evarin 7853987ebb Plus de templates, plus joli 2017-08-26 18:05:20 +02:00
Evarin 09e63bf00c Actus et listes de clubs plus jolies et fonctionnelles, calendriers (beta) 2017-08-22 00:58:18 +02:00
Evarin 53658589f8 Nouvelles couleurs, Plus de templates, Calendrier (sommaire) 2017-08-20 00:39:19 +02:00
Evarin f5778fed2a Modèles plus cleans et templates principaux 2017-08-19 01:32:26 +02:00
Evarin 6023211ab0 Models des pages et traductions 2017-08-09 00:07:56 +02:00
Evarin 65d7a66eb8 Début nouveau site cof 2017-08-07 23:31:27 +02:00
Aurélien Delobelle 455b730cc3 Merge branch 'master' into aureplop/kfet_cms 2017-06-23 02:53:05 +02:00
Aurélien Delobelle d004287957 Merge branch 'master' into aureplop/kfet_cms 2017-06-12 02:04:28 +02:00
Martin Pépin 31c034a96a send_rappel: use django messages + css tweaks 2017-06-02 19:14:06 +01:00
Aurélien Delobelle 6e82a2cf88 minor fix 2017-05-31 22:00:51 +02:00
Aurélien Delobelle 8c6d56b27c Add Wagtail CMS for kfet app.
K-Fêt
- Integrate wagtail to serve "static" pages of old K-Fêt website
- Fixture "kfetcms/kfet_wagtail_17_05" contains a copy of old website
(as in May 2017).
- Media files can be got until end of June 17 at
http://partage.eleves.ens.fr//files/604e6dea2ceebc66b1936c6b3f911744/kfet_media.tar.gz

Login/logout
- Update package django_cas_ng to last version.
- Clean COFCASBackend.
- Change CAS version to 3 (version used on eleves.ens). This enables
the logout redirection (for CAS ofc).
- Add messages and clean existing ones on login/logout (for both
outsider and cas users).

Misc
- Update settings to bypass an incompability between debug-toolbar and
wagtailmenus packages.
- Better management of dev/test-specific urls (if debug-toolbar wasn't in
INSTALLED_APPS, media files were not served).
- UI improvements.
2017-05-30 20:44:30 +02:00
Martin Pépin ea21b07657 Add an announcement banner 2017-05-25 23:58:59 +01:00
Martin Pépin 74135f8877 enhance User.__str__ with get_full_name 2017-05-23 16:50:43 +01:00
Martin Pépin 3c8f1c58c5 Use transaction.atomic instead of lock_table
lock_table used LOCK which is mysql-specific
2017-05-23 05:58:09 +01:00
Martin Pépin f0f1585661 Registration: remove success var, fix message
`member.profile` was not up-to-date where we used to send the success
message => move it to the place where the success var is set tu `True`
and remove the success var was which becomes irrelevant.
2017-05-23 05:41:57 +01:00
Martin Pépin dba8a0a857 Remove the num field in CofProfile 2017-05-22 01:00:32 +01:00
Martin Pépin 76dcaf7d51 drop py2 compat 2017-05-21 23:58:44 +01:00
Aurélien Delobelle 6ce2f178bf Fewer requests on petit cours details management. 2017-04-09 17:57:11 +02:00
Aurélien Delobelle 3dc91e30bd Fewer requests on petit cours list management. 2017-04-09 17:51:40 +02:00
Aurélien Delobelle 8870b5ace2 Fewer queries on poll view 2017-04-09 17:37:15 +02:00
Martin Pépin a793e9a2e7 exclude empty strings from ldap results
The uid attribute in a LDAP's entry cannot be an empty string. We need
to get an actual identifier.
2017-04-01 22:07:32 +01:00
Martin Pépin 9cdf064005 Handle incomplete values from the LDAP
Sometime `uid` is not set in the objects fetched from the LDAP. This
case has to be handled. Also, the `.uid` and `.cn` attributes of these
objects in the python abstractions have a `.value` method which we
should use.
2017-04-01 21:45:05 +01:00
Martin Pépin c95d7cb670 Merge branch 'master' of git.eleves.ens.fr:cof-geek/gestioCOF 2017-03-29 11:21:11 +01:00
Martin Pépin 579711ed2d Hotfix: typo in template name 2017-03-29 11:17:34 +01:00
Aurélien Delobelle cb13280458 Merge branch 'master' into 'Aufinal/merge_k-fet'
# Conflicts:
#   kfet/static/kfet/css/index.css
2017-03-24 20:23:32 +01:00
Martin Pepin 33b3d558b5 Merge branch 'Aufinal/decorators' into 'master'
Utilise les bons décorateurs

See merge request !195
2017-03-21 00:25:50 +01:00
Ludovic Stephan 5e802217fd Remove lambda operators 2017-03-20 20:24:44 -03:00
Martin Pépin 59f57793ba typo 2017-03-20 22:05:48 +00:00
Martin Pépin 0aed975615 Fix the empty-query test in autocomplete
If there is no valid word to search in the LDAP database, no query is
performed. Since 74f0b63e, that behaviour was broken because of a typo
2017-03-20 08:14:20 +00:00
Ludovic Stephan 2c63e6b667 Use django.contrib.auth decorators 2017-03-20 00:11:50 -03:00
Martin Pépin 74f0b63e96 Change ldap query behaviour if multiple inputs
It is now consistent with the other lookups over the User database
2017-03-19 15:10:08 +00:00
Martin Pépin dc50a23b10 Escape the content of the regex in highligh_text 2017-03-19 14:48:04 +00:00
Martin Pépin 4899bba1f7 Replace list comprehensions by iterators in dal 2017-03-19 14:05:25 +00:00
Martin Pépin 55b67f38c8 Notice the users about the α-numeric restriction
Add a help text above the two autocompletion inputs letting the users
know that non-alphanumeric characters will not be used.
2017-03-16 23:16:56 +00:00
Martin Pépin 741f0183e6 Prevent ldap injections in autocompletion views
We only allow alphanumeric characters in the query in order to avoid
injections
2017-03-16 22:43:43 +00:00
Ludovic Stephan 3793863bab Merge remote-tracking branch 'origin/k-fet' into Aufinal/merge_k-fet 2017-03-15 22:58:54 -03:00
Martin Pépin 84a39b41f2 Fix wrong email generation in _traitement_post (2)
I forgot to fix an email in commit c51379447. Now there are all
well-formed
2017-03-15 18:35:42 +00:00
Martin Pépin c4edff717d Disable the fail_silently option for emails
It is obviously a bad idea to fail silently if something go wrong
when the connection with the mail server is being established. This was
enabled in the `_traitement_post` method.
2017-03-15 18:21:26 +00:00
Martin Pépin c513794474 Fix wrong email generation in _traitement_post
The list `proposed_mails` is a list of elements of the kind
`(User, (mail_object, mail_body))` but it was handled as if it were
`(User, mail_body)` in the function `_traitement_post`.
2017-03-15 18:17:08 +00:00
Martin Pépin 98abe71681 Handle errors=None in _finalize_traitement
Sometimes the `errors` variable is `None` in `_finalize_traitement`.
It was not an issue when it was just used in the templates but now we
have to handle this in the view. Basically, we shall consider it is an
empty list when it occurs.
2017-03-15 11:59:41 +00:00
Martin Pépin c37754376b Move registration_form to gestioncof/
The `registration` view was referencing this file using
`"gestioncof/registration_form.html"` whereas the `registration_post`
templated was referencing it in the global namespace
`"registration_form.html"`.

We choose the `gestioncof/` folder in order to avoid further conflicts
with other apps.
2017-03-15 11:40:52 +00:00
Martin Pépin 266a789d97 Merge branch 'Kerl/messages'
- Utilise une version à jour de jquery via un cdn
- Traite les messages
- Remplace les vieux simili-messages par des messages en utilisant le
  framework messages de Django
2017-02-12 16:47:44 +01:00
Martin Pépin 313b5cf61d Merge branch 'master' into Aufinal/dev_data_kfet 2017-02-11 21:01:37 +01:00
Martin Pépin 70e89e3737 Merge branch 'master' into Kerl/messages 2017-02-11 20:55:17 +01:00
Qwann ec7012ee47 Merge branch 'Kerl/use_django_custommail' of git.eleves.ens.fr:cof-geek/gestioCOF into Kerl/use_django_custommail 2017-02-11 16:22:09 +01:00
Qwann 924a289a78 cleaning UGLY django template style
and moving some template files
2017-02-11 16:21:13 +01:00
Martin Pépin b4bf437447 Minor fixes 2017-02-11 16:15:17 +01:00
Martin Pépin 0e759405c7 Change the migration index 2017-02-11 15:13:29 +01:00
Martin Pépin 675ff99414 Supprime les doublons avec jquery 2017-02-11 11:50:49 +01:00
Martin Pépin 99a19f850a typo 2017-02-11 11:41:49 +01:00
Martin Pépin 71fb020e10 Merge branch 'master' into Kerl/messages 2017-02-11 11:40:47 +01:00
Martin Pépin 6e55905781 Merge branch 'master' into Kerl/use_django_custommail 2017-02-11 03:20:29 +01:00
Qwann 06eafdae47 Merge branch 'master' of git.eleves.ens.fr:cof-geek/gestioCOF 2017-02-11 02:54:54 +01:00
Qwann ed01508481 using context_object_name and moving template 2017-02-11 02:51:43 +01:00
Martin Pépin 02a8e74e3b Optimize code, better queries
- Remove useless Q queries
- Optimize with sets
- Queries over clipper id too
2017-02-11 02:39:59 +01:00
Martin Pépin d4b696db70 Merge branch 'master' into Kerl/ldap 2017-02-11 01:55:02 +01:00
Evarin 839d60e48f Support tactile jquery-ui 2017-02-11 00:11:14 +01:00
Evarin 80d8cb6b7e Mise à jour des dépendances jquery-ui et jquery
Should fix #80 - à tester sur mobile (via dev.cof)
2017-02-10 23:47:49 +01:00
Evarin 399e5ca16d Jolie mise en page pour les demandes de petit cours
Closes #6
2017-02-10 20:42:54 +01:00
Martin Pépin 8e7428a11e Répercute le déplacement du template dans les vues 2017-02-09 12:26:08 +01:00
Ludovic Stephan ca73dc27bb move template 2017-02-08 21:13:02 -02:00
Ludovic Stephan 46638bd6d8 fixes #85 2017-02-08 21:08:00 -02:00
Ludovic Stephan 8346dd65d1 dev data kfet 2017-02-07 23:22:31 -02:00
Martin Pépin 45eb384cfd Use class-based views
See #94
2017-02-05 17:41:23 +01:00
Martin Pépin 9aa4782d57 Move petits-cours forms in another file 2017-02-05 17:10:51 +01:00
Martin Pépin 81681ad0e5 Turn 2 functions into class/objects methods
- `_get_attrib_counter` become a classmethod of
  `PetitCoursAttributionCounter`
- `_get_demande_candidates` become a method of `PetitCoursDemande`
2017-02-05 17:07:58 +01:00
Martin Pépin 2bc5f3d646 Style and PEP8
- Drop `%` in favour of `.format` which has a better specification
- Remove a string concatenation
- Remove the trailing slashes according to the PEP8:
  https://www.python.org/dev/peps/pep-0008/#maximum-line-length
  NB. We let some which will disappear in the next commit.
- Remove an unused import and change the imports order
2017-02-05 13:49:01 +01:00
Martin Pépin bb4e9dde4f End of py2 support 2017-02-05 13:32:31 +01:00
Martin Pépin 13da42b823 typo 2017-02-03 23:41:33 +01:00
Martin Pépin 8c34e2f83f proper use of messages in petits cours 2017-02-03 18:29:18 +01:00
Martin Pépin fd42563f7f Proper use of messages in calendar subscription 2017-02-03 18:29:18 +01:00
Martin Pépin 51c0e2dabc proper use of messages in registration 2017-02-03 18:29:12 +01:00
Martin Pépin b7ecac3db6 Proper use of messages in profile edit 2017-02-03 18:29:12 +01:00
Martin Pépin 1fe1b94afc Proper use of messages in events 2017-02-03 18:29:12 +01:00
Martin Pépin 91fff8a11e Proper use of messages in BdA inscription 2017-02-03 18:29:05 +01:00
Martin Pépin 0666b5288f Proper use of messages in survies 2017-02-03 18:29:05 +01:00
Martin Pépin d31b9f59ab Traitement des messages
- Les messages sont affichés à l'utilisateurs dans les vues de GestioCOF
- On utilise une autre version de bootstrap et jquery (plus récent)

Fixes #48
2017-02-03 18:28:56 +01:00
Martin Pépin ba88b94320 Fixes and cleanup 2017-02-03 17:07:50 +01:00
Martin Pépin 18b186929c Dev data loaded using a django admin command
- Sites, surveys, events and petits cours demands/subjects are still
  loaded from fixtures
- The users and their subscriptions to petits cours are loaded using the
  `loaddevdata` command
- The sub command `loadbdadevdata` is called by `loaddevdata` and
  populates the database with BdA related stuff :
  - 2 tirages
  - Show places
  - Shows
  - subscriptions
2017-02-03 14:33:10 +01:00
Qwann 7ab4e949d8 k-fet in gestiocof menu 2017-01-26 20:40:55 +01:00
Martin Pépin 993b8ae87b Merge branch 'master' into Kerl/use_django_custommail 2017-01-13 01:02:01 +01:00
Martin Pépin cef40dff70 Typo et renommage 2017-01-10 23:26:11 +01:00
Martin Pépin 5fa0618ad3 Message pour moldu
Fixes #29
2017-01-10 11:46:23 +01:00
Martin Pépin 84f9b80f09 On ne met pas root dans la fixture users
Elle est chargée dans la BDD sur dev.cof…
2017-01-09 16:41:49 +01:00
Martin Pépin 540b6f38b8 Merge branch 'master' into Kerl/ldap 2017-01-09 15:47:12 +01:00
Aurélien Delobelle 792c4177ec Merge branch 'master' into k-fet 2017-01-07 00:38:54 +01:00
Martin Pépin 0d09bf62af Completion starts only when we have 3 characters
And this time it works
2017-01-06 17:26:35 +01:00
Martin Pépin c355c71fe5 Completion starts only when we have 3 characters 2017-01-06 17:13:57 +01:00
Martin Pépin 672b8727b7 Merge branch 'michele.orru/gestioCOF-master'
Deleting a CofProfile => Deleting the associated User
2017-01-06 17:00:06 +01:00
Martin Pepin 888d4764e8 Merge branch 'Kerl/clean_staticfiles' into 'master'
Cesse d'utiliser des fichiers statiques custom

Fixes #107 

See merge request !121
2017-01-06 16:51:46 +01:00
Martin Pépin cd3faa098b Merge branch 'master' into Kerl/use_django_custommail 2017-01-06 16:45:36 +01:00
Michele Orrù 542d02ca6d Cosmetics: post_save-ing a CofProfile now with decorators. 2017-01-05 11:35:34 +01:00
Michele Orrù 8016078e4f Deleting a CofProfile ⇒ Deleting a User.
There's no reason for keeping a User if its respective cofprofile was deleted.
No?

Unittests attached.
2017-01-05 11:35:21 +01:00
Michele Orrù 0b54972aa8 Add fixtures.
Create fixtures for kfet application:
- Add a bunch of non-cof profiles whose "last_name" is "Romain";
- Add k-fet articles using the real ones as a template;
- Add LIQ account;
- Add groups K-fet Chef and K-fet Girl;
- Add "caisse".
We also added some template for future tests (well, actually it's the script
used to generate the fixtures…).
2017-01-03 01:35:56 +01:00
Martin Pépin ab80db8bed Merge branch 'master' into Kerl/clean_staticfiles 2016-12-26 00:54:31 +01:00
Martin Pépin cff4f176c0 typo 2016-12-25 12:29:53 +01:00
Martin Pépin 01ce955784 Fixes
- Fixes bugs
- Removes useless scripts
2016-12-25 12:27:42 +01:00
Martin Pépin 3c7558c853 The end of Clipper
GestioCOF fetches the clipper accounts from an LDAP database and doesn't
need to store clippers in a table anymore.
2016-12-25 11:57:50 +01:00
Martin Pépin dd60c58bb8 Follows the changes in custommail 2016-12-24 14:02:54 +01:00
Martin Pépin 74abd6c853 Fixe le comportement de syncmail
syncmail ne devrait pas essayer de changer un email si un email du même
shortname existe déjà. Ce n'était pas le cas auparavant
2016-12-23 18:51:33 +01:00
Martin Pépin a5b6901972 Merge branch 'Kerl/use_django_custommail' of git.eleves.ens.fr:cof-geek/gestioCOF into Kerl/use_django_custommail 2016-12-23 16:08:41 +01:00
Martin Pépin 8bf2f715a4 Correction de bugs et nettoyage 2016-12-23 15:49:03 +01:00
Martin Pépin b39806e171 Migration et chargement des emails
- La migration qui supprime le vieux modèle gestioncof.CustomMail est
  ajoutée
- Les mails de GestioCOF sont dans un json qui est chargé par la commande
  `python manage.py syncmails`
  Voir l'aide de la commande pour plus 'information
2016-12-23 15:48:57 +01:00
Martin Pépin dc32ae6ad2 Répare le traitement des petits cours
Les fonctions de traitement des demandes faisaient des cast étranges à
l'aide de `base64`. Ça devrait être lié à python2 je suppose.
2016-12-23 09:37:54 +01:00
Martin Pépin 298015285a cleanup et nouvelle implem de custommail 2016-12-22 20:18:27 +01:00
Martin Pépin 5f29caec3c cleanup 2016-12-22 12:28:03 +01:00
Martin Pépin fe8f18ff78 Utilise django_custommail
- On installe le package depuis le dépôt COF-Geek
- On supprime tous les fichiers texte des mails
- On charge dans la bdd les mails nécessaires au fonctionnement de
  GestioCOF
- On supprime le modèle CustomMail obsolète de gestioncof
2016-12-22 03:45:03 +01:00
Martin Pépin 4da7689b16 Met à jour données hardcodées... 2016-12-04 10:40:38 +01:00
Martin Pépin ea1b3c71a3 Décorateur inutile
Décorateur `@buro_required` sur une fonction qui n'est pas une vue et
dont le premier paramètre n'est pas la requête.
2016-11-29 11:29:18 +01:00
Martin Pépin 5a2fc9d1e5 Cesse d'utiliser des fichiers statiques custom 2016-11-20 20:09:12 +01:00
Martin Pepin d6dd7b346c Merge branch 'Elarnon/mail_bda' into 'master'
Améliore les mails automatiques du BdA

Les mails du BdA sont maintenant tous chargés depuis des templates gérés par le système de templates de Django, et plus par de l'interpolation de chaîne de caractères. Ceci permet en particulier d'utiliser (et de configurer) la localisation de Django afin d'afficher les dates de façon uniforme (et sans "hack" à la `date_no_seconds`) dans un format comportant un "à" entre le jour et l'heure.

See merge request !113
2016-11-20 16:53:29 +01:00
Basile Clement 3c362014b0 Remplace simplejson par json de la bibliothèque standard 2016-11-13 15:04:47 +01:00
Basile Clement 1f1419c5f1 Supprime render_template
GestioCOF définit une fonction `render_template` qui permet de calculer
l'interpolation d'un gabarit en une chaîne de caractères, par exemple
pour l'envoi de mails. Ce patch supprime cette fonction et remplace son
utilisation par la fonction `django.template.loader.render_to_string` au
comportement identique.
2016-11-12 10:54:32 +01:00
Martin Pepin f1c87ab8ad Merge branch 'Elarnon/vevent-uid' into 'master'
Ajoute un UID aux VEVENTs du calendrier dynamique

Fixes #102.

See merge request !103
2016-11-05 22:12:25 +01:00
Basile Clement 9846ed201b Normalise les logins clipper venant du CAS
Le CAS de l'ENS autorise les logins avec des espaces/une casse variable, par
exemple il considere equivalents les logins ' bCLeMeNt    ' et 'bclement'. Ceci
peut etre la cause de creation de doublons sur gestioCOF en cas de faute de
frappe (ou utilisateur malicieux ;-) )

Ce patch normalise les logins a la sortie du CAS (strip + lowercase) pour
eviter des desagrements.
2016-11-05 18:31:40 +01:00
Basile Clement 6642f03720 Ajoute un UID aux VEVENTs du calendrier dynamique
Fixes #102.
2016-11-05 18:04:54 +01:00
Ludovic Stephan 9e9cf3145b Merge branch 'master' of https://git.eleves.ens.fr/cof-geek/gestioCOF into Aufinal/bda_shotgun 2016-10-07 14:06:47 +02:00
Ludovic Stephan d1456d7c68 déplacement shotgun 2016-10-06 13:46:18 +02:00
Martin Pépin 1a6b86703a Merge branch 'master' into Kerl/settings_syntax 2016-10-03 01:58:55 +02:00
Martin Pépin 7abdccfbdb Meilleure gestion des données mails
Les valeurs de champs FROM, REPLY-TO et BCC des mails envoyés par
GestioCOF sont enregistrées dans un dictionnaire `settings.MAIL_DATA`
plutôt que d'être toutes enregistrées comme variables indépendantes
2016-09-27 17:57:53 +02:00
Ludovic Stephan 103b2880f7 BdA 2016-09-27 16:57:39 +02:00
Ludovic Stephan 7984eb132b Merge branch 'master' of https://git.eleves.ens.fr/cof-geek/gestioCOF into Aufinal/bda_revente 2016-09-26 15:56:35 +02:00
Martin Pépin 68153652d0 Protection de la vue autocomplete 2016-09-24 19:40:16 +02:00
Martin Pépin 05e48386a1 Ajustements, fix 2016-09-24 18:44:35 +02:00
Martin Pépin ac3c79daca Fix petits cours 2016-09-22 14:01:01 +02:00
Martin Pépin ecef7b3957 Go to hell encoding 2016-09-20 21:46:58 +02:00
Ludovic Stephan 0282f62886 Merge branch 'master' of https://git.eleves.ens.fr/cof-geek/gestioCOF into Aufinal/bda_revente 2016-09-08 16:29:42 +02:00
Martin Pépin 4237b842b4 Compat IE et mobiles 2016-09-05 23:47:16 +02:00
Martin Pépin 799f2317f7 Champ commentaires
le champ `comments` du modèle `CofProfile` est maintenant visible par
l'urilisateur via la vue “profil”.
2016-09-04 13:21:23 +02:00
Ludovic Stephan c26bb5c309 adds bda-revente to home 2016-09-03 05:22:41 +02:00
Martin Pepin 0398a98dbb Merge branch 'Kerl/permissions' into 'master'
Meilleure gestion des permissions

Il n'est plus possible de modifier l'attribut `is_superuser` dans
l'interface admin. les membres du burô ne doivent plus être super-
utilisateurs en prévision de l'arrivée de l'appli K-Fêt.

Pour donner les permissions adéquates au burô, il faut créer un groupe
COF avec tous les droits sur les applis `gestioncof` et `bda` ainsi que
les droits sur les d'utilisateurs et ajouter les membres du burô à ce groupe.

Fix #62 

See merge request !75
2016-08-31 18:23:23 +02:00
Martin Pépin 9d5931fd6f Meilleure gestion des permissions dans l'admin
Seul les superusers ont le contrôle sur les groupes et permissions.

Un membre du burô est automatiquement ajouté au groupe COF, lui même
créé automatiquement s'il n'existe pas.
2016-08-30 22:31:55 +02:00
Martin Pépin 8e36b3cfaa Merge branch 'master' of git.eleves.ens.fr:cof-geek/gestioCOF 2016-08-29 16:33:33 +02:00
Martin Pépin 1f8f94b93b Cache les tirages pas encore ouverts au public
Seul le Burô peut voir les tirages actif pas encore ouverts.
2016-08-29 16:32:04 +02:00
Martin Pepin 15e26d017c Merge branch 'Kerl/clubs' into 'master'
Kerl/clubs

Permet d'inscrire les membres à des clubs et de gérer les membres et respos des-dits clubs.

Related to #56

See merge request !73
2016-08-29 16:20:57 +02:00
Martin Pépin 813cbe7b13 Meilleure gestion des permissions
Il n'est plus possible de modifier l'attribut `is_superuser` dans
l'interface admin. les membres du burô ne doivent plus être super-
utilisateurs en prévision de l'arrivée de l'appli K-Fêt.

Pour donner les permissions adéquates au burô, il faut créer un groupe
COF avec tous les droits sur les applis `gestioncof` et `bda` ainsi que
les droits sur les d'utilisateurs et ajouter les membres du burô à ce groupe.
2016-08-26 22:18:22 +02:00
Martin Pépin 2989a6e186 Add sites fixture 2016-08-26 16:43:02 +02:00
Martin Pépin a2fb7143f8 Fix: calendrier
On autorise l'utilisateur à ne pas spécifier les spectacles
supplémentaires à ajouter au calendrier.
2016-08-25 00:19:42 +02:00
Martin Pépin a2dceb300f Fix: vieux sondages
Les sondages archivés (`survey.old = True`) mais toujours ouverts
(`survey.suervy_open = True`) restaient accessibles. Ce n'est plus le cas
2016-08-24 23:57:55 +02:00
Martin Pépin da07f34b51 Correction du dernier commit 2016-08-24 16:26:43 +02:00
Martin Pépin 9258f509ee Fix sur les noms d'utilisateurs
À l'inscription on contraint les noms d'utilisateurs à dépasser 8
caractères seulement à la création de nouveaux utilisateurs pour
garantir la rétrocompatibilité.
2016-08-24 16:03:21 +02:00
Martin Pépin ac0748d0a4 Typo 2016-08-24 15:38:04 +02:00
Martin Pépin 14c9085887 Empêche d'assigner un respo non membre du club
Dans l'interface admin
2016-08-23 22:15:31 +02:00
Martin Pépin 559ac5a39d On peut changer de respos
Tout se fait simplement depuis la vue `/clubs/membres/<club_name>`.
Il est déconseillé de passer par l'interface admin.
2016-08-23 21:09:47 +02:00
Martin Pépin ccc1c79101 Ajout de la liste des clubs 2016-08-23 20:10:25 +02:00
Martin Pépin f25243b082 Ajout d'une vue : membres d'un club
- Liste des membres inscrits à un club.
- Vue accessible aux membres du burô et aux respos des clubs concernés.
2016-08-23 18:57:59 +02:00
Martin Pépin c07cf654fb Premier jet des clubs
On peut inscrire les utilisateurs aux différents clubs du COF. Le
formulaire d'inscription est inclus dans la page
“inscription d'un nouveau membre”.

À réfléchir comment ajouter des infos supplémentaires : chèque des caution,
commentaires, etc.
2016-08-23 18:57:15 +02:00
Martin Pépin 5d685a04d7 Empêche les conflits username-clipper
Le formulaire de création d'utilisateur empêche de choisir un username de
moins de 8 caractères.

Fixes #57
2016-08-21 16:03:34 +02:00
Martin Pépin fd6b2d68d3 Corrige l'ordre des champs du formulaire profil
L'ordre des champs n'était pas définit de façon correcte et donc n'était
pas respecté.

Fixes #54
2016-08-21 15:18:51 +02:00
Martin Pépin 5b0b60fadb Meilleure inscription des extés
Lors de la création d'un compte exté via la vue `/registration` (i.e. compte
non associé à un clipper), deux champs sont ajoutés au formulaire pour la
création d'un mot de passe.

Il est toujours possible de changer ce mot de passe via l'admin s'il est perdu
par l'utilisateur.
2016-08-17 15:34:01 +02:00
Martin Pépin 12a4b8efa7 Petits changements
- Ajout d'un FIXME dans `gestioncof/forms.py` au niveua de la surcharge de
  la méthode privée `_construct_form` : ce trick ne sera plus nécessaire à
  partir de Django 1.9
- Utilisation correcte des `form.is_valid` dans `gestioncof.views.registration`
2016-08-14 17:58:51 +02:00
Martin Pépin 23ac3b7222 Nettoyage 2016-08-13 02:56:42 +02:00
Martin Pépin 9141c484ed Merge branch 'master' into Kerl/events 2016-08-10 11:38:00 +02:00
Martin Pépin b60b9f4e17 Utilisation d'un formset pour l'inscription
- Changements mineurs dans `AdminEventForm`
- Ajout d'une base pour le formset : `BaseEventRegistrationFormset`
- Adaptation des vues de l'inscription et suppression d'une vue inutile.
2016-08-09 18:55:50 +02:00
Qwann 770162463d retrait des flèches pour les champs num en lecture seule 2016-08-07 19:47:14 +02:00
Martin Pépin 19456756e4 Cache les vieux événements 2016-08-06 15:34:01 +02:00
Martin Pépin 45385be556 Meilleure gestion des liens sur la page d'accueil
- Le lien vers l'inscription à un tirage BdA disparaît après sa fermeture
- Les liens “mes places” et “revente” n'apparaissent qu'après la fermeture du
  tirage.
- Le lien vers les ratios des demandes est déplacé dans la partie “Gestion des
  tirages” pour servir d'archive au BdA.

Fixes #55
2016-08-03 17:58:34 +02:00
Martin Pépin 5a1d854bb1 Petite correction de style 2016-08-03 15:59:05 +02:00
Martin Pépin 4a3e091268 Mise à jour des accès
- La vue d'édition du profil n'est plus accessible aux non-COF
- Le calendrier dynamique étant réservé aux adhérents, le lien vers
  l'inscription est caché aux non-adhérents.
2016-08-03 15:53:35 +02:00
Martin Pépin 7020d6a646 Merge branch 'master' into Kerl/deprec 2016-07-30 00:27:59 +02:00
Martin Pépin edbf3867a4 Préparation à la mise en ligne
- Séparation du compte root des autres comptes
- Mise à jour en fonction des derniers changements de la BDD :
    - Les dates des events deviennent des datetime
    - Changement de nom dans bda.models.Tirage : token -> tokens
- Changement dans les dates de spectacles pour se situer dans l'année
  2016-2017
2016-07-29 23:31:54 +02:00
Martin Pépin d6bdf211cf Merge branch 'master' into Kerl/test_db 2016-07-29 22:42:25 +02:00
Martin Pépin b9ed81453d Conflit dans les migrations 2016-07-29 22:29:20 +02:00
Martin Pepin bbc4b59bfe Merge branch 'Kerl/calendar' into 'master'
Ajout d'un calendrier dynamique

Ce patch propose aux adhérents du COF de télécharger un calendrier
dynamique (`.ics`).

Il est configurable : 

    - On peut s'abonner ou non aux événements du COF.
    - On peut choisir les spectacles auxquels on veut s'abonner.
        - Une checkbox permet d'ajouter d'un coup les spectacles pour lesquels on a obtenu une place
        - On peut en ajouter d'autres 

Pour faire fonctionner ce patch, il faut installer la bibliothèque python `icalendar` : 
    
    pip install --upgrade -r requirements.txt

Fixes #20
Fixes #14 

See merge request !63
2016-07-29 21:42:58 +02:00
Martin Pépin 2632c9dff8 Merge branch 'master' into Kerl/calendar 2016-07-29 20:17:04 +02:00
Martin Pépin dd951287a9 Merge branch 'master' into Kerl/fix_32_do_tirage 2016-07-29 19:03:36 +02:00
Qwann 70f62f4af1 merge conflict resolved 2016-07-29 12:48:03 +02:00
Qwann e87d55dc7e css des petits cours 2016-07-29 11:33:26 +02:00
Qwann 3da7f0074f typo 2016-07-29 10:54:18 +02:00
Martin Pépin 87c7c98cef Ajoute une redirection après login
Si un utilisateur est redirigé vers la page de login en demandant une
page, il est redirigé vers la page demandée initialement après
authentification.
2016-07-28 01:31:50 +02:00
Qwann e942bf7074 Fini ! modulo les trucs que j'ai peut-être cassé/oublié :) 2016-07-27 15:29:06 +02:00
Qwann d864a7bc16 quasi fini 2016-07-27 14:00:38 +02:00
Qwann dbc14a8227 avec des icones c'est plus zoli :) 2016-07-27 00:10:20 +02:00
Qwann 6b42e7fd30 Merge branch 'master' of git.eleves.ens.fr:cof-geek/gestioCOF into qwann/zolicss 2016-07-26 21:56:41 +02:00
Martin Pepin 5030316842 Merge branch 'Kerl/cleanup' into 'master'
Nettoyage

Simplement une suppression des `from foo import *`

See merge request !65
2016-07-26 21:11:00 +02:00
Qwann 29a97230ac registration presque réparé 2016-07-26 20:19:34 +02:00
Qwann 34830f897e registration est cassé 2016-07-26 11:56:54 +02:00
Qwann 3cd618e60d normalement il reste juste ajout membre 2016-07-25 19:19:07 +02:00
Qwann fa4308b91e Merge branch 'master' of git.eleves.ens.fr:cof-geek/gestioCOF into qwann/zolicss 2016-07-20 18:36:09 +02:00
Martin Pépin c99ededfd3 Merge branch 'master' into Kerl/test_db 2016-07-18 19:59:57 +02:00
Martin Pépin 00aa0456a0 Migration manquante 2016-07-18 19:59:07 +02:00
Martin Pépin 55ae827304 Réécrit les urls
En accord avec
https://docs.djangoproject.com/en/1.9/releases/1.8/#passing-a-string-as-view-to-url
2016-07-18 18:46:48 +02:00
Martin Pépin d4e7cd698e Nettoyage
Modifications dans le sens de PEP8 dans les fichiers qu'on utilise
2016-07-16 20:54:52 +02:00
Martin Pépin 4c20b17b4e Nettoyage
Simplement une suppression des `from foo import *`
2016-07-16 18:48:43 +02:00
Martin Pépin 6d613def4c Merge branch 'master' into Kerl/fix_32_do_tirage 2016-07-16 18:31:36 +02:00
Martin Pépin 3d0e9d32c3 Merge branch 'master' into Kerl/calendar 2016-07-16 18:28:20 +02:00
Martin Pépin 8c7ad24af8 Doc et meilleure utilisation de l'ORM
- Indique a l'utilisateur comment utiliser le calendrier
- Utilise l'ORM Django plutôt que des `set` python pour avoir la bonne
  liste des spectacles.
- Rajoute un lien vers le calendrier sur la page “mes places”
2016-07-16 18:22:53 +02:00
Martin Pepin bcbf9d9521 Merge branch 'Elarnon/py3' into 'master'
Rend GestioCOF compatible avec Python3



See merge request !58
2016-07-16 13:11:04 +02:00
Martin Pépin 7fcaaef527 Quelques explications dans le template 2016-07-16 02:49:35 +02:00
Martin Pépin a6b5fe0863 Typo 2016-07-16 02:41:15 +02:00
Martin Pépin 0887cf824d Ajoute l'inscription à ses résultats du tirage 2016-07-16 02:25:30 +02:00
Martin Pépin 7b32edbd38 Rend le calendrier plus dynamique
Plus besoin de s'authentifier pour accéder au calendrier : il suffit
d'entrer la bonne url qui contient un token aléatoire propre à chaque
utilisateur.
Ce token ne change pas lorsqu'on modifie son inscription
2016-07-15 23:31:26 +02:00
Martin Pépin a6fde7c974 Les 4 donneurs de petits cours reçoivent les mails 2016-07-15 21:00:38 +02:00
Martin Pépin ea6e7a1472 Ajoute des fonctions __str__ là où ça manque 2016-07-15 20:01:45 +02:00
Martin Pépin 301c374ee4 Typos 2016-07-15 14:04:01 +02:00
Martin Pépin a0338b9a8d Ajoute des données de petits cours
- 4 matières
- Les compétence de 4 utilisateurs
- 2 demandes
2016-07-15 13:16:20 +02:00
Martin Pépin b5704c7f6d Corrections
- Typos dans les modèles
- Choix d'un `OneToOneField` dans `CalendarSubscription`
- Suppressions d'un `except` catch-all
- Amélioration de la vue calendar
2016-07-15 02:49:56 +02:00
Martin Pépin 87da29ee59 Merge branch 'master' into Kerl/fix_32_do_tirage 2016-07-15 01:25:11 +02:00
Martin Pépin eb8b54afdf Déplace les .json dans des dossiers fixtures 2016-07-15 01:22:20 +02:00
Basile Clement 73eac1886a Fix semantic error in events
`gestioncof.views.registration` was using an `event` variable that was
not properly defined. Due to a semantics oddity of python2, the value
used was from a previous and (somewhat) unrelated list comprehension.
2016-07-15 01:18:31 +02:00
Martin Pépin 8af49a1020 Ajout d'un calendrier dynamique
Ce patch propose aux adhérents du COF de télécharger un calendrier
dynamique (`.ics`).

Il est configurable :
    - On peut s'abonner ou non aux événements du COF.
    - On peut choisir les spectacles auxquels on veut s'abonner.
2016-07-15 01:06:33 +02:00
Basile Clement 210c6d7712 Update Py3 compat 2016-07-15 00:20:08 +02:00
Martin Pépin aa6e5e5479 Oublis 2016-07-14 23:43:53 +02:00
Martin Pépin b3c45afb49 Passage à python 3 - strings 2016-07-14 23:40:51 +02:00
Basile Clement 21b8b6042f Compatibilité python 3
Rend GestioCOF compatible avec python 3. En particulier, il s'agit de :

  - Utiliser la version "fonction" de `print` dans `sync_clipper` et
    `tirage_bda`, avec le `from __future__ import print_function` pour
    garder la compatibilité avec python 2

  - Utiliser de l'unicode par défaut, même en python 2, avec
    `from __future__ import unicode_literals` et le décorateur de
    compatibilité `python_2_unicode_compatible` de Django pour les
    modèles, comme décrit à
    https://docs.djangoproject.com/en/1.9/topics/python3/#str-and-unicode-methods

  - Utiliser `six.text_type` à la place de `unicode`

Fixes #2.
2016-07-14 23:40:31 +02:00
Basile Clement 7f61870236 Merge branch 'Kerl/search_fields' into 'master'
Étend les champs de recherche dans l'admin

Fixes #24

See merge request !61
2016-07-14 23:13:50 +02:00