learning-paths-plugin 0.3.4rc10__tar.gz → 0.3.5__tar.gz

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.
Files changed (53) hide show
  1. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/CHANGELOG.rst +15 -1
  2. {learning_paths_plugin-0.3.4rc10/learning_paths_plugin.egg-info → learning_paths_plugin-0.3.5}/PKG-INFO +16 -2
  3. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/__init__.py +1 -1
  4. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/admin.py +5 -30
  5. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5/learning_paths_plugin.egg-info}/PKG-INFO +16 -2
  6. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/LICENSE.txt +0 -0
  7. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/MANIFEST.in +0 -0
  8. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/README.rst +0 -0
  9. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/api/__init__.py +0 -0
  10. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/api/urls.py +0 -0
  11. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/api/v1/__init__.py +0 -0
  12. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/api/v1/filters.py +0 -0
  13. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/api/v1/permissions.py +0 -0
  14. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/api/v1/serializers.py +0 -0
  15. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/api/v1/urls.py +0 -0
  16. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/api/v1/utils.py +0 -0
  17. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/api/v1/views.py +0 -0
  18. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/apps.py +0 -0
  19. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/compat.py +0 -0
  20. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/conftest.py +0 -0
  21. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/keys.py +0 -0
  22. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0001_initial.py +0 -0
  23. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0002_learningpath_uuid.py +0 -0
  24. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0003_learningpath_subtitle.py +0 -0
  25. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0004_auto_20240207_1633.py +0 -0
  26. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0005_learningpathstep_weight_learningpathgradingcriteria.py +0 -0
  27. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0006_enrollment_models.py +0 -0
  28. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0007_replace_uuid_with_learningpathkey.py +0 -0
  29. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0008_remove_learningpathstep_relative_due_date_in_days.py +0 -0
  30. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0009_remove_learningpath_slug.py +0 -0
  31. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0010_learningpath_invite_only.py +0 -0
  32. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0011_replace_learningpath_image_url_with_image.py +0 -0
  33. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0012_alter_learningpath_subtitle.py +0 -0
  34. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0013_enrollment_audit.py +0 -0
  35. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0014_remove_learningpath_duration_in_days_and_more.py +0 -0
  36. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/0015_make_skill_level_optional.py +0 -0
  37. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/migrations/__init__.py +0 -0
  38. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/models.py +0 -0
  39. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/receivers.py +0 -0
  40. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/settings.py +0 -0
  41. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/templates/learning_paths/base.html +0 -0
  42. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths/urls.py +0 -0
  43. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths_plugin.egg-info/SOURCES.txt +0 -0
  44. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths_plugin.egg-info/dependency_links.txt +0 -0
  45. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths_plugin.egg-info/entry_points.txt +0 -0
  46. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths_plugin.egg-info/not-zip-safe +0 -0
  47. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths_plugin.egg-info/requires.txt +0 -0
  48. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/learning_paths_plugin.egg-info/top_level.txt +0 -0
  49. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/pyproject.toml +0 -0
  50. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/requirements/base.in +0 -0
  51. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/requirements/constraints.txt +0 -0
  52. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/setup.cfg +0 -0
  53. {learning_paths_plugin-0.3.4rc10 → learning_paths_plugin-0.3.5}/setup.py +0 -0
@@ -16,7 +16,21 @@ Unreleased
16
16
 
17
17
  *
18
18
 
19
- 0.3.4 - 2025-05-23
19
+ 0.3.5 - 2025-09-01
20
+ ******************
21
+
22
+ Changed
23
+ =======
24
+
25
+ * Allow changing the Learning Path key in the Django admin interface.
26
+
27
+ Removed
28
+ =======
29
+
30
+ * Grading criteria from the Django admin interface.
31
+ * Step weight and order from the Django admin interface.
32
+
33
+ 0.3.4 - 2025-08-02
20
34
  ******************
21
35
 
22
36
  Added
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: learning-paths-plugin
3
- Version: 0.3.4rc10
3
+ Version: 0.3.5
4
4
  Summary: Learning Paths plugin
5
5
  Home-page: https://github.com/open-craft/learning-paths-plugin
6
6
  Author: OpenCraft
@@ -121,7 +121,21 @@ Unreleased
121
121
 
122
122
  *
123
123
 
124
- 0.3.4 - 2025-05-23
124
+ 0.3.5 - 2025-09-01
125
+ ******************
126
+
127
+ Changed
128
+ =======
129
+
130
+ * Allow changing the Learning Path key in the Django admin interface.
131
+
132
+ Removed
133
+ =======
134
+
135
+ * Grading criteria from the Django admin interface.
136
+ * Step weight and order from the Django admin interface.
137
+
138
+ 0.3.4 - 2025-08-02
125
139
  ******************
126
140
 
127
141
  Added
@@ -2,4 +2,4 @@
2
2
  Learning Paths plugin.
3
3
  """
4
4
 
5
- __version__ = "0.3.4-rc10"
5
+ __version__ = "0.3.5"
@@ -21,7 +21,6 @@ from .models import (
21
21
  LearningPathEnrollment,
22
22
  LearningPathEnrollmentAllowed,
23
23
  LearningPathEnrollmentAudit,
24
- LearningPathGradingCriteria,
25
24
  LearningPathStep,
26
25
  RequiredSkill,
27
26
  Skill,
@@ -93,6 +92,7 @@ class LearningPathStepInline(admin.TabularInline):
93
92
 
94
93
  model = LearningPathStep
95
94
  form = LearningPathStepForm
95
+ fields = ("course_key",)
96
96
 
97
97
 
98
98
  class AcquiredSkillInline(admin.TabularInline):
@@ -107,13 +107,6 @@ class RequiredSkillInline(admin.TabularInline):
107
107
  model = RequiredSkill
108
108
 
109
109
 
110
- class LearningPathGradingCriteriaInline(admin.TabularInline):
111
- """Inline Admin for Learning path grading criteria."""
112
-
113
- model = LearningPathGradingCriteria
114
- verbose_name = "Certificate Criteria"
115
-
116
-
117
110
  class BulkEnrollUsersForm(forms.ModelForm):
118
111
  """Form to bulk enroll users in a learning path."""
119
112
 
@@ -163,23 +156,15 @@ class LearningPathAdmin(DjangoObjectActions, admin.ModelAdmin):
163
156
  "invite_only",
164
157
  )
165
158
  list_filter = ("invite_only",)
166
- readonly_fields = ("key",)
167
159
 
168
160
  inlines = [
169
161
  LearningPathStepInline,
170
162
  RequiredSkillInline,
171
163
  AcquiredSkillInline,
172
- LearningPathGradingCriteriaInline,
173
164
  ]
174
165
 
175
166
  change_actions = ("duplicate_learning_path",)
176
167
 
177
- def get_readonly_fields(self, request, obj=None):
178
- """Make key read-only only for existing objects."""
179
- if obj: # Editing an existing object.
180
- return self.readonly_fields
181
- return () # Allow all fields during creation.
182
-
183
168
  def save_related(self, request, form, formsets, change):
184
169
  """Save related objects and enroll users in the learning path."""
185
170
  super().save_related(request, form, formsets, change)
@@ -212,15 +197,11 @@ class LearningPathAdmin(DjangoObjectActions, admin.ModelAdmin):
212
197
  )
213
198
 
214
199
  if obj.image:
215
- with obj.image.open('rb') as original_file:
200
+ with obj.image.open("rb") as original_file:
216
201
  image_content = original_file.read()
217
202
 
218
203
  original_filename = os.path.basename(obj.image.name)
219
- new_learning_path.image.save(
220
- original_filename,
221
- ContentFile(image_content),
222
- save=False
223
- )
204
+ new_learning_path.image.save(original_filename, ContentFile(image_content), save=False)
224
205
 
225
206
  new_learning_path.save()
226
207
 
@@ -244,14 +225,8 @@ class LearningPathAdmin(DjangoObjectActions, admin.ModelAdmin):
244
225
  skill.learning_path = new_learning_path
245
226
  skill.save()
246
227
 
247
- messages.success(
248
- request,
249
- f'Learning path duplicated successfully. New key: {new_key}'
250
- )
251
-
252
- return HttpResponseRedirect(
253
- reverse('admin:learning_paths_learningpath_change', args=[new_learning_path.pk])
254
- )
228
+ messages.success(request, f"Learning path duplicated successfully. New key: {new_key}")
229
+ return HttpResponseRedirect(reverse("admin:learning_paths_learningpath_change", args=[new_learning_path.pk]))
255
230
 
256
231
 
257
232
  @admin.register(Skill)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: learning-paths-plugin
3
- Version: 0.3.4rc10
3
+ Version: 0.3.5
4
4
  Summary: Learning Paths plugin
5
5
  Home-page: https://github.com/open-craft/learning-paths-plugin
6
6
  Author: OpenCraft
@@ -121,7 +121,21 @@ Unreleased
121
121
 
122
122
  *
123
123
 
124
- 0.3.4 - 2025-05-23
124
+ 0.3.5 - 2025-09-01
125
+ ******************
126
+
127
+ Changed
128
+ =======
129
+
130
+ * Allow changing the Learning Path key in the Django admin interface.
131
+
132
+ Removed
133
+ =======
134
+
135
+ * Grading criteria from the Django admin interface.
136
+ * Step weight and order from the Django admin interface.
137
+
138
+ 0.3.4 - 2025-08-02
125
139
  ******************
126
140
 
127
141
  Added