PageSourceSearch

https://www.manaycpa.com/wp-content/plugins/eyalet-vergi-sistemi/assets/frontend.js?ver=1790341621

js manaycpa.com collected 2026-09-28 08:10:26 UTC 4,286 bytes, 103 lines download raw bytes

1document.addEventListener('DOMContentLoaded', function () {
2    // Her shortcode instance'ını bağımsız olarak başlat
3    var containers = document.querySelectorAll('.tax-system-container[data-evs-id]');
4
5    containers.forEach(function (container) {
6        var uid = container.getAttribute('data-evs-id');
7        var config = (window.evsInstances || {})[uid];
8        if (!config) return;
9
10        var state1Sel = container.querySelector('.evs-state1-selector');
11        var state2Sel = container.querySelector('.evs-state2-selector');
12        var typesList = container.querySelector('.tax-types-list');
13        var value1List = container.querySelector('.tax-value1-list');
14        var value2List = container.querySelector('.tax-value2-list');
15        var mobileContainer = container.querySelector('.tax-results-mobile');
16
17        if (!state1Sel || !state2Sel) return;
18
19        var labels = config.labels || [];
20        var states = config.states || {};
21        var allStates = config.allStates || [];
22
23        function emptyRows(count) {
24            return Array.from({ length: count || 4 }, function () { return '<li>&nbsp;</li>'; }).join('');
25        }
26
27        function syncUI() {
28            var s1 = state1Sel.value;
29            var s2 = state2Sel.value;
30
31            if (s1 && s2) {
32                var vals1 = states[s1] || [];
33                var vals2 = states[s2] || [];
34
35                if (typesList) {
36                    typesList.innerHTML = labels.map(function (l) { return '<li>' + l + '</li>'; }).join('');
37                }
38                if (value1List) {
39                    value1List.innerHTML = labels.map(function (_, i) { return '<li>' + (vals1[i] || '') + '</li>'; }).join('');
40                }
41                if (value2List) {
42                    value2List.innerHTML = labels.map(function (_, i) { return '<li>' + (vals2[i] || '') + '</li>'; }).join('');
43                }
44                if (mobileContainer) {
45                    mobileContainer.innerHTML = labels.map(function (label, i) {
46                        return '<div class="tax-mobile-row">' +
47                            '<div class="tax-mobile-type">' + label + '</div>' +
48                            '<div class="tax-mobile-values">' +
49                            '<div class="tax-mobile-value">' + (vals1[i] || '') + '</div>' +
50                            '<div class="tax-mobile-value">' + (vals2[i] || '') + '</div>' +
51                            '</div></div>';
52                    }).join('');
53                }
54            } else {
55                if (typesList) typesList.innerHTML = emptyRows(4);
56                if (value1List) value1List.innerHTML = emptyRows(4);
57                if (value2List) value2List.innerHTML = emptyRows(4);
58                if (mobileContainer) mobileContainer.innerHTML = '';
59            }
60        }
61
62        function filterDropdown(targetSel, excludeValue) {
63            var currentVal = targetSel.value;
64            var defaultText = 'Choose State';
65            var firstOpt = targetSel.querySelector('option[value=""]');
66            if (firstOpt) defaultText = firstOpt.textContent;
67
68            targetSel.innerHTML = '';
69            var defOpt = document.createElement('option');
70            defOpt.value = '';
71            defOpt.textContent = defaultText;
72            targetSel.appendChild(defOpt);
73
74            allStates.forEach(function (s) {
75                if (s !== excludeValue) {
76                    var o = document.createElement('option');
77                    o.value = s;
78                    o.textContent = s;
79                    if (s === currentVal) o.selected = true;
80                    targetSel.appendChild(o);
81                }
82            });
83
84            if (currentVal === excludeValue) {
85                targetSel.value = '';
86            }
87        }
88
89        state1Sel.addEventListener('change', function () {
90            filterDropdown(state2Sel, this.value);
91            syncUI();
92        });
93
94        state2Sel.addEventListener('change', function () {
95            filterDropdown(state1Sel, this.value);
96            syncUI();
97        });
98
99        if (state1Sel.value) filterDropdown(state2Sel, state1Sel.value);
100        if (state2Sel.value) filterDropdown(state1Sel, state2Sel.value);
101        syncUI();
102    });
103});

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.