wagtail-cjkcms 24.6.1__py2.py3-none-any.whl → 24.6.3__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.
- cjkcms/__init__.py +1 -1
- cjkcms/blocks/__init__.py +2 -0
- cjkcms/blocks/content_blocks.py +45 -0
- cjkcms/migrations/0018_layoutsettings_search_format.py +10 -5
- cjkcms/migrations/0019_layoutsettings_searchbox_input_class_and_more.py +28 -11
- cjkcms/migrations/0020_socialmediasettings_github_and_more.py +18 -11
- cjkcms/migrations/0021_remove_layoutsettings_navbar_color_scheme_and_more.py +60 -22
- cjkcms/settings.py +26 -0
- cjkcms/templates/cjkcms/blocks/highlight_block.html +21 -0
- cjkcms/urls.py +3 -0
- cjkcms/views.py +36 -43
- {wagtail_cjkcms-24.6.1.dist-info → wagtail_cjkcms-24.6.3.dist-info}/METADATA +1 -1
- {wagtail_cjkcms-24.6.1.dist-info → wagtail_cjkcms-24.6.3.dist-info}/RECORD +17 -16
- {wagtail_cjkcms-24.6.1.dist-info → wagtail_cjkcms-24.6.3.dist-info}/WHEEL +1 -1
- {wagtail_cjkcms-24.6.1.dist-info → wagtail_cjkcms-24.6.3.dist-info}/LICENSE +0 -0
- {wagtail_cjkcms-24.6.1.dist-info → wagtail_cjkcms-24.6.3.dist-info}/entry_points.txt +0 -0
- {wagtail_cjkcms-24.6.1.dist-info → wagtail_cjkcms-24.6.3.dist-info}/top_level.txt +0 -0
cjkcms/__init__.py
CHANGED
cjkcms/blocks/__init__.py
CHANGED
@@ -31,6 +31,7 @@ from .content_blocks import ( # noqa
|
|
31
31
|
NavPageLinkWithSubLinkBlock,
|
32
32
|
PriceListBlock,
|
33
33
|
ReusableContentBlock,
|
34
|
+
HighlightBlock,
|
34
35
|
)
|
35
36
|
from .content.events import PublicEventBlock, EventCalendarBlock
|
36
37
|
from .layout_blocks import CardGridBlock, GridBlock, HeroBlock
|
@@ -75,6 +76,7 @@ CONTENT_STREAMBLOCKS = HTML_STREAMBLOCKS + [
|
|
75
76
|
("pricelist", PriceListBlock()),
|
76
77
|
("reusable_content", ReusableContentBlock()),
|
77
78
|
("event_calendar", EventCalendarBlock()),
|
79
|
+
("highlight", HighlightBlock()),
|
78
80
|
]
|
79
81
|
|
80
82
|
NAVIGATION_STREAMBLOCKS = [
|
cjkcms/blocks/content_blocks.py
CHANGED
@@ -359,3 +359,48 @@ class ReusableContentBlock(BaseBlock):
|
|
359
359
|
label = _("Reusable Content")
|
360
360
|
template = "cjkcms/blocks/reusable_content_block.html"
|
361
361
|
label_format = "{content} (Reusable Content)"
|
362
|
+
|
363
|
+
|
364
|
+
class HighlightBlock(BaseBlock):
|
365
|
+
"""
|
366
|
+
Block that highlights a piece of text
|
367
|
+
"""
|
368
|
+
|
369
|
+
text = blocks.RichTextBlock(
|
370
|
+
features=cms_settings.CJKCMS_RICHTEXT_FEATURES["default"],
|
371
|
+
label=_("Text"),
|
372
|
+
)
|
373
|
+
|
374
|
+
background_color = blocks.ChoiceBlock(
|
375
|
+
choices=cms_settings.CJKCMS_HIGHLIGHT_COLORS,
|
376
|
+
default=cms_settings.CJKCMS_HIGHLIGHT_DEFAULT_COLOR,
|
377
|
+
required=False,
|
378
|
+
label=_("Background Color"),
|
379
|
+
)
|
380
|
+
|
381
|
+
border_color = blocks.ChoiceBlock(
|
382
|
+
choices=cms_settings.CJKCMS_HIGHLIGHT_COLORS,
|
383
|
+
default=cms_settings.CJKCMS_HIGHLIGHT_DEFAULT_COLOR,
|
384
|
+
required=False,
|
385
|
+
label=_("Border Color"),
|
386
|
+
)
|
387
|
+
|
388
|
+
text_color = blocks.ChoiceBlock(
|
389
|
+
choices=cms_settings.CJKCMS_HIGHLIGHT_COLORS,
|
390
|
+
default="dark",
|
391
|
+
required=False,
|
392
|
+
label=_("Text Color"),
|
393
|
+
)
|
394
|
+
|
395
|
+
icon = blocks.ChoiceBlock(
|
396
|
+
choices=cms_settings.FONT_AWESOME_ICONS,
|
397
|
+
default=cms_settings.FONT_AWESOME_ICONS_DEFAULT,
|
398
|
+
required=False,
|
399
|
+
label=_("Icon"),
|
400
|
+
)
|
401
|
+
|
402
|
+
class Meta:
|
403
|
+
icon = "thumbtack"
|
404
|
+
label = _("Highlight")
|
405
|
+
label_format = _("Highlight")
|
406
|
+
template = "cjkcms/blocks/highlight_block.html"
|
@@ -4,15 +4,20 @@ from django.db import migrations, models
|
|
4
4
|
|
5
5
|
|
6
6
|
class Migration(migrations.Migration):
|
7
|
-
|
8
7
|
dependencies = [
|
9
|
-
(
|
8
|
+
("cjkcms", "0017_layoutsettings_default_seo_image"),
|
10
9
|
]
|
11
10
|
|
12
11
|
operations = [
|
13
12
|
migrations.AddField(
|
14
|
-
model_name=
|
15
|
-
name=
|
16
|
-
field=models.CharField(
|
13
|
+
model_name="layoutsettings",
|
14
|
+
name="search_format",
|
15
|
+
field=models.CharField(
|
16
|
+
blank=True,
|
17
|
+
choices=[],
|
18
|
+
default="",
|
19
|
+
max_length=50,
|
20
|
+
verbose_name="Search format",
|
21
|
+
),
|
17
22
|
),
|
18
23
|
]
|
@@ -4,25 +4,42 @@ from django.db import migrations, models
|
|
4
4
|
|
5
5
|
|
6
6
|
class Migration(migrations.Migration):
|
7
|
-
|
8
7
|
dependencies = [
|
9
|
-
(
|
8
|
+
("cjkcms", "0018_layoutsettings_search_format"),
|
10
9
|
]
|
11
10
|
|
12
11
|
operations = [
|
13
12
|
migrations.AddField(
|
14
|
-
model_name=
|
15
|
-
name=
|
16
|
-
field=models.CharField(
|
13
|
+
model_name="layoutsettings",
|
14
|
+
name="searchbox_input_class",
|
15
|
+
field=models.CharField(
|
16
|
+
blank=True,
|
17
|
+
default="border-secondary mb-0",
|
18
|
+
help_text="Classes applied to searchbox input",
|
19
|
+
max_length=255,
|
20
|
+
verbose_name="Searchbox input class",
|
21
|
+
),
|
17
22
|
),
|
18
23
|
migrations.AddField(
|
19
|
-
model_name=
|
20
|
-
name=
|
21
|
-
field=models.CharField(
|
24
|
+
model_name="layoutsettings",
|
25
|
+
name="searchbutton_class",
|
26
|
+
field=models.CharField(
|
27
|
+
blank=True,
|
28
|
+
default="btn btn-outline-secondary",
|
29
|
+
help_text="Classes applied to search button. Add e.g. `fas fa-search` for icon.",
|
30
|
+
max_length=255,
|
31
|
+
verbose_name="Search button (with text) class",
|
32
|
+
),
|
22
33
|
),
|
23
34
|
migrations.AddField(
|
24
|
-
model_name=
|
25
|
-
name=
|
26
|
-
field=models.CharField(
|
35
|
+
model_name="layoutsettings",
|
36
|
+
name="searchbutton_label",
|
37
|
+
field=models.CharField(
|
38
|
+
blank=True,
|
39
|
+
default="Search",
|
40
|
+
help_text="Leave empty when using icon-only button. Otherwise, add button label.",
|
41
|
+
max_length=255,
|
42
|
+
verbose_name="Search button label",
|
43
|
+
),
|
27
44
|
),
|
28
45
|
]
|
@@ -4,25 +4,32 @@ from django.db import migrations, models
|
|
4
4
|
|
5
5
|
|
6
6
|
class Migration(migrations.Migration):
|
7
|
-
|
8
7
|
dependencies = [
|
9
|
-
(
|
8
|
+
("cjkcms", "0019_layoutsettings_searchbox_input_class_and_more"),
|
10
9
|
]
|
11
10
|
|
12
11
|
operations = [
|
13
12
|
migrations.AddField(
|
14
|
-
model_name=
|
15
|
-
name=
|
16
|
-
field=models.URLField(
|
13
|
+
model_name="socialmediasettings",
|
14
|
+
name="github",
|
15
|
+
field=models.URLField(
|
16
|
+
blank=True, help_text="Your GitHub page URL", verbose_name="GitHub"
|
17
|
+
),
|
17
18
|
),
|
18
19
|
migrations.AddField(
|
19
|
-
model_name=
|
20
|
-
name=
|
21
|
-
field=models.URLField(
|
20
|
+
model_name="socialmediasettings",
|
21
|
+
name="pinterset",
|
22
|
+
field=models.URLField(
|
23
|
+
blank=True,
|
24
|
+
help_text="Your Pinterest page URL",
|
25
|
+
verbose_name="Pinterest",
|
26
|
+
),
|
22
27
|
),
|
23
28
|
migrations.AddField(
|
24
|
-
model_name=
|
25
|
-
name=
|
26
|
-
field=models.URLField(
|
29
|
+
model_name="socialmediasettings",
|
30
|
+
name="tiktok",
|
31
|
+
field=models.URLField(
|
32
|
+
blank=True, help_text="Your TikTok account URL", verbose_name="TikTok"
|
33
|
+
),
|
27
34
|
),
|
28
35
|
]
|
@@ -4,44 +4,82 @@ from django.db import migrations, models
|
|
4
4
|
|
5
5
|
|
6
6
|
class Migration(migrations.Migration):
|
7
|
-
|
8
7
|
dependencies = [
|
9
|
-
(
|
8
|
+
("cjkcms", "0020_socialmediasettings_github_and_more"),
|
10
9
|
]
|
11
10
|
|
12
11
|
operations = [
|
13
12
|
migrations.RemoveField(
|
14
|
-
model_name=
|
15
|
-
name=
|
13
|
+
model_name="layoutsettings",
|
14
|
+
name="navbar_color_scheme",
|
16
15
|
),
|
17
16
|
migrations.AddField(
|
18
|
-
model_name=
|
19
|
-
name=
|
20
|
-
field=models.CharField(
|
17
|
+
model_name="layoutsettings",
|
18
|
+
name="color_scheme",
|
19
|
+
field=models.CharField(
|
20
|
+
blank=True,
|
21
|
+
choices=[],
|
22
|
+
default="",
|
23
|
+
help_text="Default light/dark/custom theme. (MD/Bootstrap only)",
|
24
|
+
max_length=50,
|
25
|
+
verbose_name="Color scheme",
|
26
|
+
),
|
21
27
|
),
|
22
28
|
migrations.AddField(
|
23
|
-
model_name=
|
24
|
-
name=
|
25
|
-
field=models.BooleanField(
|
29
|
+
model_name="layoutsettings",
|
30
|
+
name="light_dark_switch",
|
31
|
+
field=models.BooleanField(
|
32
|
+
default=False,
|
33
|
+
help_text="Show switch to toggle light/dark theme (MD/Bootstrap only)",
|
34
|
+
verbose_name="Light/Dark switch",
|
35
|
+
),
|
26
36
|
),
|
27
37
|
migrations.AlterField(
|
28
|
-
model_name=
|
29
|
-
name=
|
30
|
-
field=models.CharField(
|
38
|
+
model_name="layoutsettings",
|
39
|
+
name="frontend_theme",
|
40
|
+
field=models.CharField(
|
41
|
+
blank=True,
|
42
|
+
choices=[],
|
43
|
+
default="",
|
44
|
+
help_text="Change the source of your Bootstrap theme.",
|
45
|
+
max_length=50,
|
46
|
+
verbose_name="Theme variant",
|
47
|
+
),
|
31
48
|
),
|
32
49
|
migrations.AlterField(
|
33
|
-
model_name=
|
34
|
-
name=
|
35
|
-
field=models.CharField(
|
50
|
+
model_name="layoutsettings",
|
51
|
+
name="navbar_collapse_mode",
|
52
|
+
field=models.CharField(
|
53
|
+
blank=True,
|
54
|
+
choices=[],
|
55
|
+
default="",
|
56
|
+
help_text="Control on what screen sizes to show and collapse the navbar menu links.",
|
57
|
+
max_length=50,
|
58
|
+
verbose_name="Collapse navbar menu",
|
59
|
+
),
|
36
60
|
),
|
37
61
|
migrations.AlterField(
|
38
|
-
model_name=
|
39
|
-
name=
|
40
|
-
field=models.CharField(
|
62
|
+
model_name="layoutsettings",
|
63
|
+
name="navbar_format",
|
64
|
+
field=models.CharField(
|
65
|
+
blank=True,
|
66
|
+
choices=[],
|
67
|
+
default="",
|
68
|
+
max_length=50,
|
69
|
+
verbose_name="Navbar format",
|
70
|
+
),
|
41
71
|
),
|
42
72
|
migrations.AlterField(
|
43
|
-
model_name=
|
44
|
-
name=
|
45
|
-
field=models.CharField(
|
73
|
+
model_name="layoutsettings",
|
74
|
+
name="navbar_langselector",
|
75
|
+
field=models.CharField(
|
76
|
+
blank=True,
|
77
|
+
choices=[],
|
78
|
+
default=None,
|
79
|
+
help_text="Choose lang choice selector",
|
80
|
+
max_length=255,
|
81
|
+
null=True,
|
82
|
+
verbose_name="Language selector",
|
83
|
+
),
|
46
84
|
),
|
47
85
|
]
|
cjkcms/settings.py
CHANGED
@@ -370,6 +370,29 @@ class _DefaultSettings:
|
|
370
370
|
("hidden", "Hidden for all"),
|
371
371
|
)
|
372
372
|
|
373
|
+
CJKCMS_HIGHLIGHT_COLORS = (
|
374
|
+
("primary", "Dark Blue"),
|
375
|
+
("secondary", "Gray"),
|
376
|
+
("success", "Green"),
|
377
|
+
("danger", "Red"),
|
378
|
+
("warning", "Yellow"),
|
379
|
+
("info", "Light Blue"),
|
380
|
+
("light", "Light"),
|
381
|
+
("dark", "Dark"),
|
382
|
+
)
|
383
|
+
CJKCMS_HIGHLIGHT_DEFAULT_COLOR = "none"
|
384
|
+
|
385
|
+
FONT_AWESOME_ICONS = (
|
386
|
+
("fa-solid fa-circle-check", "Checkmark"),
|
387
|
+
("fa-solid fa-scissors", "Scissors"),
|
388
|
+
("fa-solid fa-pencil", "Pencil"),
|
389
|
+
("fa-solid fa-question", "Question mark"),
|
390
|
+
("fa-solid fa-globe", "Globe"),
|
391
|
+
("fa-regular fa-folder", "Folder"),
|
392
|
+
("fa-solid fa-triangle-exclamation", "Warning Triangle"),
|
393
|
+
)
|
394
|
+
FONT_AWESOME_ICONS_DEFAULT = "fa-solid fa-circle-check"
|
395
|
+
|
373
396
|
BANNER = None
|
374
397
|
BANNER_BACKGROUND = "#f00"
|
375
398
|
BANNER_TEXT_COLOR = "#fff"
|
@@ -459,6 +482,9 @@ class _DefaultSettings:
|
|
459
482
|
("btn-outline-link", "Link Outline"),
|
460
483
|
]
|
461
484
|
|
485
|
+
CJKCMS_VERSION_MONITOR_TOKEN = "" # blank token = disabled version monitor api
|
486
|
+
CJKCMS_VERSION_MONITOR_ALLOWED_DOMAINS = [] # disallow from any domain by default
|
487
|
+
|
462
488
|
def __getattribute__(self, attr: str):
|
463
489
|
# First load from Django settings.
|
464
490
|
# If it does not exist, load from _DefaultSettings.
|
@@ -0,0 +1,21 @@
|
|
1
|
+
{% load wagtailadmin_tags wagtailcore_tags wagtailimages_tags %}
|
2
|
+
|
3
|
+
<div class="card mb-3 {% if self.border_color %} border border-{{ self.border_color }}{% endif %} text-bg-{{ self.background_color }}
|
4
|
+
text-{{ self.text_color }}
|
5
|
+
{{self.settings.custom_css_class}}"
|
6
|
+
{% if self.settings.custom_id %}id="{{self.settings.custom_id}}"{% endif %}>
|
7
|
+
<div class="card-body">
|
8
|
+
<div class="d-flex justify-content-between p-md-1">
|
9
|
+
<div class="d-flex flex-row">
|
10
|
+
{% if self.icon %}
|
11
|
+
<div class="align-self-start">
|
12
|
+
<i class="{{self.icon}} fa-5x me-4"></i>
|
13
|
+
</div>
|
14
|
+
{% endif %}
|
15
|
+
<div>
|
16
|
+
{{ self.text }}
|
17
|
+
</div>
|
18
|
+
</div>
|
19
|
+
</div>
|
20
|
+
</div>
|
21
|
+
</div>
|
cjkcms/urls.py
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
from django.urls import include, path
|
2
2
|
from wagtail.contrib.sitemaps.views import sitemap
|
3
3
|
from cjkcms import search_urls as cjkcms_search_urls
|
4
|
+
from .views import VersionView
|
4
5
|
|
5
6
|
# from .settings import cms_settings
|
6
7
|
from cjkcms.views import (
|
@@ -13,6 +14,8 @@ urlpatterns = [
|
|
13
14
|
path("favicon.ico", favicon, name="cjkcms_favicon"),
|
14
15
|
path("robots.txt", robots, name="cjkcms_robots"),
|
15
16
|
path("sitemap.xml", sitemap, name="cjkcms_sitemap"),
|
17
|
+
# version reporting
|
18
|
+
path("api/versions/<str:token>/", VersionView.as_view(), name="get_versions"),
|
16
19
|
# Search
|
17
20
|
path("search/", include(cjkcms_search_urls)),
|
18
21
|
]
|
cjkcms/views.py
CHANGED
@@ -13,6 +13,16 @@ from wagtail.models import Page, get_page_models
|
|
13
13
|
# from coderedcms.importexport import convert_csv_to_json, import_pages, ImportPagesFromCSVFileForm
|
14
14
|
from cjkcms.templatetags.cjkcms_tags import get_name_of_class
|
15
15
|
|
16
|
+
from rest_framework.views import APIView
|
17
|
+
from rest_framework.response import Response
|
18
|
+
from rest_framework import status
|
19
|
+
from django.conf import settings
|
20
|
+
from django.http import JsonResponse
|
21
|
+
import django
|
22
|
+
from wagtail import __version__ as wagtail_version
|
23
|
+
from cjkcms import __version__ as cjkcms_version
|
24
|
+
import sys
|
25
|
+
|
16
26
|
|
17
27
|
def search(request):
|
18
28
|
"""
|
@@ -84,46 +94,29 @@ def robots(request):
|
|
84
94
|
return render(request, "cjkcms/robots.txt", content_type="text/plain")
|
85
95
|
|
86
96
|
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
#
|
98
|
-
#
|
99
|
-
#
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
# except LookupError as e:
|
114
|
-
# messages.error(request, _(
|
115
|
-
# "Import failed: %(reason)s") % {'reason': e}
|
116
|
-
# )
|
117
|
-
# else:
|
118
|
-
# messages.success(request, ngettext(
|
119
|
-
# "%(count)s page imported.",
|
120
|
-
# "%(count)s pages imported.",
|
121
|
-
# page_count) % {'count': page_count}
|
122
|
-
# )
|
123
|
-
# return redirect('wagtailadmin_explore', parent_page.pk)
|
124
|
-
# else:
|
125
|
-
# form = ImportPagesFromCSVFileForm()
|
126
|
-
|
127
|
-
# return render(request, 'wagtailimportexport/import_from_csv.html', {
|
128
|
-
# 'form': form,
|
129
|
-
# })
|
97
|
+
class VersionView(APIView):
|
98
|
+
def get(self, request, token):
|
99
|
+
monitor_token = settings.CJKCMS_VERSION_MONITOR_TOKEN
|
100
|
+
allowed_domains = settings.CJKCMS_VERSION_MONITOR_ALLOWED_DOMAINS
|
101
|
+
|
102
|
+
host = request.META.get("HTTP_HOST")
|
103
|
+
|
104
|
+
token_ok = len(token) < 12 or token != monitor_token
|
105
|
+
domain_ok = allowed_domains = ["*"] or host in allowed_domains
|
106
|
+
|
107
|
+
# minimum required token length is 12 characters
|
108
|
+
# this also prevents sites from reporting when default
|
109
|
+
# empty token has not been replaced in local config with a proper one
|
110
|
+
|
111
|
+
if token_ok and domain_ok:
|
112
|
+
return JsonResponse(
|
113
|
+
{"error": "Forbidden."}, status=status.HTTP_403_FORBIDDEN
|
114
|
+
)
|
115
|
+
|
116
|
+
data = {
|
117
|
+
"python": sys.version,
|
118
|
+
"django": django.get_version(),
|
119
|
+
"wagtail": wagtail_version,
|
120
|
+
"cjkcms": cjkcms_version,
|
121
|
+
}
|
122
|
+
return Response(data)
|
@@ -1,22 +1,22 @@
|
|
1
|
-
cjkcms/__init__.py,sha256=
|
1
|
+
cjkcms/__init__.py,sha256=Vss7UXUjyVs7zSaR-sUKrh2hyzF0cKoZbqJWug9v7vc,272
|
2
2
|
cjkcms/apps.py,sha256=VA5Z1YerImetvN8KsjPTMSn1fSo6O1JkBJdK5y5ubJY,173
|
3
3
|
cjkcms/fields.py,sha256=dE0DuNIjX7jhA-5GjSmR2l66EDH2kq3vuxL9WyRALCY,3191
|
4
4
|
cjkcms/forms.py,sha256=_uu_FR8odz40lD-Rmw0tlK7-xxxa8THHfV2-1ZJYsIM,361
|
5
5
|
cjkcms/image_formats.py,sha256=d4zRshuybwxSRL8UpBH31dFBr32o4HNexa0ks5PX3TI,1833
|
6
6
|
cjkcms/search_urls.py,sha256=92XkGTJRrQQyA061wWl1l5C0vq6INVJPXOrpcgp3aoU,125
|
7
|
-
cjkcms/settings.py,sha256=
|
8
|
-
cjkcms/urls.py,sha256=
|
7
|
+
cjkcms/settings.py,sha256=2ZccptqyIk8nTkz23K7Fs9i1KFI2EOujxZA93xNSBSo,20324
|
8
|
+
cjkcms/urls.py,sha256=k5tEHWI4Umi2PWvGdNJ-FZ9OCy6AS3Y2S7k5jNOpgt0,644
|
9
9
|
cjkcms/utils.py,sha256=u4pkPxAwqH3SgyIcmvk7I5L3w-eIcz0Rphmv0Y1DRpA,2006
|
10
|
-
cjkcms/views.py,sha256=
|
10
|
+
cjkcms/views.py,sha256=29kegEdmwfKUmz84Cr8VbvfAVAN3PH2UIWQhNb5QP4U,4105
|
11
11
|
cjkcms/wagtail_hooks.py,sha256=utrTXxJzjumhbzHmB_p5xZsIOZHkDQUJKGQ5geKD-mY,6543
|
12
12
|
cjkcms/widgets.py,sha256=2B92WkaktZC1ge4GrAMTB7VVYKnKR8qoZLAtWS2z_00,1745
|
13
13
|
cjkcms/api/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
14
14
|
cjkcms/api/mailchimp.py,sha256=pufnnu8n-c6kkWNKy-EsRLW5LLBn8_TmYrnRSQCPFdY,2832
|
15
15
|
cjkcms/bin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
16
16
|
cjkcms/bin/cjkcms.py,sha256=i11hhB11COQhTk05y7mkeIkUYcFjhI8-QxLkN3tCxgg,5763
|
17
|
-
cjkcms/blocks/__init__.py,sha256=
|
17
|
+
cjkcms/blocks/__init__.py,sha256=cp7D9NSxF9HOEQN_h0GWMGFoZfhBYhDpCosZ7Gqi_mo,3459
|
18
18
|
cjkcms/blocks/base_blocks.py,sha256=uKp6QO3iOPT4P0H0yOumvL7faPvLQK9Dj-D8iqlvqQ4,11616
|
19
|
-
cjkcms/blocks/content_blocks.py,sha256=
|
19
|
+
cjkcms/blocks/content_blocks.py,sha256=db_CNBqpKdAq1e9Y4AdpRm1077ANIWD8DzqG56_rSNs,10098
|
20
20
|
cjkcms/blocks/html_blocks.py,sha256=rXdR1uxFYDYjOXpxndItxacWstiME8CdqZgB6d5qAYE,9543
|
21
21
|
cjkcms/blocks/layout_blocks.py,sha256=n2oVyL-ZQQaEA00HU6YraR59YF065o-OK7WuAahGuiw,3406
|
22
22
|
cjkcms/blocks/searchable_html_block.py,sha256=i1rWv4vwwvZ9fxkASwPKl87-TqVHkXOFyohH3ve7pYk,171
|
@@ -49,10 +49,10 @@ cjkcms/migrations/0014_navbar_alignment.py,sha256=arSBLVajQBkjLv7r8AbXnkL8ayxkmf
|
|
49
49
|
cjkcms/migrations/0015_eventcalendar.py,sha256=WQFnU23gHcPMzcHOchNU4LFTPWrgZNyMj_Ma54BPUvs,1467
|
50
50
|
cjkcms/migrations/0016_layoutsettings_breadcrumb_icon_and_more.py,sha256=PnQsKpWBXPJPj5FCNDTemvT1_yaXPy92FPTwm1FmckM,918
|
51
51
|
cjkcms/migrations/0017_layoutsettings_default_seo_image.py,sha256=jwQ4oiiIU-p6p3vsLdTEJ0aat1jy81k6x2eAiqRTXEA,788
|
52
|
-
cjkcms/migrations/0018_layoutsettings_search_format.py,sha256=
|
53
|
-
cjkcms/migrations/0019_layoutsettings_searchbox_input_class_and_more.py,sha256=
|
54
|
-
cjkcms/migrations/0020_socialmediasettings_github_and_more.py,sha256=
|
55
|
-
cjkcms/migrations/0021_remove_layoutsettings_navbar_color_scheme_and_more.py,sha256=
|
52
|
+
cjkcms/migrations/0018_layoutsettings_search_format.py,sha256=NURMUoMyg20hSM_IDc78EWIylimhq1yyeuA16Fq3CH4,572
|
53
|
+
cjkcms/migrations/0019_layoutsettings_searchbox_input_class_and_more.py,sha256=SeA-oN5r9uePXOfPv57ETfGF_ZzNpv9vnkA_rmATXUY,1504
|
54
|
+
cjkcms/migrations/0020_socialmediasettings_github_and_more.py,sha256=flCSiw6wB32wsxSln2NA66zWkxrJLhNfL1O3UInH2to,1044
|
55
|
+
cjkcms/migrations/0021_remove_layoutsettings_navbar_color_scheme_and_more.py,sha256=lOOyu3QHjnjZY3HwXWCvUBxngm-t_sk4TvuxZ2Cq_j4,2723
|
56
56
|
cjkcms/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
57
57
|
cjkcms/models/__init__.py,sha256=f99GmxfFxGtQl8JvZFz8rAtklCIesLoSccyhhi2xgPU,232
|
58
58
|
cjkcms/models/admin_sidebar.py,sha256=R3gtDUfbtdVPLNb-__XZWYk9Ap5k9WkHc-u6XDhesdc,665
|
@@ -206,6 +206,7 @@ cjkcms/templates/cjkcms/blocks/h1_block.html,sha256=1THQrcNJFICX63kgfOmbFBlg3bnG
|
|
206
206
|
cjkcms/templates/cjkcms/blocks/h2_block.html,sha256=F2pyouvyTmHIvxx63fsCHTsOfGZSjrkDDd48bX559kg,200
|
207
207
|
cjkcms/templates/cjkcms/blocks/h3_block.html,sha256=9ywHXmVmKnSzyewDAN8_NN49YNNAH2TihGoBECT-IkA,200
|
208
208
|
cjkcms/templates/cjkcms/blocks/hero_block.html,sha256=AvMdorfA_c5oHLQ6sEsfbZTUlUUC-LLi_QD4LX3VwgU,790
|
209
|
+
cjkcms/templates/cjkcms/blocks/highlight_block.html,sha256=QYR2HAW1hVx2rnIqGlDmq1gfo-s2xNLPy_1F0epc-ME,777
|
209
210
|
cjkcms/templates/cjkcms/blocks/image_block.html,sha256=A_jRCQDL0GT3NQzxhaGGalnvdnnh3Ly3vSed4AAN7x4,275
|
210
211
|
cjkcms/templates/cjkcms/blocks/image_gallery_block.html,sha256=gFAlNq07qY-6tzHi7gMPol6xBkx6mAvLXZcuNkb9q6w,1400
|
211
212
|
cjkcms/templates/cjkcms/blocks/image_link_block.html,sha256=1SnNXhvgorW3oIPOWuLeU9gUp4nGS2vBuPZKf6eM9TI,627
|
@@ -326,9 +327,9 @@ cjkcms/tests/testapp/models.py,sha256=Rkn9KHrGbLzrKjP4y_gwtXma1_fJOZNU7ekb689fJE
|
|
326
327
|
cjkcms/tests/testapp/migrations/0001_initial.py,sha256=hxr-r-42IQEGr_OsZkxXXCW7wbxAHuI_OLOkn-seJUU,4942
|
327
328
|
cjkcms/tests/testapp/migrations/0002_create_homepage.py,sha256=EfsxHh1oyqwahW9RVpTvaRDx_CHtFSJQahKEr7XC5Gg,1999
|
328
329
|
cjkcms/tests/testapp/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
329
|
-
wagtail_cjkcms-24.6.
|
330
|
-
wagtail_cjkcms-24.6.
|
331
|
-
wagtail_cjkcms-24.6.
|
332
|
-
wagtail_cjkcms-24.6.
|
333
|
-
wagtail_cjkcms-24.6.
|
334
|
-
wagtail_cjkcms-24.6.
|
330
|
+
wagtail_cjkcms-24.6.3.dist-info/LICENSE,sha256=KHsCh1fKOZzvcKe1a9h3FlDjTjK_UurO3wHK55TnHHo,1538
|
331
|
+
wagtail_cjkcms-24.6.3.dist-info/METADATA,sha256=cKQq3CqbnFPfZVYQPIwoDZW8kZ7Dp-7q7k4c1iAQ528,3108
|
332
|
+
wagtail_cjkcms-24.6.3.dist-info/WHEEL,sha256=_4XEmVmaBFWtekSGrbfOGNjC2I5lUr0lZSRblBllIFA,109
|
333
|
+
wagtail_cjkcms-24.6.3.dist-info/entry_points.txt,sha256=FzoiFENdZ1uebNztyz6GlswkumQspd5VjWbR9MUIH_8,50
|
334
|
+
wagtail_cjkcms-24.6.3.dist-info/top_level.txt,sha256=8wJGOGo1pG5nO5akfcMzA7i3ndj5868I8w35vTT0JJM,7
|
335
|
+
wagtail_cjkcms-24.6.3.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|