Skip to content
Extraits de code Groupes Projets
Valider 322d50d2 rédigé par real3t@gmail.com's avatar real3t@gmail.com
Parcourir les fichiers

[SoyezCréateurs] Activation rapide du mode Cognac fonctionnelle !

parent 5ef39000
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -22,6 +22,7 @@ boutonstexte/themes/soyezcreateurs/fontsizedown.png -text
boutonstexte/themes/soyezcreateurs/fontsizeup.png -text
boutonstexte/themes/soyezcreateurs/textonly.png -text
/breve.html -text
cfg_config/soyezcreateurs_mode_cognac.yaml -text
/clevermail_nouveautes_html.html -text
/clevermail_rm.html -text
/comptetraduction.html -text
......
nom: 'Mode Cognac'
soyezcreateurs:
soyezcreateurs:
mode_affichage: portailcognac
positiondatemajsite: bottom
hauteurbannierre: '200'
menuhautheader: header
deepmenu: deroulant
miniagenda: bas
agendafuturseul: oui
soyezcreateurs_layout:
soyezcreateurs_layout:
largeurconteneur: '1160'
largeurombre: '0'
largeurmenugauche: '240'
largeurmenudroit: '240'
maxlargeurimage: '872'
logomenuprincipal: non
logomenufooter: non
menuhautlogo: non
logomenuderoulant: non
largeurlogooutils: '16'
hauteurlogooutils: '16'
positionlogooutils: haut
pictogrammesoutils: avecoutils
largeurlogocontenuautomatique: '1920'
hauteurlogocontenuautomatique: '300'
cadragelogocontenuautomatique: recadre
largeurlogocontenuprincipal: '1920'
hauteurlogocontenuprincipal: '300'
cadragelogocontenuprincipal: recadre
largeurlogolistessites: '1160'
hauteurlogolistessites: '200'
logolocal: herite
logorubriquenavigation: header
logoarticlenavigation: header
positioncartouchetitre: haut
positioncartouche: bas
positionliensnav: menu_footer
affichage_lien_sites_web: affiche
affichage_lien_documents: affiche
affichage_lien_sigles: affiche
affichage_lien_newsletter: affiche
affichage_lien_annuaire: affiche
plansitefooter: generique
logoarticlerubrique: contentbastitre
largeurlogoarticlerubrique: '830'
hauteurlogoarticlerubrique: '200'
cadragelogoarticlerubrique: recadre
<paquet
prefix="soyezcreateurs"
categorie="squelette"
version="5.0.6"
version="5.0.7"
etat="stable"
compatibilite="[3.1.8;3.2.*]"
logo="img_pack/soyezcreateurs_48.png"
......@@ -93,5 +93,4 @@
<menu nom="soyezcreateur_config21" titre="soyezcreateurs:configurersc" parent="bando_configuration" icone="images/soyezcreateurs-16.png" action="configurer_soyezcreateurs" parametres="cfg=soyezcreateurs" />
<menu nom="sc_aide" titre="soyezcreateurs:aidesc" parent="bando_squelette" icone="images/soyezcreateurs_help-16.png" action="sc_aide" />
<menu nom="sc_import" titre="soyezcreateursprive:configurations_rapides_soyezcreateurs" parent="bando_squelette" icone="images/soyezcreateurs_help-16.png" action="sc_import" />
</paquet>
......@@ -4,6 +4,7 @@
<li><a href="#URL_ECRIRE{sc_bannieres}">Gérer les bannières (en-tête des pages) et le logo</a></li>[
(#AUTORISER{webmestre}|oui)<li><a href="#URL_ECRIRE{sc_vide}">Supprimer les articles de démonstration inutiles</a><br />Cette opération est potentiellement <strong>dangereuse</strong> et n'est à faire qu'en comprenant bien ce que vous faites !</li>
[(#PLUGIN{campagnes}|oui)<li><a href="[(#URL_ECRIRE{sc_aide}|parametre_url{doit,1})]">Créer les emplacements de bannières publicitaires par défaut</a><br />Action <strong>immédiate</strong> !</li>]
[(#PLUGIN{ieconfig}|oui)<li><a href="[(#URL_ECRIRE{sc_import}|parametre_url{doit,1})]"><:soyezcreateursprive:configurations_rapides_soyezcreateurs:></li>]
]</ul>
<?php
if (autoriser('webmestre') AND _request('doit')==1) {
......
<h1><:soyezcreateursprive:ieconfig_import_spe:></h1>
<ul >
[
(#AUTORISER{webmestre}|oui)<li><a href="./?exec=sc_import&nom=C:/wamp64/www/plugins/auto/soyezcreateurs/v4.3.16/cfg_config/soyezcreateurs_couleurs_seul_bleu_blanc_rouge.yaml&option=fusion">Activer mode Cognac de SoyezCréateurs</a> (attention, ne pas le faire maintenant, ça n'est pas terminé de coder)</li>
]
<?php
$nom = _request('nom');
$option = _request('option');
if (isset($nom) and isset($option)) {
include_spip('soyezcreateurs_fonctions_ieconfig');
if(!preg_match('[.a-zA-Z0-9_/\]', $nom)) {
$ok = sc_ieconfig_importer_fichier($nom,$option);
$result = sc_ieconfig_importer_fichier($nom,$option);
}
}
?>
</ul>
\ No newline at end of file
<ul >
[
(#AUTORISER{webmestre}|oui)<li><a href="[(#SELF|parametre_url{nom,cfg_config/soyezcreateurs_mode_cognac}|parametre_url{option,fusion})]">Activer mode Cognac de SoyezCréateurs</a> (<strong>Attention</strong>, action immédiate&nbsp;!)</li>
]
</ul>
<?php
if ($result) {
$ok = $result['message_ok'];
echo "<p>$ok (#ENV{nom})</p>";
}
?>
......@@ -18,100 +18,97 @@
/* - 'fusion' : Fusionner la configuration actuelle avec le fichier d'importation, les paramètres non renseignés dans le fichier d'importation sont conservés
/* - 'fusion_inv' : Fusionner la configuration actuelle avec le fichier d'importation, les paramètres renseignés dans le fichier d'importation sont ignorés s'il sont présent dans la configuration actuelle
*/
function sc_ieconfig_importer_fichier($chemin,$option = 'ecrase') {
function sc_ieconfig_importer_fichier($chemin, $option = 'ecrase') {
include_spip('inc/yaml');
$config = yaml_decode_file($chemin);
$config = yaml_decode_file(find_in_path($chemin.'.yaml'));
// On passe via le pipeline ieconfig
$message_erreur = pipeline('ieconfig', array(
'args' => array(
'action' => 'import',
'config' => $config,
),
'data' => '',
));
// On passe via le pipeline ieconfig
$message_erreur = pipeline('ieconfig', array(
'args' => array(
'action' => 'import',
'config' => $config,
),
'data' => '',
));
// Gestion des plugins utilisant le pipeline ieconfig_metas
foreach (pipeline('ieconfig_metas', array()) as $prefixe => $data) {
if (in_array($prefixe, $import_metas) && isset($config[$prefixe])) {
$config_importee .= $prefixe . ' ';
if (isset($data['metas_brutes'])) {
foreach (explode(',', $data['metas_brutes']) as $meta) {
// On teste le cas ou un prefixe est indique (dernier caractere est *)
if (substr($meta, -1) == '*') {
$p = substr($meta, 0, -1);
foreach ($config[$prefixe] as $m => $v) {
if (substr($m, 0, strlen($p)) == $p) {
if (($option === 'ecrase') OR ($option === 'fusion')) {
ecrire_config($m);
}
if ($option === 'fusion_inv') {
if (is_null(lire_config($m . '/'))) {
ecrire_config($m . '/', $v);
}
}
}
}
} elseif (isset($config[$prefixe][$meta])) {
// Gestion des plugins utilisant le pipeline ieconfig_metas
foreach (pipeline('ieconfig_metas', array()) as $prefixe => $data) {
if (isset($data['metas_brutes'])) {
foreach (explode(',', $data['metas_brutes']) as $meta) {
// On teste le cas ou un prefixe est indique (dernier caractere est *)
if (substr($meta, -1) == '*') {
$p = substr($meta, 0, -1);
foreach ($config[$prefixe] as $m => $v) {
if (substr($m, 0, strlen($p)) == $p) {
if (($option === 'ecrase') OR ($option === 'fusion')) {
ecrire_config($meta . '/', $config[$prefixe][$meta]);
ecrire_config($m);
}
if ($option === 'fusion_inv') {
if (is_null(lire_config($meta . '/'))) {
ecrire_config($meta . '/', $config[$prefixe][$meta]);
if (is_null(lire_config($m . '/'))) {
ecrire_config($m . '/', $v);
}
}
}
}
} elseif (isset($config[$prefixe][$meta])) {
if (($option === 'ecrase') OR ($option === 'fusion')) {
ecrire_config($meta . '/', $config[$prefixe][$meta]);
}
if ($option === 'fusion_inv') {
if (is_null(lire_config($meta . '/'))) {
ecrire_config($meta . '/', $config[$prefixe][$meta]);
}
}
}
if (isset($data['metas_serialize'])) {
foreach (explode(',', $data['metas_serialize']) as $meta) {
// On teste le cas ou un prefixe est indique (dernier caractere est *)
if (substr($meta, -1) == '*') {
$p = substr($meta, 0, -1);
foreach ($config[$prefixe] as $m => $v) {
if (substr($m, 0, strlen($p)) == $p) {
$import = array();
if ($option === 'ecrase') {
$import = $v;
}
if ($option === 'fusion') {
$import = array_merge(lire_config($m . '/'), $v);
}
if ($option === 'fusion_inv') {
$import_plus = array_diff_key($v, lire_config($meta . '/'));
$import_base = array_diff_key(lire_config($meta . '/'), $import_plus);
$import = (array_merge($import_plus, $import_base));
}
ksort($import);
ecrire_config($m . '/', serialize($import));
}
}
} elseif (isset($config[$prefixe][$meta])) {
}
}
if (isset($data['metas_serialize'])) {
foreach (explode(',', $data['metas_serialize']) as $meta) {
// On teste le cas ou un prefixe est indique (dernier caractere est *)
if (substr($meta, -1) == '*') {
$p = substr($meta, 0, -1);
foreach ($config[$prefixe] as $m => $v) {
if (substr($m, 0, strlen($p)) == $p) {
$import = array();
if ($option === 'ecrase') {
$import = $config[$prefixe][$meta];
$import = $v;
}
if ($option === 'fusion') {
$import = array_merge(lire_config($meta . '/'), $config[$prefixe][$meta]);
$import = array_merge(lire_config($m . '/'), $v);
}
if ($option === 'fusion_inv') {
$import_plus = array_diff_key($config[$prefixe][$meta], lire_config($meta . '/'));
$import_plus = array_diff_key($v, lire_config($meta . '/'));
$import_base = array_diff_key(lire_config($meta . '/'), $import_plus);
$import = (array_merge($import_plus, $import_base));
}
ksort($import);
ecrire_config($meta . '/', serialize($import));
ecrire_config($m . '/', serialize($import));
}
}
} elseif (isset($config[$prefixe][$meta])) {
$import = array();
if ($option === 'ecrase') {
$import = $config[$prefixe][$meta];
}
if ($option === 'fusion') {
$import = array_merge(lire_config($meta . '/'), $config[$prefixe][$meta]);
}
if ($option === 'fusion_inv') {
$import_plus = array_diff_key($config[$prefixe][$meta], lire_config($meta . '/'));
$import_base = array_diff_key(lire_config($meta . '/'), $import_plus);
$import = (array_merge($import_plus, $import_base));
}
ksort($import);
ecrire_config($meta . '/', serialize($import));
}
}
}
}
if ($message_erreur != '') {
return array('message_erreur' => $message_erreur);
} else {
return array('message_ok' => _T('ieconfig:message_ok_import'));
}
if ($message_erreur != '') {
return array('message_erreur' => $message_erreur);
} else {
return array('message_ok' => _T('ieconfig:message_ok_import'));
}
}
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter