diff --git a/paquet.xml b/paquet.xml
index dfafce09..3268379a 100644
--- a/paquet.xml
+++ b/paquet.xml
@@ -17,8 +17,8 @@
+
-
diff --git a/saisies_pipelines.php b/saisies_pipelines.php
index 133ce0d6..1612700c 100644
--- a/saisies_pipelines.php
+++ b/saisies_pipelines.php
@@ -43,86 +43,62 @@ function saisies_header_prive($flux) {
}
/**
- * Ajoute les scripts JS et CSS de saisies dans l'espace public
- *
- * Ajoute également de quoi gérer le datepicker de la saisie date si
- * celle-ci est utilisée dans la page.
- *
- * @param string $flux
- * @return string
-**/
-function saisies_affichage_final($flux) {
- if (
- $GLOBALS['html'] // si c'est bien du HTML
- and ($p = strpos($flux, '')) !== false // et qu'on a au moins une saisie
- and strpos($flux, '
quelque part
- ) {
- // On insère la CSS devant le premier trouvé
- if (!$pi = strpos($flux, ' de saisies
- }
- include_spip('inc/filtres');
- $css = produire_fond_statique('saisies.css');
- $ins_css = "\n\n";
+ * 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) {
- //si on a une saisie de type date, on va charger les css de jquery_ui
- if (
- (!defined('_JQUERYUI_CSS_NON') or !boolval(_JQUERYUI_CSS_NON))
- and strpos($flux, 'saisie_date') !==false
- ) {
- include_spip('jqueryui_pipelines');
- if (function_exists('jqueryui_dependances')) {
- $ui_plugins = jqueryui_dependances(array('jquery.ui.datepicker'));
- $theme_css = 'jquery.ui.theme';
- $ui_css_dir = 'css';
- // compatibilité SPIP 3.1 et jQuery UI 1.11
- $version = explode('.', $GLOBALS['spip_version_branche']);
- if ($version[0] > 3 or ($version[0] == 3 and $version[1] > 0)) {
- $theme_css = 'theme';
- $ui_css_dir = 'css/ui';
- }
- array_push($ui_plugins, $theme_css);
- foreach ($ui_plugins as $ui_plug) {
- // compatibilité pour les versions < SPIP 3.2
- if ($version[0] < 3 or ($version[0] == 3 and $version[1] < 2)) {
- $ui_plug_css = find_in_path("$ui_css_dir/$ui_plug.css");
- if (strpos($flux, "$ui_css_dir/$ui_plug.css") === false) {// si pas déjà chargé
- $ins_css .= "\n\n";
- }
- }
- }
- // compatibilité SPIP 3.2 et jQuery UI 1.12
- if ($version[0] == 3 and $version[1] > 1) {
- $ins_css .= "\n\n";
+ // ajout des CSS au début du
+
+ include_spip('inc/filtres');
+ $css = produire_fond_statique('saisies.css');
+ $ins_css = "\n\n";
+ // les css de jquery_ui
+ if (!defined('_JQUERYUI_CSS_NON') or !boolval(_JQUERYUI_CSS_NON)) {
+ include_spip('jqueryui_pipelines');
+ if (function_exists('jqueryui_dependances')) {
+ $ui_plugins = jqueryui_dependances(array('jquery.ui.datepicker'));
+ $theme_css = 'jquery.ui.theme';
+ $ui_css_dir = 'css';
+ // compatibilité SPIP 3.1 et jQuery UI 1.11
+ $version = explode('.', $GLOBALS['spip_version_branche']);
+ if ($version[0] > 3 or ($version[0] == 3 and $version[1] > 0)) {
+ $theme_css = 'theme';
+ $ui_css_dir = 'css/ui';
+ }
+ array_push($ui_plugins, $theme_css);
+ foreach ($ui_plugins as $ui_plug) {
+ // compatibilité pour les versions < SPIP 3.2
+ if ($version[0] < 3 or ($version[0] == 3 and $version[1] < 2)) {
+ $ui_plug_css = find_in_path("$ui_css_dir/$ui_plug.css");
+ if (strpos($flux, "$ui_css_dir/$ui_plug.css") === false) {// si pas déjà chargé
+ $ins_css .= "\n\n";
+ }
}
}
- }
-
- //si on a une saisie de type textarea avec maxlength, on va charger un script
- if (strpos($flux, 'textarea') !==false && strpos($flux, 'maxlength') !==false) {
- // On insère le JS à la fin du
- $pos_head = strpos($flux, '\n";
- $flux = substr_replace($flux, $ins_js, $pos_head, 0);
- }
-
- $flux = substr_replace($flux, $ins_css, $pi, 0);
- $pos_head = strpos($flux, '
- foreach (array('javascript/saisies.js', 'javascript/saisies_afficher_si.js') as $script) {
- $pos_head = strpos($flux, '\n";
- $flux = substr_replace($flux, $ins_js, $pos_head, 0);
+ // compatibilité SPIP 3.2 et jQuery UI 1.12
+ if ($version[0] == 3 and $version[1] > 1) {
+ $ins_css .= "\n\n";
+ }
}
}
+ $flux = $ins_css . $flux;
+ // ajout du JS à la fin du
+
+ $js = produire_fond_statique('javascript/textarea-counter/textarea-counter.js');
+ $ins_js = "\n\n";
+ $ins_js .= afficher_si_definir_fonctions();
+ foreach (array('javascript/saisies.js', 'javascript/saisies_afficher_si.js') as $script) {
+ $js = timestamp(find_in_path($script));
+ $ins_js .= "\n\n";
+ }
+ $flux = $flux . $ins_js;
+
return $flux;
}
-
/**
* Déclarer automatiquement les champs d'un formulaire CVT qui déclare des saisies
*