- Added new phrases fot the extension manager

- Renamed uploadExtension to installExtension in application/controllers/system/extensions/CLI_Manager.php
- Adapted controller system/extensions/Manager.php to use FHC_Controller functionalities
- Changed controller system/extensions/Manager->uploadExtension to get parameters from HTTP post and HTTP file
- Changed view system/extensions/manager.php to use templates/FHC-Header, ajaxlib, tablewidget, phrases and the CI upload library
- Added new column type array to application/widgets/TableWidget.php
- Added new type boolean to the public/js/AjaxLib.js result when checked by the hasData method
- Added new JS public/js/ExtensionsManager.js that contains the extensions manager JS
- Added new view system/extensions/tableWidget.php to display the extensions manager TableWidget
This commit is contained in:
Paolo
2021-09-27 12:45:55 +02:00
parent 063a3fa524
commit 023e0fc934
9 changed files with 365 additions and 187 deletions
@@ -11,8 +11,8 @@ class Manager extends Auth_Controller
*
*/
public function __construct()
{
parent::__construct(
{
parent::__construct(
array(
'index' => 'system/extensions:r',
'toggleExtension' => 'system/extensions:rw',
@@ -21,11 +21,20 @@ class Manager extends Auth_Controller
)
);
// Load helpers to upload files
// Loads the form helper
$this->load->helper('form');
// Loads WidgetLib
$this->load->library('WidgetLib');
// Loads the extensions library
$this->load->library('ExtensionsLib');
$this->loadPhrases(
array(
'extensions'
)
);
}
/**
@@ -50,7 +59,7 @@ class Manager extends Auth_Controller
$extension_id = $this->input->post('extension_id');
$enabled = $this->input->post('enabled');
if ($enabled === 'true')
if ($enabled === true)
{
$toggleExtension = $this->extensionslib->enableExtension($extension_id);
}
@@ -59,9 +68,7 @@ class Manager extends Auth_Controller
$toggleExtension = $this->extensionslib->disableExtension($extension_id);
}
$this->output
->set_content_type('application/json')
->set_output(json_encode($toggleExtension));
$this->outputJsonSuccess($toggleExtension);
}
/**
@@ -69,15 +76,11 @@ class Manager extends Auth_Controller
*/
public function delExtension()
{
$delExtension = false;
$extension_id = $this->input->post('extension_id');
$delExtension = $this->extensionslib->delExtension($extension_id);
$this->output
->set_content_type('application/json')
->set_output(json_encode($delExtension));
$this->outputJsonSuccess($delExtension);
}
/**
@@ -89,11 +92,11 @@ class Manager extends Auth_Controller
* @param $filename Url Encoded Pfad zum tgz File der Extension
* @param $perform_sql boolean ob die SQL Befehle ausgeführt werden
*/
public function uploadExtension($extensionName = null, $filename = null, $perform_sql = true)
public function uploadExtension()
{
$perform_sql = $this->input->post('databasechange');
$perform_sql = isset($perform_sql) ? false : true;
$performSql = $this->input->post('performSql');
$this->extensionslib->installExtension($extensionName, urldecode($filename), $perform_sql);
$this->extensionslib->installExtension(null, null, $performSql);
}
}