codeforlife-portal 8.6.8__py2.py3-none-any.whl → 8.6.10__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of codeforlife-portal might be problematic. Click here for more details.

@@ -1,16 +1,16 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codeforlife-portal
3
- Version: 8.6.8
3
+ Version: 8.6.10
4
4
  Classifier: Programming Language :: Python
5
5
  Classifier: Programming Language :: Python :: 3.12
6
6
  Classifier: Framework :: Django
7
7
  Description-Content-Type: text/markdown
8
8
  License-File: LICENSE.md
9
9
  Requires-Dist: asgiref==3.8.1; python_version >= "3.8"
10
- Requires-Dist: certifi==2025.1.31; python_version >= "3.6"
11
- Requires-Dist: cfl-common==8.6.8
10
+ Requires-Dist: certifi==2025.4.26; python_version >= "3.6"
11
+ Requires-Dist: cfl-common==8.6.10
12
12
  Requires-Dist: chardet==5.2.0; python_version >= "3.7"
13
- Requires-Dist: charset-normalizer==3.4.1; python_version >= "3.7"
13
+ Requires-Dist: charset-normalizer==3.4.2; python_version >= "3.7"
14
14
  Requires-Dist: diff-match-patch==20241021; python_version >= "3.7"
15
15
  Requires-Dist: django==5.1.9; python_version >= "3.10"
16
16
  Requires-Dist: django-classy-tags==4.1.0; python_version >= "3.8"
@@ -19,7 +19,7 @@ Requires-Dist: django-csp==3.8
19
19
  Requires-Dist: django-formtools==2.5.1; python_version >= "3.8"
20
20
  Requires-Dist: django-import-export==4.2.0; python_version >= "3.9"
21
21
  Requires-Dist: django-otp==1.6.0; python_version >= "3.7"
22
- Requires-Dist: django-phonenumber-field==8.0.0; python_version >= "3.8"
22
+ Requires-Dist: django-phonenumber-field==8.1.0; python_version >= "3.9"
23
23
  Requires-Dist: django-pipeline==4.0.0; python_version >= "3.9"
24
24
  Requires-Dist: django-preventconcurrentlogins==0.8.2
25
25
  Requires-Dist: django-ratelimit==3.0.1; python_version >= "3.4"
@@ -32,26 +32,26 @@ Requires-Dist: idna==3.10; python_version >= "3.6"
32
32
  Requires-Dist: importlib-metadata==4.13.0; python_version >= "3.7"
33
33
  Requires-Dist: libsass==0.23.0; python_version >= "3.8"
34
34
  Requires-Dist: more-itertools==8.7.0; python_version >= "3.5"
35
- Requires-Dist: numpy==2.2.4; python_version >= "3.10"
35
+ Requires-Dist: numpy==2.2.5; python_version >= "3.10"
36
36
  Requires-Dist: pandas==2.2.3; python_version >= "3.9"
37
37
  Requires-Dist: pgeocode==0.4.0; python_version >= "3.8"
38
38
  Requires-Dist: phonenumbers==8.12.12
39
39
  Requires-Dist: pillow==11.2.1; python_version >= "3.9"
40
40
  Requires-Dist: pyjwt==2.6.0; python_version >= "3.7"
41
41
  Requires-Dist: pypng==0.20220715.0
42
- Requires-Dist: python-dateutil==2.9.0.post0; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3"
42
+ Requires-Dist: python-dateutil==2.9.0.post0; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2"
43
43
  Requires-Dist: pytz==2025.2
44
44
  Requires-Dist: pyyaml==6.0.2; python_version >= "3.8"
45
45
  Requires-Dist: qrcode==7.4.2; python_version >= "3.7"
46
46
  Requires-Dist: reportlab==4.2.5; python_version >= "3.7" and python_version < "4"
47
47
  Requires-Dist: requests==2.32.3; python_version >= "3.8"
48
- Requires-Dist: setuptools==78.1.0; python_version >= "3.9"
49
- Requires-Dist: six==1.17.0; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3"
48
+ Requires-Dist: setuptools==80.3.1; python_version >= "3.9"
49
+ Requires-Dist: six==1.17.0; python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2"
50
50
  Requires-Dist: sqlparse==0.5.3; python_version >= "3.8"
51
51
  Requires-Dist: tablib==3.7.0; python_version >= "3.9"
52
- Requires-Dist: typing-extensions==4.13.1; python_version >= "3.8"
52
+ Requires-Dist: typing-extensions==4.13.2; python_version >= "3.8"
53
53
  Requires-Dist: tzdata==2025.2; python_version >= "2"
54
- Requires-Dist: urllib3==2.3.0; python_version >= "3.9"
54
+ Requires-Dist: urllib3==2.4.0; python_version >= "3.9"
55
55
  Requires-Dist: wheel==0.45.1; python_version >= "3.8"
56
56
  Requires-Dist: zipp==3.21.0; python_version >= "3.9"
57
57
  Provides-Extra: dev
@@ -59,9 +59,9 @@ Requires-Dist: asgiref==3.8.1; python_version >= "3.8" and extra == "dev"
59
59
  Requires-Dist: asttokens==3.0.0; python_version >= "3.8" and extra == "dev"
60
60
  Requires-Dist: attrs==25.3.0; python_version >= "3.8" and extra == "dev"
61
61
  Requires-Dist: black==25.1.0; python_version >= "3.9" and extra == "dev"
62
- Requires-Dist: certifi==2025.1.31; python_version >= "3.6" and extra == "dev"
63
- Requires-Dist: cfl-common==8.6.8; extra == "dev"
64
- Requires-Dist: charset-normalizer==3.4.1; python_version >= "3.7" and extra == "dev"
62
+ Requires-Dist: certifi==2025.4.26; python_version >= "3.6" and extra == "dev"
63
+ Requires-Dist: cfl-common==8.6.10; extra == "dev"
64
+ Requires-Dist: charset-normalizer==3.4.2; python_version >= "3.7" and extra == "dev"
65
65
  Requires-Dist: click==8.1.8; python_version >= "3.7" and extra == "dev"
66
66
  Requires-Dist: coverage[toml]==7.8.0; python_version >= "3.9" and extra == "dev"
67
67
  Requires-Dist: decorator==5.2.1; python_version >= "3.8" and extra == "dev"
@@ -72,7 +72,7 @@ Requires-Dist: django-csp==3.8; extra == "dev"
72
72
  Requires-Dist: django-formtools==2.5.1; python_version >= "3.8" and extra == "dev"
73
73
  Requires-Dist: django-import-export==4.2.0; python_version >= "3.9" and extra == "dev"
74
74
  Requires-Dist: django-otp==1.6.0; python_version >= "3.7" and extra == "dev"
75
- Requires-Dist: django-phonenumber-field==8.0.0; python_version >= "3.8" and extra == "dev"
75
+ Requires-Dist: django-phonenumber-field==8.1.0; python_version >= "3.9" and extra == "dev"
76
76
  Requires-Dist: django-pipeline==4.0.0; python_version >= "3.9" and extra == "dev"
77
77
  Requires-Dist: django-reverse-js==0.1.8; python_version >= "3.10" and extra == "dev"
78
78
  Requires-Dist: django-selenium-clean==1.0.1; extra == "dev"
@@ -85,7 +85,7 @@ Requires-Dist: fastdiff==0.3.0; extra == "dev"
85
85
  Requires-Dist: h11==0.16.0; python_version >= "3.8" and extra == "dev"
86
86
  Requires-Dist: idna==3.10; python_version >= "3.6" and extra == "dev"
87
87
  Requires-Dist: iniconfig==2.1.0; python_version >= "3.8" and extra == "dev"
88
- Requires-Dist: ipython==9.1.0; python_version >= "3.11" and extra == "dev"
88
+ Requires-Dist: ipython==9.2.0; python_version >= "3.11" and extra == "dev"
89
89
  Requires-Dist: ipython-pygments-lexers==1.1.1; python_version >= "3.8" and extra == "dev"
90
90
  Requires-Dist: isort==6.0.1; python_full_version >= "3.9.0" and extra == "dev"
91
91
  Requires-Dist: jedi==0.19.2; python_version >= "3.6" and extra == "dev"
@@ -93,7 +93,7 @@ Requires-Dist: libsass==0.23.0; python_version >= "3.8" and extra == "dev"
93
93
  Requires-Dist: matplotlib-inline==0.1.7; python_version >= "3.8" and extra == "dev"
94
94
  Requires-Dist: more-itertools==8.7.0; python_version >= "3.5" and extra == "dev"
95
95
  Requires-Dist: mypy-extensions==1.1.0; python_version >= "3.8" and extra == "dev"
96
- Requires-Dist: numpy==2.2.4; python_version >= "3.10" and extra == "dev"
96
+ Requires-Dist: numpy==2.2.5; python_version >= "3.10" and extra == "dev"
97
97
  Requires-Dist: outcome==1.3.0.post0; python_version >= "3.7" and extra == "dev"
98
98
  Requires-Dist: packaging==25.0; python_version >= "3.8" and extra == "dev"
99
99
  Requires-Dist: pandas==2.2.3; python_version >= "3.9" and extra == "dev"
@@ -118,16 +118,16 @@ Requires-Dist: pytest-django==4.8.0; python_version >= "3.8" and extra == "dev"
118
118
  Requires-Dist: pytest-mock==3.14.0; python_version >= "3.8" and extra == "dev"
119
119
  Requires-Dist: pytest-order==1.3.0; python_version >= "3.7" and extra == "dev"
120
120
  Requires-Dist: pytest-xdist==3.6.1; python_version >= "3.8" and extra == "dev"
121
- Requires-Dist: python-dateutil==2.9.0.post0; (python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3") and extra == "dev"
121
+ Requires-Dist: python-dateutil==2.9.0.post0; (python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2") and extra == "dev"
122
122
  Requires-Dist: pytz==2025.2; extra == "dev"
123
123
  Requires-Dist: pyvirtualdisplay==3.0; extra == "dev"
124
124
  Requires-Dist: qrcode==7.4.2; python_version >= "3.7" and extra == "dev"
125
- Requires-Dist: rapid-router==7.5.4; extra == "dev"
125
+ Requires-Dist: rapid-router==7.5.5; extra == "dev"
126
126
  Requires-Dist: requests==2.32.3; python_version >= "3.8" and extra == "dev"
127
127
  Requires-Dist: responses==0.18.0; python_version >= "3.7" and extra == "dev"
128
128
  Requires-Dist: selenium==4.29.0; python_version >= "3.9" and extra == "dev"
129
- Requires-Dist: setuptools==78.1.0; python_version >= "3.9" and extra == "dev"
130
- Requires-Dist: six==1.17.0; (python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2, 3.3") and extra == "dev"
129
+ Requires-Dist: setuptools==80.3.1; python_version >= "3.9" and extra == "dev"
130
+ Requires-Dist: six==1.17.0; (python_version >= "2.7" and python_version not in "3.0, 3.1, 3.2") and extra == "dev"
131
131
  Requires-Dist: snapshottest==1.0.0a1; extra == "dev"
132
132
  Requires-Dist: sniffio==1.3.1; python_version >= "3.7" and extra == "dev"
133
133
  Requires-Dist: sortedcontainers==2.4.0; extra == "dev"
@@ -138,9 +138,9 @@ Requires-Dist: termcolor==3.1.0; python_version >= "3.9" and extra == "dev"
138
138
  Requires-Dist: traitlets==5.14.3; python_version >= "3.8" and extra == "dev"
139
139
  Requires-Dist: trio==0.30.0; python_version >= "3.9" and extra == "dev"
140
140
  Requires-Dist: trio-websocket==0.12.2; python_version >= "3.8" and extra == "dev"
141
- Requires-Dist: typing-extensions==4.13.1; python_version >= "3.8" and extra == "dev"
141
+ Requires-Dist: typing-extensions==4.13.2; python_version >= "3.8" and extra == "dev"
142
142
  Requires-Dist: tzdata==2025.2; python_version >= "2" and extra == "dev"
143
- Requires-Dist: urllib3==2.3.0; python_version >= "3.9" and extra == "dev"
143
+ Requires-Dist: urllib3==2.4.0; python_version >= "3.9" and extra == "dev"
144
144
  Requires-Dist: wasmer==1.1.0; extra == "dev"
145
145
  Requires-Dist: wasmer-compiler-cranelift==1.1.0; extra == "dev"
146
146
  Requires-Dist: wcwidth==0.2.13; extra == "dev"
@@ -87,7 +87,7 @@ cfl_common/common/tests/utils/organisation.py,sha256=vNgKFtU3VPcWRnZfh82yCS90PLA
87
87
  cfl_common/common/tests/utils/student.py,sha256=PLd980iSlxmMoB8J3C2pVjNC5xHdVxfAkJXzhv_dRhg,3814
88
88
  cfl_common/common/tests/utils/teacher.py,sha256=KQ_NAl4yQqiX_zwcULQjkovc29JPhnkLR5Nk3Ljzbpg,2661
89
89
  cfl_common/common/tests/utils/user.py,sha256=NvLzZLVP4jy5Hn1iztOYF_BTQ9WsbSmuWMEzGzhAsRU,919
90
- codeforlife_portal-8.6.8.dist-info/licenses/LICENSE.md,sha256=9AbRlCDqD2D1tPibimysFv3zg3AIc49-eyv9aEsyq9w,115
90
+ codeforlife_portal-8.6.10.dist-info/licenses/LICENSE.md,sha256=9AbRlCDqD2D1tPibimysFv3zg3AIc49-eyv9aEsyq9w,115
91
91
  deploy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
92
92
  deploy/captcha.py,sha256=MbOBuGnbT_SOIltSjP1XMOLrfo1DldCilaVAEim0vM4,23
93
93
  deploy/views.py,sha256=7mY2zNPkaBFrlWGByJHp2zFqHIHSMc0YArjE_sFWMMU,131
@@ -111,7 +111,7 @@ example_project/portal_test_settings.py,sha256=1eTweQoCt1okixE5eoEg-f9iX7idSLNdJ
111
111
  example_project/settings.py,sha256=YS-8YYtH8hZMUhZALA3eHJ1bdM2VJfpD1v3ItjBMGaQ,5936
112
112
  example_project/urls.py,sha256=FUTzHPlUS1O5kqMHjL5V4L552N2ln7uTDXcw9wjKUto,422
113
113
  example_project/wsgi.py,sha256=U1W6WzZxZaIdYZ5tks7w9fqp5WS5qvn2iThsVcskrWw,829
114
- portal/__init__.py,sha256=G_pzRvlhhpC4aKltWuTPdkOIFIgrNVaEVwHY8IocJ04,22
114
+ portal/__init__.py,sha256=c5dBwAPYl9ZmnRAAelgYK2SA4dR2qCeANaxCF9zQCWY,23
115
115
  portal/admin.py,sha256=RKJizTF6dPJKmGPZw7nZUM0X8jkiTjgyKhLQxtvHJ0I,6148
116
116
  portal/app_settings.py,sha256=DhWLQOwM0zVOXE3O5TNKbMM9K6agfLuCsHOdr1J7xEI,651
117
117
  portal/backends.py,sha256=2Dss6_WoQwPuDzJUF1yEaTQTNG4eUrD12ujJQ5cp5Tc,812
@@ -227,7 +227,6 @@ portal/static/portal/img/logo_python_den.svg,sha256=ivvw33qqXYittwwBOPSufMmGuUCy
227
227
  portal/static/portal/img/long_europe_map.png,sha256=2sEIi7lSkYZUcWtItiNdtic8OqDSBAYuD_4dXnun4Ug,42306
228
228
  portal/static/portal/img/mc_saatchi_logo.png,sha256=piY91zTp0LYT6Nbo-rbNgkvVJYXebvOrIm58f3qurp4,3095
229
229
  portal/static/portal/img/nigel.png,sha256=5ErEl5e56AsQnhsLjGs965wn5D8oGac7Wl6-wBGvN5w,49149
230
- portal/static/portal/img/ocado-swirl.svg,sha256=JNQzjgHENKhHVu0oNdqtGCz8iVWzMU56d0Cs-IDCuek,2447
231
230
  portal/static/portal/img/oval_blue.svg,sha256=9dkV4OG4DCSTfRd2BzioP-oI5b-hzHbS9oySF-43EPA,511
232
231
  portal/static/portal/img/oval_pink.svg,sha256=Nx_WIK4DDqzF9aHws1PiAWLBTwFcAVGAyBmgQvTXsw4,515
233
232
  portal/static/portal/img/oval_yellow.svg,sha256=-TbMEyYaQJKok57jUht2U3t_AkTvVclqpi1D9N99Dvs,511
@@ -409,7 +408,7 @@ portal/static/portal/sass/partials/_footer.scss,sha256=oqt-Qvz7vtUFNnpe4FkQkaZk3
409
408
  portal/static/portal/sass/partials/_forms.scss,sha256=cbonSxhtfaHR-4R6i0u65AaIZRG_25C837CgZlLuwCI,7101
410
409
  portal/static/portal/sass/partials/_grids.scss,sha256=pnMQht5lZ65MRB-0_nl8yn655hlKC_oWCwZopillVwc,4968
411
410
  portal/static/portal/sass/partials/_header.scss,sha256=P2Sb3dyJjiPCpzbNE83HYWomBPfak8wHTO-q5S-qyQA,7339
412
- portal/static/portal/sass/partials/_images.scss,sha256=Fro4a0VfLo6FyrvGk5yjsjzzGKWVdHeMFJiVC96C7vk,6213
411
+ portal/static/portal/sass/partials/_images.scss,sha256=4k19VgOkeYBcxxwEBOllSohSGAdWUN2BBwB9MnKC4mY,5593
413
412
  portal/static/portal/sass/partials/_popup.scss,sha256=GQ6Vtmj3vdOP4Hvsf8ZxKdEtuL8gqoClYpDgQ19kvnQ,2280
414
413
  portal/static/portal/sass/partials/_progress-bars.scss,sha256=cTyRa9WLeIE0rETmY58Rcyf-8O6JE3iDTa_jw3mk23g,144
415
414
  portal/static/portal/sass/partials/_subnavs.scss,sha256=6FJV1wBmHchnGBL9Yx56Ua4RR1b5P6ABTextZPTqXSs,5052
@@ -446,9 +445,9 @@ portal/templates/portal/email_invitation_sent.html,sha256=hAMzQXE3NFGnOsQlCGuo3A
446
445
  portal/templates/portal/email_style_template.html,sha256=lIlpiEC7-mO9tx3Ra9jtBjdXYxh5HKGZU8uqbvKdEbk,11893
447
446
  portal/templates/portal/email_verification_failed.html,sha256=i93oA6EXxa-Tj6A05Bk6ftR0h0A4M_oTjNqqyCJ4c8g,806
448
447
  portal/templates/portal/email_verification_needed.html,sha256=lJvwWjBg6y-9V17gyVCIQj1sXzB6O35porHGhrLT6WM,1053
449
- portal/templates/portal/form_shapes.html,sha256=oiaQ4RKZF8STTQsoQqql184UoYVyFQ60Mwve8lJMKu0,1223
448
+ portal/templates/portal/form_shapes.html,sha256=_b1V4S8tAUN_ktBDLa4Ea6TqWDXUCr9U0in3AzLgAf8,1662
450
449
  portal/templates/portal/getinvolved.html,sha256=jC56RTuLjDISr7eJUPA2TErz1TBcLi9G42BY-jo3Xe8,2872
451
- portal/templates/portal/home.html,sha256=J10xWo7opn_BjQrdxpn0wg1bo6w4DwjpTEOJ-pkJfKY,6178
450
+ portal/templates/portal/home.html,sha256=772Uaj07JcNB-H_FTXvNPj0JosRq2KHBPuGuBp_ZswQ,6528
452
451
  portal/templates/portal/home_learning.html,sha256=U1_AYrTNLqCjla7-vdVkC6SOigGBAmu3kscuiYNH4rw,10070
453
452
  portal/templates/portal/locked_out.html,sha256=JeiFHFyueFX03D54k82swjxvKY78cFG8Vre-bKKv_7Y,894
454
453
  portal/templates/portal/locked_out_school_student.html,sha256=bcpLtu4mkHR-zILLuArtHH2OfUSjHiqntcdbTMlx5Kg,684
@@ -465,7 +464,7 @@ portal/templates/portal/terms.html,sha256=ekhBnhJVHcr5BE5W4PZ-YNzGsmhvRTrj1gdpdN
465
464
  portal/templates/portal/login/independent_student.html,sha256=G4u82m0lko4yQvqRDMger5p63A6KtFI_bsEOsQWlyJw,1777
466
465
  portal/templates/portal/login/student.html,sha256=s5rUyT-u7gei2xWQ-Ba35ePC5WbtwReEzUZAKwUoZVY,1261
467
466
  portal/templates/portal/login/student_class_code.html,sha256=rJr6NB4Oz7XjZXDOUHpwzT6r6yxh7nZ5joca-z2bK-s,966
468
- portal/templates/portal/login/teacher.html,sha256=s-8s55_D0jCf7ejEDIN2Vexpde0BljojRAz9QODLSUk,2671
467
+ portal/templates/portal/login/teacher.html,sha256=TaqkNTuGuQaXrlMVr0VnmfRQrOEfKEN8VbqSJnoEoQA,2834
469
468
  portal/templates/portal/partials/banner.html,sha256=5MzRKCZWFPDzcRzHPqG5MeED_KsmvAcKoA74YYXmlPY,2101
470
469
  portal/templates/portal/partials/benefits.html,sha256=TZm4U_XimgivkPMjDXxxkV7PLfRyi2PAwkH8Y4sFDps,2363
471
470
  portal/templates/portal/partials/card_list.html,sha256=yHcp4oc0WRG9H6Ek871VCHbwYkDRcwQYbZ320gtsFn8,1550
@@ -515,7 +514,7 @@ portal/templates/two_factor/_wizard_forms_token.html,sha256=5JwDoRj_X1EM8RBISx6C
515
514
  portal/templates/two_factor/backup_token.html,sha256=5JwDoRj_X1EM8RBISx6Ckb_QZioHknwk_Xi04jUD19U,262
516
515
  portal/templates/two_factor/setup_wizard_token.html,sha256=Z0Et2sknJNLtFYvPnVZssG4zCsADuH77xllPIQb22rg,266
517
516
  portal/templates/two_factor/core/backup_tokens.html,sha256=u0T-LqtZtGRitlT6lwx_-U8DLPMQERRL2uh_rRL77rI,1442
518
- portal/templates/two_factor/core/login.html,sha256=Pd9sEvuif-C9W5TcHzUT79v_MCetelotFt-uS3TPMWQ,2198
517
+ portal/templates/two_factor/core/login.html,sha256=H7X8A4tBXxwt2bj6vKzg1CBzhsQopGsqZ3qJniGCeKw,2985
519
518
  portal/templates/two_factor/core/setup.html,sha256=B4lg0htUt9JzmTTGG9jGm_1H04FICoMTRwZ-VyQk2E8,3025
520
519
  portal/templates/two_factor/core/setup_complete.html,sha256=aE67CIwicwn6W8-JwUqf-bSgje_9G_2Nm9XfnXU-Uhk,600
521
520
  portal/templates/two_factor/profile/disable.html,sha256=fKIxqmB8RqN_DQrNMiZPTcSmoH-hChNcGWR0HKl1r-s,1010
@@ -635,7 +634,7 @@ portal/views/two_factor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG
635
634
  portal/views/two_factor/core.py,sha256=Lk32z2SN2Pg0rRkK-N-LXMvXC1kKKsH3l692kiSDQ4E,964
636
635
  portal/views/two_factor/form.py,sha256=lnHNKI-BMlpncTuW3zUzjPaJJNuEra2I_nOam0eOKFY,257
637
636
  portal/views/two_factor/profile.py,sha256=SHSg_xHccE5PtD-OfuOkYhREYz_er4bj5ro1RjJ88Yw,393
638
- codeforlife_portal-8.6.8.dist-info/METADATA,sha256=vODC4CQHGlSWg3tOHVZD-4FERTRVOMdyDPrhHY_zHW4,12338
639
- codeforlife_portal-8.6.8.dist-info/WHEEL,sha256=oSJJyWjO7Z2XSScFQUpXG1HL-N0sFMqqeKVVbZTPkWc,109
640
- codeforlife_portal-8.6.8.dist-info/top_level.txt,sha256=8e5pdsuIoTqEAMqpelHBjGjLbffcBtgOoggmd2q7nMw,41
641
- codeforlife_portal-8.6.8.dist-info/RECORD,,
637
+ codeforlife_portal-8.6.10.dist-info/METADATA,sha256=VVIzYcwdOdMkF5yBTOSgzgNAO7pqXKItzdRIgel0hdY,12321
638
+ codeforlife_portal-8.6.10.dist-info/WHEEL,sha256=_z0Kb-VmhLeNt2nZ-PsoQBjD25rP0tBwgAyRYD7oTKI,109
639
+ codeforlife_portal-8.6.10.dist-info/top_level.txt,sha256=8e5pdsuIoTqEAMqpelHBjGjLbffcBtgOoggmd2q7nMw,41
640
+ codeforlife_portal-8.6.10.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.3.1)
2
+ Generator: setuptools (80.7.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py2-none-any
5
5
  Tag: py3-none-any
portal/__init__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "8.6.8"
1
+ __version__ = "8.6.10"
@@ -30,13 +30,6 @@ img {
30
30
  margin-top: 1.5em;
31
31
  }
32
32
 
33
- .background--swirl {
34
- background-image: url("../img/ocado-swirl.svg");
35
- background-size: contain;
36
- background-repeat: no-repeat;
37
- background-position: center;
38
- }
39
-
40
33
  .image-row {
41
34
  align-items: baseline;
42
35
  display: flex;
@@ -70,7 +63,6 @@ img {
70
63
 
71
64
  .logo {
72
65
  @include _padding($spacing * 3, $spacing * 14, $spacing * 3, $spacing * 3);
73
- content: url("../img/logo_cfl.png");
74
66
  }
75
67
 
76
68
  .map-pin {
@@ -386,53 +378,33 @@ img {
386
378
  }
387
379
 
388
380
  .educate-homepage {
389
- content: url("../img/home_educate.png");
390
381
  width: 70%;
391
382
  object-fit: contain;
392
383
  }
393
384
 
394
385
  .play-homepage {
395
- content: url("../img/home_play.png");
396
386
  width: 70%;
397
387
  object-fit: contain;
398
388
  }
399
389
 
400
- .oval-blue {
401
- content: url("../img/oval_blue.svg");
402
- }
403
-
404
- .oval-pink {
405
- content: url("../img/oval_pink.svg");
406
- }
407
-
408
- .oval-yellow {
409
- content: url("../img/oval_yellow.svg");
410
- }
411
-
412
- .polygon-blue {
413
- content: url("../img/polygon_blue.svg");
414
- }
415
-
416
- .polygon-pink {
417
- content: url("../img/polygon_pink.svg");
418
- }
419
-
420
- .polygon-yellow {
421
- content: url("../img/polygon_yellow.svg");
422
- }
423
-
424
390
  .login-shape-left {
425
- @include _top(250px);
426
- @include _margin(-250px, 0px, 0px, 0px);
391
+ @include _top(300px);
427
392
  position: relative;
428
393
  left: -17vw;
394
+
395
+ img {
396
+ @include _margin(-250px, 0px, 0px, 0px);
397
+ }
429
398
  }
430
399
 
431
400
  .login-shape-right {
432
- @include _top(500px);
433
- @include _margin(-500px, 0px, 0px, 0px);
401
+ @include _top(550px);
434
402
  position: relative;
435
403
  left: 17vw;
404
+
405
+ img {
406
+ @include _margin(-250px, 0px, 0px, 0px);
407
+ }
436
408
  }
437
409
 
438
410
  @media (max-width: $tablet-large-max-width) {
@@ -10,16 +10,28 @@ other templates to add custom content. -->
10
10
  {% block content %}
11
11
  <section class="row mx-0">
12
12
  {% if usertype == "TEACHER" %}
13
- <span class="oval-blue login-shape-left"></span>
14
- <span class="polygon-yellow login-shape-right"></span>
13
+ <span class="login-shape-left">
14
+ <img src="{% static 'portal/img/oval_blue.svg' %}" alt="Blue oval">
15
+ </span>
16
+ <span class="login-shape-right">
17
+ <img src="{% static 'portal/img/polygon_yellow.svg' %}" alt="Yellow polygon">
18
+ </span>
15
19
  <div class="form--login is-flex form--register--teacher">
16
20
  {% elif usertype == "SCHOOL_STUDENT" %}
17
- <span class="oval-yellow login-shape-left"></span>
18
- <span class="polygon-pink login-shape-right"></span>
21
+ <span class="login-shape-left">
22
+ <img src="{% static 'portal/img/oval_yellow.svg' %}" alt="Yellow oval">
23
+ </span>
24
+ <span class="login-shape-right">
25
+ <img src="{% static 'portal/img/polygon_pink.svg' %}" alt="Pink polygon">
26
+ </span>
19
27
  <div class="form--login is-flex form--register--student">
20
28
  {% else %}
21
- <span class="oval-pink login-shape-left"></span>
22
- <span class="polygon-blue login-shape-right"></span>
29
+ <span class="login-shape-left">
30
+ <img src="{% static 'portal/img/oval_pink.svg' %}" alt="Pink oval">
31
+ </span>
32
+ <span class="login-shape-right">
33
+ <img src="{% static 'portal/img/polygon_blue.svg' %}" alt="Blue polygon">
34
+ </span>
23
35
  <div class="form--login is-flex form--register--indep-student">
24
36
  {% endif %}
25
37
  <div class="form col-xs-12 col-sm-8 col-md-8 col-lg-9 center-block">
@@ -9,9 +9,12 @@
9
9
  <div class="banner--homepage banner--homepage--teacher col-sm-6">
10
10
  <div class="banner col-sm-11">
11
11
  <div class="banner__item">
12
- <a href="{% url 'teach' %}" class="educate-homepage"
13
- alt="Male teacher helping young female student"
14
- ></a>
12
+ <a href="{% url 'teach' %}">
13
+ <img src="{% static 'portal/img/home_educate.png' %}" class="educate-homepage"
14
+ alt="Male teacher helping young female student"
15
+ title="Male teacher helping young female student"
16
+ >
17
+ </a>
15
18
  </div>
16
19
  <div class="banner-home-content">
17
20
  <div class="banner-home-text">
@@ -29,9 +32,12 @@
29
32
  <div class="banner--homepage banner--homepage--student col-sm-6">
30
33
  <div class="banner col-sm-11">
31
34
  <div class="banner__item">
32
- <a href="{% url 'play' %}" class="play-homepage"
33
- alt="Two young boys playing on a laptop"
34
- ></a>
35
+ <a href="{% url 'play' %}">
36
+ <img src="{% static 'portal/img/home_play.png' %}" class="play-homepage"
37
+ alt="Two young boys playing on a laptop"
38
+ title="Two young boys playing on a laptop"
39
+ >
40
+ </a>
35
41
  </div>
36
42
  <div class="banner-home-content">
37
43
  <div class="banner-home-text">
@@ -20,8 +20,12 @@
20
20
 
21
21
  {% if wizard.steps.current == 'auth' %}
22
22
  <section class="row mx-0">
23
- <span class="oval-blue login-shape-left"></span>
24
- <span class="polygon-yellow login-shape-right"></span>
23
+ <span class="login-shape-left">
24
+ <img src="{% static 'portal/img/oval_blue.svg' %}" alt="Blue oval">
25
+ </span>
26
+ <span class="login-shape-right">
27
+ <img src="{% static 'portal/img/polygon_yellow.svg' %}" alt="Yellow polygon">
28
+ </span>
25
29
  <div class="form--login is-flex form--register--teacher">
26
30
  <div class="form col-xs-12 col-sm-8 col-md-8 col-lg-9 center-block">
27
31
  <h4 class="center-block">Welcome</h4>
@@ -1,6 +1,7 @@
1
1
  {# Overriden the original "two_factor" template to remove extending base template and slightly adjust style #}
2
2
 
3
3
  {% load i18n %}
4
+ {% load static %}
4
5
  {% load two_factor_tags %}
5
6
 
6
7
  {% block extra_media %}
@@ -10,61 +11,65 @@
10
11
  {% block content %}
11
12
 
12
13
  <section class="row mx-0">
13
- <span class="oval-blue login-shape-left"></span>
14
- <span class="polygon-yellow login-shape-right"></span>
15
- <div class="form--login is-flex form--register--teacher">
16
- <div class="form col-xs-12 col-sm-8 col-md-8 col-lg-9 center-block">
17
- <h4>{% block title %}{% trans "Welcome" %}{% endblock %}</h4>
14
+ <span class="login-shape-left">
15
+ <img src="{% static 'portal/img/oval_blue.svg' %}" alt="Blue oval">
16
+ </span>
17
+ <span class="login-shape-right">
18
+ <img src="{% static 'portal/img/polygon_yellow.svg' %}" alt="Yellow polygon">
19
+ </span>
20
+ <div class="form--login is-flex form--register--teacher">
21
+ <div class="form col-xs-12 col-sm-8 col-md-8 col-lg-9 center-block">
22
+ <h4>{% block title %}{% trans "Welcome" %}{% endblock %}</h4>
18
23
 
19
- {% if wizard.steps.current == 'auth' %}
20
- <p>{% blocktrans %}Enter your credentials.{% endblocktrans %}</p>
21
- {% elif wizard.steps.current == 'token' %}
22
- <p>{{ device|as_verbose_action }}</p>
23
- {% elif wizard.steps.current == 'backup' %}
24
- <p>{% blocktrans trimmed %}Use this form for entering backup tokens for logging in.
25
- These tokens have been generated for you to print and keep safe. Please
26
- enter one of these backup tokens to log into your account.{% endblocktrans %}</p>
27
- {% endif %}
24
+ {% if wizard.steps.current == 'auth' %}
25
+ <p>{% blocktrans %}Enter your credentials.{% endblocktrans %}</p>
26
+ {% elif wizard.steps.current == 'token' %}
27
+ <p>{{ device|as_verbose_action }}</p>
28
+ {% elif wizard.steps.current == 'backup' %}
29
+ <p>{% blocktrans trimmed %}Use this form for entering backup tokens for logging in.
30
+ These tokens have been generated for you to print and keep safe. Please
31
+ enter one of these backup tokens to log into your account.{% endblocktrans %}</p>
32
+ {% endif %}
28
33
 
29
- <form action="" method="post">
30
- {% block main_form_content %}
31
- {% csrf_token %}
32
- {% include "two_factor/_wizard_forms.html" %}
34
+ <form action="" method="post">
35
+ {% block main_form_content %}
36
+ {% csrf_token %}
37
+ {% include "two_factor/_wizard_forms.html" %}
33
38
 
34
- {# hidden submit button to enable [enter] key #}
35
- <input type="submit" value="" hidden />
39
+ {# hidden submit button to enable [enter] key #}
40
+ <input type="submit" value="" hidden />
36
41
 
37
- {% if other_devices %}
38
- <p>{% trans "Or, alternatively, use one of your other authentication methods:" %}</p>
39
- <p>
40
- {% for other in other_devices %}
41
- <button name="challenge_device" value="{{ other.persistent_id }}"
42
- class="btn btn-secondary btn-block" type="submit">
43
- {{ other|as_action }}
44
- </button>
45
- {% endfor %}</p>
46
- {% endif %}
42
+ {% if other_devices %}
43
+ <p>{% trans "Or, alternatively, use one of your other authentication methods:" %}</p>
44
+ <p>
45
+ {% for other in other_devices %}
46
+ <button name="challenge_device" value="{{ other.persistent_id }}"
47
+ class="btn btn-secondary btn-block" type="submit">
48
+ {{ other|as_action }}
49
+ </button>
50
+ {% endfor %}</p>
51
+ {% endif %}
47
52
 
48
- {% include "two_factor/_wizard_actions.html" %}
49
- {% endblock %}
50
- </form>
53
+ {% include "two_factor/_wizard_actions.html" %}
54
+ {% endblock %}
55
+ </form>
51
56
 
52
- {% block 'backup_tokens' %}
53
- {% if backup_tokens %}
54
- <hr>
55
- <div class="backup_tokens_form">
56
- <form action="" method="post">
57
- {% csrf_token %}
58
- <p>{% trans "As a last resort, you can use a backup token:" %}</p>
59
- <p>
60
- <button name="wizard_goto_step" type="submit" value="backup"
61
- class="button button--primary">{% trans "Use Backup Token" %}</button>
62
- </p>
63
- </form>
64
- </div>
57
+ {% block 'backup_tokens' %}
58
+ {% if backup_tokens %}
59
+ <hr>
60
+ <div class="backup_tokens_form">
61
+ <form action="" method="post">
62
+ {% csrf_token %}
63
+ <p>{% trans "As a last resort, you can use a backup token:" %}</p>
64
+ <p>
65
+ <button name="wizard_goto_step" type="submit" value="backup"
66
+ class="button button--primary">{% trans "Use Backup Token" %}</button>
67
+ </p>
68
+ </form>
69
+ </div>
70
+ {% endif %}
71
+ {% endblock %}
72
+ </div>
65
73
  </div>
66
- </div>
67
74
  </section>
68
- {% endif %}
69
- {% endblock %}
70
75
  {% endblock %}
@@ -1,22 +0,0 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <svg width="670px" height="670px" viewBox="0 0 670 670" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
- <!-- Generator: Sketch 47.1 (45422) - http://www.bohemiancoding.com/sketch -->
4
- <title>ocado-swirl</title>
5
- <desc>Created with Sketch.</desc>
6
- <defs>
7
- <polygon id="path-1" points="5.17780764e-14 0 670 0 670 670 0 670"></polygon>
8
- </defs>
9
- <g id="Play-landing-" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
10
- <g id="AIMMO-Prototype-landing---L-Desktops" transform="translate(-566.000000, -1829.000000)">
11
- <g id="Deliver-through-time-Copy" transform="translate(0.000000, 1829.000000)">
12
- <g id="ocado-swirl" transform="translate(566.000000, 0.000000)">
13
- <mask id="mask-2" fill="white">
14
- <use xlink:href="#path-1"></use>
15
- </mask>
16
- <g id="Clip-2"></g>
17
- <path d="M658.260758,254.973547 C674.312291,312.597644 673.719847,369.91571 657.606601,427.057142 C614.658514,579.343237 470.873555,679.663717 310.541302,669.260735 C156.532567,659.268533 27.1699201,539.8612 3.90825914,386.229804 C-28.5815422,171.653161 145.926171,-15.4115496 362.664044,1.00523855 C421.599894,5.46835385 477.814203,18.1573213 528.562804,49.3950207 C579.57677,80.7970316 617.72359,122.756066 631.654256,182.735982 C654.510668,281.150447 570.864961,412.905801 427.11703,374.563676 C370.388446,359.432627 332.965724,305.567159 334.165012,247.189282 C335.341672,189.838353 374.768007,138.897632 428.873791,125.00919 C446.291238,120.537859 463.73954,119.673169 479.651191,124.787369 C472.920367,137.546169 463.840338,149.321153 460.263045,162.576996 C450.370462,199.222602 471.498913,234.781698 507.712061,246.16028 C543.176426,257.304718 580.146586,238.480764 594.317932,201.288821 C605.61757,171.634676 600.09632,143.516844 583.246632,117.572034 C561.624478,84.2804387 528.931024,66.8942118 491.901208,55.983918 C363.661736,18.1983992 220.981439,115.8406 238.084149,280.285757 C249.902176,393.925751 356.017561,459.58058 441.267805,460.679414 C542.250732,461.981584 635.392002,386.601559 653.712515,287.460014 C655.697614,276.71814 656.767305,265.805792 658.260758,254.973547" id="Fill-1" fill="#F0F0F0" opacity="0.468353714" mask="url(#mask-2)"></path>
18
- </g>
19
- </g>
20
- </g>
21
- </g>
22
- </svg>