word-games-theme 2.6.6 → 2.6.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_includes/wordgames/search-box/search-box.html +1 -1
- data/assets/css/wordfinder-result.css +4 -3
- data/assets/js/wordfinder.js +118 -435
- data/assets/js/xletter-result.js +111 -410
- metadata +2 -2
data/assets/js/wordfinder.js
CHANGED
@@ -1,12 +1,10 @@
|
|
1
1
|
/***************
|
2
2
|
SCRABBLER_JS
|
3
3
|
***************/
|
4
|
-
console.log(true);
|
5
4
|
const getScript = document.currentScript;
|
6
5
|
let form = document.querySelector("#form");
|
7
6
|
let wordCount = document.querySelector(".wordCount");
|
8
7
|
let main = document.querySelector(".main");
|
9
|
-
// let loader = document.querySelector(".main-loader")
|
10
8
|
let errorMsg = document.querySelector(".errorMsg");
|
11
9
|
|
12
10
|
// getqueryUrl from form
|
@@ -22,14 +20,6 @@ let dictonary = params.get("dictionary");
|
|
22
20
|
|
23
21
|
// advanced filter element grabs
|
24
22
|
let tick;
|
25
|
-
// let startsWith = document.getElementById("startsWith");
|
26
|
-
// let mustInclude = document.getElementById("mustInclude");
|
27
|
-
// let endsWith = document.getElementById("endsWith");
|
28
|
-
// let exculdeWith = document.getElementById("exculdeWith");
|
29
|
-
// let inculdeWith = document.getElementById("inculdeWith");
|
30
|
-
// let wordLength = document.getElementById("wordLength");
|
31
|
-
|
32
|
-
|
33
23
|
let ok = true;
|
34
24
|
|
35
25
|
let tab_container = document.querySelector(".tab_container");
|
@@ -37,146 +27,14 @@ let lengthSelect = document.querySelector(".length-select");
|
|
37
27
|
const siteUrl = getScript.dataset.url;
|
38
28
|
var sortValue;
|
39
29
|
var sortBool = false;
|
40
|
-
|
41
30
|
let featureContainer = document.querySelector("#featureContainer")
|
42
31
|
let howContainer = document.querySelector("#howContainer")
|
43
32
|
let faqsContainer = document.querySelector("#faqsContainer")
|
44
33
|
let infographicsContainer = document.querySelector("#infographicsContainer")
|
45
|
-
|
46
|
-
|
47
|
-
// let letterCloseButton = document.querySelector(
|
48
|
-
// ".letter-close-button-commonPage"
|
49
|
-
// );
|
50
|
-
// if (serachValue) {
|
51
|
-
// letterCloseButton.classList.add("ltr-cls-btn-commonPage");
|
52
|
-
// }
|
53
|
-
// letterCloseButton.addEventListener("click", () => {
|
54
|
-
// txtBox.value = "";
|
55
|
-
// letterCloseButton.classList.remove("ltr-cls-btn-commonPage");
|
56
|
-
// });
|
57
|
-
|
58
|
-
// let txtBox = document.querySelector(".txtBox");
|
59
|
-
// txtBox.focus();
|
60
34
|
txtBox.value = serachValue;
|
61
35
|
|
62
|
-
// txtBox.addEventListener("input", (e) => {
|
63
|
-
// if (e.target.value === "") {
|
64
|
-
// letterCloseButton.classList.remove("ltr-cls-btn-commonPage");
|
65
|
-
// } else {
|
66
|
-
// letterCloseButton.classList.add("ltr-cls-btn-commonPage");
|
67
|
-
// }
|
68
|
-
// let rangeOfBlankTile = script.dataset.range;
|
69
|
-
// e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, "");
|
70
|
-
// if (rangeOfBlankTile === "") {
|
71
|
-
// rangeOfBlankTile = 3;
|
72
|
-
// }
|
73
|
-
// e.target.value = e.target.value.replace(/ /g, "?");
|
74
|
-
// let data = [];
|
75
|
-
// data = e.target.value.split("").filter((i) => i === "?");
|
76
|
-
// if (data.length > rangeOfBlankTile) {
|
77
|
-
// e.target.value = e.target.value.replace(/\?$/, "");
|
78
|
-
// }
|
79
|
-
// });
|
80
|
-
|
81
|
-
// function mobileScrollTop(x) {
|
82
|
-
// if (x.matches) {
|
83
|
-
// console.log(x.matches);
|
84
|
-
// txtBox.addEventListener("click", () => {
|
85
|
-
// document.documentElement.scrollTop = 350;
|
86
|
-
// setTimeout(() => {
|
87
|
-
// document.documentElement.scrollTop = 350;
|
88
|
-
// }, 300);
|
89
|
-
// });
|
90
|
-
// } else {
|
91
|
-
// console.log("false");
|
92
|
-
// }
|
93
|
-
// }
|
94
|
-
// var x = window.matchMedia("(max-width: 768px)");
|
95
|
-
// mobileScrollTop(x);
|
96
|
-
// x.addListener(mobileScrollTop);
|
97
|
-
|
98
|
-
// let rangeOfBlankTile = script.dataset.range;
|
99
|
-
// let quesMark = "?";
|
100
|
-
|
101
|
-
// if (rangeOfBlankTile) {
|
102
|
-
// if (!serachValue.includes("?")) {
|
103
|
-
// serachValue = serachValue + quesMark.repeat(rangeOfBlankTile); //
|
104
|
-
// txtBox.value = serachValue;
|
105
|
-
// }
|
106
|
-
// }
|
107
|
-
|
108
|
-
// const filterInputs = document.querySelectorAll('.filter_val');
|
109
|
-
// Array.from(filterInputs).forEach((item) => {
|
110
|
-
// item.addEventListener("input", (e) => {
|
111
|
-
// const inputValue = e.target.value;
|
112
|
-
// const parentElement = e.target.parentElement;
|
113
|
-
// const imgElement = parentElement.querySelector('img');
|
114
|
-
// const tooltipElement = parentElement.querySelector('.filter-tooltip');
|
115
|
-
|
116
|
-
// if (inputValue == "") {
|
117
|
-
// imgElement.src = "/assets/images/questionmark.svg"
|
118
|
-
// item.nextElementSibling.setAttribute("data-tip", item.nextElementSibling.id)
|
119
|
-
// tooltipElement.style.setProperty('--tooltip-padding', '0.5rem');
|
120
|
-
// tooltipElement.style.setProperty('--tooltip-border-style', 'soild');
|
121
|
-
|
122
|
-
// } else {
|
123
|
-
// item.nextElementSibling.removeAttribute("data-tip")
|
124
|
-
// imgElement.src = "/assets/images/close-btn.svg"
|
125
|
-
// tooltipElement.style.setProperty('--tooltip-padding', '0');
|
126
|
-
// tooltipElement.style.setProperty('--tooltip-border-style', 'none');
|
127
|
-
// }
|
128
|
-
// item.nextElementSibling.addEventListener("click", () => {
|
129
|
-
// e.target.value = ""
|
130
|
-
// imgElement.src = "/assets/images/questionmark.svg"
|
131
|
-
// item.nextElementSibling.setAttribute("data-tip", item.nextElementSibling.id)
|
132
|
-
// tooltipElement.style.setProperty('--tooltip-padding', '0.5rem');
|
133
|
-
// tooltipElement.style.setProperty('--tooltip-border-style', 'soild');
|
134
|
-
// })
|
135
|
-
// })
|
136
|
-
// })
|
137
|
-
|
138
|
-
|
139
|
-
// function handleFilterInput(e) {
|
140
|
-
// const inputValue = e.target.value;
|
141
|
-
// const parentElement = e.target.parentElement;
|
142
|
-
// const imgElement = parentElement.querySelector('img');
|
143
|
-
// const tooltipElement = parentElement.querySelector('.filter-tooltip');
|
144
|
-
|
145
|
-
// if (inputValue == "") {
|
146
|
-
// imgElement.src = "/assets/images/questionmark.svg"
|
147
|
-
// e.target.nextElementSibling.setAttribute("data-tip", e.target.nextElementSibling.id)
|
148
|
-
// tooltipElement.style.setProperty('--tooltip-padding', '0.5rem');
|
149
|
-
// tooltipElement.style.setProperty('--tooltip-border-style', 'solid');
|
150
|
-
// } else {
|
151
|
-
// e.target.nextElementSibling.removeAttribute("data-tip")
|
152
|
-
// imgElement.src = "/assets/images/close-btn.svg"
|
153
|
-
// tooltipElement.style.setProperty('--tooltip-padding', '0');
|
154
|
-
// tooltipElement.style.setProperty('--tooltip-border-style', 'none');
|
155
|
-
// }
|
156
|
-
|
157
|
-
// e.target.nextElementSibling.addEventListener("click", () => {
|
158
|
-
// e.target.value = ""
|
159
|
-
// imgElement.src = "/assets/images/questionmark.svg"
|
160
|
-
// e.target.nextElementSibling.setAttribute("data-tip", e.target.nextElementSibling.id)
|
161
|
-
// tooltipElement.style.setProperty('--tooltip-padding', '0.5rem');
|
162
|
-
// tooltipElement.style.setProperty('--tooltip-border-style', 'solid');
|
163
|
-
// });
|
164
|
-
// }
|
165
|
-
|
166
|
-
// document.addEventListener("DOMContentLoaded", () => {
|
167
|
-
// const filterInputs = document.querySelectorAll('.filter_val');
|
168
|
-
// Array.from(filterInputs).forEach((item) => {
|
169
|
-
// // Call the function on load
|
170
|
-
// handleFilterInput({ target: item });
|
171
|
-
// item.addEventListener("input", handleFilterInput);
|
172
|
-
// });
|
173
|
-
// });
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
36
|
let theSelect = document.getElementById("select_dropDown");
|
179
|
-
|
37
|
+
let sortingFilter = document.querySelector("#select_dropDown");
|
180
38
|
const sortup = document.querySelector(".sortup-icon");
|
181
39
|
let bool = false;
|
182
40
|
sortup.addEventListener("click", () => {
|
@@ -220,19 +78,19 @@ const getData = async (serachValue) => {
|
|
220
78
|
try {
|
221
79
|
document.querySelector(".main-header").style.background = "#fff"
|
222
80
|
document.querySelector(".heading-h2").style.display = "none"
|
223
|
-
if(featureContainer){
|
81
|
+
if (featureContainer) {
|
224
82
|
featureContainer.remove()
|
225
83
|
}
|
226
|
-
if(howContainer){
|
84
|
+
if (howContainer) {
|
227
85
|
howContainer.remove()
|
228
86
|
}
|
229
|
-
if(faqsContainer){
|
87
|
+
if (faqsContainer) {
|
230
88
|
faqsContainer.remove()
|
231
89
|
}
|
232
|
-
if(infographicsContainer){
|
90
|
+
if (infographicsContainer) {
|
233
91
|
infographicsContainer.remove()
|
234
92
|
}
|
235
|
-
if(authorsLists){
|
93
|
+
if (authorsLists) {
|
236
94
|
authorsLists.remove()
|
237
95
|
}
|
238
96
|
errorMsg.innerHTML = "";
|
@@ -267,9 +125,13 @@ const getData = async (serachValue) => {
|
|
267
125
|
</ul>
|
268
126
|
</main>`;
|
269
127
|
/// loader
|
270
|
-
|
271
|
-
|
272
|
-
|
128
|
+
let response
|
129
|
+
if (serachValue) {
|
130
|
+
response = await fetch(`/.netlify/functions/getWords?name=${serachValue}&selecteddictionary=${selectedDictionary}`);
|
131
|
+
} else {
|
132
|
+
response = await fetch(`/.netlify/functions/getData?&selecteddictionary=${selectedDictionary}`)
|
133
|
+
}
|
134
|
+
|
273
135
|
const data = await response.json();
|
274
136
|
main.innerHTML = "";
|
275
137
|
getWords(data);
|
@@ -360,12 +222,11 @@ if (lengthValue === "1") {
|
|
360
222
|
});
|
361
223
|
// applyBtn.addEventListener("submit", logSubmit);
|
362
224
|
form.addEventListener("submit", logSubmit);
|
225
|
+
sortingFilter.addEventListener("change", logSubmit);
|
363
226
|
}
|
364
227
|
|
365
|
-
// getWords function define...
|
366
228
|
function getWords(data) {
|
367
229
|
main.innerHTML = "";
|
368
|
-
// tab_container.innerHTML = "";
|
369
230
|
lengthSelect.innerHTML = ""
|
370
231
|
document.querySelector(".sortingFilters").style.display = "flex"
|
371
232
|
if (typeof data === "string") {
|
@@ -376,7 +237,8 @@ function getWords(data) {
|
|
376
237
|
} else {
|
377
238
|
let newWordsLength = 0;
|
378
239
|
let dataArr = [];
|
379
|
-
for (let i = serachValue.length; i >= 1; i--) {
|
240
|
+
// for (let i = serachValue.length; i >= 1; i--) {
|
241
|
+
for (let i = 15; i > 0; i--) {
|
380
242
|
let newdata = data.filter((item) => item.length === i);
|
381
243
|
if (prefixValue) {
|
382
244
|
newdata = newdata.filter((item2) =>
|
@@ -468,34 +330,35 @@ function getWords(data) {
|
|
468
330
|
main.innerHTML += "";
|
469
331
|
} else {
|
470
332
|
newWordsLength += newdata.length;
|
333
|
+
newdata = sortWords(newdata);
|
471
334
|
const result = newdata.map((item) => {
|
472
|
-
var text1 = serachValue.replace("?", "");
|
473
|
-
var text2 = item;
|
474
|
-
var text3 = item;
|
475
|
-
let chars = text1.split("");
|
476
|
-
|
477
|
-
let indexs = [];
|
478
|
-
chars.map((i) => {
|
479
|
-
let findIndexes = findIndex(text3, i);
|
480
|
-
if (findIndexes.length > 0) {
|
481
|
-
text3 = text3.split("");
|
482
|
-
text3[findIndexes] = "$";
|
483
|
-
text3 = text3.join("");
|
484
|
-
|
485
|
-
indexs = [...indexs, ...findIndexes];
|
486
|
-
}
|
487
|
-
});
|
488
335
|
let itemHtml = "";
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
336
|
+
if (serachValue) {
|
337
|
+
var text1 = serachValue.replace("?", "");
|
338
|
+
var text2 = item;
|
339
|
+
var text3 = item;
|
340
|
+
let chars = text1.split("");
|
341
|
+
let indexs = [];
|
342
|
+
chars.map((i) => {
|
343
|
+
let findIndexes = findIndex(text3, i);
|
344
|
+
if (findIndexes.length > 0) {
|
345
|
+
text3 = text3.split("");
|
346
|
+
text3[findIndexes] = "$";
|
347
|
+
text3 = text3.join("");
|
348
|
+
indexs = [...indexs, ...findIndexes];
|
349
|
+
}
|
350
|
+
});
|
351
|
+
text2.split("").map((itemValue, index) => {
|
352
|
+
let check = indexs.find((i) => i === index);
|
353
|
+
if (check !== undefined) {
|
354
|
+
itemHtml += `${itemValue}`;
|
355
|
+
} else {
|
356
|
+
itemHtml += `<span class='highlight'>${itemValue}</span>`;
|
357
|
+
}
|
358
|
+
});
|
359
|
+
} else {
|
360
|
+
itemHtml = item
|
361
|
+
}
|
499
362
|
if (item.length === 1) {
|
500
363
|
ok = false;
|
501
364
|
newWordsLength = newWordsLength - 1;
|
@@ -515,20 +378,17 @@ function getWords(data) {
|
|
515
378
|
`;
|
516
379
|
}
|
517
380
|
});
|
518
|
-
|
519
381
|
if (result[0] !== undefined) {
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
// let tabs = document.getElementsByClassName("tab_link");
|
531
|
-
// tabs[0] ? tabs[0].classList.add("active-tab") : "";
|
382
|
+
if (wordLength.value) {
|
383
|
+
lengthSelect.style.display = "none"
|
384
|
+
} else {
|
385
|
+
var option = document.createElement("option");
|
386
|
+
option.text = `${i} Letter`;
|
387
|
+
option.value = i;
|
388
|
+
lengthSelect.setAttribute("onchange", `Filtering(${i})`)
|
389
|
+
lengthSelect.add(option);
|
390
|
+
lengthSelect.style.display = "block"
|
391
|
+
}
|
532
392
|
main.innerHTML += `
|
533
393
|
<div class="allGroupWords wordlistContainer" id="alpha_${i}">
|
534
394
|
<h3 class="wordListHeading lead">${i} Letter Words</h3>
|
@@ -540,261 +400,84 @@ function getWords(data) {
|
|
540
400
|
}
|
541
401
|
}
|
542
402
|
}
|
543
|
-
theSelect.addEventListener("change", () => {
|
544
|
-
sortValue = theSelect[theSelect.selectedIndex].text;
|
545
|
-
if (sortValue == "Z-A") {
|
546
|
-
sortBool = true;
|
547
|
-
sortby(sortBool, dataArr);
|
548
|
-
} else {
|
549
|
-
sortBool = false;
|
550
|
-
sortby(sortBool, dataArr);
|
551
|
-
}
|
552
|
-
if (sortValue == "Points") {
|
553
|
-
sortBool = true;
|
554
|
-
sortPointsby(sortBool, dataArr);
|
555
|
-
}
|
556
|
-
});
|
557
|
-
sortValue = theSelect[theSelect.selectedIndex].text;
|
558
|
-
if (sortValue == "Z-A") {
|
559
|
-
sortby(sortBool, dataArr);
|
560
|
-
}
|
561
|
-
if (sortValue == "Points") {
|
562
|
-
sortPointsby(sortBool, dataArr);
|
563
|
-
}
|
564
403
|
if (newWordsLength === 0) {
|
565
|
-
errorMsg.innerHTML = "
|
566
|
-
|
567
|
-
wordCount.innerHTML = `<strong>Found ${newWordsLength} words with letters with ${serachValue.split(
|
568
|
-
""
|
569
|
-
)}</strong>`;
|
570
|
-
}
|
571
|
-
}
|
572
|
-
}
|
404
|
+
errorMsg.innerHTML = "No Words Found";
|
405
|
+
document.querySelector(".sortingFilters").style.display = "none"
|
573
406
|
|
574
|
-
|
575
|
-
|
576
|
-
|
577
|
-
if (sortValue) {
|
578
|
-
let newWordsLength = 0;
|
579
|
-
for (let i = serachValue.length; i >= 1; i--) {
|
580
|
-
var newdata = data.filter((item) => item.length === i);
|
581
|
-
if (newdata.length === 0) {
|
582
|
-
main.innerHTML += "";
|
407
|
+
} else {
|
408
|
+
if (serachValue) {
|
409
|
+
wordCount.innerHTML = `<strong>Found ${newWordsLength} words with letters with ${serachValue.split("")}</strong>`;
|
583
410
|
} else {
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
var text2 = item.words;
|
610
|
-
var text3 = item.words;
|
611
|
-
function findIndex(str, char) {
|
612
|
-
const strLength = str.length;
|
613
|
-
const indexes = [];
|
614
|
-
let newStr = str;
|
615
|
-
while (newStr && newStr.indexOf(char) > -1) {
|
616
|
-
indexes.push(newStr.indexOf(char) + strLength - newStr.length);
|
617
|
-
newStr = newStr.substring(newStr.indexOf(char) + 1);
|
618
|
-
newStr = newStr.substring(newStr.indexOf(char) + 1);
|
619
|
-
}
|
620
|
-
return indexes;
|
621
|
-
}
|
622
|
-
let chars = text1.split("");
|
623
|
-
let indexs = [];
|
624
|
-
chars.map((i) => {
|
625
|
-
let findIndexes = findIndex(text3, i);
|
626
|
-
if (findIndexes.length > 0) {
|
627
|
-
text3 = text3.split("");
|
628
|
-
text3[findIndexes] = "$";
|
629
|
-
text3 = text3.join("");
|
630
|
-
indexs = [...indexs, ...findIndexes];
|
631
|
-
}
|
632
|
-
});
|
633
|
-
let itemHtml = "";
|
634
|
-
text2.split("").map((itemValue, index) => {
|
635
|
-
let check = indexs.find((i) => i === index);
|
636
|
-
if (check !== undefined) {
|
637
|
-
itemHtml += `${itemValue}`;
|
638
|
-
} else {
|
639
|
-
itemHtml += `<span class='highlight'>${itemValue}</span>`;
|
640
|
-
}
|
641
|
-
});
|
642
|
-
return `
|
643
|
-
<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.words}">
|
644
|
-
${itemHtml}
|
645
|
-
<span class="points" value="${item.points}" style="position:relative; top:4px; font-size:12px"> ${item.points}</span>
|
646
|
-
</a>
|
647
|
-
`;
|
648
|
-
});
|
649
|
-
main.innerHTML += `
|
650
|
-
<div class="allGroupWords wordlistContainer" id="alpha_${i}">
|
651
|
-
<h3 class="wordListHeading lead">${i} Letter Words</h3>
|
652
|
-
<div class="wordList">
|
653
|
-
${result.join("")}
|
654
|
-
</div>
|
655
|
-
</div>
|
656
|
-
`;
|
411
|
+
|
412
|
+
let startwithMsg = ""
|
413
|
+
let endwithMsg = ""
|
414
|
+
let containsMsg = ""
|
415
|
+
let lengthMsg = ""
|
416
|
+
let inputVal = ""
|
417
|
+
if (serachValue) {
|
418
|
+
inputVal = `${input.value.split("")} `
|
419
|
+
}
|
420
|
+
if (prefixValue) {
|
421
|
+
startwithMsg = `starting with ${prefixValue.split("")}`
|
422
|
+
}
|
423
|
+
if (suffixValue) {
|
424
|
+
endwithMsg = `ending with ${suffixValue.split("")} `
|
425
|
+
}
|
426
|
+
if (containsValue) {
|
427
|
+
containsMsg = `containing with ${containsValue.split("")} `
|
428
|
+
}
|
429
|
+
if (lengthValue) {
|
430
|
+
lengthMsg = `with ${lengthValue} letter words`
|
431
|
+
}
|
432
|
+
let msg = `<strong> Found ${newWordsLength} words with letters
|
433
|
+
${lengthMsg} ${inputVal} ${startwithMsg} ${endwithMsg} ${containsMsg} </strong>`
|
434
|
+
|
435
|
+
wordCount.innerHTML = `${msg} `
|
657
436
|
}
|
658
437
|
}
|
659
438
|
}
|
660
439
|
}
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
if (
|
669
|
-
|
670
|
-
|
671
|
-
|
672
|
-
|
673
|
-
|
674
|
-
|
675
|
-
|
440
|
+
function sortWords(data) {
|
441
|
+
if (sortingFilter.selectedIndex == 0) {
|
442
|
+
return data;
|
443
|
+
} else if (sortingFilter.selectedIndex == 1) {
|
444
|
+
return data.sort();
|
445
|
+
} else if (sortingFilter.selectedIndex == 2) {
|
446
|
+
return data.reverse();
|
447
|
+
} else if (sortingFilter.selectedIndex == 3) {
|
448
|
+
var tempArr = [];
|
449
|
+
var newArray = [];
|
450
|
+
data.map((item) => {
|
451
|
+
let newWordsLength = 0;
|
452
|
+
if (item.length === 1) {
|
453
|
+
ok = false;
|
454
|
+
newWordsLength = newWordsLength - 1;
|
676
455
|
} else {
|
677
|
-
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
|
685
|
-
|
686
|
-
|
687
|
-
|
688
|
-
|
689
|
-
|
690
|
-
indexs = [...indexs, ...findIndexes];
|
691
|
-
}
|
692
|
-
});
|
693
|
-
let itemHtml = "";
|
694
|
-
text2.split("").map((itemValue, index) => {
|
695
|
-
let check = indexs.find((i) => i === index);
|
696
|
-
if (check !== undefined) {
|
697
|
-
itemHtml += `${itemValue}`;
|
698
|
-
} else {
|
699
|
-
itemHtml += `<span class='highlight'>${itemValue}</span>`;
|
700
|
-
}
|
701
|
-
});
|
702
|
-
if (item.length === 1) {
|
703
|
-
ok = false;
|
704
|
-
newWordsLength = newWordsLength - 1;
|
705
|
-
} else {
|
706
|
-
let ScrabbleLetterScore = ScrabbleScore();
|
707
|
-
let sum = 0;
|
708
|
-
item = item.toLowerCase();
|
709
|
-
for (let i = 0; i < item.length; i++) {
|
710
|
-
sum += ScrabbleLetterScore[item[i]] || 0; // for unknown characters
|
711
|
-
}
|
712
|
-
|
713
|
-
return `
|
714
|
-
<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
|
715
|
-
${itemHtml}
|
716
|
-
<span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px">${sum}</span>
|
717
|
-
</a>
|
718
|
-
`;
|
719
|
-
}
|
720
|
-
});
|
721
|
-
|
456
|
+
let ScrabbleLetterScore = ScrabbleScore();
|
457
|
+
let points = 0;
|
458
|
+
item = item.toLowerCase();
|
459
|
+
for (let i = 0; i < item.length; i++) {
|
460
|
+
points += ScrabbleLetterScore[item[i]] || 0; // for unknown characters
|
461
|
+
}
|
462
|
+
const value = {
|
463
|
+
words: item,
|
464
|
+
points: points,
|
465
|
+
};
|
466
|
+
newArray.push(value);
|
467
|
+
}
|
468
|
+
});
|
722
469
|
|
470
|
+
newArray.sort(function (a, b) {
|
471
|
+
return b.points - a.points;
|
472
|
+
});
|
723
473
|
|
724
|
-
|
725
|
-
|
726
|
-
|
727
|
-
<div class="wordList">
|
728
|
-
${result.join("")}
|
729
|
-
</div>
|
730
|
-
</div>
|
731
|
-
`;
|
732
|
-
}
|
733
|
-
}
|
734
|
-
}
|
735
|
-
else {
|
736
|
-
main.innerHTML = "";
|
737
|
-
data.sort();
|
738
|
-
for (let i = serachValue.length; i >= 1; i--) {
|
739
|
-
var newdata = data.filter((item) => item.length === i);
|
740
|
-
if (newdata.length === 0) {
|
741
|
-
main.innerHTML += "";
|
742
|
-
} else {
|
743
|
-
const result = newdata.map((item) => {
|
744
|
-
var text1 = serachValue.replace("?", "");
|
745
|
-
var text2 = item;
|
746
|
-
var text3 = item;
|
747
|
-
let chars = text1.split("");
|
748
|
-
let indexs = [];
|
749
|
-
chars.map((i) => {
|
750
|
-
let findIndexes = findIndex(text3, i);
|
751
|
-
if (findIndexes.length > 0) {
|
752
|
-
text3 = text3.split("");
|
753
|
-
text3[findIndexes] = "$";
|
754
|
-
text3 = text3.join("");
|
755
|
-
indexs = [...indexs, ...findIndexes];
|
756
|
-
}
|
757
|
-
});
|
758
|
-
let itemHtml = "";
|
759
|
-
text2.split("").map((itemValue, index) => {
|
760
|
-
let check = indexs.find((i) => i === index);
|
761
|
-
if (check !== undefined) {
|
762
|
-
itemHtml += `${itemValue}`;
|
763
|
-
} else {
|
764
|
-
itemHtml += `<span class='highlight'>${itemValue}</span>`;
|
765
|
-
}
|
766
|
-
});
|
767
|
-
if (item.length === 1) {
|
768
|
-
ok = false;
|
769
|
-
} else {
|
770
|
-
let ScrabbleLetterScore = ScrabbleScore();
|
771
|
-
let sum = 0;
|
772
|
-
item = item.toLowerCase();
|
773
|
-
for (let i = 0; i < item.length; i++) {
|
774
|
-
sum += ScrabbleLetterScore[item[i]] || 0; // for unknown characters
|
775
|
-
}
|
474
|
+
newArray.map((ele) => {
|
475
|
+
tempArr.push(ele.words);
|
476
|
+
});
|
776
477
|
|
777
|
-
|
778
|
-
<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
|
779
|
-
${itemHtml}
|
780
|
-
<span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px">${sum}</span>
|
781
|
-
</a>
|
782
|
-
`;
|
783
|
-
}
|
784
|
-
});
|
785
|
-
main.innerHTML += `
|
786
|
-
<div class="allGroupWords wordlistContainer" id="alpha_${i}">
|
787
|
-
<h3 class="wordListHeading lead">${i} Letter Words</h3>
|
788
|
-
<div class="wordList">
|
789
|
-
${result.join("")}
|
790
|
-
</div>
|
791
|
-
</div>
|
792
|
-
`;
|
793
|
-
}
|
794
|
-
}
|
478
|
+
return tempArr;
|
795
479
|
}
|
796
480
|
}
|
797
|
-
|
798
481
|
// Scrabble Point Array
|
799
482
|
const ScrabbleScore = () => {
|
800
483
|
let twl06_sowpods = {
|