scripts_js_file.go 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. package template
  2. var VarScriptsJsFile = []byte(`(function(window, $) {
  3. var frontend = function(window, $) {
  4. var ShopProductsLightGalleryLastImage = '';
  5. // Private
  6. function ShopProductsInitLightGallery() {
  7. $('#product_thumbnails').lightGallery({
  8. pager: false,
  9. showThumbByDefault: false,
  10. toogleThumb: false,
  11. controls: false,
  12. download: false
  13. });
  14. $('#product_image img').css('cursor', 'pointer').click(function() {
  15. $($('#product_thumbnails a.thumbnail').get($(this).data('index'))).click();
  16. });
  17. $('#product_thumbnails a.thumbnail').each(function() {
  18. $(this).mouseover(function() {
  19. if($(this).data('hover') != ShopProductsLightGalleryLastImage) {
  20. ShopProductsLightGalleryLastImage = $(this).data('hover');
  21. $('#product_image img').attr('src', $(this).data('hover'));
  22. $('#product_image img').data('index', $(this).data('index'));
  23. }
  24. });
  25. });
  26. };
  27. function ShopSetBasketNavBtnProductsCount(value) {
  28. $('#basket-nav-btn .badge').html(value);
  29. };
  30. function Initialize() {
  31. // Check if jQuery was loaded
  32. if(typeof $ == 'function') {
  33. ShopProductsInitLightGallery();
  34. } else {
  35. console.log('Error: jQuery is not loaded!');
  36. }
  37. };
  38. // Initialize
  39. if(window.addEventListener) {
  40. // W3C standard
  41. window.addEventListener('load', Initialize, false);
  42. } else if(window.attachEvent) {
  43. // Microsoft
  44. window.attachEvent('onload', Initialize);
  45. };
  46. // Public
  47. return {
  48. ShopBasketOpen: function(object) {
  49. if(!$(object).hasClass('click-blocked')) {
  50. $(object).addClass('click-blocked');
  51. // ShopSetBasketNavBtnProductsCount(0);
  52. console.log('ShopOpenBasket', object);
  53. $(object).removeClass('click-blocked');
  54. }
  55. return false;
  56. },
  57. ShopBasketProductPlus: function(object, product_id) {
  58. if(!$(object).hasClass('click-blocked')) {
  59. $(object).addClass('click-blocked');
  60. $.ajax({
  61. type: "GET",
  62. url: '/shop/basket/plus/' + product_id + '/'
  63. }).done(function(data) {
  64. console.log('AJAX', data, product_id);
  65. }).fail(function(xhr, status, error) {
  66. console.log('AJAX', xhr.responseText, product_id);
  67. }).always(function() {
  68. $(object).removeClass('click-blocked');
  69. });
  70. }
  71. return false;
  72. },
  73. ShopBasketProductMinus: function(object, product_id) {
  74. if(!$(object).hasClass('click-blocked')) {
  75. $(object).addClass('click-blocked');
  76. $.ajax({
  77. type: "GET",
  78. url: '/shop/basket/minus/' + product_id + '/'
  79. }).done(function(data) {
  80. console.log('AJAX', data, product_id);
  81. }).fail(function(xhr, status, error) {
  82. console.log('AJAX', xhr.responseText, product_id);
  83. }).always(function() {
  84. $(object).removeClass('click-blocked');
  85. });
  86. }
  87. return false;
  88. },
  89. };
  90. }(window, $);
  91. window.frontend = frontend;
  92. }(window, jQuery));`)