66 lines
1.6 KiB
PHP
66 lines
1.6 KiB
PHP
<?php
|
|
/**
|
|
* @package Joomla.Administrator
|
|
* @subpackage com_modules
|
|
*
|
|
* @copyright Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
|
|
* @license GNU General Public License version 2 or later; see LICENSE.txt
|
|
*/
|
|
|
|
defined('_JEXEC') or die;
|
|
|
|
/**
|
|
* Modules list controller class.
|
|
*
|
|
* @package Joomla.Administrator
|
|
* @subpackage com_modules
|
|
* @since 1.6
|
|
*/
|
|
class ModulesControllerModules extends JControllerAdmin
|
|
{
|
|
/**
|
|
* Method to clone an existing module.
|
|
* @since 1.6
|
|
*/
|
|
public function duplicate()
|
|
{
|
|
// Check for request forgeries
|
|
JSession::checkToken() or jexit(JText::_('JINVALID_TOKEN'));
|
|
|
|
$pks = $this->input->post->get('cid', array(), 'array');
|
|
JArrayHelper::toInteger($pks);
|
|
|
|
try {
|
|
if (empty($pks))
|
|
{
|
|
throw new Exception(JText::_('COM_MODULES_ERROR_NO_MODULES_SELECTED'));
|
|
}
|
|
$model = $this->getModel();
|
|
$model->duplicate($pks);
|
|
$this->setMessage(JText::plural('COM_MODULES_N_MODULES_DUPLICATED', count($pks)));
|
|
} catch (Exception $e)
|
|
{
|
|
JError::raiseWarning(500, $e->getMessage());
|
|
}
|
|
|
|
$this->setRedirect('index.php?option=com_modules&view=modules');
|
|
}
|
|
|
|
/**
|
|
* Method to get a model object, loading it if required.
|
|
*
|
|
* @param string $name The model name. Optional.
|
|
* @param string $prefix The class prefix. Optional.
|
|
* @param array $config Configuration array for model. Optional.
|
|
*
|
|
* @return object The model.
|
|
*
|
|
* @since 1.6
|
|
*/
|
|
public function getModel($name = 'Module', $prefix = 'ModulesModel', $config = array('ignore_request' => true))
|
|
{
|
|
$model = parent::getModel($name, $prefix, $config);
|
|
return $model;
|
|
}
|
|
}
|