PageSourceSearch

https://malayclub.com/web/index

html malayclub.com collected 2026-10-08 06:46:04 UTC 118,762 bytes, 2,590 lines download raw bytes

1
2
3<!DOCTYPE html>
4
5<html>
6<head><title>
7	Malayclub Fast Deposit Methods | Secure Online Transfers
8</title><meta name="robots" content="index,follow" /><meta name="description" content="Malayclub simplify your deposit methods with online banking transfers, Gspay, Help2pay and Touch n Go, Explore 24/7 convenience with versatile deposit methods." /><meta name="keywords" content="Malayclub Fast deposit, Malayclub deposit methods, GSPay deposit, Touch n go deposit, Help2pay deposit, secure online transfers, instant transfers, easy deposit option, trusted deposit, touchngo top up" /><meta property="og:title"  content="Malayclub Fast Deposit Methods | Secure Online Transfers" /><meta property="og:description"  content="Malayclub simplify your deposit methods with online banking transfers, Gspay, Help2pay and Touch n Go, Explore 24/7 convenience with versatile deposit methods." /><meta charset="UTF-8" /><link rel="shortcut icon" href="/web/images/common/fav.ico" /><link rel="stylesheet" href="/web/css/bootstrap.css?2021/04/05" /><link rel="stylesheet" href="/web/css/fontawesome.css?2021/04/05" /><link rel="stylesheet" href="/web/css/style.css?2025/04/02" /><link rel="stylesheet" href="/web/css/custom.css?2025/12/12" /><link rel="stylesheet" href="/web/css/custom_end.css?v4.1" />
9    <!-- ********** BEGIN: Reward game theme ********** -->
10    <link href="/rewardgame/css/rewardgame.css?v=6" rel="stylesheet" type="text/css" />
11
12    <style>
13        /* reward game overriding css */
14        .mg-reward-init {
15            background: url(https://file.32828a.com/images/MALAYCLUB/1c02bf31a5ec021af386ff8149cd00e9_5447070.png) no-repeat center /100% 100%;
16        }
17
18        .mg-reward-content {
19    top: 0px; color: #333; font-size: 20px;
20}
21
22.mg-reward-prize-amount {
23    top: 50px; color: #DAA520; width: 270px; font-size: 30px;
24}
25
26.mg-reward-btn-play-again {
27    top: 400px
28}
29    </style>
30    
31    <!-- ********** END: Reward game theme ********** -->
32
33    <!-- float icon -->
34    <link href="/jcmm-float-icon/jcmm-float-icon.css" rel="stylesheet" type="text/css" />
35    <!-- mg lucky dice -->
36    <link href="/luckydice/luckydice.css?v=1" rel="stylesheet" type="text/css" />
37
38    
39    
39<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
39
40    
40<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-validate/1.17.0/jquery.validate.min.js"></script>
40
41    
41<script type="text/javascript" src="/js/base64.min.js"></script>
41
42    
42<script type="text/javascript" src="/js/jquery.qrcode.js"></script>
42
43    
43<script type="text/javascript" src="/js/js-cookie.js"></script>
43
44    
44<script type="text/javascript" src="/js/web.js?18"></script>
44
45    
45<script type="text/javascript" src="/js/ajax_r.js"></script>
45
46
47    <!-- Dialogs -->
48    <link href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/jquery-ui.css" rel="stylesheet" />
49    
49<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
49
50
51    <style>
52        select :disabled {
53            color: red;
54        }
55
56        .loading-panel {
57            background-color: rgba(0, 0, 0, 0.5);
58            height: 100%;
59            width: 100%;
60            position: fixed;
61            z-index: 99999;
62        }
63
64        .loading-logo {
65            margin: auto;
66            position: absolute;
67            top: 0;
68            bottom: 0;
69            left: 0;
70            right: 0;
71            height: 100px;
72        }
73
74        .loading-gif {
75            margin: auto;
76            position: absolute;
77            top: 110px;
78            bottom: 0;
79            left: 0;
80            right: 0;
81            width: 100px;
82        }
83
84        .pregame_Transfer {
85            margin: auto;
86            position: absolute;
87            top: 0;
88            bottom: 0;
89            left: 0;
90            right: 0;
91            height: 200px;
92        }
93    </style>
94    <style>
95        /*this is for css inbox msg*/
96        .ui-dialog {
97            z-index: 100000 !important;
98        }
99
100        #listMsg .inbox-new.unread:before {
101            content: " - New";
102            color: red;
103        }
104
105        #msgMainContainer_inbox, .inboxListContainer {
106            background: #eae6df;
107            min-height: 500px;
108            max-height: 500px;
109            overflow-y: auto;
110        }
111
112        /*-- inbox-selection-nav --*/
113        .inboxContainer .inbox-selection-nav,
114        .inboxContainer .inbox-selection-nav-bottom {
115            padding-top: 5px;
116            padding-bottom: 5px;
117        }
118
119        .inboxContainer .inbox-remove {
120            display: none;
121        }
122
123        .inboxContainer .inbox-refresh-btn {
124            float: right;
125            margin-left: -50%;
126        }
127
128        .inboxContainer .inbox-selection-nav-bottom {
129            float: right;
130            margin-left: -50%;
131        }
132
133        /*-- Button --*/
134        .inboxListContainer button {
135            position: relative;
136            width: 100%;
137            padding: 8px 30px;
138            text-align: left;
139            text-overflow: ellipsis;
140            overflow: hidden;
141            white-space: nowrap;
142        }
143
144            .inboxListContainer button.active,
145            .inboxListContainer button.active:focus {
146                background-image: linear-gradient(to left, #8e9eab 0%, #eef2f3 31%, #8e9eab 500%);
147                -moz-box-shadow: inset 0 0 3px #000000;
148                -webkit-box-shadow: inset 0 0 3px #000000;
149                box-shadow: inset 0 0 3px #000000;
150            }
151
152        .inboxListContainer .inbox-new {
153            position: absolute;
154            top: calc(50% - 2px);
155            left: 12px;
156            width: 6px;
157            height: 6px;
158            border-radius: 100%;
159            background: #ff0000;
160            box-shadow: 0 0 4px 2px rgba(255, 0, 0, 1);
161            opacity: 0;
162            transition: all .3s;
163        }
164
165            .inboxListContainer .inbox-new.unread {
166                opacity: 1;
167            }
168
169        .inboxListContainer input[type='checkbox'] {
170            width: 20px;
171            height: 20px;
172            position: absolute;
173            top: calc(50% - 9px);
174            right: 10px;
175            cursor: pointer;
176            display: none;
177        }
178
179        .inboxContainer .inboxMsgLoadMore {
180            text-align: center;
181            padding-top: 15px;
182        }
183
184        /*-- msg display --*/
185        .msg-container {
186            padding: 15px;
187        }
188
189            .msg-container .icon-support {
190                width: 20px;
191                height: 20px;
192            }
193
194            .msg-container.default {
195                text-align: center;
196                padding-top: 35px;
197                font-size: x-large;
198            }
199
200        .msg-content {
201            border: 0.5px solid #eae6df;
202            padding: 10px;
203            background: rgba(0, 0, 0, .05);
204            min-height: 350px;
205        }
206
207            .msg-content > hr {
208                border: 0.5px solid #c5b69b;
209            }
210
211        .msg-content-title-head {
212            font-size: 15px;
213            margin-top: -15px;
214        }
215
216        #msgMainContainer_inbox {
217            padding: 15px;
218            background: #fff;
219            border-top: 1px solid #eae6df;
220        }
221
222        /* for hiding sidemenu reward */
223        .hidden-menu {
224            display: none;
225        }
226    </style>
227
228    
228<script>
229        checkAgent();
230
231        // Check if screen less than 720px then go to mobile version
232        if (screen.width <= 720 && getCookie("view") != "desktop") {
233            let searchParams = new URLSearchParams(window.location.search);
234            if (searchParams.has("up") == true) {
235                window.location.href = "/mobile/registration?up=" + searchParams.get("up");
236            }
237            else
238                window.location = "/mobile/index";
239        }
240    </script>
240
241
242    <h1 style='display:none'></h1>
243    <link rel="stylesheet" href="/web/css/push_slide.css?2021/04/05">
244</head>
245
246<body>
247    <h2 style='display:none'></h2>
248
249    <div id="freezescreen" class="loading-panel" style="display: none;">
250        <img src="/web/images/common/logo.png?v3" class="loading-logo" alt="Malay Club Logo" /><br />
251        <img src="/web/images/common/_preload_indicator.gif" class="loading-gif" alt="Loading..." />
252    </div>
253
254    
255    <!-- float icon -->
256    <div id="float-icon" style="display: none;">
257        <div class="float-icon-close" style="color: white; font-size: 3rem; font-weight: 700; cursor: pointer; float: right; position: relative; z-index: 1000;" id="floatClose">&times;</div>
258    </div>
259
260    
261    <div style="display: none;" id="mgr-template">
262        <div class="mg-reward-modal-content">
263            <!-- first bg -->
264            <div class="mg-reward mg-reward-init" data-result-img="https://file.32828a.com/images/MALAYCLUB/0510fd84d90909002f9fa48f951f13cc_5447314.png"></div>
265
266            <!-- display result -->
267            <div class="mg-reward-prize-amount mg-reward-hide">-</div>
268
269            <!-- display msg -->
270            <div class="mg-reward-content">
271                <h3></h3>
272            </div>
273
274            <div class="mg-reward-btn-play-again">
275                <button class="btn btn-danger" id="mgr-btn-play-again" style="display: none;">PLAY AGAIN</button>
276            </div>
277        </div>
278        <a href="#" class="mg-body-close"></a>
279    </div>
280    
281    <div class="mg-reward-modal"></div>
282    <div id="lucky-dice-div"></div>
283    <!-- fortune wheel -->
284    <div style="display: none;" id="fortunewheel"></div>
285    
286
287    
288    <!-- BEGIN: Contents from .aspx -->
289    
290    <style>
291        footer {
292            top: 0px;
293        }
294    </style>
295
296    <div id="slide_right" class="slide_right_close srl_menu">
297        <ul class="list_menu">
298            <li>
299                <div class="suppt">
300                    <span class="cnt-b">24/7</span> <span class="cnt-s">Live<br>
301                        support</span>
302                </div>
303            </li>
304            
305            <li>
306                <div class="cont-ttl"><span><i class="fab fa-telegram-plane"></i></span><span>Telegram</span></div>
307                <div class="cont-cont"><a href="#" class="btn-detl">+639158921232</a></div>
308            </li>
309            <li>
310                <div class="cont-ttl"><span><i class="fab fa-whatsapp"></i></span><span>WHATSAPP</span></div>
311                <div class="cont-cont"><a href="https://wa.me/639158921232" class="btn-detl" target="_blank">+639158921232</a></div>
312            </li>
313            <li>
314                <div class="cont-ttl"><span><i class="fab fa-weixin"></i></span><span>WECHAT</span></div>
315                <div class="cont-cont">
316                    <a href="#" class="btn-detl">MalayClub</a>
317                </div>
318            </li>
319            <li>
320                <div class="cont-ttl"><span><i class="fas fa-envelope"></i></span><span>E-mail</span></div>
321                <div class="cont-cont">
322                    <a href="/cdn-cgi/l/email-protection#e8bb9d9898879a9ca885898489918b849d8ac68b8785" class="btn-detl" style="font-size: 12px;"><span class="__cf_email__" data-cfemail="43103633332c3137032e222f223a202f36216d202c2e">[email&#160;protected]</span></a>
323                </div>
324            </li>
325        </ul>
326        <button id="button_right" class="button sbutton">
327            <img id="bsright" src="/web/images/common/side-contact.png" alt="Contact">
328        </button>
329    </div>
330    <div class="index-wrap">
331        <div id="wrapper">
332            <div class="menu">
333                <div class="container">
334                    
335
336
337        <div class="menu-in">
338            <div class="logo">
339                <a href="#">
340                    <img src="/web/images/common/logo.png?v3" alt="Malay Club Logo" />
341                    
342                </a>
343            </div>
344            <div class="menu-box">
345                <ul>
346                    <li><span class="line"></span><a href="index">Home</a></li>
347                    <li><span class="line"></span><a href="mobile">Mobile</a></li>
348                    <li><span class="line"></span><a href="slot">Slots</a></li>
349                    <li><span class="line"></span><a href="casino">Casino</a></li>
350                    <li><span class="line"></span><a href="sport">Sport</a></li>
351                    <li><span class="line"></span><a href="esport">E-Sport</a></li>
352                    <li><span class="line"></span><a href="p2p">P2P</a></li>
353                    <li><span class="line"></span><a href="fishing">Fish Hunter</a></li>
354                    <li><span class="line"></span><a href="lotto">Lottery</a></li>
355                    <li><span class="line"></span><a href="promotion">Promotion</a></li>
356                    <li><span class="line"></span><a href="vip">VIP</a></li>
357                    <li><span class="line"></span>
358                        <label class="dropdown btn-mn">
359                            <div class="dd-button" id="reward-btn">Reward</div>
360                            <input type="checkbox" class="dd-input" id="test">
361                            <ul class="dd-menu hidden-menu" id="reward-dropdown-menu">
362                                <li><a href="redemption">Reward Redemption</a></li>
363                                <li><a href="mission">General Mission</a></li>
364                                <li><a href="checkin">Daily Check In</a></li>
365                            </ul>
366                        </label>
367                    </li>
368                    <li>
369                        <div class="in-mn">
370                            <div class="in-menu">
371                                <span class="line"></span><a href="javascript: void(0);" id="en-US" class="lang-menu">
372                                    <img src="/web/images/common/flag-en.png" width="30" height="30" alt="English Language" /></a>
373                            </div>
374                            <div class="in-menu">
375                                <span class="line"></span><a href="javascript: void(0);" id="zh-CN" class="lang-menu">
376                                    <img src="/web/images/common/flag-cn.png" width="30" height="30" alt="Chinese Language" /></a>
377                            </div>
378                            <div class="in-menu">
379                                <span class="line"></span><a href="javascript: void(0);" id="ms-MY" class="lang-menu">
380                                    <img src="/web/images/common/flag-my.png" width="30" height="30" alt="Malay Language" /></a>
381                            </div>
382                        </div>
383                    </li>
384                </ul>
385                
386                <div class="btn-af">
387                    <button class="btn-login" data-toggle="modal" data-target="#login-modal" onclick="getSaveLogin();">LOGIN</button>
388                    <button class="btn-join" onclick="location.href='register'" type="button">JOIN NOW</button>
389                </div>
390                
391            </div>
392        </div>
393        
394        <a class="click-catcher" style="width: 78%"></a>
vendor: 118 bytes, lines 394-397
394
395    
396
397<script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>
397<script>
398    $(document).ready(function () {
399        $('#reward-btn').click(function () {
400            $('#reward-dropdown-menu').toggleClass('hidden-menu');
401        });
402    })
403</script>
403
404
405                </div>
406            </div>
407            
408            <section class="slideshow" id="js-header">
409                <div class="c-header-home_footer">
410                    <div class="o-container">
411                        <div class="line-top"></div>
412                        <div class="c-header-home_controls -nomobile o-button-group">
413                            <div class="js-parallax is-inview" data-speed="1" data-position="top" data-target="#js-header">
414                                <button class="o-button -white -square -left js-slider-home-button js-slider-home-prev" type="button"><span class="o-button_label"><i class="fas fa-angle-up"></i></span></button>
415                                <button class="o-button -white -square js-slider-home-button js-slider-home-next" type="button"><span class="o-button_label"><i class="fas fa-angle-down"></i></span></button>
416                            </div>
417                        </div>
418                        <div class="line-top2"></div>
419                    </div>
420                </div>
421            </section>
422        </div>
423        <div class="hm-content" id="indexBottomID">
424            <div class="container">
425                <div class="hm-in">
426                    <div class="hm-l">
427                        
428<div class="annount">
429    <div class="annouc-bar">
430        <div class="annouc-ttl">
431            <div class="annouc-big" style="color: #ffffffad;">NEWS</div>
432            <div class="annouc-smll" style="color: #ffffff78;">LATEST NEWS</div>
433        </div>
434        <div class="annouc-txt">
435            <marquee id="web_announcement" scrolldelay="150"></marquee>
436        </div>
437    </div>
438</div>
439
440                        <div class="index-content">
441                            <div class="container">
442                                <div class="inx-img">
443                                    <ul style="justify-content: center !important;">
444                                        <li>
445                                            <img src="/web/images/common/index-img-1.png" alt="Live Casino" />
446                                            <div class="clr">
447                                                <a class="play" href="casino">
448                                                    <img src="/web/images/common/link icon.png" alt="Miscellaneous Image">
449                                                    <img class="arrow1" src="/web/images/common/play arrow-1.png" alt="Miscellaneous Image">
450                                                    <img class="arrow2" src="/web/images/common/play arrow-2.png" alt="Miscellaneous Image">
451                                                </a>
452                                            </div>
453                                        </li>
454                                        <li>
455                                            <div class="line-in">
456                                                <img src="/web/images/common/LINE-2.png" alt="Miscellaneous Image" />
457                                            </div>
458                                            <div class="inx-content">
459	<h3>LIVE<br>CASINO</h3>
460	<p>
461		Malayclub has provider offer games like blackjack, sic bo, dragon tiger, baccarat and many more.
462		<br>
463		We combines all these games on 1 single trustable platform to benefit all members.
464	</p>
465</div>
466                                        </li>
467                                        <li>
468                                            <img src="/web/images/common/index-img-3.png" alt="Sport" />
469                                            <div class="clr">
470                                                <a class="play" href="sport">
471                                                    <img src="/web/images/common/link icon.png" alt="Miscellaneous Image">
472                                                    <img class="arrow1" src="/web/images/common/play arrow-1.png" alt="Miscellaneous Image">
473                                                    <img class="arrow2" src="/web/images/common/play arrow-2.png" alt="Miscellaneous Image">
474                                                </a>
475                                            </div>
476                                        </li>
477                                        <li>
478                                            <div class="line-in">
479                                                <img src="/web/images/common/LINE-2.png" alt="Miscellaneous Image" />
480                                            </div>
481                                            <div class="inx-content">
482	<h3>SPORTS</h3>
483	<p>
484		Sportsbook is your source for the best in sports betting entertainment.
485		<br>
486		Many people like to place sports bets while the game is live on TV to win some money while enjoying their favorite pastime.
487	</p>
488</div>
489                                        </li>
490                                        <li>
491                                            <img src="/web/images/common/index-img-2.png" alt="Slot" />
492                                            <div class="clr">
493                                                <a class="play" href="slot">
494                                                    <img src="/web/images/common/link icon.png" alt="Miscellaneous Image">
495                                                    <img class="arrow1" src="/web/images/common/play arrow-1.png" alt="Miscellaneous Image">
496                                                    <img class="arrow2" src="/web/images/common/play arrow-2.png" alt="Miscellaneous Image">
497                                                </a>
498                                            </div>
499                                        </li>
500                                        <li>
501                                            <div class="line-in">
502                                                <img src="/web/images/common/LINE-2.png" alt="Miscellaneous Image" />
503                                            </div>
504                                            <div class="inx-content">
505	<h3>SLOTS</h3>
506	<p>
507		Malayclub has wide variety of slot games where you can get a huge return by wagering only a small sum per spin.
508		<br>
509		This is because of a feature called "Jackpot"
510	</p>
511</div>
512                                        </li>
513                                        <li>
514                                            <img src="/web/images/common/index-img-4.png" alt="Esport" />
515                                            <div class="clr">
516                                                <a class="play" href="esport">
517                                                    <img src="/web/images/common/link icon.png" alt="Miscellaneous Image">
518                                                    <img class="arrow1" src="/web/images/common/play arrow-1.png" alt="Miscellaneous Image">
519                                                    <img class="arrow2" src="/web/images/common/play arrow-2.png" alt="Miscellaneous Image">
520                                                </a>
521                                            </div>
522                                        </li>
523                                        <li>
524                                            <div class="line-in">
525                                                <img src="/web/images/common/LINE-2.png" alt="Miscellaneous Image" />
526                                            </div>
527                                            <div class="inx-content">
528	<h3>E-SPORT</h3>
529	<p>
530		Esports (also known as electronic sports, e-sports, or eSports) is a form of sport competition using video games.
531		<br>
532		Esports often takes the form of organized, multiplayer video game competitions, particularly between professional players, individually or as teams.
533	</p>
534</div>
535                                        </li>
536                                    </ul>
537                                </div>
538                            </div>
539                        </div>
540                    </div>
541                    <div class="hm-r">
542                        <div class="line-all-1"></div>
543                        <div class="v-txt">OUR PRODUCT</div>
544                        <div class="line-all-2"></div>
545                    </div>
546                </div>
547
548                
549                
550
551            </div>
552        </div>
553    </div>
554
555    
555<script>
556        $(document).ready(function () {
557            getBannerList();
558            //getLiveTransactions(5);
559
560            // called every 10 mintues
561            //setInterval(function () {
562            //    getLiveTransactions(5);
563            //}, 300000);
564        });
565
566        function getBannerList() {
567            $.ajax({
568                type: 'GET',
569                url: '/ajaxData/proc_getBannerList',
570                success: function (d) {
571                    if (d.errCode == "0") {
572                        $(d.data).each(function (idx) {
573                            var link = this.link;
574                            var image = replaceHTTPS(this.image); // this.image2
575
576                            var html = '';
577                            var slideNum = idx + 1;
578
579                            if (idx == 0) {
580                                html = '<div class="slideshow__slide js-slider-home-slide is-current" data-slide="' + slideNum + '">';
581                            }
582                            else if (idx == 1) {
583                                html = '<div class="slideshow__slide js-slider-home-slide is-next" data-slide="' + slideNum + '">';
584                            }
585                            else if (idx == d.data.length - 1) {
586                                html = '<div class="slideshow__slide js-slider-home-slide is-prev" data-slide="' + slideNum + '">';
587                            }
588                            else {
589                                html = '<div class="slideshow__slide js-slider-home-slide" data-slide="' + slideNum + '">';
590                            }
591
592                            if (link) {
593                                html += '<a href="' + link + '" class="a_tag_for_banner_link">';
594                            }
595                            else {
596                                html += '<a href="#" class="a_tag_for_banner_link">';
597                            }
598
599                            html += '<div class="slideshow__slide-background-parallax background-absolute js-parallax" data-speed="-1" data-position="top" data-target="#js-header">';
600                            html += '<div class="slideshow__slide-background-load-wrap background-absolute">';
601                            html += '<div class="slideshow__slide-background-load background-absolute">';
602                            html += '<div class="slideshow__slide-background-wrap background-absolute">';
603                            html += '<div class="slideshow__slide-background background-absolute">';
604                            html += '<div class="slideshow__slide-image-wrap background-absolute">';
605                            html += '<div class="slideshow__slide-image background-absolute" style="background-image: url(' + image + ')"></div>';
606                            html += '</div></div></div></div></div></div></div></a>';
607
608                            $("#js-header").append(html);
609                        });
610                    }
611                    else
612                        alert(d.errMsg);
613                },
614                error: function (jqXHR, textStatus, errorThrown) {
615                    alert("Unknown error, Please contact our customer service");
616                },
617                complete: function () {
618                    $.getScript('/web/js/script.js?2024/04/24');
619                }
620            });
621        }
622
623        function getLiveTransactions(records) {
624            if (records == undefined) records = '';
625
626            var url = "/ajaxData/proc_getLiveTransactions?records=" + records + "&status=99";
627            ajaxRequest("GET", url, null, getLiveTransactionsDone, ajaxFail, ajaxAlways, false, false);
628        }
629
630        function getLiveTransactionsDone(res, status, xhr) {
631
632            var live_deposit_list = "", live_withdrawal_list = "";
633            var info_deposit_list = "", info_withdrawal_list = "";
634
635            if (res.errCode == 0) {
636
637                $.ajax({
638                    type: 'GET',
639                    url: '/ajaxData/proc_getInfoList',
640                    success: function (d) {
641                        if (d.errCode == "0") {
642                            $(d.data).each(function (idx) {
643                                var title = this.title;
644                                if (title == "Live Transactions") {
645                                    // Split content into Deposit and Withdrawal
646                                    var depositSection = this.content.split('<p>Withdrawal</p>')[0];
647                                    var withdrawalSection = this.content.split('<p>Withdrawal</p>')[1];
648
649                                    // Extract only the relevant lines
650                                    var info_deposit_list = depositSection
651                                        .replace('<p>Deposit</p>', '') // Remove the header
652                                        .replace(/<\/?p>/g, '')        // Remove all <p> tags
653                                        .trim();                       // Trim any leading/trailing whitespace
654
655                                    var info_withdrawal_list = withdrawalSection
656                                        .replace(/<\/?p>/g, '')        // Remove all <p> tags
657                                        .trim();                       // Trim any leading/trailing whitespace
658
659
660                                    $('#live_deposit_list').empty();
661                                    $('#live_withdrawal_list').empty();
662
663                                    var deposit_list = res.data.filter(x => x.transaction_type == "0");
664                                    var withdrawal_list = res.data.filter(x => x.transaction_type == "1");
665
666                                    // Convert to an array of objects
667                                    var new_deposits = info_deposit_list.split('\n').filter(line => line.trim()).map(line => {
668                                        let [username_masked, amount] = line.split(',').map(x => x.trim());
669                                        return {
670                                            amount: parseInt(amount),
671                                            approved_amount: 0,
672                                            transaction_type: 0,
673                                            member_id: 0,
674                                            username: username_masked,
675                                            member_bank_id: 0,
676                                            username_masked: username_masked,
677                                            username_unmasked: "NULL"
678                                        };
679                                    });
680                                    deposit_list = [...new_deposits, ...deposit_list];
681
682                                    var new_withdrawals = info_withdrawal_list.split('\n').filter(line => line.trim()).map(line => {
683                                        let [username_masked, amount] = line.split(',').map(x => x.trim());
684                                        return {
685                                            amount: parseInt(amount),
686                                            approved_amount: 0,
687                                            transaction_type: 1,
688                                            member_id: 0,
689                                            username: username_masked,
690                                            member_bank_id: 0,
691                                            username_masked: username_masked,
692                                            username_unmasked: "NULL"
693                                        };
694                                    });
695                                    withdrawal_list = [...new_withdrawals, ...withdrawal_list];
696
697                                    // Use .slice(0, 5) to get only the first 5 items
698                                    $(deposit_list.slice(0, 5)).each(function (i) {
699                                        var username = this.username_masked;
700                                        var amount = (Math.floor(this.amount * 100) / 100).toFixed(2);
701                                        var count = i + 1;
702
703                                        live_deposit_list += '<div class="transaction_content_box">';
704                                        live_deposit_list += '<div class="transaction_content_1">';
705                                        live_deposit_list += '<img class="lazy" src="images/common/live/' + count + '.png">';
706                                        live_deposit_list += username;
707                                        live_deposit_list += '</div>';
708                                        live_deposit_list += '<div class="transaction_content_2">MYR&nbsp;' + amount + '</div>';
709                                        live_deposit_list += '</div>';
710                                    });
711
712                                    $('#live_deposit_list').html(live_deposit_list);
713
714                                    // Use .slice(0, 5) to get only the first 5 items
715                                    $(withdrawal_list.slice(0, 5)).each(function (i) {
716                                        var username = this.username_masked;
717                                        var amount = (Math.floor(this.amount * 100) / 100).toFixed(2);
718                                        var count = i + 1;
719
720                                        live_withdrawal_list += '<div class="transaction_content_box">';
721                                        live_withdrawal_list += '<div class="transaction_content_1">';
722                                        live_withdrawal_list += '<img class="lazy" src="images/common/live/' + count + '.png">';
723                                        live_withdrawal_list += username;
724                                        live_withdrawal_list += '</div>';
725                                        live_withdrawal_list += '<div class="transaction_content_2">MYR&nbsp;' + amount + '</div>';
726                                        live_withdrawal_list += '</div>';
727                                    });
728
729                                    $('#live_withdrawal_list').html(live_withdrawal_list);
730                                }
731                            });
732                        }
733                    },
734                    error: function (jqXHR, textStatus, errorThrown) {
735                        console.log("get_transaction_info_error");
736                    },
737                });
738
739
740            }
741            else {
742
743                live_deposit_list += '<div class="transaction_content_box">';
744                live_deposit_list += '<div class="transaction_content_1">';
745                live_deposit_list += 'No record';
746                live_deposit_list += '</div>';
747                live_deposit_list += '<div class="transaction_content_2"></div>';
748                live_deposit_list += '</div>';
749
750                live_withdrawal_list += '<div class="transaction_content_box">';
751                live_withdrawal_list += '<div class="transaction_content_1">';
752                live_withdrawal_list += 'No record';
753                live_withdrawal_list += '</div>';
754                live_withdrawal_list += '<div class="transaction_content_2"></div>';
755                live_withdrawal_list += '</div>';
756
757                $('#live_deposit_list').html(live_deposit_list);
758                $('#live_withdrawal_list').html(live_withdrawal_list);
759
760                if (res.errCode != "100015") {
761                    //alert(res.errMsg);
762                }
763            }
764
765            // Get current datetime
766            var currentdate = new Date();
767            var updatedDatetime = currentdate.getDate() + "/"
768                + String(currentdate.getMonth() + 1).padStart(2, '0') + "/"
769                + currentdate.getFullYear() + " "
770                + String(currentdate.getHours()).padStart(2, '0') + ":"
771                + String(currentdate.getMinutes()).padStart(2, '0') + ":"
772                + String(currentdate.getSeconds()).padStart(2, '0') + " ";
773            $("#live_transaction_time").html(updatedDatetime + " (GMT+8) ");
774        }
775    </script>
775
776
777    <!-- END: Contents from .aspx -->
778
779
780    <footer>
781        <div class="container">
782            <div class="mn-ft">
783                <ul>
784                    <li><a href="about_us">About Us</a></li>
785                    <li><a href="tnc">Terms & Conditions</a></li>
786                    <li><a href="banking">Bank</a></li>
787                    <li><a href="responsible_gaming">Responsible Gaming</a></li>
788                    <li><a href="privacy_policy">Privacy Policy</a></li>
789                    <li><a href="blog">Blog</a></li>
790                    <li><a href="affiliate">Affiliate</a></li>
791                </ul>
792                <div>
793                    <a href="mobile">
794                        <img src="/web/images/common/btn-m.png" alt="Mobile Download" />
795                        <div class="btn-m">Mobile Download</div>
796                    </a>
797                </div>
798            </div>
799        </div>
800        <div class="ft-img">
801            <img src="images/common/ft-line.png" alt="footer-line" />
802        </div>
803        <div class="ft-img2">
804            <img src="images/common/footer-img.png?v5.2" alt="Game Provider Logo" />
805        </div>
806        <div class="ft-img">
807            <img src="images/common/ft-line.png" alt="footer-line" />
808        </div>
809        <div class="foote-info">
810            <ul>
811                <li>
812                    <div class="ftcol">
813                        <div class="ftittle">
814                            Follow Us
815                        </div>
816                        <div class="ft_icon">
817                            <a href="https://www.facebook.com/Malayclubslot/" style="align-self: center;" target="_blank">
818                                <img src="/web/images/common/facebook.png" alt="Facebook"></a>
819                            <a href="https://www.youtube.com/channel/UCeCPTAdWN-d36xlLWBXUM9A" style="align-self: center;" target="_blank">
820                                <img src="/web/images/common/icon-youtube.png?20210405" alt="YouTube" /></a>
821                            <a href="https://t.me/joinchat/WX8kJONcDfY5MDc9" style="align-self: center;" target="_blank">
822                                <img src="/web/images/common/icon-telegram.png?20210405" alt="Telegram" /></a>
823                            
824                            
825                        </div>
826                    </div>
827                </li>
828                <li>
829                    <div class="ftcol">
830                        <div class="ftittle">
831                            Suggested Browser
832                        </div>
833                        <div class="ft_icon">
834                            
835                            
836                            <img src="/web/images/common/browser.png" alt="Chrome Firefox Edge">
837                        </div>
838                    </div>
839                </li>
840                <li>
841                    <div class="ftcol">
842                        <div class="ftittle">
843                            Payment Method
844                        </div>
845                        <div class="ft_icon">
846                            <img src="/web/images/common/gspay.png" alt="GSPAY">
847                            
848                            <img src="/web/images/common/help2pay-small.png" alt="help2pay">
849                        </div>
850                    </div>
851                </li>
852                <li>
853                    <div class="ftcol">
854                        <div class="ftittle">
855                            Licenses
856                        </div>
857                        <div class="ft_icon">
858                            <img src="/web/images/common/pagcor.png" alt="Pagcor">
859                        </div>
860                    </div>
861                </li>
862            </ul>
863        </div>
864        <div class="cpy">©2012-<span id="currentyear"></span> Malayclub. All rights reserved | 18+</div>
865    </footer>
866
867    
868
869<!-- LOGIN -->
870<div class="modal fade" id="login-modal" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
871    <div class="modal-dialog modal-dialog-scrollable login-form" role="document">
872        <div class="modal-content">
873            <div class="modal-body">
874                <div class="log-top">
875                    <h4>LOGIN</h4>
876                </div>
877                <div class="log-content-pop">
878                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><i class="fa fa-times"></i></button>
879                    <form id="form_login">
880                        <div class="reg-form-in">
881                            <div class="input-group">
882                                <div class="input-group-prepend">
883                                    <div class="input-group-text"><i class="fas fa-user"></i></div>
884                                </div>
885                                <input type="text" id="l_username" name="username" class="form-control" placeholder="USERNAME">
886                            </div>
887                            <label for="l_username" class="error" style="display: none;"></label>
888                            <div class="input-group">
889                                <div class="input-group-prepend">
890                                    <div class="input-group-text"><i class="fas fa-lock"></i></div>
891                                </div>
892                                <input type="password" id="l_password" name="password" class="form-control" placeholder="PASSWORD">
893                            </div>
894                            <label for="l_password" class="error" style="display: none;"></label>
895                            <div class="log-check">
896                                <div class="checkbox l-check">
897                                    <label>
898                                        <input type="checkbox" id="chk_rememberme">
899                                        REMEMBER ME</label>
900                                </div>
901                                <div class="forgot-item"><a href="javascript: void(0);" data-toggle="modal" data-dismiss="modal" data-target="#forgot-modal"><i class="fas fa-question-circle"></i>FORGOT PASSWORD?</a> </div>
902                            </div>
903                        </div>
904                    </form>
905                </div>
906                <div class="log-bottom">
907                    <button id="loginsubmitbtn" onclick="$('#form_login').submit();">LOGIN NOW</button>
908                    <div id="loginloadingbtn" style="display: none; text-align: center;">
909                        <img src="/web/images/common/load-indicator.gif" alt="Loading...">
910                    </div>
911                </div>
912            </div>
913        </div>
914    </div>
915</div>
916<!-- LOGIN -->
917
918<style>
919    .validation-message.valid {
920        color: green;
921    }
922
923    .validation-message.invalid {
924        color: red;
925    }
926
927    .validation-popup-fp {
928        display: none;
929        position: absolute;
930        top: 40px;
931        right: 0px;
932        z-index: 10;
933        width: fit-content;
934        padding: 10px;
935        border: 1px solid #006e52;
936        background: #ffffff;
937        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
938        border-radius: 5px;
939        color: #242d4b;
940        font-size: 1rem;
941    }
942</style>
943
944<!-- FORGOT PASSWORD -->
945<div class="modal fade" id="forgot-modal" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
946    <div class="modal-dialog modal-dialog-scrollable login-form" role="document">
947        <div class="modal-content">
948            <div class="modal-body">
949                <div class="log-top">
950                    <h4>FORGOT PASSWORD</h4>
951                </div>
952                <div class="log-content-pop">
953                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><i class="fa fa-times"></i></button>
954                    <form id="form_forgetpasswordv2" >
955                        <div class="reg-form-in">
956                            <div class="input-group">
957                                <div class="input-group-prepend">
958                                    <div class="input-group-text"><i class="fas fa-envelope"></i></div>
959                                </div>
960                                <input type="text" id="f_contact" name="contact" class="form-control" style="text-transform: uppercase;" placeholder="CONTACT NO.">
961                            </div>
962                            <label for="f_contact" class="error" style="display: none;"></label>
963                            <input type="hidden" id="action" name="action" value="forgetPassword" />
964                            
965                            <div class="input-group">
966                                <div class="input-group-prepend">
967                                    <div class="input-group-text"><i class="fas fa-shield-alt"></i></div>
968                                </div>
969                                <input type="text" id="f_vericode" name="v_code" class="form-control" placeholder="VERIFICATION CODE">
970                                <div class="vcode">
971                                    <img id="fpVeriCode" alt="Captcha Code" onclick="refreshVCode('fp','fpVeriCode');" style="height: 28px; position: absolute; right: 5%; top: 5px; z-index: 99;" />
972                                </div>
973                            </div>
974                            <label for="f_vericode" class="error" style="display: none;"></label>
975                            <br>
976                            <br>
977                        </div>
978                    </form>
979                    <form id="form_fpChgPassword" style="display: none;">
980                        <input type="hidden" id="actionresetPw" name="action" value="resetPassword" />
981                        <input type="hidden" id="userToken" name="token" />
982                        <input type="hidden" name="contact" id="fp_part2_contact" />
983                        <div class="reg-form-in">
984                            <div class="input-group">
985                                <div class="input-group-prepend">
986                                    <div class="input-group-text"><i class="fas fa-shield-alt"></i></div>
987                                </div>
988                                <input type="text" id="finalOTPValue" name="otp_code" class="form-control" placeholder="VERIFICATION CODE">
989                            </div>
990
991                            <div class="input-group">
992                                <div class="input-group-prepend">
993                                    <div class="input-group-text"><i class="fas fa-lock"></i></div>
994                                </div>
995                                <input type="password" id="n_fp_password" name="new_password" class="form-control" placeholder="NEW PASSWORD">
996                                <div class="validation-popup-fp" id="validationPopupFP">
997                                    <strong>Password must include:</strong>
998                                    <div class="validation-message invalid" id="fp_length_message"><i class="fas fa-times"></i>&nbsp;8-20 Characters</div>
999                                    <div class="validation-message invalid" id="fp_uppercase_message"><i class="fas fa-times"></i>&nbsp;At least one capital letter</div>
1000                                    <div class="validation-message invalid" id="fp_lowercase_message"><i class="fas fa-times"></i>&nbsp;At least one lowercase letter</div>
1001                                    <div class="validation-message invalid" id="fp_number_message"><i class="fas fa-times"></i>&nbsp;At least one number</div>
1002                                    <div class="validation-message invalid" id="fp_special_message"><i class="fas fa-times"></i>&nbsp;At least one special character</div>
1003                                </div>
1004                            </div>
1005                            <label for="n_fp_password" class="error" style="display: none;"></label>
1006
1007                            <div class="input-group">
1008                                <div class="input-group-prepend">
1009                                    <div class="input-group-text"><i class="fas fa-lock"></i></div>
1010                                </div>
1011                                <input type="password" id="c_fp_password" name="confirm_password" class="form-control" placeholder="CONFIRM PASSWORD">
1012                            </div>
1013                            <label for="c_fp_password" class="error" style="display: none;"></label>
1014                        </div>
1015
1016                    </form>
1017                </div>
1018                <div class="log-bottom">
1019                    <button id="fpsubmitbtn" type="button" onclick="$('#form_forgetpasswordv2').submit();">Submit</button>
1020                    <div style="justify-content: center;
1020 display:none" id="fpChgPass_submitbtn">
1021                        <button class="mx-2" id="resendotpbtn" type="button">Resend Code <span id="timer"></span></button>
1022                        <button class="mx-5" type="button" onclick="$('#form_fpChgPassword').submit();">Submit</button>
1023                    </div>
1024                    <div id="loadingbtn" style="display: none; text-align: center;">
1025                        <img src="/web/images/common/load-indicator.gif" alt="Loading...">
1026                    </div>
1027                </div>
1028            </div>
1029        </div>
1030    </div>
1031</div>
1032<!-- FORGOT PASSWORD -->
1033
1034<!-- CHANGE USERNAME MODAL -->
1035<div class="modal fade" id="changeUsernameModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
1036    <div class="modal-dialog modal-dialog-scrollable login-form" role="document">
1037        <div class="modal-content">
1038            <div class="modal-body">
1039                <div class="log-top">
1040                    <h4>CHANGE USERNAME</h4>
1041                </div>
1042                <div class="log-content-pop" style="margin-bottom: -18px;">
1043                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><i class="fa fa-times"></i></button>
1044                    <form id="form_change_username_modal">
1045                        <div>
1046                            <input type="text" class="form-control" name="username" placeholder="New Username">
1047                        </div>
1048                        <div>
1049                            <ul>
1050                                <li style="color:#fff ;">This will be your username for login purpose.</li>
1051                                <li style="color:#fff ;">It cannot be changed after submitted.</li>
1052                                <li style="color:#fff ;">Between 6 to 12 alphanumeric a-z, 0-9 character only.</li>
1053                            </ul>
1054                        </div>
1055                    </form>
1056                </div>
1057                <div class="log-bottom">
1058                    <button id="changeusersubmitbtn" type="button" onclick="$('#form_change_username_modal').submit();">Submit</button>
1059                    <div id="changeuserloadingbtn" style="display: none; text-align: center;">
1060                        <img src="/web/images/common/load-indicator.gif" alt="Loading...">
1061                    </div>
1062                </div>
1063            </div>
1064        </div>
1065    </div>
1066</div>
1067<!-- CHANGE USERNAME MODAL -->
1068
1069<!-- Mobile-1 -->
1070<div class="modal fade" id="mobile-gp" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
1071    <div class="modal-dialog modal-dialog-scrollable mob-bg" role="document">
1072        <div class="modal-content">
1073            <div class="modal-body">
1074                <div class="mobile-info">
1075                    <h4>GP SUITE</h4>
1076                    <ul>
1077                        <li>
1078                            <div class="qr-ttl">Android</div>
1079                            <div class="qr-img">
1080                                <img src="/web/images/common/QR-GP.jpg" alt="Gameplay download QR" />
1081                            </div>
1082                            <a href="https://casino.gp2fun.net/mob/download.html?op=GSOFT25" target="_blank">
1083                                <div class="qr-link">Download</div>
1084                            </a>
1085                        </li>
1086                        
1087                    </ul>
1088                    <div class="md-table">
1089                        <table border="0" align="center" cellpadding="0" cellspacing="0" class="table table-pop">
1090                            <thead>
1091                                <tr>
1092                                    <th colspan="2">Your Access Information (Case Sensitive)</th>
1093                                </tr>
1094                            </thead>
1095                            <tbody>
1096                                
1097                                <tr>
1098                                    <td valign="top">
1098Username:</td>
1099                                    <td><span class="acc-b">Please login to view username</span></td>
1100                                </tr>
1101                                <tr>
1102                                    <td>Password:</td>
1103                                    <td>Please login to view password</td>
1104                                </tr>
1105                                
1106                            </tbody>
1107                        </table>
1108                    </div>
1109                </div>
1110            </div>
1111            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
1112                <img src="/web/images/common/wrong-button.png" alt="x" /></button>
1113        </div>
1114    </div>
1115</div>
1116<!-- Mobile-2 -->
1117<div class="modal fade" id="mobile-jk" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
1118    <div class="modal-dialog modal-dialog-scrollable mob-bg" role="document">
1119        <div class="modal-content">
1120            <div class="modal-body">
1121                <div class="mobile-info">
1122                    <h4>JOKER SUITE</h4>
1123                    <ul>
1124                        
1125                        <li>
1126                            <div class="qr-ttl">Android</div>
1127                            <div class="qr-img">
1128                                <img src="/web/images/common/qr-jk-and.png" alt="Joker Download QR" />
1129                            </div>
1130                            <a href="https://joker.336699bet.com/" target="_blank">
1131                                <div class="qr-link">Download</div>
1132                            </a>
1133                        </li>
1134                        
1135                    </ul>
1136                    <div class="md-table">
1137                        <table border="0" align="center" cellpadding="0" cellspacing="0" class="table table-pop">
1138                            <thead>
1139                                <tr>
1140                                    <th colspan="2">Your Access Information (Case Sensitive)</th>
1141                                </tr>
1142                            </thead>
1143                            <tbody>
1144                                
1145                                <tr>
1146                                    <td valign="top">Username:</td>
1147                                    <td><span class="acc-b">Please login to view username</span></td>
1148                                </tr>
1149                                <tr>
1150                                    <td>Password:</td>
1151                                    <td>Please login to view password</td>
1152                                </tr>
1153                                
1154                            </tbody>
1155                        </table>
1156                    </div>
1157                </div>
1158            </div>
1159            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
1160                <img src="/web/images/common/wrong-button.png" alt="x" /></button>
1161        </div>
1162    </div>
1163</div>
1164<!-- Mobile-3 -->
1165<div class="modal fade" id="mobile-lv" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
1166    <div class="modal-dialog modal-dialog-scrollable mob-bg" role="document">
1167        <div class="modal-content">
1168            <div class="modal-body">
1169                <div class="mobile-info">
1170                    <h4>LIVE22 SUITE</h4>
1171                    <ul>
1172                        
1173                        <li>
1174                            <div class="qr-ttl">Android</div>
1175                            <div class="qr-img">
1176                                <img src="/web/images/common/qr-l4-and.png" alt="Live22 Download QR" />
1177                            </div>
1178                            <a href="https://download.pluto22.com/mobileservice/download/live22gbl/android" target="_blank">
1179                                <div class="qr-link">Download</div>
1180                            </a>
1181                        </li>
1182                        <li>
1183                            <div class="qr-ttl">IOS</div>
1184                            <div class="qr-img">
1185                                <img src="/web/images/common/qr-l4-ios.png?v1" alt="Live22 Download QR" />
1186                            </div>
1187                            <a href="https://w1.bluecave88.com/web/lobby
1187/?m7=w6HT" target="_blank">
1188                                <div class="qr-link">Download</div>
1189                            </a>
1190                        </li>
1191                    </ul>
1192                    <div class="md-table">
1193                        <table border="0" align="center" cellpadding="0" cellspacing="0" class="table table-pop">
1194                            <thead>
1195                                <tr>
1196                                    <th colspan="2">Your Access Information (Case Sensitive)</th>
1197                                </tr>
1198                            </thead>
1199                            <tbody>
1200                                
1201                                <tr>
1202                                    <td valign="top">Username:</td>
1203                                    <td><span class="acc-b">Please login to view username</span></td>
1204                                </tr>
1205                                <tr>
1206                                    <td>Password:</td>
1207                                    <td>Please login to view password</td>
1208                                </tr>
1209                                
1210                            </tbody>
1211                        </table>
1212                    </div>
1213                </div>
1214            </div>
1215            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
1216                <img src="/web/images/common/wrong-button.png" alt="x" /></button>
1217        </div>
1218    </div>
1219</div>
1220<div class="modal fade" id="mobile-mg" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
1221    <div class="modal-dialog modal-dialog-scrollable mob-bg" role="document">
1222        <div class="modal-content">
1223            <div class="modal-body">
1224                <div class="mobile-info">
1225                    <h4>MEGA888 SUITE</h4>
1226                    <ul>
1227                        
1228                        <li>
1229                            <div class="qr-ttl">Android</div>
1230                            <div class="qr-img">
1231                                <img src="/web/images/common/QR-ME.png" alt="Mega888 Download QR" />
1232                            </div>
1233                            <a href="http://mega.336699bet.com/" target="_blank">
1234                                <div class="qr-link">Download</div>
1235                            </a>
1236                        </li>
1237                        <li>
1238                            <div class="qr-ttl">IOS</div>
1239                            <div class="qr-img">
1240                                <img src="/web/images/common/QR-ME.png" alt="Mega888 Download QR" />
1241                            </div>
1242                            <a href="http://mega.336699bet.com/" target="_blank">
1243                                <div class="qr-link">Download</div>
1244                            </a>
1245                        </li>
1246                    </ul>
1247                    <div class="md-table">
1248                        <table border="0" align="center" cellpadding="0" cellspacing="0" class="table table-pop">
1249                            <thead>
1250                                <tr>
1251                                    <th colspan="2">Your Access Information (Case Sensitive)</th>
1252                                </tr>
1253                            </thead>
1254                            <tbody>
1255                                
1256                                <tr>
1257                                    <td valign="top">Username:</td>
1258                                    <td><span class="acc-b">Please login to view username</span></td>
1259                                </tr>
1260                                <tr>
1261                                    <td>Password:</td>
1262                                    <td>Please login to view password</td>
1263                                </tr>
1264                                
1265                            </tbody>
1266                        </table>
1267                    </div>
1268                </div>
1269            </div>
1270            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
1271                <img src="/web/images/common/wrong-button.png" alt="x" /></button>
1272        </div>
1273    </div>
1274</div>
1275<div class="modal fade" id="mobile-jc" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
1276    <div class="modal-dialog modal-dialog-scrollable mob-bg" role="document">
1277        <div class="modal-content">
1278            <div class="modal-body">
1279                <div class="mobile-info">
1280                    <h4>JCLUB777 SUITE</h4>
1281                    <ul>
1282                        
1283                        <li>
1284                            <div class="qr-ttl">Android</div>
1285                            <div class="qr-img">
1286                                <img src="/web/images/common/qr-jc-and.png" alt="jclub777 download qr" />
1287                            </div>
1288                            <a href="https://jclubhouse777.net/download?device=android" target="_blank">
1289                                <div class="qr-link">Download</div>
1290                            </a>
1291                        </li>
1292                        <li>
1293                            <div class="qr-ttl">IOS</div>
1294                            <div class="qr-img">
1295                                <img src="/web/images/common/qr-jc-ios.png" alt="jclub777 download qr" />
1296                            </div>
1297                            <a href="https://jclubhouse777.net/download?device=ios" target="_blank">
1298                                <div class="qr-link">Download</div>
1299                            </a>
1300                        </li>
1301                    </ul>
1302                    <div class="md-table">
1303                        <table border="0" align="center" cellpadding="0" cellspacing="0" class="table table-pop">
1304                            <thead>
1305                                <tr>
1306                                    <th colspan="2">
1306Your Access Information (Case Sensitive)</th>
1307                                </tr>
1308                            </thead>
1309                            <tbody>
1310                                
1311                                <tr>
1312                                    <td valign="top">Username:</td>
1313                                    <td><span class="acc-b">Please login to view username</span></td>
1314                                </tr>
1315                                <tr>
1316                                    <td>Password:</td>
1317                                    <td>Please login to view password</td>
1318                                </tr>
1319                                
1320                            </tbody>
1321                        </table>
1322                    </div>
1323                </div>
1324            </div>
1325            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
1326                <img src="/web/images/common/wrong-button.png" alt="x" /></button>
1327        </div>
1328    </div>
1329</div>
1330<div class="modal fade" id="mobile-pt" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
1331    <div class="modal-dialog modal-dialog-scrollable mob-bg" role="document">
1332        <div class="modal-content">
1333            <div class="modal-body">
1334                <div class="mobile-info">
1335                    <h4>PT SUITE</h4>
1336                    <ul>
1337                        
1338                        <li>
1339                            <div class="qr-ttl">Android</div>
1340                            <div class="qr-img">
1341                                <img src="/web/images/common/qr-pz.png" alt="Playtech Download QR" />
1342                            </div>
1343                            <a href="https://installer.hotspin88.com/download/AndroidCasino.apk" target="_blank">
1344                                <div class="qr-link">Download</div>
1345                            </a>
1346                        </li>
1347                        
1348                    </ul>
1349                    <div class="md-table">
1350                        <table border="0" align="center" cellpadding="0" cellspacing="0" class="table table-pop">
1351                            <thead>
1352                                <tr>
1353                                    <th colspan="2">Your Access Information (Case Sensitive)</th>
1354                                </tr>
1355                            </thead>
1356                            <tbody>
1357                                
1358                                <tr>
1359                                    <td valign="top">Username:</td>
1360                                    <td><span class="acc-b">Please login to view username</span></td>
1361                                </tr>
1362                                <tr>
1363                                    <td>Password:</td>
1364                                    <td>Please login to view password</td>
1365                                </tr>
1366                                
1367                            </tbody>
1368                        </table>
1369                    </div>
1370                </div>
1371            </div>
1372            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
1373                <img src="/web/images/common/wrong-button.png" alt="x" /></button>
1374        </div>
1375    </div>
1376</div>
1377<div class="modal fade" id="mobile-pu" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
1378    <div class="modal-dialog modal-dialog-scrollable mob-bg" role="document">
1379        <div class="modal-content">
1380            <div class="modal-body">
1381                <div class="mobile-info">
1382                    <h4>PUSSY888 SUITE</h4>
1383                    <ul>
1384                        
1385                        <li>
1386                            <div class="qr-ttl">Android</div>
1387                            <div class="qr-img">
1388                                <img src="/web/images/common/qr-pu.png" alt="Pussy888 Download QR" />
1389                            </div>
1390                            <a href="http://ytl.pussy888.com/" target="_blank">
1391                                <div class="qr-link">Download</div>
1392                            </a>
1393                        </li>
1394                        
1395                    </ul>
1396                    <div class="md-table">
1397                        <table border="0" align="center" cellpadding="0" cellspacing="0" class="table table-pop">
1398                            <thead>
1399                                <tr>
1400                                    <th colspan="2">
1400Your Access Information (Case Sensitive)</th>
1401                                </tr>
1402                            </thead>
1403                            <tbody>
1404                                
1405                                <tr>
1406                                    <td valign="top">Username:</td>
1407                                    <td><span class="acc-b">Please login to view username</span></td>
1408                                </tr>
1409                                <tr>
1410                                    <td>Password:</td>
1411                                    <td>Please login to view password</td>
1412                                </tr>
1413                                
1414                            </tbody>
1415                        </table>
1416                    </div>
1417                </div>
1418            </div>
1419            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
1420                <img src="/web/images/common/wrong-button.png" alt="x" /></button>
1421        </div>
1422    </div>
1423</div>
1424
1425<div class="modal fade" id="mobile-ks" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
1426    <div class="modal-dialog modal-dialog-scrollable mob-bg" role="document">
1427        <div class="modal-content">
1428            <div class="modal-body">
1429                <div class="mobile-info">
1430                    <h4>918KISS SUITE</h4>
1431                    <ul>
1432                        
1433                        <li>
1434                            <div class="qr-ttl">Android</div>
1435                            <div class="qr-img">
1436                                <img src="/web/images/common/qr-ks.png" alt="918Kiss Download QR" />
1437                            </div>
1438                            <a href="https://b1.918kiss.com/" target="_blank">
1439                                <div class="qr-link">Download</div>
1440                            </a>
1441                        </li>
1442                        <li>
1443                            <div class="qr-ttl">IOS</div>
1444                            <div class="qr-img">
1445                                <img src="/web/images/common/qr-ks.png" alt="918Kiss Download QR" />
1446                            </div>
1447                            <a href="https://b1.918kiss.com/" target="_blank"><div class="qr-link">Download</div></a>
1448                        </li>
1449                    </ul>
1450                    <div class="md-table">
1451                        <table border="0" align="center" cellpadding="0" cellspacing="0" class="table table-pop">
1452                            <thead>
1453                                <tr>
1454                                    <th colspan="2">Your Access Information (Case Sensitive)</th>
1455                                </tr>
1456                            </thead>
1457                            <tbody>
1458                                
1459                                <tr>
1460                                    <td valign="top">Username:</td>
1461                                    <td><span class="acc-b">Please login to view username</span></td>
1462                                </tr>
1463                                <tr>
1464                                    <td>Password:</td>
1465                                    <td>Please login to view password</td>
1466                                </tr>
1467                                
1468                            </tbody>
1469                        </table>
1470                    </div>
1471                </div>
1472            </div>
1473            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
1474                <img src="/web/images/common/wrong-button.png" alt="x" /></button>
1475        </div>
1476    </div>
1477</div>
1478
1479<div class="modal fade" id="mobile-ln" tabindex="-1" role="dialog" aria-labelledby="exampleModalScrollableTitle" style="display: none;" aria-hidden="true">
1480    <div class="modal-dialog modal-dialog-scrollable mob-bg" role="document">
1481        <div class="modal-content">
1482            <div class="modal-body">
1483                <div class="mobile-info">
1484                    <h4>LION KING SUITE</h4>
1485                    <ul>
1486                        
1487                        <li>
1488                            <div class="qr-ttl">Android</div>
1489                            <div class="qr-img">
1490                                <img src="/web/images/common/qr-ln.png" alt="LionKing Download QR" />
1491                            </div>
1492                            <a href="https://dl.lk4u.xyz/" target="_blank">
1493                                <div class="qr-link">Download</div>
1494                            </a>
1495                        </li>
1496                        
1497                    </ul>
1498                    <div class="md-table">
1499                        <table border="0" align="center" cellpadding="0" cellspacing="0" class="table table-pop">
1500                            <thead>
1501                                <tr>
1502                                    <th colspan="2">
1502Your Access Information (Case Sensitive)</th>
1503                                </tr>
1504                            </thead>
1505                            <tbody>
1506                                
1507                                <tr>
1508                                    <td valign="top">Username:</td>
1509                                    <td><span class="acc-b">Please login to view username</span></td>
1510                                </tr>
1511                                <tr>
1512                                    <td>Password:</td>
1513                                    <td>Please login to view password</td>
1514                                </tr>
1515                                
1516                            </tbody>
1517                        </table>
1518                    </div>
1519                </div>
1520            </div>
1521            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
1522                <img src="/web/images/common/wrong-button.png" alt="x" /></button>
1523        </div>
1524    </div>
1525</div>
1526
1527<div class="modal down-modal fade" id="popupAnnouncementModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLongTitle" aria-hidden="true">
1528    <div class="modal-dialog " role="document">
1529        <div class="modal-content">
1530            <div class="modal-header">
1531                <h4 class="modal-title" style="color: #fff;" id="myModalLabel"></h4>
1532                <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true" style="color: #fff;">&times;</span></button>
1533            </div>
1534            <div class="modal-body">
1535                <center><img class="d-desktop img-responsive" id="mImage" src="//:0" alt="Popup announcement"/></center>
1536                <div id="modalDescription"></div>
1537            </div>
1538        </div>
1539    </div>
1540</div>
1541
1542<div id="modal-content"></div>
1543
1544<script>
1545    $(document).ready(function () {
1546        refreshVCode("fp", "fpVeriCode");
1547    });
1548
1549    // FORMS VALIDATION
1550    $("#form_login").validate({
1551        rules: {
1552            "username": {
1553                required: true,
1554            },
1555            "password": {
1556                required: true,
1557            },
1558        },
1559        messages: {
1560            "username": {
1561                required: "Please insert Username.",
1562            },
1563            "password": {
1564                required: "Please insert Password.",
1565            },
1566        },
1567        submitHandler: function () {
1568            $("#freezescreen").show();
1569            $("#loginloadingbtn").show();
1570            $("#loginsubmitbtn").hide();
1571
1572            $.ajax({
1573                type: 'POST',
1574                url: '/ajaxData/proc_memLogin',
1575                data: $('#form_login').serialize(),
1576                success: function (d) {
1577                    $("#freezescreen").hide();
1578                    $("#loginloadingbtn").hide();
1579                    $("#loginsubmitbtn").show();
1580                    if (d.errCode == "0") {
1581                        if ($("#chk_rememberme").is(":checked")) {
1582                            var unix = new Date();
1583                            var us = $("#l_username").val();
1584                            var pw = $("#l_password").val();
1585                            var securecode = Encrypt(us + "|" + pw + "|" + unix);
1586                            setCookies("securityCheck", securecode, 31);
1587                        }
1588
1589                        $('#form_login')[0].reset();
1590
1591                        var redirect = document.referrer;
1592                        if (redirect)
1593                            window.location.href = redirect;
1594                        else
1595                            window.location.href = "/web/index";
1596                    }
1597                    else {
1598                        if (d.errCode == "0123456789") {
1599                            $("#login-modal").modal('hide');
1600                            $("#changeUsernameModal").modal('show');
1601                        }
1602                        else if (d.errCode == "0987654321") {
1603                            $("#login-modal").modal('hide');
1604                            $("#changeUsernameModal").modal('show');
1605                        } else if (d.errCode == "100006") {
1606                            alert(d.errCode + " - " + d.errMsg);
1607                            localStorage.setItem('userToken', d.data.token);
1608                            localStorage.setItem('usernameVal', $('#l_username').val());
1609                            window.location.href = "register-otp";
1610                        }
1611                        else {
1612                            alert(d.errCode + " - " + d.errMsg);
1613                        }
1614                    }
1615                },
1616                error: function (jqXHR, textStatus, errorThrown) {
1617                    $("#freezescreen").hide();
1618                    $("#loginloadingbtn").hide();
1619                    $("#loginsubmitbtn").show();
1620                    alert("Unknown error, Please contact our customer service");
1621                }
1622            });
1623        }
1624    });
1625
1626    
1627    var resetMethod = "sms"
1628    var resetMethodMsg = ("sms" == "sms" ? "SMS" : "E-mail");
1629    $(document).ready(function () {
1630
1631        //  InitializeOTPInputs();
1632
1633        $("#form_forgetpasswordv2").validate({
1634            rules: {
1635         "email": {
1636                    required: true,
1637                    maxlength: 200,
1638                    email: true
1639                },
1640         "contact": {
1641                    required: true,
1642                    maxlength: 200,
1643                },
1644         "v_code": {
1645                    required: true,
1646                }
1647            },
1648            messages: {
1649         "email": {
1650                    required: "Please insert email.",
1651                    maxlength: "Please enter at most {0} character",
1652                    email: "Please insert valid email, e.g. : [email protected].",
1653                },
1654         "contact": {
1655                    required: "This field is required.",
1656                },
1657         "v_code": {
1658                    required: "This field is required.",
1659                }
1660            },
1661            submitHandler: function (form) {
1662                $("#freezescreen").show();
1663                $("#loadingbtn").show();
1664                $("#fpsubmitbtn").hide();
1665                $.ajax({
1666                    type: 'POST',
1667                    url: '/ajaxData/proc_forgetPasswordV2',
1668                    data: $('#form_forgetpasswordv2').serialize(),
1669                    success: function (d) {
1670                        if (d.errCode == "0") {
1671                            $("#fp_part2_contact").val($('#f_contact').val());
1672                            $('#form_forgetpasswordv2')[0].reset();
1673                            $("#userToken").val(d.data);
1674                            var forgotPasswordSuccessTemplate = "You should receive an OTP through {0} within the next 5 minutes.";
1675                            alert(forgotPasswordSuccessTemplate.replace("{0}", resetMethodMsg));
1676
1677                            $("#form_forgetpasswordv2").hide();
1678                            $("#fpsubmitbtn").hide();
1679                            $("#form_fpChgPassword").css("display", "");
1680                            $("#fpChgPass_submitbtn").css("display", "flex");
1681                        }
1682                        else
1683                            alert(d.errCode + "-" + d.errMsg);
1684                    },
1685                    error: function (jqXHR, textStatus, errorThrown) {
1686                        alert("Unknown error, Please contact our customer service");
1687                    },
1688                    complete: function () {
1689                        $("#freezescreen").hide();
1690                        $("#loadingbtn").hide();
1691                        //$("#fpsubmitbtn").show();
1692                    }
1693                });
1694            }
1695        });
1696
1697        $("#form_fpChgPassword").validate({
1698            rules: {
1699     "new_password": {
1700                    required: true,
1701                    minlength: 8,
1702                    maxlength: 20,
1703                },
1704     "confirm_password": {
1705                    required: true,
1706                    minlength: 8,
1707                    maxlength: 20,
1708                    equalTo: n_fp_password
1709                }
1710            },
1711            messages: {
1712     "new_password": {
1713                    required: "Please insert Password.",
1714                    minlength: "Please enter at least {0} character",
1715                    maxlength: "Please enter at most {0} character"
1716                },
1717     "confirm_password": {
1718                    required: "Please insert Confirm Password.",
1719         minlength: "Please enter at least {0} character",
1720         maxlength: "Please enter at most {0} character",
1721         equalTo: "Confirm password must same with password"
1722                }
1723            },
1724            submitHandler: function (form) {
1725                $("#freezescreen").show();
1726                $("#chgpassword_loadingbtn").show();
1727                $("#chgpassword_submitbtn").hide();
1728
1729                $.ajax({
1730                    type: 'POST',
1731                    url: '/ajaxData/proc_forgetPasswordV2',
1732                    data: $('#form_fpChgPassword').serialize(),
1733                    success: function (d) {
1734                        if (d.errCode == "0") {
1735                            $('#form_fpChgPassword')[0].reset();
1736                            alert("Password successfully changed!")
1737                            window.location.href = "/web/index";
1738                        }
1739                        else
1740                            alert(d.errCode + "-" + d.errMsg);
1741                    },
1742                    error: function (jqXHR, textStatus, errorThrown) {
1743                        alert("Unknown error, Please contact our customer service");
1744                    },
1745                    complete: function () {
1746                        $("#freezescreen").hide();
1747                        $("#chgpassword_loadingbtn").hide();
1748                        $("#chgpassword_submitbtn").show();
1749                    }
1750                });
1751            }
1752        });
1753
1754        $('#resendotpbtn').on('click', function (e) {
1755            e.preventDefault();
1756            ResendOTP();
1757        });
1758
1759        $('#submitotpbtn').on('click', function (e) {
1760            e.preventDefault();
1761            //console.log(ValidateOTPInputs());
1762            SubmitOTPInput();
1763        });
1764
1765
1766        var $FPPassword = $('#n_fp_password');
1767        var $validationPopupFP = $('#validationPopupFP');
1768        var fpcheck1 = 0, fpcheck2 = 0, fpcheck3 = 0, fpcheck4 = 0, fpcheck5 = 0;
1769
1770        // Show popup when input is focused
1771        $FPPassword.on('focus', function () {
1772            $validationPopupFP.show();
1773        });
1774
1775        // Hide popup when input loses focus
1776        $FPPassword.on('blur', function () {
1777            $validationPopupFP.hide();
1778        });
1779
1780        // Update validation messages and password strength as user types
1781        $FPPassword.on('input', function () {
1782            var inputVal_fp = $(this).val();
1783            var minLength_fp = 8;
1784            var maxLength_fp = 20;
1785            var hasUpperCase_fp = /[A-Z]/.test(inputVal_fp);
1786            var hasNumber_fp = /\d/.test(inputVal_fp);
1787            var hasLowerCase_fp = /[a-z]/.test(inputVal_fp);
1788            var hasSpeicial_fp = /[`!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?~]/.test(inputVal_fp);
1789
1790            // Validate length
1791            if (inputVal_fp.length >= minLength_fp && inputVal_fp.length <= maxLength_fp) {
1792                $('#fp_length_message').removeClass('invalid').addClass('valid').html('<i class="fas fa-check"></i>&nbsp;8-20 Characters');
1793                fpcheck1 = 1;
1794            } else {
1795                $('#fp_length_message').removeClass('valid').addClass('invalid').html('<i class="fas fa-times"></i>&nbsp;8-20 Characters');
1796                fpcheck1 = 0;
1797            }
1798
1799            // Validate uppercase letter
1800            if (hasUpperCase_fp) {
1801                $('#fp_uppercase_message').removeClass('invalid').addClass('valid').html('<i class="fas fa-check"></i>&nbsp;At least one capital letter');
1802                fpcheck2 = 1;
1803            } else {
1804                $('#fp_uppercase_message').removeClass('valid').addClass('invalid').html('<i class="fas fa-times"></i>&nbsp;At least one capital letter');
1805                fpcheck2 = 0;
1806            }
1807
1808            // Validate small latter
1809            if (hasLowerCase_fp) {
1810                $('#fp_lowercase_message').removeClass('invalid').addClass('valid').html('<i class="fas fa-check"></i>&nbsp;At least one lowercase letter');
1811                fpcheck3 = 1;
1812            } else {
1813                $('#fp_lowercase_message').removeClass('valid').addClass('invalid').html('<i class="fas fa-times"></i>&nbsp;At least one lowercase letter');
1814                fpcheck3 = 0;
1815            }
1816
1817            // Validate number
1818            if (hasNumber_fp) {
1819                $('#fp_number_message').removeClass('invalid').addClass('valid').html('<i class="fas fa-check"></i>&nbsp;At least one number');
1820                fpcheck4 = 1;
1821            } else {
1822                $('#fp_number_message').removeClass('valid').addClass('invalid').html('<i class="fas fa-times"></i>&nbsp;At least one number');
1823                fpcheck4 = 0;
1824            }
1825
1826            // Validate special character
1827            if (hasSpeicial_fp) {
1828                $('#fp_special_message').removeClass('invalid').addClass('valid').html('<i class="fas fa-check"></i>&nbsp;At least one special character');
1829                fpcheck5 = 1;
1830            } else {
1831                $('#fp_special_message').removeClass('valid').addClass('invalid').html('<i class="fas fa-times"></i>&nbsp;At least one special character');
1832                fpcheck5 = 0;
1833            }
1834
1835            if (fpcheck1 == 0 || fpcheck2 == 0 || fpcheck3 == 0 || fpcheck4 == 0 || fpcheck5 == 0)
1836                $("#fpsubmitbtn").css("pointer-events", "none");
1837            else
1838                $("#fpsubmitbtn").css("pointer-events", "");
1839
1840        });
1841    });
1842
1843
1844    function ResendOTP() {
1845        $("#freezescreen").show();
1846        $("#loadingotpbtn").show();
1847        var fd = new FormData();
1848        fd.append('Action', 'resendOTP');
1849        fd.append('Token', $('#userToken').val());
1850        $.ajax({
1851            type: 'POST',
1852            url: '/ajaxData/proc_forgetPasswordV2',
1853            data: fd,
1854            dataType: 'json',
1855            contentType: false,
1856            processData: false,
1857            success: function (d) {
1858                if (d.errCode == "0") {
1859                    alert("OTP request successful.");
1860                    $("#userToken").val(d.data);
1861                    startResendTimer();
1862                }
1863                else
1864                    alert(d.errCode + "-" + d.errMsg);
1865            },
1866            error: function (jqXHR, textStatus, errorThrown) {
1867                alert("Unknown error, Please contact our customer service");
1868            },
1869            complete: function () {
1870                $("#freezescreen").hide();
1871                $("#loadingotpbtn").hide();
1872            }
1873        });
1874    }
1875    function ValidateOTPInputs() {
1876        var pass = true;
1877        $('.otpcontainer input').each(function (i, v) {
1878            if ($(v).val() == "") {
1879                pass = false;
1880            }
1881        });
1882        return pass;
1883    }
1884
1885    let timer;
1886    let countdown = 60; // Set the countdown duration in seconds
1887
1888    function startResendTimer() {
1889        // Disable the button during the countdown
1890        $('#resendotpbtn').prop("disabled", true);
1891        $('#resendotpbtn').css('opacity', '0.3')
1892        // Start the countdown
1893        timer = setInterval(updateTimer, 1000);
1894    }
1895
1896    function updateTimer() {
1897        var timerElement = $('#timer');
1898
1899        if (countdown > 0) {
1900            $('#timer').html("("+countdown+")");
1901            countdown--;
1902        } else {
1903            // Enable the button when the countdown reaches zero
1904            $('#resendotpbtn').prop("disabled", false);
1905            $('#resendotpbtn').css('opacity', '1')
1906            $('#timer').html('');
1907
1908            // Reset countdown for the next attempt
1909            countdown = 60;
1910
1911            // Stop the timer
1912            clearInterval(timer);
1913        }
1914    }
1915    function SubmitOTPInput() {
1916        if (ValidateOTPInputs()) {
1917            $("#freezescreen").show();
1918            $("#loadingotpbtn").show();
1919
1920            var fd = new FormData();
1921            fd.append('Action', 'submitOTP');
1922            fd.append('OTPValue', $('#finalOTPValue').val());
1923            fd.append('Token', $('#userToken').val());
1924            $.ajax({
1925                type: 'POST',
1926                url: '/ajaxData/proc_forgetPasswordV2',
1927                data: fd,
1928                dataType: 'json',
1929                contentType: false,
1930                processData: false,
1931                success: function (d) {
1932                    if (d.errCode == "0") {
1933                        $(".otpformcontainer").css("display", "none");
1934                        $("#finalOTPValue").val('');
1935                        $("#userTokenFromOTP").val(d.data);
1936                        $('.confirmpasswordcontainer').css("display", "");
1937                    }
1938                    else
1939                        alert(d.errCode + "-" + d.errMsg);
1940                },
1941                error: function (jqXHR, textStatus, errorThrown) {
1942                    alert("Unknown error, Please contact our customer service");
1943                },
1944                complete: function () {
1945                    $("#freezescreen").hide();
1946                    $("#loadingotpbtn").hide();
1947                }
1948            });
1949        }
1950        else {
1951            alert("Please fill in all the OTP fields.");
1952        }
1953    }
1954    
1955
1956    //////// start change username
1957    $("#form_change_username_modal").validate({
1958        rules: {
1959            "username": {
1960                required: true
1961            }
1962        },
1963        messages: {
1964            "username": {
1965                required: "This field is required.",
1966            }
1967        },
1968        submitHandler: function () {
1969            $("#freezescreen").show();
1970            $("#changeuserloadingbtn").show();
1971            $("#changeusersubmitbtn").hide();
1972
1973            $.ajax({
1974                type: 'POST',
1975                url: '/ajaxData/proc_changeUsernameS188',
1976                data: $('#form_change_username_modal').serialize(),
1977                cache: false,
1978                dataType: 'json',
1979                success: function (d) {
1980                    $("#freezescreen").hide();
1981                    $("#changeuserloadingbtn").hide();
1982                    $("#changeusersubmitbtn").show();
1983
1984                    if (d.errCode == "0") {
1985                        alert("Username changed successful. Please take note [USERNAME] will be used for you login in future.".replace("[USERNAME]", $("#form_change_username_modal input[name='username']").val()));
1986                        window.location.href = "/web/index";
1987                    }
1988                    else
1989                        alert(d.errCode + " - " + d.errMsg);
1990                },
1991                error: function (jqXHR, textStatus, errorThrown) {
1992                    $("#freezescreen").hide();
1993                    $("#changeuserloadingbtn").hide();
1994                    $("#changeusersubmitbtn").show();
1995                    alert("Unknown error, Please contact our customer service");
1996                }
1997            });
1998        }
1999    });
2000
2001    function getGameInfo(prod_code) {
2002        
2003    }
2004
2005    function getGameUsername(prod_code) {
2006        $.ajax({
2007            type: 'POST',
2008            url: '/ajaxData/proc_getProductUsername',
2009            data: { "p_code": prod_code },
2010            success: function (d) {
2011                if (d.errCode == "0")
2012                    $('#' + prod_code + '_username').html(d.data);
2013                else
2014                    getGameBalance(prod_code);
2015            },
2016            error: function (jqXHR, textStatus, errorThrown) {
2017                alert("Unknown error, Please contact our customer service");
2018            }
2019        });
2020    }
2021
2022    function getGamePassword(prod_code) {
2023        $.ajax({
2024            type: 'POST',
2025            url: '/ajaxData/proc_getdlClientInfo',
2026            data: { "p_code": prod_code },
2027            success: function (d) {
2028                if (d.errCode == "0")
2029                    $('#' + prod_code + '_password').html(d.data);
2030                else
2031                    getGameBalance(prod_code);
2032            },
2033            error: function (jqXHR, textStatus, errorThrown) {
2034                alert("Unknown error, Please contact our customer service");
2035            }
2036        });
2037    }
2038
2039    function getGameBalance(prod_code) {
2040        $.ajax({
2041            type: "POST",
2042            url: "/ajaxData/proc_getCCLBalance",
2043            data: { "p_code": prod_code },
2044            success: function (d) {
2045                if (d.errCode == "0") {
2046                    getGamePassword(prod_code);
2047                    getGameUsername(prod_code);
2048                }
2049                else
2050                    alert(d.errMsg);
2051            }
2052        });
2053    }
2054
2055    function setGamePassword(prod_code) {
2056        $("#freezescreen").show();
2057        $.ajax({
2058            type: 'POST',
2059            url: '/ajaxData/proc_setdlClientInfo',
2060            data: {
2061                "p_code": prod_code,
2062                "p_pw": $('#' + prod_code + '_new_password').val()
2063            },
2064            success: function (d) {
2065                if (d.errCode == "0") {
2066                    $("#" + prod_code + "_new_password").val('');
2067                    getGamePassword(prod_code);
2068                }
2069                else
2070                    alert(d.errMsg);
2071
2072                $("#freezescreen").hide();
2073            },
2074            error: function (jqXHR, textStatus, errorThrown) {
2075                alert("Unknown error, Please contact our customer service");
2076                $("#freezescreen").hide();
2077            }
2078        });
2079    }
2080</script>
2080
2081
2082
2083    
2083<script src="/web/js/bootstrap.min.js?2021/04/05"></script>
2083
2084    
2084<script src="/jcmm-float-icon/jcmm-float-icon.js?v=10"></script>
2084
2085    
2085<script src="/Scripts/jcmm-luckydice.js?v=2"></script>
2085
2086    
2086<script src="/fortunewheel/fortunewheel.js?v=7"></script>
2086
2087
2088    
2088<script>
2089        $.xhrPool = [];
2090        $.xhrPool.abortAll = function () {
2091            $(this).each(function (idx, jqXHR) {
2092                jqXHR.abort();
2093            });
2094            $.xhrPool = [];
2095        };
2096
2097        $.ajaxSetup({
2098            beforeSend: function (jqXHR) {
2099                $.xhrPool.push(jqXHR);
2100            },
2101            complete: function (jqXHR) {
2102                var index = $.xhrPool.indexOf(jqXHR);
2103                if (index > -1) {
2104                    $.xhrPool.splice(index, 1);
2105                }
2106            }
2107        });
2108
2109        $(document).ready(function () {
2110
2111            var $fw = $('#fortunewheel');
2112
2113            initFortuneWheel($fw);
2114
2115            if (getCookie("push-noti") == null) {
2116                getPopupAnnouncement();
2117            }
2118
2119            getAnnouncement();
2120            getDateTime();
2121            getLanguage();
2122
2123            $('div.menu div.menu-box > ul > li > a[href="' + window.location.pathname.split("/").pop() + '"]').parent('li').addClass('active');
2124
2125            $("#floatClose").click(function () {
2126                $("#float-icon").css("display", "none");
2127            });
2128
2129            
2130
2131            // Get product list by each category and append to header
2132            getProductListByCategoryModal("SB", "Sport");
2133            getProductListByCategoryModal("LC", "Casino");
2134            getProductListByCategoryModal("SL", "Slot");
2135            getProductListByCategoryModal("PK", "Poker");
2136            getProductListByCategoryModal("OT", "Other");
2137            getProductListByCategoryModal("FH", "FishHunter");
2138            getProductListByCategoryModal("LK", "Lotto");
2139            getProductListByCategoryModal("CB", "CBG");
2140
2141            // Get Contact List
2142            var preferences = '{"language_code":[],"logo":{"logo_primary":"","logo_secondary":"","logo_fav":"","logo_seo":""},"contact":null,"live_chat":null,"app_download":null}';
2143
2144            if (preferences != null) {
2145                $("#sideContactTable").empty();
2146                var contactList = preferences.contact;
2147
2148                $(contactList).each(function () {
2149                    if (!this.is_show) return; // if current contact set inactive in BO, then skip to next contact
2150
2151                    var icon = replaceHTTPS(this.icon);
2152                    var contactHTML = '';
2153                    var contactInfo = '';
2154
2155                    if (this.image) // if got image https://prnt.sc/sygm6r
2156                        contactInfo = '<img src="' + this.image + '" style="max-width: 100px;"><br>' + this.info;
2157                    else
2158                        contactInfo = this.info;
2159
2160                    // start append contact
2161                    if (this.type == "email")
2162                        contactHTML += '    <a href="mailto:' + this.info + '">';
2163                    else {
2164                        if (this.link)
2165                            contactHTML += '<a href="' + this.link + '">';
2166                    }
2167
2168                    contactHTML += '            <div class="cont-item clearfix">';
2169                    contactHTML += '                <div class="iconWrap" style="padding-top: 5px;">';
2170                    contactHTML += '                    <img src="' + this.icon + '" style="width:25px;" />';
2171                    contactHTML += '                </div>';
2172                    contactHTML += '                <div class="cont-info">';
2173
2174                    // append contact name
2175                    switch (this.type) {
2176                        case "hotline":
2177                            contactHTML += '            <span class="devicename">Hotline</span><br />';
2178                            break;
2179                        case "email":
2180                            contactHTML += '            <span class="devicename">E-mail</span><br />';
2181                            break;
2182                        case "skype":
2183                            contactHTML += '            <span class="devicename">Skype</span><br />';
2184                            break;
2185                        case "facebook":
2186                            contactHTML += '            <span class="devicename">Facebook</span><br />';
2187                            break;
2188                        case "whatsapp":
2189                            contactHTML += '            <span class="devicename">Whatsapp</span><br />';
2190                            break;
2191                        case "wechat":
2192                            contactHTML += '            <span class="devicename">Wechat</span><br />';
2193                            break;
2194                        case "line":
2195                            contactHTML += '            <span class="devicename">Line</span><br />';
2196                            break;
2197                        case "qq":
2198                            contactHTML += '            <span class="devicename">QQ</span><br />';
2199                            break;
2200                        case "telegram":
2201                            contactHTML += '            <span class="devicename">Telegram</span><br />';
2202                            break;
2203                        case "yahoo":
2204                            contactHTML += '            <span class="devicename">Yahoo</span><br />';
2205                            break;
2206                        case "qr":
2207                            contactHTML += '            <span class="devicename">QR Code</span><br />';
2208                            break;
2209                        case "bbm":
2210                            contactHTML += '            <span class="devicename">BBM</span><br />';
2211                            break;
2212                        case "other":
2213                            contactHTML += '            <span class="devicename">Others</span><br />';
2214                            break;
2215                    }
2216
2217                    contactHTML += '                    <span class="details">' + contactInfo + '</span>';
2218                    contactHTML += '                </div>';
2219                    contactHTML += '            </div>';
2220
2221                    if (this.link)
2222                        contactHTML += '    </a>';
2223
2224                    $("#sideContactTable").append(contactHTML);
2225                });
2226            }
2227
2228            /********** BEGIN: Reward game **********/
2229            var mgr_modal = $('.mg-reward-modal');
2230
2231            setMGR_Html(mgr_modal);
2232
2233            mgr_modal.on('click', '#mgr-btn-play-again', function (e) {
2234                e.preventDefault();
2235                setMGR_Html(mgr_modal);
2236            });
2237
2238            mgr_modal.on('click', '.mg-reward-init', function (e) {
2239                e.preventDefault();
2240                if (!$(this).hasClass('mg-reward-clicked')) {
2241                    $(this).addClass('mg-reward-clicked');
2242                    ClaimRewardGame();
2243                }
2244            });
2245
2246            mgr_modal.on('click', '.mg-body-close', function (e) {
2247                e.preventDefault();
2248                mgr_modal.toggleClass('mg-reward-show-modal');
2249                setTimeout(function () {
2250                    setMGR_Html(mgr_modal);
2251                }, 500);
2252            });
2253            // another reward game script below
2254            /********** END: Reward game **********/
2255
2256            /********** BEGIN: Init float icon **********/
2257            var $fi = $('#float-icon');
2258
2259            var size = {
2260                width: '100%',
2261                height: '100%'
2262            };
2263
2264            initFloatIcon($fi, size);
2265            /********** END: Init float icon **********/
2266
2267            /********** BEGIN: Init lucky dice **********/
2268            var $ld = $('#lucky-dice-div');
2269            initLuckyDice($ld, null);
2270            /********** END: Init lucky dice **********/
2271
2272            $("#form_contactkefu").validate({
2273                rules: {
2274                    "phone_Check": {
2275                        required: true,
2276                        digits: true
2277                    },
2278                },
2279                messages: {
2280                    "phone_Check": {
2281                        required: "请填入你的手机号码",
2282                        digits: "格式不对"
2283                    },
2284                },
2285                submitHandler: function () {
2286                    $("#freezescreen").show();
2287                    $("#callsubmitbtn").show();
2288                    $("#callloadingbtn").hide();
2289
2290                    var playerPhone = $("#player_phone").val();
2291                    $("#final_player_phone").val(80086 + playerPhone);
2292                    //800 is fixed value + 86 is country code for CHina+ playerphone
2293                    $.ajax({
2294                        type: 'POST',
2295                        url: '/ajaxData/proc_makeSupportCall',
2296                        data: $('#form_contactkefu').serialize(),
2297                        success: function (d) {
2298                            $("#freezescreen").hide();
2299                            $("#callsubmitbtn").hide();
2300                            $("#callloadingbtn").show();
2301
2302                            if (d.errCode == "0") {
2303                                $('#form_contactkefu')[0].reset();
2304                                alert("客服会尽快拨打回给您");
2305                            }
2306                            //else
2307                            //    alert(d.errCode + " - " + d.errMsg);
2308                        },
2309                        error: function (jqXHR, textStatus, errorThrown) {
2310                            $("#freezescreen").hide();
2311                            $("#callsubmitbtn").hide();
2312                            $("#callloadingbtn").show();
2313                            alert("Unknown error, Please contact our customer service");
2314                        }
2315                    });
2316                }
2317            });
2318
2319        });
2320
2321        function launchGame(gameCode, gameType) {
2322            
2323            alert("Please login first.");
2324            
2325        }
2326
2327        $(function () {
2328            thisyear = new Date().getFullYear();
2329            $('#currentyear').text(thisyear);
2330        });
2331
2332        // Represented as ajax.error, will be executed when ajax request has error
2333        function ajaxFail(err, status, xhr) {
2334            $("#freezescreen").hide();
2335            alert("Unknown error, Please contact our customer service");
2336        }
2337
2338        // Represented as ajax.complete, will be executed after ajax request success or fail
2339        function ajaxAlways(res, status, xhr) {
2340            if (res.errCode == "99") {
2341                $.xhrPool.abortAll();
2342                alert("Session timeout. Please login again.");
2343                window.location = "/web/index";
2344            }
2345        }
2346
2347        function getSaveLogin() {
2348            var savedlogin = getCookie("securityCheck");
2349            var raw = Decrypt(savedlogin);
2350            var checker = raw.split('|');
2351            $("#l_username").val(checker[0]);
2352            $("#l_password").val(checker[1]);
2353            $("#chk_rememberme").prop("checked", true);
2354        }
2355
2356        // Launch Seamless Game
2357
2358        popUpSGameLink = function (prod_code, prod_type, prod_html5, game_id, width, height) {
2359            
2360            alert("Please login first.");
2361            
2362        }
2363
2364        var smlpopup;
2365        swlaunch = function (prod_code, prod_type, prod_html5, game_id, width, height) {
2366            
2367            alert("Please login first.");
2368            
2369        }
2370
2371        var popUpWin;
2372        testinglaunch = function (prod_code, prod_type, prod_html5, game_id, width, height) {
2373            
2374            alert("Please login first.");
2375            
2376        }
2377
2378        // Launch Game
2379        popUpGameLink = function (prod_code, prod_type, prod_html5, width, height, game_id) {
2380            
2381            alert("Please login first.");
2382            
2383        }
2384           // Launch GSC+ FFT Game
2385        popUpGameLinkGSI = function (prod_code, prod_type, prod_html5, game_id, width, height) {
2386            
2387            alert("Please login first.");
2388            
2389        }
2390        // Launch Demo Game
2391        popUpDGameLink = function (prod_code, prod_type, prod_html5, game_id, width, height) {
2392            popUpWin = window.open('launchDGames2?url=/' + prod_type + '/' + prod_code + '/' + prod_html5 + '/' + game_id, 'Game Window', 'width=' + width + ',height=' + height + ',scrollbars=0,resizable=1,menubar=0;');
2393        }
2394
2395        
2396
2397        /********** BEGIN: Reward game **********/
2398        function ClaimRewardGame() {
2399            var url = "/ajaxData/proc_rewardGameClaim";
2400            ajaxRequest("GET", url, null, ClaimRewardGameDone, ajaxFail, ajaxAlways, false, false);
2401        }
2402
2403        function ClaimRewardGameDone(res, status, xhr) {
2404            var mgr_modal = $('.mg-reward-modal');
2405
2406            if (res.errCode == "0") {
2407                if (res.data != null) {
2408                    var d = JSON.parse(res.data)[0];
2409                    var win_amount = '$ ' + parseFloat(d.winning_amount).toFixed(2);
2410
2411                    var result_img = document.createElement('img');
2412                    result_img.src = mgr_modal.find('.mg-reward-init').attr('data-result-img') + '?d=' + new Date().getTime();
2413
2414                    $(result_img).on('load', function () {
2415                        mgr_modal.find('.mg-reward-init').css({
2416                            'z-index': '7',
2417                            'background': 'url(' + result_img.src + ') no-repeat center /100% 100%'
2418                        });
2419                    });
2420
2421                    mgr_modal.find('.mg-reward-prize-amount').text(win_amount);
2422                    var prize_top = parseInt(mgr_modal.find('.mg-reward-prize-amount').css('top'));
2423
2424                    // let animated result image finish
2425                    setTimeout(function () {
2426                        mgr_modal.find('.mg-reward-prize-amount').animate({ opacity: '1', top: (prize_top - 45) + 'px' }, 1000);
2427                        mgr_modal.find('#mgr-btn-play-again').css('display', 'inline-block');
2428                    }, 1000);
2429                } else {
2430                    mgr_modal.find('.mg-reward-init').removeClass('mg-reward-clicked');
2431                    alert("Unknown error, Please contact our customer service");
2432                }
2433            }
2434            else {
2435                alert(res.errCode + " - " + res.errMsg);
2436            }
2437        }
2438
2439        function setMGR_Html(m) {
2440            var mgr_template = $('#mgr-template').clone().html();
2441            m.empty();
2442            m.html(mgr_template);
2443        }
2444        /********** END: Reward game **********/
2445
2446        function getAgentContact() {
2447            $.ajax({
2448                type: 'POST',
2449                url: '/ajaxData/proc_getAgentContact',
2450                async: true,
2451                cache: false,
2452                dataType: 'json',
2453                success: function (d) {
2454        // commented by Raiden on July 17, 2020: unknown productCode is not defined
2455                    
2456                },
2457                error: function (jqXHR, textStatus, errorThrown) {
2458                    
2459                }
2460            });
2461        }
2462
2463        /********** BEGIN: Get product list by each category and append to header **********/
2464        function getProductListByCategoryModal(categoryType, gameType) {
2465            $("#freezescreen").show();
2466            var url = "../ajaxData/proc_getProductListByCategory?c_type=" + categoryType;
2467            ajaxRequest("GET", url, null, getProductListByCategoryModalDone.bind({ "gameType": gameType }), ajaxFail, ajaxAlways);
2468        }
2469
2470        // Success callback function
2471        function getProductListByCategoryModalDone(res, status, xhr) {
2472            $("#freezescreen").hide();
2473            if (res.errCode == "0") {
2474                var gameType = this.gameType;
2475                var html = '';
2476                $(res.data).each(function (idx) {
2477                    var name = this.p_name;
2478                    var code = this.p_code;
2479                    var type = this.p_type;
2480                    var image = this.p_image || "//:0";
2481
2482                    //menu
2483                    html = '';
2484                    html += '<div class="col-sm-3">';
2485                    html += '<h3 class="title">' + name + ' Suite</h3><div class="fluid-width-video-wrapper">';
2486                    html += '<a href="#" onclick="popUpGameLink(\'' + code + '\',\'' + type + '\',\'0\',0,1000,600)">';
2487                    //html += '<img src="/web/images/product/' + type + '-' + code + '.jpg" alt="" /></a></div></div>';
2488                    html += '<img src="' + image + '" alt="" /></a></div></div>';
2489
2490                    $("#menu" + gameType).append(html);
2491
2492                    //page
2493                    html = '';
2494                    html += '<a href="#" onclick="popUpGameLink(\'' + code + '\',\'' + type + '\',\'0\',0,1000,600)">';
2495                    //html += '<div class="games-item"> <div> <img class="gameImageSize" src="images/product/' + type + '-' + code + '.jpg"></div>';
2496                    html += '<div class="games-item"> <div> <img class="gameImageSize" src="' + image + '"></div>';
2497                    html += '</a>';
2498
2499                    $("#page" + gameType).append(html);
2500                });
2501            }
2502        }
2503        /********** END: Get product list by each category and append to header **********/
2504
2505        /********** BEGIN: Get popup announcement **********/
2506        function getPopupAnnouncement() {
2507            var url = "../ajaxData/proc_getPopupAnnouncement";
2508            ajaxRequest("GET", url, null, getPopupAnnouncementDone, ajaxFail, ajaxAlways, false, false);
2509        }
2510
2511        // Success callback function
2512        function getPopupAnnouncementDone(res, status, xhr) {
2513            if (res.errCode == "0") {
2514                setCookies("push-noti", new Date().toTimeString(), 1);
2515
2516                if (!res.data.is_active) return;
2517
2518                if (res.data.d_image)
2519                    $("#popupAnnouncementModal .modal-body img").attr("src", res.data.d_image);
2520                if (res.data.m_image)
2521                    $("#popupAnnouncementModal #mImage").attr("src", res.data.m_image);
2522                if (res.data.title)
2523                    $("#popupAnnouncementModal .modal-title").text(res.data.title);
2524                if (res.data.description)
2525                    $("#popupAnnouncementModal .modal-body").append("<div>" + res.data.description + "</div>");
2526
2527                $("#popupAnnouncementModal").modal();
2528            }
2529        }
2530        /********** END: Get popup announcement **********/
2531
2532        function getLanguage() {
2533            $(".lang-menu").click(function () {
2534                var value = $(this).attr("id");
2535                setlanguage(value);
2536            });
2537        }
2538
2539        function setlanguage(language) {
2540            clearCookies("selected-lang");
2541            setCookies("selected-lang", language, "720");
2542            location.reload();
2543        }
2544
2545        function currencyFormat(value) {
2546            localeCurrency("en-US", value, false); // last parameter "true/false" will be loaded from AppSettings in future
2547        }
2548
2549        
2550        // Get the modal
2551        var modal = document.getElementById('csModal');
2552
2553        // Get the button that opens the modal
2554        var btn = document.getElementById("csBtn");
2555
2556        // Get the button that opens the modal
2557        var span = document.getElementById("csClose");
2558
2559        // When the user clicks the button, open the modal 
2560        //btn.onclick = function () {
2561        //    modal.style.display = "block";
2562        //    refreshVCode('supportC', 'customer_spport');
2563        //}
2564
2565        // When the user clicks on <span> (x), close the modal
2566        //span.onclick = function () {
2567        //    modal.style.display = "none";
2568        //}
2569
2570        // When the user clicks anywhere outside of the modal, close it
2571        window.onclick = function (event) {
2572            if (event.target == modal) {
2573                modal.style.display = "none";
2574            }
2575        }
2576        
2577    </script>
2577
2578
2579    <!-- Start of LiveChat (www.livechatinc.com) code -->
2580    
2580<script>
2581        window.__lc = window.__lc || {};
2582        window.__lc.license = 8783541;
2583        ; (function (n, t, c) { function i(n) { return e._h ? e._h.apply(null, n) : e._q.push(n) } var e = { _q: [], _h: null, _v: "2.0", on: function () { i(["on", c.call(arguments)]) }, once: function () { i(["once", c.call(arguments)]) }, off: function () { i(["off", c.call(arguments)]) }, get: function () { if (!e._h) throw new Error("[LiveChatWidget] You can't use getters before load."); return i(["get", c.call(arguments)]) }, call: function () { i(["call", c.call(arguments)]) }, init: function () { var n = t.createElement("script"); n.async = !0, n.type = "text/javascript", n.src = "https://cdn.livechatinc.com/tracking.js", t.head.appendChild(n) } }; !n.__lc.asyncInit && e.init(), n.LiveChatWidget = n.LiveChatWidget || e }(window, document, [].slice))
2584    </script>
2584
2585    <noscript><a href="https://www.livechat.com/chat-with/8783541/" rel="nofollow">Chat with us</a>, powered by <a href="https://www.livechat.com/?welcome" rel="noopener nofollow" target="_blank">LiveChat</a></noscript>
2586    <!-- End of LiveChat code -->
2587
2588    
2589</body>
2590</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.