django-camomilla-cms 6.1.2__tar.gz → 6.1.3__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 (144) hide show
  1. {django_camomilla_cms-6.1.2/django_camomilla_cms.egg-info → django_camomilla_cms-6.1.3}/PKG-INFO +1 -1
  2. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/__init__.py +1 -1
  3. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/models/menu.py +6 -0
  4. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/models/page.py +1 -1
  5. django_camomilla_cms-6.1.3/camomilla/theme/__init__.py +1 -0
  6. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3/django_camomilla_cms.egg-info}/PKG-INFO +1 -1
  7. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/setup.py +1 -1
  8. django_camomilla_cms-6.1.2/camomilla/theme/__init__.py +0 -1
  9. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/LICENSE +0 -0
  10. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/MANIFEST.in +0 -0
  11. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/README.md +0 -0
  12. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/apps.py +0 -0
  13. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/authentication.py +0 -0
  14. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/context_processors.py +0 -0
  15. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/contrib/__init__.py +0 -0
  16. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/contrib/modeltranslation/__init__.py +0 -0
  17. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/contrib/modeltranslation/hvad_migration.py +0 -0
  18. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/defaults.py +0 -0
  19. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/dynamic_pages_urls.py +0 -0
  20. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/exceptions.py +0 -0
  21. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/fields/__init__.py +0 -0
  22. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/fields/json.py +0 -0
  23. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/management/__init__.py +0 -0
  24. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/management/commands/__init__.py +0 -0
  25. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/management/commands/regenerate_thumbnails.py +0 -0
  26. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/managers/__init__.py +0 -0
  27. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/managers/pages.py +0 -0
  28. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/model_api.py +0 -0
  29. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/models/__init__.py +0 -0
  30. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/models/article.py +0 -0
  31. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/models/content.py +0 -0
  32. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/models/media.py +0 -0
  33. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/models/mixins/__init__.py +0 -0
  34. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/openapi/__init__.py +0 -0
  35. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/openapi/schema.py +0 -0
  36. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/parsers.py +0 -0
  37. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/permissions.py +0 -0
  38. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/redirects.py +0 -0
  39. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/__init__.py +0 -0
  40. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/article.py +0 -0
  41. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/base/__init__.py +0 -0
  42. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/content_type.py +0 -0
  43. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/fields/__init__.py +0 -0
  44. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/fields/file.py +0 -0
  45. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/fields/related.py +0 -0
  46. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/media.py +0 -0
  47. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/menu.py +0 -0
  48. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/mixins/__init__.py +0 -0
  49. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/mixins/fields.py +0 -0
  50. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/mixins/filter_fields.py +0 -0
  51. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/mixins/json.py +0 -0
  52. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/mixins/language.py +0 -0
  53. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/mixins/nesting.py +0 -0
  54. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/mixins/optimize.py +0 -0
  55. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/mixins/ordering.py +0 -0
  56. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/mixins/page.py +0 -0
  57. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/mixins/translation.py +0 -0
  58. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/page.py +0 -0
  59. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/user.py +0 -0
  60. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/utils.py +0 -0
  61. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/serializers/validators.py +0 -0
  62. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/settings.py +0 -0
  63. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/sitemap.py +0 -0
  64. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/storages/__init__.py +0 -0
  65. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/storages/default.py +0 -0
  66. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/storages/optimize.py +0 -0
  67. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/storages/overwrite.py +0 -0
  68. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templates/admin/camomilla/page/change_form.html +0 -0
  69. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templates/defaults/articles/default.html +0 -0
  70. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templates/defaults/base.html +0 -0
  71. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templates/defaults/pages/default.html +0 -0
  72. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templates/defaults/parts/langswitch.html +0 -0
  73. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templates/defaults/parts/menu.html +0 -0
  74. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templates/defaults/widgets/media_select_multiple.html +0 -0
  75. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templates_context/__init__.py +0 -0
  76. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templates_context/autodiscover.py +0 -0
  77. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templates_context/rendering.py +0 -0
  78. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templatetags/__init__.py +0 -0
  79. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templatetags/camomilla_filters.py +0 -0
  80. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templatetags/menus.py +0 -0
  81. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/templatetags/model_extras.py +0 -0
  82. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/theme/admin/__init__.py +0 -0
  83. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/theme/admin/pages.py +0 -0
  84. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/theme/admin/translations.py +0 -0
  85. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/theme/apps.py +0 -0
  86. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/theme/static/admin/css/responsive.css +0 -0
  87. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/theme/static/admin/img/favicon.ico +0 -0
  88. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/theme/static/admin/img/logo.svg +0 -0
  89. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/theme/templates/admin/base.html +0 -0
  90. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/theme/templates/rosetta/base.html +0 -0
  91. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/translation.py +0 -0
  92. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/urls.py +0 -0
  93. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/utils/__init__.py +0 -0
  94. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/utils/getters.py +0 -0
  95. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/utils/normalization.py +0 -0
  96. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/utils/query_parser.py +0 -0
  97. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/utils/seo.py +0 -0
  98. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/utils/setters.py +0 -0
  99. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/utils/templates.py +0 -0
  100. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/utils/translation.py +0 -0
  101. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/__init__.py +0 -0
  102. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/articles.py +0 -0
  103. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/base/__init__.py +0 -0
  104. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/contents.py +0 -0
  105. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/decorators.py +0 -0
  106. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/languages.py +0 -0
  107. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/medias.py +0 -0
  108. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/menus.py +0 -0
  109. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/mixins/__init__.py +0 -0
  110. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/mixins/bulk_actions.py +0 -0
  111. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/mixins/language.py +0 -0
  112. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/mixins/optimize.py +0 -0
  113. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/mixins/ordering.py +0 -0
  114. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/mixins/pagination.py +0 -0
  115. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/mixins/permissions.py +0 -0
  116. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/pages.py +0 -0
  117. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/tags.py +0 -0
  118. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/camomilla/views/users.py +0 -0
  119. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/django_camomilla_cms.egg-info/SOURCES.txt +0 -0
  120. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/django_camomilla_cms.egg-info/dependency_links.txt +0 -0
  121. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/django_camomilla_cms.egg-info/requires.txt +0 -0
  122. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/django_camomilla_cms.egg-info/top_level.txt +0 -0
  123. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/pyproject.toml +0 -0
  124. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/setup.cfg +0 -0
  125. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/__init__.py +0 -0
  126. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/fixtures/__init__.py +0 -0
  127. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_admin_page_form.py +0 -0
  128. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_api.py +0 -0
  129. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_camomilla_filters.py +0 -0
  130. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_media.py +0 -0
  131. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_menu.py +0 -0
  132. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_model_api.py +0 -0
  133. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_model_api_permissions.py +0 -0
  134. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_model_api_register.py +0 -0
  135. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_models.py +0 -0
  136. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_page_meta.py +0 -0
  137. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_page_relation_api.py +0 -0
  138. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_pages.py +0 -0
  139. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_query_parser.py +0 -0
  140. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_templates_context.py +0 -0
  141. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/test_utils.py +0 -0
  142. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/utils/__init__.py +0 -0
  143. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/utils/api.py +0 -0
  144. {django_camomilla_cms-6.1.2 → django_camomilla_cms-6.1.3}/tests/utils/media.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: django-camomilla-cms
3
- Version: 6.1.2
3
+ Version: 6.1.3
4
4
  Summary: Django powered cms
5
5
  Author-email: Lotrèk <dimmitutto@lotrek.it>
6
6
  License: MIT
@@ -1,4 +1,4 @@
1
- __version__ = "6.1.2"
1
+ __version__ = "6.1.3"
2
2
 
3
3
 
4
4
  def get_core_apps():
@@ -10,6 +10,7 @@ from pydantic import (
10
10
  Field,
11
11
  SerializationInfo,
12
12
  computed_field,
13
+ field_serializer,
13
14
  model_serializer,
14
15
  )
15
16
  from structured.pydantic.models import BaseModel
@@ -17,6 +18,7 @@ from structured.fields import StructuredJSONField
17
18
  from camomilla.models.page import UrlNode, AbstractPage
18
19
  from typing import Optional, Union, Callable, List
19
20
  from django.db.models.base import Model as DjangoModel
21
+ from structured.utils.serializer import minimal_serialization
20
22
 
21
23
 
22
24
  class LinkTypes(str, Enum):
@@ -31,6 +33,10 @@ class MenuNodeLink(BaseModel):
31
33
  page: AbstractPage = None
32
34
  url_node: UrlNode = None
33
35
 
36
+ @field_serializer('page')
37
+ def serialize_value(self, v):
38
+ return minimal_serialization(v)
39
+
34
40
  @model_serializer(mode="wrap", when_used="json")
35
41
  def update_relational(self, handler: Callable, info: SerializationInfo):
36
42
  if self.link_type == LinkTypes.relational:
@@ -343,7 +343,7 @@ class AbstractPage(SeoMixin, MetaMixin, models.Model, metaclass=PageBase):
343
343
  def childs(self) -> models.Manager:
344
344
  if hasattr(self._page_meta, "child_page_field"):
345
345
  return getattr(self, self._page_meta.child_page_field)
346
- return getattr(self, PAGE_CHILD_RELATED_NAME % self.model_info, self.objects.none())
346
+ return getattr(self, PAGE_CHILD_RELATED_NAME % self.model_info, self.__class__.objects.none())
347
347
 
348
348
  @property
349
349
  def parent(self) -> models.Model:
@@ -0,0 +1 @@
1
+ __version__ = "6.1.3"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: django-camomilla-cms
3
- Version: 6.1.2
3
+ Version: 6.1.3
4
4
  Summary: Django powered cms
5
5
  Author-email: Lotrèk <dimmitutto@lotrek.it>
6
6
  License: MIT
@@ -1,5 +1,5 @@
1
1
  from setuptools import setup
2
2
 
3
- __version__ = "6.1.2"
3
+ __version__ = "6.1.3"
4
4
 
5
5
  setup(version=__version__)
@@ -1 +0,0 @@
1
- __version__ = "6.1.2"