1const ShowCustomInviteKey = "ShowCustomInvite"; 2const CreateGroupOrderKey = "CreateGroupOrder"; 3const JoinedSuccessfullyKey = "JoinedSuccessfully"; 4const GroupOrderSessionKey = "GroupOrderSession"; 5const CheckingOutOrderKey = "CheckingOutOrder"; 6 7$(document).ready(function (e) { 8 9 if (localStorage.getItem(CheckingOutOrderKey) != null) { 10 localStorage.removeItem(GroupOrderSessionKey); 11 12 let checkingOutOrderId = localStorage.getItem(CheckingOutOrderKey); 13 14 if (checkingOutOrderId != null && checkingOutOrderId.length > 0) { 15 CheckingOutGroupOrderPaymentSuccessful(checkingOutOrderId); 16 17 var progressBar = setInterval(() => { 18 CheckingOutGroupOrderPaymentSuccessful(checkingOutOrderId); 19 }, 60 * 1000 * 5); 20 } 21 } 22 else if (localStorage.getItem(GroupOrderSessionKey) != null && typeof orderUserStep != 'undefined' && orderUserStep != 2) { 23 sessionStorage.removeItem("isMobileTemplate"); 24 const groupOrderSession = localStorage.getItem(GroupOrderSessionKey); 25 if (groupOrderSession != null) { 26 const groupOrderSessionJson = JSON.parse(groupOrderSession); 27 if (groupOrderSessionJson != null && groupOrderSessionJson.groupOrderKey != null && groupOrderSessionJson.groupOrderKey.length > 0) { 28 console.log('CheckGroupOrderDeliveryExist'); 29 CheckGroupOrderDeliveryExist(groupOrderSessionJson); 30 } 31 else { 32 localStorage.removeItem(GroupOrderSessionKey); 33 if (typeof ChooseTemplateType === 'function') { 34 ChooseTemplateType(); 35 } 36 } 37 } 38 else { 39 localStorage.removeItem(GroupOrderSessionKey); 40 } 41 } 42 43 $('#btn-init-group-order').click(function () { 44 CreateGroupOrderDelivery(); 45 }); 46 47 $('#btn-join-group-order').click(function () { 48 JoinGroupOrderDelivery(); 49 }); 50 51 $('#btn-leave-group-order').click(function () { 52 let memberId = $('#youself-group-order-id').val(); 53 if (!!memberId) { 54 LeaveGroupOrderDelivery(memberId); 55 } 56 }); 57 58 $('#btn-cancel-join-group-order').click(function () { 59 LeaveGroupOrderDelivery(''); 60 }); 61 62 $('#btn-delete-group-order').click(function () { 63 DeleteGroupOrderDelivery(); 64 }); 65 66 $('#btn-copy-link-group-order').click(function () { 67 CopyLinkInviteGroupOrder(); 68 }); 69 70 $('#btn-homepage-mark-as-ready').click(function () { 71 MarkAsReadyGroupOrder(); 72 }); 73 74 $('#btn-remove-guest-from-group-order').click(function () { 75 let memberId = $(this).attr('data-member-id'); 76 RemoveGuestGroupOrderDelivery(memberId); 77 }); 78 79 $('#btn-remove-item-from-group-order').click(function () { 80 let itemId = $(this).attr('data-id'); 81 $('#containmycart').find(`#${itemId}`).trigger('click'); 82 83 $('#remove-item-from-group-order-modal').modal('hide'); 84 }); 85 86 $('#btn-pending-items-in-group-order').click(function () { 87 MarkAsReadyGroupOrder(() => ValidateCartToCheckOut(false, false, requireMemberCheckoutRequest)); 88 }); 89 90 $('#containmycart').on('click', '.btn-cart-mark-as-ready', function () { 91 MarkAsReadyGroupOrder(); 92 }); 93 94 $('#containmycart').on('click', '.remove-item-group-order', function () { 95 let itemId = $(this).attr('data-id'); 96 $('#btn-remove-item-from-group-order').attr('data-id', itemId); 97 98 let text = $('#remove-item-from-group-order-modal').find('#ThisItemBelongsToGuestText').val(); 99 let itemMemberName = $(this).attr('data-member-name'); 100 101 text = text.replace('{0}', itemMemberName); 102 103 $('#remove-item-from-group-order-modal .remove-item-guest-msg').text(text); 104 $('#remove-item-from-group-order-modal').modal('show'); 105 }); 106 107 $('#containmycart').on('click', '.btn-remove-guest', function () { 108 let memberId = $(this).attr('data-member-id'); 109 $('#btn-remove-guest-from-group-order').attr('data-member-id', memberId); 110 111 let memberName = $(this).attr('data-member-name'); 112 let removeGuestText = $('#remove-guest-from-group-order-text').val();
113 $('#remove-guest-from-group-order-modal').find('.modal-title').text(removeGuestText.replace('{0}', memberName)); 114 $('#remove-guest-from-group-order-modal').modal('show'); 115 }); 116 117 const btnCopyLinks = document.querySelectorAll("#group-order-invite-btn, #invite-more-group-order-btn"); 118 if (btnCopyLinks) { 119 btnCopyLinks.forEach(btnCopyLink => { 120 btnCopyLink.addEventListener("click", () => { 121 let osName = $('#copy-link-group-order-os-name').val(); 122 let groupOrderText = $('#copy-link-group-order-text').val(); 123 124 doShareGroupOrderLink(`[${osName}] ${groupOrderText}`, $('#copy-link-group-order-url').val()); 125 }); 126 }); 127 } 128 129 let msgCreateGroupOrder = localStorage.getItem(CreateGroupOrderKey); 130 131 if (msgCreateGroupOrder != null && msgCreateGroupOrder.length > 0) { 132 localStorage.removeItem(CreateGroupOrderKey); 133 134 $('#group-order-toast-msg').text(msgCreateGroupOrder); 135 $('#group-order-toast').css('display', 'flex'); 136 137 let showCustomInviteKey = localStorage.getItem(ShowCustomInviteKey); 138 if (showCustomInviteKey != null && showCustomInviteKey.length > 0) { 139 localStorage.removeItem(ShowCustomInviteKey); 140 141 generateQrCode(); 142 $('#share-link-group-order-modal').modal('show'); 143 } 144 145 setTimeout(function () { 146 $('#group-order-toast').removeAttr('style'); 147 }, 5000); 148 } 149 150 let msgJoinedSuccessfully = localStorage.getItem(JoinedSuccessfullyKey); 151 152 if (msgJoinedSuccessfully != null && msgJoinedSuccessfully.length > 0) { 153 localStorage.removeItem(JoinedSuccessfullyKey); 154 155 $('#group-order-toast-msg').text(msgJoinedSuccessfully); 156 $('#group-order-toast').css('display', 'flex'); 157 158 setTimeout(function () { 159 $('#group-order-toast').removeAttr('style'); 160 }, 5000); 161 } 162 163 $("#your-group-name-id").on("input", function () { 164 let lenGroupName = $(this).val().trim().length; 165 if (lenGroupName < 1 || lenGroupName > 50) { 166 $("#group-name-up-to").hide(); 167 $("#error-group-name").show(); 168 $("#btn-init-group-order").prop("disabled", true); 169 } 170 else { 171 $("#error-group-name").hide(); 172 $("#group-name-up-to").show(); 173 $("#btn-init-group-order").prop("disabled", false); 174 } 175 }); 176 177 $("#input-group-order-join").on("input", function () { 178 let lenGroupName = $(this).val().trim().length; 179 if (lenGroupName > 0 && lenGroupName < 31) { 180 $("#input-group-order-join-err").hide(); 181 } 182 }); 183 184 $(".btn-edit-group-name").click(function () { 185 $('.god-group-name-member-logged').css('display', 'none'); 186 $('.god-group-name-guest').css('display', 'flex'); 187 188 let inputGroupName = $("#your-group-name-id")[0]; 189 inputGroupName.focus(); 190 if (inputGroupName.setSelectionRange) { 191 let lenGroupName = inputGroupName.value.length; 192 inputGroupName.setSelectionRange(lenGroupName, lenGroupName); 193 } 194 }); 195 196 $('#checking-out-group-order-modal').on('hidden.bs.modal', function () { 197 location.reload(); 198 }); 199}); 200 201function CheckGroupOrderDeliveryExist(data) { 202 $.ajax({
203 type: "POST", 204 url: god_url.apiCheckGroupOrderExist, 205 data: data, 206 success: function (result) { 207 if (result.status == false) { 208 localStorage.removeItem(GroupOrderSessionKey); 209 if (typeof ChooseTemplateType === 'function') { 210 ChooseTemplateType(); 211 } 212 } 213 else { 214 if (result.orderId != null && result.orderId.length > 0) { 215 sessionStorage.removeItem("isMobileTemplate"); 216 localStorage.removeItem(CheckingOutOrderKey); 217 218 let loadingOrderHistory = new Loading({ 219 title: '', 220 titleFontSize: 18, 221 discription: 'Redirecting...' 222 }); 223 224 setTimeout(function () { 225 if (loadingOrderHistory && loadingOrderHistory.version) { 226 loadingOrderHistory.out(); 227 loadingOrderHistory = null; 228 } 229 }, 10000); 230 231 location.href = window.location.origin + `/OrderHistory/Index/${result.orderId}`; 232 } 233 else { 234 if (typeof ChooseTemplateType === 'function') { 235 const isMobileTemplate = sessionStorage.getItem("isMobileTemplate"); 236 237 if (isMobileTemplate == null || isMobileTemplate == undefined || isMobileTemplate.length == 0) { 238 ChooseTemplateType(); 239 } 240 } 241 else { 242 location.reload(); 243 } 244 } 245 } 246 }, 247 error: function (err) { 248 }, 249 beforeSend: function () { 250 251 }, 252 complete: function () { 253 254 } 255 }); 256} 257 258function CreateGroupOrderDelivery() { 259 let groupName = $('#your-group-name-id').val(); 260 console.log('groupName', groupName); 261 if (!!groupName) { 262 $.ajax({
263 type: "POST", 264 url: god_url.apiCreateGroupOrder, 265 data: { 266 groupName: groupName 267 }, 268 success: function (result) { 269 if (result.status) { 270 localStorage.setItem(CreateGroupOrderKey, result.message); 271 272 localStorage.setItem(GroupOrderSessionKey, JSON.stringify({ 273 groupOrderKey: '' 274 })); 275 276 doShareGroupOrderLink2(`[${result.onlineShopDisplayName}] ${result.text}`, result.url); 277 278 setTimeout(function () { 279 location.reload(); 280 }, 500); 281 } 282 }, 283 error: function (err) { 284 console.log(err); 285 }, 286 beforeSend: function () { 287 288 }, 289 complete: function () { 290 291 } 292 }); 293 } 294} 295 296function JoinGroupOrderDelivery() { 297 let memberName = $('#input-group-order-join').val(); 298 $.ajax({
299 type: "POST", 300 url: god_url.apiJoinGroupOrder, 301 data: { 302 memberName: memberName 303 }, 304 success: function (result) { 305 if (result.status) { 306 localStorage.setItem(JoinedSuccessfullyKey, result.message); 307 308 var groupOrderObject = { 309 groupOrderKey: result.groupOrderKey, 310 memberId: result.memberId 311 }; 312 console.log('groupOrderObject', groupOrderObject); 313 localStorage.setItem(GroupOrderSessionKey, JSON.stringify(groupOrderObject)); 314 315 location.reload(); 316 } 317 else if (result.message != null && result.message.length > 0) { 318 $("#input-group-order-join-err").text(result.message); 319 $("#input-group-order-join-err").show(); 320 } 321 }, 322 error: function (err) { 323 console.log(err); 324 }, 325 beforeSend: function () { 326 327 }, 328 complete: function () { 329 330 } 331 }); 332} 333 334function LeaveGroupOrderDelivery(memberId) { 335 $.ajax({
336 type: "POST", 337 url: god_url.apiLeaveGroupOrder, 338 data: { 339 memberId: memberId 340 }, 341 success: function (result) { 342 localStorage.removeItem(GroupOrderSessionKey); 343 344 if (result.status) { 345 location.reload(); 346 } 347 }, 348 error: function (err) { 349 console.log(err); 350 }, 351 beforeSend: function () { 352 353 }, 354 complete: function () { 355 localStorage.removeItem(GroupOrderSessionKey); 356 } 357 }); 358} 359 360function RemoveGuestGroupOrderDelivery(memberId) { 361 $.ajax({ 362 type: "POST", 363 url: god_url.apiRemoveGuestGroupOrder, 364 data: { 365 memberId: memberId 366 }, 367 success: function (result) { 368 if (result.status) { 369 LoadContainMyCart(false); 370 371 if (result.members && result.members.length > 0) { 372 $('#group-member-count').text(result.members.length); 373 } 374 375 $('#view-group-order-modal').find(`#group-member-${memberId}`).remove(); 376 377 $('#group-order-toast-msg').text(result.message); 378 $('#group-order-toast').css('display', 'flex'); 379 380 setTimeout(function () { 381 $('#group-order-toast').removeAttr('style'); 382 }, 5000); 383 384 $('#remove-guest-from-group-order-modal').modal('hide'); 385 } 386 }, 387 error: function (err) { 388 console.log(err); 389 }, 390 beforeSend: function () { 391 392 }, 393 complete: function () { 394 395 } 396 }); 397} 398 399function DeleteGroupOrderDelivery() { 400 $.ajax({
401 type: "POST", 402 url: god_url.apiDeleteGroupOrder, 403 data: {}, 404 success: function (result) { 405 localStorage.removeItem(GroupOrderSessionKey); 406 407 if (result.status) { 408 location.reload(); 409 } 410 }, 411 error: function (err) { 412 console.log(err); 413 }, 414 beforeSend: function () { 415 416 }, 417 complete: function () { 418 localStorage.removeItem(GroupOrderSessionKey); 419 } 420 }); 421} 422 423function MarkAsReadyGroupOrder(callback = null) { 424 $.ajax({ 425 type: "POST", 426 url: god_url.apiMarkAsReadyGroupOrder, 427 data: {}, 428 success: function (result) { 429 if (result.status) { 430 if (callback == null) { 431 $('#btn-homepage-mark-as-ready').css('display', 'flex'); 432 LoadContainMyCart(false); 433 } 434 else { 435 callback(); 436 } 437 } 438 }, 439 error: function (err) { 440 console.log(err); 441 }, 442 beforeSend: function () { 443 444 }, 445 complete: function () { 446 447 } 448 }); 449} 450 451function generateQrCode() { 452 //qrcode.clear(); 453 let qrData = $('#copy-link-group-order-url').val(); 454 document.getElementById("share-qrcode").innerHTML = ""; 455 456 var qrcode = new QRCode(document.getElementById("share-qrcode"), { 457 width: 180, 458 height: 180, 459 colorDark: "#000000", 460 colorLight: "#ffffff", 461 correctLevel: QRCode.CorrectLevel.H // High correction level 462 }); 463 464 qrcode.makeCode(qrData); 465} 466 467function CopyLinkInviteGroupOrder() { 468 if (navigator.clipboard?.writeText) { 469 const textUrl = $("#copy-link-group-order-url").val(); 470 navigator.clipboard.writeText(textUrl) 471 .then(() => { 472 $('#group-order-toast-msg').text('Copied â'); 473 $('#group-order-toast').css('display', 'flex'); 474 475 setTimeout(function () { 476 $('#group-order-toast').removeAttr('style'); 477 }, 1500); 478 }); 479 } 480 else { 481 const input = document.getElementById("copy-link-group-order-url"); 482 input.select(); 483 document.execCommand("copy"); 484 485 $('#group-order-toast-msg').text('Copied â'); 486 $('#group-order-toast').css('display', 'flex'); 487 488 setTimeout(function () { 489 $('#group-order-toast').removeAttr('style'); 490 }, 1500); 491 } 492} 493function CheckingOutGroupOrderPaymentSuccessful(orderId) { 494 495 if (typeof god_url == 'undefined') { 496 localStorage.removeItem(CheckingOutOrderKey); 497 498 return false; 499 } 500 501 $.ajax({
502 type: "POST", 503 url: god_url.apiCheckingOutGroupOrderPaymentSuccessful, 504 data: { orderId: orderId }, 505 cache: false, 506 success: function (result) { 507 if (result.status == true) { 508 if (result.orderId != null && result.orderId.length > 0) { 509 sessionStorage.removeItem("isMobileTemplate"); 510 localStorage.removeItem(CheckingOutOrderKey); 511 512 let loadingOrderHistory = new Loading({ 513 title: '', 514 titleFontSize: 18, 515 discription: 'Redirecting...' 516 }); 517 518 setTimeout(function () { 519 if (loadingOrderHistory && loadingOrderHistory.version) { 520 loadingOrderHistory.out(); 521 loadingOrderHistory = null; 522 } 523 }, 10000); 524 525 location.href = window.location.origin + `/OrderHistory/Index/${result.orderId}`; 526 } 527 } 528 }, 529 error: function () {}, 530 beforeSend: function () { }, 531 complete: function () { 532 } 533 }); 534} 535 536function isValidInputGroupName(value) { 537 return value.length >= 2 && value.length <= 50; 538} 539 540async function doShareGroupOrderLink(text, url) { 541 try { 542 if (navigator.share) { 543 const shareData = { 544 title: document.title, 545 text: text, 546 url: url, 547 }; 548 549 await navigator.share(shareData); 550 } 551 else { 552 generateQrCode(); 553 $('#share-link-group-order-modal').modal('show'); 554 } 555 } 556 catch (err) { 557 if (err.toString().includes('AbortError') || err.name == 'AbortError') { 558 } 559 else { 560 generateQrCode(); 561 $('#share-link-group-order-modal').modal('show'); 562 } 563 } 564} 565 566async function doShareGroupOrderLink2(text, url) { 567 try { 568 if (navigator.share) { 569 const shareData = { 570 title: document.title, 571 text: text, 572 url: url, 573 }; 574 575 await navigator.share(shareData); 576 localStorage.removeItem(ShowCustomInviteKey); 577 578 } 579 else { 580 localStorage.setItem(ShowCustomInviteKey, true); 581 } 582 } catch (err) { 583 localStorage.setItem(ShowCustomInviteKey, true); 584 } 585}
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.