1<!DOCTYPE html> 2<html lang="id"> 3<head> 4 <meta charset="UTF-8"> 5 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 7 <!-- Title --> 8 <title>Download Aplikasi Banyumili Travel â Pesan Travel Mudah & Cepat</title> 9 10 <meta name="description" content="Download aplikasi Banyumili Travel di Google Play/App Store untuk pesan tiket lebih praktis di mana saja & kapan saja. Banyak promo khususnya!"> 11 12 <meta name="keywords" content="download aplikasi banyumili travel"> 13 14 15 <link href="https://www.banyumilitravel.id/global/css/bootstrap.min.css" rel="stylesheet"> 16 <link rel="stylesheet" href="https://www.banyumilitravel.id/global/css/slick-theme.css"> 17 <link rel="stylesheet" href="https://www.banyumilitravel.id/global/css/slick.css"> 18 <title data-i18n="downloadAppPageTitle">Unduh Aplikasi</title> 19 <!-- Google tag (gtag.js) -->
vendor: 68 bytes, lines 19-20
19 20 <script async src="https://www.googletagmanager.com/gtag/js?id=
20G-NDY6LN70BZ
vendor: 16 bytes, lines 20-21
20"></script> 21
21<script> 22
vendor: 152 bytes, lines 22-26
22window.dataLayer = window.dataLayer || []; 23 function gtag(){dataLayer.push(arguments);} 24 gtag('js', new Date()); 25 26 gtag('config', "
26G-NDY6LN70BZ
vendor: 8 bytes, lines 26-27
26"); 27
27</script>
27 28 29 <style> 30 .btn-softblue { 31 background: #EFF6FF; 32 color: #2563EB; 33 } 34 35 .rounded-10 { 36 border-radius: 10px; 37 } 38 39 .dashed-line-with-text { 40 position: relative; 41 text-align: center; 42 margin: 20px 0; 43 } 44 45 .dashed-line-with-text::before { 46 content: ''; 47 position: absolute; 48 top: 50%; 49 left: 0; 50 right: 0; 51 border-top: 2px dashed #dddddd; 52 z-index: 1; 53 } 54 55 .dashed-line-with-text span { 56 position: relative; 57 background-color: #fff; /* Background to cover the line */ 58 padding: 0 10px; 59 z-index: 2; 60 color: #dddddd; 61 } 62 63 .doa-slider .border { 64 display: flex; 65 flex-direction: column; /* Konten ditampilkan dalam kolom */ 66 justify-content: center; /* Vertikal: Konten di tengah */ 67 align-items: center; /* Horizontal: Konten di tengah */ 68 height: 200px; /* Tinggi tetap untuk semua item */ 69 text-align: center; /* Teks di tengah */ 70 box-sizing: border-box; /* Pastikan padding tidak memengaruhi ukuran */ 71 } 72 73 .doa-slider { 74 display: flex; /* Agar semua item mendapatkan ukuran konsisten */ 75 flex-wrap: wrap; /* Jika ada lebih dari satu baris slider */ 76 } 77 78 .slick-dots { 79 position: relative !important; 80 bottom: 0px !important; 81 } 82 </style> 83</head> 84<body> 85 <div class="container"> 86 <div class="row" style="min-height: 100vh;"> 87 <div class="col-lg-4 mx-auto my-auto"> 88 <p class="text-center my-4"> 89 <img src="/images/download/d-banyumili.png" class="img-fluid" style="width: 80px; "> 90 </p> 91 92 93 <p><div class="mb-2 my-auto mx-auto mb-3 text-center" id="qrcode"></div></p> 94 95 <div class="col-lg-12 mb-2"> 96 <div class="d-flex justify-content-center"> 97 <div class="align-self-center"> 98 <a href="https://play.google.com/store/apps/details?id=id.co.tbk.android.banyumili"><img src="https://www.banyumilitravel.id/global/images/download/playstore.png" style="width:150px;"></a> </div> 99 <div class="align-self-center"> 100 <a href="https://apps.apple.com/app/banyumili/id6498587668"><img src="https://www.banyumilitravel.id/global/images/download/appstore.png" style="width:150px"></a> </div> 101 </div> 102 </div> 103 <div class="col-lg-12 mb-2"> 104 <a class="btn rounded-10 btn-block border py-3" target="_blank" href="https://wa.me/6282141864864"> 105 <p class="mb-0"> 106 <img width="20" src="https://www.banyumilitravel.id/global/images/color-sosmed/whatsapp.png" class="img-fluid ml-2" alt=""> 107 Whatsapp 108 </p> 109 </a> 110 </div> 111 <div class="col-lg-12 mb-2"> 112 <a class="btn rounded-10 btn-block border py-3" target="_blank" href="https://www.instagram.com/banyumilitravel"> 113 <p class="mb-0"> 114 <img width="20" src="https://www.banyumilitravel.id/global/images/color-sosmed/instagram.png" class="img-fluid ml-2" alt=""> 115 Instagram 116 </p> 117 </a> 118 </div> 119 <div class="col-lg-12 mb-2"> 120 <a class="btn rounded-10 btn-block border py-3" target="_blank" href="https://www.facebook.com/banyumilitrans"> 121 <p class="mb-0"> 122 <img width="20" src="https://www.banyumilitravel.id/global/images/color-sosmed/facebook.png" class="img-fluid ml-2" alt=""> 123 Facebook 124 </p> 125 </a> 126 </div> 127 <div class="col-lg-12 mb-2"> 128 <a class="btn rounded-10 btn-block border py-3" target="_blank" href="https://www.tiktok.com/@banyumilitravel"> 129 <p class="mb-0"> 130 <img width="20" src="https://www.banyumilitravel.id/global/images/color-sosmed/tiktok.png" class="img-fluid ml-2" alt=""> 131 Tiktok 132 </p> 133 </a> 134 </div> 135 <div class="col-lg-12 mb-2"> 136 <a class="btn rounded-10 btn-block border py-3" target="_blank" href="https://www.tiktok.com/@banyumilitravel"> 137 <p class="mb-0"> 138 <img width="20" src="https://www.banyumilitravel.id/global/images/color-sosmed/youtube.png" class="img-fluid ml-2" alt=""> 139 Youtube 140 </p> 141 </a> 142 </div> 143 144 <div class="col-lg-12 mb-2"> 145 <a class="btn rounded-10 border py-3 btn-primary btn-block mb-2" target="_blank" href="https://www.banyumilitravel.id"> 146 <p class="mb-0"> 147 <img width="20" src="https://www.banyumilitravel.id/global/images/color-sosmed/web.png" class="img-fluid ml-2" alt="">
148 <span data-i18n="downloadAppVisitWebsite">Kunjungi Website</span> 149 </p> 150 </a> 151 <button class="btn rounded-10 border py-3 btn-softblue btn-block" type="button" data-toggle="modal" data-target="#bagiLink"> 152 <p class="mb-0"> 153 <span data-i18n="downloadAppShareLink">Bagikan Link</span> 154 </p> 155 </button> 156 </div> 157 158 </div> 159 </div> 160 </div> 161 162 <div class="modal fade" id="bagiLink" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true"> 163 <div class="modal-dialog modal-dialog-centered" role="document"> 164 <div class="modal-content"> 165 <div class="modal-header"> 166 <h5 class="modal-title font-weight-bold" id="exampleModalLabel" data-i18n="downloadAppShareLink">Bagikan Link</h5> 167 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 168 <span aria-hidden="true">×</span> 169 </button> 170 </div> 171 <div class="modal-body"> 172 <div class="col-lg-12"> 173 <div class="col-12 px-0"> 174 <div class="row border rounded-10 p-2 mb-3"> 175 <div class="col-9 px-0 align-self-center"> 176 <p class="mb-0 align-self-center" style="word-wrap: break-word;overflow-wrap: break-word;">https://www.banyumilitravel.id/download/app</p> 177 </div> 178 <div class="col-3 px-0 text-right align-self-center"> 179 <input type="hidden" id="urlDownload" value="https://www.banyumilitravel.id/download/app"> 180 <button class="btn btn-primary" id="copyButton" onclick="copyTeks()" data-i18n="downloadAppCopy">Salin</button> 181 </div> 182 </div> 183 </div> 184 <div class="alert alert-success alert-dismissible d-none" role="alert" id="alert-copy"> 185 <button type="button" class="close" id="close-alert-copy"> 186 <span aria-hidden="true">×</span> 187 </button> 188 <strong data-i18n="downloadAppCopied">Tautan telah disalin.</strong> 189 </div> 190 <div class="dashed-line-with-text"> 191 <span data-i18n="downloadAppOr">atau</span> 192 </div> 193 <div class="text-center"> 194 <img class="img-fluid mb-3" width="90" src="https://www.banyumilitravel.id/global/images/color-sosmed/scanme.png" alt=""> 195 <div id="canvas" class="mb-3"></div> 196 <button class="btn rounded-10 border py-3 btn-softblue" type="button" onclick="downloadQR()"> 197 <p class="mb-0"> 198 <span data-i18n="downloadAppDownloadQr">Unduh QR</span> 199 </p> 200 </button> 201 </div> 202 </div> 203 </div> 204 </div> 205 </div> 206 </div> 207
207<script src="https://www.banyumilitravel.id/global/js/jquery-3.3.1.min.js"></script>
207 208 <!-- bootstrap --> 209
209<script src="https://www.banyumilitravel.id/global/js/bootstrap.min.js"></script>
209 210
210<script type="text/javascript" src="https://unpkg.com/[email protected]/lib/qr-code-styling.js"></script>
210 211
211<script type="text/javascript" src="https://www.banyumilitravel.id/global/js/jquery.qrcode.min.js"></script>
211 212
212<script type="text/javascript" src="https://www.banyumilitravel.id/global/js/slick.1.8.1.min.js"></script>
212 213
213<script> 214 window.PORTAL_LANGUAGE = "id"; 215 </script>
215 216
216<script src="https://cdnjs.cloudflare.com/ajax/libs/i18next/23.7.6/i18next.min.js"></script>
216 217
217<script src="https://www.banyumilitravel.id/locales/default.js?v=22"></script>
217 218
218<script> 219 let url = "https://www.banyumilitravel.id/download/app", 220 asset = {"logo":"\/images\/download\/d-banyumili.png","playstore":"https:\/\/play.google.com\/store\/apps\/details?id=id.co.tbk.android.banyumili","appstore":"https:\/\/apps.apple.com\/app\/banyumili\/id6498587668"}, 221 logo; 222 223 // Cek apakah data kosong atau tidak 224 if (Object.keys(asset).length === 0) { 225 logo = "" 226 } else { 227 logo = "https://www.banyumilitravel.id" + asset.logo 228 } 229 230 // $('#qrcode').qrcode({width: 130,height: 130,text: url}) 231 232 const qrCode = new QRCodeStyling({ 233 width: 150, 234 height: 150, 235 type: "svg", 236 data: url, 237 image: logo, 238 dotsOptions: { 239 color: "#4267b2", 240 type: "rounded" 241 }, 242 imageOptions: { 243 crossOrigin: "anonymous", 244 imageSize: 0.4, 245 margin: 5 246 } 247 }); 248 249 qrCode.append(document.getElementById("qrcode")); 250 251 // Wait until the QR code is rendered 252 setTimeout(() => { 253 const qrCanvas = document.querySelector("#qrcode"); // Get the rendered canvas 254 if (qrCanvas) { 255 // Clone the canvas for other containers 256 const qrCanvasClone1 = qrCanvas.cloneNode(true); 257 // Append cloned canvases to the other containers 258 document.getElementById("canvas").appendChild(qrCanvasClone1); 259 } else { 260 console.error("QR canvas not found!"); 261 } 262 }, 500); // Adjust the delay based on rendering speed 263 264 265 function downloadQR(){ 266 // download the generate image of the QR code 267 qrCode.download({ name: "qr", extension: "svg" }); 268 } 269 270 document.addEventListener("DOMContentLoaded", function() { 271 $('#close-alert-copy').click(function(){ 272 $('#alert-copy').removeClass('d-block'); 273 }); 274 }); 275 276 function copyTeks(){ 277 var textToCopy = $("#urlDownload").select().val(); 278 // navigator clipboard api needs a secure context (https) 279 if (navigator.clipboard && window.isSecureContext) { 280 // navigator clipboard api method' 281 $('#alert-copy').addClass('d-block'); 282 return navigator.clipboard.writeText(textToCopy); 283 } else { 284 // text area method 285 let textArea = document.createElement("textarea"); 286 textArea.value = textToCopy; 287 // make the textarea out of viewport 288 textArea.style.position = "fixed"; 289 textArea.style.left = "-999999px"; 290 textArea.style.top = "-999999px"; 291 document.body.appendChild(textArea); 292 textArea.focus(); 293 textArea.select(); 294 $('#alert-copy').addClass('d-block'); 295 return new Promise((res, rej) => { 296 // here the magic happens 297 document.execCommand('copy') ? res() : rej(); 298 textArea.remove(); 299 }); 300 } 301 } 302 303 // Ensure modal elements do not interfere with clipboard copying 304 $(document).on('shown.bs.modal', function () { 305 $(document).off('focusin.modal'); 306 }); 307 308 function setEqualHeight() 309 { 310 let maxHeight = 0; 311 document.querySelectorAll('.doa-slider .border').forEach((el) => { 312 el.style.height = 'auto'; // Reset tinggi terlebih dahulu 313 maxHeight = Math.max(maxHeight, el.offsetHeight); // Dapatkan tinggi terbesar 314 }); 315 document.querySelectorAll('.doa-slider .border').forEach((el) => { 316 el.style.height = `${maxHeight}px`; // Terapkan tinggi terbesar ke semua elemen 317 }); 318 } 319 320 // Panggil fungsi setelah slider diinisialisasi 321 $('.doa-slider').on('init', function () { 322 setEqualHeight(); 323 }); 324 325 $('.doa-slider').slick({ 326 slidesToShow: 1, 327 slidesToScroll: 1, 328 dots: true, // Tambahkan navigasi dots
329 arrows: false, // Sembunyikan panah navigasi 330 }); 331 </script>
331 332</body> 333</html>
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.