PageSourceSearch

https://badungkab.go.id/kab/dokumen-ipkd

html badungkab.go.id collected 2026-10-01 11:53:31 UTC 126,562 bytes, 2,711 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3    <!--begin::Head-->
4    <head>
5    <title>Dokumen IPKD | Kab Badung</title>
6<meta name="description" content="Dokumen IPKD">
7
8<meta property="og:url" content="https://badungkab.go.id/kab/dokumen-ipkd" />
9<meta property="og:type" content="website" />
10<meta property="og:title" content="Dokumen IPKD" />
11<meta property="og:description" content="Dokumen IPKD" />
12<meta property="og:image" itemprop="image" content="https://badungkab.go.id/badung.png" />
13
14    
15  <!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 66 bytes, lines 15-16
15
16  <script async src="https://www.googletagmanager.com/gtag/js?id=
16G-PDE339F4Y9
vendor: 14 bytes, lines 16-17
16"></script>
17  
17<script>
18    window.dataLayer = window.dataLayer || [];
19    function gtag(){dataLayer.push(arguments);}
20    gtag('js', new Date());
21
22    gtag('config', 'G-PDE339F4Y9', 'auto');
23  </script>
23
24
25    <meta charset="UTF-8">
26    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
27    <meta name="author" content="">
28    <meta name="description" content="Website resmi pemerintah kabupaten Badung, Bali. Terdapat informasi daerah, pemerintahan, forum diskusi dan berita">
29    <meta name="keyword" content="informasi, terkini, terlengkap, badung, bali, dewata, wisata, info, pemerintah, egov, egovernment,indonesia,bank data,berita daerah denpasar,directory,aspirasi, gis">
30    <meta name="Diskominfo Badung" content="">
31    <link rel="preconnect" href="https://fonts.gstatic.com">
32    <link href="https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900&display=swap" rel="stylesheet">
33
34    <title>Pemerintah Kabupaten Badung</title>
35    <!-- favicon -->
36    <link rel="apple-touch-icon" sizes="57x57" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/apple-icon-57x57.png">
37    <link rel="apple-touch-icon" sizes="60x60" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/apple-icon-60x60.png">
38    <link rel="apple-touch-icon" sizes="72x72" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/apple-icon-72x72.png">
39    <link rel="apple-touch-icon" sizes="76x76" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/apple-icon-76x76.png">
40    <link rel="apple-touch-icon" sizes="114x114" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/apple-icon-114x114.png">
41    <link rel="apple-touch-icon" sizes="120x120" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/apple-icon-120x120.png">
42    <link rel="apple-touch-icon" sizes="144x144" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/apple-icon-144x144.png">
43    <link rel="apple-touch-icon" sizes="152x152" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/apple-icon-152x152.png">
44    <link rel="apple-touch-icon" sizes="180x180" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/apple-icon-180x180.png">
45    <link rel="icon" type="image/png" sizes="192x192"  href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/android-icon-192x192.png">
46    <link rel="icon" type="image/png" sizes="32x32" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/favicon-32x32.png">
47    <link rel="icon" type="image/png" sizes="96x96" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/favicon-96x96.png">
48    <link rel="icon" type="image/png" sizes="16x16" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/favicon-16x16.png">
49    <link rel="manifest" href="https://badungkab.go.id/theme/harmonigov/assets/images/favicon/manifest.json">
50    <!-- Bootstrap core CSS -->
51    
52    <link rel="stylesheet" href="https://badungkab.go.id/theme/harmonigov/assets/css/bootstrap.min.css">
53    
54
55    <!-- Additional CSS Files -->
56    <link rel="stylesheet" href="https://badungkab.go.id/theme/harmonigov/assets/css/fontawesome.css">
57    <link rel="stylesheet" href="https://badungkab.go.id/theme/harmonigov/assets/css/template.css">
58    <link rel="stylesheet" href="https://badungkab.go.id/theme/harmonigov/assets/css/animated.css">
59    <link rel="stylesheet" href="https://badungkab.go.id/theme/harmonigov/assets/css/owl.css">
60    <!-- style custom -->
61    <link rel="stylesheet" href="https://badungkab.go.id/theme/harmonigov/assets/css/style.custom.css">
62          </head>    <!--end::Head-->
63    <body id="content">
64        <div style="overflow: hidden">
65            <!-- ***** Preloader Start ***** -->
66            <!-- ***** Preloader Start ***** -->
67  
68  <!-- ***** Preloader End ***** -->
69  <div id="js-preloader" class="js-preloader">
70    <div class="preloader-inner">
71      <div class="loader"></div>
72    </div>
73  </div>
74<!-- ***** Preloader End ***** -->
75<style>
76  .loader {
77    width: 48px;
78    height: 48px;
79    margin: auto;
80    position: relative;
81  }
82
83  .loader:before {
84    content: '';
85    width: 48px;
86    height: 5px;
87    background: #f0808050;
88    position: absolute;
89    top: 60px;
90    left: 0;
91    border-radius: 50%;
92    animation: shadow324 0.5s linear infinite;
93  }
94
95  .loader:after {
96    content: '';
97    width: 100%;
98    height: 100%;
99    background: #d80606;
100    position: absolute;
101    top: 0;
102    left: 0;
103    border-radius: 4px;
104    animation: jump7456 0.5s linear infinite;
105  }
106
107  @keyframes  jump7456 {
108    15% {
109      border-bottom-right-radius: 3px;
110    }
111
112    25% {
113      transform: translateY(9px) rotate(22.5deg);
114    }
115
116    50% {
117      transform: translateY(18px) scale(1, .9) rotate(45deg);
118      border-bottom-right-radius: 40px;
119    }
120
121    75% {
122      transform: translateY(9px) rotate(67.5deg);
123    }
124
125    100% {
126      transform: translateY(0) rotate(90deg);
127    }
128  }
129
130  @keyframes  shadow324 {
131
132    0%,
133      100% {
134      transform: scale(1, 1);
135    }
136
137    50% {
138      transform: scale(1.2, 1);
139    }
140  }
141</style>            <!-- ***** Preloader End ***** -->
142            <!-- ***** Header Area Start ***** -->
143            <!-- ***** Header Area Start ***** -->
144  <header class="header-area header-sticky wow slideInDown" data-wow-duration="0.75s" data-wow-delay="0s">
145    <div class="container">
146      <div class="row">
147        <div class="col-12">
148          <nav class="main-nav">
149            <!-- ***** Logo Start ***** -->
150            <a href="https://badungkab.go.id/kab" class="logo">
151              <img src="https://badungkab.go.id/theme/harmonigov/assets/images/logo/logo.png" alt="Logo" onmouseover="return speach('Logo Pemerintah Kabupaten Badung',0)">
152            </a>
153            <!-- ***** Logo End ***** -->
154            <!-- ***** Menu Start ***** -->
155            <ul class="nav">
156                                                <li class="scroll-to-section"><a href="https://badungkab.go.id/kab" class="">beranda</a></li>
157                                                                <li class="scroll-to-section nav-item dropdown">
158                    <a href="#" class="nav-link-item dropdown-toggle" data-bs-toggle="dropdown">profile</a>
159                    <div class="dropdown-menu">
160                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/sejarah">Sejarah</a>
161                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/visimisi">Visi dan Misi</a>
162                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/profil-kepala-daerah">Profil Kepala Daerah</a>
163                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/lhkpn-pimpinan">LHKPN Pimpinan</a>
164                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/unggulan">Sektor Unggulan</a>
165                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/skpd">Organisasi / SKPD</a>
166                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/legislatif">Legislatif</a>
167                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/bupati">Bupati dari Masa ke Masa</a>
168                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/tradisional">Lembaga Tradisional</a>
169                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/mangupura">Sejarah Mangupura</a>
170                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/eksekutif">Eksekutif</a>
171                                          </div>
172                  </li>
173                                                                <li class="scroll-to-section"><a href="https://www.lapor.go.id" class="">lapor! sp4n</a></li>
174                                                                <li class="scroll-to-section"><a href="https://bpkad.badungkab.go.id/beranda" class="">transparansi daerah</a></li>
175                                                                <li class="scroll-to-section nav-item dropdown">
176                    <a href="#" class="nav-link-item dropdown-toggle" data-bs-toggle="dropdown">informasi</a>
177                    <div class="dropdown-menu">
178                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/berita">Berita</a>
179                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/artikel">Artikel</a>
180                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/pengumuman">Pengumuman</a>
181                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/unduh-dokumen">Unduh Dokumen</a>
182                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/dokumen-ipkd">Dokumen IPKD</a>
183                                                <a class="dropdown-item" href="https://badungkab.go.id/kab/agenda-211007113825">Agenda</a>
184                                                <a class="dropdown-item" href="https://stageof-bali.bmkg.go.id/infoMKG/Wilayah/kotkab/Badung">BMKG Stasiun Geofisika Denpasar</a>
185                                          </div>
186                  </li>
187                                                                <li class="scroll-to-section"><a href="http://jdih.badungkab.go.id/" class="">produk hukum</a></li>
188                                                                <li class="scroll-to-section nav-item dropdown">
189                    <a href="#" class="nav-link-item dropdown-toggle" data-bs-toggle="dropdown">galeri</a>
190                    <div class="dropdown-menu">
191                                                <a class="dropdown-item" href="/kab/video">Video</a>
192                                                <a class="dropdown-item" href="/kab/foto">Foto</a>
193                                          </div>
194                  </li>
195                                                                <li class="scroll-to-section nav-item dropdown">
196                    <a href="#" class="nav-link-item dropdown-toggle" data-bs-toggle="dropdown">kpk</a>
197                    <div class="dropdown-menu">
198                                                <a class="dropdown-item" href="https://www.kpk.go.id/id/">KPK</a>
199                                                <a class="dropdown-item" href="https://elhkpn.kpk.go.id/portal/user/pengumuman_lhkpn/VEhoSEsxcEJVRGxLYVhsSk5XMUxNMVJ4UWpGVFdqVXdMMmhhZW5WVVIwODNORmQwZVhaNk16Rk9VMDlCZWtOS1dHUklLelJOT1V0bk5XbHdWSEpUZGc9PQ==">LHKPN</a>
200                                          </div>
201                  </li>
202                                                                <li class="scroll-to-section"><a href="https://badungkab.go.id/kab/statistik" class="">statistik</a></li>
203                                            <!-- *****
204              <li class="scroll-to-section">
205                <button class="btn btn-danger navbar-btn voice-button" id="set_voice" style="display: none">
206                  
207                  <span id="voice_icon"><i class="fa fa-volume-up" aria-hidden="true"></i>
208              </button>
209              <style>
210                .voice-button {
211                  background-color: #dc3545;
212                  color: #fff;
213                  border: none;
214                  border-radius: 5px;
215                  transition: all 0.2s ease-in-out;
216                  /* display: flex; */
217                  align-items: center;
218                  justify-content: center;
219                  position: relative;
220                  padding: 4px 8px 4px 8px!important;
221                }
222              
223                .play-icon {
224                  width: 24px;
225                  height: 24px;
226                  fill: #fff;
227                  margin-right: 10px;
228                }
229                .voice-button:hover {
230                  background-color: #2f3640;
231                  color: #ff7979;
232                  box-shadow: 2px 2px 20px #2f3640;
233                }
234              </style>
235              </li> ***** -->
236            </ul>        
237            <a class="menu-trigger">
238                <span>Menu</span>
239            </a>
240 
241            <!-- ***** Menu End ***** -->
242          </nav>
243
244        </div>
245      </div>
246    </div>
247  </header>
248  <!-- ***** Header Area End ***** -->            <!-- ***** Header Area End ***** -->        
249              <div class="main-banner wow fadeIn" id="top" data-wow-duration="1s" data-wow-delay="0.5s">
250    <div class="left-content header-text wow fadeInLeft" data-wow-duration="1s" data-wow-delay="1s">
251    </div>
252</div>  
253                  <!-- ***** Header Area End ***** -->
254  <div id="content" class="page-content section">
255   <div class="container">
256     <div class="row">
257       <div class="col-lg-6 wow fadeInDown" data-wow-duration="1s" data-wow-delay="0.25s">
258         <div class="section-heading" style="margin-bottom: 50px;">
259           <h2 style="color: #f2163e;" class="speech-title">Dokumen IPKD</h2>
260         </div>
261       </div>
262     </div>
263     <div class="row">
264       <div class="col-lg-8 wow fadeInUp" data-wow-duration="1s" data-wow-delay="0.25s">
265           <div class="right-list">
266                        <span class="speech-content"><h1>1.&nbsp;<a href="https://badungkab.go.id/kab/dokumen-ipkd-2021">IPKD Tahun 2021</a></h1>
267
268<h1>2.&nbsp;<a href="https://badungkab.go.id/kab/dokumen-ipkd-2022">IPKD Tahun 2022</a></h1>
269
270<h1>3.&nbsp;<a href="https://badungkab.go.id/kab/dokumen-ipkd-2023">IPKD Tahun 2023</a></h1>
271
272<h1>4.&nbsp;<a href="https://badungkab.go.id/kab/dokumen-ipkd-2024">IPKD Tahun 2024</a></h1>
273
274<h1>5.&nbsp;<a href="https://badungkab.go.id/kab/dokumen-ipkd-2025">IPKD Tahun 2025</a></h1>
275
276<p>&nbsp;</p>
277
278<p>&nbsp;</p>
279
280<p>&nbsp;</p></span>
281           </div>
282       </div>
283       <style>
284   .post-cat{
285      padding-bottom: 1px;
286      padding-top: 1px;
287      padding-right: 7px;
288      padding-left: 7px;
289      margin-right: 10px;
290      font-weight: 400;
291      color: #fff!important;
292      background-color: #2C65E1;
293      border-radius: 3px;
294      font-size: 11px!important;
295   }
296   .info-title{
297      font-weight: 500;
298   }
299   .position-relative {
300      position: relative!important;
301   }
302   .widget-header-left h4 {
303      border-bottom: 1px solid #dae0e5;
304      padding-bottom: 10px;
305      position: relative;
306   }
307   .widget-header-left h4::after {
308      content: "";
309      background: #f2163e;
310      height: 4px;
311      width: 70px;
312      position: absolute;
313      bottom: 0;
314      left: 0;
315      border-radius: 5px;
316   }
317   .mb-30 {
318      margin-bottom: 30px!important;
319   }
320</style>
321<div class="col-lg-4 wow fadeInUp" data-wow-duration="1s" data-wow-delay="0.25s">
322   <div class="right-list left-list box-left">
323      <div class="left-content align-self-center position-relative widget-header-left mb-30">
324        <h4 class="mt-5 mb-30"><img src="https://badungkab.go.id/theme/harmonigov/assets/images/icon/text-to-speech.png" style="width: 40px;height:40px"> Berita Terkini</h4>
325      </div>
326     <div class="box-content column">    
327          
328                        
329            <a href="https://badungkab.go.id/kab/berita/75588-meutya-hafid-splp-komdigi-proses-19-8-juta-transaksi-perlinsos-digital-layani-5-4-juta-kk">
330               <div class="info news">
331               <div class="banner-img">
332                  <div class="info-img">
333                     <img src="https://badungkab.go.id/storage/kab/image/whatsapp-image-2026-10-01-at-101713-20261001141126-jWW7c.jpeg">
334                  </div>
335               </div>
336               <div class="info-content">
337                  <span class="post-cat text-primary">Fuji Rahmawati, S.Kom, M.A.P</span>
338                     <h4 class="info-title" title="Meutya Hafid: SPLP Komdigi Proses 19,8 Juta Transaksi Perlinsos Digital, Layani 5,4 Juta KK">Meutya Hafid: SPLP Komdigi Proses 19,8 Juta Transa...</h4>
339                     <div class="info-attribute d-flex">
340                     <ul class="list-inline small">
341                           <li>
342                                                            <span>5 jam yang lalu</span>
343                                                         </li>
344                     </ul>
345                     </div>
346               </div>
347               </div>
348            </a>     
349                        
350            <a href="https://badungkab.go.id/kab/berita/75582-petang-tertinggi-capai-72-persen-dinsos-badung-pacu-pendataan-perlinsos">
351               <div class="info news">
352               <div class="banner-img">
353                  <div class="info-img">
354                     <img src="https://badungkab.go.id/storage/kab/image/whatsapp-image-2026-10-01-at-112618-20261001113137-kQ27O.jpeg">
355                  </div>
356               </div>
357               <div class="info-content">
358                  <span class="post-cat text-primary">I NYOMAN GEDE ARDI YANA PUTRA, S.KOM</span>
359                     <h4 class="info-title" title="Petang Tertinggi Capai 72 Persen, Dinsos Badung Pacu Pendataan Perlinsos">Petang Tertinggi Capai 72 Persen, Dinsos Badung Pa...</h4>
360                     <div class="info-attribute d-flex">
361                     <ul class="list-inline small">
362                           <li>
363                                                            <span>8 jam yang lalu</span>
364                                                         </li>
365                     </ul>
366                     </div>
367               </div>
368               </div>
369            </a>     
370                        
371            <a href="https://badungkab.go.id/kab/berita/75571-tandatangani-prasasti-pura-batan-ancak-tibubeneng-bupati-badung-apresiasi-semangat-gotong-royong-krama">
372               <div class="info news">
373               <div class="banner-img">
374                  <div class="info-img">
375                     <img src="https://badungkab.go.id/storage/kab/image/pura-batan-ancak-tibubeneng-4-20261001085326-upKSL.jpeg">
376                  </div>
377               </div>
378               <div class="info-content">
379                  <span class="post-cat text-primary">I NYOMAN GEDE ARDI YANA PUTRA, S.KOM</span>
380                     <h4 class="info-title" title="Tandatangani Prasasti Pura Batan Ancak Tibubeneng  Bupati Badung Apresiasi Semangat Gotong Royong Krama">Tandatangani Prasasti Pura Batan Ancak Tibubeneng ...</h4>
381                     <div class="info-attribute d-flex">
382                     <ul class="list-inline small">
383                           <li>
384                                                            <span>11 jam yang lalu</span>
385                                                         </li>
386                     </ul>
387                     </div>
388               </div>
389               </div>
390            </a>     
391                        
392            <a href="https://badungkab.go.id/kab/berita/75570-wabup-pimpin-rakor-penanggulangan-kemiskinan-pemkab-badung-optimis-capai-target-penurunan-kemiskinan">
393               <div class="info news">
394               <div class="banner-img">
395                  <div class="info-img">
396                     <img src="https://badungkab.go.id/storage/kab/image/rakor-penanggulangan-kemiskinan-5-20261001085253-u5wB0.jpeg">
397                  </div>
398               </div>
399               <div class="info-content">
400                  <span class="post-cat text-primary">I NYOMAN GEDE ARDI YANA PUTRA, S.KOM</span>
401                     <h4 class="info-title" title="Wabup Pimpin Rakor Penanggulangan Kemiskinan  Pemkab Badung Optimis Capai Target Penurunan Kemiskinan">Wabup Pimpin Rakor Penanggulangan Kemiskinan  Pemk...</h4>
402                     <div class="info-attribute d-flex">
403                     <ul class="list-inline small">
404                           <li>
405                                                            <span>11 jam yang lalu</span>
406                                                         </li>
407                     </ul>
408                     </div>
409               </div>
410               </div>
411            </a>     
412                        
413            <a href="https://badungkab.go.id/kab/berita/75569-dekranasda-badung-sukses-promosikan-produk-unggulan-di-kriyanusa-2026">
414               <div class="info news">
415               <div class="banner-img">
416                  <div class="info-img">
417                     <img src="https://badungkab.go.id/storage/kab/image/kriyanusa-2026-5-20261001085202-m0O8M.jpeg">
418                  </div>
419               </div>
420               <div class="info-content">
421                  <span class="post-cat text-primary">I NYOMAN GEDE ARDI YANA PUTRA, S.KOM</span>
422                     <h4 class="info-title" title="Dekranasda Badung Sukses Promosikan Produk Unggulan di Kriyanusa 2026">Dekranasda Badung Sukses Promosikan Produk Unggula...</h4>
423                     <div class="info-attribute d-flex">
424                     <ul class="list-inline small">
425                           <li>
426                                                            <span>11 jam yang lalu</span>
427                                                         </li>
428                     </ul>
429                     </div>
430               </div>
431               </div>
432            </a>     
433                    </div>
434   </div>
435   <div class="right-list left-list box-left" style="margin-top: 30px;">
436      <div class="left-content align-self-center position-relative widget-header-left mb-30">
437         <h4 class="mt-5 mb-30"><img src="https://badungkab.go.id/theme/harmonigov/assets/images/icon/megaphone.png" style="width: 40px;height:40px"> Pengumuman</h4>
438      </div>
439     <ul>
440                     <li>
441               <div class="left-content align-self-center">
442                  <span><a href="https://badungkab.go.id/kab/pengumuman/75548-pengumuman-tentang-pemberitahuan-mempelajari-berkas-banding-inzage-"><h4>PENGUMUMAN TENTANG PEMBERITAHUAN MEMPELAJARI BERKAS BANDING (INZAGE)</h4></a>
443                                          <span>1 hari yang lalu</span>
444                                    </div>
445            </li>
446                     <li>
447               <div class="left-content align-self-center">
448                  <span><a href="https://badungkab.go.id/kab/pengumuman/75547-pengumuman-tentang-pemberitahuan-memori-banding-elektronik"><h4>PENGUMUMAN TENTANG PEMBERITAHUAN MEMORI BANDING ELEKTRONIK</h4></a>
449                                          <span>1 hari yang lalu</span>
450                                    </div>
451            </li>
452                     <li>
453               <div class="left-content align-self-center">
454                  <span><a href="https://badungkab.go.id/kab/pengumuman/68671-persyaratan-kelengkapan-administrasi-dan-tahapan-seleksi-dewas-perusahaan-umum-daerah-air-minum-tirta-mangutama-kabupaten-badung"><h4>PERSYARATAN, KELENGKAPAN ADMINISTRASI DAN TAHAPAN SELEKSI DEWAS PERUSAHAAN UMUM DAERAH AIR MINUM TIRTA MANGUTAMA KABUPATEN BADUNG</h4></a>
455                                          <span>Selasa, 20 Januari 2026 15:27 WITA</span>
456                                    </div>
457            </li>
458                     <li>
459               <div class="left-content align-self-center">
460                  <span><a href="https://badungkab.go.id/kab/pengumuman/68666-persyaratan-kelengkapan-administrasi-dan-tahapan-seleksi-direksi-umum-perusahaan-umum-daerah-air-minum-tirta-mangutama-kabupaten-badung"><h4>PERSYARATAN, KELENGKAPAN ADMINISTRASI DAN TAHAPAN SELEKSI DIREKSI UMUM PERUSAHAAN UMUM DAERAH AIR MINUM TIRTA MANGUTAMA KABUPATEN BADUNG</h4></a>
461                                          <span>Selasa, 20 Januari 2026 14:41 WITA</span>
462                                    </div>
463            </li>
464                     <li>
465               <div class="left-content align-self-center">
466                  <span><a href="https://badungkab.go.id/kab/pengumuman/67603-open-recruitmen-dewas-perumda-pasar-dan-pangan-mangu-giri-sedana-kabupaten-badung"><h4>Open Recruitment DEWAS Perumda Pasar dan Pangan Mangu Giri Sedana Kabupaten Badung</h4></a>
467                                          <span>Kamis, 27 November 2025 13:09 WITA</span>
468                                    </div>
469            </li>
470               
471     </ul>
472   </div>
473 </div>     </div>
474   </div>
475 </div>
476            
477            <!-- ***** footer  ***** -->
478            <style>
479    .survey-section{
480        background: #fc3540!important;
481    }
482    .btn-instagram {
483        background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
484    }
485    .position-relative {
486      position: relative!important;
487    }
488    .widget-header h2 {
489      border-bottom: 1px solid #dae0e5;
490      padding-bottom: 10px;
491      position: relative;
492      font-size: 23px;
493    }
494    .widget-header h2::after {
495      content: "";
496      background: #faf5f6;
497      height: 4px;
498      width: 70px;
499      position: absolute;
500      bottom: 0;
501      left: 0;
502      border-radius: 5px;
503    }
504    .mb-30 {
505      margin-bottom: 30px!important;
506    }
507</style>
508
509<div id="contact" class="contact-us section" style="margin-top: 0 !important;">
510    <div class="container">
511        <div class="row">
512                                        <style>
513    /* footer survei */
514.survey-section{
515    background: transparent;
516    padding: 0;
517}
518
519.survey-card{
520
521    background:linear-gradient(135deg,#0f4c81,#1976d2);
522
523    border-radius:20px;
524
525    padding:40px;
526
527    color:#fff;
528
529    box-shadow:0 15px 35px rgba(0,0,0,.15);
530
531    overflow:hidden;
532
533    position:relative;
534}
535
536.survey-card::before{
537
538    content:'';
539
540    position:absolute;
541
542    right:-70px;
543
544    top:-70px;
545
546    width:220px;
547
548    height:220px;
549
550    background:rgba(255,255,255,.08);
551
552    border-radius:50%;
553}
554
555.survey-content{
556
557    display:flex;
558
559    align-items:center;
560
561    gap:25px;
562}
563
564.survey-icon{
565
566    width:90px;
567
568    height:90px;
569
570    background:rgba(255,255,255,.18);
571
572    border-radius:50%;
573
574    display:flex;
575
576    align-items:center;
577
578    justify-content:center;
579
580    font-size:42px;
581
582    flex-shrink:0;
583}
584
585.survey-content h3{
586
587    color:#fff;
588
589    margin-bottom:12px;
590
591    font-weight:700;
592}
593
594.survey-content p{
595
596    color:rgba(255,255,255,.95);
597
598    margin-bottom:15px;
599
600    line-height:1.8;
601}
602
603.survey-rating{
604
605    font-size:22px;
606}
607
608.survey-rating span{
609
610    display:block;
611
612    font-size:14px;
613
614    margin-top:6px;
615
616    color:rgba(255,255,255,.9);
617}
618
619.btn-survey{
620
621    display:inline-flex;
622
623    align-items:center;
624
625    gap:10px;
626
627    background:#fff;
628
629    color:#0f4c81;
630
631    padding:15px 34px;
632
633    border-radius:50px;
634
635    font-weight:700;
636
637    font-size:17px;
638
639    transition:.3s;
640
641    text-decoration:none;
642
643    box-shadow:0 10px 25px rgba(0,0,0,.2);
644}
645
646.btn-survey:hover{
647
648    transform:translateY(-4px);
649
650    background:#FFD54F;
651
652    color:#333;
653}
654
655@media(max-width:768px){
656
657    .survey-content{
658
659        flex-direction:column;
660
661        text-align:center;
662    }
663
664    .survey-card{
665
666        padding:30px;
667    }
668
669}
670</style>
671
672<section class="survey-section wow fadeIn" data-wow-duration="0.5s" data-wow-delay="0.8s">
673    <div class="container">
674        <div class="survey-card">
675            <div class="row align-items-center">
676
677                <div class="col-lg-8">
678                    <div class="survey-content">
679                        <div class="survey-icon">
680                            <img src="https://badungkab.go.id/theme/feedback.png" alt="Survei Icon" class="img-fluid" style="max-width: 50px; height: auto;">
681                        </div>
682
683                        <div>
684                            <h3>Bagaimana Pengalaman Anda?</h3>
685
686                            <p>
687                                Pendapat Anda sangat berarti bagi kami.
688                                Mari berpartisipasi dalam
689                                <strong>Survei Kepuasan Layanan Website Pemerintah</strong>
690                                untuk membantu meningkatkan kualitas pelayanan
691                                Pemerintah Kabupaten Badung.
692                            </p>
693                        </div>
694                    </div>
695                </div>
696
697                <div class="col-lg-4 text-center text-lg-end mt-4 mt-lg-0">
698                    <div class="d-flex flex-column align-items-center align-items-lg-end gap-2">
699                        <a href="https://kabbadu.ng/survei-web-badung"
700                        class="btn-survey"
701                        style="
702                            width: 280px;
703                            min-height: 52px;
704                            display: flex;
705                            align-items: center;
706                            justify-content: center;
707                            gap: 8px;
708                            margin-bottom: 4px;
709                        "
710                        target="_blank">
711
712                            <svg xmlns="http://www.w3.org/2000/svg"
713                                width="22"
714                                height="22"
715                                viewBox="0 0 24 24"
716                                fill="none"
717                                stroke="currentColor"
718                                stroke-width="2"
719                                stroke-linecap="round"
720                                stroke-linejoin="round">
721                                <path d="M12 20h9"/>
722                                <path d="M16.5 3.5a2.12 2.12 0 1 1 3 3L7 19l-4 1 1-4 12.5-12.5z"/>
723                            </svg>
724
725                            <span>Isi Survei Kepuasaan</span>
726                        </a>
727
728                        <a href="https://skm.go.id/"
729                        class="btn-survey"
730                        style="
731                            width: 280px;
732                            min-height: 52px;
733                            display: flex;
734                            align-items: center;
735                            justify-content: center;
736                            gap: 8px;
737                        "
738                        target="_blank">
739                            <img src="https://badungkab.go.id/theme/panrb.png"
740                                alt="PANRB"
741                                style="
742                                    width: 55px;
743                                    height: auto;
744                                    object-fit: contain;
745                                ">
746                            <span>Isi SKM Online</span>
747                        </a>
748
749                    </div>
750                </div>
751            </div>
752        </div>
753    </div>
754</section>
755                    </div>
756      <div class="row">
757        <div class="col-lg-3 col-md-6">
758          <div class="align-self-center wow fadeInLeft" data-wow-duration="0.5s" data-wow-delay="0.25s">
759            <div class="section-heading widget-header position-relative mb-30">
760              <h2 class="mt-5 mb-30">TENTANG</h2>
761              <p>
762                <strong class="color-black">Pemerintah Kabupaten Badung</strong>
763              </p>
764              <p style="margin-bottom: 1.35em;">Ini adalah website resmi Pemerintah Kabupaten Badung, Bali, Indonesia.</p>
765              <p style="margin-bottom: 1.35em;">
766                  <strong class="color-black">Alamat</strong><br>
767                  Jl. Raya Sempidi, Mangupura, Badung, Bali.
768              </p>
769              <p style="margin-bottom: 1.35em;">
770                <strong class="color-black">Media Sosial</strong>
771              </p>
772              <div class="phone-info" style="margin-top: 0px!important;">
773                <div class="social-links">
774                                                                              <a href="https://www.facebook.com/pemkabbadung" target="_blank">
775                        <div id="" class="social-btn flex-center">
776                          <img src="https://badungkab.go.id/storage/kab/image/social_15707737.png" alt="Icon Media Sosial" style="max-width: 32px !important; height: 32px !important;margin-bottom: 0!important"><span>Pemerintah Kabupaten Badung</span>
777                        </div>
778                      </a>
779                                          <a href="https://x.com/PemkabBadung" target="_blank">
780                        <div id="" class="social-btn flex-center">
781                          <img src="https://badungkab.go.id/storage/kab/image/twitter_5968958.png" alt="Icon Media Sosial" style="max-width: 32px !important; height: 32px !important;margin-bottom: 0!important"><span>Pemkab Badung</span>
782                        </div>
783                      </a>
784                                          <a href="https://www.instagram.com/pemkabbadung" target="_blank">
785                        <div id="" class="social-btn flex-center">
786                          <img src="https://badungkab.go.id/storage/kab/image/instagram_2626270.png" alt="Icon Media Sosial" style="max-width: 32px !important; height: 32px !important;margin-bottom: 0!important"><span>pemkabbadung</span>
787                        </div>
788                      </a>
789                                          <a href="https://www.youtube.com/@PemkabBadungBali" target="_blank">
790                        <div id="" class="social-btn flex-center">
791                          <img src="https://badungkab.go.id/storage/kab/image/video_12942219.png" alt="Icon Media Sosial" style="max-width: 32px !important; height: 32px !important;margin-bottom: 0!important"><span>Pemkab Badung</span>
792                        </div>
793                      </a>
794                                          <a href="https://www.tiktok.com/@pemkabbadung" target="_blank">
795                        <div id="" class="social-btn flex-center">
796                          <img src="https://badungkab.go.id/storage/kab/image/tik-tok_3046121.png" alt="Icon Media Sosial" style="max-width: 32px !important; height: 32px !important;margin-bottom: 0!important"><span>pemkabbadung</span>
797                        </div>
798                      </a>
799                                                    </div>
800              <style>
801                @media  only screen and (max-width: 600px) {
802                  .social-links,.flex-center {
803                    justify-content: center!important;
804                  }
805                }
806                .social-links,.flex-center {
807                  display: flex;
808                  justify-content: left;
809                  align-items: center;
810                }
811                .social-btn {
812                  cursor: pointer;
813                  height: 48px;
814                  width: 48px;
815                  color: #333;
816                  border-radius: 10px;
817                  box-shadow: 0px 10px 10px rgba(0,0,0,0.1);
818                  background: white;
819                  margin: 0 5px 5px 0;
820                  transition: 0.3s;
821                  justify-content: center;
822                }
823                .social-btn svg {
824                  height: 28px;
825                  width: 28px;
826                }
827                .social-btn span {
828                  width: 0px;
829                  overflow: hidden;
830                  transition: 0.3s;
831                  text-align: center;
832                  font-size: 13px;
833                }
834                .social-btn:hover {
835                  width: 170px;
836                  border-radius: 5px;
837                }
838
839                .social-btn:hover span {
840                  padding: 2px;
841                  width: 100px;
842                  line-height: 1;
843                }
844                #twitter svg {
845                  fill: #1da1f2;
846                }
847
848                #linkedin svg {
849                  fill: #0e76a8;
850                }
851
852                #github {
853                  fill: #333;
854                }
855
856              </style>
857              </div>
858            </div>
859          </div>
860        </div>
861        <div class="col-lg-3 col-md-6">
862          <div class="align-self-center wow fadeInLeft" data-wow-duration="0.5s" data-wow-delay="0.25s">
863            <div class="section-heading widget-header position-relative mb-30">
864              <h2 class="mt-5 mb-30">INFORMASI</h2>
865              <ul>
866                                                                                                                                                                                                                                            <li><a href="https://badungkab.go.id/kab/berita"><p>Berita</p></a></li>
867                                              <li><a href="https://badungkab.go.id/kab/artikel"><p>Artikel</p></a></li>
868                                              <li><a href="https://badungkab.go.id/kab/pengumuman"><p>Pengumuman</p></a></li>
869                                              <li><a href="https://badungkab.go.id/kab/unduh-dokumen"><p>Unduh Dokumen</p></a></li>
870                                              <li><a href="https://badungkab.go.id/kab/dokumen-ipkd"><p>Dokumen IPKD</p></a></li>
871                                              <li><a href="https://badungkab.go.id/kab/agenda-211007113825"><p>
871Agenda</p></a></li>
872                                              <li><a href="https://stageof-bali.bmkg.go.id/infoMKG/Wilayah/kotkab/Badung"><p>BMKG Stasiun Geofisika Denpasar</p></a></li>
873                                                                                                                                                                                                                                  </ul>
874            </div>
875          </div>
876        </div>
877        <div class="col-lg-3 col-md-6">
878          <div class="align-self-center wow fadeInLeft" data-wow-duration="0.5s" data-wow-delay="0.25s">
879            <div class="section-heading widget-header position-relative mb-30">
880              <h2 class="mt-5 mb-30">KONTAK KAMI</h2>
881              <ul>
882                <li><p><i class="fa fa-map-marker fa-lg" aria-hidden="true"></i> Jl. Raya Sempidi, Mangupura, Badung, Bali.</p> </li>
883                
884                <li><p><i class="fa fa-envelope fa-lg" aria-hidden="true"></i> [email protected]</p></li>
885                <li><p><i class="fa fa-globe fa-lg" aria-hidden="true"></i> www.badungkab.go.id</p></li>
886              </ul>
887            </div>
888          </div>
889        </div>
890        <div class="col-lg-3 col-md-6">
891          <div class="align-self-center wow fadeInLeft" data-wow-duration="0.5s" data-wow-delay="0.25s">
892            <div class="section-heading widget-header position-relative mb-30">
893              <h2 class="mt-5 mb-30">FACEBOOK</h2>
894              <div onmouseover="return speach('Facebook fanspage pemerintah kabupaten badung')" class="fb-page fb_iframe_widget" data-href="https://www.facebook.com/pemkabbadung" data-width="400px" data-hide-cover="false" data-show-facepile="true" data-adapt-container-width="true" fb-xfbml-state="rendered" fb-iframe-plugin-query="adapt_container_width=true&amp;app_id=&amp;container_width=245&amp;hide_cover=false&amp;href=https%3A%2F%2Fwww.facebook.com%2Fpemkabbadung&amp;locale=id_ID&amp;sdk=joey&amp;show_facepile=true&amp;width=400px"><span style="vertical-align: bottom; width: 245px; height: 130px;"><iframe name="f239d48e73ff474" height="1000px" data-testid="fb:page Facebook Social Plugin" title="fb:page Facebook Social Plugin" frameborder="0" allowtransparency="true" allowfullscreen="true" scrolling="no" allow="encrypted-media" src="https://www.facebook.com/v3.3/plugins/page.php?adapt_container_width=true&amp;app_id=&amp;channel=https%3A%2F%2Fstaticxx.facebook.com%2Fx%2Fconnect%2Fxd_arbiter%2F%3Fversion%3D46%23cb%3Df1a968c7da60da4%26domain%3Dbadungkab.go.id%26is_canvas%3Dfalse%26origin%3Dhttps%253A%252F%252Fbadungkab.go.id%252Ffa9436a6c6148%26relation%3Dparent.parent&amp;container_width=245&amp;hide_cover=false&amp;href=https%3A%2F%2Fwww.facebook.com%2Fpemkabbadung&amp;locale=id_ID&amp;sdk=joey&amp;show_facepile=true&amp;width=400px" style="border: none; visibility: visible; width: 245px; height: 130px;" class=""></iframe></span></div>
895            </div>
896          </div>
897        </div>
898      </div>
899  </div>
900</div>
901<footer style="background-color: #182430;">
902  <div class="container">
903    <div class="row">
904      <div class="col-lg-12 wow fadeIn" data-wow-duration="1s" data-wow-delay="0.25s">
905        <p class="float-md-left font-small text-muted" style="float: left!important;">© 2026 <span style="color: #dad6d6">Pemerintah Kabupaten Badung</span> </p>
906        <p class="text-muted" style="float: right!important;">Oleh <a style="color: #dad6d6" href="https://diskominfo.badungkab.go.id/" target="_blank">Diskominfo Badung</a>
907      </div>
908    </div>
909  </div>
910</footer>
911            <!-- Scripts -->
912        </div>
913        <!-- Scripts -->
914  
914<script src="https://badungkab.go.id/theme/harmonigov/vendor/jquery/jquery.min.js"></script>
914
915  
915<script src="https://badungkab.go.id/theme/harmonigov/vendor/bootstrap/js/bootstrap.bundle.min.js"></script>
915
916  
916<script src="https://badungkab.go.id/theme/harmonigov/assets/js/owl-carousel.js"></script>
916
917  
917<script src="https://badungkab.go.id/theme/harmonigov/assets/js/animation.js"></script>
917
918  
918<script src="https://badungkab.go.id/theme/harmonigov/assets/js/imagesloaded.js"></script>
918
919  
919<script src="https://badungkab.go.id/theme/harmonigov/assets/js/template.custom.js"></script>
919
920
921  <div class="accessibility-menu-container">
922          <link rel="stylesheet" href="/vendor/font-awesome-4.7.0/css/font-awesome.min.css" crossorigin="anonymous">
923<style>
924  .accessibility-menu-container {
925    position: absolute;
926    top: 24%;
927    z-index: 1;
928  }
929  
930  .acce-container {
931    top: 27%;
932    left: 0px;
933    z-index: 98;
934    padding: 10px;
935    color: white;
936    text-align: center;
937    width: 50px
938  }
939
940  .speechx-status, i.fa.speechx {
941    color: white !important;
942  }
943
944  div.speechx img {
945    width: 55px;
946  }
947
948  div.speechx-status {
949    display: none;
950  }
951
952  .bg-custom {
953    background: rgb(237,178,60);
954    background: linear-gradient(180deg, rgba(237,178,60,1) 0%, rgba(251,125,3,1) 48%, rgba(247,27,5,1) 75%);
955    border-radius: 0px 20px 20px 0px;
956  }
957
958  @media  only screen and (max-width: 900px) {
959    .acce-container {
960      top: 20%;
961    }
962  }
963</style>
964
965<div class="acce-container speechx bg-custom">
966  <a href="javascript:void(0);" id="bicara" class="off speechx" onclick="sound(this)" title="Dengarkan Bacaan (SHIFT + F2)">
967    <div id="dynSvg">
968      <svg fill="#ffffff" version="1.1" id="Listening" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 128 128" xml:space="preserve"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <path id="_x34__1_" d="M39.6,108.1c-8.8,0-16-7.2-16-16c0-2.2,1.8-4,4-4s4,1.8,4,4c0,4.4,3.6,8,8,8c2.8,0,5.4-1.5,6.9-3.9 c0.6-1,1.4-2.8,2.3-4.7c1.7-3.8,3.6-8.1,6-11.2c1.9-2.5,4.7-5,7.4-7.5c2.7-2.5,5.8-5.4,6.8-7.2c2-3.5,3-7.4,3-11.4 c0-12.7-10.3-23-23-23s-23,10.3-23,23c0,2.2-1.8,4-4,4s-4-1.8-4-4c0-17.1,13.9-31,31-31c17.1,0,31,13.9,31,31 c0,5.4-1.4,10.7-4.1,15.4c-1.6,2.9-4.9,5.9-8.4,9.1c-2.4,2.3-5,4.6-6.5,6.5c-1.8,2.3-3.6,6.3-5,9.5c-1,2.2-1.8,4.1-2.7,5.6 C50.5,105.1,45.2,108.1,39.6,108.1z"></path> <path id="_x33__2_" d="M34,79.6c-2.2,0-4-1.8-4-4s1.8-4,4-4c2,0,3.7-1.6,3.7-3.7c0-2-1.6-3.7-3.7-3.7c-2.2,0-4-1.8-4-4v-6 c0-10.5,8.5-19,19-19s19,8.5,19,19c0,3.3-0.8,6.5-2.4,9.3c-0.1,0.1-0.1,0.2-0.2,0.3c-0.8,1.2-2.7,3-5.9,6l-1.2,1.1 c-1.6,1.5-4.2,1.4-5.7-0.2c-1.5-1.6-1.4-4.2,0.2-5.7L54,64c2.6-2.4,4.2-3.9,4.7-4.6c0.8-1.6,1.3-3.4,1.3-5.2c0-6.1-4.9-11-11-11 s-11,4.9-11,11v2.7c4.5,1.6,7.7,5.9,7.7,11C45.7,74.3,40.5,79.6,34,79.6z"></path> <path id="_x32__15_" d="M85,78.7c-0.6,0-1.2-0.2-1.7-0.5c-1.7-1-2.2-3.1-1.3-4.8c3.3-5.8,5.1-12.3,5.1-19c0-6.8-1.8-13.4-5.2-19.2 c-1-1.7-0.4-3.8,1.2-4.8c1.7-1,3.8-0.4,4.8,1.2c4.1,6.9,6.2,14.8,6.2,22.8c0,7.9-2.1,15.6-6,22.5C87.4,78.1,86.2,78.7,85,78.7z"></path> <path id="_x31__17_" d="M95.9,90.1c-0.8,0-1.5-0.2-2.2-0.7c-1.8-1.2-2.3-3.7-1.1-5.6c5.9-8.7,9-18.8,9-29.4 c0-10.6-3.2-20.9-9.2-29.6c-1.2-1.8-0.8-4.3,1-5.6c1.8-1.2,4.3-0.8,5.6,1c6.9,10.1,10.6,21.9,10.6,34.1c0,12.1-3.6,23.8-10.3,33.8 C98.4,89.5,97.1,90.1,95.9,90.1z"></path> </g></svg>
969    </div>
970  </a>
971</div>
972
973
974<script src="https://badungkab.go.id/theme/harmonigov/vendor/jquery/jquery.min.js"></script>
vendor: 1 bytes, line 974
974
975<script src="https://badungkab.go.id/theme/harmonigov/assets/js/speech_recognition.js"></script>
vendor: 1 bytes, line 975
975
976<script>
977  function elemToStr(elem)
978  {
979    var text = elem;
980    if ($(elem).length > 0) {
981      var text = $(elem).text();
982    }
983    if (text.length > 0) {
984      return text.replace(/<\/?[^>]+(>|$)/g, "");
985    }
986    return "";
987  }
988
989  function chunkStrKeepWord(input, len)
990  {
991    var curr = len;
992    var prev = 0;
993    output = [];
994    while (input[curr]) {
995        if (input[curr++] == ' ') {
996            output.push(input.substring(prev,curr));
997            prev = curr;
998            curr += len;
999        }
1000    }
1001    output.push(input.substr(prev));
1002    return output;
1003  }
1004
1005  function setCapsule(str)
1006  {
1007    $('#dynSvg').html('<svg fill="#ffffff" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <title>ear-slash</title> <path d="M20.592 23.441c-0.128-0.048-0.275-0.076-0.43-0.076-0.536 0-0.994 0.337-1.171 0.812l-0.003 0.009-0.102 0.299c-0.098 0.328-0.168 0.711-0.196 1.105l-0.001 0.018c-0.013 0.22-0.046 0.426-0.097 0.624l0.005-0.022c-0.083 0.282-0.177 0.522-0.288 0.752l0.013-0.029c-0.221 0.428-0.506 0.791-0.846 1.092l-0.004 0.003c-0.732 0.622-1.656 1.040-2.671 1.156l-0.023 0.002c-0.235 0.033-0.506 0.052-0.781 0.052-0.818 0-1.597-0.167-2.304-0.469l0.038 0.015c-0.893-0.371-1.607-1.022-2.049-1.842l-0.011-0.022c-0.266-0.544-0.422-1.183-0.422-1.859 0-0.021 0-0.043 0-0.064l-0 0.003c0-0.69-0.56-1.25-1.25-1.25s-1.25 0.56-1.25 1.25v0c-0 0.018-0 0.038-0 0.059 0 1.085 0.254 2.111 0.706 3.021l-0.018-0.040c0.72 1.368 1.868 2.429 3.262 3.023l0.043 0.016c0.947 0.415 2.051 0.656 3.211 0.656 0.011 0 0.022-0 0.034-0h-0.002c0.392-0 0.778-0.026 1.156-0.075l-0.045 0.005c1.561-0.182 2.947-0.821 4.049-1.779l-0.009 0.008c0.574-0.512 1.049-1.12 1.402-1.801l0.016-0.035c0.155-0.309 0.301-0.675 0.417-1.055l0.013-0.050c0.096-0.323 0.165-0.699 0.192-1.087l0.001-0.017c0.014-0.227 0.048-0.44 0.101-0.644l-0.005 0.023 0.063-0.184c0.048-0.128 0.076-0.275 0.076-0.429 0-0.536-0.337-0.993-0.812-1.171l-0.009-0.003zM12 24.695c1.816-0.058 3.266-1.543 3.266-3.368 0-0.115-0.006-0.229-0.017-0.341l0.001 0.014c0.003-0.487 0.151-0.938 0.404-1.313l-0.005 0.008c0.132-0.195 0.211-0.436 0.211-0.695 0-0.69-0.559-1.249-1.249-1.249-0.431 0-0.811 0.218-1.035 0.55l-0.003 0.004c-0.512 0.758-0.818 1.69-0.822 2.694v0.001c0 0.727-0.294 1.195-0.75 1.195s-0.75-0.469-0.75-1.195c0-0.69-0.56-1.25-1.25-1.25s-1.25 0.56-1.25 1.25v0c-0.010 0.098-0.016 0.212-0.016 0.327 0 1.825 1.45 3.31 3.261 3.368l0.005 0zM30.885 29.115l-7.577-7.577c0.136-0.148 0.261-0.307 0.401-0.449 0.262-0.26 0.521-0.523 0.762-0.814 1.214-1.476 2.104-3.266 2.534-5.228l0.015-0.083c0.151-0.76 0.238-1.634 0.238-2.528 0-0.154-0.003-0.307-0.008-0.459l0.001 0.022c0-7.27-4.723-10.544-8.766-11.14-0.463-0.075-0.996-0.119-1.539-0.119-3.884 0-7.253 2.201-8.929 5.424l-0.026 0.056-5.106-5.105c-0.226-0.225-0.537-0.363-0.881-0.363-0.69 0-1.25 0.56-1.25 1.25 0 0.344 0.139 0.655 0.363 0.881l27.999 28.001c0.226 0.226 0.539 0.366 0.884 0.366 0.691 0 1.251-0.56 1.251-1.251 0-0.345-0.14-0.658-0.366-0.884l0 0zM18.121 3.334c3.057 0.45 6.629 2.99 6.629 8.666 0.005 0.124 0.008 0.27 0.008 0.416 0 0.717-0.067 1.418-0.194 2.098l0.011-0.070c-0.241 1.112-0.633 2.096-1.162 2.991l0.025-0.046c-0.286 0.493-0.583 0.917-0.911 1.315l0.013-0.016c-0.188 0.227-0.393 0.432-0.598 0.635-0.134 0.134-0.276 0.282-0.418 0.432l-2.339-2.339c0.604-0.871 0.965-1.951 0.965-3.116 0-1.199-0.383-2.309-1.034-3.214l0.011 0.016c-0.998-1.28-2.54-2.096-4.273-2.096-0.065 0-0.13 0.001-0.194 0.003l0.009-0c-0.426 0.026-0.824 0.099-1.203 0.215l0.037-0.010c0.643-1.309 1.967-2.194 3.497-2.194 0.062 0 0.123 0.001 0.184 0.004l-0.009-0c2.248 0.209 3.994 2.086 3.994 4.371 0 0.213-0.015 0.423-0.045 0.627l0.003-0.023c0 0.69 0.56 1.25 1.25 1.25s1.25-0.56 1.25-1.25v0c0.020-0.197 0.032-0.426 0.032-0.657 0-3.613-2.806-6.571-6.357-6.813l-0.021-0.001c-0.061-0.002-0.133-0.003-0.206-0.003-2.902 0-5.36 1.904-6.192 4.531l-0.013 0.046-0.97-0.97c1.112-2.88 3.859-4.886 7.074-4.886 0.405 0 0.802 0.032 1.19 0.093l-0.043-0.006zM13.62 11.851c0.337-0.192 0.735-0.316 1.16-0.343l0.008-0c0.030-0.001 0.064-0.002 0.099-0.002 0.91 0 1.72 0.429 2.239 1.095l0.005 0.006c0.328 0.474 0.524 1.060 0.524 1.693 0 0.47-0.108 0.915-0.301 1.311l0.008-0.018z"></path> </g></svg>');
1008  }
1009  function splashCapsule(str)
1010  {
1011    setCapsule(str);
1012    setTimeout(function () {
1013      resetCapsule();
1014    }, 1000);
1015  }
1016  function resetCapsule()
1017  {
1018    $('#dynSvg').html('<svg fill="#ffffff" version="1.1" id="Listening" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewB
1018ox="0 0 128 128" xml:space="preserve"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <path id="_x34__1_" d="M39.6,108.1c-8.8,0-16-7.2-16-16c0-2.2,1.8-4,4-4s4,1.8,4,4c0,4.4,3.6,8,8,8c2.8,0,5.4-1.5,6.9-3.9 c0.6-1,1.4-2.8,2.3-4.7c1.7-3.8,3.6-8.1,6-11.2c1.9-2.5,4.7-5,7.4-7.5c2.7-2.5,5.8-5.4,6.8-7.2c2-3.5,3-7.4,3-11.4 c0-12.7-10.3-23-23-23s-23,10.3-23,23c0,2.2-1.8,4-4,4s-4-1.8-4-4c0-17.1,13.9-31,31-31c17.1,0,31,13.9,31,31 c0,5.4-1.4,10.7-4.1,15.4c-1.6,2.9-4.9,5.9-8.4,9.1c-2.4,2.3-5,4.6-6.5,6.5c-1.8,2.3-3.6,6.3-5,9.5c-1,2.2-1.8,4.1-2.7,5.6 C50.5,105.1,45.2,108.1,39.6,108.1z"></path> <path id="_x33__2_" d="M34,79.6c-2.2,0-4-1.8-4-4s1.8-4,4-4c2,0,3.7-1.6,3.7-3.7c0-2-1.6-3.7-3.7-3.7c-2.2,0-4-1.8-4-4v-6 c0-10.5,8.5-19,19-19s19,8.5,19,19c0,3.3-0.8,6.5-2.4,9.3c-0.1,0.1-0.1,0.2-0.2,0.3c-0.8,1.2-2.7,3-5.9,6l-1.2,1.1 c-1.6,1.5-4.2,1.4-5.7-0.2c-1.5-1.6-1.4-4.2,0.2-5.7L54,64c2.6-2.4,4.2-3.9,4.7-4.6c0.8-1.6,1.3-3.4,1.3-5.2c0-6.1-4.9-11-11-11 s-11,4.9-11,11v2.7c4.5,1.6,7.7,5.9,7.7,11C45.7,74.3,40.5,79.6,34,79.6z"></path> <path id="_x32__15_" d="M85,78.7c-0.6,0-1.2-0.2-1.7-0.5c-1.7-1-2.2-3.1-1.3-4.8c3.3-5.8,5.1-12.3,5.1-19c0-6.8-1.8-13.4-5.2-19.2 c-1-1.7-0.4-3.8,1.2-4.8c1.7-1,3.8-0.4,4.8,1.2c4.1,6.9,6.2,14.8,6.2,22.8c0,7.9-2.1,15.6-6,22.5C87.4,78.1,86.2,78.7,85,78.7z"></path> <path id="_x31__17_" d="M95.9,90.1c-0.8,0-1.5-0.2-2.2-0.7c-1.8-1.2-2.3-3.7-1.1-5.6c5.9-8.7,9-18.8,9-29.4 c0-10.6-3.2-20.9-9.2-29.6c-1.2-1.8-0.8-4.3,1-5.6c1.8-1.2,4.3-0.8,5.6,1c6.9,10.1,10.6,21.9,10.6,34.1c0,12.1-3.6,23.8-10.3,33.8 C98.4,89.5,97.1,90.1,95.9,90.1z"></path> </g></svg>');
1019  }
1020
1021  function sound(element)
1022  {
1023    $("div.speechx-status").show();
1024    $("i", element).toggleClass("fa-volume-off fa-volume-up");
1025    $(element).toggleClass("off on");
1026    if ($(element).hasClass("on")) {
1027      bicara(chunkStrKeepWord(searchContent(), 100), 0);
1028      setCapsule("<small>Berbicara...</small>&nbsp;")
1029    }
1030    if ($(element).hasClass("off")) {
1031      bacot();
1032      splashCapsule("<small>Berhenti...</small>&nbsp;");
1033    }
1034  }
1035
1036  function searchContent()
1037  {
1038    let title = elemToStr($(".speech-title"));
1039    if (title=="") {
1040      return "Tidak ditemukan bacaan pada halaman ini.";
1041    }
1042    let content = elemToStr($(".speech-content"));
1043    let time = elemToStr($(".speech-time"));
1044    let full_content = "Judul: " + title + ". Dibuat pada " + time + ". " + content + ". Selesai.";
1045    return full_content.replace(/\s+/g, ' ').trim();
1046  }
1047
1048  document.addEventListener("DOMContentLoaded", () => {
1049    localStorage.setItem('set_voice', 'on');
1050    console.log(chunkStrKeepWord(searchContent(), 100));
1051    resetCapsule();
1052  });
1053
1054  // Add event listener on keydown
1055  document.addEventListener('keydown', (event) => {
1056    var name = event.key;
1057    var code = event.code;
1058    if (name === 'Shift') {
1059      return;
1060    }
1061    if (event.shiftKey) {
1062      if (code == "F2") {
1063        sound($("a#bicara"));
1064      }
1065    }
1066  }, false);
1067</script>
1067
1068      
1068<script src="https://code.responsivevoice.org/responsivevoice.js?key=DIW5GLX2"></script>
1068
1069<style>
1070    .accessibility-menu-container {
1071      position: fixed;
1072      top: 24%;
1073      z-index: 1;
1074    }
1075
1076    .btn-container {
1077      margin-bottom: 10px;
1078      text-align: center;
1079    }
1080  
1081    .greyscaleall {
1082      webkit-filter: grayscale(100%);
1083      -moz-filter: grayscale(100%);
1084      -ms-filter: grayscale(100%);
1085      -o-filter: grayscale(100%);
1086      filter: grayscale(100%);
1087  
1088    }
1089  
1090    .mycheckbox {
1091      font-size: 12px;
1092      color: black;
1093      font-weight: 500;
1094    }
1095  
1096    .btn-color-mode-switch {
1097      display: inline-block;
1098      margin: 0px;
1099      position: relative;
1100    }
1101  
1102    .btn-color-mode-switch>label.btn-color-mode-switch-inner {
1103      margin: 0px;
1104      width: 170px;
1105      height: 26px;
1106      background: #E0E0E0;
1107      border-radius: 26px;
1108      overflow: hidden;
1109      position: relative;
1110      transition: all 0.3s ease;
1111  
1112      display: block;
1113    }
1114  
1115    .btn-color-mode-switch>label.btn-color-mode-switch-inner:before {
1116      content: attr(data-on);
1117      cursor: pointer;
1118      position: absolute;
1119      font-size: 12px;
1120      font-weight: bold;
1121      top: 5px;
1122      right: 25px;
1123      margin-bottom: 5px;
1124    }
1125  
1126    .btn-color-mode-switch>label.btn-color-mode-switch-inner:after {
1127      content: attr(data-off);
1128      cursor: pointer;
1129      width: 85px;
1130      height: 22px;
1131      font-size: 12px;
1132      background: #fff;
1133      border-radius: 26px;
1134      position: absolute;
1135      left: 2px;
1136      top: 2px;
1137      font-weight: bold;
1138      text-align: center;
1139      transition: all 0.3s ease;
1140      box-shadow: 0px 0px 6px -2px #111;
1141      padding: 2px 0px;
1142      margin-bottom: 10px;
1143    }
1144  
1145  
1146  
1147    .btn-color-mode-switch input[type="checkbox"] {
1148      cursor: pointer;
1149      width: 70px;
1150      height: 25px;
1151      opacity: 0;
1152      position: absolute;
1153      top: 0;
1154      z-index: 1;
1155      padding: 2px 0px;
1156      margin: 0px;
1157    }
1158  
1159    .btn-color-mode-switch input[type="checkbox"]:checked+label.btn-color-mode-switch-inner {
1160      background: #E0E0E0;
1161      color: black;
1162      font-weight: bold;
1163      font-size: 12px;
1164  
1165  
1166    }
1167  
1168    .btn-color-mode-switch input[type="checkbox"]:checked+label.btn-color-mode-switch-inner:after {
1169      content: attr(data-on);
1170      left: 83px;
1171      background: white;
1172      font-weight: bold;
1173      font-size: 12px;
1174    }
1175  
1176    .btn-color-mode-switch input[type="checkbox"]:checked+label.btn-color-mode-switch-inner:before {
1177      content: attr(data-off);
1178      right: auto;
1179      left: 15px;
1180      color: black;
1181      font-weight: bold;
1182      font-size: 12px;
1183    }
1184  
1185    .btn-color-mode-switch input[type="checkbox"]:checked~.alert {
1186      display: block;
1187    }
1188  
1189    .toolbar-disabilitas {
1190      position: relative;
1191      left: 0;
1192      z-index: 98;
1193      height: 1px;
1194      width: -180px;
1195      text-align: center;
1196      background: transparent !important;
1197      background-color: transparent !important;
1198    }
1199  
1200    .open-toolbar {
1201      margin-top: 5px;
1202      padding-top: 8px;
1203      padding-right: 5px!important;
1204      padding-left: 5px!important;
1205      padding-bottom: 3px;
1206      height: 50px;
1207      border: none;
1208      width: 50px;
1209      min-width: 50px!important;
1210    }
1211  
1212    .toolbar-disabilitas .open-toolbar {
1213      background: rgb(237,178,60);
1214      background: linear-gradient(180deg, rgba(237,178,60,1) 0%, rgba(251,125,3,1) 48%, rgba(247,27,5,1) 75%);
1215      border-radius: 0px 20px 20px 0px !important;
1216    }
1217  
1218  
1219    .toolbar-disabilitas .groupcontenttoolbar {
1220      transform: translateX(-180px);
1221      transition: transform 0.6s;
1222    }
1223  
1224  
1225    .toolbar-disabilitas.show-toolbar .groupcontenttoolbar {
1226      transform: translateX(0px);
1227  
1228    }
1229  
1230    .contenttoolbar_disabilitas {
1231      position: relative;
1232      margin-top: 5px;
1233      padding-top: 8px;
1234      display: flex;
1235      flex-direction: column;
1236      height: max-content;
1237      border: 1px solid black;
1238      box-shadow: 0 10px 10px rgb(0 0 0 / 0.2);
1239      background-color: white;
1240      width: 180px;
1241      word-break: break-all;
1242      overflow: hidden;
1243    }
1244  
1245  
1246    .groupcontenttoolbar {
1247      display: flex;
1248      flex-direction: row;
1249  
1250      height: 1px;
1251  
1252      background-color: transparent !important;
1253  
1254    }
1255  
1256    .titletools {
1257      font-size: 13px !important;
1258      font-weight: bold;
1259      margin-bottom: 10px;
1260      padding-left: 5px;
1261      padding-right: 5px;
1262      color: black;
1263    }
1264  
1265  
1266    .bodytools {
1267      left: 0;
1268      height: max-content;
1269      width: 100%;
1270      margin-bottom: 10px;
1271    }
1272  
1273    .subtitletools {
1274      font-size: 12px !important;
1275      margin-bottom: 5px;
1276      cursor: pointer;
1277      left: 0;
1278      font-family: Arial, Helvetica, sans-serif;
1279      padding-left: 10px;
1280      text-align: left;
1281      color: black
1282    }
1283  
1284
1285    .subtitletoolsactive {
1286      background-color: black;
1287      font-size: 12px !important;
1288      margin-bottom: 5px;
1289      cursor: pointer;
1290      left: 0;
1291      padding-top: 5px;
1292      padding-left: 10px;
1293      padding-bottom: 5px;
1294      text-align: left;
1295      color: white;
1296      font-weight: bold;
1297    }
1298  
1299    .subtitletools:hover,
1300    .subtitletools:focus,
1301    .subtitletools:active {
1302      background-color: black;
1303      color: white;
1304      font-weight: bold;
1305      font-size: 12;
1306      max-width: 100%;
1307      padding-top: 5px;
1308      padding-left: 10px;
1309      padding-bottom: 5px;
1310  
1311    }
1312  
1313    .flexrowdata {
1314      display: flex;
1315      flex-direction: row;
1316      height: 100%;
1317      width: 100%;
1318    }
1319  
1320    .flexrowtext {
1321      display: flex;
1322      flex-direction: column;
1323  
1324      height: 100%;
1325      justify-content: center;
1326      align-items: center;
1327      width: 100%;
1328    }
1329  
1330    .datatextinfo {
1331      display: flex;
1332      flex-direction: row;
1333      width: 100%;
1334      justify-content: center;
1335  
1336    }
1337  
1338    .texttulisan {
1339      color: black;
1340      font-size: 18px;
1341      font-weight: bold;
1342    }
1343  
1344    @media  only screen and (max-width: 900px) {
1345      .toolbar-disabilitas {
1346        top: 11%;
1347      }
1348    }
1349  </style>
1350  
1351  <span id="loadmodaldisabilitas"></span>
1352  
1352<script type="text/javascript">
1353    $(window).on('load', function() {
1354      localStorage.removeItem("set_voice");
1355      localStorage.setItem("permismobile", "on");
1356    });
1357
1358    function speachmobile(value) {
1359      var voicecek = localStorage.getItem("set_voice");
1360      if (voicecek != null && voicecek == "on") {
1361        // if (localStorage.getItem("set_voice") == 'on') {
1362          bicara(value);
1363        //   if (responsiveVoice.voiceSupport()) {
1364        //     responsiveVoice.speak(value, "Indonesian Female");
1365        //   // }
1366        // }
1367      }
1368    }
1369  
1370    function speach(value) {
1371      var voicecek = localStorage.getItem("set_voice");
1372      if (voicecek != null && voicecek == "on") {
1373        var speechSynthesis = window.speechSynthesis;
1374        speechSynthesis.cancel();
1375        if ("speechSynthesis" in window) {
1376          const to_speak = new SpeechSynthesisUtterance(value || "");
1377          to_speak.lang = "id-ID";
1378          speechSynthesis.getVoices();
1379          speechSynthesis.speak(to_speak);
1380        } else {
1381          alert("not supported");
1382        }
1383      }
1384    }
1385  
1386    // if (!window.James) {
1387    //   James = {};
1388    // }
1389    // James.Selector = {};
1390    // James.Selector.mouseup = function() {
1391    //   var userSelection;
1392    //   if (window.getSelection) {
1393    //     userSelection = window.getSelection();
1394    //   } else if (document.selection) {
1395    //     userSelection = document.selection.createRange();
1396    //   }
1397    //   var selectedText = userSelection;
1398    //   if (userSelection.text) selectedText = userSelection.text;
1399      
1400    //   if (selectedText != "") {
1401    //     var textvalue = window.getSelection().toString();
1402    //     speach(textvalue);
1403    //     speachmobile(textvalue);
1404    //   }
1405    // };
1406    // $(document).ready(function() {
1407    //   $(document).bind("mouseup", James.Selector.mouseup);
1408    // });
1409    // $(document).ready(function() {
1410    //   document.addEventListener("selectionchange", function(event) {
1411    //     var voicecek = localStorage.getItem("permismobile");
1412    //     if (voicecek != null && voicecek == "on") {
1413    //       const selection = window.getSelection();
1414    //       if (selection.rangeCount === 0) {
1415    //         return;
1416    //       }
1417    //       const range = selection.getRangeAt(0);
1418    //       const rect = range.getBoundingClientRect();
1419    //       const text = selection.toString();
1420    //       if (!isBlank(text) || text != undefined || text != "") {
1421    //         speachmobile(text);
1422  
1423    //       }
1424    //     }
1425  
1426    //   });
1427    // });
1428  
1429    function isBlank(str) {
1430      return !str || /^\s*$/.test(str);
1431    }
1432    var dataspeachweb = `
1433                <div class="subtitletools" id="webspeach">
1434                    <div class="flexrowdata">
1435                        <span>
1436                            <svg version="1.1" class='fontawesomesvg' width="1em"  xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 448">
1437                                <path fill="currentColor" d="M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zm2 226.3c37.1 22.4 62 63.1 62 109.7s-24.9 87.3-62 109.7c-7.6 4.6-17.4 2.1-22-5.4s-2.1-17.4 5.4-22C269.4 401.5 288 370.9 288 336s-18.6-65.5-46.5-82.3c-7.6-4.6-10-14.4-5.4-22s14.4-10 22-5.4zm-91.9 30.9c6 2.5 9.9 8.3 9.9 14.8V400c0 6.5-3.9 12.3-9.9 14.8s-12.9 1.1-17.4-3.5L113.4 376H80c-8.8 0-16-7.2-16-16V312c0-8.8 7.2-16 16-16h33.4l35.3-35.3c4.6-4.6 11.5-5.9 17.4-3.5zm51 34.9c6.6-5.9 16.7-5.3 22.6 1.3C249.8 304.6 256 319.6 256 336s-6.2 31.4-16.3 42.7c-5.9 6.6-16 7.1-22.6 1.3s-7.1-16-1.3-22.6c5.1-5.7 8.1-13.1 8.1-21.3s-3.1-15.7-8.1-21.3c-5.9-6.6-5.3-16.7 1.3-22.6z"/>
1438                            </svg>
1439                        </span>
1440                        &nbsp;&nbsp;<div id="twebspeach" class="aksestexttools">Moda Suara 
1441                          <span class="voice-button" id="set_voice" style="display:none">
1442                            <span id="voice_icon"><i class="fa fa-volume-off" aria-hidden="true"></i></span>
1443                          </span>
1444                          </div>
1445                    </div>
1446                </div>`;
1447  
1448    var datamobileweb = `
1449                <div class="subtitletools" id="mobileapp">
1450                    <div class="flexrowdata">
1451                    
1452                    <span><svg version="1.1" class='fontawesomesvg' width="1em"  xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 448">
1453                    <path fill="currentColor" d="M64 0C28.7 0 0 28.7 0 64V448c0 35.3 28.7 64 64 64H320c35.3 0 64-28.7 64-64V160H256c-17.7 0-32-14.3-32-32V0H64zM256 0V128H384L256 0zm2 226.3c37.1 22.4 62 63.1 62 109.7s-24.9 87.3-62 109.7c-7.6 4.6-17.4 2.1-22-5.4s-2.1-17.4 5.4-22C269.4 401.5 288 370.9 288 336s-18.6-65.5-46.5-82.3c-7.6-4.6-10-14.4-5.4-22s14.4-10 22-5.4zm-91.9 30.9c6 2.5 9.9 8.3 9.9 14.8V400c0 6.5-3.9 12.3-9.9 14.8s-12.9 1.1-17.4-3.5L113.4 376H80c-8.8 0-16-7.2-16-16V312c0-8.8 7.2-16 16-16h33.4l35.3-35.3c4.6-4.6 11.5-5.9 17.4-3.5zm51 34.9c6.6-5.9 16.7-5.3 22.6 1.3C249.8 304.6 256 319.6 256 336s-6.2 31.4-16.3 42.7c-5.9 6.6-16 7.1-22.6 1.3s-7.1-16-1.3-22.6c5.1-5.7 8.1-13.1 8.1-21.3s-3.1-15.7-8.1-21.3c-5.9-6.6-5.3-16.7 1.3-22.6z"/>
1454                    </svg></span>
1455                    &nbsp;&nbsp;<div id="twebspeach" class="aksestexttools">Moda Suara
1456                          <span class="voice-button" id="set_voice" style="display:none">
1457                            <span id="voice_icon"><i class="fa fa-volume-off" aria-hidden="true"></i></span>
1458                          </span>
1459                      </div>
1460                    </div>
1461                </div>
1462    
1463          `;
1464    var logicspeachweb = getOS() == "Windows" || getOS() == "Mac OS" || getOS() == "Linux" ? dataspeachweb : datamobileweb;
1465    var toolbardisabilitas =
1466      `<div class="toolbar-disabilitas">
1467            <div class="groupcontenttoolbar" id="checklangmenu">
1468                <div class="contenttoolbar_disabilitas" id="groupcekmenu">
1469                    <div class="titletools" id="taccessbility">
1470                    Sarana
1471                        </div>
1472                
1473                        <div class="btn-container">
1474                <div class="mycheckbox switch btn-color-mode-switch" id="tmulticheckboxlang">
1475                    <input type="checkbox" id="checklang" value="1">
1476                    <label id="tmycheckbox" for="checklang" data-on="Inggris" data-off="Indonesia" class="btn-color-mode-switch-inner"></label>
1477                
1478            </div>
1479         </div>
1480            <div class="bodytools">
1481            ` +
1482      logicspeachweb +
1483      `
1484                <div class="subtitletools" id="increasetext">
1485                <div class="flexrowdata">
1486               <span><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1em" viewBox="0 0 448 448"><path fill="currentColor" d="M256 200v16c0 4.25-3.75 8-8 8h-56v56c0 4.25-3.75 8-8 8h-16c-4.25 0-8-3.75-8-8v-56h-56c-4.25 0-8-3.75-8-8v-16c0-4.25 3.75-8 8-8h56v-56c0-4.25 3.75-8 8-8h16c4.25 0 8 3.75 8 8v56h56c4.25 0 8 3.75 8 8zM288 208c0-61.75-50.25-112-112-112s-112 50.25-112 112 50.25 112 112 112 112-50.25 112-112zM416 416c0 17.75-14.25 32-32 32-8.5 0-16.75-3.5-22.5-9.5l-85.75-85.5c-29.25 20.25-64.25 31-99.75 31-97.25 0-176-78.75-176-176s78.75-176 176-176 176 78.75 176 176c0 35.5-10.75 70.5-31 99.75l85.75 85.75c5.75 5.75 9.25 14 9.25 22.5z" "=""></path></svg></span>
1487               &nbsp;&nbsp;<div id="tincreasetext" class="aksestexttools">Perbesar Teks</div>
1488               </div>
1489                </div>
1490                <div class="subtitletools"  id="decreasetext">
1491                <div class="flexrowdata">
1492               <span><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1em" viewBox="0 0 448 448"><path fill="currentColor" d="M256 200v16c0 4.25-3.75 8-8 8h-144c-4.25 0-8-3.75-8-8v-16c0-4.25 3.75-8 8-8h144c4.25 0 8 3.75 8 8zM288 208c0-61.75-50.25-112-112-112s-112 50.25-112 112 50.25 112 112 112 112-50.25 112-112zM416 416c0 17.75-14.25 32-32 32-8.5 0-16.75-3.5-22.5-9.5l-85.75-85.5c-29.25 20.25-64.25 31-99.75 31-97.25 0-176-78.75-176-176s78.75-176 176-176 176 78.75 176 176c0 35.5-10.75 70.5-31 99.75l85.75 85.75c5.75 5.75 9.25 14 9.25 22.5z"></path></svg></span>
1493                &nbsp;&nbsp;<div id="tdecreasetext"  class="aksestexttools">Perkecil Teks</div>
1494                </div>
1495                </div>
1496                <div class="subtitletools"  id="egrayscale">
1497                <div class="flexrowdata">
1498                <span><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1em" viewBox="0 0 448 448"><path fill="currentColor" d="M15.75 384h-15.75v-352h15.75v352zM31.5 383.75h-8v-351.75h8v351.75zM55 383.75h-7.75v-351.75h7.75v351.75zM94.25 383.75h-7.75v-351.75h7.75v351.75zM133.5 383.75h-15.5v-351.75h15.5v351.75zM165 383.75h-7.75v-351.75h7.75v351.75zM180.75 383.75h-7.75v-351.75h7.75v351.75zM196.5 383.75h-7.75v-351.75h7.75v351.75zM235.75 383.75h-15.75v-351.75h15.75v351.75zM275 383.75h-15.75v-351.75h15.75v351.75zM306.5 383.75h-15.75v-351.75h15.75v351.75zM338 383.75h-15.75v-351.75h15.75v351.75zM361.5 383.75h-15.75v-351.75h15.75v351.75zM408.75 383.75h-23.5v-351.75h23.5v351.75zM424.5 383.75h-8v-351.75h8v351.75zM448 384h-15.75v-352h15.75v352z"></path></svg></span>
1499                &nbsp;&nbsp;<div id="tegrayscale"  class="aksestexttools">Skala Abu - Abu</div>
1500                </div>
1501                </div>
1502                <div class="subtitletools" id="hcontrash">
1503                <div class="flexrowdata">
1504                <span><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1em" viewBox="0 0 448 448"><path fill="currentColor" d="M192 360v-272c-75 0-136 61-136 136s61 136 136 136zM384 224c0 106-86 192-192 192s-192-86-192-192 86-192 192-192 192 86 192 192z" "=""></path></svg></span>
1505                &nbsp;&nbsp;<div id="thcontrash"  class="aksestexttools">Kontras Tinggi</div>
1506                </div>
1507                </div>
1508                <div class="subtitletools" id="ncontrash">
1509                <div class="flexrowdata">
1510                <span><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1em" viewBox="0 0 448 448"><path fill="currentColor" d="M416 240c-23.75-36.75-56.25-68.25-95.25-88.25 10 17 15.25 36.5 15.25 56.25 0 61.75-50.25 112-112 112s-112-50.25-112-112c0-19.75 5.25-39.25 15.25-56.25-39 20-71.5 51.5-95.25 88.25 42.75 66 111.75 112 192 112s149.25-46 192-112zM236 144c0-6.5-5.5-12-12-12-41.75 0-76 34.25-76 76 0 6.5 5.5 12 12 12s12-5.5 12-12c0-28.5 23.5-52 52-52 6.5 0 12-5.5 12-12zM448 240c0 6.25-2 12-5 17.25-46 75.75-130.25 126.75-219 126.75s-173-51.25-219-126.75c-3-5.25-5-11-5-17.25s2-12 5-17.25c46-75.5 130.25-126.75 219-126.75s173 51.25 219 126.75c3 5.25 5 11 5 17.25z"></path></svg></span>
1511                &nbsp;&nbsp;<div id="tncontrash"  class="aksestexttools">Latar Gelap</div>
1512                </div>
1513                </div>
1514                <div class="subtitletools"] id="lgcontrash">
1515                <div class="flexrowdata">
1516                <span><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1em" viewBox="0 0 448 448"><path fill="currentColor" d="M184 144c0 4.25-3.75 8-8 8s-8-3.75-8-8c0-17.25-26.75-24-40-24-4.25 0-8-3.75-8-8s3.75-8 8-8c23.25 0 56 12.25 56 40zM224 144c0-50-50.75-80-96-80s-96 30-96 80c0 16 6.5 32.75 17 45 4.75 5.5 10.25 10.75 15.25 16.5 17.75 21.25 32.75 46.25 35.25 74.5h57c2.5-28.25 17.5-53.25 35.25-74.5 5-5.75 10.5-11 15.25-16.5 10.5-12.25 17-29 17-45zM256 144c0 25.75-8.5 48-25.75 67s-40 45.75-42 72.5c7.25 4.25 11.75 12.25 11.75 20.5 0 6-2.25 11.75-6.25 16 4 4.25 6.25 10 6.25 16 0 8.25-4.25 15.75-11.25 20.25 2 3.5 3.25 7.75 3.25 11.75 0 16.25-12.75 24-27.25 24-6.5 14.5-21 24-36.75 24s-30.25-9.5-36.75-24c-14.5 0-27.25-7.75-27.25-24 0-4 1.25-8.25 3.25-11.75-7-4.5-11.25-12-11.25-20.25 0-6 2.25-11.75 6.25-16-4-4.25-6.25-10-6.25-16 0-8.25 4.5-16.25 11.75-20.5-2-26.75-24.75-53.5-42-72.5s-25.75-41.25-25.75-67c0-68 64.75-112 128-112s128 44 128 112z"></path></svg></span>
1517                &nbsp;&nbsp;<div id="tlgcontrash"  class="aksestexttools">Latar Terang</div>
1518                </div>
1519                </div>
1520                <div class="subtitletools" id="readablefont">
1521                <div class="flexrowdata">
1522                 <span><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1em" viewBox="0 0 448 448"><path fill="currentColor" d="M181.25 139.75l-42.5 112.5c24.75 0.25 49.5 1 74.25 1 4.75 0 9.5-0.25 14.25-0.5-13-38-28.25-76.75-46-113zM0 416l0.5-19.75c23.5-7.25 49-2.25 59.5-29.25l59.25-154 70-181h32c1 1.75 2 3.5 2.75 5.25l51.25 120c18.75 44.25 36 89 55 133 11.25 26 20 52.75 32.5 78.25 1.75 4 5.25 11.5 8.75 14.25 8.25 6.5 31.25 8 43 12.5 0.75 4.75 1.5 9.5 1.5 14.25 0 2.25-0.25 4.25-0.25 6.5-31.75 0-63.5-4-95.25-4-32.7
15225 0-65.5 2.75-98.25 3.75 0-6.5 0.25-13 1-19.5l32.75-7c6.75-1.5 20-3.25 20-12.5 0-9-32.25-83.25-36.25-93.5l-112.5-0.5c-6.5 14.5-31.75 80-31.75 89.5 0 19.25 36.75 20 51 22 0.25 4.75 0.25 9.5 0.25 14.5 0 2.25-0.25 4.5-0.5 6.75-29 0-58.25-5-87.25-5-3.5 0-8.5 1.5-12 2-15.75 2.75-31.25 3.5-47 3.5z"></path></svg></span>
1523                 &nbsp;&nbsp;<div id="treadablefont"  class="aksestexttools">Tulisan Dapat Dibaca</div>
1524                 </div>
1525                </div>
1526                <div class="subtitletools" id="linkunderline">
1527                <div class="flexrowdata">
1528                 <span><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1em" viewBox="0 0 448 448"><path fill="currentColor" d="M364 304c0-6.5-2.5-12.5-7-17l-52-52c-4.5-4.5-10.75-7-17-7-7.25 0-13 2.75-18 8 8.25 8.25 18 15.25 18 28 0 13.25-10.75 24-24 24-12.75 0-19.75-9.75-28-18-5.25 5-8.25 10.75-8.25 18.25 0 6.25 2.5 12.5 7 17l51.5 51.75c4.5 4.5 10.75 6.75 17 6.75s12.5-2.25 17-6.5l36.75-36.5c4.5-4.5 7-10.5 7-16.75zM188.25 127.75c0-6.25-2.5-12.5-7-17l-51.5-51.75c-4.5-4.5-10.75-7-17-7s-12.5 2.5-17 6.75l-36.75 36.5c-4.5 4.5-7 10.5-7 16.75 0 6.5 2.5 12.5 7 17l52 52c4.5 4.5 10.75 6.75 17 6.75 7.25 0 13-2.5 18-7.75-8.25-8.25-18-15.25-18-28 0-13.25 10.75-24 24-24 12.75 0 19.75 9.75 28 18 5.25-5 8.25-10.75 8.25-18.25zM412 304c0 19-7.75 37.5-21.25 50.75l-36.75 36.5c-13.5 13.5-31.75 20.75-50.75 20.75-19.25 0-37.5-7.5-51-21.25l-51.5-51.75c-13.5-13.5-20.75-31.75-20.75-50.75 0-19.75 8-38.5 22-52.25l-22-22c-13.75 14-32.25 22-52 22-19 0-37.5-7.5-51-21l-52-52c-13.75-13.75-21-31.75-21-51 0-19 7.75-37.5 21.25-50.75l36.75-36.5c13.5-13.5 31.75-20.75 50.75-20.75 19.25 0 37.5 7.5 51 21.25l51.5 51.75c13.5 13.5 20.75 31.75 20.75 50.75 0 19.75-8 38.5-22 52.25l22 22c13.75-14 32.25-22 52-22 19 0 37.5 7.5 51 21l52 52c13.75 13.75 21 31.75 21 51z"></path></svg></span>
1529                 &nbsp;&nbsp;<div id="tlinkunderline"  class="aksestexttools">Garis Bawahi Tautan</div>
1530                 </div>
1531                </div>
1532    
1533                <div class="subtitletools" id="ratatulisan">
1534                <div class="flexrowdata">
1535                <span><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1em" viewBox="0 0 448 448"><path fill="currentColor" d="M384 1056v64q0 13-9.5 22.5T352 1152h-64q-13 0-22.5-9.5T256 1120v-64q0-13 9.5-22.5t22.5-9.5h64q13 0 22.5 9.5t9.5 22.5zm0-256v64q0 13-9.5 22.5T352 896h-64q-13 0-22.5-9.5T256 864v-64q0-13 9.5-22.5T288 768h64q13 0 22.5 9.5T384 800zm0-256v64q0 13-9.5 22.5T352 640h-64q-13 0-22.5-9.5T256 608v-64q0-13 9.5-22.5T288 512h64q13 0 22.5 9.5T384 544zm1152 512v64q0 13-9.5 22.5t-22.5 9.5H544q-13 0-22.5-9.5T512 1120v-64q0-13 9.5-22.5t22.5-9.5h960q13 0 22.5 9.5t9.5 22.5zm0-256v64q0 13-9.5 22.5T1504 896H544q-13 0-22.5-9.5T512 864v-64q0-13 9.5-22.5T544 768h960q13 0 22.5 9.5t9.5 22.5zm0-256v64q0 13-9.5 22.5T1504 640H544q-13 0-22.5-9.5T512 608v-64q0-13 9.5-22.5T544 512h960q13 0 22.5 9.5t9.5 22.5zm128 704V416q0-13-9.5-22.5T1632 384H160q-13 0-22.5 9.5T128 416v832q0 13 9.5 22.5t22.5 9.5h1472q13 0 22.5-9.5t9.5-22.5zm128-1088v1088q0 66-47 113t-113 47H160q-66 0-113-47T0 1248V160Q0 94 47 47T160 0h1472q66 0 113 47t47 113z"/></svg></span>
1536                &nbsp;&nbsp;<div id="tratatulisan"  class="aksestexttools">Rata Tulisan</div>
1537                </div>
1538                </div>
1539    
1540                <div class="subtitletools" id="resetdisabilitas">
1541                <div class="flexrowdata">
1542                <span><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="1em" viewBox="0 0 448 448"><path fill="currentColor" d="M384 224c0 105.75-86.25 192-192 192-57.25 0-111.25-25.25-147.75-69.25-2.5-3.25-2.25-8 0.5-10.75l34.25-34.5c1.75-1.5 4-2.25 6.25-2.25 2.25 0.25 4.5 1.25 5.75 3 24.5 31.75 61.25 49.75 101 49.75 70.5 0 128-57.5 128-128s-57.5-128-128-128c-32.75 0-63.75 12.5-87 34.25l34.25 34.5c4.75 4.5 6 11.5 3.5 17.25-2.5 6-8.25 10-14.75 10h-112c-8.75 0-16-7.25-16-16v-112c0-6.5 4-12.25 10-14.75 5.75-2.5 12.75-1.25 17.25 3.5l32.5 32.25c35.25-33.25 83-53 132.25-53 105.75 0 192 86.25 192 192z"></path></svg></span>
1543                &nbsp;&nbsp;<div id="tidreset"  class="aksestexttools">Atur Ulang</div>
1544                </div>
1545                </div>
1546    
1547    
1548            </div>
1549        </div>
1550        <button type="button" class="open-toolbar" onmouseout="callfunction('Fitur Disabilitas')" title="Fitur Disabilitas">
1551            <svg xmlns="http://www.w3.org/2000/svg" width="29" height="29" enable-background="new 0 0 100 100" viewB
1551ox="0 0 100 100" fill="currentColor" width="1em">
1552                <g>
1553                    <path fill="#FFFFFF" d="M60.4,78.9c-2.2,4.1-5.3,7.4-9.2,9.8c-4,2.4-8.3,3.6-13,3.6c-6.9,0-12.8-2.4-17.7-7.3c-4.9-4.9-7.3-10.8-7.3-17.7c0-5,1.4-9.5,4.1-13.7c2.7-4.2,6.4-7.2,10.9-9.2l-0.9-7.3c-6.3,2.3-11.4,6.2-15.3,11.8C7.9,54.4,6,60.6,6,67.3c0,5.8,1.4,11.2,4.3,16.1s6.8,8.8,11.7,11.7c4.9,2.9,10.3,4.3,16.1,4.3c7,0,13.3-2.1,18.9-6.2c5.7-4.1,9.6-9.5,11.7-16.2l-5.7-11.4C63.5,70.4,62.5,74.8,60.4,78.9z"></path>
1554                    <path fill="#FFFFFF" d="M93.8,71.3l-11.1,5.5L70,51.4c-0.6-1.3-1.7-2-3.2-2H41.3l-0.9-7.2h22.7v-7.2H39.6L37.5,19c2.5,0.3,4.8-0.5,6.7-2.3c1.9-1.8,2.9-4,2.9-6.6c0-2.5-0.9-4.6-2.6-6.3c-1.8-1.8-3.9-2.6-6.3-2.6c-2,0-3.8,0.6-5.4,1.8c-1.6,1.2-2.7,2.7-3.2,4.6c-0.3,1-0.4,1.8-0.3,2.3l5.4,43.5c0.1,0.9,0.5,1.6,1.2,2.3c0.7,0.6,1.5,0.9,2.4,0.9h26.4l13.4,26.7c0.6,1.3,1.7,2,3.2,2c0.6,0,1.1-0.1,1.6-0.4L97,77.7L93.8,71.3z"></path>
1555                </g>
1556            </svg>
1557        </button>
1558        </div>`;
1559    document.getElementById("loadmodaldisabilitas").innerHTML = toolbardisabilitas;
1560  
1561    function getOS() {
1562      var is_chrome = navigator.userAgent.indexOf("Chrome") > -1;
1563      var is_safari = navigator.userAgent.indexOf("Safari") > -1;
1564      var userAgent = window.navigator.userAgent,
1565        platform =
1566        window.navigator?.userAgentData?.platform || window.navigator.platform,
1567        macosPlatforms = ["Macintosh", "MacIntel", "MacPPC", "Mac68K"],
1568        windowsPlatforms = ["Win32", "Win64", "Windows", "WinCE"],
1569        iosPlatforms = ["iPhone", "iPad", "iPod"],
1570        os = null;
1571      if (macosPlatforms.indexOf(platform) !== -1) {
1572        os = "Mac OS";
1573      } else if (iosPlatforms.indexOf(platform) !== -1) {
1574        os = "iOS";
1575      } else if (windowsPlatforms.indexOf(platform) !== -1) {
1576        os = "Windows";
1577      } else if (/Android/.test(userAgent)) {
1578        os = "Android";
1579      } else if (/Linux/.test(platform)) {
1580        os = "Linux";
1581      }
1582      return os;
1583    }
1584    $(".open-toolbar").click(function(event) {
1585      var stickyToolbarContainer = document.querySelector(".toolbar-disabilitas");
1586      stickyToolbarContainer.classList.toggle("show-toolbar");
1587    });
1588    $("#checklang").on("change", function() {
1589      changelang(this);
1590    });
1591  
1592    var arrayratatulisan = [];
1593    var langdefault = [];
1594  
1595    function replacemultipletext(lang, status) {
1596      var dataratatulisanid = "";
1597      var dataratatulisanen = "";
1598      if (arrayratatulisan.length == 0) {
1599        dataratatulisanid = "Rata Tulisan";
1600        dataratatulisanen = "Average Writing";
1601      } else if (arrayratatulisan.length > 0) {
1602        if (arrayratatulisan[0] == 0) {
1603          dataratatulisanid = "Rata Tulisan";
1604          dataratatulisanen = "Average Writing";
1605        } else if (arrayratatulisan[0] == 1) {
1606          dataratatulisanid = "Rata Kiri";
1607          dataratatulisanen = "Align Left";
1608        } else if (arrayratatulisan[0] == 2) {
1609          dataratatulisanid = "Rata Tengah";
1610          dataratatulisanen = "Average Middle";
1611        } else if (arrayratatulisan[0] == 3) {
1612          dataratatulisanid = "Rata Tengah";
1613          dataratatulisanen = "Average Middle";
1614        } else if (arrayratatulisan[0] == 4) {
1615          dataratatulisanid = "Rata Kanan";
1616          dataratatulisanen = "Align Right";
1617        }
1618      }
1619  
1620      if (status == "reset") {
1621        dataratatulisanid = "Rata Tulisan";
1622        dataratatulisanen = "Average Writing";
1623      }
1624  
1625      var replaceratatulisan = "";
1626      if (lang == undefined || lang == "") {
1627        replaceratatulisan = {
1628          ratatulisan: dataratatulisanid,
1629        };
1630      } else if (lang == 1) {
1631        replaceratatulisan = {
1632          ratatulisan: dataratatulisanid,
1633        };
1634      } else if (lang == 2) {
1635        replaceratatulisan = {
1636          ratatulisan: dataratatulisanen,
1637        };
1638      }
1639  
1640      return replaceratatulisan;
1641    }
1642  
1643    function ratatulisan(lang) {
1644      var resulttext = replacemultipletext(lang, "noreset");
1645      var text_tulisan = "";
1646      if (lang == "") {
1647        text_tulisan = "";
1648      } else {
1649        text_tulisan = resulttext.ratatulisan;
1650      }
1651      $("#tratatulisan").text(text_tulisan);
1652    }
1653  
1654    function changelang(ele) {
1655      var groups = Array.from(document.querySelectorAll("#checklangmenu"));
1656      langdefault.length = 0;
1657      langdefault.push(2);
1658  
1659      var resulttext = replacemultipletext(2, "noreset");
1660      if ($(ele).prop("checked") == true) {
1661        var toolslangEn = {
1662          tdataoff: "Indonesian",
1663          tdataon: "English",
1664          taccessbility: "Accessibility Tools",
1665          tincreasetext: "Increase Text",
1666          tdecreasetext: "Decrease Text",
1667          tegrayscale: "Grayscale",
1668          thcontrash: "Hight Contrast",
1669          tncontrash: "Negative Contrast",
1670          tlgcontrash: "Light Background",
1671          treadablefont: "Readable Font",
1672          tlinkunderline: "Link Underline",
1673          twebspeach: "Web Speech",
1674          tratatulisan: resulttext.ratatulisan,
1675          tidreset: "Reset",
1676        };
1677        replacetext(groups, toolslangEn);
1678      } else if ($(ele).prop("checked") == false) {
1679        langdefault.length = 0;
1680        langdefault.push(1);
1681  
1682        var resulttext = replacemultipletext(1, "noreset");
1683        var toolslangID = {
1684          tdataoff: "Indonesia",
1685          tdataon: "Inggris",
1686          taccessbility: "Sarana",
1687          tincreasetext: "Perbesar Teks",
1688          tdecreasetext: "Perkecil Teks",
1689          tegrayscale: "Skala Abu - Abu",
1690          thcontrash: "Kontras Tinggi",
1691          tncontrash: "Latar Gelap",
1692          tlgcontrash: "Latar Terang",
1693          treadablefont: "Tulisan Dapat Dibaca",
1694          tlinkunderline: "Garis Bawahi Tautan",
1695          twebspeach: "Moda Suara",
1696          tratatulisan: resulttext.ratatulisan,
1697          tidreset: "Atur Ulang",
1698        };
1699        replacetext(groups, toolslangID);
1700      }
1701    }
1702  
1703    function callfunction(value) {
1704      var voicecek = localStorage.getItem("permismobile");
1705      if (voicecek != null && voicecek == "on") {
1706        // setTimeout(() => {
1707          speachmobile(value);
1708        // }, 50);
1709      } else {
1710        speachmobile(value);
1711      }
1712    }
1713  
1714    function replacetext(groups, arrayjs) {
1715      var namedatainput = '[class="contenttoolbar_disabilitas"]';
1716      var namedatainput2 = "div";
1717      var listgroupselector = groups.map(function(group) {
1718        return group.querySelector(namedatainput);
1719      });
1720      var listdata = listgroupselector.map(function(group) {
1721        return Array.from(group.querySelectorAll(namedatainput2)).map(function(
1722          item
1723        ) {
1724          return item;
1725        });
1726      });
1727      //  console.log(mytext)
1728      //   var mytext = getelement.replace("indonesian", "indonesia");
1729      // $("#tmulticheckboxlang").text(resultvalue);
1730      var keysarray = Object.keys(arrayjs);
1731      var keysvalues = Object.values(arrayjs);
1732      for (let i = 0; i < listdata.length; i++) {
1733        for (let k = 0; k < listdata[i].length; k++) {
1734          for (let b = 0; b < keysarray.length; b++) {
1735            var idhtml = keysarray[b];
1736            if (
1737              listdata[i][k].id == idhtml &&
1738              idhtml != "tdataoff" &&
1739              idhtml != "tdataon"
1740            ) {
1741              // var listdatallx = listdata[i][k];
1742              var getelement = document.getElementById(keysarray[b]);
1743              var mytext = getelement.textContent.trim();
1744              var resultvalue = mytext.replace(mytext, keysvalues[b]);
1745              $("#" + idhtml).text(resultvalue);
1746            } else if (idhtml == "tdataoff" || idhtml == "tdataon") {
1747              if (idhtml == "tdataon") {
1748                var mytext = $("#tmycheckbox").attr("data-on");
1749                $("#tmycheckbox").attr("data-on", keysvalues[b]);
1750              }
1751              if (idhtml == "tdataoff") {
1752                var mytext = $("#tmycheckbox").attr("data-off");
1753                $("#tmycheckbox").attr("data-off", keysvalues[b]);
1754              }
1755              ///
1756            }
1757          }
1758        }
1759      }
1760    }
1761  
1762    $("#ratatulisan").click(function(event) {
1763      if (arrayratatulisan.length > 0) {
1764        if (arrayratatulisan[0] == 1) {
1765          arrayratatulisan.length = 0;
1766          arrayratatulisan.push(2);
1767          ratatulisan(langdefault[0]);
1768          $('*:not(".btn-color-mode-switch-inner, *")').each(function(i, item) {
1769            $(item).cssImportant("text-align", "left");
1770  
1771            if ($(item).css("flex-direction") == "row") {
1772              $(item).cssImportant("justify-content", "flex-start");
1773            }
1774          });
1775        }
1776  
1777        if (arrayratatulisan[0] == 2) {
1778          arrayratatulisan.length = 0;
1779          arrayratatulisan.push(3);
1780  
1781          ratatulisan(langdefault[0]);
1782  
1783          $('*:not(".btn-color-mode-switch-inner")').each(function(i, item) {
1784            $(item).cssImportant("text-align", "center");
1785            if ($(item).css("flex-direction") == "row") {
1786              $(item).cssImportant("justify-content", "center");
1787            }
1788          });
1789        } else if (arrayratatulisan[0] == 3) {
1790          arrayratatulisan.length = 0;
1791          arrayratatulisan.push(4);
1792          ratatulisan(langdefault[0]);
1793          $('*:not(".btn-color-mode-switch-inner")').each(function(i, item) {
1794            $(item).cssImportant("text-align", "right");
1795            if ($(item).css("flex-direction") == "row") {
1796              $(item).cssImportant("justify-content", "flex-end");
1797            }
1798          });
1799        } else if (arrayratatulisan[0] == 4) {
1800          cekclassactive(groups, "ratatulisan");
1801          arrayratatulisan.length = 0;
1802          ratatulisan(langdefault[0]);
1803  
1804          $('*:not(".btn-color-mode-switch-inner")').each(function(i, item) {
1805            $(item).cssImportant("text-align", "");
1806            if ($(item).css("flex-direction") == "row") {
1807              $(item).cssImportant("justify-content", "");
1808            }
1809          });
1810        } else if (arrayratatulisan[0] == 0) {
1811          cekclassactive(groups, "ratatulisan");
1812          arrayratatulisan.length = 0;
1813  
1814          arrayratatulisan.push(1);
1815          ratatulisan(langdefault[0]);
1816  
1817          $('*:not(".btn-color-mode-switch-inner")').each(function(i, item) {
1818            $(item).cssImportant("text-align", "left");
1819            if ($(item).css("flex-direction") == "row") {
1820              $(item).cssImportant("justify-content", "flex-start");
1821            }
1822          });
1823        }
1824      } else {
1825        cekclassactive(groups, "ratatulisan");
1826        arrayratatulisan.length = 0;
1827  
1828        arrayratatulisan.push(1);
1829        ratatulisan(langdefault[0]);
1830  
1831        $('*:not(".btn-color-mode-switch-inner")').each(function(i, item) {
1832          $(item).cssImportant("text-align", "left");
1833          if ($(item).css("flex-direction") == "row") {
1834            $(item).cssImportant("justify-content", "flex-start");
1835          }
1836        });
1837      }
1838  
1839      $(".contenttoolbar_disabilitas *,div.titletools,.open-toolbar").each(
1840        function(i, item) {
1841          $(item).cssImportant("text-align", "");
1842          $(item).cssImportant("justify-content", "");
1843        }
1844      );
1845      $(".titletools").cssImportant("text-align", "center");
1846    });
1847  
1848    var zoomLevel = 1;
1849    var rootFontSize = 12;
1850    var groups = Array.from(document.querySelectorAll("#groupcekmenu"));
1851    $("#increasetext").click(function(event) {
1852      // tracking_fitur_disabilitas('Perbesar Text');
1853      var listdatagroup = cekclassactive(groups, "increasetext");
1854  
1855      zoomLevel = zoomLevel + 0.1;
1856      rootFontSize = rootFontSize + 2;
1857      $('div > *:not(".fa-search,.toolbar-disabilitas  *,.fa,.fa-angle-down")').css({
1858        // "font-weight": 400,
1859        "font-size": rootFontSize + "px",
1860      });
1861    });
1862    $("#decreasetext").click(function(event) {
1863      //  tracking_fitur_disabilitas('Perkecil Text');
1864      $("#resetdisabilitas").removeClass("subtitletoolsactive");
1865      $("#resetdisabilitas").addClass("subtitletools");
1866      //  var listdatagroup = cekclassactive(groups, 'decreasetext');
1867      setTimeout(() => {
1868        zoomLevel = zoomLevel - 0.1;
1869        rootFontSize = rootFontSize - 2;
1870        $("#increasetext").removeClass("subtitletoolsactive");
1871        $("#increasetext").addClass("subtitletools");
1872        $(
1873          'div > *:not(".fa-search,.toolbar-disabilitas  *,.fa,.fa-angle-down")'
1874        ).css({
1875          //  "font-weight": 400,
1876          "font-size": rootFontSize + "px",
1877        });
1878      }, 100);
1879    });
1880    $("#readablefont").on("click", function(event) {
1881      //  tracking_fitur_disabilitas('Tulisan Dapat Di Baca');
1882      var listdatagroup = cekclassactive(groups, "readablefont");
1883      if (listdatagroup.getclass.classactiv == "active") {
1884        $(
1885          '*:not(".fa-search,.toolbar-disabilitas  *,.fa,.fa-angle-down, h1 ,h2 , h3")'
1886        ).css({
1887          //"font-weight": 400,
1888  
1889          "font-size": "25px",
1890        });
1891  
1892        $("h1,h2,h3,h4").css({
1893          "font-size": "45px",
1894        });
1895      } else {
1896        $('*:not(".fa-search,.toolbar-disabilitas  *,.fa,.fa-angle-down")').css({
1897          "font-family": "",
1898          "font-weight": "",
1899          "font-size": "",
1900          "font-family": "",
1901        });
1902      }
1903    });
1904    jQuery(document).ready(function() {
1905      jQuery.fn.cssImportant = function(name, value) {
1906        const $this = this;
1907        const applyStyles = (n, v) => {
1908          // Convert style name from camelCase to dashed-case.
1909          const dashedName = n.replace(/(.)([A-Z])(.)/g, (str, m1, upper, m2) => {
1910            return m1 + "-" + upper.toLowerCase() + m2;
1911          });
1912          // Loop over each element in the selector and set the styles.
1913          $this.each(function() {
1914            this.style.setProperty(dashedName, v, "important");
1915          });
1916        };
1917        // If called with the first parameter that is an object,
1918        // Loop over the entries in the object and apply those styles.
1919        if (jQuery.isPlainObject(name)) {
1920          for (const [n, v] of Object.entries(name)) {
1921            applyStyles(n, v);
1922          }
1923        } else {
1924          // Otherwise called with style name and value.
1925          applyStyles(name, value);
1926        }
1927        // This is required for making jQuery plugin calls chainable.
1928        return $this;
1929      };
1930    });
1931  
1932    $("#hcontrash").click(function(event) {
1933      //   tracking_fitur_disabilitas('Warna');
1934  
1935      var listdatagroup = cekclassactive(groups, "hcontrash", "on");
1936      if (listdatagroup.getclass.classactiv == "active") {
1937        $(".navbar-inverse2").css("background-color", "rgb(0, 0, 0)");
1938        $(
1939          '*:not(".btn-color-mode-switch-inner,.mycheckbox,.Vue-Toastification__container")'
1940        ).each(function(i, item) {
1941          var color = $(item).css("color");
1942          $(item).cssImportant("background-color", "black");
1943  
1944          $(item).cssImportant("color", "#40C090");
1945          $(item).cssImportant("background", "black");
1946        });
1947  
1948        $(
1949          '*:not(".fa-search,.titletools,svg,.btn-color-mode-switch-inner,.Vue-Toastification__container")'
1950        ).cssImportant("border-color", "white");
1951        var links = document.querySelectorAll("a,div,li a strong");
1952        for (var i = 0; i < links.length; i++) {
1953          if (!isBlank(links[i].href)) {
1954            links[i].style.color = "#00f3f7 !important";
1955          }
1956        }
1957        $("h1,h2,h3,h4,h5").each(function(i, item) {
1958          var color = $(item).css("color");
1959          $(item).cssImportant("color", "white");
1960  
1961          $(item).cssImportant("background-color", "black");
1962          $(item).cssImportant("color", "#40C090");
1963          $(item).cssImportant("background", "black");
1964        });
1965  
1966        $("* > div").each(function(i, item) {
1967          var color = $(item).css("color");
1968        });
1969  
1970        $("*>button, * > p").each(function(i, item) {
1971          var color = $(item).css("color");
1972  
1973          $(item).cssImportant("background-color", "black");
1974          $(item).cssImportant("color", "#40C090");
1975          $(item).cssImportant("background", "black");
1976        });
1977  
1978        $("*>a").each(function(i, item) {
1979          var color = $(item).css("color");
1980  
1981          $(item).cssImportant("background-color", "black");
1982          $(item).cssImportant("color", "yellow");
1983          $(item).cssImportant("background", "black");
1984        });
1985        changecolordisabilitas(groups);
1986        hoveractive();
1987  
1988        $("#groupcekmenu > *, .bodytools path").each(function(i, item) {
1989          $(item).cssImportant("color", "#00f3f7");
1990        });
1991      } else {
1992        $("*").each(function(i, item) {
1993          var color = $(item).css("color");
1994          $(item).css({
1995            "background-color": "",
1996            background: "",
1997            color: "",
1998          });
1999        });
2000        $(
2001          '*:not(".fa-search,.titletools,svg,.btn-color-mode-switch-inner,.Vue-Toastification__container")'
2002        ).cssImportant("border-color", "");
2003        hovernoactive();
2004      }
2005    });
2006  
2007    function changecolordisabilitas(groups) {
2008      var namedatainput = '[class="bodytools"]';
2009      var namedatainput2 = '[class="aksestexttools"]';
2010      var listgroupselector = groups.map(function(group) {
2011        return group.querySelector(namedatainput);
2012      });
2013      var listdata = listgroupselector.map(function(group) {
2014        return Array.from(group.querySelectorAll(namedatainput2)).map(function(
2015          item
2016        ) {
2017          return item;
2018        });
2019      });
2020  
2021      var listdatall = [];
2022      var listdatall2 = [];
2023      for (let i = 0; i < listdata.length; i++) {
2024        for (let k = 0; k < listdata[i].length; k++) {
2025          var classactive = "";
2026          var classid = "";
2027          //     console.log(listdata[i][k].id);
2028          $("#" + listdata[i][k].id).css({
2029            color: "#00f3f7",
2030          });
2031          //  document.getElementById().style.color = "#0080FF";
2032          //  $("#thcontrash").css("color", "#0080FF");
2033        }
2034      }
2035    }
2036    $("#ncontrash").click(function(event) {
2037      //  tracking_fitur_disabilitas('Klise');
2038      var listdatagroup = cekclassactive(groups, "ncontrash");
2039      if (listdatagroup.getclass.classactiv == "active") {
2040        $(".navbar-inverse2").css("background-color", "rgb(0, 0, 0)");
2041        $(
2042          '*:not(".btn-color-mode-switch-inner,.mycheckbox,.Vue-Toastification__container")'
2043        ).each(function(i, item) {
2044          var color = $(item).css("color");
2045          $(item).cssImportant("background-color", "black");
2046          $(item).cssImportant("color", "yellow");
2047          $(item).cssImportant("background", "black");
2048        });
2049        $(
2050          '*:not(".fa-search,.titletools,svg,.btn-color-mode-switch-inner,.Vue-Toastification__container")'
2051        ).cssImportant("border-color", "white");
2052        hoveractive();
2053      } else {
2054        $("*").each(function(i, item) {
2055          var color = $(item).css("color");
2056          $(item).css({
2057            "background-color": "",
2058            background: "",
2059            color: "",
2060          });
2061        });
2062        $(
2063          '*:not(".fa-search,.titletools,svg,.btn-color-mode-switch-inner,.Vue-Toastification__container")'
2064        ).cssImportant("border-color", "");
2065        hovernoactive();
2066      }
2067    });
2068  
2069    function hoveractive() {
2070      $("* > a").hover(function(e) {
2071        if (e.type === "mouseenter") {
2072          $(this).css({
2073            "background-color": "#c23616",
2074            opacity: "0.5",
2075          });
2076        } else if (e.type === "mouseleave") {
2077          $(this).css({
2078            "background-color": "black",
2079            opacity: "",
2080          });
2081        }
2082      });
2083    }
2084  
2085    function hovernoactive() {
2086      $("* > a").hover(function(e) {
2087        // console.log(e.type);
2088        if (e.type === "mouseenter") {
2089          $(this).css({
2090            "background-color": "",
2091            opacity: "",
2092          });
2093        } else if (e.type === "mouseleave") {
2094          $(this).css({
2095            "background-color": "",
2096            opacity: "",
2097          });
2098        }
2099      });
2100    }
2101    $("#lgcontrash").click(function(event) {
2102      //  tracking_fitur_disabilitas('Penerangan');
2103      var listdatagroup = cekclassactive(groups, "lgcontrash");
2104      if (listdatagroup.getclass.classactiv == "active") {
2105        $("*").each(function(i, item) {
2106          var color = $(item).css("color");
2107          $(item).css({
2108            "background-color": "",
2109            background: "",
2110            color: "",
2111          });
2112        });
2113  
2114        $(
2115          '*:not(".fa-search,.titletools,svg,.btn-color-mode-switch-inner,.Vue-Toastification__container")'
2116        ).cssImportant("background-color", "white");
2117        $(
2118          '*:not(".fa-search,.titletools,svg,.btn-color-mode-switch-inner,.Vue-Toastification__container")'
2119        ).cssImportant("color", "black");
2120        $(
2121          '*:not(".fa-search,.titletools,svg,.btn-color-mode-switch-inner,.Vue-Toastification__container")'
2122        ).cssImportant("background", "white");
2123        $(
2124          '*:not(".fa-search,.titletools,svg,.btn-color-mode-switch-inner
2124,.Vue-Toastification__container")'
2125        ).cssImportant("border-color", "white");
2126        $("*:hover").cssImportant("border-color", "white");
2127        $("*:focus").cssImportant("border-color", "white");
2128  
2129        hovernoactive();
2130      } else {
2131        $("*").each(function(i, item) {
2132          var color = $(item).css("color");
2133          $(item).css({
2134            "background-color": "",
2135            background: "",
2136            color: "",
2137          });
2138        });
2139        $(
2140          '*:not(".fa-search,.titletools,svg,.btn-color-mode-switch-inner,.Vue-Toastification__container")'
2141        ).cssImportant("border-color", "");
2142        hovernoactive();
2143      }
2144      // resetcss();
2145    });
2146    $("#linkunderline").click(function(event) {
2147      //    tracking_fitur_disabilitas('Garis Bawahi Tautan');
2148      var listdatagroup = cekclassactive(groups, "linkunderline");
2149      if (listdatagroup.getclass.classactiv == "active") {
2150  
2151        var links = document.querySelectorAll("a,div > a,li a, a *");
2152        for (var i = 0; i < links.length; i++) {
2153          if (!isBlank(links[i].href)) {
2154  
2155            $(links[i]).cssImportant("textDecoration", "underline");
2156  
2157  
2158  
2159  
2160            //  links[i].style.textDecoration = "underline";
2161          }
2162        }
2163  
2164        $('a *:not(".fa-search,.titletools,svg,.btn-color-mode-switch-inner,.Vue-Toastification__container")').cssImportant("textDecoration", "underline");
2165        $(".toolbar-disabilitas  *").css({
2166          "text-decoration": "",
2167        });
2168      } else {
2169        $("*").css({
2170          "text-decoration": "",
2171        });
2172      }
2173    });
2174    $("#egrayscale").on("click", function(event) {
2175      //('Skala Abu-abu');
2176      var listdatagroup = cekclassactive(groups, "egrayscale");
2177      // console.log("grey");
2178      if (listdatagroup.getclass.classactiv == "active") {
2179        $("html").attr("class", "greyscaleall");
2180      } else {
2181        $("html").removeAttr("class");
2182      }
2183    });
2184  
2185    $("#resetdisabilitas").click(function(event) {
2186      //    tracking_fitur_disabilitas('Mengatur Ulang');
2187      var listdatagroup = cekclassactive(groups, "resetdisabilitas");
2188      if (listdatagroup.getclass.classactiv == "active") {
2189        resetcss();
2190        localStorage.removeItem("set_voice");
2191        localStorage.removeItem("permismobile");
2192      }
2193    });
2194  
2195    function resetcss() {
2196      localStorage.removeItem("set_voice");
2197      localStorage.removeItem("permismobile");
2198      arrayratatulisan.length = 0;
2199      arrayratatulisan.push(0);
2200
2201      $("*").each(function(i, item) {
2202        var color = $(item).css("color");        
2203        $(item).css({
2204          "background-color": "",
2205          background: "",
2206          color: "",
2207          "font-size": "",
2208          "text-decoration": "",
2209          "font-weight": "",
2210          "font-family": "",
2211        });
2212      });
2213      $("a").hover(function(e) {
2214        //console.log(e.type);
2215        if (e.type === "mouseenter") {
2216          $(this).css({
2217            "background-color": "",
2218            opacity: "",
2219          });
2220        } else if (e.type === "mouseleave") {
2221          $(this).css({
2222            "background-color": "",
2223            opacity: "",
2224          });
2225        }
2226      });
2227      $("html").removeAttr("class");
2228      $("*").css({
2229        "text-decoration": "",
2230        "border-color": "",
2231        "text-align": "",
2232      });
2233  
2234      rootFontSize = 20;
2235      $('*:not(".btn-color-mode-switch-inner")').each(function(i, item) {
2236        $(item).cssImportant("text-align", "");
2237        $(item).cssImportant("justify-content", "");
2238      });
2239  
2240      var text_tulisan = "";
2241      var langnew = 1;
2242  
2243      if (langdefault.length > 0) {
2244        langnew = langdefault[0];
2245      }
2246  
2247      if (langdefault.length == 0) {
2248        replacemultipletext(langnew, "noreset");
2249        var resultdata = replacemultipletext(langnew, "reset");
2250        text_tulisan = resultdata.ratatulisan;
2251      } else {
2252        langnew = langdefault[0];
2253  
2254        replacemultipletext(langnew, "noreset");
2255        var resultdata = replacemultipletext(langnew, "reset");
2256        // langdefault.length = 0;
2257        text_tulisan = resultdata.ratatulisan;
2258      }
2259      $("#tratatulisan").text(text_tulisan);
2260    }
2261  
2262    function cekclassactive(groups, idhtml) {
2263      if (idhtml != "resetdisabilitas") {
2264        $("#resetdisabilitas").removeClass("subtitletoolsactive");
2265        $("#resetdisabilitas").addClass("subtitletools");
2266      }
2267      var namedatainput = '[class="bodytools"]';
2268      var namedatainput2 = "div";
2269      var listgroupselector = groups.map(function(group) {
2270        return group.querySelector(namedatainput);
2271      });
2272      var listdata = listgroupselector.map(function(group) {
2273        return Array.from(group.querySelectorAll(namedatainput2)).map(function(
2274          item
2275        ) {
2276          return item;
2277        });
2278      });
2279      var listdatall = [];
2280      var listdatall2 = [];
2281      for (let i = 0; i < listdata.length; i++) {
2282        for (let k = 0; k < listdata[i].length; k++) {
2283          var classactive = "";
2284          var classid = "";
2285          if (listdata[i][k].id == idhtml) {
2286            if (
2287              $("#" + idhtml).hasClass("subtitletools") &&
2288              idhtml != "decreasetext"
2289            ) {
2290              classactive = "active";
2291              $("#" + idhtml).addClass("subtitletoolsactive");
2292              $("#" + idhtml).removeClass("subtitletools");
2293            } else if (
2294              $("#" + idhtml).hasClass("subtitletoolsactive") &&
2295              idhtml == "resetdisabilitas"
2296            ) {
2297              classactive = "noactive";
2298              $("#" + idhtml).removeClass("subtitletoolsactive");
2299              $("#" + idhtml).addClass("subtitletools");
2300            } else {
2301              classactive = "noactive";
2302              $("#" + idhtml).removeClass("subtitletoolsactive");
2303              $("#" + idhtml).addClass("subtitletools");
2304            }
2305          } else {
2306            if (idhtml == "resetdisabilitas") {
2307              classactive = "noactive";
2308              classid = listdata[i][k].id;
2309
2310            //   console.log(listdata[i][k].id)
2311            //   if ($("#" + listdata[i][k].id).hasClass("subtitletoolsactive")) {
2312            //     $("#" + listdata[i][k].id).removeClass("subtitletoolsactive");
2313            //     $("#" + listdata[i][k].id).addClass("subtitletools");
2314            //   }
2315            } else if (
2316              idhtml == "lgcontrash" ||
2317              idhtml == "ncontrash" ||
2318              idhtml == "hcontrash"
2319            ) {
2320              if (
2321                listdata[i][k].id == "lgcontrash" ||
2322                listdata[i][k].id == "ncontrash" ||
2323                listdata[i][k].id == "hcontrash"
2324              ) {
2325                if ($("#" + listdata[i][k].id).hasClass("subtitletoolsactive")) {
2326                  $("#" + listdata[i][k].id).removeClass("subtitletoolsactive");
2327                  $("#" + listdata[i][k].id).addClass("subtitletools");
2328                }
2329              }
2330            }
2331          }
2332          //console.log(classactive);
2333          var loopmulti = {
2334            id: listdata[i][k].id,
2335            class: listdata[i][k].className,
2336            classactiv: classactive,
2337          };
2338          listdatall.push(loopmulti);
2339        }
2340      }
2341      var cekactiveclass = listdatall.filter(function(group) {
2342        return group.id == idhtml;
2343      });
2344      var returndata = {
2345        getclass: cekactiveclass[0],
2346        data: listdata,
2347      };
2348      return returndata;
2349    }
2350  
2351  
2352    $("#webspeach").click(function(event) {
2353      // tracking_fitur_disabilitas('Moda Suara');
2354      var listdatagroup = cekclassactive(groups, "webspeach");
2355      if (listdatagroup.getclass.classactiv == "active") {
2356        toggleSpeech()
2357      }else{
2358        toggleSpeech()
2359      }
2360    });
2361
2362    function toggleSpeech()
2363    {
2364      if (localStorage.getItem("set_voice") == 'on') {
2365          localStorage.setItem('set_voice', 'off');
2366          localStorage.removeItem("set_voice");
2367          bicara('Mode suara dimatikan');
2368          $('.voice-button').css('display', 'none')
2369          $('#voice_icon').html('<i class="fa fa-volume-off" aria-hidden="true"></i>')
2370      }else{
2371          localStorage.setItem('set_voice', 'on');
2372          bicara('Mode suara dinyalakan')
2373          $('.voice-button').css('display', '')
2374          $('#voice_icon').html('<i class="fa fa-volume-up text-white" aria-hidden="true"></i>')
2375      }
2376    }
2377  
2378  
2379    $("#mobileapp").click(function(event) {
2380      //     tracking_fitur_disabilitas('Moda Suara Mobile Apps');
2381      var listdatagroup = cekclassactive(groups, "mobileapp");
2382      if (listdatagroup.getclass.classactiv == "active") {
2383        localStorage.setItem("permismobile", "on");
2384        toggleSpeech()
2385      } else {
2386        localStorage.setItem("permismobile", "off");
2387        toggleSpeech()
2388      }
2389    });
2390    // localStorage.removeItem("permismobile");
2391    // localStorage.removeItem("set_voice");
2392  
2393    $(document).on("mouseover", "a > *:not('.subtitletools')", function() {
2394      var textvalue = $(this).text().toString();
2395      if (localStorage.getItem("set_voice") == 'on') {
2396        bicara(textvalue);
2397        // speachmobile(textvalue);
2398      }
2399    });
2400  
2401    $(document).on("mouseover", "a:not('.subtitletools')", function() {
2402      var textvalue = $(this).text().toString();
2403      if (localStorage.getItem("set_voice") == 'on') {
2404        bicara(textvalue);
2405        // speachmobile(textvalue);
2406      }
2407    });
2408  
2409    if (getOS() == "Windows" || getOS() == "Mac OS" || getOS() == "Linux") {
2410      var namedatainput = '[class="bodytools"]';
2411      var namedatainput2 = "div";
2412      var listgroupselector = groups.map(function(group) {
2413        return group.querySelector(namedatainput);
2414      });
2415      var listdata = listgroupselector.map(function(group) {
2416        return Array.from(group.querySelectorAll(namedatainput2)).map(function(
2417          item
2418        ) {
2419          return item;
2420        });
2421      });
2422  
2423      var listdatall = [];
2424  
2425      for (let i = 0; i < listdata.length; i++) {
2426        for (let k = 0; k < listdata[i].length; k++) {
2427          var tagid = "#" + listdata[i][k].id;
2428  
2429          if (tagid == "#ratatulisan") {
2430            $(tagid).click(function() {
2431              var mytext = $(this).text();
2432              callfunction(mytext);
2433            });
2434          }
2435        }
2436      }
2437  
2438      $(document).on("mouseover", ".subtitletools", function() {
2439        var textvalue = $(this).text().toString();
2440        callfunction(textvalue);
2441      });
2442    } else {
2443      var namedatainput = '[class="bodytools"]';
2444      var namedatainput2 = "div";
2445      var listgroupselector = groups.map(function(group) {
2446        return group.querySelector(namedatainput);
2447      });
2448      var listdata = listgroupselector.map(function(group) {
2449        return Array.from(group.querySelectorAll(namedatainput2)).map(function(
2450          item
2451        ) {
2452          return item;
2453        });
2454      });
2455  
2456      var listdatall = [];
2457  
2458      for (let i = 0; i < listdata.length; i++) {
2459        for (let k = 0; k < listdata[i].length; k++) {
2460          var tagid = "#" + listdata[i][k].id;
2461          var notagid = listdata[i][k].id;
2462  
2463          if (tagid != "#resetdisabilitas" && tagid != "#mobileapp") {
2464            $(tagid).click(function() {
2465              var mytext = $(this).text();
2466              callfunction(mytext);
2467            });
2468          }
2469          if (notagid == "resetdisabilitas") {
2470            $(document).on("mouseover", ".subtitletools", function() {
2471              var textvalue = $(this).text().toString();
2472              callmobile(textvalue);
2473            });
2474          }
2475        }
2476      }
2477    }
2478  
2479    function callmobile(value) {
2480      var voicecek = localStorage.getItem("permismobile");
2481      if (voicecek != null && voicecek == "on") {
2482        speachmobile(value);
2483      }
2484    }
2485  </script>
2485      </div>        
2486        
2486<script>
2487  // Text to voice
2488  $('#set_voice').on('click', function(){
2489      const param = 'on';
2490      if (localStorage.getItem("set_voice") == param) {
2491          bicara('Fitur text to voice dimatikan')
2492          localStorage.setItem('set_voice', 'off');
2493          $('#voice_icon').html('<i class="fa fa-volume-off" aria-hidden="true"></i>')
2494      }else{
2495          localStorage.setItem('set_voice', 'on');
2496          $('#voice_icon').html('<i class="fa fa-volume-up" aria-hidden="true"></i>')
2497          bicara('Fitur text to voice dinyalakan')
2498      }
2499  })
2500  $(window).on('load', function() {
2501        localStorage.removeItem('set_voice');
2502        if (localStorage.getItem("set_voice") == 'on') {
2503            $('#set_voice #voice_icon').html('<i class="fa fa-volume-up" aria-hidden="true"></i>')
2504        }else{
2505            localStorage.setItem('set_voice', 'off');
2506            $('#set_voice #voice_icon').html('<i class="fa fa-volume-off" aria-hidden="true"></i>')
2507        }
2508  });
2509  // voice call automatic
2510  $("ol li, p, h1, h2, h3, h4, h5, h6, span, figcaption").not('.speechx').on({
2511      mouseenter: function () {
2512          var text = '';
2513          if ($(this).length > 0) {
2514              var text = $(this).text();
2515          }
2516          if (localStorage.getItem("set_voice") == 'on') {
2517            // responsiveVoice.speak(text, "Indonesian Female");
2518            bicara(text)
2519          }
2520      },
2521      mouseleave: function () {
2522          bacot()
2523      }
2524  });
2525</script>
vendor: 1 bytes, line 2525
2525
2526<script src="https://badungkab.go.id/theme/harmonigov/vendor/jquery/jquery.min.js"></script>
vendor: 1 bytes, line 2526
2526
2527<script src="https://badungkab.go.id/theme/harmonigov/assets/js/speech_recognition.js"></script>
vendor: 1 bytes, line 2527
2527
2528<script>
2529  function elemToStr(elem)
2530  {
2531    var text = elem;
2532    if ($(elem).length > 0) {
2533      var text = $(elem).text();
2534    }
2535    if (text.length > 0) {
2536      return text.replace(/<\/?[^>]+(>|$)/g, "");
2537    }
2538    return "";
2539  }
2540
2541  function chunkStrKeepWord(input, len)
2542  {
2543    var curr = len;
2544    var prev = 0;
2545    output = [];
2546    while (input[curr]) {
2547        if (input[curr++] == ' ') {
2548            output.push(input.substring(prev,curr));
2549            prev = curr;
2550            curr += len;
2551        }
2552    }
2553    output.push(input.substr(prev));
2554    return output;
2555  }
2556
2557  function setCapsule(str)
2558  {
2559    $('#dynSvg').html('<svg fill="#ffffff" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <title>ear-slash</title> <path d="M20.592 23.441c-0.128-0.048-0.275-0.076-0.43-0.076-0.536 0-0.994 0.337-1.171 0.812l-0.003 0.009-0.102 0.299c-0.098 0.328-0.168 0.711-0.196 1.105l-0.001 0.018c-0.013 0.22-0.046 0.426-0.097 0.624l0.005-0.022c-0.083 0.282-0.177 0.522-0.288 0.752l0.013-0.029c-0.221 0.428-0.506 0.791-0.846 1.092l-0.004 0.003c-0.732 0.622-1.656 1.040-2.671 1.156l-0.023 0.002c-0.235 0.033-0.506 0.052-0.781 0.052-0.818 0-1.597-0.167-2.304-0.469l0.038 0.015c-0.893-0.371-1.607-1.022-2.049-1.842l-0.011-0.022c-0.266-0.544-0.422-1.183-0.422-1.859 0-0.021 0-0.043 0-0.064l-0 0.003c0-0.69-0.56-1.25-1.25-1.25s-1.25 0.56-1.25 1.25v0c-0 0.018-0 0.038-0 0.059 0 1.085 0.254 2.111 0.706 3.021l-0.018-0.040c0.72 1.368 1.868 2.429 3.262 3.023l0.043 0.016c0.947 0.415 2.051 0.656 3.211 0.656 0.011 0 0.022-0 0.034-0h-0.002c0.392-0 0.778-0.026 1.156-0.075l-0.045 0.005c1.561-0.182 2.947-0.821 4.049-1.779l-0.009 0.008c0.574-0.512 1.049-1.12 1.402-1.801l0.016-0.035c0.155-0.309 0.301-0.675 0.417-1.055l0.013-0.050c0.096-0.323 0.165-0.699 0.192-1.087l0.001-0.017c0.014-0.227 0.048-0.44 0.101-0.644l-0.005 0.023 0.063-0.184c0.048-0.128 0.076-0.275 0.076-0.429 0-0.536-0.337-0.993-0.812-1.171l-0.009-0.003zM12 24.695c1.816-0.058 3.266-1.543 3.266-3.368 0-0.115-0.006-0.229-0.017-0.341l0.001 0.014c0.003-0.487 0.151-0.938 0.404-1.313l-0.005 0.008c0.132-0.195 0.211-0.436 0.211-0.695 0-0.69-0.559-1.249-1.249-1.249-0.431 0-0.811 0.218-1.035 0.55l-0.003 0.004c-0.512 0.758-0.818 1.69-0.822 2.694v0.001c0 0.727-0.294 1.195-0.75 1.195s-0.75-0.469-0.75-1.195c0-0.69-0.56-1.25-1.25-1.25s-1.25 0.56-1.25 1.25v0c-0.010 0.098-0.016 0.212-0.016 0.327 0 1.825 1.45 3.31 3.261 3.368l0.005 0zM30.885 29.115l-7.577-7.577c0.136-0.148 0.261-0.307 0.401-0.449 0.262-0.26 0.521-0.523 0.762-0.814 1.214-1.476 2.104-3.266 2.534-5.228l0.015-0.083c0.151-0.76 0.238-1.634 0.238-2.528 0-0.154-0.003-0.307-0.008-0.459l0.001 0.022c0-7.27-4.723-10.544-8.766-11.14-0.463-0.075-0.996-0.119-1.539-0.119-3.884 0-7.253 2.201-8.929 5.424l-0.026 0.056-5.106-5.105c-0.226-0.225-0.537-0.363-0.881-0.363-0.69 0-1.25 0.56-1.25 1.25 0 0.344 0.139 0.655 0.363 0.881l27.999 28.001c0.226 0.226 0.539 0.366 0.884 0.366 0.691 0 1.251-0.56 1.251-1.251 0-0.345-0.14-0.658-0.366-0.884l0 0zM18.121 3.334c3.057 0.45 6.629 2.99 6.629 8.666 0.005 0.124 0.008 0.27 0.008 0.416 0 0.717-0.067 1.418-0.194 2.098l0.011-0.070c-0.241 1.112-0.633 2.096-1.162 2.991l0.025-0.046c-0.286 0.493-0.583 0.917-0.911 1.315l0.013-0.016c-0.188 0.227-0.393 0.432-0.598 0.635-0.134 0.134-0.276 0.282-0.418 0.432l-2.339-2.339c0.604-0.871 0.965-1.951 0.965-3.116 0-1.199-0.383-2.309-1.034-3.214l0.011 0.016c-0.998-1.28-2.54-2.096-4.273-2.096-0.065 0-0.13 0.001-0.194 0.003l0.009-0c-0.426 0.026-0.824 0.099-1.203 0.215l0.037-0.010c0.643-1.309 1.967-2.194 3.497-2.194 0.062 0 0.123 0.001 0.184 0.004l-0.009-0c2.248 0.209 3.994 2.086 3.994 4.371 0 0.213-0.015 0.423-0.045 0.627l0.003-0.023c0 0.69 0.56 1.25 1.25 1.25s1.25-0.56 1.25-1.25v0c0.020-0.197 0.032-0.426 0.032-0.657 0-3.613-2.806-6.571-6.357-6.813l-0.021-0.001c-0.061-0.002-0.133-0.003-0.206-0.003-2.902 0-5.36 1.904-6.192 4.531l-0.013 0.046-0.97-0.97c1.112-2.88 3.859-4.886 7.074-4.886 0.405 0 0.802 0.032 1.19 0.093l-0.043-0.006zM13.62 11.851c0.337-0.192 0.735-0.316 1.16-0.343l0.008-0c0.030-0.001 0.064-0.002 0.099-0.002 0.91 0 1.72 0.429 2.239 1.095l0.005 0.006c0.328 0.474 0.524 1.060 0.524 1.693 0 0.47-0.108 0.915-0.301 1.311l0.008-0.018z"></path> </g></svg>');
2560  }
2561  function splashCapsule(str)
2562  {
2563    setCapsule(str);
2564    setTimeout(function () {
2565      resetCapsule();
2566    }, 1000);
2567  }
2568  function resetCapsule()
2569  {
2570    $('#dynSvg').html('<svg fill="#ffffff" version="1.1" id="Listening" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewB
2570ox="0 0 128 128" xml:space="preserve"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <path id="_x34__1_" d="M39.6,108.1c-8.8,0-16-7.2-16-16c0-2.2,1.8-4,4-4s4,1.8,4,4c0,4.4,3.6,8,8,8c2.8,0,5.4-1.5,6.9-3.9 c0.6-1,1.4-2.8,2.3-4.7c1.7-3.8,3.6-8.1,6-11.2c1.9-2.5,4.7-5,7.4-7.5c2.7-2.5,5.8-5.4,6.8-7.2c2-3.5,3-7.4,3-11.4 c0-12.7-10.3-23-23-23s-23,10.3-23,23c0,2.2-1.8,4-4,4s-4-1.8-4-4c0-17.1,13.9-31,31-31c17.1,0,31,13.9,31,31 c0,5.4-1.4,10.7-4.1,15.4c-1.6,2.9-4.9,5.9-8.4,9.1c-2.4,2.3-5,4.6-6.5,6.5c-1.8,2.3-3.6,6.3-5,9.5c-1,2.2-1.8,4.1-2.7,5.6 C50.5,105.1,45.2,108.1,39.6,108.1z"></path> <path id="_x33__2_" d="M34,79.6c-2.2,0-4-1.8-4-4s1.8-4,4-4c2,0,3.7-1.6,3.7-3.7c0-2-1.6-3.7-3.7-3.7c-2.2,0-4-1.8-4-4v-6 c0-10.5,8.5-19,19-19s19,8.5,19,19c0,3.3-0.8,6.5-2.4,9.3c-0.1,0.1-0.1,0.2-0.2,0.3c-0.8,1.2-2.7,3-5.9,6l-1.2,1.1 c-1.6,1.5-4.2,1.4-5.7-0.2c-1.5-1.6-1.4-4.2,0.2-5.7L54,64c2.6-2.4,4.2-3.9,4.7-4.6c0.8-1.6,1.3-3.4,1.3-5.2c0-6.1-4.9-11-11-11 s-11,4.9-11,11v2.7c4.5,1.6,7.7,5.9,7.7,11C45.7,74.3,40.5,79.6,34,79.6z"></path> <path id="_x32__15_" d="M85,78.7c-0.6,0-1.2-0.2-1.7-0.5c-1.7-1-2.2-3.1-1.3-4.8c3.3-5.8,5.1-12.3,5.1-19c0-6.8-1.8-13.4-5.2-19.2 c-1-1.7-0.4-3.8,1.2-4.8c1.7-1,3.8-0.4,4.8,1.2c4.1,6.9,6.2,14.8,6.2,22.8c0,7.9-2.1,15.6-6,22.5C87.4,78.1,86.2,78.7,85,78.7z"></path> <path id="_x31__17_" d="M95.9,90.1c-0.8,0-1.5-0.2-2.2-0.7c-1.8-1.2-2.3-3.7-1.1-5.6c5.9-8.7,9-18.8,9-29.4 c0-10.6-3.2-20.9-9.2-29.6c-1.2-1.8-0.8-4.3,1-5.6c1.8-1.2,4.3-0.8,5.6,1c6.9,10.1,10.6,21.9,10.6,34.1c0,12.1-3.6,23.8-10.3,33.8 C98.4,89.5,97.1,90.1,95.9,90.1z"></path> </g></svg>');
2571  }
2572
2573  function sound(element)
2574  {
2575    $("div.speechx-status").show();
2576    $("i", element).toggleClass("fa-volume-off fa-volume-up");
2577    $(element).toggleClass("off on");
2578    if ($(element).hasClass("on")) {
2579      bicara(chunkStrKeepWord(searchContent(), 100), 0);
2580      setCapsule("<small>Berbicara...</small>&nbsp;")
2581    }
2582    if ($(element).hasClass("off")) {
2583      bacot();
2584      splashCapsule("<small>Berhenti...</small>&nbsp;");
2585    }
2586  }
2587
2588  function searchContent()
2589  {
2590    let title = elemToStr($(".speech-title"));
2591    if (title=="") {
2592      return "Tidak ditemukan bacaan pada halaman ini.";
2593    }
2594    let content = elemToStr($(".speech-content"));
2595    let time = elemToStr($(".speech-time"));
2596    let full_content = "Judul: " + title + ". Dibuat pada " + time + ". " + content + ". Selesai.";
2597    return full_content.replace(/\s+/g, ' ').trim();
2598  }
2599
2600  document.addEventListener("DOMContentLoaded", () => {
2601    localStorage.setItem('set_voice', 'on');
2602    console.log(chunkStrKeepWord(searchContent(), 100));
2603    resetCapsule();
2604  });
2605
2606  // Add event listener on keydown
2607  document.addEventListener('keydown', (event) => {
2608    var name = event.key;
2609    var code = event.code;
2610    if (name === 'Shift') {
2611      return;
2612    }
2613    if (event.shiftKey) {
2614      if (code == "F2") {
2615        sound($("a#bicara"));
2616      }
2617    }
2618  }, false);
2619</script>
2619
2620        
2620<script>
2621  function elemToStr(elem)
2622  {
2623    var text = elem;
2624    if ($(elem).length > 0) {
2625      var text = $(elem).text();
2626    }
2627    if (text.length > 0) {
2628      return text.replace(/<\/?[^>]+(>|$)/g, "");
2629    }
2630    return "";
2631  }
2632
2633  function chunkStrKeepWord(input, len)
2634  {
2635    var curr = len;
2636    var prev = 0;
2637    output = [];
2638    while (input[curr]) {
2639        if (input[curr++] == ' ') {
2640            output.push(input.substring(prev,curr));
2641            prev = curr;
2642            curr += len;
2643        }
2644    }
2645    output.push(input.substr(prev));
2646    return output;
2647  }
2648
2649  function setCapsule(str)
2650  {
2651    $('#dynSvg').html('<svg fill="#ffffff" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <title>ear-slash</title> <path d="M20.592 23.441c-0.128-0.048-0.275-0.076-0.43-0.076-0.536 0-0.994 0.337-1.171 0.812l-0.003 0.009-0.102 0.299c-0.098 0.328-0.168 0.711-0.196 1.105l-0.001 0.018c-0.013 0.22-0.046 0.426-0.097 0.624l0.005-0.022c-0.083 0.282-0.177 0.522-0.288 0.752l0.013-0.029c-0.221 0.428-0.506 0.791-0.846 1.092l-0.004 0.003c-0.732 0.622-1.656 1.040-2.671 1.156l-0.023 0.002c-0.235 0.033-0.506 0.052-0.781 0.052-0.818 0-1.597-0.167-2.304-0.469l0.038 0.015c-0.893-0.371-1.607-1.022-2.049-1.842l-0.011-0.022c-0.266-0.544-0.422-1.183-0.422-1.859 0-0.021 0-0.043 0-0.064l-0 0.003c0-0.69-0.56-1.25-1.25-1.25s-1.25 0.56-1.25 1.25v0c-0 0.018-0 0.038-0 0.059 0 1.085 0.254 2.111 0.706 3.021l-0.018-0.040c0.72 1.368 1.868 2.429 3.262 3.023l0.043 0.016c0.947 0.415 2.051 0.656 3.211 0.656 0.011 0 0.022-0 0.034-0h-0.002c0.392-0 0.778-0.026 1.156-0.075l-0.045 0.005c1.561-0.182 2.947-0.821 4.049-1.779l-0.009 0.008c0.574-0.512 1.049-1.12 1.402-1.801l0.016-0.035c0.155-0.309 0.301-0.675 0.417-1.055l0.013-0.050c0.096-0.323 0.165-0.699 0.192-1.087l0.001-0.017c0.014-0.227 0.048-0.44 0.101-0.644l-0.005 0.023 0.063-0.184c0.048-0.128 0.076-0.275 0.076-0.429 0-0.536-0.337-0.993-0.812-1.171l-0.009-0.003zM12 24.695c1.816-0.058 3.266-1.543 3.266-3.368 0-0.115-0.006-0.229-0.017-0.341l0.001 0.014c0.003-0.487 0.151-0.938 0.404-1.313l-0.005 0.008c0.132-0.195 0.211-0.436 0.211-0.695 0-0.69-0.559-1.249-1.249-1.249-0.431 0-0.811 0.218-1.035 0.55l-0.003 0.004c-0.512 0.758-0.818 1.69-0.822 2.694v0.001c0 0.727-0.294 1.195-0.75 1.195s-0.75-0.469-0.75-1.195c0-0.69-0.56-1.25-1.25-1.25s-1.25 0.56-1.25 1.25v0c-0.010 0.098-0.016 0.212-0.016 0.327 0 1.825 1.45 3.31 3.261 3.368l0.005 0zM30.885 29.115l-7.577-7.577c0.136-0.148 0.261-0.307 0.401-0.449 0.262-0.26 0.521-0.523 0.762-0.814 1.214-1.476 2.104-3.266 2.534-5.228l0.015-0.083c0.151-0.76 0.238-1.634 0.238-2.528 0-0.154-0.003-0.307-0.008-0.459l0.001 0.022c0-7.27-4.723-10.544-8.766-11.14-0.463-0.075-0.996-0.119-1.539-0.119-3.884 0-7.253 2.201-8.929 5.424l-0.026 0.056-5.106-5.105c-0.226-0.225-0.537-0.363-0.881-0.363-0.69 0-1.25 0.56-1.25 1.25 0 0.344 0.139 0.655 0.363 0.881l27.999 28.001c0.226 0.226 0.539 0.366 0.884 0.366 0.691 0 1.251-0.56 1.251-1.251 0-0.345-0.14-0.658-0.366-0.884l0 0zM18.121 3.334c3.057 0.45 6.629 2.99 6.629 8.666 0.005 0.124 0.008 0.27 0.008 0.416 0 0.717-0.067 1.418-0.194 2.098l0.011-0.070c-0.241 1.112-0.633 2.096-1.162 2.991l0.025-0.046c-0.286 0.493-0.583 0.917-0.911 1.315l0.013-0.016c-0.188 0.227-0.393 0.432-0.598 0.635-0.134 0.134-0.276 0.282-0.418 0.432l-2.339-2.339c0.604-0.871 0.965-1.951 0.965-3.116 0-1.199-0.383-2.309-1.034-3.214l0.011 0.016c-0.998-1.28-2.54-2.096-4.273-2.096-0.065 0-0.13 0.001-0.194 0.003l0.009-0c-0.426 0.026-0.824 0.099-1.203 0.215l0.037-0.010c0.643-1.309 1.967-2.194 3.497-2.194 0.062 0 0.123 0.001 0.184 0.004l-0.009-0c2.248 0.209 3.994 2.086 3.994 4.371 0 0.213-0.015 0.423-0.045 0.627l0.003-0.023c0 0.69 0.56 1.25 1.25 1.25s1.25-0.56 1.25-1.25v0c0.020-0.197 0.032-0.426 0.032-0.657 0-3.613-2.806-6.571-6.357-6.813l-0.021-0.001c-0.061-0.002-0.133-0.003-0.206-0.003-2.902 0-5.36 1.904-6.192 4.531l-0.013 0.046-0.97-0.97c1.112-2.88 3.859-4.886 7.074-4.886 0.405 0 0.802 0.032 1.19 0.093l-0.043-0.006zM13.62 11.851c0.337-0.192 0.735-0.316 1.16-0.343l0.008-0c0.030-0.001 0.064-0.002 0.099-0.002 0.91 0 1.72 0.429 2.239 1.095l0.005 0.006c0.328 0.474 0.524 1.060 0.524 1.693 0 0.47-0.108 0.915-0.301 1.311l0.008-0.018z"></path> </g></svg>');
2652  }
2653  function splashCapsule(str)
2654  {
2655    setCapsule(str);
2656    setTimeout(function () {
2657      resetCapsule();
2658    }, 1000);
2659  }
2660  function resetCapsule()
2661  {
2662    $('#dynSvg').html('<svg fill="#ffffff" version="1.1" id="Listening" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewB
2662ox="0 0 128 128" xml:space="preserve"><g id="SVGRepo_bgCarrier" stroke-width="0"></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g><g id="SVGRepo_iconCarrier"> <path id="_x34__1_" d="M39.6,108.1c-8.8,0-16-7.2-16-16c0-2.2,1.8-4,4-4s4,1.8,4,4c0,4.4,3.6,8,8,8c2.8,0,5.4-1.5,6.9-3.9 c0.6-1,1.4-2.8,2.3-4.7c1.7-3.8,3.6-8.1,6-11.2c1.9-2.5,4.7-5,7.4-7.5c2.7-2.5,5.8-5.4,6.8-7.2c2-3.5,3-7.4,3-11.4 c0-12.7-10.3-23-23-23s-23,10.3-23,23c0,2.2-1.8,4-4,4s-4-1.8-4-4c0-17.1,13.9-31,31-31c17.1,0,31,13.9,31,31 c0,5.4-1.4,10.7-4.1,15.4c-1.6,2.9-4.9,5.9-8.4,9.1c-2.4,2.3-5,4.6-6.5,6.5c-1.8,2.3-3.6,6.3-5,9.5c-1,2.2-1.8,4.1-2.7,5.6 C50.5,105.1,45.2,108.1,39.6,108.1z"></path> <path id="_x33__2_" d="M34,79.6c-2.2,0-4-1.8-4-4s1.8-4,4-4c2,0,3.7-1.6,3.7-3.7c0-2-1.6-3.7-3.7-3.7c-2.2,0-4-1.8-4-4v-6 c0-10.5,8.5-19,19-19s19,8.5,19,19c0,3.3-0.8,6.5-2.4,9.3c-0.1,0.1-0.1,0.2-0.2,0.3c-0.8,1.2-2.7,3-5.9,6l-1.2,1.1 c-1.6,1.5-4.2,1.4-5.7-0.2c-1.5-1.6-1.4-4.2,0.2-5.7L54,64c2.6-2.4,4.2-3.9,4.7-4.6c0.8-1.6,1.3-3.4,1.3-5.2c0-6.1-4.9-11-11-11 s-11,4.9-11,11v2.7c4.5,1.6,7.7,5.9,7.7,11C45.7,74.3,40.5,79.6,34,79.6z"></path> <path id="_x32__15_" d="M85,78.7c-0.6,0-1.2-0.2-1.7-0.5c-1.7-1-2.2-3.1-1.3-4.8c3.3-5.8,5.1-12.3,5.1-19c0-6.8-1.8-13.4-5.2-19.2 c-1-1.7-0.4-3.8,1.2-4.8c1.7-1,3.8-0.4,4.8,1.2c4.1,6.9,6.2,14.8,6.2,22.8c0,7.9-2.1,15.6-6,22.5C87.4,78.1,86.2,78.7,85,78.7z"></path> <path id="_x31__17_" d="M95.9,90.1c-0.8,0-1.5-0.2-2.2-0.7c-1.8-1.2-2.3-3.7-1.1-5.6c5.9-8.7,9-18.8,9-29.4 c0-10.6-3.2-20.9-9.2-29.6c-1.2-1.8-0.8-4.3,1-5.6c1.8-1.2,4.3-0.8,5.6,1c6.9,10.1,10.6,21.9,10.6,34.1c0,12.1-3.6,23.8-10.3,33.8 C98.4,89.5,97.1,90.1,95.9,90.1z"></path> </g></svg>');
2663  }
2664
2665  function sound(element)
2666  {
2667    $("div.speechx-status").show();
2668    $("i", element).toggleClass("fa-volume-off fa-volume-up");
2669    $(element).toggleClass("off on");
2670    if ($(element).hasClass("on")) {
2671      bicara(chunkStrKeepWord(searchContent(), 100), 0);
2672      setCapsule("<small>Berbicara...</small>&nbsp;")
2673    }
2674    if ($(element).hasClass("off")) {
2675      bacot();
2676      splashCapsule("<small>Berhenti...</small>&nbsp;");
2677    }
2678  }
2679
2680  function searchContent()
2681  {
2682    let title = elemToStr($(".speech-title"));
2683    if (title=="") {
2684      return "Tidak ditemukan bacaan pada halaman ini.";
2685    }
2686    let content = elemToStr($(".speech-content"));
2687    let time = elemToStr($(".speech-time"));
2688    let full_content = "Judul: " + title + ". Dibuat pada " + time + ". " + content + ". Selesai.";
2689    return full_content.replace(/\s+/g, ' ').trim();
2690  }
2691
2692  document.addEventListener("DOMContentLoaded", () => {
2693    localStorage.setItem('set_voice', 'on');
2694    console.log(chunkStrKeepWord(searchContent(), 100));
2695    resetCapsule();
2696  });
2697
2698  // Add event listener on keydown
2699  document.addEventListener('keydown', (event) => {
2700    var name = event.key;
2701    var code = event.code;
2702    if (name === 'Shift') {
2703      return;
2704    }
2705    if (event.shiftKey) {
2706      if (code == "F2") {
2707        sound($("a#bicara"));
2708      }
2709    }
2710  }, false);
2711</script>
vendor: 1 bytes, line 2711
2711

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.