Advertisement
Guest User

Untitled

a guest
Nov 19th, 2019
259
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 3.92 KB | None | 0 0
  1. @using Nop.Plugin.Shipping.ParcelLockers.Defaults
  2.  
  3. <script async src="https://geowidget.easypack24.net/js/sdk-for-javascript.js"></script>
  4. <link rel="stylesheet" type="text/css" href="https://geowidget.easypack24.net/css/easypack.css">
  5.  
  6.  
  7. <script type="text/javascript">
  8.     window.easyPackAsyncInit = function () {
  9.         easyPack.init({});
  10.  
  11.         window.EASYPACK_INITIALIZED = true;
  12.     };
  13.  
  14. </script>
  15.  
  16. <script type="text/javascript">
  17.     function isInPostSelected() {
  18.         var selectedShippingOption = $(".method-list li").find('input[name="shippingoption"]:checked');
  19.        
  20.         return selectedShippingOption.val() === '@T("Plugins.Shipping.ParcelLocker.ShippingOptionNormalName")___@ParcelLockersDefaults.InPost_System_Name';
  21.     }
  22.  
  23.     $(document).ready(function () {
  24.         var div = $('#co-shipping-method-form');
  25.         div.append("<div class='inpost-map-wrapper'> <a id ='popup-btn'> </a> </div>");
  26.  
  27.         $('.button-1.new-address-next-step-button').click(function () {
  28.  
  29.             //the content is loaded dynamically,
  30.             //thus we need to check for it until its loaded
  31.             //and when events are attached, stop the interval
  32.             var tempInverval = setInterval(function () {
  33.                 var shippingOpion = $(".method-list li");
  34.  
  35.                 // hide next button when inpost
  36.                 if (isInPostSelected()) {
  37.                     $('.button-1.shipping-method-next-step-button').hide();
  38.                 };
  39.  
  40.                 $(shippingOpion).click(function () {
  41.                     //Open map if the name value on radio button matches the plugin name            
  42.                     isInPostSelected() ? $("#popup-btn").click() : $('.button-1.shipping-method-next-step-button').show();
  43.                  });
  44.  
  45.                 if (shippingOpion.length > 0) {
  46.                     clearInterval(tempInverval);
  47.                 }
  48.             }, 400);
  49.         });
  50.  
  51.         //map
  52.         $("#popup-btn").click(function () {
  53.  
  54.             if (window.EASYPACK_INITIALIZED) {
  55.  
  56.                 easyPack.modalMap(function (point, modal) {
  57.  
  58.                     var option = $('input[type="radio"]:checked').val();
  59.                     point.ShippingOption = option;
  60.  
  61.                     $.ajax({
  62.                         url: "@Url.Content("~/InPostMap/SetShippingAddress")",
  63.                         type: "post",
  64.                         data: point,
  65.                         success: function (response) {
  66.  
  67.                             $('.inpost-toggle').hide();
  68.  
  69.                             var shippingOptionValue = 'input[value = ' + '"' + response.ShippingOption + '"]';
  70.                             var shippingOption = $(shippingOptionValue).parent();
  71.  
  72.                             shippingOption.append("<div class='inpost-toggle'>" + response.Name + "</div>");
  73.  
  74.                             if (response.Address.Line1 != null) {
  75.                                 shippingOption.append("<div class='inpost-toggle'>" + response.Address.Line1 + "</div>");
  76.                             }
  77.  
  78.                             if (response.Address.Line2 != null) {
  79.                                 shippingOption.append("<div class='inpost-toggle'>" + response.Address.Line2 + "</div>");
  80.                             }
  81.  
  82.                             if (response.Location_Description != null) {
  83.                                 shippingOption.append("<div class='inpost-toggle'>" + response.Location_Description + "</div>");
  84.                             }
  85.  
  86.                             $('.button-1.shipping-method-next-step-button').show();
  87.                             modal.closeModal();
  88.                         },
  89.                         error: function (jqXHR, textStatus, errorThrown) {
  90.                             console.log(textStatus, errorThrown);
  91.                         }
  92.                     });
  93.                 }, { width: 700, height: 700 });
  94.             }
  95.         });
  96.     });
  97. </script>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement