Export des données de module plusieurs langues en un écran

This commit is contained in:
Fred Tempez 2022-10-18 18:36:23 +02:00
parent 334ea6867a
commit 978fd08857
6 changed files with 39 additions and 35 deletions

View File

@ -317,6 +317,7 @@
"Version": "Versión", "Version": "Versión",
"Catégorie": "Categoría", "Catégorie": "Categoría",
"Page": "Página", "Page": "Página",
"Page associée": "Página asociada",
"Copie de contenus localisés": "Copia de contenidos localizados", "Copie de contenus localisés": "Copia de contenidos localizados",
"Nouveau contenu localisé": "Nuevo contenido localizado", "Nouveau contenu localisé": "Nuevo contenido localizado",
"Sélectionnez une langue": "Seleccione un idioma", "Sélectionnez une langue": "Seleccione un idioma",

View File

@ -316,6 +316,7 @@
"Version": "", "Version": "",
"Catégorie": "", "Catégorie": "",
"Page": "", "Page": "",
"Page associée": "",
"Copie de contenus localisés": "", "Copie de contenus localisés": "",
"Nouveau contenu localisé": "", "Nouveau contenu localisé": "",
"Sélectionnez une langue": "", "Sélectionnez une langue": "",

View File

@ -433,14 +433,14 @@ class plugin extends common
// Générer la liste des pages avec module de la langue par défaut // Générer la liste des pages avec module de la langue par défaut
foreach ($pagesModules[$keyi18n] as $key => $value) { foreach ($pagesModules[$keyi18n] as $key => $value) {
if (!empty($value)) { if (!empty($value)) {
$pagesInfos[$keyi18n][$key]['pageId'] = $key; $pagesInfos[$keyi18n][$key]['pageId'] = $key;
$pagesInfos[$keyi18n][$key]['title'] = $this->getData(['page', $key, 'shortTitle']); $pagesInfos[$keyi18n][$key]['title'] = $pages['page'][$key]['title'];
$pagesInfos[$keyi18n][$key]['moduleId'] = $value; $pagesInfos[$keyi18n][$key]['moduleId'] = $value;
} }
} }
} }
// Recherche des modules orphelins dans toutes les langues // Recherche des modules orphelins dans toutes les langues
$orphans = $installed = array_flip(array_keys($infoModules)); $orphans = $installed = array_flip(array_keys($infoModules));
foreach ($i18nSites as $keyi18n => $valuei18n) { foreach ($i18nSites as $keyi18n => $valuei18n) {
@ -504,39 +504,36 @@ 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
self::$modulesData[] = [];
if ( if (
isset($pagesInfos) && isset($pagesInfos) //&&
array_key_exists(self::$i18nContent, $pagesInfos) //array_key_exists(self::$i18nContent, $pagesInfos)
) { ) {
foreach ($pagesInfos[self::$i18nContent] as $keyPage => $value) { foreach ($i18nSites as $keyi18n => $valuei18n) {
if (isset($infoModules[$pagesInfos[self::$i18nContent][$keyPage]['moduleId']])) { foreach ($pagesInfos[$keyi18n] as $keyPage => $value) {
// Co[nstruire le tableau de sortie if (isset($infoModules[$pagesInfos[$keyi18n][$keyPage]['moduleId']])) {
self::$modulesData[] = [ // Co[nstruire le tableau de sortie
$infoModules[$pagesInfos[self::$i18nContent][$keyPage]['moduleId']]['realName'], self::$modulesData[] = [
$pagesInfos[self::$i18nContent][$keyPage]['moduleId'], $infoModules[$pagesInfos[$keyi18n][$keyPage]['moduleId']]['realName'] . '&nbsp(' . $pagesInfos[$keyi18n][$keyPage]['moduleId'] . ')',
$infoModules[$pagesInfos[self::$i18nContent][$keyPage]['moduleId']]['version'], $infoModules[$pagesInfos[$keyi18n][$keyPage]['moduleId']]['version'],
//template::flag(self::$i18nContent, '20px'), template::flag($keyi18n, '20px') . '&nbsp<a href ="' . helper::baseUrl() . $keyPage . '" target="_blank">' . $pagesInfos[$keyi18n][$keyPage]['title'] . ' (' . $keyPage . ')</a>',
'<a href ="' . helper::baseUrl() . $keyPage . '" target="_blank">' . $pagesInfos[self::$i18nContent][$keyPage]['title'] . ' (' . $keyPage . ')</a>', template::button('dataExport' . $keyPage, [
template::button('dataExport' . $keyPage, [ 'href' => helper::baseUrl() . $this->getUrl(0) . '/dataExport/' . self::$i18nContent . '/' . $pagesInfos[$keyi18n][$keyPage]['moduleId'] . '/' . $keyPage . '/' . $_SESSION['csrf'], // appel de fonction vaut exécution, utiliser un paramètre
'href' => helper::baseUrl() . $this->getUrl(0) . '/dataExport/' . self::$i18nContent . '/' . $pagesInfos[self::$i18nContent][$keyPage]['moduleId'] . '/' . $keyPage . '/' . $_SESSION['csrf'], // appel de fonction vaut exécution, utiliser un paramètre 'value' => template::ico('download'),
'value' => template::ico('download'), 'help' => 'Exporter les données du module'
'help' => 'Exporter les données du module' ]),
]), template::button('dataDelete' . $keyPage, [
template::button('dataDelete' . $keyPage, [ 'href' => helper::baseUrl() . $this->getUrl(0) . '/dataDelete/' . self::$i18nContent . '/' . $pagesInfos[$keyi18n][$keyPage]['moduleId'] . '/' . $keyPage . '/' . $_SESSION['csrf'], // appel de fonction vaut exécution, utiliser un paramètre
'href' => helper::baseUrl() . $this->getUrl(0) . '/dataDelete/' . self::$i18nContent . '/' . $pagesInfos[self::$i18nContent][$keyPage]['moduleId'] . '/' . $keyPage . '/' . $_SESSION['csrf'], // appel de fonction vaut exécution, utiliser un paramètre 'value' => template::ico('trash'),
'value' => template::ico('trash'), 'class' => 'buttonRed dataDelete',
'class' => 'buttonRed dataDelete', 'help' => 'Détacher le module de la page',
'help' => 'Détacher le module de la page', ])
]) ];
]; }
} else {
self::$modulesData[] = [];
} }
} }
} }
// Valeurs en sortie // Valeurs en sortie
$this->addOutput([ $this->addOutput([
'title' => helper::translate('Gestion des modules'), 'title' => helper::translate('Gestion des modules'),

View File

@ -73,9 +73,8 @@
<div class="row"> <div class="row">
<div class="col12"> <div class="col12">
<div class="block"> <div class="block">
<h4><?php echo helper::translate('Modules configurés'); ?> <h4>
&nbsp; <?php echo helper::translate('Modules configurés'); ?>
<?php echo template::flag(self::$i18nContent, '20px'); ?>
</h4> </h4>
<div class="row"> <div class="row">
<div class="col1 offset11"> <div class="col1 offset11">
@ -88,7 +87,7 @@
</div> </div>
<div class="row"> <div class="row">
<div class="col12"> <div class="col12">
<?php echo template::table([2, 2, 1, 5, 1, 1], $module::$modulesData, ['Module', 'Identifiant', 'Version', 'Page', '', '']); ?> <?php echo template::table([4, 1, 5, 1, 1], $module::$modulesData, ['Module', 'Version', 'Page associée', '', '']); ?>
</div> </div>
</div> </div>
</div> </div>

View File

@ -317,6 +317,7 @@
"Version": "Versión", "Version": "Versión",
"Catégorie": "Categoría", "Catégorie": "Categoría",
"Page": "Página", "Page": "Página",
"Page associée": "Página asociada",
"Copie de contenus localisés": "Copia de contenidos localizados", "Copie de contenus localisés": "Copia de contenidos localizados",
"Nouveau contenu localisé": "Nuevo contenido localizado", "Nouveau contenu localisé": "Nuevo contenido localizado",
"Sélectionnez une langue": "Seleccione un idioma", "Sélectionnez une langue": "Seleccione un idioma",
@ -483,5 +484,7 @@
"Menu standard": "Menú estándar", "Menu standard": "Menú estándar",
"Menu accessoire": "Menú accesorio", "Menu accessoire": "Menú accesorio",
"Activer": "Activar", "Activer": "Activar",
"Interface": "Interfaz" "Interface": "Interfaz",
"Importer dans": "Importar a",
"Archive ZIP": "Archivo ZIP"
} }

View File

@ -316,6 +316,7 @@
"Version": "", "Version": "",
"Catégorie": "", "Catégorie": "",
"Page": "", "Page": "",
"Page associée": "",
"Copie de contenus localisés": "", "Copie de contenus localisés": "",
"Nouveau contenu localisé": "", "Nouveau contenu localisé": "",
"Sélectionnez une langue": "", "Sélectionnez une langue": "",
@ -481,5 +482,7 @@
"Le sous-menu de la page parente": "", "Le sous-menu de la page parente": "",
"Menu standard": "", "Menu standard": "",
"Menu accessoire": "", "Menu accessoire": "",
"Activer": "" "Activer": "",
"Importer dans": "",
"Archive": ""
} }