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.
34 lines
990 B
Python
34 lines
990 B
Python
from django.conf import settings
|
||
from django.contrib.sites.models import Site
|
||
|
||
from django_cas_ng.backends import CASBackend
|
||
|
||
from gestioncof.models import CofProfile
|
||
|
||
|
||
class COFCASBackend(CASBackend):
|
||
|
||
def clean_username(self, username):
|
||
# Le CAS de l'ENS accepte les logins avec des espaces au début
|
||
# et à la fin, ainsi qu’avec une casse variable. On normalise pour
|
||
# éviter les doublons.
|
||
return username.strip().lower()
|
||
|
||
def configure_user(self, user):
|
||
# cannot use "defaults" arg
|
||
profile, _ = CofProfile.objects.get_or_create(user=user)
|
||
profile.login_clipper = user.username
|
||
profile.save()
|
||
user.email = settings.CAS_EMAIL_FORMAT % profile.login_clipper
|
||
user.save()
|
||
return user
|
||
|
||
|
||
def context_processor(request):
|
||
'''Append extra data to the context of the given request'''
|
||
data = {
|
||
"user": request.user,
|
||
"site": Site.objects.get_current(),
|
||
}
|
||
return data
|