word-games-theme 0.8.0 → 0.8.4

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: 5b383e2d2ca991f0df8c99706aea73184eed922cad3c6207e9144f3795c3a38d
4
- data.tar.gz: b70abbe49809438065ff3f2b8e8e9611633a1ab8cbf292c7f6eae8b344a80f9e
3
+ metadata.gz: 4dfbfd3aa728608a1e06b913a3c955dc30f3d4feed24d0ffcb24ce7df5ff4dd0
4
+ data.tar.gz: 174c75676ad30418213582cf81ec636a070253951cdf80ac87eb65f59158ac1b
5
5
  SHA512:
6
- metadata.gz: 23a74f922f3fd3a6301aa07618809a0894f7089c0fccce5e2e2e919c909b7d73963ee50527fcada52ced63dc40a0c27f6907dac2b140757f73ec228183f167aa
7
- data.tar.gz: ee7afc262a84181335b87320eb085c2cb65ffba4df67805e590acb0ffc5f8e0a2eae530b3b9f50035297bb1e5de01c443ae7f713d265906d8e7093095da61e3f
6
+ metadata.gz: 568d30c68d6bf4707baab2ef81215713d8019a7013c3bdb8e51052b0ca1700ce21e6b663f536c22704f2b91f741ef6e7c89870b4303999293ceaa3d23e3c47a0
7
+ data.tar.gz: 4f34f04c02fb78b529ffb8dc3645d7f287510025424f92b383b930159771cb59d9aef2d2b6bd6739e62ecd87862d2d96565e52c049b5a7ff9c215392c2dbc862
@@ -5,6 +5,10 @@
5
5
  "name": "words",
6
6
  "url": "/test"
7
7
  },
8
+ {
9
+ "name": "4 letter words with these letters and a blank",
10
+ "url": "/4-letter-words-with-these-letters-and-a-blank"
11
+ },
8
12
  {
9
13
  "name": "unscramble-letters",
10
14
  "url": "/unscramble-letters-to-make-words"
@@ -0,0 +1 @@
1
+ {"filewords":{"name":"","data":[{"word":"","x":"","gameName":""}]},"filepath":{},"title":"4 letter words with these letters and a blank- The most useful word finder tool ","h1":"Here's the full list of 4 letter words with these letters and a blank","h2":"Find all 4 letter words with these letters and a blank","meta":"Find words using a combination of letters and blanks words using a combination of letters and blanks without any constrain. Use our advanced word search tool and get your desired result.","featureNo":"02","feature_title":"Features","blogNo":"03","blog_title":"Blog","FaqNo":"04","Faq_title":"FAQ","aboutNo":"05","about_title":"About","featureList":[{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"},{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"},{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"},{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"},{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"},{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"}],"faqList":[{"Question":"","Answer":""}]}
@@ -2,6 +2,6 @@
2
2
  <script type="text/javascript" defer delay="{{site.MonumetricID}}" data-cfasync="false"></script>
3
3
  {% endif %}
4
4
 
5
- <!-- {% if jekyll.environment == 'development' and site.MonumetricID %}
5
+ {% if jekyll.environment == 'development' and site.MonumetricID %}
6
6
  <script type="text/javascript" delay="{{site.MonumetricID}}"></script>
7
- {% endif %} -->
7
+ {% endif %}
@@ -58,38 +58,6 @@
58
58
  <div class="container">
59
59
  <div class="footer-single-col">
60
60
  <div class="row d-flex justify-content-between mt-5 ">
61
- <div class="col-md-12 txt-secondary mb-5">
62
- {%- if dataToShow.logo -%}
63
- <div class="footer-logo-cont">
64
- <img loading="lazy" src="{{dataToShow.logo}}" title="logo" class="footer-logo d-block"
65
- alt="footer logo" width="30px">
66
- <span>
67
- {{dataToShow.heading}}
68
- </span>
69
- <!-- <div class="footer-title">{{dataToShow.heading}}</div> -->
70
- </div>
71
- {%- endif -%}
72
- <hr class="footer_hr">
73
- <div class="footer-social-list mt-4">
74
- <ul class="list-inline">
75
- {% for data in dataToShow.social %}
76
- <li>
77
- <a href="{{data.url}}" target="_blank">
78
- <i class="{{data.icon}}"></i>
79
- </a>
80
- </li>
81
- {% endfor %}
82
- </ul>
83
- </div>
84
- </div>
85
-
86
- <div class="col-md-2 txt-secondary">
87
- <p class=" font-weight-bold txt-primary footer_subheading">{{dataToShow.companytitle | default:
88
- 'Company' }}</p>
89
- {% for data in dataToShow.company %}
90
- <p class="mb-4"><a class="footer-links txt-secondary" href="{{data.url}}">{{data.name}}</a></p>
91
- {% endfor %}
92
- </div>
93
61
  <div class="col-md-2 txt-secondary">
94
62
  <p class=" font-weight-bold txt-primary footer_subheading">{{dataToShow.linksTitle | default:
95
63
  'Links' }}</p>
@@ -97,7 +65,6 @@
97
65
  <p class="mb-4"><a class="footer-links txt-secondary" href="{{data.url}}">{{data.name}}</a></p>
98
66
  {% endfor %}
99
67
  </div>
100
-
101
68
  <div class="col-md-2 txt-secondary ">
102
69
  <p class=" font-weight-bold txt-primary footer_subheading">{{dataToShow.producttitle | default:
103
70
  'tools' }}</p>
@@ -112,6 +79,38 @@
112
79
  <p class="mb-4"><a class="footer-links txt-secondary" href="{{data.url}}">{{data.name}}</a></p>
113
80
  {% endfor %}
114
81
  </div>
82
+ <div class="col-md-2 txt-secondary">
83
+ <p class=" font-weight-bold txt-primary footer_subheading">{{dataToShow.companytitle | default:
84
+ 'Company' }}</p>
85
+ {% for data in dataToShow.company %}
86
+ <p class="mb-4"><a class="footer-links txt-secondary" href="{{data.url}}">{{data.name}}</a></p>
87
+ {% endfor %}
88
+ </div>
89
+ </div>
90
+
91
+ <div class="col-md-12 txt-secondary mb-5">
92
+ {%- if dataToShow.logo -%}
93
+ <div class="footer-logo-cont">
94
+ <img loading="lazy" src="{{dataToShow.logo}}" title="logo" class="footer-logo d-block"
95
+ alt="footer logo" width="30px">
96
+ <span class="email_heaidng">
97
+ {{dataToShow.heading}}
98
+ </span>
99
+ <!-- <div class="footer-title">{{dataToShow.heading}}</div> -->
100
+ </div>
101
+ {%- endif -%}
102
+ <hr class="footer_hr">
103
+ <div class="footer-social-list mt-4">
104
+ <ul class="list-inline">
105
+ {% for data in dataToShow.social %}
106
+ <li>
107
+ <a href="{{data.url}}" target="_blank">
108
+ <i class="{{data.icon}}"></i>
109
+ </a>
110
+ </li>
111
+ {% endfor %}
112
+ </ul>
113
+ </div>
115
114
  </div>
116
115
  <div class="copyright-text mt-5 txt-secondary text-center">
117
116
  <p>
@@ -0,0 +1,42 @@
1
+ {% assign lang = page.lang %}
2
+ {% assign dataToShow = site.data.header[lang].data %}
3
+ {%- assign CustomColor = site.data.theme.colors -%}
4
+
5
+ <!-- header starts -->
6
+ <header id="resultHeader">
7
+ <!-- navigation startss -->
8
+ <nav class="navbar navbar-expand-lg navbar-dark" style="background: {{CustomColor.navbarBg}}">
9
+
10
+ <a class="navbar-brand" href="/" title="{{dataToShow.tooltip}}">
11
+ <img src="{{ site.favicon | relative_url }}" alt="{{site.name}}-logo" style="width:35px; height:35px;">
12
+ </a>
13
+ <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarSupportedContent">
14
+ <i class="bi bi-list bi-2x bars"></i>
15
+ </button>
16
+
17
+ <div class="collapse navbar-collapse" id="navbarSupportedContent">
18
+ <ul class="navbar-nav">
19
+ <li class="nav-item">
20
+ <a class="nav-link" href="/blog">Blog</a>
21
+ </li>
22
+ <li class="nav-item dropdown">
23
+ <a class="nav-link dropdown-toggle" id="navbarDropdown" role="button" aria-haspopup="true"
24
+ aria-expanded="false">
25
+ More
26
+ </a>
27
+ <div class="dropdown-menu" aria-labelledby="navbarDropdown">
28
+
29
+ {% for item in dataToShow.more %}
30
+ <a class="dropdown-item" href="{{item.url}}">
31
+ {{item.name}}
32
+ </a>
33
+ {% endfor %}
34
+
35
+ </div>
36
+ </li>
37
+ </ul>
38
+ </div>
39
+ </nav>
40
+ <!-- navbar close -->
41
+ </header>
42
+ <!-- header close -->
@@ -14,7 +14,7 @@
14
14
  </div> -->
15
15
  <div class="container" id="containerWd">
16
16
  <section class="sticky_nav">
17
- <div class="pageHeading text-center pt-5">
17
+ <div class="pageHeading text-center">
18
18
  <h1 class="heading m-0 pb-0">
19
19
  {{dataToShow.h1}}</h1>
20
20
  {%- if dataToShow.h2 != "" -%}
@@ -20,10 +20,14 @@
20
20
  <div class="serachSection">
21
21
  <div class="position-relative serachBox">
22
22
  <form action="/result" id='form' method="GET">
23
-
24
- <input style="border-radius: {{CustomColor.inputFieldBorder}}" type="text"
25
- placeholder="Enter up to 15 letters?" class="txtBox" value='' name="search" maxlength="15"
26
- required autocomplete="off">
23
+ <div style="position: relative;">
24
+ <input style="border-radius: {{CustomColor.inputFieldBorder}}" type="text"
25
+ placeholder="Enter up to 15 letters?" class="txtBox" value='' name="search" maxlength="15"
26
+ required autocomplete="off">
27
+ <span class="focus-border">
28
+ <i></i>
29
+ </span>
30
+ </div>
27
31
  <input style="border-radius: {{CustomColor.inputFieldBorder}};
28
32
  background-color: {{CustomColor.inputButtonBg}};" type="submit" class="serachBtn" id="serach"
29
33
  value>
@@ -19,9 +19,15 @@
19
19
  <div class="serachSection">
20
20
  <div class="position-relative serachBox">
21
21
  <form action="{{page.url}}/result" id='form' method="GET">
22
- <input style="border-radius: {{CustomColor.inputFieldBorder}}" type="text"
23
- placeholder="Enter up to 15 letters?" class="txtBox" value='' name="search" maxlength="15"
24
- required autocomplete="off">
22
+ <div style="position: relative;">
23
+ <input style="border-radius: {{CustomColor.inputFieldBorder}}" type="text"
24
+ placeholder="Enter up to 15 letters?" class="txtBox" value='' name="search" maxlength="15"
25
+ required autocomplete="off">
26
+ <span class="focus-border">
27
+ <i></i>
28
+ </span>
29
+ </div>
30
+
25
31
  <input
26
32
  style="border-radius: {{CustomColor.inputFieldBorder}}; background-color: {{CustomColor.inputButtonBg}};"
27
33
  type="submit" class="serachBtn" id="serach" value>
@@ -57,8 +57,10 @@
57
57
  <script defer src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
58
58
  <script>
59
59
  let txtBox = document.querySelector('.txtBox')
60
+ let focusBorder = document.querySelector('.focus-border')
60
61
  txtBox.focus()
61
62
  txtBox.addEventListener('input', (e) => {
63
+ focusBorder.classList.remove("focus-border")
62
64
  e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, "")
63
65
  let rangeOfBlankTile = '{{ page.blanktilerange }}'
64
66
  if (rangeOfBlankTile === "") {
data/_layouts/page.html CHANGED
@@ -49,7 +49,7 @@
49
49
 
50
50
  <body>
51
51
 
52
- {%- include header/index.html -%}
52
+ {%- include header/resultHeader.html -%}
53
53
 
54
54
  {%- include section/commonPage.html -%}
55
55
 
@@ -59,6 +59,17 @@
59
59
 
60
60
  <link rel="stylesheet"
61
61
  href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.5.0/font/bootstrap-icons.min.css" />
62
+ <script src="//cdnjs.cloudflare.com/ajax/libs/webfont/1.6.28/webfontloader.js"></script>
63
+ <script>WebFont.load({ google: { families: ['Poppins:400&display=swap'] } })</script>
64
+ <script>
65
+ (function () {
66
+ d = document;
67
+ c = d.createElement('link');
68
+ c.href = '//cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css';
69
+ c.rel = 'stylesheet';
70
+ d.head.appendChild(c);
71
+ })();
72
+ </script>
62
73
  <script data-range="{{page.blanktilerange}}" src="/assets/js/wordScrabble.js"></script>
63
74
  <script defer src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
64
75
  <script defer src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
data/_layouts/page2.html CHANGED
@@ -45,11 +45,10 @@
45
45
 
46
46
  <body>
47
47
 
48
- {%- include header/index.html -%}
48
+ {%- include header/resultHeader.html -%}
49
49
 
50
50
  {%- include section/commonPage.html -%}
51
51
 
52
-
53
52
  {%- include share/socialshare.html -%}
54
53
 
55
54
  {%- include footer/index.html -%}
@@ -57,7 +56,18 @@
57
56
 
58
57
  <link rel="stylesheet"
59
58
  href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.5.0/font/bootstrap-icons.min.css" />
60
- <script src="/assets/js/X-letter.js" data-letter="{{page.letter}}"></script>
59
+ <script src="//cdnjs.cloudflare.com/ajax/libs/webfont/1.6.28/webfontloader.js"></script>
60
+ <script>WebFont.load({ google: { families: ['Poppins:400&display=swap'] } })</script>
61
+ <script>
62
+ (function () {
63
+ d = document;
64
+ c = d.createElement('link');
65
+ c.href = '//cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css';
66
+ c.rel = 'stylesheet';
67
+ d.head.appendChild(c);
68
+ })();
69
+ </script>
70
+ <script src="/assets/js/X-letter.js" data-letter="{{page.letter}}" data-ablank="{{page.ablank}}"></script>
61
71
  <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
62
72
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
63
73
  {% include Monumetric/Monumetric.html %}
@@ -85,7 +85,7 @@
85
85
  </style>
86
86
 
87
87
  <body>
88
- {%- include header/index.html -%}
88
+ {%- include header/resultHeader.html -%}
89
89
 
90
90
  {%- include xyzpages/xyz.html -%}
91
91
 
@@ -137,7 +137,8 @@ a {
137
137
  }
138
138
 
139
139
  .sticky_nav {
140
- top: 50px;
140
+ top: 0px;
141
+ padding-top: 1.5rem;
141
142
  }
142
143
 
143
144
  .Advancedbtn {
@@ -321,4 +321,7 @@ hr {
321
321
  .txt-secondary {
322
322
  text-align: center;
323
323
  }
324
+ .email_heaidng{
325
+ font-size: 1.4rem;
326
+ }
324
327
  }
data/assets/css/home.css CHANGED
@@ -12,6 +12,7 @@
12
12
  }
13
13
  .pageHeading {
14
14
  margin-bottom: 2rem;
15
+ padding-top: 3rem;
15
16
  }
16
17
  .pageHeading > h1 {
17
18
  font-size: 30px;
@@ -55,6 +56,77 @@ input:-webkit-autofill:active {
55
56
  outline: none;
56
57
  position: relative;
57
58
  }
59
+
60
+ .txtBox~.focus-border:before,
61
+ .txtBox~.focus-border:after {
62
+ content: "";
63
+ position: absolute;
64
+ top: 0;
65
+ right: 0;
66
+ width: 0;
67
+ height: 2px;
68
+ background-color: #000;
69
+ transition: .5s;
70
+ transition-delay: 0.2s;
71
+ z-index: 9;
72
+ }
73
+ .txtBox~.focus-border:after {
74
+ top: auto;
75
+ bottom: 0;
76
+ right: auto;
77
+ left: 0;
78
+ transition-delay: 0.6s;
79
+ }
80
+ .txtBox:focus~.focus-border:before,
81
+ .txtBox:focus~.focus-border:after,
82
+ .has-content.txtBox~.focus-border:before,
83
+ .has-content.txtBox~.focus-border:after {
84
+ width: 100%;
85
+ transition: .5s;
86
+ transition-delay: 0.6s;
87
+ }
88
+
89
+ .txtBox:focus~.focus-border:after,
90
+ .has-content.txtBox~.focus-border:after {
91
+ transition-delay: 0.2s;
92
+ }
93
+
94
+ .txtBox:focus~.focus-border i:before,
95
+ .txtBox:focus~.focus-border i:after,
96
+ .has-content.txtBox~.focus-border i:before,
97
+ .has-content.txtBox~.focus-border i:after {
98
+ height: 100%;
99
+ transition: 0.2s;
100
+ }
101
+
102
+ .txtBox:focus~.focus-border i:after,
103
+ .has-conten.txtBox~.focus-border i:after {
104
+ transition-delay: 0.4s;
105
+ }
106
+ .txtBox~.focus-border i:before,
107
+ .txtBox~.focus-border i:after {
108
+ content: "";
109
+ position: absolute;
110
+ top: 0;
111
+ left: 0;
112
+ width: 2px;
113
+ height: 0;
114
+ background-color: #000;
115
+ transition: .5s;
116
+ }
117
+
118
+ .txtBox~.focus-border i:after {
119
+ left: auto;
120
+ right: 0;
121
+ top: auto;
122
+ bottom: 0;
123
+ transition-delay: 0.4s;
124
+ }
125
+
126
+
127
+
128
+
129
+
58
130
  /* ravi */
59
131
  .txtBox::placeholder {
60
132
  /* Chrome, Firefox, Opera, Safari 10.1+ */
@@ -222,9 +294,20 @@ input:-webkit-autofill:active {
222
294
  padding: 0px;
223
295
  }
224
296
  @media (max-width: 768px) {
297
+ .pageHeaderBg{
298
+ height: 25vh;
299
+ }
300
+ .pageHeading{
301
+ padding:0 !important;
302
+ }
303
+ .pageHeading > h2{
304
+ font-size: 1.4rem;
305
+ }
225
306
  .wrapper_dropDown {
226
307
  align-items: flex-end;
227
308
  flex-direction: column;
309
+ gap: 0 !important;
310
+ margin:0 !important
228
311
  }
229
312
  .txtBox {
230
313
  height: 50px !important;
@@ -251,12 +334,11 @@ input:-webkit-autofill:active {
251
334
  width: 50%;
252
335
  right: 0;
253
336
  border-radius: 0;
254
- padding: 9.5px;
337
+ padding: 7.5px;
255
338
  z-index: 99;
256
339
  }
257
340
  .pageHeading h1 {
258
341
  font-size: 2rem;
259
- padding-top: 3rem;
260
342
  }
261
343
  #containerWd {
262
344
  width: 100% !important;
data/assets/css/style.css CHANGED
@@ -385,6 +385,9 @@ header {
385
385
  padding: 4px 0;
386
386
  }
387
387
  @media (max-width: 768px) {
388
+ #resultHeader{
389
+ display: none;
390
+ }
388
391
  .social-icons {
389
392
  left: 0;
390
393
  bottom: 0 !important;
@@ -54,9 +54,9 @@
54
54
 
55
55
  @media (max-width: 768px) {
56
56
  .wordCount {
57
- font-size: 1.4rem;
57
+ font-size: 1.3rem;
58
58
  }
59
59
  .pad {
60
- padding-top: 50px !important;
60
+ padding-top: 0px !important;
61
61
  }
62
62
  }
@@ -3,13 +3,15 @@
3
3
  const getScript=document.currentScript
4
4
  const letterLen = getScript.dataset.letter
5
5
 
6
+ const ablank = getScript.dataset.ablank
7
+
6
8
  let errorMsg = document.querySelector('.errorMsg')
7
9
  let script = document.currentScript
8
10
  let wordCount = document.querySelector('.wordCount')
9
11
  let main = document.querySelector('.main')
10
12
 
11
13
  const params = new URLSearchParams(window.location.search)
12
- let serachValue = params.get('search')
14
+ let serachValue = params.get('search').toLowerCase()
13
15
  let prefixValue = params.get('prefix')
14
16
  let containsValue = params.get('contains')
15
17
  let suffixValue = params.get('suffix')
@@ -24,6 +26,16 @@ tab_link_wrapper.style.display = "none"
24
26
  let txtBox = document.querySelector('.txtBox')
25
27
  txtBox.focus()
26
28
  txtBox.value = serachValue
29
+
30
+
31
+ if(ablank){
32
+ if(!serachValue.includes("?")){
33
+ if(serachValue.length < letterLen){
34
+ serachValue = serachValue + '?'
35
+ }
36
+ }
37
+ }
38
+
27
39
  txtBox.addEventListener('input', (e) => {
28
40
  let rangeOfBlankTile = script.dataset.range
29
41
  e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, '')
@@ -80,6 +92,7 @@ const getData = async (serachValue) => {
80
92
  getData(serachValue.toLowerCase())
81
93
 
82
94
  function x_with_letters(data) {
95
+ console.log(data);
83
96
  if (typeof data === 'string') {
84
97
  errorMsg.innerHTML = 'No words found'
85
98
  wordCount.innerHTML = `<strong>Found 0 words with letters ${serachValue.split(
@@ -93,7 +106,7 @@ function x_with_letters(data) {
93
106
  if (letterLen) {
94
107
  filterData = data.filter((item) => item.length == letterLen)
95
108
  }
96
-
109
+
97
110
 
98
111
  if (prefixValue) {
99
112
  filterData = filterData.filter((item2) =>
@@ -316,8 +329,42 @@ function sortPointsby(sortValue, data, i) {
316
329
  })
317
330
  })
318
331
  const result = newArray.map((item) => {
319
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item.words}">
320
- <li>${item.words}
332
+ var text1 = serachValue.replace('?', '')
333
+ var text2 = item.words
334
+ var text3 = item.words
335
+ function findIndex(str, char) {
336
+ const strLength = str.length
337
+ const indexes = []
338
+ let newStr = str
339
+ while (newStr && newStr.indexOf(char) > -1) {
340
+ indexes.push(newStr.indexOf(char) + strLength - newStr.length)
341
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
342
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
343
+ }
344
+ return indexes
345
+ }
346
+ let chars = text1.split('')
347
+ let indexs = []
348
+ chars.map((i) => {
349
+ let findIndexes = findIndex(text3, i)
350
+ if (findIndexes.length > 0) {
351
+ text3 = text3.split('')
352
+ text3[findIndexes] = '$'
353
+ text3 = text3.join('')
354
+ indexs = [...indexs, ...findIndexes]
355
+ }
356
+ })
357
+ let itemHtml = ''
358
+ text2.split('').map((itemValue, index) => {
359
+ let check = indexs.find((i) => i === index)
360
+ if (check !== undefined) {
361
+ itemHtml += `${itemValue}`
362
+ } else {
363
+ itemHtml += `<span class='highlight'>${itemValue}</span>`
364
+ }
365
+ })
366
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.words}">
367
+ <li>${itemHtml}
321
368
  <span class="points" value="${item.points}" style="position:relative; top:4px; font-size:12px"> ${item.points}</span>
322
369
  </li></a>`
323
370
  })
@@ -336,7 +383,6 @@ function sortPointsby(sortValue, data, i) {
336
383
  `
337
384
  }
338
385
  }
339
-
340
386
  // sort by aplhabets
341
387
  function sortby(sortBool, data, i) {
342
388
  if (sortBool) {
@@ -349,8 +395,44 @@ function sortby(sortBool, data, i) {
349
395
  for (let i = 0; i < item.length; i++) {
350
396
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
351
397
  }
352
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item}">
353
- <li>${item}
398
+
399
+ var text1 = serachValue.replace('?', '')
400
+ var text2 = item
401
+ var text3 = item
402
+ function findIndex(str, char) {
403
+ const strLength = str.length
404
+ const indexes = []
405
+ let newStr = str
406
+ while (newStr && newStr.indexOf(char) > -1) {
407
+ indexes.push(newStr.indexOf(char) + strLength - newStr.length)
408
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
409
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
410
+ }
411
+ return indexes
412
+ }
413
+ let chars = text1.split('')
414
+ let indexs = []
415
+ chars.map((i) => {
416
+ let findIndexes = findIndex(text3, i)
417
+ if (findIndexes.length > 0) {
418
+ text3 = text3.split('')
419
+ text3[findIndexes] = '$'
420
+ text3 = text3.join('')
421
+ indexs = [...indexs, ...findIndexes]
422
+ }
423
+ })
424
+ let itemHtml = ''
425
+ text2.split('').map((itemValue, index) => {
426
+ let check = indexs.find((i) => i === index)
427
+ if (check !== undefined) {
428
+ itemHtml += `${itemValue}`
429
+ } else {
430
+ itemHtml += `<span class='highlight'>${itemValue}</span>`
431
+ }
432
+ })
433
+
434
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item}">
435
+ <li>${itemHtml}
354
436
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
355
437
  </li></a>`
356
438
  })
@@ -378,8 +460,44 @@ function sortby(sortBool, data, i) {
378
460
  for (let i = 0; i < item.length; i++) {
379
461
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
380
462
  }
381
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item}">
382
- <li>${item}
463
+
464
+ var text1 = serachValue.replace('?', '')
465
+ var text2 = item
466
+ var text3 = item
467
+ function findIndex(str, char) {
468
+ const strLength = str.length
469
+ const indexes = []
470
+ let newStr = str
471
+ while (newStr && newStr.indexOf(char) > -1) {
472
+ indexes.push(newStr.indexOf(char) + strLength - newStr.length)
473
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
474
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
475
+ }
476
+ return indexes
477
+ }
478
+ let chars = text1.split('')
479
+ let indexs = []
480
+ chars.map((i) => {
481
+ let findIndexes = findIndex(text3, i)
482
+ if (findIndexes.length > 0) {
483
+ text3 = text3.split('')
484
+ text3[findIndexes] = '$'
485
+ text3 = text3.join('')
486
+ indexs = [...indexs, ...findIndexes]
487
+ }
488
+ })
489
+ let itemHtml = ''
490
+ text2.split('').map((itemValue, index) => {
491
+ let check = indexs.find((i) => i === index)
492
+ if (check !== undefined) {
493
+ itemHtml += `${itemValue}`
494
+ } else {
495
+ itemHtml += `<span class='highlight'>${itemValue}</span>`
496
+ }
497
+ })
498
+
499
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item}">
500
+ <li>${itemHtml}
383
501
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
384
502
  </li></a>`
385
503
  })
@@ -354,7 +354,7 @@ function sortPointsby(sortValue, data) {
354
354
  itemHtml += `<span class='highlight'>${itemValue}</span>`
355
355
  }
356
356
  })
357
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item.words}">
357
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.words}">
358
358
  <li>${itemHtml}
359
359
  <span class="points" value="${item.points}" style="position:relative; top:4px; font-size:12px"> ${item.points}</span>
360
360
  </li></a>`
@@ -426,7 +426,7 @@ function sortby(sortBool, data) {
426
426
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
427
427
  }
428
428
 
429
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
429
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
430
430
  <li>${itemHtml}
431
431
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
432
432
  </li></a>`
@@ -489,7 +489,7 @@ function sortby(sortBool, data) {
489
489
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
490
490
  }
491
491
 
492
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
492
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
493
493
  <li>${itemHtml}
494
494
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
495
495
  </li></a>`
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: 0.8.0
4
+ version: 0.8.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - manpreet-appscms
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-01 00:00:00.000000000 Z
11
+ date: 2022-02-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -76,6 +76,7 @@ files:
76
76
  - _data/header/en/data.json
77
77
  - _data/theme/colors.json
78
78
  - _data/wordfinderstrategy/en/how-to-use-5-letter-word-finder-to-score-high-in-scrabble-words-with-friends.json
79
+ - _data/wordgames/en/4_letter_words_with_these_letters_and_a_blank.json
79
80
  - _data/wordgames/en/anagram_word_finder.json
80
81
  - _data/wordgames/en/eight_letter_word_finder.json
81
82
  - _data/wordgames/en/eleven_letter_word_finder.json
@@ -116,6 +117,7 @@ files:
116
117
  - _includes/head/index.html
117
118
  - _includes/header/blogHeader.html
118
119
  - _includes/header/index.html
120
+ - _includes/header/resultHeader.html
119
121
  - _includes/paginationBlogPage.html
120
122
  - _includes/paginationPostPage.html
121
123
  - _includes/postauthorbio.html