codeforlife-portal 8.1.1__py2.py3-none-any.whl → 8.1.2__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.

cfl_common/setup.py CHANGED
@@ -17,7 +17,7 @@ setup(
17
17
  version=version,
18
18
  include_package_data=True,
19
19
  install_requires=[
20
- "django==4.2.17",
20
+ "django==4.2.18",
21
21
  "django-countries==7.6.1",
22
22
  "django-csp==3.8",
23
23
  "django-import-export==4.2.0",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: codeforlife-portal
3
- Version: 8.1.1
3
+ Version: 8.1.2
4
4
  Classifier: Programming Language :: Python
5
5
  Classifier: Programming Language :: Python :: 3.12
6
6
  Classifier: Framework :: Django
@@ -9,7 +9,7 @@ License-File: LICENSE.md
9
9
  Requires-Dist: django-recaptcha==4.0.0
10
10
  Requires-Dist: pyyaml==6.0.2
11
11
  Requires-Dist: importlib-metadata==4.13.0
12
- Requires-Dist: reportlab==3.6.13
12
+ Requires-Dist: reportlab==4.2.5
13
13
  Requires-Dist: django-formtools==2.5.1
14
14
  Requires-Dist: django-otp==1.5.4
15
15
  Requires-Dist: requests==2.32.2
@@ -1,5 +1,5 @@
1
1
  cfl_common/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- cfl_common/setup.py,sha256=0Bbnt2gvlq6PnI5wMZ3hPuccY-CtdKQIy5RSSmbja4U,978
2
+ cfl_common/setup.py,sha256=T8DMxXoniOYHNZpgks4TvYvAt4lDnZxDHAwVBH-02iM,978
3
3
  cfl_common/common/__init__.py,sha256=XlncBOpKp_gekbKH7Y_i6yu1qy5tJc3Y8sn8cDy-Vgk,48
4
4
  cfl_common/common/app_settings.py,sha256=Bw1DXkZpNIdwUJ-cIOjZnngH5_NbMXC0koW7NgQ0pKY,2495
5
5
  cfl_common/common/apps.py,sha256=49UXZ3bSkFKvIEOL4zM7y1sAhccQJyRtsoOg5XVd_8Y,129
@@ -110,7 +110,7 @@ example_project/portal_test_settings.py,sha256=7Q7SdosA0Ba85qz-xkAe3EHyMPpSIQ61C
110
110
  example_project/settings.py,sha256=NjFhtDNLwdY5vhUAtqk9a9m3GRfcuWRVqIqnJ3u0o6E,5658
111
111
  example_project/urls.py,sha256=FUTzHPlUS1O5kqMHjL5V4L552N2ln7uTDXcw9wjKUto,422
112
112
  example_project/wsgi.py,sha256=U1W6WzZxZaIdYZ5tks7w9fqp5WS5qvn2iThsVcskrWw,829
113
- portal/__init__.py,sha256=8YlEPKK1Cm5T4dPa2BQPpPwVVTzjPLnmqAeNcTb5nOw,22
113
+ portal/__init__.py,sha256=EsLdncrDNNSYcAkb6bacgIFA7Oh4EZnzpp9alKokT5A,22
114
114
  portal/admin.py,sha256=RKJizTF6dPJKmGPZw7nZUM0X8jkiTjgyKhLQxtvHJ0I,6148
115
115
  portal/app_settings.py,sha256=DhWLQOwM0zVOXE3O5TNKbMM9K6agfLuCsHOdr1J7xEI,651
116
116
  portal/backends.py,sha256=2Dss6_WoQwPuDzJUF1yEaTQTNG4eUrD12ujJQ5cp5Tc,812
@@ -118,7 +118,7 @@ portal/beta.py,sha256=0TCC-9_KZoM1nuzJ9FiuKR5n9JITdMYenHGQtRvn9UU,255
118
118
  portal/context_processors.py,sha256=Q68UhmArLPRchS2KmfVR4hKrijllXal3sO5cHYWC2Fc,222
119
119
  portal/handlers.py,sha256=gF99OfQrGcIGDnUyONhvylZNU8sl6XHYEurwu0fuiss,422
120
120
  portal/models.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
121
- portal/urls.py,sha256=_EJQ7XNVzeqN6g9pbtKg7DHZHlz31-HgWgft6_kOwXw,18415
121
+ portal/urls.py,sha256=9d7cV2O8CTMT_Y2Nlkfxxfw8NHa0bw_RKgQw4ddqsgk,18194
122
122
  portal/wsgi.py,sha256=3yRcNxBQG30NhzrVi93bX-DrbXtsIQBc70HiW5wbOyE,401
123
123
  portal/forms/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
124
124
  portal/forms/admin.py,sha256=Cdl8-wvasAzvMfgUlFYzQjYeuyC7gIsSiy8V_-jMp7w,2080
@@ -437,7 +437,7 @@ portal/templates/django_recaptcha/includes/js_v2_invisible.html,sha256=QQnBzZBqd
437
437
  portal/templates/portal/about.html,sha256=_iD0GCP6q3-XuZ2LC-9O0KYY-mKL6c9qk3O-NRRqsRM,10321
438
438
  portal/templates/portal/base.html,sha256=4xLACNgKmRQTdEsdNNGYhLzMozzYzWIIzk31HrLGBf0,12109
439
439
  portal/templates/portal/base_no_userprofile.html,sha256=PlRufyYmUUGWBZ6CvbYhJWOMTqKqdcee4xnO5--AogA,447
440
- portal/templates/portal/coding_club.html,sha256=CJS1dEKMQ70AQ9U05wTctmvXYJngs18qxbyzNJmkfHk,5449
440
+ portal/templates/portal/coding_club.html,sha256=DhPSIhxxzo6w0v80jXKVo_fjZ_TKnv7_u5cQq0woW8Q,5324
441
441
  portal/templates/portal/contribute.html,sha256=UIC_N3Lun9wB_6jEra0wvlT9fDiiIeMby7_onXYo6k0,4176
442
442
  portal/templates/portal/dotmailer_consent_form.html,sha256=UDdizPoKYZGybr6z9nzDV4WPhJPa-S3bIKywvVgFrxg,918
443
443
  portal/templates/portal/email_invitation_sent.html,sha256=hAMzQXE3NFGnOsQlCGuo3Aps-vazSJb5BhAN7bWT48M,641
@@ -611,7 +611,7 @@ portal/views/admin.py,sha256=4Xt3zEyQH7sUwQSrwuRtoCodWidjOzd7gJUwWU96pXY,957
611
611
  portal/views/api.py,sha256=mdWmFkV5mxmR-mvj6ttIe8uwW9tbcx9-5ykk5dpX0LI,7047
612
612
  portal/views/dotmailer.py,sha256=x49p89TtwA1MLysRLtq5yRRzVtIpzGoU__Xb5hPuHak,3208
613
613
  portal/views/email.py,sha256=V3wXRxIjeZ4OJBVqGCQrPn-GQWKZK1PCXbR1f2Zpa_4,2174
614
- portal/views/home.py,sha256=cKCby5xDYImMeJqNnrnfkDbb3tAcQX-lw6IgBS7RmR4,10050
614
+ portal/views/home.py,sha256=8leK4ADxRg-gK-bm7D08CR44bhV3I8lt5pCV59HXMkk,9619
615
615
  portal/views/legal.py,sha256=nUunsTHnhMcXBcDlg1GmUal86k9Vhinne4A2FWfq78M,342
616
616
  portal/views/organisation.py,sha256=sPDbiM7hdtpF8GKyh_4n4VPl2a-WnAgnF4q9aSvQCVI,3341
617
617
  portal/views/play_landing_page.py,sha256=FFmjUFub3ZdlbMqkB8yX3jAImCzqrUqgb8AZcpKywZ4,308
@@ -633,8 +633,8 @@ portal/views/two_factor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG
633
633
  portal/views/two_factor/core.py,sha256=Lk32z2SN2Pg0rRkK-N-LXMvXC1kKKsH3l692kiSDQ4E,964
634
634
  portal/views/two_factor/form.py,sha256=lnHNKI-BMlpncTuW3zUzjPaJJNuEra2I_nOam0eOKFY,257
635
635
  portal/views/two_factor/profile.py,sha256=SHSg_xHccE5PtD-OfuOkYhREYz_er4bj5ro1RjJ88Yw,393
636
- codeforlife_portal-8.1.1.dist-info/LICENSE.md,sha256=9AbRlCDqD2D1tPibimysFv3zg3AIc49-eyv9aEsyq9w,115
637
- codeforlife_portal-8.1.1.dist-info/METADATA,sha256=e4FNA5qvh6-VVZ05ztRGRDfdcZARBc_U0XYDh1J3Pws,3078
638
- codeforlife_portal-8.1.1.dist-info/WHEEL,sha256=Kh9pAotZVRFj97E15yTA4iADqXdQfIVTHcNaZTjxeGM,110
639
- codeforlife_portal-8.1.1.dist-info/top_level.txt,sha256=8e5pdsuIoTqEAMqpelHBjGjLbffcBtgOoggmd2q7nMw,41
640
- codeforlife_portal-8.1.1.dist-info/RECORD,,
636
+ codeforlife_portal-8.1.2.dist-info/LICENSE.md,sha256=9AbRlCDqD2D1tPibimysFv3zg3AIc49-eyv9aEsyq9w,115
637
+ codeforlife_portal-8.1.2.dist-info/METADATA,sha256=8CmqSD1WWVfvsulf47gxjkpy2HNBNZvXZyycu_0anTI,3077
638
+ codeforlife_portal-8.1.2.dist-info/WHEEL,sha256=Kh9pAotZVRFj97E15yTA4iADqXdQfIVTHcNaZTjxeGM,110
639
+ codeforlife_portal-8.1.2.dist-info/top_level.txt,sha256=8e5pdsuIoTqEAMqpelHBjGjLbffcBtgOoggmd2q7nMw,41
640
+ codeforlife_portal-8.1.2.dist-info/RECORD,,
portal/__init__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "8.1.1"
1
+ __version__ = "8.1.2"
@@ -46,12 +46,9 @@
46
46
  </p>
47
47
  </div>
48
48
  <div>
49
- <form method="post", action="{% url 'download_student_pack' 3 %}" class="non-styled--form">
50
- {% csrf_token %}
51
- <button id="primary_pack" href="" type="submit" class="button button--primary button--icon">
52
- Download the Primary coding club pack<span class="iconify" data-icon="mdi:tray-arrow-down"></span>
53
- </button>
54
- </form>
49
+ <a id="primary_pack" download type="submit" class="button button--primary button--icon" href="https://code-for-life.gitbook.io/code-for-life-primary-club-resources">
50
+ Download the Primary coding club pack<span class="iconify" data-icon="mdi:tray-arrow-down"></span>
51
+ </a>
55
52
  </div>
56
53
  </div>
57
54
  <div class="col-sm-6 d-flex flex-column">
@@ -77,7 +74,7 @@
77
74
  <h4 class="mt-0">Python coding club</h4>
78
75
  <p>
79
76
  Download your FREE coding club pack for students aged 12 and above.
80
- This pack is a fast paced introduction to Python. It is aimed at students already interested
77
+ This pack is a fast-paced introduction to Python. It is aimed at students already interested
81
78
  in learning coding, individuals looking to learn and run their own club, or adults wanting to
82
79
  try coding out. It is designed to be used in face-to-face or online clubs.
83
80
  </p>
portal/urls.py CHANGED
@@ -5,7 +5,6 @@ from django.views.generic import RedirectView
5
5
  from django.views.generic.base import TemplateView
6
6
  from django.views.i18n import JavaScriptCatalog
7
7
  from game.views.level import play_default_level
8
- from two_factor.urls import urlpatterns as tf_urls
9
8
  from two_factor.views import (
10
9
  BackupTokensView,
11
10
  ProfileView,
@@ -44,7 +43,6 @@ from portal.views.dotmailer import (
44
43
  from portal.views.email import verify_email
45
44
  from portal.views.home import (
46
45
  coding_club,
47
- download_student_pack,
48
46
  home,
49
47
  home_learning,
50
48
  logout_view,
@@ -527,11 +525,6 @@ urlpatterns = [
527
525
  ),
528
526
  ),
529
527
  re_path(r"^codingClub/$", coding_club, name="codingClub"),
530
- re_path(
531
- r"^codingClub/(?P<student_pack_type>[3-4])/",
532
- download_student_pack,
533
- name="download_student_pack",
534
- ),
535
528
  re_path(
536
529
  r"^removeFakeAccounts/",
537
530
  RemoveFakeAccounts.as_view(),
portal/views/home.py CHANGED
@@ -2,8 +2,6 @@ import logging
2
2
  import math
3
3
 
4
4
  from common.helpers.emails import (
5
- NOTIFICATION_EMAIL,
6
- send_email,
7
5
  send_verification_email,
8
6
  )
9
7
  from common.mail import campaign_ids, send_dotdigital_email
@@ -16,7 +14,7 @@ from django.contrib.auth.models import User
16
14
  from django.core.exceptions import ObjectDoesNotExist
17
15
  from django.db.models import F
18
16
  from django.http import HttpResponse, HttpResponseRedirect
19
- from django.shortcuts import redirect, render
17
+ from django.shortcuts import render
20
18
  from django.urls import reverse, reverse_lazy
21
19
  from django.utils import timezone
22
20
  from django.utils.html import format_html
@@ -37,8 +35,6 @@ from portal.strings.ten_year_map import (
37
35
  TEN_YEAR_MAP_BANNER,
38
36
  TEN_YEAR_MAP_HEADLINE,
39
37
  )
40
- from portal.templatetags.app_tags import cloud_storage
41
- from portal.views.teacher.teach import count_student_pack_downloads_click
42
38
 
43
39
  LOGGER = logging.getLogger(__name__)
44
40
 
@@ -281,13 +277,6 @@ def coding_club(request):
281
277
  )
282
278
 
283
279
 
284
- def download_student_pack(request, student_pack_type):
285
- if request.method == "POST":
286
- count_student_pack_downloads_click(int(student_pack_type))
287
- link = cloud_storage("club_packs/PrimaryCodingClub.zip")
288
- return redirect(link)
289
-
290
-
291
280
  def home_learning(request):
292
281
  return render(
293
282
  request,