PluginProbe ʕ •ᴥ•ʔ
Download Manager / 3.3.63
Download Manager v3.3.63
3.3.63 3.3.62 3.3.61 3.3.60 3.3.59 3.3.58 3.3.57 3.3.56 trunk 2.1.3 2.3.0 2.5.96 2.5.97 2.6.2 2.6.96 2.8.3 2.9.99 3.0.4 3.1.05 3.1.07 3.1.08 3.1.11 3.1.12 3.1.14 3.1.17 3.1.18 3.1.22 3.1.23 3.1.24 3.1.25 3.1.26 3.1.27 3.1.28 3.2.04 3.2.13 3.2.14 3.2.16 3.2.18 3.2.19 3.2.21 3.2.22 3.2.23 3.2.24 3.2.25 3.2.27 3.2.28 3.2.29 3.2.30 3.2.31 3.2.32 3.2.33 3.2.34 3.2.35 3.2.37 3.2.38 3.2.39 3.2.40 3.2.41 3.2.42 3.2.43 3.2.44 3.2.45 3.2.46 3.2.47 3.2.48 3.2.49 3.2.50 3.2.51 3.2.52 3.2.53 3.2.54 3.2.55 3.2.56 3.2.57 3.2.58 3.2.59 3.2.60 3.2.61 3.2.63 3.2.64 3.2.65 3.2.66 3.2.67 3.2.68 3.2.69 3.2.70 3.2.71 3.2.72 3.2.73 3.2.74 3.2.75 3.2.76 3.2.77 3.2.78 3.2.79 3.2.80 3.2.81 3.2.82 3.2.83 3.2.84 3.2.85 3.2.86 3.2.87 3.2.88 3.2.89 3.2.90 3.2.91 3.2.92 3.2.93 3.2.94 3.2.95 3.2.96 3.2.97 3.2.98 3.2.99 3.3.00 3.3.01 3.3.02 3.3.03 3.3.04 3.3.05 3.3.06 3.3.07 3.3.08 3.3.09 3.3.10 3.3.11 3.3.12 3.3.13 3.3.14 3.3.15 3.3.16 3.3.17 3.3.18 3.3.19 3.3.20 3.3.21 3.3.22 3.3.23 3.3.24 3.3.25 3.3.26 3.3.27 3.3.28 3.3.29 3.3.30 3.3.31 3.3.32 3.3.33 3.3.34 3.3.35 3.3.36 3.3.37 3.3.38 3.3.39 3.3.40 3.3.41 3.3.42 3.3.43 3.3.44 3.3.45 3.3.46 3.3.47 3.3.48 3.3.49 3.3.50 3.3.51 3.3.52 3.3.53 3.3.54 3.3.55
download-manager / assets / js / overwatch.js
download-manager / assets / js Last commit date
ads 8 months ago control 8 months ago img 10 years ago blocker.js 1 week ago blocker.min.js 1 week ago embed.js 5 years ago embed.min.js 7 months ago front.js 1 day ago front.min.js 1 day ago jquery-ui-timepicker-addon.js 10 years ago jquery-ui-timepicker-addon.min.js 7 months ago jquery.dataTables.min.js 1 year ago jquery.validate.js 7 months ago jquery.validate.min.js 1 week ago jqueryFileTree.js 5 years ago jqueryFileTree.min.js 7 months ago overwatch.js 7 months ago overwatch.min.js 7 months ago password-strength.js 2 years ago password-strength.min.js 7 months ago simple-scrollbar.js 7 months ago simple-scrollbar.min.js 7 months ago simplebar.js 6 years ago validator.min.js 9 years ago vue.js 9 months ago vue.min.js 9 months ago wpdm-admin.js 1 week ago wpdm-admin.min.js 1 week ago wpdm.js 6 months ago wpdm.min.js 6 months ago
overwatch.js
119 lines
1 /*
2 Ⓒ copyright: Shahnur Alam ( https://github.com/codename065/ )
3 Version: 1.0.0
4 */
5 const OverWatch = (ID) => {
6 const area = document.getElementById(ID);
7 const buffer_html = area.innerHTML.replaceAll(/{(.+)}/ig, "<data name='$1'>{$1}</data>");
8 area.innerHTML = buffer_html;
9 let _loops = [];
10 let _attrs = [];
11 let looped_sections = document.querySelectorAll(`#${ID} loop`);
12 let attrs = document.querySelectorAll(`#${ID} [o-attr]`);
13
14 for (const [key, elm] of Object.entries(attrs)) {
15 let _attr = elm.getAttribute("o-attr");
16 let _var = elm.getAttribute('w-val');
17 if(!_attrs[_var]) _attrs[_var] = []
18 _attrs[_var].push({_attr: _attr, _var: _var, _elm: elm});
19 }
20 for (const [key, loop] of Object.entries(looped_sections)) {
21 let _for = loop.getAttribute(":for");
22 let _each = loop.getAttribute(":each");
23 _loops[_for] = {_for: _for, _each: _each, _repeat: loop.innerHTML, _loop: loop};
24 loop.innerHTML = '';
25 }
26 //console.log('_loops', _loops);
27
28 let parent = [];
29 //let data_source = {};
30 let flat_data = [];
31 let key = '';
32
33 const handler = {
34
35 set(target, prop, value) {
36 //console.log('Called for ', parent);
37 key = parent.length > 0 ? parent.join('.') + `.${prop}` : prop;
38 //console.log('Called for ', key);
39 parent = [];
40 if (typeof value === 'object') {
41 value = new Proxy(value, handler);
42 //console.log('key:', key);
43 process(key, value);
44 }
45 Reflect.set(target, prop, value);
46 interpret(key, value);
47 },
48
49 get(target, prop, receiver) {
50 if(typeof prop === 'string')
51 parent.push(prop);
52 return Reflect.get(target, prop);
53 }
54
55 };
56
57 const interpret = (key, value) => {
58 //console.log('KEY:', key);
59 document.querySelectorAll(`#${ID} data[name='${key}']`).forEach(elm => {
60 elm.innerHTML = value;
61 });
62 if(_attrs[key]) {
63 let elms = _attrs[key];
64 elms.forEach((elm) => {
65 elm._elm.setAttribute(elm._attr, value);
66 });
67 }
68 };
69
70 const valueof = (data_source, index) => {
71 let value = data_source;
72 index = index.split('.');
73 index.forEach(prop => {
74 value = Reflect.get(data_source, prop);
75 });
76 //console.log('vo ', value);
77 return value;
78 }
79
80 const process = (name, obj) => {
81 //console.log('Processed ' + name, obj);
82 if (_loops[name]) {
83 let loop = _loops[name];
84 let _for = obj;
85 let _html = '';
86 let index = 0;
87 //console.log('LOOP:', loop);
88 //console.log('_for:', _for);
89 try {
90 _for.forEach(item => {
91 let keys = Object.keys(item);
92 let _processed_html = loop._repeat;
93 keys.forEach(key => {
94 _processed_html = `<loop_item key='${name}.${index}.${key}'>` + _processed_html.replace(`:${loop._each}.${key}`, item[key]) + `</loop_item>`;
95 });
96 _html += _processed_html;
97 index++;
98 });
99 loop._loop.innerHTML = _html;
100 } catch (e) {
101
102 }
103 //console.log(_html)
104 }
105
106 for (let [key, value] of Object.entries(obj)) {
107 const index = `${name}.${key}`;
108 if (typeof value !== 'object') {
109 interpret(index, value);
110 } else if (typeof value === 'object') {
111 value = new Proxy(value, handler);
112 process(index, value);
113 }
114 }
115 };
116
117 return new Proxy({}, handler);
118 }
119