From: Yoan Le Clanche Date: Thu, 13 Feb 2020 09:06:33 +0000 (+0100) Subject: Override telemeta profile to add payment X-Git-Tag: 1.4.1~5^2 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=7529ab6a3b381fbedf85db55358490e066c0c05c;p=teleforma.git Override telemeta profile to add payment --- diff --git a/teleforma/urls.py b/teleforma/urls.py index cc5d8075..2c547732 100644 --- a/teleforma/urls.py +++ b/teleforma/urls.py @@ -45,7 +45,7 @@ from registration.views import * from jsonrpc import jsonrpc_site htdocs_forma = os.path.dirname(__file__) + '/static/teleforma/' -profile_view = ProfileView() +profile_view = CRFPAProfileView() document = DocumentView() media = MediaView() @@ -59,12 +59,17 @@ urlpatterns = patterns('', url(r'^accounts/register/(?P.*)/complete/$', UserCompleteView.as_view(), name="teleforma-register-complete"), url(r'^accounts/register/(?P.*)/download/$', RegistrationPDFViewDownload.as_view(), name="teleforma-registration-download"), url(r'^accounts/register/(?P.*)/view/$', RegistrationPDFView.as_view(), name="teleforma-registration-view"), - + url(r'^correctors/register/$', CorrectorAddView.as_view(), name="teleforma-corrector-register"), url(r'^correctors/register/(?P.*)/complete/$', CorrectorCompleteView.as_view(), name="teleforma-corrector-register-complete"), url(r'^correctors/register/(?P.*)/download/$', CorrectorRegistrationPDFViewDownload.as_view(), name="teleforma-corrector-registration-download"), url(r'^correctors/register/(?P.*)/view/$', CorrectorRegistrationPDFView.as_view(), name="teleforma-corrector-registration-view"), + url(r'^users/(?P[A-Za-z0-9+@._-]+)/profile/$', profile_view.profile_detail, + name="teleforma-profile-detail"), + url(r'^accounts/(?P[A-Za-z0-9._-]+)/profile/$', profile_view.profile_detail, name="telemeta-profile-detail"), + url(r'^accounts/(?P[A-Za-z0-9._-]+)/profile/edit/$', profile_view.profile_edit, name="telemeta-profile-edit"), + url(r'^captcha/', include('captcha.urls')), # Help @@ -127,9 +132,6 @@ urlpatterns = patterns('', url(r'^users/training/(?P.*)/iej/(?P.*)/course/(?P.*)/export/$', UsersExportView.as_view(), name="teleforma-users-export"), - url(r'^users/(?P[A-Za-z0-9+@._-]+)/profile/$', profile_view.profile_detail, - name="teleforma-profile-detail"), - url(r'^users/(?P.*)/login/$', UserLoginView.as_view(), name="teleforma-user-login"), # Ajax update training diff --git a/teleforma/views/crfpa.py b/teleforma/views/crfpa.py index a40c1721..a749ab38 100644 --- a/teleforma/views/crfpa.py +++ b/teleforma/views/crfpa.py @@ -35,6 +35,7 @@ from teleforma.models.crfpa import Parameters from teleforma.models.core import Period from teleforma.views.core import * from teleforma.forms import WriteForm +from telemeta.views import ProfileView from registration.views import * from extra_views import CreateWithInlinesView, UpdateWithInlinesView, InlineFormSet from postman.views import WriteView as PostmanWriteView @@ -836,3 +837,25 @@ class WriteView(PostmanWriteView): form_classes = (WriteForm, AnonymousWriteForm) success_url = "postman_sent" +class CRFPAProfileView(ProfileView): + """Provide Collections web UI methods""" + + @method_decorator(login_required) + def profile_detail(self, request, username, template='telemeta/profile_detail.html'): + user = User.objects.get(username=username) + try: + profile = user.get_profile() + except: + profile = None + playlists = get_playlists(request, user) + user_revisions = get_revisions(25, user) + student = user.student.all() + payment = None + if student and (user.username == request.user.username or request.user.is_superuser): + student = user.student.get() + payment = student.payments.order_by('-id').all() + if payment: + payment = payment[0] + + return render(request, template, {'profile' : profile, 'usr': user, 'playlists': playlists, 'payment':payment, + 'user_revisions': user_revisions})