1function initProcess(){ 2 $(".progress").css({"height":"2rem","font-size":"1.5rem","border-radius":"0.25rem"}); 3 $("#progressbar1").attr("aria-valuenow", 0).css("width", 0 + "%").text(""); 4 $("#progressbar2").attr("aria-valuenow", 0).css("width", 0 + "%").text("").css({"background-color":"#005f99"}); 5 $("#result-wait-1").css('display', 'none'); 6 $("#result-wait-2").css('display', 'none'); 7 $("#result-wait-4").css('display', 'none'); 8 $("#result-wait-3").css('display', 'none'); 9 $("#result-wait-5").css('display', 'block'); 10 $("#result-wait-6").css('display', 'none'); 11 $("#result-wait-7").css('display', 'none'); 12} 13 14function show_model(kdata,title,ext,note){ 15 16 if (document.querySelector('#convert') !== null) { 17 document.querySelector('#convert').scrollIntoView(true); 18 } 19 20 downloadTitle = title; 21 downloadUrl[ext][note] = kdata.downloadUrlX; 22 $("#loading_img").css('display', 'none'); 23 $("#result-wait").css('display', 'none'); 24 25 $("#myModalLabel").text(title); 26 $('#myModal').modal('show'); 27 $('.modal-backdrop').addClass("in"); 28 29 $("#A_downloadUrl").attr("href", kdata.downloadUrlX); 30 31 return; 32 33 var a = Math.random(); 34 var adurl; 35 if (a < 1) { 36 adurl = "https://chatgpt.www-2048.com?ext=" + encodeURIComponent(ext) + "&title=" + encodeURIComponent(title) + "&url=" + encodeURIComponent(kdata.downloadUrlX) + "&dd=1"; 37 } else{ 38 adurl = "https://chatgpt.www-2048.com?ext=" + encodeURIComponent(ext) + "&title=" + encodeURIComponent(title) + "&url=" + encodeURIComponent(kdata.downloadUrlX) + "&dd=1"; 39 } 40 if (isWindowOpenUrl(adurl)) { 41 return; 42 } else { 43 if (Math.random() < 1) { 44 $("#myModalLabel").text(title); 45 $('#myModal').modal('show'); 46 $('.modal-backdrop').addClass("in"); 47 $("#A_downloadUrl").attr("target", "_blank"); 48 $("#A_downloadUrl").click(function () { 49 $('#myModal').modal('hide'); 50 }) 51 $("#A_downloadUrl").attr("href", adurl); 52 } else { 53 $("#myModalLabel").text(title); 54 $('#myModal').modal('show'); 55 $('.modal-backdrop').addClass("in"); 56 $("#A_downloadUrl").attr("href", kdata.downloadUrlX); 57 } 58 } 59} 60 61function downloadStatus(url, title, id, ext, totalSize, note, format, videoUrl, videoCodec,countP) { 62 if (countP != count || status_stop) { 63 return; 64 } 65 var k_query = $('#txt-url').val().trim(); 66 var platform = "youtube"; 67 if (k_query.indexOf("fb.watch") >= 0 || k_query.indexOf("facebook.com") >= 0) { 68 platform = "facebook"; 69 } else if (k_query.indexOf("dailymotion.com") >= 0 || k_query.indexOf("dai.ly") >= 0) { 70 platform = "dailymotion"; 71 } else if (k_query.indexOf("vimeo.com") >= 0 ) { 72 platform = "vimeo"; 73 } 74 75 if (!downloadUrl[ext][note]) { 76 $.ajax({ 77 type: "POST", 78 url: getStatusHost(id), 79 headers: { 80 "x-note": note, 81 "platform":platform 82 }, 83 data: { 84 platform: platform, 85 url: url, 86 title: title, 87 id: id, 88 ext: ext, 89 note: note, 90 format: format, 91 }, 92 dataType: "json", 93 success: function (kdata) { 94 if (countP == count) { 95 if (downloadUrl[ext][note]) { 96 d_busy = false;// by timer 97 return; 98 } 99 if (kdata.status == 'success') { 100 show_model(kdata,title,ext,note); 101 d_busy = false; 102 } else if (kdata.status == 'convert_ready') { 103 setTimeout(function () { 104 download(url, title, id, ext, totalSize, note, format, videoUrl, videoCodec, countP); 105 }, 20000) 106 } else if (kdata.status == 'processing') { 107 setTimeout(function () { 108 downloadStatus(url, title, id, ext, totalSize, note, format, videoUrl, videoCodec, countP); 109 }, 4000) 110 if(kdata["type"] != undefined && kdata["type"]=="downloading" ){ 111 if (kdata.percent != undefined) { 112 var p = parseInt(kdata.percent.substr(0, kdata.percent.length - 1)); 113 var nowP = $("#progressbar1").attr("aria-valuenow"); 114 if (p > nowP) { 115 $("#progressbar1").attr("aria-valuenow", p); 116 $("#progressbar1").css("width", p + "%"); 117 $("#progressbar1").text(p + "%"); 118 } 119 } 120 $("#result-wait-1").css('display', 'block'); 121 $("#result-wait-5").css('display', 'none'); 122 $("#result-wait-6").css('display', 'none'); 123 $("#result-wait-7").css('display', 'none'); 124 125 } 126 if(kdata["type"] != undefined && kdata["type"]=="converting"){ 127 $("#result-wait-1").css('display', 'none'); 128 if(note == "mp3-128k" || note == "mp3-320k"){ 129 $("#result-wait-4").css('display', 'block'); 130 }else{ 131 $("#result-wait-2").css('display', 'block'); 132 } 133 $("#result-wait-3").css('display', 'none'); 134 $("#result-wait-5").css('display', 'none'); 135 $("#result-wait-6").css('display', 'none'); 136 $("#result-wait-7").css('display', 'none'); 137 if (kdata.percent != undefined) { 138 var p = parseInt(kdata.percent.substr(0, kdata.percent.length - 1)); 139 var nowP = $("#progressbar2").attr("aria-valuenow"); 140 $("#progressbar1").attr("aria-valuenow", 100); 141 $("#progressbar1").css("width", 100-p + "%"); 142 $("#progressbar1").text(""); 143 if (p > nowP) { 144 $("#progressbar2").attr("aria-valuenow", p); 145 $("#progressbar2").css("width", p + "%"); 146 $("#progressbar2").text(p + "%"); 147 } 148 } 149 } 150 if(kdata["type"] != undefined && kdata["type"]=="merging"){ 151 $("#progressbar1").attr("aria-valuenow", 100); 152 $("#progressbar1").css("width", 0 + "%"); 153 $("#progressbar1").text(""); 154 $("#progressbar2").attr("aria-valuenow", 100); 155 $("#progressbar2").css("width", 100 + "%"); 156 $("#progressbar2").text(100 + "%"); 157 $("#result-wait-1").css('display', 'none'); 158 $("#result-wait-2").css('display', 'none'); 159 $("#result-wait-4").css('display', 'none'); 160 $("#result-wait-5").css('display', 'none'); 161 $("#result-wait-6").css('display', 'none'); 162 $("#result-wait-7").css('display', 'none'); 163 $("#result-wait-3").css('display', 'block'); 164 } 165 if (kdata["type"] != undefined && kdata["type"]=='analyse_start'){ 166 console.log(kdata["type"]) 167 $("#result-wait-1").css('display', 'none'); 168 $("#result-wait-2").css('display', 'none'); 169 $("#result-wait-3").css('display', 'none'); 170 $("#result-wait-4").css('display', 'none'); 171 $("#result-wait-6").css('display', 'none'); 172 $("#result-wait-7").css('display', 'none'); 173 $("#result-wait-5").css('display', 'block'); 174 } 175 if (kdata["type"] != undefined && kdata["type"]=='retry_analyse_start'){ 176 console.log(kdata["type"]) 177 $("#result-wait-1").css('display', 'none'); 178 $("#result-wait-2").css('display', 'none'); 179 $("#result-wait-3").css('display', 'none'); 180 $("#result-wait-4").css('display', 'none'); 181 $("#result-wait-5").css('display', 'none'); 182 $("#result-wait-7").css('display', 'none'); 183 $("#result-wait-6").css('display', 'block'); 184 } 185 if (kdata["type"] != undefined && kdata["type"]=='download_start'){ 186 console.log(kdata["type"]) 187 $("#result-wait-1").css('display', 'none'); 188 $("#result-wait-2").css('display', 'none'); 189 $("#result-wait-3").css('display', 'none'); 190 $("#result-wait-4").css('display', 'none'); 191 $("#result-wait-5").css('display', 'none'); 192 $("#result-wait-6").css('display', 'none'); 193 $("#result-wait-7").css('display', 'block'); 194 } 195 } else { 196 showDownloadErrorModal("Some errors occurred during conversion, try again or use another link") 197 } 198 } 199 200 }, 201 error() { 202 if (countP == count) { 203 showDownloadErrorModal("Some errors occurred during conversion, try again or use another link") 204 d_busy = false;
205 } 206 } 207 }); 208 } 209} 210 211 212function download(url, title, id, ext, totalSize, note, format,videoUrl, videoCodec, countP) { 213 console.log("count", countP); 214 if (document.querySelector('#convert') !== null) { 215 document.querySelector('#convert').scrollIntoView(true); 216 } 217 if (countP !== undefined && countP !== count) { 218 return; 219 } 220 221 var k_query = $('#txt-url').val().trim(); 222 var platform = "youtube"; 223 if (k_query.indexOf("fb.watch") >= 0 || k_query.indexOf("facebook.com") >= 0) { 224 platform = "facebook"; 225 } else if (k_query.indexOf("dailymotion.com") >= 0 || k_query.indexOf("dai.ly") >= 0) { 226 platform = "dailymotion"; 227 } else if (k_query.indexOf("vimeo.com") >= 0 ) { 228 platform = "vimeo"; 229 } 230 var audioUrl = $("#audioUrl").val() 231 232 if (!downloadUrl[ext][note] && !d_busy) { 233 if (countP == undefined) { 234 countP = count; 235 } 236 d_busy = true; 237 status_stop = false; 238 $.ajax({ 239 type: "POST", 240 headers: { 241 "x-note": note, 242 "platform":platform 243 }, 244 url: getDownloadHost(id), 245 data: { 246 platform: platform, 247 url: url, 248 title: title, 249 id: id, 250 ext: ext, 251 note: note, 252 format: format, 253 videoUrl:videoUrl, 254 videoCodec:videoCodec, 255 audioUrl:audioUrl 256 }, 257 dataType: "json", 258 beforeSend: function () { 259 initProcess() 260 $("#loading_img").css('display', 'inline'); 261 $("#result-wait").css('display', 'inline'); 262 setTimeout(function () { 263 downloadStatus(url, title, id, ext, totalSize, note, format,videoUrl, videoCodec, countP); 264 }, 4000) 265 }, 266 success: function (kdata) { 267 if (countP == count) { 268 d_busy = false; 269 if (downloadUrl[ext][note]) { // by timer 270 return; 271 } 272 if (kdata.status == 'success') { 273 show_model(kdata,title,ext,note) 274 } else if (kdata.status == 'convert_ready') { 275 setTimeout(function () { 276 download(url, title, id, ext, totalSize, note, format,videoUrl, videoCodec, countP); 277 }, 20000) 278 }else if (kdata.status == 'busy') { 279 status_stop = true; 280 showDownloadErrorModal("Service is busy, Please try again later!") 281 }else if (kdata.status == 'country_error' || kdata.status == 'unsupported_url') { 282 status_stop = true; 283 showDownloadErrorModal("Not support this link, please use another link!") 284 } else if (kdata.status == 'live_error') { 285 status_stop = true; 286 showDownloadErrorModal("The live broadcast has just ended. You need to wait 3-7 days before downloading") 287 } else if (kdata.status == 'sign_in_error' || kdata.status == 'timed_out_error' || kdata.status == 'not_response') { 288 status_stop = true; 289 showDownloadErrorModal("Some errors occurred during conversion, please try again!") 290 } else { 291 status_stop = true; 292 showDownloadErrorModal("Some errors occurred during conversion, try again or use another link!") 293 } 294 } 295 296 }, 297 error() { 298 if (countP == count) { 299 d_busy = false; 300 status_stop = true; 301 showDownloadErrorModal("Some errors occurred during conversion, try again or use another link!") 302 } 303 } 304 }); 305 } else { 306 if (downloadUrl[ext][note]) { 307 $("#myModalLabel").text(downloadTitle);
308 $('#myModal').modal('show'); 309 $('.modal-backdrop').addClass("in"); 310 $("#A_downloadUrl").attr("href", downloadUrl[ext][note]); 311 } 312 } 313 314} 315 316function showDownloadErrorModal(errorMsg){ 317 $("#loading_img").css('display', 'none'); 318 $("#result-wait").css('display', 'none'); 319 $("#downloadErrorLabel").text(errorMsg); 320 $('#downloadErrorModal').modal('show'); 321 $('.modal-backdrop').addClass("in"); 322} 323 324function startCountdown() { 325 var dialog = document.getElementById('countdownDialog'); 326 var backdrop = document.getElementById('backdrop'); 327 var countdownDisplay = document.getElementById('countdown'); 328 329 countdownDisplay.innerHTML = "3 menit 0 detik"; 330 331 var countdownTime = 3 * 60 * 1000; 332 var now = new Date().getTime(); 333 var countDownDate = new Date(now + countdownTime); 334 335 dialog.style.display = 'block'; 336 backdrop.style.display = 'block'; 337 338 // Update the count down every 1 second 339 var x = setInterval(function() { 340 341 // Get today's date and time 342 var now = new Date().getTime(); 343 344 // Find the distance between now and the count down date 345 var distance = countDownDate - now; 346 347 // Time calculations for minutes and seconds 348 var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); 349 var seconds = Math.floor((distance % (1000 * 60)) / 1000); 350 351 // Output the result in an element with id="timer" 352 countdownDisplay.innerHTML = minutes + " menit " + seconds + " detik"; 353 354 // If the count down is over, write some text 355 if (distance < 0) { 356 clearInterval(x); 357 dialog.style.display = 'none'; 358 backdrop.style.display = 'none'; 359 } 360 }, 1000); 361} 362 363// Function to open the specified URL in a new tab 364function openLink() { 365 var dialog = document.getElementById('countdownDialog'); 366 var backdrop = document.getElementById('backdrop'); 367 dialog.style.display = 'none'; 368 backdrop.style.display = 'none'; 369 window.open('https://zz.newso.xyz/2c920f34-1e8c-4d50-8195-d55564c84db3?pub=hz1605', '_blank'); 370} 371 372function isWindowOpenUrl(url) { 373 let isBlocked = false 374 try { 375 let popup = window.open(url, "_blank"); 376 if (popup == null || typeof (popup) == "undefined") { 377 isBlocked = true 378 } 379 } catch (e) { 380 isBlocked = true 381 } 382 return !isBlocked; 383} 384 385let cftoken = ""; 386function analyze(retry){ 387 // ç¦ç¨æé® 388 $('#btn-submit').prop('disabled', true); 389 $("#result").empty(); 390 391 turnstile.render("#captchaContainer", { 392 sitekey: "0x4AAAAAAAzuNQE5IJEnuaAp", 393 // sitekey: "1x00000000000000000000AA", 394 callback: function (token) { 395 cftoken = token 396 setTimeout(()=>{ 397 analyzeReal(retry); 398 $("#captchaContainer").empty() 399 },500) 400 }, 401 errorCallback: function(error) { 402 $('#btn-submit').prop('disabled', false); 403 $(".dropdown-menu").css('display', 'none'); 404 $("#loading_img").css('display', 'none'); 405 $("#result").empty().append("<div class=\"tabs row\">\n" + 406 " \n" + 407 " <div class=\"col-xs-12 col-12 col-sm-12 col-md-12\">\n" + 408 " <div class=\"caption text-left\"> <b></b> \n" + 409 " <div role=\"alert\" class=\"alert alert-danger text-center\"> \n" + 410 " <span class=\"glyphicon glyphicon-exclamation-sign\" aria-hidden=\"true\"></span> \n" + 411 " <span class=\"sr-only\">Error : </span> Challenge Failed, Please try again later<br> \n" + 412 " </div> \n" + 413 " </div>\n" + 414 " </div>\n" + 415 " <div class=\"clearfix\"></div>\n" + 416 " </div>"); 417 } 418 }); 419} 420 421 422function analyzeReal(retry) { 423 if(!a_busy){ 424 a_busy = true; 425 $('#btn-submit').prop('disabled', true); 426 downloadTitle = null; 427 downloadUrl = {"mp3": {}, "mp4": {}}; 428 count += 1; 429 d_busy = false;
430 $("#loading_img").css('display', 'none'); 431 $("#result-wait").css('display', 'none'); 432 $("#error_youtube_url").hide(); 433 434 var k_query = $('#txt-url').val().trim(); 435 if (k_query.trim() === "") { 436 a_busy = false; 437 $('#btn-submit').prop('disabled', false); 438 return; 439 } 440 441 var platform = "youtube"; 442 if (k_query.indexOf("fb.watch") >= 0 || k_query.indexOf("facebook.com") >= 0) { 443 platform = "facebook"; 444 } else if (k_query.indexOf("tiktok.com") >= 0) { 445 platform = "tiktok"; 446 } else if (k_query.indexOf("instagram.com") >= 0) { 447 platform = "instagram"; 448 } else if (k_query.indexOf("twitter.com") >= 0 || k_query.indexOf("x.com") >= 0 || k_query.indexOf("t.co") >= 0) { 449 platform = "twitter"; 450 } 451 452 $.ajax({ 453 type: "POST", 454 url: getAnalyseHost(k_query,platform,retry), 455 dataType: 'json', 456 data: { 457 url: k_query, 458 ajax: 1, 459 lang:lang, 460 cftoken:cftoken 461 }, 462 beforeSend: function () { 463 $(".dropdown-menu").css('display', 'none'); 464 $("#loading_img").css('display', 'inline'); 465 $("#result").empty(); 466 $("#captchaContainer").empty() 467 $("#btn-submit").focus(); 468 if (document.querySelector('#convert') !== null) { 469 document.querySelector('#convert').scrollIntoView(true); 470 } 471 }, 472 success: function (rpdata) { 473 $(".dropdown-menu").css('display', 'none'); 474 $("#loading_img").css('display', 'none'); 475 if (rpdata.status == 'success') { 476 $("#btn-ads-1").hide(); 477 $("#btn-ads-2").hide(); 478 if(Math.random() < 0.5){ 479 $("#btn-ads-1").show(); 480 }else{ 481 $("#btn-ads-2").show(); 482 } 483 $("#result").empty().append(rpdata.result); 484 $("#mp4").attr("class", "tab-pane active"); 485 // if (window.screen.width <= 800) { 486 $("#search-result a").attr("target", "_self"); 487 $("#myTabContent a").attr("target", "_blank"); 488 // } 489 var href_prefix = lang == 'en' ? "/" : ("/" + lang + "/"); 490 $.each($("#search-result a"), function (idx, val) { 491 if($(val).attr('href').indexOf("watch?v=")>=0){ 492 $(val).attr('href', href_prefix + $(val).attr('href')) 493 } 494 }); 495 if (document.querySelector('#convert') !== null) { 496 document.querySelector('#convert').scrollIntoView(true); 497 } 498 // if (location.pathname.indexOf("youtube-to-mp3") > -1) { 499 // $('#selectTab a[href="#mp3"]').tab('show'); 500 // } 501 502 } else if (rpdata.status == 'unavailable') { 503 $("#result").empty().append(rpdata.result); 504 } else if (rpdata.status == 'playError') { 505 if (retry == undefined) { 506 retry = 1; 507 a_busy = false; 508 $('#btn-submit').prop('disabled', false); 509 analyze(retry); 510 } else { 511 $("#result").empty().append(rpdata.result); 512 } 513 } 514 else { 515 if (rpdata.status !== undefined && rpdata.result !== undefined) { 516 $("#result").empty().append(rpdata.result); 517 } 518 } 519 a_busy = false; 520 $('#btn-submit').prop('disabled', false); 521 }, 522 error(){ 523 $(".dropdown-menu").css('display', 'none'); 524 $("#loading_img").css('display', 'none'); 525 $("#result").empty().append("<div class=\"tabs row\">\n" + 526 " \n" + 527 " <div class=\"col-xs-12 col-12 col-sm-12 col-md-12\">\n" + 528 " <div class=\"caption text-left\"> <b></b> \n" + 529 " <div role=\"alert\" class=\"alert alert-danger text-center\"> \n" +
530 " <span class=\"glyphicon glyphicon-exclamation-sign\" aria-hidden=\"true\"></span> \n" + 531 " <span class=\"sr-only\">Error : </span> Service is wrong, Please try again later<br> \n" + 532 " </div> \n" + 533 " </div>\n" + 534 " </div>\n" + 535 " <div class=\"clearfix\"></div>\n" + 536 " </div>"); 537 a_busy = false; 538 $('#btn-submit').prop('disabled', false); 539 } 540 }); 541 } 542 543}; 544 545 546function analyze1() { 547 $("#loading_img").css('display', 'none'); 548 $("#result-wait").css('display', 'none'); 549 550 $("#error_youtube_url").hide(); 551 var k_query = "https://www.youtube.com/watch" + window.location.search; 552 $("#youtubeLink").attr("href",k_query); 553 if (k_query.trim() === "") { 554 return; 555 } 556 $.ajax({ 557 type: "POST", 558 url: getAnalyseHost(k_query), 559 dataType: 'json', 560 data: { 561 url: k_query, 562 ajax: 1 563 564 }, 565 beforeSend: function () { 566 $(".dropdown-menu").css('display', 'none'); 567 $("#loading_img").css('display', 'inline'); 568 $("#result").empty(); 569 $("#btn-submit").focus(); 570 }, 571 success: function (rpdata, textStatus, xhr) { 572 if (xhr.status != 200) { 573 // setTimeout(function() { 574 // window.location.reload(); 575 // }, 576 // 3000); 577 } 578 // console.log(rpdata); 579 580 if (rpdata.status == 'success') { 581 $("#loading_img").css('display', 'none'); 582 $("#result").empty().append(rpdata.result); 583 $("#mp4").attr("class","tab-pane active"); 584 // if (window.screen.width <= 800) { 585 $("#search-result a").attr("target", "_self"); 586 $("#myTabContent a").attr("target", "_blank"); 587 // } 588 var href_prefix = "/"; 589 $.each($("#search-result a"), function (idx, val) { 590 $(val).attr('href', href_prefix + $(val).attr('href')) 591 }); 592 }else{ 593 if(rpdata.status !==undefined && rpdata.result !==undefined){ 594 $("#loading_img").css('display', 'none'); 595 $("#result").empty().append(rpdata.result); 596 } 597 } 598 a_busy = false; 599 $('#btn-submit').prop('disabled', false); 600 } 601 }); 602}; 603 604 605var hiddden_val = document.getElementById("hidden_val") 606var lang = hiddden_val.getAttribute("lang") 607var theme = hiddden_val.getAttribute("theme") 608var a_busy = false; 609var downloadUrl = {"mp3": null, "mp4": null}; 610var downloadTitle = null; 611var d_busy = false; 612var status_stop = false 613var count = 1; 614 615$(document).ready(function () { 616 $("#txt-url")[0].onpaste=function (){ 617 if($("#txt-url").val()==""){ 618 setTimeout(analyze,100); 619 } 620 }; 621 622 function getQueryVariable(variable) 623 { 624 var query = window.location.search.substring(1); 625 var vars = query.split("&"); 626 for (var i=0;i<vars.length;i++) { 627 var pair = vars[i].split("="); 628 if(pair[0] == variable){return pair[1];} 629 } 630 return(false); 631 } 632 633 $('#txt-url').keypress(function (e) { 634 if (e.which == 13) { 635 e.preventDefault(); 636 analyze(); 637 } 638 }); 639 640 $('#btn-submit').click(function () { 641 analyze(); 642 }); 643 644 645 $.ajaxSetup({ 646 cache: true 647 }); 648 649 650 //夿è¾å ¥æ¡æ¯å¦æå¼ 651 if ($("#txt-url").val().length >0){ 652 $("#clear-btn").show(); 653 } 654 // æ·»å è¾å ¥äºä»¶çå¬å¨ 655 $("#txt-url").on("input",function (){ 656 if ($("#txt-url").val().length >0){ 657 $("#clear-btn").show(); 658 } 659 }) 660 // æ·»å æ¸ 餿é®ç¹å»äºä»¶ 661 $("#clear-btn").click(function() { 662 $("#txt-url").val(""); // æ¸ ç©ºè¾å ¥æ¡å 容 663 $("#clear-btn").hide(); 664 }); 665}); 666 667$.getScript("/theme/vd6s/js/suggeser.js?v=3.199", 668 function () { 669 $("#txt-url").bsSuggest({ 670 indexId: 0, //data.value ç第å ä¸ªæ°æ®ï¼ä½ä¸ºinputè¾å ¥æ¡çå 容 671 indexKey: 0, //data.value ç第å ä¸ªæ°æ®ï¼ä½ä¸ºinputè¾å ¥æ¡çå 容 672 allowNoKeyword: false, //æ¯å¦å 许æ å ³é®åæ¶è¯·æ±æ°æ®ã为 false åæ è¾å ¥æ¶ä¸æ§è¡è¿æ»¤è¯·æ± 673 multiWord: true, //以åé符å·åå²çå¤å ³é®åæ¯æ 674 separator: ",", //å¤å ³é®åæ¯ææ¶çåé符ï¼é»è®¤ä¸ºç©ºæ ¼ 675 getDataMethod: "url", //è·åæ°æ®çæ¹å¼ï¼æ»æ¯ä» URL è·å 676 showHeader: false, //æ¾ç¤ºå¤ä¸ªå段ç表头 677 autoDropup: false, //èªå¨å¤æèååä¸å±å¼ 678 searchingTip: 'Searching...', // ajax æç´¢æ¶æ¾ç¤ºçæç¤ºå 容ï¼å½æç´¢æ¶é´è¾é¿æ
678¶ç»åºæ£å¨æç´¢çæç¤º 679 delay: 50, 680 url: 'https://suggestqueries.google.com/complete/search?hl=en&ds=yt&client=youtube&q=', /*ä¼å ä»url ajax è¯·æ± json 叮婿°æ®ï¼æ³¨ææåä¸ä¸ªåæ°ä¸ºå ³é®å请æ±åæ°*/ 681 jsonp: 'jsonp', //å¦æä» url è·åæ°æ®ï¼å¹¶ä¸éè¦è·¨åï¼åè¯¥åæ°å¿ é¡»è®¾ç½® 682 // url è·åæ°æ®æ¶ï¼å¯¹æ°æ®çå¤çï¼ä½ä¸º fnGetData çåè°å½æ° 683 fnProcessData: function (json) { 684 var index, len, data = {value: []}; 685 686 if (!json || !json.length) { 687 return false; 688 } 689 690 len = json[1].length; 691 692 for (index = 0; index < len; index++) { 693 data.value.push({ 694 "Keyword": json[1][index][0] 695 }); 696 } 697 698 return data; 699 }, 700 701 }).on('onDataRequestSuccess', function (e, result) { 702 // console.log('onDataRequestSuccess: ', result); 703 }).on('onSetSelectValue', function (e, keyword, data) { 704 // console.log('onSetSelectValue: ', e, keyword, data); 705 if (keyword['mousedown']) { 706 analyze() 707 } 708 }).on('onUnsetSelectValue', function () { 709 // console.log("onUnsetSelectValue"); 710 }); 711 }); 712 713function getDownloadHost(id) { 714 return "/mates/en/convert?id="+ id; 715} 716 717function getStatusHost(id) { 718 return "/mates/en/convert/status?id="+ id; 719} 720 721// function getAnalyseHost(id,platform,retry) { 722// return "/mates/en/analyze/ajax?retry="+retry+"&platform="+platform; 723// } 724 725function getAnalyseHost(id,platform,retry) { 726 var k_query = $('#txt-url').val().trim(); 727 var mhash = murmurHash64(k_query) 728 return "/mates/en/analyze/ajax?retry="+retry+"&platform="+platform+"&mhash="+mhash; 729} 730 731function murmurHash64(str) { 732 let h1 = 0xdeadbeef; 733 let h2 = 0x41c6ce57; 734 735 for (let i = 0; i < str.length; i++) { 736 let k = str.charCodeAt(i); 737 h1 = Math.imul(h1 ^ k, 0x85ebca6b); 738 h2 = Math.imul(h2 ^ k, 0xc2b2ae35); 739 } 740 741 h1 = Math.imul(h1 ^ (h1 >>> 16), 0x85ebca6b) ^ Math.imul(h2 ^ (h2 >>> 13), 0xc2b2ae35); 742 h2 = Math.imul(h2 ^ (h2 >>> 16), 0x85ebca6b) ^ Math.imul(h1 ^ (h1 >>> 13), 0xc2b2ae35); 743 744 return (h1 >>> 0).toString(16).padStart(8, '0') + (h2 >>> 0).toString(16).padStart(8, '0'); 745}
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.