У меня есть Joomla 2.5 Component, который я создаю.
Я хотел бы, чтобы в редактируемом (одноместном) виде компонента (называемый «Статья») была новая кнопка JToolbar «Добавить новый пункт меню».
При щелчке по нему должен открываться лайтбокс в окне «Правка» другого представления в том же компоненте (называемом «Элемент меню»), что позволяет пользователю добавлять элемент меню, не покидая форму, в которой он находится в данный момент.
Как оно есть, я положил в
JToolBarHelper::custom('ussdarticle.addussdmenu', '', '', 'Add Menu Item', false);
И попытался поместить функцию addussdmenu в контроллер, но когда кнопка нажата, она просто указывает на представление списка без вызова функции.
Действительно ценю помощь, я все еще прихожу к соглашению с MVC Joomla (и MVC в целом, если честно.)
Твое задание ussdarticle.addussdmenu
позвоню addussdmenu
метод ussdarticle
контроллер.
Также проверьте —
Как отправить переменную задачи в Joomla
Если вы хотите открыть всплывающее окно с помощью пользовательской кнопки. Вы можете использовать этот код в макете
<?php JHTML::_('behavior.modal');?>
<script type="text/javascript">
Joomla.submitbutton = function(task)
{
if((task == 'ussdarticle.addussdmenu')){
var url = "<?php echo JURI::base()?>index.php?option=com_mycomponent&task="+task;
SqueezeBox.loadModal(url,"iframe",820,400);
} else {
Joomla.submitform(task, document.getElementById('adminForm'));
}
}
SqueezeBox.loadModal = function(modalUrl,handler,x,y) {
this.presets.size.x = 1024;
this.initialize();
var options = {handler: 'iframe', size: {x: 1000, y: 550}, onClose: function() {}};
this.setOptions(this.presets, options);
this.assignOptions();
this.setContent(handler,modalUrl);
};
</script>
Других решений пока нет …