codeforlife-portal 8.6.9__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.
- {codeforlife_portal-8.6.9.dist-info → codeforlife_portal-8.6.10.dist-info}/METADATA +3 -3
- {codeforlife_portal-8.6.9.dist-info → codeforlife_portal-8.6.10.dist-info}/RECORD +11 -12
- {codeforlife_portal-8.6.9.dist-info → codeforlife_portal-8.6.10.dist-info}/WHEEL +1 -1
- portal/__init__.py +1 -1
- portal/static/portal/sass/partials/_images.scss +10 -38
- portal/templates/portal/form_shapes.html +18 -6
- portal/templates/portal/home.html +12 -6
- portal/templates/portal/login/teacher.html +6 -2
- portal/templates/two_factor/core/login.html +54 -49
- portal/static/portal/img/ocado-swirl.svg +0 -22
- {codeforlife_portal-8.6.9.dist-info → codeforlife_portal-8.6.10.dist-info}/licenses/LICENSE.md +0 -0
- {codeforlife_portal-8.6.9.dist-info → codeforlife_portal-8.6.10.dist-info}/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: codeforlife-portal
|
|
3
|
-
Version: 8.6.
|
|
3
|
+
Version: 8.6.10
|
|
4
4
|
Classifier: Programming Language :: Python
|
|
5
5
|
Classifier: Programming Language :: Python :: 3.12
|
|
6
6
|
Classifier: Framework :: Django
|
|
@@ -8,7 +8,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
10
|
Requires-Dist: certifi==2025.4.26; python_version >= "3.6"
|
|
11
|
-
Requires-Dist: cfl-common==8.6.
|
|
11
|
+
Requires-Dist: cfl-common==8.6.10
|
|
12
12
|
Requires-Dist: chardet==5.2.0; python_version >= "3.7"
|
|
13
13
|
Requires-Dist: charset-normalizer==3.4.2; python_version >= "3.7"
|
|
14
14
|
Requires-Dist: diff-match-patch==20241021; python_version >= "3.7"
|
|
@@ -60,7 +60,7 @@ 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
62
|
Requires-Dist: certifi==2025.4.26; python_version >= "3.6" and extra == "dev"
|
|
63
|
-
Requires-Dist: cfl-common==8.6.
|
|
63
|
+
Requires-Dist: cfl-common==8.6.10; extra == "dev"
|
|
64
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"
|
|
@@ -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.
|
|
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=
|
|
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=
|
|
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=
|
|
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=
|
|
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=
|
|
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=
|
|
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.
|
|
639
|
-
codeforlife_portal-8.6.
|
|
640
|
-
codeforlife_portal-8.6.
|
|
641
|
-
codeforlife_portal-8.6.
|
|
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,,
|
portal/__init__.py
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
__version__ = "8.6.
|
|
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(
|
|
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(
|
|
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="
|
|
14
|
-
|
|
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="
|
|
18
|
-
|
|
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="
|
|
22
|
-
|
|
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' %}"
|
|
13
|
-
|
|
14
|
-
|
|
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' %}"
|
|
33
|
-
|
|
34
|
-
|
|
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="
|
|
24
|
-
|
|
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
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
<
|
|
17
|
-
|
|
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
|
-
|
|
26
|
-
|
|
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
|
-
|
|
31
|
-
|
|
32
|
-
|
|
34
|
+
<form action="" method="post">
|
|
35
|
+
{% block main_form_content %}
|
|
36
|
+
{% csrf_token %}
|
|
37
|
+
{% include "two_factor/_wizard_forms.html" %}
|
|
33
38
|
|
|
34
|
-
|
|
35
|
-
|
|
39
|
+
{# hidden submit button to enable [enter] key #}
|
|
40
|
+
<input type="submit" value="" hidden />
|
|
36
41
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
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
|
-
|
|
49
|
-
|
|
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
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
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>
|
{codeforlife_portal-8.6.9.dist-info → codeforlife_portal-8.6.10.dist-info}/licenses/LICENSE.md
RENAMED
|
File without changes
|
|
File without changes
|