PageSourceSearch

https://allrummybonus.com/wp-content/themes/rummy-landing-pro/assets/js/rlp.js?ver=2.0.0

js allrummybonus.com collected 2026-10-02 02:12:30 UTC 14,441 bytes, 487 lines download raw bytes

1
2(function(){
3  // modal
4  const overlay=document.querySelector('.modalOverlay');
5  function openModal(id){
6    const m=document.getElementById(id);
7    if(!m) return;
8    overlay && overlay.classList.add('open');
9    m.classList.add('open');
10    m.style.display='flex';
11  }
12  function closeAll(){
13    document.querySelectorAll('.modal').forEach(m=>{m.classList.remove('open'); m.style.display='none';});
14    overlay && overlay.classList.remove('open');
15  }
16  document.querySelectorAll('[data-modal]').forEach(el=>{
17    el.addEventListener('click',()=>openModal(el.getAttribute('data-modal')));
18  });
19  document.querySelectorAll('[data-close]').forEach(el=>el.addEventListener('click',closeAll));
20  overlay && overlay.addEventListener('click',closeAll);
21
22  // categories + search (list pages)
23  function setCat(cat){
24    document.querySelectorAll('.cats button').forEach(b=>b.classList.toggle('active', b.dataset.cat===cat));
25    document.querySelectorAll('[data-item]').forEach(it=>{
26      const c=it.dataset.cat||'best';
27      it.style.display = (cat===c) ? '' : 'none';
28    });
29  }
30  window.rlpCat=setCat;
31
32  const search=document.getElementById('rlp-search');
33  window.rlpSearch=function(val){
34    const q=(val||'').toLowerCase().trim();
35    document.querySelectorAll('[data-item]').forEach(it=>{
36      const t=(it.dataset.title||'').toLowerCase();
37      it.style.display = t.includes(q) ? '' : 'none';
38    });
39  }
40  if(search){ search.addEventListener('input', e=>window.rlpSearch(e.target.value)); }
41
42  // default cat best
43  const btn=document.querySelector('.cats button[data-cat="best"]');
44  if(btn) setCat('best');
45})();
46
47// (function () {
48//   function initDownloadTargets() {
49//     // 1) .claim 里的 button
50//     var claimBtn = document.querySelector('.claim button');
51//     if (claimBtn) {
52//       claimBtn.setAttribute('data-download', 'down-now');
53
54//       // 让原 onclick 失效
55//       claimBtn.removeAttribute('onclick');
56//       claimBtn.onclick = null;
57//     }
58
59//     // 2) 底部 sticky 的 a
60//     var stickyBtn = document.querySelector('.sticky-btn');
61//     if (stickyBtn) {
62//       stickyBtn.setAttribute('data-download', 'down-now');
63
64//       // 让原 href / target 失效,但保留点击本身
65//       stickyBtn.removeAttribute('href');
66//       stickyBtn.removeAttribute('target');
67//       stickyBtn.removeAttribute('rel');
68
69//       // 防止有原生 onclick
70//       stickyBtn.removeAttribute('onclick');
71//       stickyBtn.onclick = null;
72//     }
73//   }
74
75//   if (document.readyState === 'loading') {
76//     document.addEventListener('DOMContentLoaded', initDownloadTargets);
77//   } else {
78//     initDownloadTargets();
79//   }
80// })();
81
82(function () {
83  function markDownloadImages() {
84    document.querySelectorAll('img[src*="all-rummy-bonus-banner"]').forEach(function (img) {
85      img.setAttribute('data-download', 'down-now');
86    });
87  }
88
89  if (document.readyState === 'loading') {
90    document.addEventListener('DOMContentLoaded', markDownloadImages);
91  } else {
92    markDownloadImages();
93  }
94
95  var observer = new MutationObserver(function () {
96    markDownloadImages();
97  });
98
99  observer.observe(document.body, {
100    childList: true,
101    subtree: true
102  });
103
104  setTimeout(markDownloadImages, 500);
105  setTimeout(markDownloadImages, 1500);
106  setTimeout(markDownloadImages, 3000);
107})();
108
109
110document.addEventListener('DOMContentLoaded', function () {
111  const slider =
112    document.querySelector('.home-hero-slider') ||
113    document.querySelector('.heroWrap.slider');
114
115  if (!slider) return;
116
117  const imgs = slider.querySelectorAll('img');
118  if (!imgs.length) return;
119
120  let index = 0;
121
122  imgs.forEach(function (img, i) {
123    img.classList.toggle('active', i === 0);
124  });
125
126  setInterval(function () {
127    const oldIndex = index;
128    const newIndex = (index + 1) % imgs.length;
129
130    // 重点:先让新图出现
131    imgs[newIndex].classList.add('active');
132
133    // 等新图淡入后,再隐藏旧图
134    setTimeout(function () {
135      imgs[oldIndex].classList.remove('active');
136    }, 450);
137
138    index = newIndex;
139  }, 3000);
140});
141
142
143// // ads-insert.js
144// document.addEventListener("DOMContentLoaded", function () {
145
146//   // 当前页面 slug(去掉首尾 /)
147//   const currentSlug = window.location.pathname.replace(/^\/|\/$/g, '');
148
149//   // 页面广告配置
150//   const adConfig = {
151//     "rummy-wealth": [
152//       { afterRank: 2, image: "https://allrummybonus.com/wp-content/uploads/2026/05/best-rummy-app.webp", link: "https://allrummybonus.com" }
153//     ]
154//     // 其他页面可继续添加
155//     // "rummy-noble": [
156//     //   { afterRank: 3, image: "https://你的域名.com/noble-ad.webp", link: "https://xxx.com" }
157//     // ]
158//   };
159
160//   // 如果当前页面没有配置广告,直接退出
161//   if (!adConfig[currentSlug]) return;
162
163//   // 获取所有 row
164//   const rows = document.querySelectorAll('.list .row');
165
166//   // 插入广告
167//   adConfig[currentSlug].forEach(ad => {
168//     rows.forEach(row => {
169//       const rankEl = row.querySelector('.rank');
170//       if (!rankEl) return;
171//       const rank = parseInt(rankEl.textContent.trim());
172//       if (rank === ad.afterRank) {
173//         const adBox = document.createElement('div');
174//         adBox.className = 'custom-inline-ad';
175//         adBox.innerHTML = `
176//           <a href="${ad.link}" target="_blank" rel="nofollow noopener noreferrer">
177//             <img src="${ad.image}" alt="Advertisement">
178//           </a>
179//         `;
180//         // 插入到 hr 后面
181//         const hr = row.nextElementSibling;
182//         if (hr && hr.classList.contains('hr')) {
183//           hr.insertAdjacentElement('afterend', adBox);
184//         }
185//       }
186//     });
187//   });
188
189// });
190
191
192//document.addEventListener("DOMContentLoaded", function () {
193
194  /* 当前页面 slug,例如 /rummy-wealth/ => rummy-wealth */
195//   const currentSlug = window.location.pathname.replace(/^\/|\/$/g, "");
196
197//   /* 配置:指定页面 + 指定插入位置 */
198//   const insertConfig = {
199//     "rummy-wealth": [
200//       {
201//         afterRank: 2, // 插入到第2个下面
202
203//         rank: 99,
204//         name: "Jaiho 91",
205//         icon: "https://allrummybonus.com/wp-content/uploads/2026/05/Jaiho-91.webp",
206//         url: "https://www.rummyskill.com/gourl/?p=jiaho91",
207//         installs: "320K+",
208//         bonus: "Rs.51",
209//         min: "₹50"
210//       }
211//     ]
212
213    /*
214    后面换页面这样加:
215
216    "rummy-noble": [
217      {
218        afterRank: 3,
219        rank: 88,
220        name: "Dash Rummy",
221        icon: "https://allrummybonus.com/wp-content/uploads/2025/12/Dash-Rummy-150x150.webp",
222        url: "https://allrummybonus.com/dash-rummy/",
223        installs: "410K+",
224        bonus: "Rs.75",
225        min: "₹100"
226      }
227    ]
228    */
229 // };
230
231//   if (!insertConfig[currentSlug]) return;
232
233//   const rows = document.querySelectorAll(".list .row");
234
235//   insertConfig[currentSlug].forEach(function (item) {
236
237//     rows.forEach(function (row) {
238
239//       const rankEl = row.querySelector(".rank");
240//       if (!rankEl) return;
241
242//       const rankNum = parseInt(rankEl.textContent.trim(), 10);
243//       if (rankNum !== item.afterRank) return;
244
245//       /* 防止重复插入 */
246//       const insertId = "insert-row-" + currentSlug + "-" + item.afterRank + "-" + item.name.toLowerCase().replace(/\s+/g, "-");
247//       if (document.getElementById(insertId)) return;
248
249//       const newHr = document.createElement("div");
250//       newHr.className = "hr";
251
252//       const newRow = document.createElement("div");
253//       newRow.className = "row inserted-app-row";
254//       newRow.id = insertId;
255
256//       newRow.innerHTML = `
257// <div class="rank">*</div>
258
259//         <img
260//           class="icon"
261//           src="${item.icon}"
262//           alt="${item.name}"
263//           loading="lazy"
264//         >
265
266//         <div class="meta">
267//           <h3 class="name">${item.name}</h3>
268
269//           <h4 class="sub">
270//             ⬇ ${item.installs} | Bonus ${item.bonus}
271//           </h4>
272
273//           <h5 class="min">
274//             Min. Withdrawal ${item.min}
275//           </h5>
276//         </div>
277
278//         <a class="dlBtn" href="${item.url}" target="_blank" rel="nofollow noopener noreferrer">
279//           Download
280//         </a>
281//       `;
282
283//       const hr = row.nextElementSibling;
284
285//       if (hr && hr.classList.contains("hr")) {
286//         hr.insertAdjacentElement("afterend", newRow);
287//         newRow.insertAdjacentElement("afterend", newHr);
288//       } else {
289//         row.insertAdjacentElement("afterend", newRow);
290//         newRow.insertAdjacentElement("afterend", newHr);
291//       }
292
293//     });
294
295//   });
296
297// });
298
299
300// document.addEventListener("DOMContentLoaded", function () {
301// const style = document.createElement("style");
302// style.textContent = `
303//   .custom-download-title {
304//     margin: 50px 0 6px;
305//     padding: 6px 10px;
306//     background: linear-gradient(90deg, #d84b4b, #ef6a6a);
307//     color: #fff;
308//     font-size: 14px;
309//     font-weight: 700;
310//     text-align: center;
311//     line-height: 1.2;
312//     border: 1px solid #fff;
313//     border-radius: 2px;
314//     box-shadow: 0 1px 2px rgba(0,0,0,.12);
315//   }
316
317//   .custom-download-row {
318//     display: flex;
319//     flex-wrap: nowrap;
320//     gap: 8px;
321//     margin: 6px 0 10px;
322//     padding: 0 0 8px;
323//     overflow-x: auto;
324//     overflow-y: hidden;
325//     max-width: 100%;
326//     box-sizing: border-box;
327//     -webkit-overflow-scrolling: touch;
328//     scroll-snap-type: x mandatory;
329//   }
330
331//   .custom-download-row::-webkit-scrollbar {
332//     display: none;
333//   }
334
335//   .custom-download-row {
336//     scrollbar-width: none;
337//   }
338
339//   .custom-download-item {
340//     flex: 0 0 calc((100% - 24px) / 4);
341//     width: calc((100% - 24px) / 4);
342//     min-width: calc((100% - 24px) / 4);
343//     max-width: calc((100% - 24px) / 4);
344//     text-decoration: none;
345//     text-align: center;
346//     display: block;
347//     scroll-snap-align: start;
348//   }
349
350//   .custom-download-icon {
351//     width: 100%;
352//     max-width: 72px;
353//     aspect-ratio: 1 / 1;
354//     object-fit: cover;
355//     border-radius: 9px;
356//     display: block;
357//     margin: 0 auto 3px;
358//   }
359
360//   .custom-download-btn {
361//     background: #00b050;
362//     color: #fff;
363//     font-size: 10px;
364//     font-weight: 700;
365//     line-height: 1;
366//     padding: 3px 5px;
367//     border-radius: 4px;
368//     display: inline-block;
369//     white-space: nowrap;
370//   }
371// `;
372// document.head.appendChild(style);
373//   const currentSlug = window.location.pathname.replace(/^\/|\/$/g, "");
374
375//   /*
376//     default = 全部页面都显示这一组
377//     如果某个页面想单独设置,就再写它自己的 slug
378//   */
379//   const downloadRowConfig = {
380//     "rummy-wealth": [
381//       {
382//         apps: [
383//           {
384//             icon: "https://allrummybonus.com/wp-content/uploads/2026/06/Rummy-Ultra-150x150.webp",
385//             url: "https://allrummybonus.com/rummy-ultra/"
386//           },
387//           {
388//             icon: "https://allrummybonus.com/wp-content/uploads/2026/06/765-Club-150x150.webp",
389//             url: "https://allrummybonus.com/765-club/"
390//           },
391//           {
392//             icon: "https://allrummybonus.com/wp-content/uploads/2025/12/Rummy-Mars-150x150.webp",
393//             url: "https://allrummybonus.com/rummy-mars/"
394//           },
395//           {
396//             icon: "https://allrummybonus.com/wp-content/uploads/2025/12/Rummy-Wealth-2-150x150.webp",
397//             url: "https://allrummybonus.com/rummy-wealth/"
398//           },
399//           {
400//             icon: "https://allrummybonus.com/wp-content/uploads/2025/12/Rummy-Noble-app-150x150.webp",
401//             url: "https://allrummybonus.com/rummy-noble/"
402//           },
403//           {
404//             icon: "https://allrummybonus.com/wp-content/uploads/2025/12/rummy-leader-apk-150x150.webp",
405//             url: "https://allrummybonus.com/rummy-leader/"
406//           },
407//           {
408//             icon: "https://allrummybonus.com/wp-content/uploads/2025/12/yono-rummy-150x150.webp",
409//             url: "https://allrummybonus.com/yono-rummy/"
410//           }
411//         ]
412//       }
413//     ],
414
415//     /*
416//     某个页面想单独不同,就这样写,会覆盖 default:
417
418//     "rummy-wealth": [
419//       {
420//         apps: [
421//           {
422//             icon: "https://allrummybonus.com/wp-content/uploads/2025/12/Rummy-Wealth-150x150.webp",
423//             url: "https://allrummybonus.com/rummy-wealth/"
424//           },
425//           {
426//             icon: "https://allrummybonus.com/wp-content/uploads/2025/12/yono-rummy-150x150.webp",
427//             url: "https://allrummybonus.com/yono-rummy/"
428//           },
429//           {
430//             icon: "https://allrummybonus.com/wp-content/uploads/2025/12/Rummy-Noble-app-150x150.webp",
431//             url: "https://allrummybonus.com/rummy-noble/"
432//           },
433//           {
434//             icon: "https://allrummybonus.com/wp-content/uploads/2025/12/rummy-leader-apk-150x150.webp",
435//             url: "https://allrummybonus.com/rummy-leader/"
436//           }
437//         ]
438//       }
439//     ]
440//     */
441//   };
442
443//   const rowsToInsert = downloadRowConfig[currentSlug] || downloadRowConfig["default"];
444
445//   if (!rowsToInsert) return;
446
447//   const claimEl = document.querySelector(".claim");
448//   if (!claimEl) return;
449
450//   if (document.querySelector(".custom-download-row")) return;
451
452// const titleDiv = document.createElement("div");
453// titleDiv.className = "custom-download-title";
454// titleDiv.textContent = "Recommended by other users";
455
456// claimEl.insertAdjacentElement("afterend", titleDiv);
457
458// let insertAfter = titleDiv;
459
460// rowsToInsert.forEach(function (row) {
461
462//   const rowDiv = document.createElement("div");
463//   rowDiv.className = "custom-download-row";
464
465//   row.apps.forEach(function (app) {
466
467//     const item = document.createElement("a");
468//     item.className = "custom-download-item";
469//     item.href = app.url;
470//     item.target = "_blank";
471//     item.rel = "nofollow noopener noreferrer";
472
473//     item.innerHTML = `
474//       <img class="custom-download-icon" src="${app.icon}" alt="Download" loading="lazy">
475//       <div class="custom-download-btn">👉 Download</div>
476//     `;
477
478//     rowDiv.appendChild(item);
479
480//   });
481
482//   insertAfter.insertAdjacentElement("afterend", rowDiv);
483//   insertAfter = rowDiv;
484
485// });
486
487// });

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.