1/* 2 * (c) MaxSite CMS 3 * http://max-3000.com/ 4 * 5 * ÐоÑзина â наÑÑÑÐ°Ð¸Ð²Ð°ÐµÐ¼Ð°Ñ ÑаÑÑÑ 6 * Файл должен бÑÑÑ Ð·Ð°Ð³ÑÑжен поÑле cart.js 7 * 8 */ 9 10$(function(){ 11 12 // ÑелекÑоÑÑ/css-клаÑÑÑ Ð±Ð»Ð¾ÐºÐ¾Ð² вÑвода 13 var cartS = {}; 14 15 cartS['showItemsCount'] = '.cart-item-count'; // блок Ð´Ð»Ñ Ð²Ñвода колва одного ÑоваÑа 16 cartS['allCount'] = '.cart-all-count'; // блок Ð´Ð»Ñ Ð²Ñвода колво наименований вÑÐµÑ ÑоваÑов 17 cartS['tableItems'] = '.cart-table-items'; // блок, где вÑводиÑÑÑ ÑаблиÑа вÑÐµÑ ÑоваÑов 18 cartS['message'] = '.cart-message'; // блок, где вÑводÑÑÑÑ ÑообÑÐµÐ½Ð¸Ñ 19 20 21 // пÑоÑие наÑÑÑойки 22 var cartVar = {}; 23 24 // ÑоÑÐ¼Ð°Ñ Ð²Ñвода одного ÑоваÑа коÑÐ·Ð¸Ð½Ñ Ñ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑÑÑ ÑедакÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÐºÐ¾Ð»Ð²Ð° 25 // input.cart-item-count-change â input, где менÑеÑÑÑ ÐºÐ¾Ð»Ð²Ð¾ ÑоваÑа 26 // Ð´Ð»Ñ Ð¾Ñновного блока конÑейнеÑа обÑзаÑелÑно ÑказÑваÑÑ id="cart-item{key}" 27 cartVar['format'] = '<div class="flex pad5 {count0}" id="cart-item{key}">' 28 + '<div class="flex-grow5">{name}{desc}</div>' 29 + '<div class="w10"><input class="w100 cart-item-count-change" type="number" min="0" max="{maxcount}" value="{count}" data-id="{key}"></div>' 30 + '<div class="w10 t-right">{price}</div>' 31 + '<div class="w10 mar10-l pad5-rl bold t-right bg-gray100">{sum}</div>' 32 + '</div>'; 33 34 // Ñоже Ñамое, ÑолÑко без возможноÑÑи ÑедакÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ 35 cartVar['format_noedit'] = '<div class="flex pad5 {count0}" id="cart-item{key}">' 36 + '<div class="flex-grow5">{name}{desc}</div>' 37 + '<div class="w10">{count} ÑÑ.</div>' 38 + '<div class="w10 t-right">{price}</div>' 39 + '<div class="w10 mar10-l pad5-rl bold t-right bg-gray100">{sum}</div>' 40 + '</div>'; 41 42 // клаÑÑ Ð´Ð»Ñ input, где можно менÑÑÑ ÐºÐ¾Ð»Ð²Ð¾ ÑоваÑов. УказÑваеÑÑÑ Ð² format 43 cartVar['item_count_change'] = '.cart-item-count-change'; 44 45 // клаÑÑ ÐµÑли колво ÑоваÑа == 0 â в ÑоÑмаÑе {count0} заменÑеÑÑÑ Ð½Ð° ÑÑÐ¾Ñ ÑекÑÑ 46 cartVar['count0'] = 'bg-gray100 t-red'; 47 48 // до и поÑле Ð´Ð»Ñ Ð¾Ð¿Ð¸ÑÐ°Ð½Ð¸Ñ ÑоваÑа, еÑли еÑÑÑ 49 cartVar['desc_start'] = '<div class="t90 italic mar10-tb">'; 50 cartVar['desc_end'] = '</div>'; 51 52 53 // блок ÐТÐÐÐ ÑÑмма 54 cartVar['total_start'] = '<div class="bg-gray200 t-right mar10-t mar30-b pad5">ÐÑого: <b>'; 55 cartVar['total_end'] = '</b></div>'; 56 57 // вÑего ТоваÑов в коÑзине Ñм. cartS['showItemsCount'] 58 cartVar['showItemsCount_start'] = 'ТоваÑов в коÑзине: '; 59 cartVar['showItemsCount_end'] = ''; 60 61 // ÑообÑение об оÑиÑÑке коÑÐ·Ð¸Ð½Ñ 62 cartVar['clear'] = 'ÐоÑзина оÑиÑена'; 63 64 // ÑообÑение ÑÑо коÑзина пÑÑÑа 65 cartVar['cart_empty'] = 'ÐоÑзина пÑÑÑа'; 66 67 // колво каждого ÑоваÑа в ÑаблиÑе 68 cartVar['item_count_start'] = ' ('; 69 cartVar['item_count_end'] = ' ÑÑ.)'; 70 71 // знак валÑÑÑ â добавлÑеÑÑÑ Ð² конÑе {sum} 72 cartVar['currency'] = ' гÑн.'; 73 74 75 // иниÑиализаÑÐ¸Ñ ÐºÐ¾ÑÐ·Ð¸Ð½Ñ 76 mycart = new Cart('cart', cartVar, cartS); 77 // mycart.log(); 78 79 // пÑоÑÑавим внÑÑÑи .cart-item-count колво ÑоваÑов 80 mycart.showItemsCount(); 81 82 mycart.showAllCount(); // вÑего ÑоваÑов в коÑзине 83 84 // показаÑÑ ÑекÑÑÑÑ ÐºÐ¾ÑÐ·Ð¸Ð½Ñ Ð±ÐµÐ· ÑедакÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸ пÑÑÑÑÑ ÑоваÑов 85 mycart.showCartNoEmpty('.cart-table-items', '<h4>ÐаÑа коÑзина</h4>'); 86 87 // дейÑÑÐ²Ð¸Ñ Ð¿Ð¾ кнопкам 88 89 // кнопка показаÑÑ ÐºÐ¾ÑÐ·Ð¸Ð½Ñ 90 $(".cart-show").click(function() { 91 92 mycart.showCart(); 93 94 return false; 95 }); 96 97 // кнопка показаÑÑ ÐºÐ¾ÑÐ·Ð¸Ð½Ñ Ð±ÐµÐ· полей ÑедакÑиÑÐ¾Ð²Ð°Ð½Ð¸Ñ 98 $(".cart-show-noedit").click(function() { 99 100 mycart.showCartNoEdit(); 101 102 return false;
103 }); 104 105 // кнопка добавиÑÑ Ð² коÑÐ·Ð¸Ð½Ñ 106 $(".cart-add-item").click(function() { 107 108 var e = $(this); 109 110 if (mycart.addItem(e)) // еÑли бÑло добавление 111 { 112 mycart.showAllCount(); // вÑего ÑоваÑов в коÑзине 113 mycart.showCartNoEdit(); // обновлÑем ÑаблиÑÑ ÑоваÑов 114 mycart.showItemsCount(); // пÑоÑÑавим колво каждого ÑоваÑа 115 mycart.showMessage('«' + e.data('name') + '» в коÑÐ·Ð¸Ð½Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½!', 'bg-green100 pad10'); 116 } 117 118 return false; 119 }); 120 121 // кнопка оÑиÑÑиÑÑ ÐºÐ¾ÑÐ·Ð¸Ð½Ñ 122 $(".cart-clear").click(function() { 123 124 mycart.clearCart(); // оÑиÑÑка 125 mycart.showAllCount(); // вÑего ÑоваÑов в коÑзине 126 $(cartS['tableItems']).html(''); // блок коÑÐ·Ð¸Ð½Ñ ÑепеÑÑ Ð¿ÑÑÑой 127 mycart.showMessage(cartVar['clear'], 'bg-yellow pad10'); // ÑообÑение 128 mycart.showItemsCount(); // пÑоÑÑавим колво каждого ÑоваÑа 129 130 return false; 131 }); 132 133 // input-number где можно измениÑÑ ÐºÐ¾Ð»-во 134 $(cartS['tableItems']).on('change', cartVar['item_count_change'], function(e) { 135 136 var t = $(this); 137 var count = t.val(); 138 var itemId = t.data('id'); 139 140 mycart.changeCount(itemId, count); // изменÑÐµÑ ÐºÐ¾Ð»Ð²Ð¾ 141 mycart.showCart(); // обновлÑем ÑаблиÑÑ ÑоваÑов 142 143 // найдем заново input Ð´Ð»Ñ ÑокÑÑа, поÑколÑÐºÑ Ð¾Ð½ бÑл пеÑепиÑан html(html) 144 $("#cart-item"+itemId).find(cartVar['item_count_change']).focus(); 145 mycart.showItemsCount(); // пÑоÑÑавим колво каждого ÑоваÑа 146 147 return false; 148 }); 149 150 // кнопка оÑоÑмиÑÑ Ð·Ð°ÐºÐ°Ð· 151 $(".cart-show-order").click(function() { 152 153 // ÑоÑма Ð¸Ð¼ÐµÐµÑ ÑикÑиÑованнÑй id 154 $("#cart-form-order").show().removeClass('b-hide'); // показÑваем ÑоÑÐ¼Ñ 155 156 $('.cart-form-order-hidden').html(mycart.setHiddenForOrder()); // вÑе hidden ÑлеменÑÑ 157 158 // коÑзина без пÑÑÑÑÑ ÑоваÑов 159 mycart.showCartNoEmpty('.cart-form-order-table', '<h4>ÐÐ°Ñ Ð·Ð°ÐºÐ°Ð·</h4>'); 160 161 // console.log();; 162 163 return false; 164 }); 165 166 // оÑмена/ÑкÑÑÑие ÑоÑÐ¼Ñ Ð·Ð°ÐºÐ°Ð·Ð° 167 $(".cart-form-order-cancel").click(function() { 168 $("#cart-form-order").hide(); 169 return false; 170 }); 171 172 // ajax оÑпÑавка ÑоÑÐ¼Ñ Ð·Ð°ÐºÐ°Ð·Ð° 173 $('#cart-form-order').submit(function(){ 174 175 // console.log(); 176 // alert('ÐÑпÑавка ÑоÑмÑ'); 177 178 $.post( 179 window.cart_form_ajax, 180 $("#cart-form-order").serialize(), 181 function(msg) { 182 $('.cart-show-order').hide(); // кнопка ÐÑоÑмиÑÑ Ð·Ð°ÐºÐ°Ð· 183 $('#cart-form-order').slideUp('slow'); // ÑоÑма оÑпÑавки 184 $('#cart-form-order-result').html(msg); // ÑезÑлÑÑÐ°Ñ 185 186 // и оÑиÑÑиÑÑ ÐºÐ¾ÑÐ·Ð¸Ð½Ñ 187 mycart.clearCart(); // оÑиÑÑка 188 mycart.showAllCount(); // вÑего ÑоваÑов в коÑзине 189 $(cartS['tableItems']).html(''); // блок коÑÐ·Ð¸Ð½Ñ ÑепеÑÑ Ð¿ÑÑÑой 190 mycart.showItemsCount(); // пÑоÑÑавим колво каждого ÑоваÑа 191 } 192 ); 193 194 return false; 195 }); 196 197});
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.