word-games-theme 3.1.5 → 3.1.7

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a238d3783e4893850462bf51872d2439aaaa6d19f0d20a1cc745a359c0ee5bd5
4
- data.tar.gz: 65ed0fcee738368e2e20f3f700edd9943f0ca195ed024ce0d2b69e15f188de56
3
+ metadata.gz: 7fa2406055437122d81742761683b7db80529e7f9d184938d7092013abd50dc5
4
+ data.tar.gz: 67415bbf7fc661a25fa34160efcf755ec0ce21fccd70edb3fac7451418479b0f
5
5
  SHA512:
6
- metadata.gz: b12a7150f4c2eb980d10ef0af6cff427e3135f9d7c9d30662bbaa313ca9d57b3a82767dd2900294f85b28d1f716b78bc5a86913080c41bbc83963b5e7bbc5c81
7
- data.tar.gz: de4cbfc060955c81ff4ff554a5e188e5ca481c6d34e751e1e0b1310f84f4630e9afea551f9daf927d2c1fc7d5a277f062ca6306fa7f3bb4106718d853291d609
6
+ metadata.gz: 481366818601e894397279fd9b79e541be45ce6354b113c616700d82b944247ebe08354375e5eaa3769753ac5185675d9a2376e54e2b13fd03dc93b968deec5b
7
+ data.tar.gz: 740f6d7bb98fe1e93ae515c3daafb37082da11aa2ea2a7d9b7b05fad00a965ef0e99b04e565ce3db17f4a5a0650b770ef265e114502993c47df339e20ae5a67f
@@ -1,70 +1,308 @@
1
+ <style>
2
+ .filter_val {
3
+ width: 150px;
4
+ padding: 10px;
5
+ border: 1px solid #ccc;
6
+ border-radius: 4px;
7
+ }
8
+
9
+ .filter-tooltip {
10
+ cursor: pointer;
11
+ margin-left: 5px;
12
+ }
13
+
14
+ .dropdown-content {
15
+ display: none;
16
+ /* position: absolute; */
17
+ background-color: #fff;
18
+ min-width: 150px;
19
+ box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
20
+ z-index: 1;
21
+ max-height: 300px;
22
+ height: auto;
23
+ overflow-y: scroll;
24
+ border-radius: 8px;
25
+ }
26
+
27
+ .dropdown-content a {
28
+ color: black;
29
+ padding: 12px;
30
+ text-decoration: underline;
31
+ display: block;
32
+ font-size: 16px;
33
+ font-weight: 900;
34
+ }
35
+
36
+ .dropdown-content a:hover {
37
+ background-color: #f1f1f1;
38
+ }
39
+ .show {
40
+ display: block;
41
+ }
42
+ .tooltip-container {
43
+ position: relative;
44
+ display: inline-block;
45
+ }
46
+ .startsWith {
47
+ position: relative;
48
+ display: inline-block;
49
+ }
50
+ .arrow-down {
51
+ display: none;
52
+ width: 0;
53
+ height: 0;
54
+ border-left: 10px solid transparent;
55
+ /* Increased size */
56
+ border-right: 10px solid transparent;
57
+ /* Increased size */
58
+ border-top: 10px solid #000;
59
+ /* Increased size and color */
60
+ position: absolute;
61
+ bottom: -8px;
62
+ /* Adjust vertical positioning */
63
+ left: calc(50% - 10px);
64
+ /* Center the larger arrow */
65
+ }
66
+ @media (max-width: 768px) {
67
+ .dropdown-content, .arrow-down {
68
+ display: none !important;
69
+ }
70
+ }
71
+
72
+ </style>
73
+
1
74
  <div class="advancedFilterOptions" onclick="advancedFilterToggle()">
2
75
  <button type="button" value="Advanced Filter" class="filtersOptions">
3
76
  Advanced Options
4
- <img width="22" height="22" src="/assets/images/filter.svg" alt="filter-icon">
77
+ <img width="22" height="22" src="/assets/images/filter.svg" alt="filter-icon">
5
78
  </button>
6
79
  </div>
7
80
 
8
-
9
-
10
81
  <div class="fillterWrapper my-5 filterShow">
82
+
11
83
  <div class="startsWith">
12
- <input class="filter_val textBoxes" autocomplete="off" type="text" id="startsWith" placeholder="Starts with" value=""
13
- name="prefix">
84
+ <input onclick="showDropdown('startsWithDropdown', this)" onkeyup="filterDropdown('startsWithDropdown', this.value)"
85
+ class="filter_val textBoxes" autocomplete="off" type="text" id="startsWith" placeholder="Starts with"
86
+ value="" name="prefix">
14
87
  <div class="filter-tooltip" data-tip="Find words that start with these letters(AB-&gt; Able)"
15
88
  id="Find words that start with these letters(AB-&gt; Able)">
16
89
  <img width="30px" height="30px" src="/assets/images/questionmark.svg" alt="Question Mark" />
17
90
  </div>
91
+ <div class="arrow-down"></div>
18
92
  </div>
19
93
  <div class="endsWith">
20
- <input class="filter_val textBoxes" autocomplete="off" type="text" id="endsWith" placeholder="Ends with" name="suffix">
94
+ <input onclick="showDropdown('endsWithDropdown', this)" onkeyup="filterDropdown('endsWithDropdown', this.value)"
95
+ class="filter_val textBoxes" autocomplete="off" type="text" id="endsWith" placeholder="Ends with"
96
+ name="suffix">
21
97
  <div class="filter-tooltip" data-toggle="tooltip" data-placement="top"
22
98
  data-tip="Filter for words that ends with these letters" id="Filter for words that ends with these letters">
23
99
  <img width="30px" height="30px" src="/assets/images/questionmark.svg" alt="Question Mark" />
24
100
  </div>
101
+ <div class="arrow-down"></div>
102
+ </div>
103
+ <div class="mustInclude">
104
+ <input onclick="showDropdown('mustIncludeDropdown', this)" onkeyup="filterDropdown('mustIncludeDropdown', this.value)"
105
+ class="filter_val textBoxes" autocomplete="off" type="text" id="mustInclude" placeholder="Contains"
106
+ name="contains">
107
+ <div class="filter-tooltip" data-tip="Words that contain letters in this order(ab)"
108
+ id="Words that contain letters in this order(ab)">
109
+ <img width="30px" height="30px" src="/assets/images/questionmark.svg" alt="Question Mark" />
110
+ </div>
111
+ <div class="arrow-down"></div>
25
112
  </div>
26
113
  <div class="wordLength same">
27
- <input autocomplete="off" type="number" class="filter_val textBoxes" id="wordLength" placeholder="Length" name="length"
28
- value="{{page.letter}}">
114
+ <input onclick="showDropdown('wordLengthDropdown',this)" onkeyup="filterDropdown('wordLengthDropdown', this.value)"
115
+ autocomplete="off" type="number" class="filter_val textBoxes" id="wordLength" placeholder="Length"
116
+ name="length" value="{{page.letter}}">
29
117
 
30
118
  <div class="filter-tooltip" data-toggle="tooltip" data-placement="top"
31
119
  data-tip="Filter for words with this length" id="Filter for words with this length">
32
120
  <img width="30px" height="30px" src="/assets/images/questionmark.svg" alt="Question Mark" />
33
121
  </div>
122
+ <div class="arrow-down"></div>
34
123
  </div>
35
124
  <div class="inculdeWith">
36
- <input class="filter_val textBoxes" autocomplete="off" type="text" id="inculdeWith" placeholder="Include" value=""
125
+ <input onclick="showDropdown('inculdeWithDropdown',this)" onkeyup="filterDropdown('inculdeWithDropdown', this.value)"
126
+ class="filter_val textBoxes" autocomplete="off" type="text" id="inculdeWith" placeholder="Include" value=""
37
127
  name="include">
38
128
  <div class="filter-tooltip" data-toggle="tooltip" data-placement="top"
39
129
  data-tip="Only words that contain the letters you enter here"
40
130
  id="Only words that contain the letters you enter here">
41
131
  <img width="30px" height="30px" src="/assets/images/questionmark.svg" alt="Question Mark" />
42
132
  </div>
43
- </div>
44
- <div class="mustInclude">
45
- <input class="filter_val textBoxes" autocomplete="off" type="text" id="mustInclude" placeholder="Contains"
46
- name="contains">
47
- <div class="filter-tooltip" data-tip="Words that contain letters in this order(ab)"
48
- id="Words that contain letters in this order(ab)">
49
- <img width="30px" height="30px" src="/assets/images/questionmark.svg" alt="Question Mark" />
50
- </div>
133
+ <div class="arrow-down"></div>
51
134
 
52
135
  </div>
53
-
54
136
  <div class="exculdeWith">
55
- <input class="filter_val textBoxes" autocomplete="off" type="text" id="exculdeWith" placeholder="Exclude" value=""
137
+ <input onclick="showDropdown('exculdeWithDropdown',this)" onkeyup="filterDropdown('exculdeWithDropdown', this.value)"
138
+ class="filter_val textBoxes" autocomplete="off" type="text" id="exculdeWith" placeholder="Exclude" value=""
56
139
  name="exclude">
57
140
  <div class="filter-tooltip" data-toggle="tooltip" data-placement="top"
58
141
  data-tip="Only words that not contain the letters you enter here"
59
142
  id="Only words that not contain the letters you enter here">
60
143
  <img width="30px" height="30px" src="/assets/images/questionmark.svg" alt="Question Mark" />
61
144
  </div>
62
- </div>
63
-
64
-
145
+ <div class="arrow-down"></div>
65
146
 
147
+ </div>
66
148
 
67
149
 
150
+ <div id="startsWithDropdown" class="dropdown-content">
151
+ <a href="#A" data-value="A">A</a>
152
+ <a href="#B" data-value="B">B</a>
153
+ <a href="#C" data-value="C">C</a>
154
+ <a href="#D" data-value="D">D</a>
155
+ <a href="#E" data-value="E">E</a>
156
+ <a href="#F" data-value="F">F</a>
157
+ <a href="#G" data-value="G">G</a>
158
+ <a href="#H" data-value="H">H</a>
159
+ <a href="#I" data-value="I">I</a>
160
+ <a href="#J" data-value="J">J</a>
161
+ <a href="#K" data-value="K">K</a>
162
+ <a href="#L" data-value="L">L</a>
163
+ <a href="#M" data-value="M">M</a>
164
+ <a href="#N" data-value="N">N</a>
165
+ <a href="#O" data-value="O">O</a>
166
+ <a href="#P" data-value="P">P</a>
167
+ <a href="#Q" data-value="Q">Q</a>
168
+ <a href="#R" data-value="R">R</a>
169
+ <a href="#S" data-value="S">S</a>
170
+ <a href="#T" data-value="T">T</a>
171
+ <a href="#U" data-value="U">U</a>
172
+ <a href="#V" data-value="V">V</a>
173
+ <a href="#W" data-value="W">W</a>
174
+ <a href="#X" data-value="X">X</a>
175
+ <a href="#Y" data-value="Y">Y</a>
176
+ <a href="#Z" data-value="Z">Z</a>
177
+ </div>
178
+ <div id="endsWithDropdown" class="dropdown-content">
179
+ <a href="#A" data-value="A">A</a>
180
+ <a href="#B" data-value="B">B</a>
181
+ <a href="#C" data-value="C">C</a>
182
+ <a href="#D" data-value="D">D</a>
183
+ <a href="#E" data-value="E">E</a>
184
+ <a href="#F" data-value="F">F</a>
185
+ <a href="#G" data-value="G">G</a>
186
+ <a href="#H" data-value="H">H</a>
187
+ <a href="#I" data-value="I">I</a>
188
+ <a href="#J" data-value="J">J</a>
189
+ <a href="#K" data-value="K">K</a>
190
+ <a href="#L" data-value="L">L</a>
191
+ <a href="#M" data-value="M">M</a>
192
+ <a href="#N" data-value="N">N</a>
193
+ <a href="#O" data-value="O">O</a>
194
+ <a href="#P" data-value="P">P</a>
195
+ <a href="#Q" data-value="Q">Q</a>
196
+ <a href="#R" data-value="R">R</a>
197
+ <a href="#S" data-value="S">S</a>
198
+ <a href="#T" data-value="T">T</a>
199
+ <a href="#U" data-value="U">U</a>
200
+ <a href="#V" data-value="V">V</a>
201
+ <a href="#W" data-value="W">W</a>
202
+ <a href="#X" data-value="X">X</a>
203
+ <a href="#Y" data-value="Y">Y</a>
204
+ <a href="#Z" data-value="Z">Z</a>
205
+ </div>
206
+ <div id="mustIncludeDropdown" class="dropdown-content">
207
+ <a href="#A" data-value="A">A</a>
208
+ <a href="#B" data-value="B">B</a>
209
+ <a href="#C" data-value="C">C</a>
210
+ <a href="#D" data-value="D">D</a>
211
+ <a href="#E" data-value="E">E</a>
212
+ <a href="#F" data-value="F">F</a>
213
+ <a href="#G" data-value="G">G</a>
214
+ <a href="#H" data-value="H">H</a>
215
+ <a href="#I" data-value="I">I</a>
216
+ <a href="#J" data-value="J">J</a>
217
+ <a href="#K" data-value="K">K</a>
218
+ <a href="#L" data-value="L">L</a>
219
+ <a href="#M" data-value="M">M</a>
220
+ <a href="#N" data-value="N">N</a>
221
+ <a href="#O" data-value="O">O</a>
222
+ <a href="#P" data-value="P">P</a>
223
+ <a href="#Q" data-value="Q">Q</a>
224
+ <a href="#R" data-value="R">R</a>
225
+ <a href="#S" data-value="S">S</a>
226
+ <a href="#T" data-value="T">T</a>
227
+ <a href="#U" data-value="U">U</a>
228
+ <a href="#V" data-value="V">V</a>
229
+ <a href="#W" data-value="W">W</a>
230
+ <a href="#X" data-value="X">X</a>
231
+ <a href="#Y" data-value="Y">Y</a>
232
+ <a href="#Z" data-value="Z">Z</a>
233
+ </div>
234
+ <div id="inculdeWithDropdown" class="dropdown-content">
235
+ <a href="#A" data-value="A">A</a>
236
+ <a href="#B" data-value="B">B</a>
237
+ <a href="#C" data-value="C">C</a>
238
+ <a href="#D" data-value="D">D</a>
239
+ <a href="#E" data-value="E">E</a>
240
+ <a href="#F" data-value="F">F</a>
241
+ <a href="#G" data-value="G">G</a>
242
+ <a href="#H" data-value="H">H</a>
243
+ <a href="#I" data-value="I">I</a>
244
+ <a href="#J" data-value="J">J</a>
245
+ <a href="#K" data-value="K">K</a>
246
+ <a href="#L" data-value="L">L</a>
247
+ <a href="#M" data-value="M">M</a>
248
+ <a href="#N" data-value="N">N</a>
249
+ <a href="#O" data-value="O">O</a>
250
+ <a href="#P" data-value="P">P</a>
251
+ <a href="#Q" data-value="Q">Q</a>
252
+ <a href="#R" data-value="R">R</a>
253
+ <a href="#S" data-value="S">S</a>
254
+ <a href="#T" data-value="T">T</a>
255
+ <a href="#U" data-value="U">U</a>
256
+ <a href="#V" data-value="V">V</a>
257
+ <a href="#W" data-value="W">W</a>
258
+ <a href="#X" data-value="X">X</a>
259
+ <a href="#Y" data-value="Y">Y</a>
260
+ <a href="#Z" data-value="Z">Z</a>
261
+ </div>
262
+ <div id="exculdeWithDropdown" class="dropdown-content">
263
+ <a href="#A" data-value="A">A</a>
264
+ <a href="#B" data-value="B">B</a>
265
+ <a href="#C" data-value="C">C</a>
266
+ <a href="#D" data-value="D">D</a>
267
+ <a href="#E" data-value="E">E</a>
268
+ <a href="#F" data-value="F">F</a>
269
+ <a href="#G" data-value="G">G</a>
270
+ <a href="#H" data-value="H">H</a>
271
+ <a href="#I" data-value="I">I</a>
272
+ <a href="#J" data-value="J">J</a>
273
+ <a href="#K" data-value="K">K</a>
274
+ <a href="#L" data-value="L">L</a>
275
+ <a href="#M" data-value="M">M</a>
276
+ <a href="#N" data-value="N">N</a>
277
+ <a href="#O" data-value="O">O</a>
278
+ <a href="#P" data-value="P">P</a>
279
+ <a href="#Q" data-value="Q">Q</a>
280
+ <a href="#R" data-value="R">R</a>
281
+ <a href="#S" data-value="S">S</a>
282
+ <a href="#T" data-value="T">T</a>
283
+ <a href="#U" data-value="U">U</a>
284
+ <a href="#V" data-value="V">V</a>
285
+ <a href="#W" data-value="W">W</a>
286
+ <a href="#X" data-value="X">X</a>
287
+ <a href="#Y" data-value="Y">Y</a>
288
+ <a href="#Z" data-value="Z">Z</a>
289
+ </div>
290
+ <div id="wordLengthDropdown" class="dropdown-content">
291
+ <a href="#2" data-value="2">2</a>
292
+ <a href="#3" data-value="3">3</a>
293
+ <a href="#4" data-value="4">4</a>
294
+ <a href="#5" data-value="5">5</a>
295
+ <a href="#6" data-value="6">6</a>
296
+ <a href="#7" data-value="7">7</a>
297
+ <a href="#8" data-value="8">8</a>
298
+ <a href="#9" data-value="9">9</a>
299
+ <a href="#10" data-value="10">10</a>
300
+ <a href="#11" data-value="11">11</a>
301
+ <a href="#12" data-value="12">12</a>
302
+ <a href="#13" data-value="13">13</a>
303
+ <a href="#14" data-value="14">14</a>
304
+ <a href="#15" data-value="15">15</a>
305
+ </div>
68
306
  </div>
69
307
 
70
308
  <script>
@@ -73,4 +311,53 @@
73
311
  filterShow.classList.toggle("d-flex")
74
312
  }
75
313
 
314
+ function showDropdown(id,input) {
315
+ document.querySelectorAll('.dropdown-content').forEach(function (dropdown) {
316
+ dropdown.style.display = 'none';
317
+ });
318
+ document.querySelectorAll('.arrow-down').forEach(function (arrow) {
319
+ arrow.style.display = 'none';
320
+ });
321
+ let dropdown = document.getElementById(id);
322
+
323
+ let arrow = input.parentElement.querySelector('.arrow-down');
324
+
325
+ if (arrow) {
326
+ arrow.style.display = "block"
327
+ }
328
+ if (dropdown) {
329
+ dropdown.style.display = 'flex';
330
+ }
331
+ }
332
+
333
+ function filterDropdown(dropdownId, filterValue) {
334
+ const dropdown = document.getElementById(dropdownId);
335
+ dropdown.style.display = "none"
336
+ document.querySelectorAll('.arrow-down').forEach(function (arrow) {
337
+ arrow.style.display = 'none';
338
+ });
339
+ }
340
+
341
+ function handleItemClick(event) {
342
+ event.preventDefault();
343
+ const selectedValue = event.target.getAttribute('data-value');
344
+ console.log(selectedValue);
345
+ const dropdownId = event.target.closest('.dropdown-content').id;
346
+ const inputId = dropdownId.replace('Dropdown', '');
347
+ document.getElementById(inputId).value = selectedValue;
348
+ document.getElementById(dropdownId).classList.remove('show');
349
+ document.getElementById(dropdownId).style.display = "none"
350
+ let arrow = document.getElementById(inputId).parentElement.querySelector('.arrow-down');
351
+ arrow.style.display = "none"
352
+ logSubmit(event);
353
+ }
354
+ document.querySelectorAll('.dropdown-content a').forEach(item => {
355
+ item.addEventListener('click', handleItemClick);
356
+ });
357
+
358
+
359
+
360
+
361
+ </script>
362
+
76
363
  </script>
@@ -1,4 +1,15 @@
1
1
  {% assign dataToShow = site.data[page.folderName][page.lang][page.fileName] %}
2
+ {%- if page.letter -%}
3
+ <style>
4
+ .letter-length {
5
+ display: none;
6
+ }
7
+
8
+ .sortingFilters {
9
+ display: flex !important;
10
+ }
11
+ </style>
12
+ {%- endif -%}
2
13
  <div class="row pad m-0">
3
14
  <div class="col-md-12">
4
15
  {%- if page.letter -%}
@@ -6,7 +17,7 @@
6
17
  onclick="gtag('event', 'click', {'event_category': 'Link click', 'event_label': 'Home Page Search Result'});"></a>
7
18
  {%- endif -%}
8
19
  <div class="filters d-flex justify-content-between align-items-center">
9
- <div class="wordCount">{{dataToShow.wordLength}}</div>
20
+ <div class="wordCount font-weight-bolder">{{dataToShow.wordLength}}</div>
10
21
  <div class="filterSortedIcons">
11
22
  <div class="filter-icon" onclick="myFunction()">
12
23
  <i class="bi bi-filter"></i>
@@ -40,14 +51,11 @@
40
51
  </div>
41
52
  </div>
42
53
  <div class="sortingFilters wrapper_dropDown justify-content-end" style="gap:10px; display: none;">
43
-
44
-
45
54
  <div class="letter-length">
46
55
  <select class="form-select length-select">
47
56
  <option selected="true" hidden>Letter Length</option>
48
57
  </select>
49
58
  </div>
50
-
51
59
  <div id="sort-select">
52
60
  <select class="form-select sort-select" id="select_dropDown">
53
61
  <option selected="true" hidden id="alpha" value="alpha">Sort by</option>
@@ -59,8 +67,6 @@
59
67
  </div>
60
68
  </div>
61
69
 
62
-
63
-
64
70
  {%- if page.letter -%}
65
71
  <div id="get-value" data-fileName="{{page.fileName}}" data-lang="{{page.lang}}"
66
72
  data-folderName="{{page.folderName}}" class="main">
@@ -73,7 +79,7 @@
73
79
  </div>
74
80
  <div class="wordList">
75
81
  <ul class="ul list-unstyled">
76
- {%- for item in scrabblewords limit: 25 %}
82
+ {%- for item in scrabblewords limit: 97 %}
77
83
  {%- assign value = item.word -%}
78
84
  <a class="anchor__style" target="_blank" href="/word-meaning?search={{item.word | strip_html}}">
79
85
  <div class="tool-tip" data-toggle="tooltip" data-placement="top"
@@ -107,7 +113,6 @@
107
113
  <div class="main"></div>
108
114
  {%- endif -%}
109
115
 
110
-
111
116
  <div class="errorMsg"></div>
112
117
 
113
118
  </div>
@@ -5,6 +5,16 @@
5
5
 
6
6
  {%- if site.noResultPage or page.noResultPage -%}
7
7
  {%- if page.letter -%}
8
+
9
+ {%- if page.permalink == "/five-letter-words-with-these-letters" -%}
10
+ <style>
11
+ .serachSection {
12
+ position: relative !important;
13
+ top: 0px !important;
14
+ }
15
+ </style>
16
+ {%- endif -%}
17
+
8
18
  <style>
9
19
  .main-header {
10
20
  padding-top: 12vh;
@@ -102,7 +112,8 @@
102
112
 
103
113
  <script data-lang="{{page.lang}}" defer src="/assets/js/theme.js"></script>
104
114
  {%- if site.noResultPage -%}
105
- <script data-url="{{site.url}}" data-blanktilerange="{{page.blanktilerange}}" defer src="/assets/js/wordfinder-home.js"></script>
115
+ <script data-url="{{site.url}}" data-blanktilerange="{{page.blanktilerange}}" defer
116
+ src="/assets/js/wordfinder-home.js"></script>
106
117
  {%- else -%}
107
118
  <script defer src="/assets/js/wordgames-home.js"></script>
108
119
  {%- endif -%}
@@ -289,7 +289,7 @@ input:-webkit-autofill:active {
289
289
  }
290
290
 
291
291
  .wordCount {
292
- text-indent: 10px;
292
+ /* text-indent: 10px; */
293
293
  font-size: 18px;
294
294
  }
295
295
 
@@ -356,7 +356,7 @@
356
356
  }
357
357
 
358
358
  .wordCount {
359
- text-indent: 10px;
359
+ /* text-indent: 10px; */
360
360
  font-size: 18px;
361
361
  }
362
362
 
@@ -150,7 +150,7 @@ input[type="number"] {
150
150
  display: flex;
151
151
  justify-content: center;
152
152
  align-items: center;
153
- margin-top: 1rem;
153
+ /* margin-top: 1rem; */
154
154
  width: 100%;
155
155
  text-align: center;
156
156
  }
@@ -360,7 +360,7 @@ input:-webkit-autofill:active {
360
360
  }
361
361
 
362
362
  .wordCount {
363
- text-indent: 10px;
363
+ /* text-indent: 10px; */
364
364
  font-size: 18px;
365
365
  }
366
366
 
@@ -422,12 +422,12 @@ input:-webkit-autofill:active {
422
422
  }
423
423
 
424
424
  .wordList>ul li {
425
- padding: 8px 0;
425
+ padding: 8px 10px;
426
426
  background: #f8f9fa;
427
427
  border-radius: 5px;
428
- margin: 6px 6px;
428
+ margin: 6px 5px;
429
429
  width: auto;
430
- min-width: 100px;
430
+ /* min-width: 100px; */
431
431
  text-align: center;
432
432
  border: solid 1px var(--black-color);
433
433
  box-shadow: 2px 2px 1px 0px var(--black-color);
@@ -445,6 +445,9 @@ input:-webkit-autofill:active {
445
445
  }
446
446
 
447
447
  .points {
448
+ position: relative;
449
+ top: 4px;
450
+ font-size: 12px;
448
451
  color: #73716e;
449
452
  font-weight: 600;
450
453
  }
@@ -462,6 +465,12 @@ input:-webkit-autofill:active {
462
465
 
463
466
  @media (max-width: 768px) {
464
467
 
468
+ .sort-select,
469
+ #select_dropDown,
470
+ .length-select {
471
+ width: 170px;
472
+ }
473
+
465
474
  /* result page navbar, closebtn, heading css for mobile */
466
475
  .allGroupWords,
467
476
  .allGroupWords>.wordListHeading {
@@ -570,6 +579,7 @@ input:-webkit-autofill:active {
570
579
 
571
580
  .wordCount {
572
581
  font-size: 1.3rem;
582
+ text-align: center;
573
583
  }
574
584
 
575
585
  }
@@ -11,7 +11,7 @@ defintions.innerHTML = `Defintion(s) for ${serachValue}`
11
11
  // DICTONARY
12
12
  const fetchMeaning = async (serachValue) => {
13
13
  try {
14
- let resMeaning = await fetch(`http://127.0.0.1:9000/wordMeaning?search=${serachValue}`)
14
+ let resMeaning = await fetch(`/.netlify/functions/wordMeaning?search=${serachValue}`)
15
15
  let getDef = await resMeaning.text()
16
16
 
17
17
  if (getDef && resMeaning.status == 200) {
@@ -147,7 +147,7 @@ const fetchTWL06Dic = async (serachValue) => {
147
147
  }
148
148
 
149
149
  try {
150
- let res = await fetch(`http://127.0.0.1:9000/gettwl06?search=${serachValue}`)
150
+ let res = await fetch(`/.netlify/functions/gettwl06?search=${serachValue}`)
151
151
 
152
152
  let getData = await res.text()
153
153
 
@@ -204,7 +204,7 @@ const fetchSOWPODSDic = async (serachValue) => {
204
204
  sum += newAlphabet[item[i]] || 0 // for unknown characters
205
205
  }
206
206
 
207
- let res = await fetch(`http://127.0.0.1:9000/getsowpods?search=${serachValue}`)
207
+ let res = await fetch(`/.netlify/functions/getsowpods?search=${serachValue}`)
208
208
 
209
209
  let getData = await res.text()
210
210
 
@@ -257,7 +257,7 @@ const fetchEnableDic = async (serachValue) => {
257
257
  sum += newAlphabet[item[i]] || 0 // for unknown characters
258
258
  }
259
259
 
260
- let res = await fetch(`http://127.0.0.1:9000/getenable?search=${serachValue}`)
260
+ let res = await fetch(`/.netlify/functions/getenable?search=${serachValue}`)
261
261
 
262
262
  let getData = await res.text()
263
263
 
@@ -1,5 +1,5 @@
1
1
 
2
- let data_indexs = 25;
2
+ let data_indexs = 98;
3
3
  function ShowMoreWords(e) {
4
4
  let showmore = e.parentElement.children[0];
5
5
  let script = document.getElementById("get-value");
@@ -28,7 +28,7 @@ function ShowMoreWords(e) {
28
28
  }
29
29
  }
30
30
  if (data_indexs < full_words.length) {
31
- for (let d = data_indexs; d < data_indexs + 25; d++) {
31
+ for (let d = data_indexs; d < data_indexs + 98; d++) {
32
32
  if (full_words[d] != undefined) {
33
33
  // $('[data-toggle="tooltip"]').tooltip();
34
34
  let li = document.createElement("li");
@@ -61,7 +61,7 @@ function ShowMoreWords(e) {
61
61
  }
62
62
  }
63
63
  document.getElementById(id).innerHTML = `See More Words`;
64
- data_indexs += 25;
64
+ data_indexs += 98;
65
65
  } else {
66
66
  document.getElementById(id).style.display = "none";
67
67
  }
@@ -350,7 +350,6 @@ const worker = new Worker('/assets/js/wordfinder-worker.js');
350
350
  const getData = async (serachValue) => {
351
351
  try {
352
352
  let selectedDictionary = document.querySelector(".select_dropDown2").value;
353
-
354
353
  if (letterLen) {
355
354
  home_page_search_result = document.querySelector("#home_page_search_result")
356
355
  homePageSearchResult = `/?search=${serachValue}&dictionary=Dictionary&prefix=&contains=&suffix=&exculde=&inculde=&length=`;
@@ -359,10 +358,13 @@ const getData = async (serachValue) => {
359
358
  document.querySelector(".main-header").style.background = "#fff"
360
359
  document.querySelector(".heading-h2").style.display = "none"
361
360
  document.querySelector(".sortingFilters").style.display = "none"
362
-
363
361
  errorMsg.innerHTML = "";
364
362
  wordCount.innerHTML = "";
365
363
 
364
+
365
+ if (serachValue) {
366
+ serachValue = serachValue + startsWith.value + endsWith.value + mustInclude.value + inculdeWith.value + exculdeWith.value
367
+ }
366
368
  worker.postMessage({
367
369
  type: "api",
368
370
  serachValue: serachValue,
@@ -372,7 +374,7 @@ const getData = async (serachValue) => {
372
374
  worker.onmessage = (event) => {
373
375
  main.innerHTML = "";
374
376
  serachBtn.style.background = 'url(/assets/images/search.svg) no-repeat center center';
375
- getWords(event.data.data);
377
+ getWords(serachValue, event.data.data);
376
378
  }
377
379
  } catch (error) {
378
380
  console.log(error);
@@ -405,20 +407,28 @@ let previousDataIndex = null
405
407
  let previousID = null;
406
408
  let storepreviousIndex = []
407
409
  let moreData = []
408
- let data_index = 25;
409
- function getWords(data) {
410
- data_index = 25
410
+ let data_index = 98;
411
+ function getWords(serachValue, data) {
412
+ data_index = 98
411
413
  moreData = []
412
414
  storepreviousIndex = []
413
415
  main.innerHTML = "";
414
416
  lengthSelect.innerHTML = ""
415
417
  if (typeof data === "string") {
418
+ const params = new URLSearchParams(window.location.search);
416
419
  errorMsg.innerHTML = "no words found";
420
+
421
+ if (!letterLen) {
422
+ let serachValue = params.get("search").toLowerCase();
423
+ txtBox.value = serachValue + "?"
424
+ logSubmit(new Event('submit'))
425
+ }
426
+
417
427
  } else {
418
428
  worker.postMessage({
419
429
  type: 'filterwords',
420
430
  data: data,
421
- serachValue: txtBox.value.toLowerCase(),
431
+ serachValue: serachValue,
422
432
  prefixValue: startsWith.value,
423
433
  containsValue: mustInclude.value,
424
434
  suffixValue: endsWith.value,
@@ -483,6 +493,7 @@ function getWords(data) {
483
493
  home_page_search_result.innerHTML = `See words of any length with letters ${serachValue.split("")}`
484
494
  }
485
495
 
496
+
486
497
  main.innerHTML += `
487
498
  <div class="allGroupWords wordlistContainer" id="alpha_${i}">
488
499
  <h3 class="wordListHeading lead">${i} Letter Words</h3>
@@ -504,7 +515,6 @@ function getWords(data) {
504
515
  }
505
516
  }
506
517
  if (newWordsLength === 0) {
507
- console.log(newdata);
508
518
  errorMsg.innerHTML = "No Words Found";
509
519
  document.querySelector(".sortingFilters").style.display = "none"
510
520
  } else {
@@ -552,11 +562,11 @@ async function showMoreWords(e) {
552
562
  let id = showmore.id;
553
563
 
554
564
  if (previousID !== null && parseInt(previousID) !== parseInt(id)) {
555
- data_index = 25
565
+ data_index = 98
556
566
  const filteredIndexes = storepreviousIndex.filter(item => item.id === id);
557
567
  if (filteredIndexes.length > 0) {
558
568
  const lastItem = filteredIndexes[filteredIndexes.length - 1];
559
- data_index = lastItem.data_index + 25;
569
+ data_index = lastItem.data_index + 98;
560
570
  lastItem.data_index = data_index;
561
571
  }
562
572
  }
@@ -566,16 +576,21 @@ async function showMoreWords(e) {
566
576
  id
567
577
  })
568
578
  console.log("Current data_index:", data_index);
569
-
570
579
  document.getElementById(id).innerHTML = `Loading...`;
571
580
  let content_area = document.getElementById("alpha_" + id).getElementsByClassName("wordList")[0];
572
581
  const result = await getMoreWords();
573
582
  let full_words = result.filter((item) => item.length === Number(id));
574
583
 
575
584
  if (data_index < full_words.length) {
576
- for (let d = data_index; d < data_index + 25; d++) {
585
+ for (let d = data_index; d < data_index + 98; d++) {
577
586
  if (full_words[d] != undefined) {
578
587
  let itemHtml = "";
588
+ let points
589
+ let ScrabbleLetterScore = ScrabbleScore();
590
+
591
+ if (serachValue) {
592
+ serachValue = serachValue + startsWith.value + endsWith.value + mustInclude.value + inculdeWith.value + exculdeWith.value
593
+ }
579
594
  if (serachValue) {
580
595
  var text1 = serachValue.replace("?", "");
581
596
  var text2 = full_words[d];
@@ -591,24 +606,33 @@ async function showMoreWords(e) {
591
606
  indexs = [...indexs, ...findIndexes];
592
607
  }
593
608
  });
609
+ let n1 = false
594
610
  text2.split("").map((itemValue, index) => {
595
611
  let check = indexs.find((i) => i === index);
596
612
  if (check !== undefined) {
597
613
  itemHtml += `${itemValue}`;
614
+ n1 = true
598
615
  } else {
599
616
  itemHtml += `<span class='highlight'>${itemValue}</span>`;
600
617
  }
601
618
  });
619
+ if (n1 == true) {
620
+ let parsedText = itemHtml.replace(/<span[^>]*>.*?<\/span>/g, '');
621
+ // console.log(parsedText);
622
+ points = 0
623
+ for (let i = 0; i < parsedText.length; i++) {
624
+ points += ScrabbleLetterScore[parsedText[i]] || 0; // for unknown characters
625
+ }
626
+ }
602
627
  } else {
603
628
  itemHtml = full_words[d]
604
- }
605
- let ScrabbleLetterScore = ScrabbleScore();
606
- let points = 0;
607
- full_words[d] = full_words[d].toLowerCase();
608
- for (let i = 0; i < full_words[d].length; i++) {
609
- points += ScrabbleLetterScore[full_words[d][i]] || 0; // for unknown characters
629
+ points = 0;
630
+ for (let i = 0; i < full_words[d].length; i++) {
631
+ points += ScrabbleLetterScore[full_words[d][i]] || 0; // for unknown characters
632
+ }
610
633
  }
611
634
 
635
+ full_words[d] = full_words[d].toLowerCase();
612
636
  let span = document.createElement("span");
613
637
  span.setAttribute("class", "points");
614
638
  span.setAttribute("value", `${points}`);
@@ -625,7 +649,7 @@ async function showMoreWords(e) {
625
649
  }
626
650
  }
627
651
  document.getElementById(id).innerHTML = `More Words`;
628
- data_index += 25;
652
+ data_index += 98;
629
653
  } else {
630
654
  document.getElementById(id).style.display = "none";
631
655
  }
@@ -703,7 +727,7 @@ function showMoreLimit() {
703
727
  for (let i = 0; i < showmore.length; i++) {
704
728
  let data_of_button = document.getElementById("alpha_" + showmore[i].getAttribute("id"));
705
729
  let final_data = data_of_button.getElementsByClassName("anchor__style");
706
- if (final_data.length < 25) {
730
+ if (final_data.length < 98) {
707
731
  tableFooter[i].style.display = "none";
708
732
  }
709
733
  }
@@ -88,14 +88,20 @@ self.onmessage = async (event) => {
88
88
 
89
89
  } else {
90
90
  newWordsLength += newdata.length;
91
- newdata = sortWords(sortingFilter, newdata, dictonary);
91
+ newdata = sortWords(serachValue, sortingFilter, newdata, dictonary);
92
+ console.log(newdata);
93
+
92
94
  let result = newdata.map((item) => {
93
95
  let itemHtml = "";
96
+ let ScrabbleLetterScore = ScrabbleScore();
97
+ let sum = 0
98
+
94
99
  if (serachValue) {
95
100
  var text1 = serachValue.replace("?", "");
96
101
  var text2 = item;
97
102
  var text3 = item;
98
103
  let chars = text1.split("");
104
+
99
105
  let indexs = [];
100
106
  chars.map((i) => {
101
107
  let findIndexes = findIndex(text3, i);
@@ -106,27 +112,37 @@ self.onmessage = async (event) => {
106
112
  indexs = [...indexs, ...findIndexes];
107
113
  }
108
114
  });
115
+
116
+ let n1 = false
109
117
  text2.split("").map((itemValue, index) => {
110
118
  let check = indexs.find((i) => i === index);
111
119
  if (check !== undefined) {
112
120
  itemHtml += `${itemValue}`;
121
+ n1 = true
113
122
  } else {
114
123
  itemHtml += `<span class='highlight'>${itemValue}</span>`;
115
124
  }
116
125
  });
126
+
127
+ if (n1 == true) {
128
+ let parsedText = itemHtml.replace(/<span[^>]*>.*?<\/span>/g, '');
129
+ sum = 0
130
+ for (let i = 0; i < parsedText.length; i++) {
131
+ sum += ScrabbleLetterScore[parsedText[i]] || 0; // for unknown characters
132
+ }
133
+ }
117
134
  } else {
118
135
  itemHtml = item
136
+ sum = 0
137
+ for (let i = 0; i < itemHtml.length; i++) {
138
+ sum += ScrabbleLetterScore[itemHtml[i]] || 0; // for unknown characters
139
+ }
119
140
  }
120
141
  if (item.length === 1) {
121
142
  ok = false;
122
143
  newWordsLength = newWordsLength - 1;
123
144
  } else {
124
- let ScrabbleLetterScore = ScrabbleScore();
125
- sum = 0;
126
145
  item = item.toLowerCase();
127
- for (let i = 0; i < item.length; i++) {
128
- sum += ScrabbleLetterScore[item[i]] || 0; // for unknown characters
129
- }
130
146
  return `
131
147
  <a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
132
148
  ${itemHtml}
@@ -135,7 +151,7 @@ self.onmessage = async (event) => {
135
151
  `;
136
152
  }
137
153
  });
138
- result = result.slice(0, 25)
154
+ result = result.slice(0, 98)
139
155
  self.postMessage({
140
156
  type: "filterwords",
141
157
  prefixValue: prefixValue,
@@ -155,7 +171,7 @@ self.onmessage = async (event) => {
155
171
  };
156
172
 
157
173
 
158
- function sortWords(sortingFilter, data, dictonary) {
174
+ function sortWords(serachValue, sortingFilter, data, dictonary) {
159
175
  if (sortingFilter == 0) {
160
176
  return data;
161
177
  } else if (sortingFilter == 1) {
@@ -174,12 +190,54 @@ function sortWords(sortingFilter, data, dictonary) {
174
190
  let ScrabbleLetterScore = ScrabbleScore(dictonary);
175
191
  let points = 0;
176
192
  item = item.toLowerCase();
177
- for (let i = 0; i < item.length; i++) {
178
- points += ScrabbleLetterScore[item[i]] || 0; // for unknown characters
193
+ let itemHtml = "";
194
+ let sum = 0
195
+
196
+ if (serachValue) {
197
+ var text1 = serachValue.replace("?", "");
198
+ var text2 = item;
199
+ var text3 = item;
200
+ let chars = text1.split("");
201
+
202
+ let indexs = [];
203
+ chars.map((i) => {
204
+ let findIndexes = findIndex(text3, i);
205
+ if (findIndexes.length > 0) {
206
+ text3 = text3.split("");
207
+ text3[findIndexes] = "$";
208
+ text3 = text3.join("");
209
+ indexs = [...indexs, ...findIndexes];
210
+ }
211
+ });
212
+
213
+ let n1 = false
214
+ text2.split("").map((itemValue, index) => {
215
+ let check = indexs.find((i) => i === index);
216
+ if (check !== undefined) {
217
+ itemHtml += `${itemValue}`;
218
+ n1 = true
219
+ } else {
220
+ itemHtml += `<span class='highlight'>${itemValue}</span>`;
221
+ }
222
+ });
223
+
224
+ if (n1 == true) {
225
+ let parsedText = itemHtml.replace(/<span[^>]*>.*?<\/span>/g, '');
226
+ sum = 0
227
+ for (let i = 0; i < parsedText.length; i++) {
228
+ sum += ScrabbleLetterScore[parsedText[i]] || 0; // for unknown characters
229
+ }
230
+ }
231
+ }else{
232
+ itemHtml = item
233
+ sum = 0
234
+ for (let i = 0; i < itemHtml.length; i++) {
235
+ sum += ScrabbleLetterScore[itemHtml[i]] || 0; // for unknown characters
236
+ }
179
237
  }
180
238
  const value = {
181
239
  words: item,
182
- points: points,
240
+ points: sum,
183
241
  };
184
242
  newArray.push(value);
185
243
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: word-games-theme
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.5
4
+ version: 3.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - manpreet-appscms
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-08-30 00:00:00.000000000 Z
11
+ date: 2024-09-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll