wagtail-enap-designsystem 1.2.1.166__py3-none-any.whl → 1.2.1.167__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.
@@ -2197,6 +2197,7 @@ class AreaAluno(Page):
2197
2197
  class Meta:
2198
2198
  verbose_name = "Área do Aluno"
2199
2199
  verbose_name_plural = "Área do Aluno"
2200
+
2200
2201
  class EnapSearchElastic(Page):
2201
2202
  template = "enap_designsystem/pages/page_search.html"
2202
2203
 
@@ -2213,7 +2214,7 @@ class EnapSearchElastic(Page):
2213
2214
  if "tipo" not in request.GET:
2214
2215
  query = request.GET.get("q", "")
2215
2216
  ordenacao = request.GET.get("ordenacao", "relevantes")
2216
- return redirect(f"{request.path}?q={query}&tipo=todos&ordenacao={ordenacao}")
2217
+ return redirect(f"{request.path}?q={query}&tipo=cursos&ordenacao={ordenacao}")
2217
2218
 
2218
2219
  return super().serve(request, *args, **kwargs)
2219
2220
 
@@ -93,6 +93,7 @@
93
93
  font-weight: 600;
94
94
  margin: 0;
95
95
  line-height: 120%;
96
+ color: #434A54;
96
97
  }
97
98
 
98
99
  .p-card{
@@ -100,6 +101,7 @@
100
101
  margin: 0;
101
102
  display: flex;
102
103
  flex-direction: column;
104
+ color: #434A54;
103
105
  }
104
106
 
105
107
  .wrapper-button{
@@ -177,6 +179,18 @@
177
179
  .card-secondary .wrapper-text-card{
178
180
  align-items: center;
179
181
  }
182
+
183
+ .card-secondary h2{
184
+ color: white;
185
+ }
186
+
187
+ .card-secondary p{
188
+ text-align: center;
189
+ }
190
+
191
+ .card-terciary h2{
192
+ color: white;
193
+ }
180
194
 
181
195
  .card-terciary{
182
196
  background-color: #024248;
@@ -527,6 +527,17 @@ z-index: 1;
527
527
  font-weight: 400;
528
528
  }
529
529
 
530
+
531
+ .card-text p{
532
+ font-size: 16px;
533
+ color: #434A54;
534
+ }
535
+
536
+ .srv-card-text-text p{
537
+ font-size: 16px;
538
+ color: #434A54;
539
+ }
540
+
530
541
  .srv-card-meta {
531
542
  font-size: 14px;
532
543
  color: #75708B;
@@ -11,6 +11,11 @@
11
11
  margin: 0;
12
12
  }
13
13
 
14
+ .card-text-text p {
15
+ font-size: 16px;
16
+ color: #434A54;
17
+ }
18
+
14
19
  .btn-todos{
15
20
  height: 40px;
16
21
  display: flex;
@@ -84,7 +84,7 @@
84
84
  <h3 class="suap-courses-title">{{ curso.descricao }}</h3>
85
85
  {% endif %}
86
86
  {% if curso.breve_descricao %}
87
- <p class="suap-card-text">{{ curso.breve_descricao|truncatewords:15 }}</p>
87
+ <p class="card-text">{{ curso.breve_descricao|truncatewords:10 }}</p>
88
88
  {% endif %}
89
89
 
90
90
  <!-- Status de inscrições -->
@@ -41,8 +41,10 @@
41
41
  overflow: hidden;
42
42
  text-overflow: ellipsis;
43
43
  ">{{ curso.titulo }}</h3>
44
- <p class="card-text" style="
44
+ <p class="card-text-text" style="
45
45
  display: -webkit-box;
46
+ color: #434A54;
47
+ font-size: 16px;
46
48
  -webkit-line-clamp: 3;
47
49
  -webkit-box-orient: vertical;
48
50
  overflow: hidden;
@@ -41,7 +41,6 @@
41
41
  {% endif %}
42
42
  {% endblock %}
43
43
 
44
-
45
44
  {% block content %}
46
45
  <section class="page-wrapper">
47
46
  <div class="hearder-search">
@@ -101,7 +100,7 @@
101
100
  </div>
102
101
  </div>
103
102
  </div>
104
-
103
+ <div class="cor-fundo-pesquisa">
105
104
  {% if tipo == "cursos" %}
106
105
  <div class="filter-container">
107
106
  <div id="SrvTab01" class="srv-tabcontent" style="display: block;">
@@ -123,11 +122,6 @@
123
122
  <button class="toggle-filtro-btn" onclick="toggleFiltros()">
124
123
  <span class="material-icons">filter_list</span> Filtros
125
124
  </button>
126
- {% if request.GET.modalidade or request.GET.inscricoes or request.GET.temas or request.GET.categoria or request.GET.competencias %}
127
- <a class="toggle-limpar-filtro-btn" href="?q={{ query }}&tipo={{ request.GET.tipo }}&ordenacao={{ ordenacao }}">
128
- <span class="material-icons">filter_alt_off</span> Limpar Filtros
129
- </a>
130
- {% endif %}
131
125
  </div>
132
126
  <div class="result-info-wrapper">
133
127
  {% with pagination.current_page|add:"-1" as page_offset %}
@@ -154,8 +148,11 @@
154
148
  <div class="filtro-sidebar" id="filtroSidebar">
155
149
  <div class="dropdown-filter">
156
150
  <div class="dropdown-header" onclick="toggleDropdown('modalidade')">
157
- <span>Modalidade</span>
158
- <span class="dropdown-arrow">▼</span>
151
+ <span id="modalidade-nome-filtro">Modalidade</span>
152
+ <div class="contador-e-seta">
153
+ <span id="modalidade-count" class="filter-count"></span>
154
+ <i class="dropdown-arrow fa-solid fa-caret-down"></i>
155
+ </div>
159
156
  </div>
160
157
  <div class="dropdown-checkbox-area" id="modalidade-dropdown">
161
158
  <div class="checkbox-container">
@@ -165,7 +162,7 @@
165
162
  name="modalidade"
166
163
  id="modalidade_{{ item.id }}"
167
164
  value="{{ item.id }}"
168
- {% if item.id|stringformat:"s" in request.GET.modalidade %}checked{% endif %}>
165
+ >
169
166
  <label for="modalidade_{{ item.id }}">{{ item.nome }}</label>
170
167
  </div>
171
168
  {% endfor %}
@@ -175,8 +172,11 @@
175
172
 
176
173
  <div class="dropdown-filter">
177
174
  <div class="dropdown-header" onclick="toggleDropdown('inscricoes')">
178
- <span>Inscrições</span>
179
- <span class="dropdown-arrow">▼</span>
175
+ <span id="inscricoes-nome-filtro">Inscrições</span>
176
+ <div class="contador-e-seta">
177
+ <span id="inscricoes-count" class="filter-count"></span>
178
+ <i class="dropdown-arrow fa-solid fa-caret-down"></i>
179
+ </div>
180
180
  </div>
181
181
  <div class="dropdown-checkbox-area" id="inscricoes-dropdown">
182
182
  <div class="checkbox-container">
@@ -186,7 +186,6 @@
186
186
  name="inscricoes"
187
187
  id="inscricoes_{{ item.id }}"
188
188
  value="{{ item.id }}"
189
- {% if item.id|stringformat:"s" in request.GET.inscricoes %}checked{% endif %}
190
189
  >
191
190
  <label for="inscricoes_{{ item.id }}">{{ item.nome }}</label>
192
191
  </div>
@@ -197,8 +196,11 @@
197
196
 
198
197
  <div class="dropdown-filter">
199
198
  <div class="dropdown-header" onclick="toggleDropdown('temas')">
200
- <span>Temas</span>
201
- <span class="dropdown-arrow">▼</span>
199
+ <span id="temas-nome-filtro">Temas</span>
200
+ <div class="contador-e-seta">
201
+ <span id="temas-count" class="filter-count"></span>
202
+ <i class="dropdown-arrow fa-solid fa-caret-down"></i>
203
+ </div>
202
204
  </div>
203
205
  <div class="dropdown-checkbox-area" id="temas-dropdown">
204
206
  <div class="checkbox-container">
@@ -206,9 +208,8 @@
206
208
  <div class="checkbox-item">
207
209
  <input type="checkbox"
208
210
  name="temas"
209
- id="temas_{{ item.nome }}"
211
+ id="temas_{{ item.id }}"
210
212
  value="{{ item.nome }}"
211
- {% if item.id|stringformat:"s" in request.GET.getlist.temas %}checked{% endif %}
212
213
  >
213
214
  <label for="temas_{{ item.id }}">{{ item.nome }}</label>
214
215
  </div>
@@ -219,8 +220,11 @@
219
220
 
220
221
  <div class="dropdown-filter">
221
222
  <div class="dropdown-header" onclick="toggleDropdown('categoria')">
222
- <span>Categoria</span>
223
- <span class="dropdown-arrow">▼</span>
223
+ <span id="categoria-nome-filtro">Categoria</span>
224
+ <div class="contador-e-seta">
225
+ <span id="categoria-count" class="filter-count"></span>
226
+ <i class="dropdown-arrow fa-solid fa-caret-down"></i>
227
+ </div>
224
228
  </div>
225
229
  <div class="dropdown-checkbox-area" id="categoria-dropdown">
226
230
  <div class="checkbox-container">
@@ -230,7 +234,6 @@
230
234
  name="categoria"
231
235
  id="categoria_{{ item.id }}"
232
236
  value="{{ item.nome }}"
233
- {% if item.nome in request.GET.getlist.categoria %}checked{% endif %}
234
237
  >
235
238
  <label for="categoria_{{ item.id }}">{{ item.nome }}</label>
236
239
  </div>
@@ -242,18 +245,20 @@
242
245
  <!-- Competências convertido para checkbox -->
243
246
  <div class="dropdown-filter">
244
247
  <div class="dropdown-header" onclick="toggleDropdown('competencias')">
245
- <span>Competências</span>
246
- <span class="dropdown-arrow">▼</span>
248
+ <span id="competencias-nome-filtro">Competências</span>
249
+ <div class="contador-e-seta">
250
+ <span id="competencias-count" class="filter-count"></span>
251
+ <i class="dropdown-arrow fa-solid fa-caret-down"></i>
252
+ </div>
247
253
  </div>
248
254
  <div class="dropdown-checkbox-area" id="competencias-dropdown">
249
255
  <div class="checkbox-container">
250
256
  {% for item in filtros.competencias %}
251
257
  <div class="checkbox-item">
252
258
  <input type="checkbox"
253
- name="competencias"
254
- id="competencias_{{ item.descricao }}"
259
+ name="competencias"
260
+ id="competencias_{{ item.id }}"
255
261
  value="{{ item.descricao }}"
256
- {% if item.id|stringformat:"s" in request.GET.getlist.competencias %}checked{% endif %}
257
262
  >
258
263
  <label for="competencias_{{ item.id }}">{{ item.descricao }}</label>
259
264
  </div>
@@ -263,19 +268,20 @@
263
268
  </div>
264
269
 
265
270
  <!-- Botões de ação no final da sidebar -->
266
- <div style="margin-top: 20px; padding: 0 20px; display: flex; flex-direction: column; gap: 10px;">
267
- <!-- Botão Aplicar -->
268
- <button type="submit" class="filtro-aplicar" onclick="submitForm()">
269
- <span class="material-icons">filter_alt</span>
270
- Aplicar Filtros <span id="contador-filtros"></span>
271
- </button>
272
-
273
- <!-- Botão Limpar -->
274
- <button type="button" class="filtro-limpar" id="limpar-filtros" onclick="limparFiltros()" style="display: none;">
275
- <span class="material-icons">filter_alt_off</span>
276
- Limpar Filtros
277
- </button>
278
- </div>
271
+ <div style="margin-top: 20px; padding: 0 20px; display: flex; flex-direction: column; gap: 10px;">
272
+ <!-- Botão Aplicar -->
273
+ <button type="submit" class="filtro-aplicar" onclick="submitForm()">
274
+ <span style="vertical-align: middle;" class="material-icons">filter_alt</span>
275
+ Aplicar Filtros
276
+ <span id="contador-filtros"></span>
277
+ </button>
278
+
279
+ <!-- Botão Limpar -->
280
+ <button type="button" class="filtro-limpar" id="limpar-filtros" onclick="limparFiltros()" style="display: none;">
281
+ <span class="material-icons">filter_alt_off</span>
282
+ Limpar Filtros
283
+ </button>
284
+ </div>
279
285
  </div>
280
286
 
281
287
  <!-- Cards -->
@@ -285,7 +291,7 @@
285
291
  <div class="card-primary_busca">
286
292
  <div class="img-card_busca">
287
293
  <img class="img_busca"
288
- src="{% if item.imagem %}{{ item.imagem }}{% else %}{% random_default_image %}{% endif %}"
294
+ src="{% if item.imagem %}{{ item.imagem }}{% else %}{% static 'enap_designsystem/blocks/suap/default_1.png' %}{% endif %}"
289
295
  alt="{{ item.titulo }}"
290
296
  >
291
297
  </div>
@@ -439,51 +445,51 @@
439
445
 
440
446
  <div class="srv-card-wrapper">
441
447
  {% for item in results %}
442
- <a class="link-card-search" href="{{ item.url }}" target="_blank" rel="noopener noreferrer">
443
- <div class="srv-card-horizontal">
444
- <div class="srv-card-image-container">
445
- {% comment %}Verifica se existe featured_image na página{% endcomment %}
446
- {% if item.imagem %}
447
- <img class="srv-card-image" src="{{ item.imagem }}" alt="{{ item.titulo }}">
448
- {% comment %}Usando apenas a primeira imagem encontrada{% endcomment %}
449
- {% else %}
450
- <!-- Imagem padrão da ENAP -->
451
- <img class="srv-card-image default-search-image"
452
- src="{% static 'enap_designsystem/blocks/suap/default_1.png' %}"
453
- alt="ENAP - {{ item.titulo }}">
454
- {% endif %}
455
- </div>
456
- <div class="srv-card-content">
457
- <h3 class="srv-card-title">{{ item.titulo }}</h3>
458
- <p class="srv-card-text">{{ item.introducao|default:item.descricao|striptags|truncatewords:40 }}</p>
459
- <div class="srv-card-meta">
460
- {% if item.data_publicacao %}
461
- <div class="srv-card-date">
462
- <svg class="srv-card-date-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"
463
- fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
464
- stroke-linejoin="round">
465
- <rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect>
466
- <line x1="16" y1="2" x2="16" y2="6"></line>
467
- <line x1="8" y1="2" x2="8" y2="6"></line>
468
- <line x1="3" y1="10" x2="21" y2="10"></line>
469
- </svg>
470
- Publicado em: {{ item.data_publicacao|date:"d/m/Y" }}
448
+ <a class="link-card-search" href="{{ item.url }}" target="_blank" rel="noopener noreferrer">
449
+ <div class="srv-card-horizontal">
450
+ <div class="srv-card-image-container">
451
+ {% comment %}Verifica se existe featured_image na página{% endcomment %}
452
+ {% if item.imagem %}
453
+ <img class="srv-card-image" src="{{ item.imagem }}" alt="{{ item.titulo }}">
454
+ {% comment %}Usando apenas a primeira imagem encontrada{% endcomment %}
455
+ {% else %}
456
+ <!-- Imagem padrão da ENAP -->
457
+ <img class="srv-card-image default-search-image"
458
+ src="{% static 'enap_designsystem/blocks/suap/default_1.png' %}"
459
+ alt="ENAP - {{ item.titulo }}">
460
+ {% endif %}
471
461
  </div>
472
- {% endif %}
462
+ <div class="srv-card-content">
463
+ <h3 class="srv-card-title">{{ item.titulo }}</h3>
464
+ <p class="srv-card-text">{{ item.introducao|default:item.descricao|striptags|truncatewords:40 }}</p>
465
+ <div class="srv-card-meta">
466
+ {% if item.data_publicacao %}
467
+ <div class="srv-card-date">
468
+ <svg class="srv-card-date-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"
469
+ fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
470
+ stroke-linejoin="round">
471
+ <rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect>
472
+ <line x1="16" y1="2" x2="16" y2="6"></line>
473
+ <line x1="8" y1="2" x2="8" y2="6"></line>
474
+ <line x1="3" y1="10" x2="21" y2="10"></line>
475
+ </svg>
476
+ Publicado em: {{ item.data_publicacao|date:"d/m/Y" }}
477
+ </div>
478
+ {% endif %}
479
+ </div>
480
+ </div>
481
+ </div>
482
+ </a>
483
+ {% empty %}
484
+ <div class="no-results-message">
485
+ <div class="no-results-content">
486
+ <img src="{% static 'enap_designsystem/blocks/suap/default_1.png' %}"
487
+ alt="ENAP"
488
+ class="no-results-image">
489
+ <p>Nenhuma notícia encontrada.</p>
490
+ </div>
473
491
  </div>
474
- </div>
475
- </div>
476
- </a>
477
- {% empty %}
478
- <div class="no-results-message">
479
- <div class="no-results-content">
480
- <img src="{% static 'enap_designsystem/blocks/suap/default_1.png' %}"
481
- alt="ENAP"
482
- class="no-results-image">
483
- <p>Nenhuma notícia encontrada.</p>
484
- </div>
485
- </div>
486
- {% endfor %}
492
+ {% endfor %}
487
493
  </div>
488
494
 
489
495
  <div class="paginacao-wrapper">
@@ -775,9 +781,54 @@
775
781
  </div>
776
782
  </div>
777
783
  {% endif %}
778
-
784
+ </div>
779
785
  </section>
780
-
786
+ <style>
787
+ .cor-fundo-pesquisa{
788
+ background: linear-gradient(180deg, #ffffff 40px, #F5F7FA 40px);
789
+ }
790
+
791
+ .filter-count{
792
+ background: #025257;
793
+ color: white;
794
+ padding: 0px 6px 0px 6px;
795
+ border-radius: 100%;
796
+ font-weight: 400;
797
+ font-size: 12px;
798
+ }
799
+
800
+
801
+ .contador-e-seta{
802
+ display: flex;
803
+ gap: 8px;
804
+ align-items: center;
805
+ }
806
+
807
+ @media only screen and (max-width: 768px) {
808
+ .cor-fundo-pesquisa{
809
+ background: linear-gradient(180deg, #ffffff 0.7%, #F5F7FA 0%);
810
+ }
811
+ }
812
+
813
+ @media only screen and (min-width: 768px) {
814
+ /* .filtro-sidebar{
815
+ width: 268px;
816
+ margin-right: 20px;
817
+ opacity: 1;
818
+ height: auto;
819
+ padding: 30px 0;
820
+ }
821
+ .toggle-filtro-btn{
822
+ display: none;
823
+ }
824
+ .cards-grid-search {
825
+ grid-template-columns: repeat(3, 1fr);
826
+ } */
827
+ .filtro-aplicar{
828
+ display: none;
829
+ }
830
+ }
831
+ </style>
781
832
  {% endblock %}
782
833
 
783
834
 
@@ -797,21 +848,20 @@
797
848
  btn.classList.toggle('ativo');
798
849
  }
799
850
 
800
-
801
851
  function toggleDropdown(dropdownId) {
802
852
  const dropdown = document.getElementById(dropdownId + '-dropdown');
803
853
  const header = dropdown.previousElementSibling;
804
854
 
805
855
  // Fechar outros dropdowns
806
- const allDropdowns = document.querySelectorAll('.dropdown-checkbox-area'); // <- mudou aqui
856
+ const allDropdowns = document.querySelectorAll('.dropdown-checkbox-area');
807
857
  const allHeaders = document.querySelectorAll('.dropdown-header');
808
858
 
809
- allDropdowns.forEach((dd, index) => {
810
- if (dd !== dropdown) {
811
- dd.classList.remove('open');
812
- allHeaders[index].classList.remove('active');
813
- }
814
- });
859
+ // allDropdowns.forEach((dd, index) => {
860
+ // if (dd !== dropdown) {
861
+ // dd.classList.remove('open');
862
+ // allHeaders[index].classList.remove('active');
863
+ // }
864
+ // });
815
865
 
816
866
  // Toggle do dropdown atual
817
867
  dropdown.classList.toggle('open');
@@ -819,25 +869,25 @@
819
869
  }
820
870
 
821
871
  // Fechar dropdown ao clicar fora
822
- document.addEventListener('click', function(event) {
823
- const dropdowns = document.querySelectorAll('.dropdown-filter');
824
- let clickedInside = false;
872
+ // document.addEventListener('click', function(event) {
873
+ // const dropdowns = document.querySelectorAll('.dropdown-filter');
874
+ // let clickedInside = false;
825
875
 
826
- dropdowns.forEach(dropdown => {
827
- if (dropdown.contains(event.target)) {
828
- clickedInside = true;
829
- }
830
- });
876
+ // dropdowns.forEach(dropdown => {
877
+ // if (dropdown.contains(event.target)) {
878
+ // clickedInside = true;
879
+ // }
880
+ // });
831
881
 
832
- if (!clickedInside) {
833
- document.querySelectorAll('.dropdown-checkbox-area').forEach(dd => { // <- mudou aqui
834
- dd.classList.remove('open');
835
- });
836
- document.querySelectorAll('.dropdown-header').forEach(header => {
837
- header.classList.remove('active');
838
- });
839
- }
840
- });
882
+ // if (!clickedInside) {
883
+ // document.querySelectorAll('.dropdown-checkbox-area').forEach(dd => {
884
+ // dd.classList.remove('open');
885
+ // });
886
+ // document.querySelectorAll('.dropdown-header').forEach(header => {
887
+ // header.classList.remove('active');
888
+ // });
889
+ // }
890
+ // });
841
891
 
842
892
 
843
893
  function updateFilterCounter() {
@@ -845,24 +895,64 @@
845
895
  const counter = document.getElementById('contador-filtros');
846
896
  const limparBtn = document.getElementById('limpar-filtros');
847
897
  const aplicarBtn = document.querySelector('.filtro-aplicar');
848
-
898
+
849
899
  const count = checkboxes.length;
850
-
900
+
901
+ // Atualizar contador global
851
902
  if (counter) {
852
903
  counter.textContent = count > 0 ? `(${count})` : '';
853
904
  }
854
-
905
+
855
906
  // Mostrar/ocultar botão limpar
856
907
  if (limparBtn) {
857
908
  limparBtn.style.display = count > 0 ? 'flex' : 'none';
858
909
  }
859
-
910
+
860
911
  // Mudar cor do botão aplicar
861
- if (aplicarBtn && count > 0) {
862
- aplicarBtn.style.backgroundColor = '#025257';
863
- } else if (aplicarBtn) {
864
- aplicarBtn.style.backgroundColor = '#007D7A';
912
+ if (aplicarBtn) {
913
+ aplicarBtn.style.backgroundColor = count > 0 ? '#025257' : '#007D7A';
865
914
  }
915
+
916
+ // 🔁 Contar por grupo (ex: modalidade, categoria, etc.)
917
+ const filterGroups = ['modalidade', 'inscricoes', 'temas', 'categoria', 'competencias']; // Adicione aqui os nomes dos seus filtros
918
+
919
+ filterGroups.forEach(group => {
920
+ const groupCheckboxes = document.querySelectorAll(`#filtroForm input[name="${group}"]:checked`);
921
+ const groupCount = groupCheckboxes.length;
922
+ const groupCountElement = document.getElementById(`${group}-count`);
923
+ const filterNameElement = document.getElementById(`${group}-nome-filtro`);
924
+
925
+ if (groupCountElement) {
926
+ groupCountElement.textContent = groupCount > 0 ? `${groupCount}` : '';
927
+ }
928
+
929
+ if (filterNameElement) {
930
+ if (groupCount > 0) {
931
+ filterNameElement.style.fontWeight = '700';
932
+ } else {
933
+ filterNameElement.style.fontWeight = '500';
934
+ }
935
+ }
936
+ });
937
+ }
938
+
939
+ function keepFilterCheck() {
940
+ const filterGroups = ['modalidade', 'inscricoes', 'temas', 'categoria', 'competencias'];
941
+
942
+ filterGroups.forEach(group => {
943
+ const allGroupCheckboxes = document.querySelectorAll(`#filtroForm input[name="${group}"]`);
944
+ const urlParams = new URLSearchParams(window.location.search);
945
+ const paramValue = urlParams.getAll(`${group}`);
946
+
947
+ allGroupCheckboxes.forEach(checkbox => {
948
+ if (paramValue.includes(checkbox.value)) {
949
+ checkbox.checked = true;
950
+ }
951
+ });
952
+
953
+ });
954
+
955
+
866
956
  }
867
957
 
868
958
  function limparFiltros() {
@@ -880,10 +970,26 @@
880
970
 
881
971
  // Inicializar
882
972
  document.addEventListener('DOMContentLoaded', function() {
883
- document.querySelectorAll('#filtroForm input[type="checkbox"]').forEach(checkbox => {
973
+ const checkboxes = document.querySelectorAll('#filtroForm input[type="checkbox"]');
974
+
975
+ keepFilterCheck();
976
+
977
+ checkboxes.forEach(checkbox => {
884
978
  checkbox.addEventListener('change', updateFilterCounter);
885
979
  });
980
+
886
981
  updateFilterCounter();
982
+
983
+ if (window.innerWidth > 768) { // Detecta se é desktop (pode ajustar o valor conforme a sua necessidade)
984
+ checkboxes.forEach(checkbox => {
985
+ checkbox.addEventListener('change', function() {
986
+
987
+ timeoutSubmit = setTimeout(function() {
988
+ submitForm();
989
+ }, 1500);
990
+ });
991
+ });
992
+ }
887
993
  });
888
994
  </script>
889
995
  {% endblock %}
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: wagtail-enap-designsystem
3
- Version: 1.2.1.166
3
+ Version: 1.2.1.167
4
4
  Summary: Módulo de componentes utilizado nos portais ENAP, desenvolvido com Wagtail + CodeRedCMS
5
5
  Author: Renan Campos
6
6
  Author-email: renan.oliveira@enap.gov.br