appscms-tools-theme 4.8.2 → 4.8.4

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.
Files changed (145) hide show
  1. checksums.yaml +4 -4
  2. data/_data/.DS_Store +0 -0
  3. data/_data/about/en/about.json +16 -16
  4. data/_data/blog/nav.json +14 -14
  5. data/_data/blog/relatedblogs.json +2816 -2816
  6. data/_data/feature/en/batch-conversion.json +192 -192
  7. data/_data/feature/en/compress-pdf.json +223 -223
  8. data/_data/feature/en/devtools.json +321 -321
  9. data/_data/feature/en/face-detection.json +156 -156
  10. data/_data/feature/en/split-pdf.json +221 -221
  11. data/_data/feature/en/theframe.json +160 -160
  12. data/_data/footer/en/data.json +264 -264
  13. data/_data/header/en/data.json +672 -672
  14. data/_data/home/en/en.json +250 -250
  15. data/_data/home/en/posters.json +322 -322
  16. data/_data/home-1/en/en.json +236 -236
  17. data/_data/noindexURLs.json +23 -0
  18. data/_includes/.DS_Store +0 -0
  19. data/_includes/alternates/alternates.html +64 -89
  20. data/_includes/appscms/customblog/contenttool-recent-posts.html +94 -94
  21. data/_includes/appscms/customblog/pageRelatedPosts.html +68 -68
  22. data/_includes/appscms/customblog/recentposts.html +67 -67
  23. data/_includes/appscms/customblog/relatedBlogs.html +82 -82
  24. data/_includes/appscms/customblog/relatedposts.html +193 -193
  25. data/_includes/appscms/extras/appscms-postbox.html +57 -57
  26. data/_includes/appscms/featurePageAuthors/featurePageAuthors.html +85 -85
  27. data/_includes/appscms/head/bloghead.html +128 -128
  28. data/_includes/appscms/headings/contenttool-headings.html +33 -33
  29. data/_includes/appscms/headings/devtool-headings.html +38 -38
  30. data/_includes/appscms/home/contenttool-feature-boxes.html +19 -19
  31. data/_includes/appscms/home/devtool-feature-boxes.html +70 -70
  32. data/_includes/appscms/infographics/infographics.html +241 -32
  33. data/_includes/appscms/loaders/loader.html +4 -4
  34. data/_includes/appscms/navbars/devtool-navbar.html +50 -50
  35. data/_includes/appscms/navbars/devtool-toolbar.html +100 -100
  36. data/_includes/appscms/navbars/navbar.html +129 -75
  37. data/_includes/appscms/navbars/toolbar.html +326 -139
  38. data/_includes/appscms/recent-posts/recent_posts.html +90 -90
  39. data/_includes/appscms/recent-posts/related_categories_post.html +194 -194
  40. data/_includes/appscms/searchbar/devtool-searchbar.html +63 -63
  41. data/_includes/appscms/usp/usp.html +90 -90
  42. data/_includes/author_bio.html +41 -41
  43. data/_includes/authorpagehead/index.html +47 -47
  44. data/_includes/authors/authors.html +39 -39
  45. data/_includes/batch-conversion.html +141 -141
  46. data/_includes/bookmark.html +6 -6
  47. data/_includes/cssfile/links.html +54 -54
  48. data/_includes/custom-head.html +138 -138
  49. data/_includes/customCode.html +1 -1
  50. data/_includes/customScripts.html +1 -1
  51. data/_includes/customblog/pageRelatedPosts.html +87 -87
  52. data/_includes/customblog/recentposts.html +67 -67
  53. data/_includes/customblog/relatedBlogs.html +86 -86
  54. data/_includes/customblog/relatedposts.html +201 -201
  55. data/_includes/dropdown/langdropdown.html +32 -32
  56. data/_includes/feature.html +39 -39
  57. data/_includes/featurePageAuthors/featurePageAuthors.html +101 -101
  58. data/_includes/footer/index.html +537 -537
  59. data/_includes/google-analytics.html +32 -32
  60. data/_includes/head/index.html +627 -627
  61. data/_includes/header/blogHeader.html +34 -34
  62. data/_includes/header/index.html +152 -152
  63. data/_includes/infographics/infographics.html +244 -244
  64. data/_includes/internationalization-section.html +64 -47
  65. data/_includes/paginationBlogPage.html +70 -70
  66. data/_includes/postbox.html +65 -65
  67. data/_includes/script.html +493 -493
  68. data/_includes/section/count.html +32 -32
  69. data/_includes/section/recent_posts.html +94 -94
  70. data/_includes/section/related_categories_post.html +196 -196
  71. data/_includes/share/socialshare.html +21 -21
  72. data/_includes/userTracking.html +14 -14
  73. data/_layouts/aboutUs.html +175 -175
  74. data/_layouts/allAuthors.html +131 -131
  75. data/_layouts/appscms-about.html +163 -163
  76. data/_layouts/appscms-audio.html +33 -33
  77. data/_layouts/appscms-author.html +436 -436
  78. data/_layouts/appscms-authors.html +145 -145
  79. data/_layouts/appscms-batch.html +141 -141
  80. data/_layouts/appscms-calculator.html +93 -93
  81. data/_layouts/appscms-categories.html +26 -26
  82. data/_layouts/appscms-contact.html +132 -132
  83. data/_layouts/appscms-disclaimer.html +124 -124
  84. data/_layouts/appscms-download.html +289 -289
  85. data/_layouts/appscms-feature-result.html +96 -96
  86. data/_layouts/appscms-help.html +25 -25
  87. data/_layouts/appscms-imagekit.html +96 -96
  88. data/_layouts/appscms-post.html +243 -243
  89. data/_layouts/appscms-privacy-policy.html +781 -781
  90. data/_layouts/appscms-terms-and-conditions.html +646 -646
  91. data/_layouts/appscms-video.html +33 -33
  92. data/_layouts/audio.html +33 -33
  93. data/_layouts/author.html +409 -409
  94. data/_layouts/batch.html +177 -177
  95. data/_layouts/blog-1.html +116 -116
  96. data/_layouts/blog.html +131 -131
  97. data/_layouts/calculator.html +99 -99
  98. data/_layouts/contenttool-feature.html +42 -42
  99. data/_layouts/contenttool-home.html +53 -53
  100. data/_layouts/devtool-blog.html +132 -132
  101. data/_layouts/devtool-feature.html +54 -54
  102. data/_layouts/devtool-home.html +53 -53
  103. data/_layouts/devtools.html +57 -57
  104. data/_layouts/feature-1.html +285 -285
  105. data/_layouts/feature.html +351 -351
  106. data/_layouts/featureResultPage.html +82 -82
  107. data/_layouts/frame.html +222 -222
  108. data/_layouts/home-1.html +186 -186
  109. data/_layouts/home.html +375 -375
  110. data/_layouts/homeResultPage.html +32 -32
  111. data/_layouts/imagekit.html +308 -308
  112. data/_layouts/photo-effects-home.html +190 -190
  113. data/_layouts/post.html +233 -233
  114. data/assets/.DS_Store +0 -0
  115. data/assets/app.js +75 -75
  116. data/assets/css/appscms-blog.css +505 -505
  117. data/assets/css/appscms-contenttool.css +1384 -1384
  118. data/assets/css/appscms-home.css +5 -5
  119. data/assets/css/appscms-imagekit.css +855 -855
  120. data/assets/css/appscms-theme.css +11 -251
  121. data/assets/css/appscms-variables.css +24 -20
  122. data/assets/css/blog.css +510 -510
  123. data/assets/css/calculators.css +46 -46
  124. data/assets/css/common.css +944 -944
  125. data/assets/css/devtool-main.css +1350 -1350
  126. data/assets/css/devtools.css +105 -105
  127. data/assets/css/feature-1.css +293 -293
  128. data/assets/css/home-1.css +188 -188
  129. data/assets/css/imagekit copy.css +848 -848
  130. data/assets/css/imagekit.css +848 -848
  131. data/assets/css/tools.css +1846 -1846
  132. data/assets/images/close-button.svg +31 -31
  133. data/assets/images/digipaint.svg +6 -6
  134. data/assets/images/iconn.svg +12 -12
  135. data/assets/images/logo.svg +2 -2
  136. data/assets/images/manthink.svg +3552 -3552
  137. data/assets/images/search-icon.svg +2 -2
  138. data/assets/js/appscms-infographics.js +49 -49
  139. data/assets/js/batch.js +219 -219
  140. data/assets/js/devtools.js +81 -81
  141. data/assets/js/sharePage.js +65 -65
  142. data/assets/js/usageTracking.js +143 -143
  143. data/assets/js/usageTrackingEvents.js +6 -6
  144. data/assets/js/webvitals.js +4 -4
  145. metadata +5 -3
@@ -1,244 +1,244 @@
1
- <style>
2
- .inforgraphics_section {
3
- width: 100%;
4
- padding: 50px 0px 50px 0px;
5
- border-top: 1px solid rgb(224, 224, 224);
6
- display: flex;
7
- flex-direction: column;
8
- align-items: center;
9
- }
10
-
11
- .inforgraphics_section .wrapper {
12
- display: flex;
13
- max-width: 700px;
14
- position: relative;
15
- }
16
-
17
- .inforgraphics_section .wrapper i {
18
- top: 50%;
19
- height: 44px;
20
- width: 44px;
21
- color: #343f4f;
22
- cursor: pointer;
23
- font-size: 1.15rem;
24
- position: absolute;
25
- text-align: center;
26
- line-height: 44px;
27
- background: #eee;
28
- border-radius: 50%;
29
- transform: translateY(-50%);
30
- transition: transform 0.1s linear;
31
- }
32
-
33
- .inforgraphics_section .wrapper i:active {
34
- transform: translateY(-50%) scale(0.9);
35
- }
36
-
37
- .inforgraphics_section .wrapper i:hover {
38
- background: #f2f2f2;
39
- }
40
-
41
- .inforgraphics_section .wrapper i:first-child {
42
- left: 0px;
43
- display: none;
44
- z-index: 999;
45
- }
46
-
47
- .inforgraphics_section .wrapper i:last-child {
48
- right: 0px;
49
- }
50
-
51
- .carousel {
52
- display: flex;
53
- max-width: 700px;
54
- overflow-x: scroll;
55
- scroll-snap-type: x mandatory;
56
- scroll-behavior: smooth;
57
- }
58
-
59
- .carousel-inner {
60
- display: flex;
61
- flex-wrap: nowrap;
62
- }
63
-
64
- .slide {
65
- flex: 0 0 calc(100% / 3);
66
- scroll-snap-align: start;
67
- padding: 20px;
68
- display: flex;
69
- flex-direction: column;
70
- align-items: center;
71
- justify-content: center;
72
- }
73
-
74
- .carousel img {
75
- object-fit: contain;
76
-
77
- height: auto;
78
- border-radius: 8px;
79
- }
80
-
81
- .carousel-inner p {
82
- text-align: center;
83
- margin: 10px 0;
84
- font-size: 14px;
85
- white-space: normal;
86
- word-wrap: break-word;
87
- }
88
-
89
- @media screen and (max-width: 768px) {
90
- .inforgraphics_section .wrapper {
91
- max-width: 100%;
92
- }
93
-
94
- .carousel-inner p {
95
- font-size: 20px;
96
- }
97
-
98
- .inforgraphics_section .wrapper i:first-child {
99
- left: 0;
100
- /* margin-left: 14px; */
101
- z-index: 99;
102
- }
103
-
104
- .inforgraphics_section .wrapper i:last-child {
105
- right: 0;
106
- z-index: 99;
107
- display: block !important;
108
- }
109
-
110
- .carousel {
111
- overflow-x: hidden;
112
- }
113
-
114
- .slide {
115
- flex: 0 0 100%;
116
- margin-right: 0;
117
- }
118
- }
119
- </style>
120
-
121
- <div class="inforgraphics_section">
122
- <h3 class="text-center w-100 mb-5"><b>Other useful information</b></h3>
123
- <div class="wrapper">
124
- <i id="left" class="fas fa-angle-left"></i>
125
- <div class="carousel">
126
- <div class="carousel-inner">
127
- {%- if homeData.infographics -%} {% for item in homeData.infographics %}
128
- <div class="slide">
129
- <img
130
- loading="lazy"
131
- src="{{ item.image }}"
132
- alt="img"
133
- draggable="false"
134
- />
135
- <p class="infographic-desc">{{ item.description | capitalize }}</p>
136
- </div>
137
- {% endfor %} {%- else -%} {% for item in featureData.infographics %}
138
- <div class="slide">
139
- <img
140
- loading="lazy"
141
- src="{{ item.image }}"
142
- alt="img"
143
- draggable="false"
144
- />
145
- <p class="infographic-desc">{{ item.description | capitalize }}</p>
146
- </div>
147
- {% endfor %} {%- endif -%}
148
- </div>
149
- </div>
150
- <i id="right" class="fas fa-angle-right"></i>
151
- </div>
152
- </div>
153
-
154
- <script>
155
- const carousel = document.querySelector(".carousel-inner"),
156
- firstImg = carousel.querySelectorAll("img")[0],
157
- arrowIcons = document.querySelectorAll(".wrapper i");
158
-
159
- const numImages = carousel.querySelectorAll("img").length;
160
- const isMobile = window.matchMedia("(max-width: 767px)").matches; // Check if screen width is less than or equal to 767px
161
-
162
- if (numImages > 3) {
163
- arrowIcons[1].style.display = "block";
164
- } else {
165
- // arrowIcons[0].style.display = "none";
166
- // arrowIcons[1].style.display = "none";
167
- }
168
-
169
- let isDragStart = false,
170
- isDragging = false,
171
- prevPageX,
172
- prevScrollLeft,
173
- positionDiff;
174
- const showHideIcons = () => {
175
- let scrollWidth = carousel.scrollWidth - carousel.clientWidth; // getting max scrollable width
176
- arrowIcons[0].style.display = carousel.scrollLeft == 0 ? "none" : "block";
177
- arrowIcons[1].style.display =
178
- carousel.scrollLeft == scrollWidth ? "none" : "block";
179
- };
180
-
181
- arrowIcons.forEach((icon) => {
182
- icon.addEventListener("click", () => {
183
- let firstImgWidth = firstImg.clientWidth + 40;
184
- const scrollAmount = icon.id === "left" ? -firstImgWidth : firstImgWidth;
185
- carousel.scrollBy({
186
- left: "100vw",
187
- behavior: "smooth",
188
- });
189
- setTimeout(() => showHideIcons(), 60); // calling showHideIcons after 60ms
190
- });
191
- });
192
-
193
- // const autoSlide = () => {
194
- // // if there is no image left to scroll then return from here
195
- // if (carousel.scrollLeft - (carousel.scrollWidth - carousel.clientWidth) > -1 || carousel.scrollLeft <= 0) return;
196
-
197
- // positionDiff = Math.abs(positionDiff); // making positionDiff value to positive
198
- // let firstImgWidth = firstImg.clientWidth + 14;
199
- // // getting difference value that needs to add or reduce from carousel left to take middle img center
200
- // let valDifference = firstImgWidth - positionDiff;
201
-
202
- // if (carousel.scrollLeft > prevScrollLeft) { // if user is scrolling to the right
203
- // return carousel.scrollLeft += positionDiff > firstImgWidth / 3 ? valDifference : -positionDiff;
204
- // }
205
- // // if user is scrolling to the left
206
- // carousel.scrollLeft -= positionDiff > firstImgWidth / 3 ? valDifference : -positionDiff;
207
- // }
208
-
209
- // const dragStart = (e) => {
210
- // // updatating global variables value on mouse down event
211
- // isDragStart = true;
212
- // prevPageX = e.pageX || e.touches[0].pageX;
213
- // prevScrollLeft = carousel.scrollLeft;
214
- // }
215
-
216
- // const dragging = (e) => {
217
- // // scrolling images/carousel to left according to mouse pointer
218
- // if (!isDragStart) return;
219
- // e.preventDefault();
220
- // isDragging = true;
221
- // carousel.classList.add("dragging");
222
- // positionDiff = (e.pageX || e.touches[0].pageX) - prevPageX;
223
- // carousel.scrollLeft = prevScrollLeft - positionDiff;
224
- // showHideIcons();
225
- // }
226
-
227
- // const dragStop = () => {
228
- // isDragStart = false;
229
- // carousel.classList.remove("dragging");
230
-
231
- // if (!isDragging) return;
232
- // isDragging = false;
233
- // autoSlide();
234
- // }
235
-
236
- // carousel.addEventListener("mousedown", dragStart);
237
- // carousel.addEventListener("touchstart", dragStart);
238
-
239
- // document.addEventListener("mousemove", dragging);
240
- // carousel.addEventListener("touchmove", dragging);
241
-
242
- // document.addEventListener("mouseup", dragStop);
243
- // carousel.addEventListener("touchend", dragStop);
244
- </script>
1
+ <style>
2
+ .inforgraphics_section {
3
+ width: 100%;
4
+ padding: 50px 0px 50px 0px;
5
+ border-top: 1px solid rgb(224, 224, 224);
6
+ display: flex;
7
+ flex-direction: column;
8
+ align-items: center;
9
+ }
10
+
11
+ .inforgraphics_section .wrapper {
12
+ display: flex;
13
+ max-width: 700px;
14
+ position: relative;
15
+ }
16
+
17
+ .inforgraphics_section .wrapper i {
18
+ top: 50%;
19
+ height: 44px;
20
+ width: 44px;
21
+ color: #343f4f;
22
+ cursor: pointer;
23
+ font-size: 1.15rem;
24
+ position: absolute;
25
+ text-align: center;
26
+ line-height: 44px;
27
+ background: #eee;
28
+ border-radius: 50%;
29
+ transform: translateY(-50%);
30
+ transition: transform 0.1s linear;
31
+ }
32
+
33
+ .inforgraphics_section .wrapper i:active {
34
+ transform: translateY(-50%) scale(0.9);
35
+ }
36
+
37
+ .inforgraphics_section .wrapper i:hover {
38
+ background: #f2f2f2;
39
+ }
40
+
41
+ .inforgraphics_section .wrapper i:first-child {
42
+ left: 0px;
43
+ display: none;
44
+ z-index: 999;
45
+ }
46
+
47
+ .inforgraphics_section .wrapper i:last-child {
48
+ right: 0px;
49
+ }
50
+
51
+ .carousel {
52
+ display: flex;
53
+ max-width: 700px;
54
+ overflow-x: scroll;
55
+ scroll-snap-type: x mandatory;
56
+ scroll-behavior: smooth;
57
+ }
58
+
59
+ .carousel-inner {
60
+ display: flex;
61
+ flex-wrap: nowrap;
62
+ }
63
+
64
+ .slide {
65
+ flex: 0 0 calc(100% / 3);
66
+ scroll-snap-align: start;
67
+ padding: 20px;
68
+ display: flex;
69
+ flex-direction: column;
70
+ align-items: center;
71
+ justify-content: center;
72
+ }
73
+
74
+ .carousel img {
75
+ object-fit: contain;
76
+
77
+ height: auto;
78
+ border-radius: 8px;
79
+ }
80
+
81
+ .carousel-inner p {
82
+ text-align: center;
83
+ margin: 10px 0;
84
+ font-size: 14px;
85
+ white-space: normal;
86
+ word-wrap: break-word;
87
+ }
88
+
89
+ @media screen and (max-width: 768px) {
90
+ .inforgraphics_section .wrapper {
91
+ max-width: 100%;
92
+ }
93
+
94
+ .carousel-inner p {
95
+ font-size: 20px;
96
+ }
97
+
98
+ .inforgraphics_section .wrapper i:first-child {
99
+ left: 0;
100
+ /* margin-left: 14px; */
101
+ z-index: 99;
102
+ }
103
+
104
+ .inforgraphics_section .wrapper i:last-child {
105
+ right: 0;
106
+ z-index: 99;
107
+ display: block !important;
108
+ }
109
+
110
+ .carousel {
111
+ overflow-x: hidden;
112
+ }
113
+
114
+ .slide {
115
+ flex: 0 0 100%;
116
+ margin-right: 0;
117
+ }
118
+ }
119
+ </style>
120
+
121
+ <div class="inforgraphics_section">
122
+ <h3 class="text-center w-100 mb-5"><b>Other useful information</b></h3>
123
+ <div class="wrapper">
124
+ <i id="left" class="fas fa-angle-left"></i>
125
+ <div class="carousel">
126
+ <div class="carousel-inner">
127
+ {%- if homeData.infographics -%} {% for item in homeData.infographics %}
128
+ <div class="slide">
129
+ <img
130
+ loading="lazy"
131
+ src="{{ item.image }}"
132
+ alt="img"
133
+ draggable="false"
134
+ />
135
+ <p class="infographic-desc">{{ item.description | capitalize }}</p>
136
+ </div>
137
+ {% endfor %} {%- else -%} {% for item in featureData.infographics %}
138
+ <div class="slide">
139
+ <img
140
+ loading="lazy"
141
+ src="{{ item.image }}"
142
+ alt="img"
143
+ draggable="false"
144
+ />
145
+ <p class="infographic-desc">{{ item.description | capitalize }}</p>
146
+ </div>
147
+ {% endfor %} {%- endif -%}
148
+ </div>
149
+ </div>
150
+ <i id="right" class="fas fa-angle-right"></i>
151
+ </div>
152
+ </div>
153
+
154
+ <script>
155
+ const carousel = document.querySelector(".carousel-inner"),
156
+ firstImg = carousel.querySelectorAll("img")[0],
157
+ arrowIcons = document.querySelectorAll(".wrapper i");
158
+
159
+ const numImages = carousel.querySelectorAll("img").length;
160
+ const isMobile = window.matchMedia("(max-width: 767px)").matches; // Check if screen width is less than or equal to 767px
161
+
162
+ if (numImages > 3) {
163
+ arrowIcons[1].style.display = "block";
164
+ } else {
165
+ // arrowIcons[0].style.display = "none";
166
+ // arrowIcons[1].style.display = "none";
167
+ }
168
+
169
+ let isDragStart = false,
170
+ isDragging = false,
171
+ prevPageX,
172
+ prevScrollLeft,
173
+ positionDiff;
174
+ const showHideIcons = () => {
175
+ let scrollWidth = carousel.scrollWidth - carousel.clientWidth; // getting max scrollable width
176
+ arrowIcons[0].style.display = carousel.scrollLeft == 0 ? "none" : "block";
177
+ arrowIcons[1].style.display =
178
+ carousel.scrollLeft == scrollWidth ? "none" : "block";
179
+ };
180
+
181
+ arrowIcons.forEach((icon) => {
182
+ icon.addEventListener("click", () => {
183
+ let firstImgWidth = firstImg.clientWidth + 40;
184
+ const scrollAmount = icon.id === "left" ? -firstImgWidth : firstImgWidth;
185
+ carousel.scrollBy({
186
+ left: "100vw",
187
+ behavior: "smooth",
188
+ });
189
+ setTimeout(() => showHideIcons(), 60); // calling showHideIcons after 60ms
190
+ });
191
+ });
192
+
193
+ // const autoSlide = () => {
194
+ // // if there is no image left to scroll then return from here
195
+ // if (carousel.scrollLeft - (carousel.scrollWidth - carousel.clientWidth) > -1 || carousel.scrollLeft <= 0) return;
196
+
197
+ // positionDiff = Math.abs(positionDiff); // making positionDiff value to positive
198
+ // let firstImgWidth = firstImg.clientWidth + 14;
199
+ // // getting difference value that needs to add or reduce from carousel left to take middle img center
200
+ // let valDifference = firstImgWidth - positionDiff;
201
+
202
+ // if (carousel.scrollLeft > prevScrollLeft) { // if user is scrolling to the right
203
+ // return carousel.scrollLeft += positionDiff > firstImgWidth / 3 ? valDifference : -positionDiff;
204
+ // }
205
+ // // if user is scrolling to the left
206
+ // carousel.scrollLeft -= positionDiff > firstImgWidth / 3 ? valDifference : -positionDiff;
207
+ // }
208
+
209
+ // const dragStart = (e) => {
210
+ // // updatating global variables value on mouse down event
211
+ // isDragStart = true;
212
+ // prevPageX = e.pageX || e.touches[0].pageX;
213
+ // prevScrollLeft = carousel.scrollLeft;
214
+ // }
215
+
216
+ // const dragging = (e) => {
217
+ // // scrolling images/carousel to left according to mouse pointer
218
+ // if (!isDragStart) return;
219
+ // e.preventDefault();
220
+ // isDragging = true;
221
+ // carousel.classList.add("dragging");
222
+ // positionDiff = (e.pageX || e.touches[0].pageX) - prevPageX;
223
+ // carousel.scrollLeft = prevScrollLeft - positionDiff;
224
+ // showHideIcons();
225
+ // }
226
+
227
+ // const dragStop = () => {
228
+ // isDragStart = false;
229
+ // carousel.classList.remove("dragging");
230
+
231
+ // if (!isDragging) return;
232
+ // isDragging = false;
233
+ // autoSlide();
234
+ // }
235
+
236
+ // carousel.addEventListener("mousedown", dragStart);
237
+ // carousel.addEventListener("touchstart", dragStart);
238
+
239
+ // document.addEventListener("mousemove", dragging);
240
+ // carousel.addEventListener("touchmove", dragging);
241
+
242
+ // document.addEventListener("mouseup", dragStop);
243
+ // carousel.addEventListener("touchend", dragStop);
244
+ </script>
@@ -1,47 +1,64 @@
1
- {%- include languages/languages.html -%} {%- if page.nointernationalization -%}
2
- <div></div>
3
- {%- elsif site.internationalizationall -%}
4
- <div class="container-fluid int-section">
5
- <div class="d-flex justify-content-center mt-1">
6
- <div>Available in</div>
7
- </div>
8
- <div class="lang-container">
9
- {%- assign currentPermalink = page.permalink -%} {%- assign pageLang =
10
- page.lang -%} {%- for i in matchurls -%} {%- for checklang in site.pages -%}
11
- {%- assign linkToCheck ="/" |append: i|append:currentPermalink -%} {%- if
12
- pageLang !="en" -%} {%- assign stringToReplace = "/"|append: pageLang-%}
13
- {%-assign linkToCheck = linkToCheck | replace: stringToReplace, ""%}
14
- {%-endif-%} {%- if checklang.permalink == linkToCheck -%} {%- assign
15
- languagetext = [i]-%}
16
-
17
- <a class="m-2 languageLinks" href="{{ checklang.permalink }}">
18
- {%- if languagetext[0]==page.lang -%} English {%- else -%} {{
19
- languagetext[1] }} {%- endif -%}
20
- </a>
21
-
22
- {%- endif -%} {%- endfor -%} {%- endfor -%}
23
- </div>
24
- </div>
25
-
26
- {%- endif -%}
27
- <style>
28
- .lang-container {
29
- display: grid;
30
- grid-template-columns: auto auto auto auto;
31
- padding: 10px;
32
- }
33
- .languageLinks {
34
- text-align: center;
35
- text-decoration: none;
36
- display: inline-block;
37
- color: #6b6b6b;
38
- font-size: 14px;
39
- font-weight: 500;
40
- line-height: 18px;
41
- }
42
- .int-section {
43
- padding: 10px;
44
- background-color: white;
45
- border-top: 1px solid rgb(148, 148, 148);
46
- }
47
- </style>
1
+ {%- include languages/languages.html -%} {%- if page.nointernationalization -%}
2
+ <div></div>
3
+ {%- elsif site.internationalizationall -%}
4
+
5
+ <div class="internationalization-section">
6
+ <div class="row">
7
+ <div class="col-md-11 mx-auto">
8
+ <div class="d-flex justify-content-center mt-1">
9
+ <h3>Available in</h3>
10
+ </div>
11
+ <div class="internationalization-languages">
12
+ {%- for item in matchurls -%} {%- if item != 'zh-TW' -%} {%- if item ==
13
+ 'en'-%} {%- if dataFile.htmlLangAtt == item -%}
14
+
15
+ <a
16
+ class="active-lang internationalization-language-drop-down-item font-weight-bold"
17
+ href="{{ page.permalink}}"
18
+ >English <i class="fas fa-check ml-auto"></i>
19
+ </a>
20
+
21
+ {%- else -%} {%- if dataFile.features -%}
22
+ <a class="internationalization-language-drop-down-item" href="/">English</a>
23
+ {%- else -%}
24
+ <a
25
+ class="internationalization-language-drop-down-item"
26
+ href="/{{ page.permalink | split: '/' | last}}"
27
+ >English
28
+ </a>
29
+ {%- endif -%} {%- endif -%} {%- else -%} {%- if dataFile.htmlLangAtt == item
30
+ -%} < > {%- if page.permalink | split: '/' | last != item -%}
31
+ <a
32
+ class="internationalization-language-drop-down-item font-weight-bold active-lang"
33
+ href="{{ page.permalink}}"
34
+ >{{[item][1]}}
35
+ <i class="fas fa-check ml-auto"></i>
36
+ </a>
37
+ {%- else -%}
38
+ <a class="active-lang" href="/{{item}}"
39
+ >{{[item][1]}}
40
+ <i class="fas fa-check ml-auto"></i>
41
+ </a>
42
+ {%- endif -%} {%- else -%} {%- if page.permalink | split: '/' | last != item
43
+ -%} {%- if dataFile.features -%}
44
+ <a class="internationalization-language-drop-down-item" href="/{{item}}">{{[item][1]}} </a>
45
+ {%- else -%}
46
+ <a
47
+ class="internationalization-language-drop-down-item"
48
+ href="/{{item}}/{{ page.permalink | split: '/' | last}}"
49
+ >{{[item][1]}}
50
+ </a>
51
+ {%- endif -%} {%- else -%}
52
+ <a class="internationalization-language-drop-down-item" href="/{{item}}">{{[item][1]}} </a>
53
+ {%- endif -%} {%- endif -%} {%- endif -%} {%- endif -%} {%- endfor -%}
54
+ </ul>
55
+ </div>
56
+ </div>
57
+ </div>
58
+
59
+ </div>
60
+
61
+
62
+
63
+ {%- endif -%}
64
+