uploadItem WIP
This commit is contained in:
parent
66c4395069
commit
3fad88dcbc
@ -26,7 +26,7 @@ class addon extends common {
|
|||||||
'store' => self::GROUP_ADMIN,
|
'store' => self::GROUP_ADMIN,
|
||||||
'item' => self::GROUP_ADMIN,
|
'item' => self::GROUP_ADMIN,
|
||||||
'upload' => self::GROUP_ADMIN,
|
'upload' => self::GROUP_ADMIN,
|
||||||
'storeUpload'=> self::GROUP_ADMIN
|
'uploadItem'=> self::GROUP_ADMIN
|
||||||
];
|
];
|
||||||
|
|
||||||
const URL_STORE = 'http://zwiicms.fr/?modules/list';
|
const URL_STORE = 'http://zwiicms.fr/?modules/list';
|
||||||
@ -203,7 +203,7 @@ class addon extends common {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
* Installation manuel d'un module à partir du gestionnaire de fichier
|
* Installation d'un module à partir du gestionnaire de fichier
|
||||||
*/
|
*/
|
||||||
public function upload() {
|
public function upload() {
|
||||||
// Soumission du formulaire
|
// Soumission du formulaire
|
||||||
@ -229,20 +229,49 @@ class addon extends common {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/***
|
/***
|
||||||
* Installation manuel d'un module par le catalogue
|
* Installation d'un module par le catalogue
|
||||||
*/
|
*/
|
||||||
public function uploadStore() {
|
public function uploadItem() {
|
||||||
// Installation d'un module
|
// Jeton incorrect
|
||||||
$success = true;
|
if ($this->getUrl(3) !== $_SESSION['csrf']) {
|
||||||
$checkValidMaj = $this->getInput('configModulesCheck', helper::FILTER_BOOLEAN);
|
// Valeurs en sortie
|
||||||
$zipFilename = $this->getInput('configModulesInstallation', helper::FILTER_STRING_SHORT);
|
$this->addOutput([
|
||||||
if( $zipFilename !== ''){
|
'redirect' => helper::baseUrl() . 'store',
|
||||||
$state = $this->install(self::FILE_DIR.'source/'.$zipFilename, $checkValidMaj);
|
'state' => false,
|
||||||
|
'notification' => 'Action non autorisée'
|
||||||
|
]);
|
||||||
|
} else {
|
||||||
|
// Récupérer le module en ligne
|
||||||
|
$moduleName = $this->getUrl(2);
|
||||||
|
// Informations sur les module en ligne
|
||||||
|
$store = json_decode(helper::urlGetContents(self::URL_STORE), true);
|
||||||
|
// Url du module à télécharger
|
||||||
|
$moduleFile = $store[$moduleName]['file'];
|
||||||
|
// Télécharger le fichier =
|
||||||
|
$moduleData = helper::urlGetContents(self::BASEURL_STORE . self::FILE_DIR . $moduleFile);
|
||||||
|
// Stocker le fichier dans un dossier local
|
||||||
|
file_put_contents(self::FILE_DIR . 'source/modules/' . $moduleFile, $moduleData);
|
||||||
|
if (!is_dir(self::FILE_DIR . 'source/modules')) {
|
||||||
|
mkdir (self::FILE_DIR . 'source/modules');
|
||||||
|
}
|
||||||
|
|
||||||
|
$success = true;
|
||||||
|
$checkValidMaj = $this->getInput('configModulesCheck', helper::FILTER_BOOLEAN);
|
||||||
|
$zipFilename = $this->getInput('configModulesInstallation', helper::FILTER_STRING_SHORT);
|
||||||
|
if( $zipFilename !== ''){
|
||||||
|
$state = $this->install(self::FILE_DIR.'source/'.$zipFilename, $checkValidMaj);
|
||||||
|
}
|
||||||
|
$this->addOutput([
|
||||||
|
//'redirect' => helper::baseUrl() . $this->getUrl(),
|
||||||
|
'notification' => $state['notification'],
|
||||||
|
'state' => $state['success']
|
||||||
|
]);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
// Valeurs en sortie
|
||||||
$this->addOutput([
|
$this->addOutput([
|
||||||
'redirect' => helper::baseUrl() . $this->getUrl(),
|
'title' => 'Catalogue de modules',
|
||||||
'notification' => $state['notification'],
|
'view' => 'store'
|
||||||
'state' => $state['success']
|
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -283,7 +312,7 @@ class addon extends common {
|
|||||||
implode(', ', array_keys($inPagesTitle,$key)),
|
implode(', ', array_keys($inPagesTitle,$key)),
|
||||||
template::button('moduleExport' . $key, [
|
template::button('moduleExport' . $key, [
|
||||||
'class' => $class,
|
'class' => $class,
|
||||||
'href' => helper::baseUrl(). $this->getUrl(0) . '/installModule/' . $key.'/' . $_SESSION['csrf'],// appel de fonction vaut exécution, utiliser un paramètre
|
'href' => helper::baseUrl(). $this->getUrl(0) . '/uploadItem/' . $key.'/' . $_SESSION['csrf'],// appel de fonction vaut exécution, utiliser un paramètre
|
||||||
'value' => $ico
|
'value' => $ico
|
||||||
])
|
])
|
||||||
];
|
];
|
||||||
|
Loading…
Reference in New Issue
Block a user