File manager - Edit - /home/jardides/www/Jardi-design/media/plg_system_nomad/admin.js
Back
var Nomad = new Class({ Implements:[Events,Options], options:{ version:2.5, parentelement:'li' }, initialize:function(options){ var self = this; self.setOptions(options); // identify parent element for show/hide switch(options.version) { case '2.5': self.options.parentelement = 'li'; break; default: self.options.parentelement = 'div.control-group'; break; } $$('.chzn-done').each(function(el){ jQuery(el).chosen('destroy'); }); document.id('jform_params_savebutton').addEvent('click',function(){self.saverule();return false;}); document.id('jform_params_editbutton').addEvent('click',function(){self.editrule();return false;}); document.id('jform_params_deletebutton').addEvent('click',function(){self.deleterule();return false;}); $$('.redspec').each(function(el){ el.getParent(self.options.parentelement).hide(); }); document.id('jform_params_selectortype').getChildren('input').each(function(el){ el.addEvent('click',function(){ self.showoptions(el); }); if(el.checked) self.showoptions(el); }); var rules = JSON.decode(document.id('jform_params_rules').value.decodeBase64()); Array.each(rules,function(rule){ self.addoption(rule);}); }, showoptions:function(el) { var self = this; $$('.redspec').each(function(rel){ if(rel.hasClass(el.value)) { rel.getParent(self.options.parentelement).show(); } else { rel.getParent(self.options.parentelement).hide(); } }); }, addoption:function(rule) { var self = this; var duplicate = false; var options = document.id('jform_params_ruleslist').getChildren('input'); if(options.length) { options.each(function(el){ var elval = JSON.decode(el.value); if(elval.type === rule.type && elval.selector === rule.selector) { duplicate = true; } }); } if(!duplicate) { var newrule = new Element('input',{ 'id':JSON.encode(rule).toBase64(), 'name':'ruleslist', 'type':'radio', 'value':JSON.encode(rule) }).inject(document.id('jform_params_ruleslist'),'bottom'); var newlabel = new Element('label',{ 'id':JSON.encode(rule).toBase64()+'label', 'for':JSON.encode(rule).toBase64(), 'html':rule.type + ': ' + rule.text + ' ' + Joomla.JText._('PLG_SYS_NOMAD_REDIRECTS_TO') + ' ' + rule.destinationhtml }).inject(newrule,'after'); if(self.options.version === 2.5) { var newbr = new Element('br',{'style':'clear:both'}).inject(newlabel,'after'); } } else { if(rule.type === 'global') { alert(Joomla.JText._('PLG_SYS_NOMAD_DUPLICATE_TYPE')); } else { alert(Joomla.JText._('PLG_SYS_NOMAD_DUPLICATE_TYPE_SELECTOR')); } } }, encoderules:function() { var self = this; var rules = []; document.id('jform_params_ruleslist').getChildren('input').each(function(el){ rules[rules.length]=JSON.decode(el.value); }); document.id('jform_params_rules').value = JSON.encode(rules).toBase64(); }, saverule:function() { var self = this; var type = false; var rule = new Object; document.id('jform_params_selectortype').getChildren('input').some(function(el){ if(el.checked) { type = el.value; return true; } else { return false; } }); if(!type) return false; rule.type = type; switch(type) { case 'global': rule.selector = ''; rule.text = ''; break; case 'user': var user = document.id('jform_params_redirectuser_id'); if(user.value === 0) return false; rule.text = document.id('jform_params_redirectuser_name')?document.id('jform_params_redirectuser_name').value:document.id('jform_params_redirectuser').value; rule.selector = user.value; break; case 'group': var el = document.id('jformparamsredirectgroup')?document.id('jformparamsredirectgroup'):document.id('jform_params_redirectgroup'); var group = el.getSelected()[0].value; rule.text = el.getSelected()[0].get('html'); rule.selector = group; break; default: return false; break; } var destination = document.id('jform_params_redirectdestination').getSelected()[0]; rule.destination = destination.value; rule.destinationhtml = destination.get('html'); self.addoption(rule); self.encoderules(); }, editrule:function() { var self = this; var selected = self.getselectedrule(); if(typeOf(selected) !== 'element') return false; var rule = JSON.decode(selected.value); document.id('jform_params_selectortype').getChildren('input').each(function(el){ if(el.value === rule.type) { el.checked = true; self.showoptions(el); } switch(rule.type) { case 'user': document.id('jform_params_redirectuser_id').value = rule.selector; if(document.id('jform_params_redirectuser_name')) { document.id('jform_params_redirectuser_name').value = rule.text; } else { document.id('jform_params_redirectuser').value = rule.text; } break; case 'group': el = document.id('jformparamsredirectgroup')?document.id('jformparamsredirectgroup'):document.id('jform_params_redirectgroup'); el.getChildren('option').each(function(oel){ // if(el.hasClass('chzn-done')) { // // stupid jquery chosen garbage // el.trigger("liszt:updated"); // } if(oel.value === rule.selector) oel.selected = true; }); break; case 'global': default: break; } document.id('jform_params_redirectdestination').getElements('option').each(function(oel){ if(oel.value === rule.destination) { // if(document.id('jform_params_redirectdestination').hasClass('chzn-done')) { // // stupid jquery chosen garbage // jQuery('#jform_params_redirectdestination').trigger("liszt:updated"); // } oel.selected = true; } }); }); self.destroyrule(selected); new Fx.Scroll(window).toElement('jform_params_selectortype'); alert(Joomla.JText._('PLG_SYS_NOMAD_RETURNED_TO_EDITOR')); self.encoderules(); }, getselectedrule:function(){ var selected = false; document.id('jform_params_ruleslist').getChildren('input').each(function(el){ if(el.checked === true) selected = el; }); return selected; }, destroyrule:function(el){ if(!typeOf(el)) return; var label = document.id(el.get('id')+'label'); label.destroy(); el.destroy(); }, deleterule:function() { var self = this; var selected = self.getselectedrule(); if(typeOf(selected) === 'element') { self.destroyrule(selected); self.encoderules(); } } }); window.addEvent('domready',function(){ var nomad = new Nomad(window.plg_sys_nomad_config); });
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.02 |
proxy
|
phpinfo
|
Settings