wagtail-cjkcms 24.12.2__py2.py3-none-any.whl → 24.12.4__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 CHANGED
@@ -1,4 +1,4 @@
1
- VERSION = (24, 12, 2, "")
1
+ VERSION = (24, 12, 4, "")
2
2
 
3
3
  __version_info__ = VERSION
4
4
  __version__ = ".".join(map(str, VERSION[:3])) + (f"-{VERSION[3]}" if VERSION[3] else "")
@@ -2,6 +2,7 @@
2
2
  Content blocks are for building complex, nested HTML structures that usually
3
3
  contain sub-blocks, and may require javascript to function properly.
4
4
  """
5
+
5
6
  from django.utils.translation import gettext_lazy as _
6
7
  from wagtail import blocks
7
8
  from wagtail.documents.blocks import DocumentChooserBlock
@@ -180,15 +181,17 @@ class NavBaseLinkBlock(BaseBlock):
180
181
  required=False,
181
182
  label=_("Image"),
182
183
  )
183
- visible_for = blocks.ChoiceBlock(
184
- choices=cms_settings.CJKCMS_AUTH_VISIBILITY_CHOICES,
185
- default=cms_settings.CJKCMS_AUTH_VISIBILITY_DEFAULT,
186
- required=False,
187
- label=_("Item visibility"),
188
- help_text=_(
189
- "DEPRECATED. Use the visibility options in the `Advanced Settings`. "
190
- ),
191
- )
184
+
185
+ if cms_settings.CJKCMS_NAVBAR_SHOW_VISIBLE_FOR:
186
+ visible_for = blocks.ChoiceBlock(
187
+ choices=cms_settings.CJKCMS_AUTH_VISIBILITY_CHOICES,
188
+ default=cms_settings.CJKCMS_AUTH_VISIBILITY_DEFAULT,
189
+ required=False,
190
+ label=_("Item visibility"),
191
+ help_text=_(
192
+ "DEPRECATED. Use the visibility options in the `Advanced Settings`. "
193
+ ),
194
+ )
192
195
 
193
196
 
194
197
  class NavExternalLinkBlock(NavBaseLinkBlock):
@@ -0,0 +1,18 @@
1
+ # Generated by Django 5.1.4 on 2024-12-31 20:17
2
+
3
+ from django.db import migrations, models
4
+
5
+
6
+ class Migration(migrations.Migration):
7
+
8
+ dependencies = [
9
+ ('cjkcms', '0022_cjkcmspage_breadcrumb_label_and_more'),
10
+ ]
11
+
12
+ operations = [
13
+ migrations.AlterField(
14
+ model_name='navbar',
15
+ name='language',
16
+ field=models.CharField(blank=True, choices=[], default='_all_', help_text='Select a language to limit display to specific locale.', max_length=10, verbose_name='Show in language'),
17
+ ),
18
+ ]
cjkcms/settings.py CHANGED
@@ -485,6 +485,10 @@ class _DefaultSettings:
485
485
  CJKCMS_VERSION_MONITOR_TOKEN = "" # blank token = disabled version monitor api
486
486
  CJKCMS_VERSION_MONITOR_ALLOWED_DOMAINS = [] # disallow from any domain by default
487
487
 
488
+ CJKCMS_NAVBAR_SHOW_VISIBLE_FOR = (
489
+ False # safety fallback for a deprecated and removed feature
490
+ )
491
+
488
492
  def __getattribute__(self, attr: str):
489
493
  # First load from Django settings.
490
494
  # If it does not exist, load from _DefaultSettings.
@@ -82,6 +82,11 @@ License: https://github.com/coderedcorp/coderedcms/blob/dev/LICENSE
82
82
  content: ". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . " ". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . " ". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . " ". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ";
83
83
  }
84
84
 
85
+ .leaders-dots {
86
+ border-bottom: 1px dotted currentColor;
87
+ margin-bottom: 5px;
88
+ }
89
+
85
90
  .leaders span:first-child {
86
91
  padding-right: 0.33em;
87
92
  background: white;
@@ -248,13 +253,39 @@ License: https://github.com/coderedcorp/coderedcms/blob/dev/LICENSE
248
253
  }
249
254
 
250
255
  .-fixed-img-offset {
251
- margin-top: 76px;
256
+ margin-top: 104px;
252
257
  }
253
258
 
254
259
  .-fixed-offset {
255
- margin-top: 56px;
260
+ margin-top: 104px;
261
+ }
262
+
263
+ .cjkcms-navbar-center-fixed-img-offset {
264
+ margin-top: 175px;
265
+ }
266
+
267
+ .cjkcms-navbar-center-fixed-offset {
268
+ margin-top: 104px;
269
+ }
270
+
271
+ .cjkcms-navbar-center {
272
+ text-align: center;
256
273
  }
257
274
 
275
+ .cjkcms-navbar-center .navbar-collapse {
276
+ justify-content: center;
277
+ }
278
+
279
+ .cjkcms-navbar-center .navbar-brand {
280
+ margin: 0;
281
+ }
282
+
283
+ .cjkcms-navbar-center .navbar-brand img {
284
+ height: 150px;
285
+ width: auto;
286
+ }
287
+
288
+
258
289
  [class^="container"] [class^="container"] {
259
290
  width: 100%;
260
291
  padding: 0;
@@ -1,16 +1,20 @@
1
1
  {% load wagtailimages_tags %}
2
2
 
3
- <div class="row">
3
+ <div class="row {%if self.settings.custom_css_class%}{{self.settings.custom_css_class}}{% endif %}">
4
4
  {% if self.image %}
5
5
  <div class="col-md-4">
6
6
  {% image self.image original as imagedata %}
7
7
  <img src="{{imagedata.url}}" alt="Photo of {{self.name}}" class="w-100" />
8
8
  </div>
9
- <div class="col-md-8" style="overflow-x: hidden;">
9
+ <div class="col-md-8">
10
10
  {% else %}
11
- <div class="col-md-12" style="overflow-x: hidden;">
11
+ <div class="col-md-12">
12
12
  {% endif %}
13
- <strong class="leaders"><span>{{self.name}}</span><span>{{self.price}}</span></strong>
14
- <div>{{self.description}}</div>
13
+ <div class="d-flex">
14
+ <span class="flex-shrink-1 fs-5">{{self.name}}</span>
15
+ <span class="leaders-dots flex-grow-1"></span>
16
+ <span class="flex-shrink-1 fs-5 text-end">{{self.price}}</span>
17
+ </div>
18
+ <div><em>{{self.description}}</em></div>
15
19
  </div>
16
20
  </div>
@@ -50,7 +50,7 @@
50
50
  {% endif %}
51
51
 
52
52
  {% if settings.cjkcms.LayoutSettings.navbar_search %}
53
- {% include "cjkcms/snippets/navbar_search.html" %}
53
+ {% include "cjkcms/snippets/navbar_search_button.html" %}
54
54
  {% endif %}
55
55
  </div>
56
56
 
@@ -62,11 +62,7 @@
62
62
  </div><!-- /.container -->
63
63
  {% endif %}
64
64
 
65
- {# Navbar offset #}
66
- {% if settings.cjkcms.LayoutSettings.navbar_fixed %}
67
- {% if settings.cjkcms.LayoutSettings.logo %}
68
- <div class="{{settings.cjkcms.LayoutSettings.navbar_format}}-fixed-img-offset {{settings.cjkcms.LayoutSettings.navbar_collapse_mode}}"></div>
69
- {% else %}
70
- <div class="{{settings.cjkcms.LayoutSettings.navbar_format}}-fixed-offset {{settings.cjkcms.LayoutSettings.navbar_collapse_mode}}"></div>
71
- {% endif %}
72
- {% endif %}
65
+ {# Search Modal must be injected outside of the nav, because if the nav is fixed/sticky it breaks the modal #}
66
+ {% if settings.cjkcms.LayoutSettings.navbar_search and "popup" in settings.cjkcms.LayoutSettings.search_format %}
67
+ {% include "cjkcms/snippets/navbar_search_modal.html" %}
68
+ {% endif %}
@@ -0,0 +1,18 @@
1
+ {% load wagtailcore_tags cjkcms_tags django_bootstrap5 i18n %}
2
+ <form action="{% url 'cjkcms_search' %}" method="GET" class="row row-cols-lg-auto g-3 align-items-center">
3
+ {% csrf_token %}
4
+ {% get_searchform request as form %}
5
+ {% bootstrap_form_errors form type='non_fields' %}
6
+ {% if settings.cjkcms.LayoutSettings.search_format == "" or settings.cjkcms.LayoutSettings.search_format|slice:":3" == "box" %}
7
+ {% bootstrap_field form.s layout='inline' show_label=False %}
8
+ {% endif %}
9
+ {% if "button" in settings.cjkcms.LayoutSettings.search_format %}
10
+ <button type="button" class="{{ settings.cjkcms.LayoutSettings.searchbutton_class }}"
11
+ {% if 'popup' in settings.cjkcms.LayoutSettings.search_format %}
12
+ data-mdb-ripple-init data-mdb-modal-init data-mdb-target="#searchModal"
13
+ data-bs-toggle="modal" data-bs-target="#searchModal"
14
+ {% endif %}
15
+ >{{ settings.cjkcms.LayoutSettings.searchbutton_label | richtext }}</button>
16
+ {% endif %}
17
+
18
+ </form>
@@ -0,0 +1,34 @@
1
+ {% load wagtailcore_tags cjkcms_tags django_bootstrap5 i18n %}
2
+
3
+
4
+ <form action="{% url 'cjkcms_search' %}" method="GET" class="row row-cols-lg-auto g-3 align-items-center">
5
+ {% csrf_token %}
6
+ {% get_searchform request as form %}
7
+ {% bootstrap_form_errors form type='non_fields' %}
8
+ <div id="searchModal" class="modal fade" tabindex="-1" aria-labelledby="searchModalLabel" aria-hidden="true">
9
+ <div class="modal-dialog">
10
+ <div class="modal-content">
11
+ <div class="modal-header">
12
+ <h5 class="modal-title" id="searchModalLabel">Search</h5>
13
+ <button type="button" class="btn-close" data-bs-dismiss="modal" data-mdb-dismiss="modal" aria-label="Close"></button>
14
+ </div>
15
+ <div class="modal-body">
16
+ {% bootstrap_form form layout='inline' %}
17
+ </div>
18
+ <div class="modal-footer">
19
+ <button type="submit" class="{{ settings.cjkcms.LayoutSettings.searchbutton_class }}">
20
+ {{ settings.cjkcms.LayoutSettings.searchbutton_label | richtext }}
21
+ </button>
22
+ </div>
23
+ </div>
24
+ </div>
25
+ </div>
26
+ <script>
27
+ var myModal = document.getElementById('searchModal')
28
+ var myInput = document.getElementById('id_s')
29
+
30
+ myModal.addEventListener('shown.bs.modal', function () {
31
+ myInput.focus()
32
+ })
33
+ </script>
34
+ </form>
@@ -132,12 +132,25 @@ def get_pictures(collection_id, tag=None):
132
132
  @register.simple_tag(takes_context=True)
133
133
  def get_navbar_css(context):
134
134
  layout = LayoutSettings.for_request(context["request"])
135
- fixed = "fixed-top" if layout.navbar_fixed else ""
135
+ fixed = "sticky-top" if layout.navbar_fixed else ""
136
+
137
+ # if layout.navba_class is not set, but layout.navbar_fixed is set,
138
+ # we need a background color for the navbar to protect from overlapping
139
+ # content below when scrolling. So, try to guess the navbar class:
140
+ # if layout.color_scheme is set, use that, else use "navbar-light bg-light"
141
+ if not layout.navbar_class and layout.navbar_fixed:
142
+ if layout.color_scheme:
143
+ layout.navbar_class = (
144
+ f"navbar-{layout.color_scheme} bg-{layout.color_scheme}"
145
+ )
146
+ else:
147
+ layout.navbar_class = "navbar-light bg-light"
148
+
136
149
  return " ".join(
137
150
  [
138
151
  fixed,
139
152
  layout.navbar_collapse_mode,
140
- layout.color_scheme,
153
+ # layout.color_scheme,
141
154
  layout.navbar_format,
142
155
  layout.navbar_class,
143
156
  ]
@@ -322,4 +335,4 @@ def is_not_page(model):
322
335
 
323
336
  @register.filter(name="not_starts_with")
324
337
  def not_starts_with(value, arg):
325
- return not value.startswith(arg)
338
+ return not value.startswith(arg)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: wagtail-cjkcms
3
- Version: 24.12.2
3
+ Version: 24.12.4
4
4
  Summary: Wagtail Content Management System, installable as a Django app into any Wagtail 4.1.x/5.x/6.x site.
5
5
  Author-email: Grzegorz Krol <gk@cjk.pl>
6
6
  License: BSD-3-Clause
@@ -32,8 +32,8 @@ License-File: LICENSE
32
32
  Requires-Dist: django-bootstrap5
33
33
  Requires-Dist: django>=4.2
34
34
  Requires-Dist: wagtail>=5.1
35
- Requires-Dist: wagtail-seo
36
- Requires-Dist: wagtail-cache
35
+ Requires-Dist: wagtail-seo>=2.5.0
36
+ Requires-Dist: wagtail-cache>=2.5.1
37
37
  Requires-Dist: cjkcms-color-panel
38
38
 
39
39
  ![PyPI - Python Version](https://img.shields.io/pypi/pyversions/wagtail-cjkcms)
@@ -1,11 +1,11 @@
1
1
  cjkcms/.DS_Store,sha256=cYcT7MpEwyMj1-CAvcue4ODbL87U2KGsmN7HYD4O8SY,6148
2
- cjkcms/__init__.py,sha256=ZsUuUlcExnTWNhB9GZKCu2i_Ah9oeimsNC_IZ0Rpr6s,273
2
+ cjkcms/__init__.py,sha256=yW8u3GSpPqM3OXKEfa9TQgGfLIwYPeM5h_ykGauzn6w,273
3
3
  cjkcms/apps.py,sha256=VA5Z1YerImetvN8KsjPTMSn1fSo6O1JkBJdK5y5ubJY,173
4
4
  cjkcms/fields.py,sha256=dE0DuNIjX7jhA-5GjSmR2l66EDH2kq3vuxL9WyRALCY,3191
5
5
  cjkcms/forms.py,sha256=_uu_FR8odz40lD-Rmw0tlK7-xxxa8THHfV2-1ZJYsIM,361
6
6
  cjkcms/image_formats.py,sha256=d4zRshuybwxSRL8UpBH31dFBr32o4HNexa0ks5PX3TI,1833
7
7
  cjkcms/search_urls.py,sha256=92XkGTJRrQQyA061wWl1l5C0vq6INVJPXOrpcgp3aoU,125
8
- cjkcms/settings.py,sha256=ODBpl3Fn3yCX0CYogt0OIGD-2IGaijefwpdZngx3Bnc,20324
8
+ cjkcms/settings.py,sha256=UbC-iUCXgVq9FRyQ5ePXOF6DJ7lQUOF5EMf8V4pA2xc,20440
9
9
  cjkcms/urls.py,sha256=k5tEHWI4Umi2PWvGdNJ-FZ9OCy6AS3Y2S7k5jNOpgt0,644
10
10
  cjkcms/utils.py,sha256=u4pkPxAwqH3SgyIcmvk7I5L3w-eIcz0Rphmv0Y1DRpA,2006
11
11
  cjkcms/views.py,sha256=NWy3pBBcLUOH6WjEJh03N2sND4oToiyiy6_spgXdUcY,4389
@@ -17,7 +17,7 @@ cjkcms/bin/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
17
  cjkcms/bin/cjkcms.py,sha256=i11hhB11COQhTk05y7mkeIkUYcFjhI8-QxLkN3tCxgg,5763
18
18
  cjkcms/blocks/__init__.py,sha256=a54EtWyH8UPqszlVEeOtFCvBW2WmbaW1vR4sZuN9Hf0,3542
19
19
  cjkcms/blocks/base_blocks.py,sha256=uKp6QO3iOPT4P0H0yOumvL7faPvLQK9Dj-D8iqlvqQ4,11616
20
- cjkcms/blocks/content_blocks.py,sha256=db_CNBqpKdAq1e9Y4AdpRm1077ANIWD8DzqG56_rSNs,10098
20
+ cjkcms/blocks/content_blocks.py,sha256=LdTS7mVFMvQF6HDcl5iuqOzPe48T8ROFLcad5jGE-6E,10188
21
21
  cjkcms/blocks/html_blocks.py,sha256=rXdR1uxFYDYjOXpxndItxacWstiME8CdqZgB6d5qAYE,9543
22
22
  cjkcms/blocks/layout_blocks.py,sha256=n2oVyL-ZQQaEA00HU6YraR59YF065o-OK7WuAahGuiw,3406
23
23
  cjkcms/blocks/searchable_html_block.py,sha256=i1rWv4vwwvZ9fxkASwPKl87-TqVHkXOFyohH3ve7pYk,171
@@ -56,6 +56,7 @@ cjkcms/migrations/0019_layoutsettings_searchbox_input_class_and_more.py,sha256=S
56
56
  cjkcms/migrations/0020_socialmediasettings_github_and_more.py,sha256=flCSiw6wB32wsxSln2NA66zWkxrJLhNfL1O3UInH2to,1044
57
57
  cjkcms/migrations/0021_remove_layoutsettings_navbar_color_scheme_and_more.py,sha256=lOOyu3QHjnjZY3HwXWCvUBxngm-t_sk4TvuxZ2Cq_j4,2723
58
58
  cjkcms/migrations/0022_cjkcmspage_breadcrumb_label_and_more.py,sha256=UqXcsDPMsJOewtU3aTl1R4ZE5I45ykiIEepQBALzno0,812
59
+ cjkcms/migrations/0023_alter_navbar_language.py,sha256=TnMs5fzf-PmirNn6CgYh5pUwwHhaYKPDCjqnZqrj8Ok,547
59
60
  cjkcms/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
60
61
  cjkcms/models/__init__.py,sha256=f99GmxfFxGtQl8JvZFz8rAtklCIesLoSccyhhi2xgPU,232
61
62
  cjkcms/models/admin_sidebar.py,sha256=Q8jdlIY1fBxUq8fygYdmOLjDwIRs3rFO0Mze9e2STpM,752
@@ -148,7 +149,7 @@ cjkcms/static/cjkcms/bi/fonts/bootstrap-icons.woff2,sha256=z-RbmB0bkbFzNho0z85fY
148
149
  cjkcms/static/cjkcms/css/cjkcms-admin.css,sha256=I_ca37IMgYbh75CrhRenPvu3TzMVFgmDO2246fGijkI,846
149
150
  cjkcms/static/cjkcms/css/cjkcms-custom-theme-disabled.css,sha256=n176w4XXEO7MdisDllr8_6pVmyRAEQM7QbAPvSVU5YU,2432
150
151
  cjkcms/static/cjkcms/css/cjkcms-editor.css,sha256=rqUeJtq7TNyNpBvSkTOKzpFMUZ-Vh3K075EcmAvG05Q,1104
151
- cjkcms/static/cjkcms/css/cjkcms-front.css,sha256=Iwkf8qD_Yu8bEUwMGj8MdqSaArphhjcIcyJG--u73Fo,4853
152
+ cjkcms/static/cjkcms/css/cjkcms-front.css,sha256=s_fkt-YKud6BuhKYtAW13EfSKKU3x_HcnVnMuHyhgzo,5316
152
153
  cjkcms/static/cjkcms/images/avatars/default.png,sha256=f8QXRtZ1j3s2CItnnL8XbbhgfW2yPHKnijwG3d5qdb0,535
153
154
  cjkcms/static/cjkcms/images/avatars/default.svg,sha256=kVYNxHtkb6nHbTCXyDG3qvS_-IgS9PknIf2I8KI9MrE,384
154
155
  cjkcms/static/cjkcms/images/icons/calendar-day.svg,sha256=S6Wk7QnGUEkSzabH8ob5Vqoum1MBRNuQ4imz-in9n6Y,581
@@ -235,7 +236,7 @@ cjkcms/templates/cjkcms/blocks/pagelist_toc_nextprev.html,sha256=__QZ6SNxoWByrjU
235
236
  cjkcms/templates/cjkcms/blocks/pagepreview_block.html,sha256=KGodzh8Pd-Jhg8mmMoLWFuiU3xDzBn4fuCqfYXT_iM4,200
236
237
  cjkcms/templates/cjkcms/blocks/pagepreview_card.html,sha256=SJeuA6lWEQYws53vNCGSOK_JxyUZN-ja2D8dUh2dr4E,793
237
238
  cjkcms/templates/cjkcms/blocks/pricelist_block.html,sha256=kq1M97zQlQjr_8E4Q9pge1hUMzjO_WNFQygN8Y1OUZ8,244
238
- cjkcms/templates/cjkcms/blocks/pricelistitem_block.html,sha256=cczFHfpOtHAJZrXNS7S7vKOgBJpQUI1mnJ02Qh_C_4c,513
239
+ cjkcms/templates/cjkcms/blocks/pricelistitem_block.html,sha256=bAObRZjYMktE1PTjLIv2odcIHdbiXirxaDjcjj9cZSg,708
239
240
  cjkcms/templates/cjkcms/blocks/public_event_block.html,sha256=77XHVAGABezV2G-bXQyd8GnBHMOQpCQR1wVtR9l8Uqo,1155
240
241
  cjkcms/templates/cjkcms/blocks/quote_block.html,sha256=GZoMDnpg1LUD-zsDw07h5HtCR3toWypz2dpTNuRwVUw,353
241
242
  cjkcms/templates/cjkcms/blocks/quote_block_leftbar.html,sha256=SAIrsh9WkC74sm9oto3QnW0fBqCP4Abi9QZ-mDwviLs,852
@@ -298,9 +299,10 @@ cjkcms/templates/cjkcms/snippets/breadcrumbs.html,sha256=3flWNTJ568V4l9HTuYK5vZ7
298
299
  cjkcms/templates/cjkcms/snippets/footer.html,sha256=_QUtV_LHgGjh-XLzw5Fd_Lxdrx9on5G0luFaa6oirB0,430
299
300
  cjkcms/templates/cjkcms/snippets/frontend_assets.html,sha256=2q24FFzOiM2USJiI1tuNTdJZGvRQnMPjAwTA0AlGNiU,1656
300
301
  cjkcms/templates/cjkcms/snippets/frontend_scripts.html,sha256=kO3lpKZylriXj27ff6ubtDXkpqOwqSZM256iM6cCuHM,510
301
- cjkcms/templates/cjkcms/snippets/navbar.html,sha256=VM2Yx4oxV2OjTBZyQ2PYdraU38hLMMLxN0oyqmC_tpk,2983
302
+ cjkcms/templates/cjkcms/snippets/navbar.html,sha256=wdF_eJMuHf2sdUMCeINs48FmjrcisNej55jQ8M4ZJXg,2828
302
303
  cjkcms/templates/cjkcms/snippets/navbar_lang_selector.html,sha256=sn7KLDentGOsMZ9CNAxdAGLYO3a_mYfSUhJ6iZzteOE,836
303
- cjkcms/templates/cjkcms/snippets/navbar_search.html,sha256=ljQtkyobQ5gGYRDrBcaIusiXVu1mNcv8mMojQDhcqpo,2293
304
+ cjkcms/templates/cjkcms/snippets/navbar_search_button.html,sha256=yV6xIWQ3_BdrTEPVp3j0WKqChPui7oC0Zl3C2fUrpes,1075
305
+ cjkcms/templates/cjkcms/snippets/navbar_search_modal.html,sha256=dcFnSw9FjDQWoa_wilUXOUd5CkpjpyOyuqzhXE5sEPk,1474
304
306
  cjkcms/templates/cjkcms/snippets/social_media.html,sha256=63Yd0X5I5WhshRlv23H6Hy8e2rBUnrzXedTP5HqP3lE,330
305
307
  cjkcms/templates/cjkcms/snippets/social_media_icons.html,sha256=0xR9CdZEhB1hm52LGn1kKCtx4rSl8nO4DPwPua-Oq3M,2829
306
308
  cjkcms/templates/cjkcms/snippets/social_media_nav_block.html,sha256=1eavf1UyigPkVgrHMQ3kgfnaEvzXnF22J-YxK5hshn0,173
@@ -315,7 +317,7 @@ cjkcms/templates/wagtailadmin/shared/cr_main_nav_2fix.html,sha256=BAhkDE8_8KbhUO
315
317
  cjkcms/templates/wagtailadmin/tables/thumbnail_cell.html,sha256=RzMT-tBnnDOgL-zexKanZTTpCEX1bMybFL2p_zvOEV4,578
316
318
  cjkcms/templatetags/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
317
319
  cjkcms/templatetags/auth_extras.py,sha256=IIxQ5n9FaQVZmhW-yW1XM5p2OjIemtqVoX-O-UcCns8,327
318
- cjkcms/templatetags/cjkcms_tags.py,sha256=qpJrxMYJKz6pQeuoMx5YBP_xkMcV65fwQCEplAV-WNM,9166
320
+ cjkcms/templatetags/cjkcms_tags.py,sha256=hijLNrcc-ORLe88cyQzjtQW2PjbCvH5CEsYr9p5UT7U,9754
319
321
  cjkcms/templatetags/friendly_loader.py,sha256=Zwopb9NNNN6IuDJCMFlwKuhmJC0hi4uTPEZSAxeakYY,4962
320
322
  cjkcms/templatetags/gravatar.py,sha256=JG5MB6HUFso15J8gZ_te5FTMYAuo4km8rzMKKvLLh-E,1127
321
323
  cjkcms/templatetags/txtutils_tags.py,sha256=UMojdiLt6Jpijc-2QLusPc-qXX9bqFZf0JbqqPsfnWQ,1223
@@ -336,16 +338,22 @@ cjkcms/tests/test_urls.py,sha256=otiKZcs1WLDQM6AOfcdZgsOGDwea1qS3VEc8Yy-FV-Q,288
336
338
  cjkcms/tests/test_webpage.py,sha256=PvXeXbawigObsdi_YpQNuHFx3Lqi6wM3ktVHZsxYbr4,1520
337
339
  cjkcms/tests/urls.py,sha256=_ksKz7HBHJtQK3HxC9cmJMX_dt6n4alx3FXjcL-cu28,850
338
340
  cjkcms/tests/media/images/test.original.png,sha256=nLMtadXZhXXbt6DTm5enrysKX7cfWiUudtbS2X7mSzI,1938
341
+ cjkcms/tests/media/images/test_6mZL9NZ.original.png,sha256=nLMtadXZhXXbt6DTm5enrysKX7cfWiUudtbS2X7mSzI,1938
342
+ cjkcms/tests/media/images/test_YBCJmYS.original.png,sha256=nLMtadXZhXXbt6DTm5enrysKX7cfWiUudtbS2X7mSzI,1938
343
+ cjkcms/tests/media/images/test_q0QJ4UA.original.png,sha256=nLMtadXZhXXbt6DTm5enrysKX7cfWiUudtbS2X7mSzI,1938
339
344
  cjkcms/tests/media/original_images/test.png,sha256=xJDvcufuQ-AM1HT-zgMxYEORko4rdK_8MSHU-puJNW8,2306
345
+ cjkcms/tests/media/original_images/test_6mZL9NZ.png,sha256=xJDvcufuQ-AM1HT-zgMxYEORko4rdK_8MSHU-puJNW8,2306
346
+ cjkcms/tests/media/original_images/test_YBCJmYS.png,sha256=xJDvcufuQ-AM1HT-zgMxYEORko4rdK_8MSHU-puJNW8,2306
347
+ cjkcms/tests/media/original_images/test_q0QJ4UA.png,sha256=xJDvcufuQ-AM1HT-zgMxYEORko4rdK_8MSHU-puJNW8,2306
340
348
  cjkcms/tests/testapp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
341
349
  cjkcms/tests/testapp/apps.py,sha256=EwyrkWTu-_OoLoERBTlqkqfPIIrEsbHY3kbCxgrv_7I,169
342
350
  cjkcms/tests/testapp/models.py,sha256=Rkn9KHrGbLzrKjP4y_gwtXma1_fJOZNU7ekb689fJEU,488
343
351
  cjkcms/tests/testapp/migrations/0001_initial.py,sha256=hxr-r-42IQEGr_OsZkxXXCW7wbxAHuI_OLOkn-seJUU,4942
344
352
  cjkcms/tests/testapp/migrations/0002_create_homepage.py,sha256=EfsxHh1oyqwahW9RVpTvaRDx_CHtFSJQahKEr7XC5Gg,1999
345
353
  cjkcms/tests/testapp/migrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
346
- wagtail_cjkcms-24.12.2.dist-info/LICENSE,sha256=KHsCh1fKOZzvcKe1a9h3FlDjTjK_UurO3wHK55TnHHo,1538
347
- wagtail_cjkcms-24.12.2.dist-info/METADATA,sha256=7xCQjQfxWjcZtPgYzcAWemdjjn937AzzQIonjnQMkfg,3107
348
- wagtail_cjkcms-24.12.2.dist-info/WHEEL,sha256=pxeNX5JdtCe58PUSYP9upmc7jdRPgvT0Gm9kb1SHlVw,109
349
- wagtail_cjkcms-24.12.2.dist-info/entry_points.txt,sha256=FzoiFENdZ1uebNztyz6GlswkumQspd5VjWbR9MUIH_8,50
350
- wagtail_cjkcms-24.12.2.dist-info/top_level.txt,sha256=8wJGOGo1pG5nO5akfcMzA7i3ndj5868I8w35vTT0JJM,7
351
- wagtail_cjkcms-24.12.2.dist-info/RECORD,,
354
+ wagtail_cjkcms-24.12.4.dist-info/LICENSE,sha256=KHsCh1fKOZzvcKe1a9h3FlDjTjK_UurO3wHK55TnHHo,1538
355
+ wagtail_cjkcms-24.12.4.dist-info/METADATA,sha256=u7RNDX6rg2hOFyjqBC4sG6LB3LEqR0sDXhtPItUBa3o,3121
356
+ wagtail_cjkcms-24.12.4.dist-info/WHEEL,sha256=pxeNX5JdtCe58PUSYP9upmc7jdRPgvT0Gm9kb1SHlVw,109
357
+ wagtail_cjkcms-24.12.4.dist-info/entry_points.txt,sha256=FzoiFENdZ1uebNztyz6GlswkumQspd5VjWbR9MUIH_8,50
358
+ wagtail_cjkcms-24.12.4.dist-info/top_level.txt,sha256=8wJGOGo1pG5nO5akfcMzA7i3ndj5868I8w35vTT0JJM,7
359
+ wagtail_cjkcms-24.12.4.dist-info/RECORD,,
@@ -1,47 +0,0 @@
1
- {% load wagtailcore_tags cjkcms_tags django_bootstrap5 i18n %}
2
- <form action="{% url 'cjkcms_search' %}" method="GET" class="row row-cols-lg-auto g-3 align-items-center">
3
- {% csrf_token %}
4
- {% get_searchform request as form %}
5
- {% bootstrap_form_errors form type='non_fields' %}
6
- {% if settings.cjkcms.LayoutSettings.search_format == "" or settings.cjkcms.LayoutSettings.search_format|slice:":3" == "box" %}
7
- {% bootstrap_field form.s layout='inline' show_label=False %}
8
- {% endif %}
9
- {% if "button" in settings.cjkcms.LayoutSettings.search_format %}
10
- <button type="button" class="{{ settings.cjkcms.LayoutSettings.searchbutton_class }}"
11
- {% if 'popup' in settings.cjkcms.LayoutSettings.search_format %}
12
- data-mdb-toggle="modal" data-bs-toggle="modal"
13
- data-bs-target="#search-modal" data-mdb-target="#search-modal"
14
- onclick="focusInputField()"
15
- {% endif %}
16
- >{{ settings.cjkcms.LayoutSettings.searchbutton_label | richtext }}</button>
17
- {% endif %}
18
-
19
- {% if "popup" in settings.cjkcms.LayoutSettings.search_format %}
20
- <div id="search-modal" class="modal" style="display: none;">
21
- <div class="modal-dialog">
22
- <div class="modal-content">
23
- <div class="modal-header">
24
- <h5 class="modal-title">Search</h5>
25
- <button type="button" class="btn-close" data-bs-dismiss="modal" data-mdb-dismiss="modal" aria-label="Close"></button>
26
- </div>
27
- <div class="modal-body">
28
- {% bootstrap_form form layout='inline' %}
29
- </div>
30
- <div class="modal-footer">
31
- <button type="submit" class="{{ settings.cjkcms.LayoutSettings.searchbutton_class }}">
32
- {{ settings.cjkcms.LayoutSettings.searchbutton_label | richtext }}
33
- </button>
34
- </div>
35
- </div>
36
- </div>
37
- </div>
38
- <script>
39
- function focusInputField() {
40
- var inputField = document.querySelector('#search-modal input[type="text"]');
41
- if (inputField) {
42
- inputField.focus();
43
- }
44
- }
45
- </script>
46
- {% endif %}
47
- </form>