Modules dans la langue sélectionnée

This commit is contained in:
fredtempez 2022-02-03 09:47:52 +01:00
parent 04b602b118
commit 0af01481c4
2 changed files with 33 additions and 24 deletions

View File

@ -463,14 +463,17 @@ class plugin extends common {
// Mise en forme du tableau des modules employés dans les pages // Mise en forme du tableau des modules employés dans les pages
// Avec les commandes de sauvegarde et de restauration // Avec les commandes de sauvegarde et de restauration
foreach ($pagesInfos as $keyi18n=>$valueI18n) { //foreach ($pagesInfos as $keyi18n=>$valueI18n) {
$keyi18n = self::$i18n;
$valueI18n = $pagesInfos[self::$i18n];
foreach ($valueI18n as $keyPage=>$value) { foreach ($valueI18n as $keyPage=>$value) {
// Construire le tableau de sortie // Construire le tableau de sortie
self::$modulesData[] = [ self::$modulesData[] = [
$infoModules[$pagesInfos[$keyi18n][$keyPage]['moduleId']] ['realName'], $infoModules[$pagesInfos[$keyi18n][$keyPage]['moduleId']] ['realName'],
$pagesInfos[$keyi18n][$keyPage]['moduleId'], $pagesInfos[$keyi18n][$keyPage]['moduleId'],
$infoModules[$pagesInfos [$keyi18n][$keyPage]['moduleId']] ['version'], $infoModules[$pagesInfos [$keyi18n][$keyPage]['moduleId']] ['version'],
template::flag($keyi18n, '20px'), //template::flag($keyi18n, '20px'),
'<a href ="' . helper::baseUrl() . $keyPage . '" target="_blank">' . $pagesInfos [$keyi18n][$keyPage]['title'] . ' (' .$keyPage . ')</a>', '<a href ="' . helper::baseUrl() . $keyPage . '" target="_blank">' . $pagesInfos [$keyi18n][$keyPage]['title'] . ' (' .$keyPage . ')</a>',
template::button('moduleExport' . $keyPage, [ template::button('moduleExport' . $keyPage, [
'href' => helper::baseUrl(). $this->getUrl(0) . '/dataExport/' . $keyi18n . '/' . $pagesInfos[$keyi18n][$keyPage]['moduleId'] . '/' . $keyPage . '/' . $_SESSION['csrf'],// appel de fonction vaut exécution, utiliser un paramètre 'href' => helper::baseUrl(). $this->getUrl(0) . '/dataExport/' . $keyi18n . '/' . $pagesInfos[$keyi18n][$keyPage]['moduleId'] . '/' . $keyPage . '/' . $_SESSION['csrf'],// appel de fonction vaut exécution, utiliser un paramètre
@ -486,7 +489,8 @@ class plugin extends common {
]; ];
} }
}
//}
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
@ -554,7 +558,7 @@ class plugin extends common {
/* /*
* Détacher un module d'une page * Détacher un module d'une page en supprimant les données du module
*/ */
public function dataDelete() { public function dataDelete() {
@ -563,6 +567,11 @@ class plugin extends common {
/* /*
* Export des données d'un module * Export des données d'un module
* Structure de l'adresse reçue
* 2 : i18n id
* 3 : moduleId
* 4 : pageId
* 5 : CSRF
*/ */
public function dataExport() { public function dataExport() {
// Jeton incorrect // Jeton incorrect
@ -595,7 +604,7 @@ class plugin extends common {
// Descripteur de l'archive // Descripteur de l'archive
$infoModule = helper::getModules(); $infoModule = helper::getModules();
$success .= file_put_contents ($tmpFolder . '/descripteur.json', json_encode( $infoModule [$this->getUrl(3)] )); $success .= file_put_contents ($tmpFolder . '/descripteur.json', json_encode( [$this->getUrl(3) => $infoModule [$this->getUrl(3)]] ));
// création du zip // création du zip
@ -650,13 +659,12 @@ class plugin extends common {
// Lire le descripteur // Lire le descripteur
$descripteur = json_decode(file_get_contents(self::TEMP_DIR . $tempFolder . '/descripteur.json'), true); $descripteur = json_decode(file_get_contents(self::TEMP_DIR . $tempFolder . '/descripteur.json'), true);
// Intégration des données du module importé // Lecture des données du module
$moduleData = json_decode(file_get_contents(self::TEMP_DIR . $tempFolder . '/module.json'), true ); $moduleData = json_decode(file_get_contents(self::TEMP_DIR . $tempFolder . '/module.json'), true );
// Chargement des données du module importé
$this->setData(['module', array_first_key($descripteur), $moduleData ]);
// Intégration des données du module importé dans la page
$this->setData(['page', 'moduleId', array_first_key($descripteur) ]);
// Supprimer le dossier temporaire // Supprimer le dossier temporaire
$this->removeDir(self::TEMP_DIR . $tempFolder); $this->removeDir(self::TEMP_DIR . $tempFolder);

View File

@ -28,13 +28,23 @@
<div class="col12"> <div class="col12">
<div class="block"> <div class="block">
<h4>Sauvegarde des modules installés</h4> <h4>Sauvegarde des modules installés</h4>
<?php echo template::table([2, 2, 1, 5, 1, 1], $module::$modulesInstalled, [ 'Module', 'moduleId', 'Version', '', '', '']); ?> <?php echo template::table([2, 2, 1, 5, 1, 1], $module::$modulesInstalled, [ 'Modules', 'moduleId', 'Versions', '', '', '']); ?>
</div> </div>
</div> </div>
</div> </div>
<?php else: ?> <?php else: ?>
<?php echo template::speech('Aucun module installé.'); ?> <?php echo template::speech('Aucun module installé.'); ?>
<?php endif; ?> <?php endif; ?>
<?php if($module::$modulesOrphan): ?>
<div class="row">
<div class="col12">
<div class="block">
<h4>Désinstallation des modules orphelins</h4>
<?php echo template::table([2, 2, 1, 6, 1], $module::$modulesOrphan, [ 'Modules', 'moduleId', 'Versions', '', '']); ?>
</div>
</div>
</div>
<?php endif; ?>
<?php if($module::$modulesData): ?> <?php if($module::$modulesData): ?>
<div class="row"> <div class="row">
<div class="col12"> <div class="col12">
@ -51,19 +61,10 @@
</div> </div>
<div class="row"> <div class="row">
<div class="col12"> <div class="col12">
<?php echo template::table([2, 2, 1, 1, 4, 1, 1], $module::$modulesData, [ 'Module', 'moduleId', 'Version', 'Langue', 'Page (id)', '', '']); ?> <?php echo template::table([2, 2, 1, 5, 1, 1], $module::$modulesData, [ 'Modules', 'moduleId', 'Versions', 'Pages ' . template::flag( self::$i18n, '15px') . ' (pageId)', '', '']); ?>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<?php endif; ?> </div>
<?php if($module::$modulesOrphan): ?> <?php endif; ?>
<div class="row">
<div class="col12">
<div class="block">
<h4>Désinstallation des modules orphelins</h4>
<?php echo template::table([2, 2, 1, 6, 1], $module::$modulesOrphan, [ 'Module', 'moduleId', 'Version', '', '']); ?>
</div>
</div>
</div>
<?php endif; ?>