Создать диалог по методам публикации

Я хотел бы создать небольшой диалог для публикации событий на элементе моего саморазвитого компонента.

Например: Item получает published - вызывается контроллер элемента и метод rund publish с помощью $task publish

Но теперь я хотел бы прервать процесс публикации: пользователь должен ответить на вопрос - например:

Вы уверены? Yes (publish) или No (exit)

Это источник моего контроллера:

/**
 * publish function.
 * 
 * @access public
 * @return void
 */
public function publish()
{
    $app                                    =   JFactory::getApplication();
    $jinput                                 =   JFactory::getApplication()->input;
    $ids                                    =   $jinput->get('cid', '', 'array');
    $task                                   =   $this->getTask();
    $date                                   =   JFactory::getDate();            
    $modelitem                              =   $this->getModel('Item');        

    foreach($ids as $id)
    {           
        switch($task)
        {
            case 'publish'  :                   // do stuff
                                                break;
            case 'unpublish':                   // do stuff
                                                break;
            case 'archive'  :                   // do stuff     
                                                break;
            case 'trash'    :                   // do stuff                                                 
                                                break;
        }

    }

    $publish                                =   $modelitem->publish($id, $state);

    $this->setRedirect('index.php?option=com_bestia&view=items', false);

    return true;
}   
2 голоса | спросил MyFault 23 WedEurope/Moscow2015-12-23T15:47:34+03:00Europe/Moscow12bEurope/MoscowWed, 23 Dec 2015 15:47:34 +0300 2015, 15:47:34

1 ответ


1

Самый простой способ реализовать диалог подтверждения - на стороне клиента, с использованием Javascript. Вы можете проверить, как это делает JToolbar:

    $bar = JToolbar::getInstance('toolbar');

    // Add a trash button.
    $bar->appendButton('Confirm', JText::_('COM_XXX_CONFIRM_PURGE'), 'trash', $alt, $task, $check, false);

В условиях Javascript:

    if (confirm('....')){Joomla.submitbutton('....');}
ответил Anibal 24 ThuEurope/Moscow2015-12-24T17:28:28+03:00Europe/Moscow12bEurope/MoscowThu, 24 Dec 2015 17:28:28 +0300 2015, 17:28:28

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132