mirror of
				https://gitlab.com/animath/si/plateforme-corres2math.git
				synced 2025-11-04 13:12:20 +01:00 
			
		
		
		
	Add admin pages for registration app
This commit is contained in:
		@@ -0,0 +1,26 @@
 | 
				
			|||||||
 | 
					from django.contrib import admin
 | 
				
			||||||
 | 
					from polymorphic.admin import PolymorphicChildModelAdmin, PolymorphicParentModelAdmin
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					from registration.models import AdminRegistration, CoachRegistration, Registration, StudentRegistration
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@admin.register(Registration)
 | 
				
			||||||
 | 
					class RegistrationAdmin(PolymorphicParentModelAdmin):
 | 
				
			||||||
 | 
					    child_models = (StudentRegistration, CoachRegistration, AdminRegistration,)
 | 
				
			||||||
 | 
					    list_display = ("user", "type", "email_confirmed",)
 | 
				
			||||||
 | 
					    polymorphic_list = True
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@admin.register(StudentRegistration)
 | 
				
			||||||
 | 
					class StudentRegistrationAdmin(PolymorphicChildModelAdmin):
 | 
				
			||||||
 | 
					    pass
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@admin.register(CoachRegistration)
 | 
				
			||||||
 | 
					class CoachRegistrationAdmin(PolymorphicChildModelAdmin):
 | 
				
			||||||
 | 
					    pass
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@admin.register(AdminRegistration)
 | 
				
			||||||
 | 
					class AdminRegistrationAdmin(PolymorphicChildModelAdmin):
 | 
				
			||||||
 | 
					    pass
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -99,7 +99,6 @@ class StudentRegistration(Registration):
 | 
				
			|||||||
        verbose_name=_("school"),
 | 
					        verbose_name=_("school"),
 | 
				
			||||||
    )
 | 
					    )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    # FIXME Fix permission access, mime type
 | 
					 | 
				
			||||||
    photo_authorization = models.FileField(
 | 
					    photo_authorization = models.FileField(
 | 
				
			||||||
        verbose_name=_("photo authorization"),
 | 
					        verbose_name=_("photo authorization"),
 | 
				
			||||||
        upload_to=get_random_filename,
 | 
					        upload_to=get_random_filename,
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -28,6 +28,22 @@ class TestRegistration(TestCase):
 | 
				
			|||||||
        self.coach = User.objects.create(email="coach@example.com")
 | 
					        self.coach = User.objects.create(email="coach@example.com")
 | 
				
			||||||
        CoachRegistration.objects.create(user=self.coach, professional_activity="Teacher")
 | 
					        CoachRegistration.objects.create(user=self.coach, professional_activity="Teacher")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    def test_admin_pages(self):
 | 
				
			||||||
 | 
					        response = self.client.get(reverse("admin:index") + "registration/registration/")
 | 
				
			||||||
 | 
					        self.assertEqual(response.status_code, 200)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        response = self.client.get(reverse("admin:index")
 | 
				
			||||||
 | 
					                                   + f"registration/registration/{self.user.registration.pk}/change/")
 | 
				
			||||||
 | 
					        self.assertEqual(response.status_code, 200)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        response = self.client.get(reverse("admin:index")
 | 
				
			||||||
 | 
					                                   + f"registration/registration/{self.student.registration.pk}/change/")
 | 
				
			||||||
 | 
					        self.assertEqual(response.status_code, 200)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        response = self.client.get(reverse("admin:index")
 | 
				
			||||||
 | 
					                                   + f"registration/registration/{self.coach.registration.pk}/change/")
 | 
				
			||||||
 | 
					        self.assertEqual(response.status_code, 200)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    def test_registration(self):
 | 
					    def test_registration(self):
 | 
				
			||||||
        response = self.client.get(reverse("registration:signup"))
 | 
					        response = self.client.get(reverse("registration:signup"))
 | 
				
			||||||
        self.assertEqual(response.status_code, 200)
 | 
					        self.assertEqual(response.status_code, 200)
 | 
				
			||||||
@@ -182,9 +198,5 @@ class TestRegistration(TestCase):
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    def test_string_render(self):
 | 
					    def test_string_render(self):
 | 
				
			||||||
        # TODO These string field tests will be removed when used in a template
 | 
					        # TODO These string field tests will be removed when used in a template
 | 
				
			||||||
        str(self.user.registration)
 | 
					 | 
				
			||||||
        self.assertRaises(NotImplementedError, lambda: Registration().type)
 | 
					        self.assertRaises(NotImplementedError, lambda: Registration().type)
 | 
				
			||||||
        self.assertRaises(NotImplementedError, lambda: Registration().form_class)
 | 
					        self.assertRaises(NotImplementedError, lambda: Registration().form_class)
 | 
				
			||||||
        str(StudentRegistration().type)
 | 
					 | 
				
			||||||
        str(CoachRegistration().type)
 | 
					 | 
				
			||||||
        str(self.user.registration.type)    # AdminRegistration
 | 
					 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user