PageSourceSearch

https://www.lzukt.lt/js/txCart.js

js lzukt.lt collected 2026-10-07 13:05:42 UTC 43,583 bytes, 1,287 lines download raw bytes

1var TxCart = {
2    containers: $('[data-cart-container]'),
3    infoContainer: $('[data-cart-info-container]'),
4    viewContainer: $('.cart-view-container'),
5    semaphore: true,
6
7    showInfoWindow: false,
8    multipleButtons: false,
9
10    run: function () {
11
12        this.partRun();
13
14        var parentObj = this;
15
16        this.infoContainer.each(function () {
17
18            var infoObject = {
19                Container: $(this),
20                lang: $(this).data('lang'),
21                parentObj: parentObj
22            };
23
24            parentObj.infoCartEvents(infoObject);
25
26        });
27
28
29        var lastObject = {};
30        this.viewContainer.each(function () {
31
32            var viewObject = {
33                Container: $(this),
34                lang: $(this).data('lang'),
35                parentObj: parentObj
36            };
37
38
39            parentObj.viewCartEvents(viewObject);
40
41            lastObject = viewObject;
42
43        });
44
45        this.initOtherFunctions(lastObject);
46
47    },
48    reRunButtons: function () {//daromas po ajaxo
49
50        this.containers = $('[data-cart-container]');
51        this.partRun();
52
53    },
54    partRun: function () {
55        if (this.containers.length > 1) {
56            this.multipleButtons = true;
57        }
58
59        var parentObj = this;
60        var cartObjects = [];
61
62        this.containers.each(function () {
63
64            var cartObject = {
65                Container: $(this),
66                product_id: $(this).data('product-id'),
67                lang: $(this).data('lang'),
68                attributes: $(this).find('[data-txAttrSelect]'),
69                parentObj: parentObj
70            };
71
72            parentObj.initCartEvents(cartObject);
73            cartObjects.push(cartObject);
74
75        });
76
77        if (this.multipleButtons) {
78            this.PrepAddToCart(cartObjects, 1);
79        }
80    },
81    initSelects: function (multiObject) {
82
83        if (typeof $().select2 === 'function') {
84
85
86            multiObject.Container.find('.attr-radio label').each(function () {
87
88                var text = $(this).text();
89                text = $.trim(text);
90
91                if (text.length == 7 && text.substr(0, 1) == '#') {
92
93                    $(this).addClass('has-color');
94
95                    $(this).html($('<span></span>').css({
96                        backgroundColor: text
97                    }).addClass('color-option').text(''));
98
99                }
100
101            });
102
103
104            multiObject.Container.find('select').each(function () {
105
106                var aa = {
107                    theme: $(this).parent().data('theme'),
108                    minimumResultsForSearch: Infinity,
109                    templateResult: function (value) {
110
111                        // console.log(value);
112
113                        value.text = $.trim(value.text);
114
115                        if (value.text.length == 7 && value.text.substr(0, 1) == '#') {
116
117
118                            return $('<span></span>').css({
119                                backgroundColor: value.text
120                            }).addClass('color-option').text('');
121
122                        } else {
123                            return $('<span></span>').text(value.text);
124                        }
125                    },
126                    templateSelection: function (value) {
127
128                        //console.log(value);
129
130                        value.text = $.trim(value.text);
131
132                        if (value.text.length == 7 && value.text.substr(0, 1) == '#') {
133
134
135                            return $('<span></span>').css({
136                                backgroundColor: value.text
137                            }).addClass('color-option').text('');
138
139                        } else {
140                            return $('<span></span>').text(value.text);
141                        }
142                    }
143                };
144                /*var value = $(this).find('option:first').attr('value');
145
146                if (value == '') {
147                    aa.placeholder = $(this).find('option:first').text();
148                    aa.allowClear = true;
149                }*/
150
151                $(this).select2(
152                    aa
153                );
154
155                //console.log( $(this).select2());
156
157            });
158
159
160        }
161
162    },
163    viewCartEvents: function (viewObject) {
164
165        /*viewObject.Container.on('change', function () {
166
167            viewObject.parentObj.changeView(viewObject);
168
169        });*/
170        viewObject.Container.on('change', '.new-quant input', function () {
171
172            viewObject.parentObj.changeView(viewObject);
173
174        });
175
176        viewObject.Container.on('click', '.remove-new-prod', function (e) {
177            e.preventDefault();
178
179            $(this).prev('input[name="remove-product"]').val(1);
180            viewObject.parentObj.changeView(viewObject);
181
182        });
183        viewObject.Container.on('click', '.set-left', function (e) {
184            e.preventDefault();
185
186            var left = $(this).data('left');
187
188            $(this).parents('.new-quant:first').find('input').val(left);
189            viewObject.parentObj.changeView(viewObject);
190
191        });
192        viewObject.Container.on('click', '.new-promo-button', function (e) {
193            e.preventDefault();
194            var code = $('.new-promo-input').val();
195            if (code !== '') {
196
197                viewObject.parentObj.changeView(viewObject);
198            } else {
199
200            }
201        });
202        viewObject.Container.on('click', '.dell-button-new', function (e) {
203            e.preventDefault();
204            $('.new-delivery_id').val($(this).find('input').val());
205
206            viewObject.parentObj.changeView(viewObject);
207
208        });
209        viewObject.Container.on('change', '.delivery-sublist-select-new', function (e) {
210            e.preventDefault();
211
212            $('.new-delivery_id').val(viewObject.Container.find('.delivery-select-new:checked').val());
213            $('.new-country_id').val(viewObject.Container.find('[name="country_list"]').val());
214            $('.new-sublist_id').val($(this).val());
215
216            viewObject.parentObj.changeView(viewObject);
217
218        });
219        viewObject.Container.on('change', '[name="country_list"]', function (e) {
220            e.preventDefault();
221
222            $('.new-delivery_id').val(viewObject.Container.find('.delivery-select-new:checked').val());
223            $('.new-country_id').val($(this).val());
224
225            viewObject.parentObj.changeView(viewObject);
226
227        });
228
229        viewObject.parentObj.changeView(viewObject);
230
231    },
232
233    changeView: function (viewObject) {
234
235        viewObject.parentObj.preloader('show');
236
237        var params = [];
238        viewObject.Container.find('.cart-content .cart-product-row').each(function () {
239
240            var element = {
241                product_id: $(this).data('product_id'),
242                union_id: $(this).data('union_id'),
243                quantity: $(this).find('[name="new-quantity"]').val(),
244                remove: $(this).find('[name="remove-product"]').val()
245            };
246
247            params.push(element);
248
249        });
250
251        var code = $('.new-promo-input').val();
252        var delivery_id = $('.new-delivery_id').val();
253        var sublist_id = $('.new-sublist_id').val();
254        var country_id = $('.new-country_id').val();
255        var payment_type_change = $('.payment_type_change').val();
256        //dellivery
257
258        $.post('/ajax.php', {
259            action: 'CartView',
260            module: 'TxCart',
261            lang: viewObject.lang,
262            params: params,
263            code: code,
264            delivery_id: delivery_id,
265            sublist_id: sublist_id,
266            country_id: country_id,
267            payment_type_change: payment_type_change,
268            t: viewObject.parentObj.getMyTime()
269        }, function (data) {
270
271
272            viewObject.Container.find('.message-place').empty();
273            viewObject.Container.find('.cart-content').empty();
274            viewObject.Container.find('.cart-form').hide();
275            viewObject.Container.find('.adm-sender').hide();
276
277            viewObject.Container.find('.cart-empty').hide();
278
279            if (data.status) {
280
281
282                viewObject.Container.find('.message-place').append(data.return.messages);
283                viewObject.Container.find('.cart-content').append(data.return.cart_tpl);
284
285                $('.end_sum_1').text(data.return.sum);
286
287
288                if (data.return.delivery_price_full.hide_address == 1) {
289                    $('.dell_address_info').hide();
290
291                    $('[name$="address_is_hidden"]').val(1);
292                } else {
293                    $('.dell_address_info').show();
294                    $('[name$="address_is_hidden"]').val(0);
295                }
296
297                if (data.return.delivery_price_full.allow_cod == 1) {
298                    $('[data-cod-delivery]').parents('div:first').show();
299                } else {
300                    $('[data-cod-delivery]').parents('div:first').hide();
301                    if ($('[data-cod-delivery]').is(':checked')) {
302
303                        $('[data-cod-delivery]').prop('checked', false).removeAttr('checked');
304
305                    }
306                    $('[data-cod-delivery2]').removeClass('its-visible');
307                }
308
309
310                //data.return.sum
311
312                if (typeof data.return.errors !== 'undefined' && data.return.errors.length > 0) {
313                    /*
314                     var allow_forword = true;
315                     $.each(data.return.errors, function (index, value) {
316
317                     });
318 */
319                    $('.form_submit_payment').addClass('disabled');
320
321                } else {
322                    $('.form_submit_payment').removeClass('disabled');
323
324                }
325
326                viewObject.Container.find('.cart-form').show();
327                viewObject.Container.find('.adm-sender').show();
328            } else {
329                viewObject.Container.find('.cart-empty').show();
330            }
331
332            viewObject.parentObj.initSelects(viewObject);
333            viewObject.Container.show();
334            viewObject.parentObj.preloader('hide');
335
336            if (!viewObject.parentObj.semaphore) {
337
338                viewObject.parentObj.infoContainer.each(function () {
339
340
341                    var infoObject = {
342                        Container: $(this),
343                        lang: $(this).data('lang'),
344                        parentObj: viewObject.parentObj
345                    };
346
347                    viewObject.parentObj.changeInfo(infoObject);
348
349
350                });
351            } else {
352                viewObject.parentObj.semaphore = false;
353            }
354
355        }, 'json');
356
357    },
358
359    infoCartEvents: function (infoObject) {
360
361        infoObject.Container.on('change', function () {
362
363            infoObject.parentObj.changeInfo(infoObject);
364
365        });
366
367
368        $('[data-cart-info-more-block]').on('click', '[data-remove-info-prod]', function (e) {
369
370            $(this).find('[name="remove-product"]').val(1);
371
372            e.preventDefault();
373
374            infoObject.parentObj.changeInfo(infoObject);
375
376        });
377
378
379        infoObject.parentObj.changeInfo(infoObject);
380    },
381
382    changeInfo: function (infoObject) {
383
384        var params = [];
385        $('[data-info-cart-popup2]').find('[data-info-cart-popup2-row]').each(function () {
386
387            var element = {
388                product_id: $(this).data('product_id'),
389                union_id: $(this).data('union_id'),
390                quantity: $(this).data('quant'),
391                remove: $(this).find('[name="remove-product"]').val()
392            };
393
394            params.push(element);
395
396        });
397
398        $.post('/ajax.php', {
399            action: 'CartInfo',
400            module: 'TxCart',
401            params: params,
402            lang: infoObject.lang,
403            t: infoObject.parentObj.getMyTime()
404        }, function (data) {
405
406
407            infoObject.parentObj.infoContainer.find('[data-cart-total-quant]').text(0);
408            infoObject.parentObj.infoContainer.find('[data-cart-total-price]').text(0);
409
410
411            var info_more_block = $('[data-cart-info-more-block]');
412            info_more_block.hide();
413            info_more_block.find('[data-info-cart-popup2]').remove();
414
415            if (data.status) {
416                var tmp = data.return.sum;
417                if (tmp < 10)
418                    tmp = "0" + tmp;
419
420
421                infoObject.parentObj.infoContainer.find('[data-cart-total-quant]').text(data.return.product_count);
422                infoObject.parentObj.infoContainer.find('[data-cart-total-price]').text(tmp);
423
424
425                if (infoObject.parentObj.showInfoWindow && typeof data.return.popup !== 'undefined') {
426
427                    $.fancybox.open(data.return.popup);
428
429                    infoObject.parentObj.showInfoWindow = false;
430
431                }
432
433                if (typeof data.return.popup2 !== 'undefined' && infoObject.parentObj.viewContainer.length === 0) {
434
435                    info_more_block.prepend(data.return.popup2);
436                    info_more_block.show();
437                }
438            }
439
440            infoObject.parentObj.initSelects(infoObject);
441
442
443        }, 'json');
444
445
446    },
447
448    initCartEvents: function (cartObject) {
449
450        if (cartObject.attributes.length > 0) {
451
452
453            cartObject.attributes.on('change', function () {
454
455                cartObject.parentObj.PrepAddToCart(cartObject, 0);
456
457            });
458
459        }
460
461        if (!this.multipleButtons) {
462            cartObject.parentObj.PrepAddToCart(cartObject, 0);
463        }
464
465        cartObject.Container.on('click', '[data-cart-button] a', function (e) {
466            e.preventDefault();
467
468            if (!$(this).hasClass('disabled')) {
469
470                var attributes_values = cartObject.parentObj.generateAttributes(cartObject);
471
472                var quant = 1;
473                var quantPut = cartObject.Container.find('[data-cart-quantity] input');
474                if (quantPut.length === 0) {
475                    quantPut = cartObject.Container.find('[data-cart-quantity] select');
476                }
477                if (quantPut.length > 0 && quantPut.val() > 0) {
478                    quant = parseFloat(quantPut.val());
479                }
480
481
482                $.post('/ajax.php', {
483                    action: 'AddToCart',
484                    module: 'TxCart',
485                    product_id: cartObject.product_id,
486                    quant: quant,
487                    lang: cartObject.lang,
488                    attributes: attributes_values,
489                    t: cartObject.parentObj.getMyTime()
490                }, function (data) {
491
492                    if (typeof super_product !== "undefined" && super_product > 0) {
493
494                        window.location.href = $('[data-to-orders]').attr('href')+'?super_product='+super_product;
495
496                    }  else {
497
498                        if (data.return.event_status == false) {
499
500
501                        } else {
502
503                            cartObject.parentObj.showInfoWindow = true;
504                            cartObject.parentObj.infoContainer.trigger('change');
505                        }
506
507                        cartObject.parentObj.PrepAddToCart(cartObject, 0);
508
509                    }
510                }, 'json');
511
512            }
513
514        });
515
516
517        cartObject.Container.show();
518
519
520    },
521
522    DoRadioAttributes: function (cartObject) {
523        if (cartObject.attributes.length > 0) {
524
525            $(cartObject.attributes).each(function () {
526
527                if ($(this).find('.attr-radio').length > 0) {
528
529                    var x = $(this);
530                    setTimeout(function () {
531
532                        x.find('.attr-radio').removeClass('preloaded');
533
534                    }, 300);
535
536                    //console.log(cartObject.attributes.find('.attr-radio input[type="radio"]:checked'));
537
538                    $(this).find('.attr-radio .selected').removeClass('selected');
539                    var id = $(this).find('.attr-radio input[type="radio"]:checked').attr('id');
540
541                    $(this).find('label[for="' + id + '"]').addClass('selected');
542
543                }
544
545
546            });
547
548        }
549    },
550    PrepAddToCart: function (cartObject, multiple) {
551
552        if (multiple) {
553            var ajax_objects = [];
554
555
556            $.each(cartObject, function (index, value) {
557
558
559                // tempContainer = valueX.Container;
560
561
562                var element = {};
563                element.attributes_values = value.parentObj.generateAttributes(value);
564                element.product_id = value.product_id;
565                element.lang = value.lang;
566                element.t = value.parentObj.getMyTime();
567
568
569                ajax_objects.push(element);
570
571
572            });
573            //console.log(ajax_objects);
574
575            $.post('/ajax.php', {
576                action: 'PrepAddToCartMultiple',
577                module: 'TxCart',
578                ajax_objects: ajax_objects
579            }, function (data) {
580
581                $.each(cartObject, function (indexX, valueX) {
582
583                    valueX.Container.find('.price-container, .alt-price-container, [data-cart-price] > .price, [data-cart-price] > .discount, [data-cart-price] > .user_discount').remove();
584                    valueX.Container.find('[data-cart-price]').addClass('price-hidden');
585
586
587                    valueX.Container.find('[data-out-of-stock-attr]').hide();
588                    valueX.Container.find('[data-has-part-stock-attr]').hide();
589                    valueX.Container.find('[data-has-full-stock-attr]').hide();
590
591                    if (data.status) {
592
593
594                        if (typeof data.return[valueX.product_id] !== "undefined") {
595
596
597                            if (data.return[valueX.product_id].price_div !== '') {
598
599
600                                valueX.Container.find('.missing-configuration').hide();
601
602                                valueX.Container.find('[data-cart-price]').append(data.return[valueX.product_id].price_div);
603
604
605                                if (data.return[valueX.product_id].quantity.status) {
606                                    valueX.Container.find('[data-cart-button] a').removeClass('disabled');
607                                } else {
608                                    valueX.Container.find('[data-cart-button] a').addClass('disabled');
609                                    valueX.Container.find('[data-out-of-stock-attr]').show();
610                                }
611
612                                if (data.return[valueX.product_id].quantity.status2) {
613                                    valueX.Container.find('[data-has-full-stock-attr]').show();
614                                } else {
615                                    valueX.Container.find('[data-has-part-stock-attr]').show();
616                                }
617
618                                valueX.Container.find('[data-cart-price]').removeClass('price-hidden');
619
620
621                                if (data.return[valueX.product_id].price_div.indexOf('hide-add-button') > -1) {
622                                    valueX.Container.find('[data-cart-button] a').addClass('disabled');
623                                }
624
625                            } else {
626
627                                if (data.return[valueX.product_id].ordered) {
628                                    valueX.Container.find('[data-cart-button]').hide();
629                                    valueX.Container.find('[data-ordered]').show();
630                                }
631
632                                //valueX.Container.find('[data-cart-button] a').addClass('disabled');
633                                //valueX.Container.find('.missing-configuration').show();
634
635                            }
636
637
638                            if (data.return[valueX.product_id].active_union !== '') {
639
640                                if (typeof plugins.swipers.product === 'object' && typeof plugins.swipers.product.gallery === 'object') {
641
642
643                                    var index = 0;
644
645                                    var pic = $('.product-carusel-container a[data-union-id="' + data.return[valueX.product_id].active_union + '"]');
646
647                                    if (pic.length > 0) {
648
649                                        index = pic.parents('.swiper-slide:first').index();
650
651
652                                    } else {
653
654                                        var union_parts = data.return[valueX.product_id].active_union.split('_');
655
656                                        $.each(union_parts, function (index_p, value_p) {
657
658
659                                            var pic = $('.product-carusel-container a[data-union-id^="' + value_p + '"]');
660
661                                            if (pic.length > 0) {
662
663                                                index = pic.parents('.swiper-slide:first').index();
664
665                                                return false;
666                                            }
667
668
669                                        });
670                                    }
671
672                                    plugins.swipers.product.slideTo(index);
673
674
675                                }
676
677
678                                if (valueX.Container.find('.attr-radio').length > 0) {
679
680                                    if (valueX.Container.find('[name="union_select"][value="' + data.return[valueX.product_id].active_union + '"]').length > 0) {
681
682                                        //valueX.Container.find('[name="union_select"]').prop('checked', false).removeAttr('checked');
683                                        //valueX.Container.find('[name="union_select"][value="' + data.return[valueX.product_id].active_union + '"]').prop('checked', true).removeAttr('checked', 'checked');
684
685
686                                    } else {
687
688                                        var attrs = data.return[valueX.product_id].active_union.split('_');
689
690                                        valueX.Container.find('[type="radio"]').prop('checked', false).removeAttr('checked');
691
692                                        $.each(attrs, function (index, value) {
693
694                                            valueX.Container.find('[type="radio"][value="' + value + '"]').prop('checked', true).removeAttr('checked', 'checked');
695
696
697                                        });
698
699                                        var first_attr = attrs[0];
700
701                                        if (data.return[valueX.product_id].all_unions !== '') {
702
703                                            valueX.Container.find('label').addClass('disabled');
704
705                                            $.each(data.return[valueX.product_id].all_unions, function (index2, value2) {
706
707                                                var tmpx = value2.split('_');
708
709                                                $.each(tmpx, function (index3, value3) {
710
711                                                    //console.log(value3);
712
713                                                    if (index3 > 0) {
714
715                                                        if (tmpx[0] === first_attr) {
716
717                                                            var id = valueX.Container.find('[type="radio"][value="' + value3 + '"]').attr('id');
718
719                                                            valueX.Container.find('label[for="' + id + '"]').removeClass('disabled');
720
721                                                        }
722
723                                                    } else {
724
725                                                        var id = valueX.Container.find('[type="radio"][value="' + value3 + '"]').attr('id');
726
727                                                        valueX.Container.find('label[for="' + id + '"]').removeClass('disabled');
728
729                                                    }
730                                                });
731
732                                            });
733
734                                        }
735
736                                    }
737
738
739                                }
740                                valueX.parentObj.DoRadioAttributes(valueX);
741
742                            }
743
744
745                        }
746
747
748                    } else {
749
750                        valueX.Container.find('[data-cart-button] a').addClass('disabled');
751                        valueX.Container.find('.missing-configuration').show();
752
753                    }
754
755
756                    valueX.parentObj.initSelects(valueX);
757
758                });
759
760            }, 'json');
761
762        } else {
763
764            var attributes_values = cartObject.parentObj.generateAttributes(cartObject);
765
766            /*
767                        if (typeof plugins.swipers.product === 'object' && typeof attributes_values.union_select !== 'undefined') {
768
769                            var pic = $('.product-carusel-container a[data-unionid="' + attributes_values.union_select + '"]');
770
771                            if (pic.length > 0) {
772
773                                var index = pic.parents('.swiper-slide:first').index();
774                                plugins.swipers.product.slideTo(index);
775
776                            }
777                        }*/
778
779            this.DoRadioAttributes(cartObject);
780            $.preloader('show');
781            $.post('/ajax.php', {
782                action: 'PrepAddToCart',
783                module: 'TxCart',
784                product_id: cartObject.product_id,
785                lang: cartObject.lang,
786                attributes: attributes_values,
787                t: cartObject.parentObj.getMyTime()
788            }, function (data) {
789
790                cartObject.Container.find('.price-container, .alt-price-container, [data-cart-price] > .price, [data-cart-price] > .discount, [data-cart-price] > .user_discount').remove();
791                cartObject.Container.find('[data-cart-price]').addClass('price-hidden');
792
793
794                cartObject.Container.find('[data-out-of-stock-attr]').hide();
795                cartObject.Container.find('[data-has-part-stock-attr]').hide();
796                cartObject.Container.find('[data-has-full-stock-attr]').hide();
797
798                cartObject.Container.find('[data-normal-stock-attr]').hide();
799
800                if (data.status) {
801
802                    if (data.return.price_div !== '') {
803
804                        cartObject.Container.find('.missing-configuration').hide();
805
806                        cartObject.Container.find('[data-cart-price]').append(data.return.price_div);
807
808
809                        if (data.return.quantity.status) {
810                            cartObject.Container.find('[data-cart-button] a').removeClass('disabled');
811                            cartObject.Container.find('[data-normal-stock-attr]').show();
812                        } else {
813                            cartObject.Container.find('[data-cart-button] a').addClass('disabled');
814                            cartObject.Container.find('[data-out-of-stock-attr]').show();
815                        }
816
817                        if (data.return.quantity.status2) {
818                            cartObject.Container.find('[data-has-full-stock-attr]').show();
819                        } else {
820                            cartObject.Container.find('[data-has-part-stock-attr]').show();
821                        }
822
823                        cartObject.Container.find('[data-cart-price]').removeClass('price-hidden');
824
825
826                        if (data.return.price_div.indexOf('hide-add-button') > -1) {
827                            cartObject.Container.find('[data-cart-button] a').addClass('disabled');
828                        }
829
830                    } else {
831
832                        if (data.return.ordered) {
833                            cartObject.Container.find('[data-cart-button]').hide();
834                            cartObject.Container.find('[data-ordered]').show();
835                        }
836                        // cartObject.Container.find('[data-cart-button] a').addClass('disabled');
837                        // cartObject.Container.find('.missing-configuration').show();
838
839                    }
840
841
842                    if (data.return.active_union !== '') {
843
844
845                        if (typeof plugins.swipers.product === 'object' && typeof plugins.swipers.product.gallery === 'object') {
846
847                            var index = 0;
848
849                            var pic = $('.product-carusel-container a[data-union-id="' + data.return.active_union + '"]');
850
851                            if (pic.length > 0) {
852
853                                index = pic.parents('.swiper-slide:first').index();
854
855
856                            } else {
857
858                                var union_parts = data.return.active_union.split('_');
859
860                                $.each(union_parts, function (index_p, value_p) {
861
862
863                                    var pic = $('.product-carusel-container a[data-union-id^="' + value_p + '"]');
864
865                                    if (pic.length > 0) {
866
867                                        index = pic.parents('.swiper-slide:first').index();
868
869                                        return false;
870                                    }
871
872
873                                });
874                            }
875
876                            plugins.swipers.product.slideTo(index);
877
878                        }
879
880
881                        if (cartObject.Container.find('.attr-radio').length > 0) {
882
883                            if (cartObject.Container.find('[name="union_select"][value="' + data.return.active_union + '"]').length > 0) {
884
885                                //cartObject.Container.find('[name="union_select"]').prop('checked', false).removeAttr('checked');
886                                //cartObject.Container.find('[name="union_select"][value="' + data.return.active_union + '"]').prop('checked', true).removeAttr('checked', 'checked');
887
888
889                            } else {
890
891                                var attrs = data.return.active_union.split('_');
892
893                                cartObject.Container.find('[type="radio"]').prop('checked', false).removeAttr('checked');
894
895                                $.each(attrs, function (index, value) {
896
897                                    cartObject.Container.find('[type="radio"][value="' + value + '"]').prop('checked', true).removeAttr('checked', 'checked');
898
899
900                                });
901
902                                var first_attr = attrs[0];
903
904                                if (data.return.all_unions !== '') {
905
906                                    cartObject.Container.find('label').addClass('disabled');
907
908                                    $.each(data.return.all_unions, function (index2, value2) {
909
910                                        var tmpx = value2.split('_');
911
912                                        $.each(tmpx, function (index3, value3) {
913
914                                            //console.log(value3);
915
916                                            if (index3 > 0) {
917
918                                                if (tmpx[0] === first_attr) {
919
920                                                    var id = cartObject.Container.find('[type="radio"][value="' + value3 + '"]').attr('id');
921
922                                                    cartObject.Container.find('label[for="' + id + '"]').removeClass('disabled');
923
924                                                }
925
926                                            } else {
927
928                                                var id = cartObject.Container.find('[type="radio"][value="' + value3 + '"]').attr('id');
929
930                                                cartObject.Container.find('label[for="' + id + '"]').removeClass('disabled');
931
932                                            }
933                                        });
934
935                                    });
936
937                                }
938
939                            }
940
941
942                        }
943                        cartObject.parentObj.DoRadioAttributes(cartObject);
944
945                    }
946
947
948                } else {
949
950                    cartObject.Container.find('[data-cart-button] a').addClass('disabled');
951
952                }
953                $.preloader('hide');
954                cartObject.parentObj.initSelects(cartObject);
955
956
957            }, 'json');
958
959        }
960
961    },
962
963    getMyTime: function () {
964        return new Date().getTime();
965    },
966
967    generateAttributes: function (cartObject) {
968
969        var attributes_values = {};
970
971        if (cartObject.attributes.length > 0) {
972
973            cartObject.attributes.find('input:checked').each(function () {
974
975                attributes_values[$(this).attr('name')] = $(this).val();
976
977            });
978
979            cartObject.attributes.find('select').each(function () {
980
981                if ($(this).val() !== '' && $(this).val() !== 0) {
982
983                    attributes_values[$(this).attr('name')] = $(this).val();
984                }
985
986            });
987
988        }
989
990        return attributes_values;
991
992    },
993    preloader: function (event) {
994        $.preloader(event)
995    },
996
997    initOtherFunctions: function (viewObject) {
998
999        var parentObj = this;
1000
1001        //formos selectas
1002        if (typeof $().select2 === 'function') {
1003
1004            $('.cart-form').find('select').each(function () {
1005
1006                $(this).attr('data-theme', $(this).parent().data('theme'));
1007                $(this).css('width', '100%');
1008                //$(this).select2('destroy');
1009                $(this).select2({
1010                    theme: $(this).parent().data('theme'),
1011                    minimumResultsForSearch: Infinity
1012                });
1013
1014            });
1015        }
1016        // cart.js liekanos
1017
1018        $('.bank-list label').click(function () {
1019            $('.bank-list label').removeClass('selected');
1020            $(this).addClass('selected');
1021        });
1022
1023        $(".payment_type input[type=radio]").change(function () {
1024            var $th = $(this);
1025
1026            if ($th.val() == 'cardinity') {
1027                $('#sub_action').val('cardinity');
1028                //$('form').attr({'action':'paypal.php?action=direct'});
1029                $('.carddets').show();
1030            } else if ($th.val() == 'paypal') {
1031                $('#sub_action').val('process');
1032                $('.carddets').hide();
1033
1034            } else {
1035                $('#sub_action').val($th.val());
1036                $('.carddets').hide();
1037            }
1038
1039            $('.payment-desc > div').removeClass('its-visible');
1040            $('.payment-desc > div[data-type="' + $th.val() + '"]').addClass('its-visible');
1041
1042
1043            $('.payment_type_change').val($th.val());
1044
1045            viewObject.parentObj.changeView(viewObject);
1046
1047        });
1048
1049        $('body').on('click', '.form_submit_payment', function (e) {
1050            e.preventDefault();
1051
1052            if (!$(this).hasClass('disabled')) {
1053
1054
1055                var is_error = false;
1056
1057                var the_form = $(this).parents('form:first');
1058
1059                the_form.find('input[type="text"], textarea, select').each(function () {
1060                    if ($(this).val() == $(this).parent('div').attr('title')) {
1061                        $(this).val('');
1062                    }
1063                });
1064
1065                var ser = the_form.serialize();
1066
1067
1068                $.post(validate_link + '?' + ser, {'sub_action': 'validate'}, function (data) {
1069
1070                    if (data.ok == true) {
1071
1072                        the_form.append($('<input/>').attr('type', 'hidden').attr('name', data.pref + 'validated').val(data.prefval));
1073
1074                        the_form.submit();
1075                    } else {
1076                        $.each(data.errors, function (index, value) {
1077
1078                            if (value !== null) {
1079
1080                                if ($('input[name="' + value.key + '"]').prop('type') == 'radio' || $('input[name="' + value.key + '"]').prop('type') == 'checkbox' || $('input[name="' + value.key + '"]').prop('type') == 'hidden') {
1081                                    $('input[name="' + value.key + '"], select[name="' + value.key + '"]').parents('div:first').addClass('error');
1082                                } else if (value.key === 'delivery_error') {
1083                                    $('.styled-select-new').addClass('error');
1084                                } else {
1085                                    $('input[name="' + value.key + '"], select[name="' + value.key + '"]').addClass('error');
1086
1087                                }
1088
1089                            }
1090                        });
1091                        the_form.find('input[type="text"], textarea').each(function () {
1092                            if ($(this).val() == '') {
1093                                $(this).val($(this).parent('div').attr('title'));
1094                            }
1095                        });
1096
1097                    }
1098                }, 'json');
1099
1100            }
1101
1102        });
1103
1104
1105        $('.form-block input[type="text"], .form-block textarea').focus(function () {
1106            //console.log('zzz');
1107            if ($(this).val() == $(this).parent('div').attr('title')) {
1108                $(this).val('');
1109            }
1110        });
1111
1112        $('.form-block input[type="text"], .form-block textarea').focusout(function () {
1113            if ($(this).val() == '') {
1114                $(this).val($(this).parent('div').attr('title'));
1115            }
1116        });
1117
1118        if (typeof bing_key !== 'undefined' && bing_key !== '') {
1119
1120            var body = $('body');
1121            body.on('change', '[name$="uzk_adresas"], [name$="uzk_miestas"]', function (e) {
1122
1123                var city = $('[name$="uzk_miestas"]').val();
1124                var address = $('[name$="uzk_adresas"]').val();
1125                var zip = $('[name$="uzk_zip"]');
1126                var postCode = zip.val();
1127
1128                if (city != '' && address != '' && (postCode == '' || postCode == zip.parent().attr('title'))) {
1129                    var address_link = address + ',%' + city + ',%Lietuva';
1130
1131
1132                    zip.parent().css({
1133                        'position': 'relative'
1134                    });
1135                    zip.after($('<div></div>').addClass('css-mini-loader-cart'));
1136
1137                    $.get(
1138                        'https://dev.virtualearth.net/REST/v1/Locations?q=' + address_link + '&key=' + bing_key,
1139                        {},
1140                        function (data) {
1141
1142                            if (data.statusCode == 200 && typeof data.resourceSets[0]) {
1143
1144                                $('[name$="uzk_zip"]').val(data.resourceSets[0].resources[0].address.postalCode);
1145
1146                            }
1147
1148                            zip.next('.css-mini-loader-cart').remove();
1149                        },
1150                        'json'
1151                    );
1152                }
1153
1154            });
1155
1156        }
1157
1158        //is eshop.js
1159
1160        $('#perka_imone').click(function () {
1161            if ($(this).is(':checked')) {
1162
1163                $('#fizinis_su_saskaita').removeAttr('checked').prop('checked', false);
1164                $('.fiz-fields').addClass('comp-hid');
1165
1166                $('.company-fields').removeClass('comp-hid');
1167            } else {
1168                $('.company-fields').addClass('comp-hid');
1169            }
1170
1171        });
1172        $('#fizinis_su_saskaita').click(function () {
1173            if ($(this).is(':checked')) {
1174                $('#perka_imone').removeAttr('checked').prop('checked', false);
1175                $('.company-fields').addClass('comp-hid');
1176
1177                $('.fiz-fields').removeClass('comp-hid');
1178            } else {
1179                $('.fiz-fields').addClass('comp-hid');
1180            }
1181
1182        });
1183
1184        $('.open_lower').click(function (e) {
1185            e.preventDefault();
1186
1187            $('.request_block').show();
1188        });
1189
1190        $('#produktu_uzklausa').on('focus', 'input, select, textarea', function () {
1191            $(this).removeClass('error');
1192            $(this).parents().removeClass('error');
1193        });
1194
1195
1196        $('.fancyCart').fancybox({
1197            helpers: {
1198                media: {},
1199                overlay: {
1200                    locked: false
1201                }
1202            },
1203            touch: false
1204        });
1205
1206        $('.send-cart-event').on('click', function (e) {
1207            e.preventDefault();
1208
1209            $('.send-message').hide();
1210            $('.send-url').hide();
1211
1212            if ($('textarea[name="user_emails"]').val() !== '') {
1213
1214                parentObj.preloader('show');
1215                $('#send-cart-block').css('visibility', 'hidden');
1216                var lang = $('[data-lang]:first').data('lang');
1217
1218                $.post('/ajax.php', {
1219                    action: 'SendAdminCarts',
1220                    module: 'TxCart',
1221                    emails: $('textarea[name="user_emails"]').val(),
1222                    lang: lang,
1223                    t: parentObj.getMyTime()
1224                }, function (data) {
1225
1226                    //
1227                    $('.send-url').append(data.return);
1228
1229                    $('textarea[name="user_emails"]').val('');
1230                    $('.send-message').show();
1231                    $('.send-url').show();
1232
1233                    $('#send-cart-block').css('visibility', 'visible');
1234                    parentObj.preloader('hide');
1235
1236
1237                }, 'json');
1238            }
1239
1240        });
1241
1242        //
1243        $('.get-cart-link-event').on('click', function (e) {
1244            e.preventDefault();
1245
1246            $('.send-message').hide();
1247            $('.send-url').hide();
1248
1249            parentObj.preloader('show');
1250            $('#send-cart-block').css('visibility', 'hidden');
1251            var lang = $('[data-lang]:first').data('lang');
1252
1253            $.post('/ajax.php', {
1254                action: 'GetAdminCartUrl',
1255                module: 'TxCart',
1256                lang: lang,
1257                t: parentObj.getMyTime()
1258            }, function (data) {
1259
1260                $('.send-url').append(data.return);
1261                $('.send-url').show();
1262
1263                $('#send-cart-block').css('visibility', 'visible');
1264                parentObj.preloader('hide');
1265
1266
1267            }, 'json');
1268
1269
1270        });
1271
1272
1273        if ($('form#apmoketi').length > 0) {
1274            $.preloader('show');
1275            $('#apmoketi').submit();
1276        }
1277
1278        if ($('form[name="paypal_form"]').length > 0) {
1279            $('[name="paypal_form"]').submit();
1280        }
1281
1282    }
1283
1284
1285};
1286
1287TxCart.run();

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.