plugin bug data module

This commit is contained in:
Fred Tempez 2022-10-18 11:53:53 +02:00
parent 13b0cbddf8
commit 334ea6867a
2 changed files with 17 additions and 17 deletions

View File

@ -411,17 +411,17 @@ class plugin extends common
// Tableau des langues rédigées // Tableau des langues rédigées
foreach (self::$languages as $key => $value) { foreach (self::$languages as $key => $value) {
if ( // tableau des langues installées
$this->getData(['config', 'i18n', $key]) === 'site' || if (is_dir(self::DATA_DIR . $key)) {
$key === 'fr_FR'
) {
$i18nSites[$key] = $value; $i18nSites[$key] = $value;
} }
} }
// Lister les modules installés // Lister les modules installés
$infoModules = helper::getModules(); $infoModules = helper::getModules();
// Parcourir les langues du site traduit et recherche les modules affectés à des pages // Parcourir les langues du site traduit et recherche les modules affectés à des pages
$pagesInfos = [];
foreach ($i18nSites as $keyi18n => $valuei18n) { foreach ($i18nSites as $keyi18n => $valuei18n) {
// Clés moduleIds dans les pages de la langue // Clés moduleIds dans les pages de la langue
@ -430,11 +430,11 @@ class plugin extends common
// Extraire les clés des modules // Extraire les clés des modules
$pagesModules[$keyi18n] = array_filter(helper::arrayColumn($pages['page'], 'moduleId', 'SORT_DESC'), 'strlen'); $pagesModules[$keyi18n] = array_filter(helper::arrayColumn($pages['page'], 'moduleId', 'SORT_DESC'), 'strlen');
// Générer ls liste des pages avec module pour la sauvegarde ou le backup // 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, 'title']); $pagesInfos[$keyi18n][$key]['title'] = $this->getData(['page', $key, 'shortTitle']);
$pagesInfos[$keyi18n][$key]['moduleId'] = $value; $pagesInfos[$keyi18n][$key]['moduleId'] = $value;
} }
} }
@ -504,28 +504,26 @@ 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
$keyi18n = self::$i18nContent;
if ( if (
isset($pagesInfos) && isset($pagesInfos) &&
is_array($pagesInfos[self::$i18nContent]) array_key_exists(self::$i18nContent, $pagesInfos)
) { ) {
foreach ($pagesInfos[self::$i18nContent] as $keyPage => $value) { foreach ($pagesInfos[self::$i18nContent] as $keyPage => $value) {
if (isset($infoModules[$pagesInfos[$keyi18n][$keyPage]['moduleId']])) { if (isset($infoModules[$pagesInfos[self::$i18nContent][$keyPage]['moduleId']])) {
// Co[nstruire le tableau de sortie // Co[nstruire le tableau de sortie
self::$modulesData[] = [ self::$modulesData[] = [
$infoModules[$pagesInfos[$keyi18n][$keyPage]['moduleId']]['realName'], $infoModules[$pagesInfos[self::$i18nContent][$keyPage]['moduleId']]['realName'],
$pagesInfos[$keyi18n][$keyPage]['moduleId'], $pagesInfos[self::$i18nContent][$keyPage]['moduleId'],
$infoModules[$pagesInfos[$keyi18n][$keyPage]['moduleId']]['version'], $infoModules[$pagesInfos[self::$i18nContent][$keyPage]['moduleId']]['version'],
//template::flag($keyi18n, '20px'), //template::flag(self::$i18nContent, '20px'),
'<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/' . $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/' . 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/' . $keyi18n . '/' . $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',

View File

@ -168,6 +168,7 @@ class translate extends common
} }
// Activation du bouton de copie // Activation du bouton de copie
self::$siteCopy = count(self::$languagesInstalled) > 1 ? false : true; self::$siteCopy = count(self::$languagesInstalled) > 1 ? false : true;
// Onglet des langues de l'interface // Onglet des langues de l'interface
if (is_dir(self::I18N_DIR)) { if (is_dir(self::I18N_DIR)) {
$dir = getcwd(); $dir = getcwd();
@ -175,6 +176,7 @@ class translate extends common
$files = glob('*.json'); $files = glob('*.json');
chdir($dir); chdir($dir);
} }
// Construit le tableau des langues de l'UI // Construit le tableau des langues de l'UI
foreach ($files as $file) { foreach ($files as $file) {
// La langue est-elle référencée ? // La langue est-elle référencée ?