PageSourceSearch

https://admin-dashboard-od19.onrender.com/assets/js/custom/modals/upgrade-plan.js

js admin-dashboard-od19.onrender.com collected 2026-10-03 11:39:02 UTC 1,694 bytes, 65 lines download raw bytes

1"use strict";
2
3// Class definition
4var KTModalUpgradePlan = function () {
5    // Private variables
6    var modal;
7	var planPeriodMonthButton;
8	var planPeriodAnnualButton;
9
10	var changePlanPrices = function(type) {
11		var items = [].slice.call(modal.querySelectorAll('[data-kt-plan-price-month]'));
12
13		items.map(function (item) {
14			var monthPrice = item.getAttribute('data-kt-plan-price-month');
15			var annualPrice = item.getAttribute('data-kt-plan-price-annual');
16
17			if ( type === 'month' ) {
18				item.innerHTML = monthPrice;
19			} else if ( type === 'annual' ) {
20				item.innerHTML = annualPrice;
21			}
22		});
23	}
24
25    var handlePlanPeriodSelection = function() {
26        // Handle period change
27        planPeriodMonthButton.addEventListener('click', function (e) {
28            changePlanPrices('month');
29        });
30
31		planPeriodAnnualButton.addEventListener('click', function (e) {
32            changePlanPrices('annual');
33        });
34    }
35
36    var handleTabs = function() {
37        KTUtil.on(modal, '[data-bs-toggle="tab"]', 'click', function(e) {
38            this.querySelector('[type="radio"]').checked = true;
39        });
40    }
41
42    // Public methods
43    return {
44        init: function () {
45            // Elements
46            modal = document.querySelector('#kt_modal_upgrade_plan');
47
48            if (!modal) {
49				return;
50			}
51
52			planPeriodMonthButton = modal.querySelector('[data-kt-plan="month"]');
53			planPeriodAnnualButton = modal.querySelector('[data-kt-plan="annual"]');
54
55            // Handlers
56            handlePlanPeriodSelection();
57            handleTabs();
58        }
59    }
60}();
61
62// On document ready
63KTUtil.onDOMContentLoaded(function() {
64    KTModalUpgradePlan.init();
65});

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.