Browse Source

correctif sur 8c4dfe9 : dans le cas d'affichage_final, faut inserer avant </head>

pull/77/head
Maïeul 2 years ago
parent
commit
e29382e23a
  1. 22
      saisies_pipelines.php

22
saisies_pipelines.php

@ -43,13 +43,13 @@ function saisies_header_prive($flux) {
}
/**
* Insérer automatiquement les scripts JS et CSS de saisies dans toutes les pages de l'espace public
* Insérer automatiquement les scripts JS et CSS de saisies dans toutes les pages de l'espace public
* @param array $flux
* @return array $flux modifié
**/
function saisies_insert_head($flux) {
if(lire_config('saisies/assests_global')) {
$flux = saisies_generer_head($flux);
$flux .= saisies_generer_head();
}
return $flux;
}
@ -70,7 +70,8 @@ function saisies_affichage_final($flux) {
and strpos($flux, '<!--!inserer_saisie_editer-->') !== false // et qu'on a au moins une saisie
and strpos($flux, '<head') !== false // et qu'on a la balise <head> quelque part
) {
$flux = saisies_generer_head($flux, true);
$head = saisies_generer_head(true);
$flux = str_replace('</head>', "$head</head>", $flux);
}
return $flux;
@ -78,16 +79,15 @@ function saisies_affichage_final($flux) {
/**
* Génère le contenu du head pour les saisies (css et js)
*
* @param string $flux
* @param false $tester_saisies
*
* @param bool (false) $tester_saisies
*
* @return string
*/
function saisies_generer_head($flux, $tester_saisies = false) {
function saisies_generer_head($tester_saisies = false) {
$flux = '';
// on insère le CSS au début du <head>
include_spip('inc/filtres');
$css = produire_fond_statique('saisies.css');
$ins_css = "\n<link rel='stylesheet' href='$css' type='text/css' media='all' />\n";
@ -126,13 +126,13 @@ function saisies_generer_head($flux, $tester_saisies = false) {
$flux = $ins_css . $flux;
// on insère le JS à la fin du <head>
$ins_js = afficher_si_definir_fonctions();
// si on a une saisie de type textarea avec maxlength, on va charger un script
if (!$tester_saisies or (strpos($flux, 'textarea') !==false && strpos($flux, 'maxlength') !==false)) {
$js = produire_fond_statique('javascript/textarea-counter/textarea-counter.js');
$ins_js .= "\n<script type='text/javascript' src='$js'></script>\n";
}
}
foreach (array('javascript/saisies.js', 'javascript/saisies_afficher_si.js') as $script) {
$js = timestamp(find_in_path($script));
$ins_js .= "\n<script type='text/javascript' src='$js'></script>\n";

Loading…
Cancel
Save