+SPIP-Core spip-3.0.21 -> spip-3.0.22 10 mars 2016
+-------------------------------------------------------------
+
+r22472 | ben | (dim. 01 nov. 2015) | 3.0.22-dev ! tonton
+r22476 | b_b | (mar. 03 nov. 2015) | report de r22475Fix #3422 : classer les rubriques du picker ajax par rang, puis ordre alpha (maieul)
+r22483 | b_b | (mer. 04 nov. 2015) | report de r22482Fix #2745 : ajouter au htaccess la règle qui permet de servir les favicons des itrucs (commentée par défaut)
+r22491 | marcimat | (jeu. 05 nov. 2015) | Suppression d'un $requeter défini en double (azerttyu, via damien, via exakat.io).+ phpdoc de ces 2 fonctions tant qu'on y est.
+r22512 | marcimat | (ven. 06 nov. 2015) | Report de r22511 (et r22510 !) : Correction suite à un report un peu erronné en r17385 et r17386 (mauvais copier / coller !)
+r22536 | cedric | (mar. 10 nov. 2015) | Report de r22530 : indentation et PHPDoc
+r22537 | cedric | (mar. 10 nov. 2015) | Report de r22531 : type dans PHPDoc (marcimat)
+r22538 | cedric | (mar. 10 nov. 2015) | Report de r22532 : PHPDoc, indentation
+r22539 | cedric | (mar. 10 nov. 2015) | Report de r22534 : Generalisation de la prise en charge de <procure> utilisable par les plugins pour signaler qu'ils fournissent le service d'un autre plugin<procure nom="xxxx" version "1.2.3" />si le procure est dans une version plus recente que le plugin du meme nom, c'est le procure qui l'emportePour les procure, on attribue un faux repertoire compose du repertoire du plugin qui procure suivi de /procure:xxxxce qui permet si besoin de savoir a partir de _DIR_PLUGIN_XXXX que c'est un procure, et qui procure.+ renommage d'une variable ambigue dans plugin_valide_resume
+r22559 | kent1 | (lun. 16 nov. 2015) | Report de r22558Forcer la couleur de ces h6 pour éviter des cas illisibles où le container a pour couleur #fff par exemple
+r22590 | rasta | (mar. 24 nov. 2015) | Backport de r22588 en 3.0 : On ajoute un fallback à la fonction url_de_base() avec d'utiliser adresse_site en dernier recours. Cela permet d'avoir une URL de site dans tous les cas, même quand on ne navigue pas avec un client web classique (par exemple en CLI, mais ça peut être d'autres types d'appel).
+r22592 | marcimat | (mar. 24 nov. 2015) | Report de r22591 : Erreur dans r22534 : $p n'est pas un tableau, mais le préfixe !
+r22600 | erational | (jeu. 26 nov. 2015) | report de https://core.spip.net/projects/spip/repository/revisions/22599
+r22603 | cedric | (dim. 29 nov. 2015) | Report de r22602 : copie_locale prend un 4e argument optionnel pour specifier une taille maxi du telechargement (#3527)
+r22607 | cedric | (dim. 29 nov. 2015) | Report de r22606 : #3588 : n'appeller spip_clear_opcode_cache que lorsqu'on ecrit un fichier PHP (perf issue)
+r22609 | cedric | (dim. 29 nov. 2015) | Report de r22608 : oups : erreur sur r22606, toute ecriture de fichier provoquait un echec
+r22631 | cedric | (dim. 06 déc. 2015) | Fix #3542 : z-index du date-picker superieur a celui des icones et de la navigation principale
+r22633 | cedric | (dim. 06 déc. 2015) | Fix #3542 : probleme de overflow
+r22637 | b_b | (mar. 08 déc. 2015) | report de r22636 / Fix #3614 : affichage des icones en RTL (George)
+r22650 | cedric | (ven. 11 déc. 2015) | Report de r22648 : Fix #3617 : la fonction objet_modifier_champ utilise options[data] pour verifier les conflit, et si non fourni ou nul se rabat sur $_POST pour assurer la continuite de fonctionnement
+r22651 | cedric | (ven. 11 déc. 2015) | Report de r22649 : Fix #3617 : passer $set a objet_modifier_champs pour qu'elle ne detecte les conflits sur $_POST que quand c'est pertinent
+r22655 | cedric | (sam. 12 déc. 2015) | Report de r22652 : Full Path Disclosure dans le phraseur. Lorsqu'un symbole d'avant-boucle n'avait pas son chevron fermant,le compilateur signalait bien l'erreur mais produisait quand même du code PHP,leque étant syntaxiquement faux produisait une erreur PHP. Bonne stratégie: poursuivre la compilation un caractère après le chevron ouvrant de cette avant-boucle pour traquer les éventuelles erreurs plus loi.
+r22656 | cedric | (sam. 12 déc. 2015) | Indentation (soupe d'espaces et de tabulations)
+r22680 | cedric | (mer. 16 déc. 2015) | option peut prendre une valeur 'action' passee aux pipelines pre/post edition
+r22684 | cedric | (ven. 18 déc. 2015) | r22281 et r22282 ont introduit une dependance de la fonction liens_absolus aux fonctions extraire_attribut et inserer_attribut, mais qui ne sont pas forcement chargees. Faire un include_spip au besoin
+r22687 | cedric | (lun. 21 déc. 2015) | coquille affreuse dans r22603 qui cassait copie_locale
+r22693 | denisb | (ven. 01 janv. 2016) | bonne année.
+r22695 | erational | (ven. 01 janv. 2016) | backport SPIP 3.1: éviter le problème avec set_magic_quotes_runtime avec les versions PHP5.3+
+r22698 | cedric | (lun. 04 janv. 2016) | Report de r22697 : utiliser PHP_VERSION_ID plutot que version_compare pour ce code execute a chaque hit (perf issue) + emuler PHP_VERSION_ID si besoin
+r22721 | cedric | (lun. 11 janv. 2016) | Report de r22719 : Perf issue sur les filtres images appliques sur des images distantes en 404 :[(#VAL{http://example.org/fichier_inexistant.png}|image_reduire{64,64})] provoquait 3 operations file_exists sur http://example.org/fichier_inexistant.png.srcque PHP interprete en faisant 3 hits http sur le fichier sauf si PHP bloque ce type d'operation.
+r22781 | b_b | (mar. 02 févr. 2016) | report de r22779 : réparer le lien d'accès rapide vers la recherche (cf #3634)
+r22803 | james | (sam. 06 févr. 2016) | report @22801: éviter des warning dans les logs (Camille Sauvage)
+r22806 | james | (sam. 06 févr. 2016) | report de r22805
+r22816 | james | (mar. 09 févr. 2016) | report r22814
+r22820 | james | (mar. 09 févr. 2016) | report r22818
+r22824 | marcimat | (mer. 10 févr. 2016) | Report de r22822 : Le cnx doit être de la même forme dans tous les cas de retour, avec ou sans le login trouvé dans le formulaire de login. Clos https://core.spip.net/issues/3690 (Stéph R).
+r22834 | marcimat | (dim. 14 févr. 2016) | Report de r22833 : Coquille sur un log.
+r22840 | cedric | (jeu. 18 févr. 2016) | Catcher les erreurs de eval(), ce qui permet de generer une erreur squelette propre avec le nom du squelette qui a genere l'erreur, information qui manquait cruellement. Les utilisatateurs non admin ne voient pas l'erreur, et on genere un commentaire html a la place du resultat
+r22841 | cedric | (jeu. 18 févr. 2016) | Suite de r22840 : on expose le code PHP du squelette qui fait l'erreur d'eval, avec numerotation des
+r22865 | b_b | (ven. 26 févr. 2016) | report de r22863Fix #3660 : éviter de retomber sur _MEMORY_LIMIT_MIN quand memory_limit est défini à -1 dans php.ini
+r22874 | rasta | (jeu. 03 mars 2016) | Juste des tabulations et espacements, pour y voir plus clair et ne pas mélanger avec des vraies modifs.
+r22875 | rasta | (ven. 04 mars 2016) | Déplantage de la balise #RANG quand on a déclaré autre chose qu'un simple champ pour le titre (par exemple une expression avec fonctions et virgules).On garde exactement le même fonctionnement qu'avant avec un "AS titre_rang" rajouté. Mais on fait deux tests au lieu d'un seul :- d'abord on cherche le titre en se disant que "lang" est défini AVANT- et si on ne trouve pas, là on prend depuis le débutMais dans les deux cas, vu que c'est séparé en deux, et qu'on cherche "lang" explicitement et pas une virgule toute seule : on peut donc prendre tout caractère pour le titre, y compris les virgules qu'il y aurait dans des fonctions.Cela gère donc bien tous les cas, enfin de toute façon plus de cas qu'avant.
+r22885 | rasta | (mar. 08 mars 2016) | Backport de #22884 : échapper les apostrophes (quote simple) dans les appels javascript.
+r22888 | rasta | (mar. 08 mars 2016) | Backport de r22887 : Pour le javascript on fait un plus brutal "textebrut", là au moins ça marche.
+r22901 | cedric | (jeu. 10 mars 2016) | Report de r22899 : Mise a jour de la liste des bots : Moreover|FunWebProducts|facebook|hootsuite|MetaURI|flipboard sont tous des bots
+r22903 | cedric | (jeu. 10 mars 2016) | Report de r22872 : Fix #3680 : on change le format du contexte ajax pour pouvoir verifier la cle de signature du contexte avant de deserializer, ce qui permet de faire confiance au contenu
+r22909 | cedric | (jeu. 10 mars 2016) | un var_isbot pour permettre le monitoring par robot (monitoring de la disponibilite user/robot)+ mise a jour de la liste des robots
+r22910 | cedric | (jeu. 10 mars 2016) | un filtre filtrer_entites
+
+SPIP-plugins-dist spip-3.0.21 -> spip-3.0.22 10 mars 2016
+-------------------------------------------------------------
+
+r92729 | marcimat | (sam. 07 nov. 2015) | Report de r92728: Il manquait le préfixe sur l'appel d'une chaine de langue.
+r92931 | real3t | (sam. 14 nov. 2015) | Ajout du moteur Lilo pour les statistiques
+r92992 | cedric | (mer. 18 nov. 2015) | Robustesse de la detection du titre qui pouichait quand la balise title etait sur plusieurs (contexte.com)
+r92995 | cedric | (mer. 18 nov. 2015) | On etend la prise en charge de _SYNDICATION_DEREFERENCER_URL a tout flux en verifiant que les URLs syndiquees ne sont pas des redirections, et en recuperant l'URL finale le cas echeant
+r92996 | cedric | (mer. 18 nov. 2015) | quand syndication=non mais qu'il y a des articles, afficher la liste en plus du bouton pour purger, car sinon on ne sait pas ce qu'on purge
+r93070 | eric | (sam. 21 nov. 2015) | Report des initialisations de certaines variables de la fonction printWordWrapped
+r93160 | guytarr | (mer. 25 nov. 2015) | report de [93159] (coquille)
+r93278 | cedric | (sam. 28 nov. 2015) | Version 1.5.5 de CSSTidy (bugfix font shorthand avec font-family:inherit)
+r93285 | cedric | (dim. 29 nov. 2015) | Report de r93284 : Fix https://core.spip.net/issues/3527 : accepter les paquets jusqu'a 64Mo, personalisable par la constante _SVP_PAQUET_MAX_SIZE
+r93407 | cedric | (dim. 06 déc. 2015) | Report de r93406 : Fix https://core.spip.net/issues/3571 : ne pas risquer que les fonctions de substitution cache_(get|set) du plugin soient utilisees par ailleurs car elles ne sont pas concues pour cela. On simplifie donc l'approche en les renommant et en les chargeant de deleguer aux fonctions de memoization si presentes
+r93426 | cedric | (lun. 07 déc. 2015) | bugfix sur les URLs des pages uniques (id_parent=-1) : on ne pouvait pas les supprimer, et leur id_parent les faisait passer devant une rubrique racine dans une recherche d'URL
+r93430 | cedric | (lun. 07 déc. 2015) | Utiliser partout autoriser(modifierurl) au lieu de autoriser(modifier) car cette derniere repond false quand l'objet n'existe plus en base, et dans ce cas precis on veut pouvoir supprimer l'URLautoriser(modifierurl) verifie donc si l'objet existe encore en base et dans le cas contraire on s'en remet a autoriser(administrer,url)
+r93499 | pierre | (mer. 09 déc. 2015) | Espaces insécables
+r93500 | pierre | (mer. 09 déc. 2015) | Annuler le commit précédent sur les espaces insécables.C'est probablement sur la chaine de langue qu'il faut intervenir.Elle est dans ecrire_fr.php, ne faudrait-il pas la déplacer dans le plugin forum texte_statut_publiestexte_statut_attente_validation?
+r93710 | cedric | (mer. 16 déc. 2015) | Un hreflang sur les articles syndiques qui ne sont pas dans la langue courante
+r93711 | cedric | (mer. 16 déc. 2015) | utiliser objet_modifier_champs plutot que sql_updateq, cela permet de passer par les pipelines pre/post edition
+r93712 | cedric | (mer. 16 déc. 2015) | passer l'action 'syndiquer' a objet_modifier_champs
+r93713 | cedric | (mer. 16 déc. 2015) | version
+r93746 | erational | (jeu. 17 déc. 2015) | Le tri par défaut doit être en multi titre pour respecter la langue(report de http://zone.spip.org/trac/spip-zone/changeset/93745 )
+r94397 | denisb | (ven. 01 janv. 2016) | bonne année.
+r95237 | Francky | (ven. 19 févr. 2016) | Ne sont que pour spip 3.0, ils ont une autre version pour spip 3.1
+r95523 | b_b | (ven. 26 févr. 2016) | quelques pétouilles pour ie cf https://core.spip.net/issues/3650
+r95524 | b_b | (ven. 26 févr. 2016) | encore des CDATA à échapper cf https://core.spip.net/issues/3650pour plus d'infos sur les différentes syntaxes voir http://javascript.about.com/library/blxhtml.htm
+r95651 | b_b | (mar. 01 mars 2016) | report de r85647 cf https://core.spip.net/issues/2283
+r95776 | cedric | (sam. 05 mars 2016) | Eviter une notice
+
SPIP-Core spip-3.0.20 -> spip-3.0.21 31 octobre 2015
-------------------------------------------------------------
SPIP-Core spip-3.0.10 -> spip-3.0.11 09 août 2013
-------------------------------------------------------------
-r20605 | ben | (lun 27 mai 2013) | prenons de bonnes habitudes : dès qu'une release est faite, on passe en dev pour ceux/celles qui utilisent svn (eric)
+r20605 | ben | (lun 27 mai 2013) | prenons de bonnes habitudes : dès qu'une release est faite, on passe en dev pour ceux/celles qui utilisent svn (eric)
r20606 | cedric | (lun 27 mai 2013) | Ferme #2860 : appliquer les règles typographiques de la langue de l'article sur son texte (et son titre) dans l'espace privé.Pour cela, on reforme changer_typo() qui ne renvoit plus rien, et annule la dérogation de lang_typo quand on lui passe une chaine vide.
r20613 | cedric | (jeu 30 mai 2013) | Report adapté de r20611, et retour sur r20576 : tester_statut_inscription() revient a son role initial qui est de tester le mode fourni ou de retourner le meilleur mode possible si aucun mode n'est fourni lors de l'inscription. Il accepte aussi un id en second argument, comme c'était le cas en 2.1, non usité par défaut, mais qui peut l'être si passé au #FORMULAIRE_INSCRIPTIONtester_config() est rebranché sur la fonction tester_statut_inscription()
r20640 | cedric | (lun 10 jun 2013) | un filtre liens_nofollow qui ajoute un rel="nofollow" à tous les liens du texte passé en argument
SPIP-core spip-3.0.4 -> spip-3.0.5
----------------------------------
+---------------------------------
r19786 | cedric | 2012-08-02 14:35:20 | Complement a r19775 : explications et optimisation (il faut en fait doubler la condition objet='xxx' pour être exact et optimisé)
r19794 | cedric | 2012-08-05 00:02:49 | eviter une notice
r19897 | cedric | 2012-09-11 12:56:18 | Dans une requete HEAD renvoyer le vrai en-tête. Pour cela on est bien obligé de calculer toute la page, mais on coupe la connexion après les entête http.On perd donc la rapidité de calcul des requetes HEAD au profit de leur exactitude.Dans la mesure ou HEAD représente en général moins de 1% des requetes (voire de l'ordre de 2/1000 sur un echantillon de sites en production) la perte en performance serveur est négligeable (d'autant plus qu'une réponse 200 a toute les chances de générer une requete complète à suivre).A contrario, en cas de soucis, ou pour analyser une page ou le comportement de SPIP, avoir une réponse pertinente sur HEAD est plus utile. Et la page est en cache pour l'éventuelle requete complète qui suit.
r19901 | marcimat | 2012-09-12 11:15:21 | Report de r19900 : classes lat sur les colonnes des exec php
-plugins-dist spip-3.0.4 -> spip-3.0.5
----------------------------------
+plugins-dist spip-3.0.4 -> spip-3.0.5
+---------------------------------
r64570 | yffic | 2012-08-07 19:46:04 | Petite précision sur le message d'erreur en cas de répertoire lib inexistant
r64787 | kent1 | 2012-08-14 11:34:43 | un peu de documentation
* ------------------
*/
-define('_ECRAN_SECURITE', '1.2.2'); // 2014-12-01
+define('_ECRAN_SECURITE', '1.2.4'); // 2016-03-10
/*
* Documentation : http://www.spip.net/fr_article4200.html
if (isset($_GET['test_ecran_securite']))
$ecran_securite_raison = 'test '._ECRAN_SECURITE;
+/*
+ * Monitoring
+ * var_isbot=0 peut etre utilise par un bot de monitoring pour surveiller la disponibilite d'un site vu par les users
+ * var_isbot=1 peut etre utilise pour monitorer la disponibilite pour les bots (sujets a 503 de delestage si
+ * le load depasse ECRAN_SECURITE_LOAD)
+ */
+if (!defined('_IS_BOT') and isset($_GET['var_isbot']))
+ define('_IS_BOT',$_GET['var_isbot']?true:false);
+
/*
* Détecteur de robot d'indexation
*/
if (!defined('_IS_BOT'))
define('_IS_BOT',
isset($_SERVER['HTTP_USER_AGENT'])
- AND preg_match(
+ and preg_match(
// mots generiques
',bot|slurp|crawler|spider|webvac|yandex|'
// MSIE 6.0 est un botnet 99,9% du temps, on traite donc ce USER_AGENT comme un bot
. 'MSIE 6\.0|'
// UA plus cibles
- . '80legs|accoona|AltaVista|ASPSeek|Baidu|Charlotte|EC2LinkFinder|eStyle|Google|Genieo|INA dlweb|InfegyAtlas|Java VM|LiteFinder|Lycos|Rambler|Scooter|ScrubbyBloglines|Yahoo|Yeti'
- . ',i',(string) $_SERVER['HTTP_USER_AGENT'])
+ . '80legs|accoona|AltaVista|ASPSeek|Baidu|Charlotte|EC2LinkFinder|eStyle|facebook|flipboard|hootsuite|FunWebProducts|Google|Genieo|INA dlweb|InfegyAtlas|Java VM|LiteFinder|Lycos|MetaURI|Moreover|Rambler|Scooter|ScrubbyBloglines|Yahoo|Yeti'
+ . ',i', (string) $_SERVER['HTTP_USER_AGENT'])
);
/*
* (id_base est une variable de la config des widgets de WordPress)
*/
foreach ($_GET as $var => $val)
- if ($_GET[$var] AND strncmp($var,"id_",3)==0
- AND !in_array($var, array('id_table','id_base')))
- $_GET[$var] = is_array($_GET[$var])?@array_map('intval',$_GET[$var]):intval($_GET[$var]);
+ if ($_GET[$var] and strncmp($var, "id_", 3) == 0
+ and !in_array($var, array('id_table', 'id_base')))
+ $_GET[$var] = is_array($_GET[$var])?@array_map('intval', $_GET[$var]):intval($_GET[$var]);
foreach ($_POST as $var => $val)
- if ($_POST[$var] AND strncmp($var,"id_",3)==0
- AND !in_array($var, array('id_table','id_base')))
- $_POST[$var] = is_array($_POST[$var])?@array_map('intval',$_POST[$var]):intval($_POST[$var]);
+ if ($_POST[$var] and strncmp($var, "id_", 3) == 0
+ and !in_array($var, array('id_table', 'id_base')))
+ $_POST[$var] = is_array($_POST[$var])?@array_map('intval', $_POST[$var]):intval($_POST[$var]);
foreach ($GLOBALS as $var => $val)
- if ($GLOBALS[$var] AND strncmp($var,"id_",3)==0
- AND !in_array($var, array('id_table','id_base')))
- $GLOBALS[$var] = is_array($GLOBALS[$var])?@array_map('intval',$GLOBALS[$var]):intval($GLOBALS[$var]);
+ if ($GLOBALS[$var] and strncmp($var, "id_", 3) == 0
+ and !in_array($var, array('id_table', 'id_base')))
+ $GLOBALS[$var] = is_array($GLOBALS[$var])?@array_map('intval', $GLOBALS[$var]):intval($GLOBALS[$var]);
/*
* Interdit la variable $cjpeg_command, qui était utilisée sans
* précaution dans certaines versions de dev (1.8b2 -> 1.8b5)
*/
-$cjpeg_command='';
+$cjpeg_command = '';
/*
* Contrôle de quelques variables (XSS)
*/
foreach(array('lang', 'var_recherche', 'aide', 'var_lang_r', 'lang_r', 'var_ajax_ancre') as $var) {
if (isset($_GET[$var]))
- $_REQUEST[$var] = $GLOBALS[$var] = $_GET[$var] = preg_replace(',[^\w\,/#&;-]+,',' ',(string)$_GET[$var]);
+ $_REQUEST[$var] = $GLOBALS[$var] = $_GET[$var] = preg_replace(',[^\w\,/#&;-]+,', ' ', (string)$_GET[$var]);
if (isset($_POST[$var]))
- $_REQUEST[$var] = $GLOBALS[$var] = $_POST[$var] = preg_replace(',[^\w\,/#&;-]+,',' ',(string)$_POST[$var]);
+ $_REQUEST[$var] = $GLOBALS[$var] = $_POST[$var] = preg_replace(',[^\w\,/#&;-]+,', ' ', (string)$_POST[$var]);
}
/*
/*
* Pas d'inscription abusive
*/
-if (isset($_REQUEST['mode']) AND isset($_REQUEST['page'])
-AND !in_array($_REQUEST['mode'],array("6forum","1comite"))
-AND $_REQUEST['page'] == "identifiants")
+if (isset($_REQUEST['mode']) and isset($_REQUEST['page'])
+and !in_array($_REQUEST['mode'], array("6forum", "1comite"))
+and $_REQUEST['page'] == "identifiants")
$ecran_securite_raison = "identifiants";
/*
* Agenda joue à l'injection php
*/
if (isset($_REQUEST['partie_cal'])
-AND $_REQUEST['partie_cal'] !== htmlentities((string)$_REQUEST['partie_cal']))
+and $_REQUEST['partie_cal'] !== htmlentities((string)$_REQUEST['partie_cal']))
$ecran_securite_raison = "partie_cal";
if (isset($_REQUEST['echelle'])
-AND $_REQUEST['echelle'] !== htmlentities((string)$_REQUEST['echelle']))
+and $_REQUEST['echelle'] !== htmlentities((string)$_REQUEST['echelle']))
$ecran_securite_raison = "echelle";
/*
* Espace privé
*/
if (isset($_REQUEST['exec'])
-AND !preg_match(',^[\w-]+$,', (string)$_REQUEST['exec']))
+and !preg_match(',^[\w-]+$,', (string)$_REQUEST['exec']))
$ecran_securite_raison = "exec";
if (isset($_REQUEST['cherche_auteur'])
-AND preg_match(',[<],', (string)$_REQUEST['cherche_auteur']))
+and preg_match(',[<],', (string)$_REQUEST['cherche_auteur']))
$ecran_securite_raison = "cherche_auteur";
if (isset($_REQUEST['exec'])
-AND $_REQUEST['exec'] == 'auteurs'
-AND preg_match(',[<],', (string)$_REQUEST['recherche']))
+and $_REQUEST['exec'] == 'auteurs'
+and preg_match(',[<],', (string)$_REQUEST['recherche']))
$ecran_securite_raison = "recherche";
if (isset($_REQUEST['action'])
-AND $_REQUEST['action'] == 'configurer') {
+and $_REQUEST['action'] == 'configurer') {
if (@file_exists('inc_version.php')
- OR @file_exists('ecrire/inc_version.php')) {
+ or @file_exists('ecrire/inc_version.php')) {
function action_configurer() {
include_spip('inc/autoriser');
if(!autoriser('configurer', _request('configuration'))) {
* Bloque les requêtes fond=formulaire_
*/
if (isset($_REQUEST['fond'])
-AND preg_match(',^formulaire_,i', $_REQUEST['fond']))
+and preg_match(',^formulaire_,i', $_REQUEST['fond']))
$ecran_securite_raison = "fond=formulaire_";
/*
* les agenda
* les paginations entremélées
*/
-if (_IS_BOT AND (
- (isset($_REQUEST['echelle']) AND isset($_REQUEST['partie_cal']) AND isset($_REQUEST['type']))
- OR (strpos((string)$_SERVER['REQUEST_URI'],'debut_') AND preg_match(',[?&]debut_.*&debut_,', (string)$_SERVER['REQUEST_URI']))
+if (_IS_BOT and (
+ (isset($_REQUEST['echelle']) and isset($_REQUEST['partie_cal']) and isset($_REQUEST['type']))
+ or (strpos((string)$_SERVER['REQUEST_URI'], 'debut_') and preg_match(',[?&]debut_.*&debut_,', (string)$_SERVER['REQUEST_URI']))
)
)
$ecran_securite_raison = "robot agenda/double pagination";
* Bloque un XSS sur une page inexistante
*/
if (isset($_REQUEST['page'])) {
- if ($_REQUEST['page']=='test_cfg')
+ if ($_REQUEST['page'] == 'test_cfg')
$ecran_securite_raison = "test_cfg";
if ($_REQUEST['page'] !== htmlspecialchars((string)$_REQUEST['page']))
$ecran_securite_raison = "xsspage";
if ($_REQUEST['page'] == '404'
- AND isset($_REQUEST['erreur']))
+ and isset($_REQUEST['erreur']))
$ecran_securite_raison = "xss404";
}
* XSS par array
*/
foreach (array('var_login') as $var)
-if (isset($_REQUEST[$var]) AND is_array($_REQUEST[$var]))
+if (isset($_REQUEST[$var]) and is_array($_REQUEST[$var]))
$ecran_securite_raison = "xss ".$var;
/*
*/
if (!function_exists('tmp_lkojfghx')) {
function tmp_lkojfghx() {}
- function tmp_lkojfghx2($a=0, $b=0, $c=0, $d=0) {
+ function tmp_lkojfghx2($a = 0, $b = 0, $c = 0, $d = 0) {
// si jamais on est arrivé ici sur une erreur php
// et qu'un autre gestionnaire d'erreur est défini, l'appeller
- if ($b&&$GLOBALS['tmp_xhgfjokl'])
- call_user_func($GLOBALS['tmp_xhgfjokl'],$a,$b,$c,$d);
+ if ($b && $GLOBALS['tmp_xhgfjokl'])
+ call_user_func($GLOBALS['tmp_xhgfjokl'], $a, $b, $c, $d);
}
}
if (isset($_POST['tmp_lkojfghx3']))
* Sauvegarde mal securisée < 2.0.9
*/
if (isset($_REQUEST['nom_sauvegarde'])
-AND strstr((string)$_REQUEST['nom_sauvegarde'], '/'))
+and strstr((string)$_REQUEST['nom_sauvegarde'], '/'))
$ecran_securite_raison = 'nom_sauvegarde manipulee';
if (isset($_REQUEST['znom_sauvegarde'])
-AND strstr((string)$_REQUEST['znom_sauvegarde'], '/'))
+and strstr((string)$_REQUEST['znom_sauvegarde'], '/'))
$ecran_securite_raison = 'znom_sauvegarde manipulee';
* op permet des inclusions arbitraires ;
* on vérifie 'page' pour ne pas bloquer ... drupal
*/
-if (isset($_REQUEST['op']) AND isset($_REQUEST['page'])
-AND $_REQUEST['op'] !== preg_replace('/[^\-\w]/', '', $_REQUEST['op']))
+if (isset($_REQUEST['op']) and isset($_REQUEST['page'])
+and $_REQUEST['op'] !== preg_replace('/[^\-\w]/', '', $_REQUEST['op']))
$ecran_securite_raison = 'op';
/*
* Forms & Table ne se méfiait pas assez des uploads de fichiers
*/
if (count($_FILES)){
- foreach($_FILES as $k=>$v){
- if (preg_match(',^fichier_\d+$,',$k)
- AND preg_match(',\.php,i',$v['name']))
+ foreach($_FILES as $k => $v){
+ if (preg_match(',^fichier_\d+$,', $k)
+ and preg_match(',\.php,i', $v['name']))
unset($_FILES[$k]);
}
}
* et Contact trop laxiste avec une variable externe
* on bloque pas le post pour eviter de perdre des donnees mais on unset la variable et c'est tout
*/
-if (isset($_REQUEST['pj_enregistrees_nom']) AND $_REQUEST['pj_enregistrees_nom']){
+if (isset($_REQUEST['pj_enregistrees_nom']) and $_REQUEST['pj_enregistrees_nom']){
unset($_REQUEST['pj_enregistrees_nom']);
unset($_GET['pj_enregistrees_nom']);
unset($_POST['pj_enregistrees_nom']);
* reinstall=oui un peu trop permissif
*/
if (isset($_REQUEST['reinstall'])
-AND $_REQUEST['reinstall'] == 'oui')
+and $_REQUEST['reinstall'] == 'oui')
$ecran_securite_raison = 'reinstall=oui';
/*
/*
* Réinjection des clés en html dans l'admin r19561
*/
-if (strpos($_SERVER['REQUEST_URI'],"ecrire/")!==false){
- $zzzz=implode("",array_keys($_REQUEST));
- if (strlen($zzzz)!=strcspn($zzzz,'<>"\''))
+if (strpos($_SERVER['REQUEST_URI'], "ecrire/") !== false){
+ $zzzz = implode("", array_keys($_REQUEST));
+ if (strlen($zzzz) != strcspn($zzzz, '<>"\''))
$ecran_securite_raison = 'Cle incorrecte en $_REQUEST';
}
* Injection par connect
*/
if (isset($_REQUEST['connect'])
- AND
+ and
// cas qui permettent de sortir d'un commentaire PHP
- (strpos($_REQUEST['connect'], "?")!==false
- OR strpos($_REQUEST['connect'], "<")!==false
- OR strpos($_REQUEST['connect'], ">")!==false
- OR strpos($_REQUEST['connect'], "\n")!==false
- OR strpos($_REQUEST['connect'], "\r")!==false)
+ (strpos($_REQUEST['connect'], "?") !== false
+ or strpos($_REQUEST['connect'], "<") !== false
+ or strpos($_REQUEST['connect'], ">") !== false
+ or strpos($_REQUEST['connect'], "\n") !== false
+ or strpos($_REQUEST['connect'], "\r") !== false)
) {
$ecran_securite_raison = "malformed connect argument";
}
die("<html><title>Error 403: Forbidden</title><body><h1>Error 403</h1><p>You are not authorized to view this page ($ecran_securite_raison)</p></body></html>");
}
+/*
+ * Un filtre filtrer_entites securise
+ */
+if (!function_exists('filtre_filtrer_entites_dist')) {
+ function filtre_filtrer_entites_dist($t) {
+ include_spip('inc/texte');
+ return interdire_scripts(filtrer_entites($t));
+ }
+}
+
+
/*
* Fin sécurité
*/
if (
defined('_ECRAN_SECURITE_LOAD')
- AND _ECRAN_SECURITE_LOAD>0
- AND _IS_BOT
- AND $_SERVER['REQUEST_METHOD'] === 'GET'
- AND (
+ and _ECRAN_SECURITE_LOAD > 0
+ and _IS_BOT
+ and $_SERVER['REQUEST_METHOD'] === 'GET'
+ and (
(function_exists('sys_getloadavg')
- AND $load = sys_getloadavg()
- AND is_array($load)
- AND $load = array_shift($load)
+ and $load = sys_getloadavg()
+ and is_array($load)
+ and $load = array_shift($load)
)
- OR
+ or
(@is_readable('/proc/loadavg')
- AND $load = file_get_contents('/proc/loadavg')
- AND $load = floatval($load)
+ and $load = file_get_contents('/proc/loadavg')
+ and $load = floatval($load)
)
)
- AND $load > _ECRAN_SECURITE_LOAD // eviter l'evaluation suivante si de toute facon le load est inferieur a la limite
- AND rand(0, $load*$load) > _ECRAN_SECURITE_LOAD*_ECRAN_SECURITE_LOAD
+ and $load > _ECRAN_SECURITE_LOAD // eviter l'evaluation suivante si de toute facon le load est inferieur a la limite
+ and rand(0, $load * $load) > _ECRAN_SECURITE_LOAD * _ECRAN_SECURITE_LOAD
) {
header("HTTP/1.0 503 Service Unavailable");
header("Retry-After: 300");
header("Content-Type: text/html");
die("<html><title>Status 503: Site temporarily unavailable</title><body><h1>Status 503</h1><p>Site temporarily unavailable (load average $load)</p></body></html>");
}
-
-
-?>
\ No newline at end of file
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
if ($err = objet_modifier_champs('article', $id_article,
array(
+ 'data' => $set,
'nonvide' => array('titre' => _T('info_nouvel_article')." "._T('info_numero_abbreviation').$id_article),
'invalideur' => $invalideur,
'indexation' => $indexation,
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
if ($err = objet_modifier_champs('auteur', $id_auteur,
array(
+ 'data' => $set,
'nonvide' => array('nom' => _T('ecrire:item_nouvel_auteur'))
),
$c))
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
if ($err = objet_modifier_champs($objet, $id,
array(
+ 'data' => $set,
'nonvide' => '',
'invalideur' => $invalideur,
'indexation' => $indexation,
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
if ($err = objet_modifier_champs('rubrique', $id_rubrique,
array(
+ 'data' => $set,
'nonvide' => array('titre' => _T('titre_nouvelle_rubrique')." "._T('info_numero_abbreviation').$id_rubrique)
),
$c))
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
if (!$ldap = auth_ldap_connect($serveur))
return '';
- $ldap_link = $ldap['link'];
- $ldap_base = $ldap['base'];
- $desc = $ldap['attributes'] ? $ldap['attributes'] : $GLOBALS['ldap_attributes'] ;
+ $ldap_link = isset($ldap['link']) ? $ldap['link'] : null;
+ $ldap_base = isset($ldap['base']) ? $ldap['base'] : null;
+ $desc = isset($ldap['attributes']) && $ldap['attributes'] ? $ldap['attributes'] : $GLOBALS['ldap_attributes'] ;
$logins = is_array($desc['login']) ? $desc['login'] : array($desc['login']);
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/* *************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
* 'force' - charger toujours (mettre a jour)
* @param string $local
* permet de specifier le nom du fichier local (stockage d'un cache par exemple, et non document IMG)
+ * @param int $taille_max
+ * taille maxi de la copie local, par defaut _COPIE_LOCALE_MAX_SIZE
* @return bool|string
*/
-function copie_locale($source, $mode='auto', $local = null) {
+function copie_locale($source, $mode='auto', $local=null, $taille_max=null){
// si c'est la protection de soi-meme, retourner le path
if ($mode !== 'force' AND preg_match(_REGEXP_COPIE_LOCALE, $source, $match)) {
// passer par un fichier temporaire unique pour gerer les echecs en cours de recuperation
// et des eventuelles recuperations concurantes
include_spip("inc/acces");
- $res = recuperer_page($source, $localrac, false, _COPIE_LOCALE_MAX_SIZE, '', '', false, $t ? filemtime($localrac) : '');
+ if (!$taille_max) $taille_max = _COPIE_LOCALE_MAX_SIZE;
+ $res = recuperer_page($source, $localrac, false, $taille_max, '', '', false, $t ? filemtime($localrac) : '');
if (!$res) {
if (!$t) // si $t c'est sans doute juste un not-modified-since qui fait renvoyer false
spip_log("copie_locale : Echec recuperation $source sur $localrac",_LOG_INFO_IMPORTANTE);
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
return $texte;
}
+/**
+ * Version securisee de filtrer_entites
+ * @param string $t
+ * @return string
+ */
+if (!function_exists('filtre_filtrer_entites_dist')) {
+ function filtre_filtrer_entites_dist($t) {
+ include_spip('inc/texte');
+ return interdire_scripts(filtrer_entites($t));
+ }
+}
+
+
// caracteres de controle - http://www.w3.org/TR/REC-xml/#charsets
// http://doc.spip.org/@supprimer_caracteres_illegaux
function supprimer_caracteres_illegaux($texte) {
static $to = null;
if (is_array($texte)) {
- return array_map('corriger_caracteres_windows', $texte);
+ return array_map('supprimer_caracteres_illegaux', $texte);
}
if (!$to) $to = str_repeat('-', strlen($from));
if (!function_exists('calculer_cle_action'))
include_spip("inc/securiser_action");
- $cle = calculer_cle_action($form.(is_array($c)?serialize($c):$c));
- $c = serialize(array($c,$cle));
+
+ $c = serialize($c);
+ $cle = calculer_cle_action($form . $c);
+ $c = "$cle:$c";
// on ne stocke pas les contextes dans des fichiers caches
// par defaut, sauf si cette configuration a ete forcee
if (function_exists('gzdeflate') && function_exists('gzinflate'))
$c = @gzinflate($c);
}
- list($env, $cle) = @unserialize($c);
- if ($cle == calculer_cle_action($form.(is_array($env)?serialize($env):$env)))
- return $env;
+ // extraire la signature en debut de contexte
+ // et la verifier avant de deserializer
+ // format : signature:donneesserializees
+ if ($p = strpos($c,":")){
+ $cle = substr($c,0,$p);
+ $c = substr($c,$p+1);
+
+ if ($cle == calculer_cle_action($form . $c)) {
+ $env = @unserialize($c);
+ return $env;
+ }
+ }
+
return false;
}
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/* *************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
function reconstruire_image_intermediaire($fichier_manquant){
$reconstruire = array();
$fichier = $fichier_manquant;
- while (
- !@file_exists($fichier)
+ while (strpos($fichier,"://")===false
+ and !@file_exists($fichier)
AND lire_fichier($src = "$fichier.src",$source)
AND $valeurs=unserialize($source)
AND ($fichier = $valeurs['fichier']) # l'origine est connue (on ne verifie pas son existence, qu'importe ...)
ramasse_miettes($fichier_manquant);
}
-// http://doc.spip.org/@ramasse_miettes
-function ramasse_miettes($fichier){
- if (!lire_fichier($src = "$fichier.src",$source)
- OR !$valeurs=unserialize($source)) return;
+/**
+ * Indique qu'un fichier d'image calculé est à conserver
+ *
+ * Permet de rendre une image définitive et de supprimer les images
+ * intermédiaires à son calcul.
+ *
+ * Supprime le fichier de contrôle de l’image cible (le $fichier.src)
+ * ce qui indique que l'image est définitive.
+ *
+ * Remonte ensuite la chaîne des fichiers de contrôle pour supprimer
+ * les images temporaires (mais laisse les fichiers de contrôle permettant
+ * de les reconstruire).
+ *
+ * @param string $fichier
+ * Chemin du fichier d'image calculé
+ **/
+function ramasse_miettes($fichier) {
+ if (strpos($fichier,"://")!==false
+ or !lire_fichier($src = "$fichier.src", $source)
+ or !$valeurs = unserialize($source)
+ ) {
+ return;
+ }
spip_unlink($src); # on supprime la reference a sa source pour marquer cette image comme non intermediaire
while (
($fichier = $valeurs['fichier']) # l'origine est connue (on ne verifie pas son existence, qu'importe ...)
if (strlen($fichier) < 1)
$fichier = $img;
# si jamais le fichier final n'a pas ete calcule car suppose temporaire
- if (!@file_exists($fichier))
+ # et qu'il ne s'agit pas d'une URL
+ if (strpos($fichier,"://")===false and !@file_exists($fichier)) {
reconstruire_image_intermediaire($fichier);
+ }
ramasse_miettes($fichier);
return $img; // on ne change rien
}
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
function liens_absolus($texte, $base='') {
if (preg_match_all(',(<(a|link|image|img|script)\s[^<>]*(href|src)=[^<>]*>),imsS',
$texte, $liens, PREG_SET_ORDER)) {
+ if (!function_exists('extraire_attribut')) {
+ include_spip('inc/filtres');
+ }
foreach ($liens as $lien) {
foreach(array('href', 'src') as $attr) {
$href = extraire_attribut($lien[0], $attr);
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
// liberer le verrou et fermer le fichier
@chmod($fichier, _SPIP_CHMOD & 0666);
if ($ok) {
- spip_clear_opcode_cache(realpath($fichier));
+ if (strpos($fichier,".php")!==false){
+ spip_clear_opcode_cache(realpath($fichier));
+ }
return $ok;
}
}
@mkdir($path, _SPIP_CHMOD);
@chmod($path, _SPIP_CHMOD);
- $ok = false;
- if ($test = @fopen("$path/dir_test.php", "w")) {
- @fputs($test, '<'.'?php $ok = true; ?'.'>');
- @fclose($test);
- @include("$path/dir_test.php");
- spip_unlink("$path/dir_test.php");
- }
- if ($ok) {
+ if (is_dir($path) && is_writable($path)) {
@touch ("$path/.ok");
spip_log("creation $base$subdir/");
return $baseaff.($dirs[$base.$subdir] = "$subdir/");
if (!_DIR_RESTREINT)
$base = preg_replace(',^' . _DIR_RACINE .',', '',$base);
$base .= $subdir;
- raler_fichier($base . ($test?'/.ok':'/dir_test.php'));
+ raler_fichier($base . '/.plat');
}
spip_log("faux sous-repertoire $base${subdir}");
return $baseaff.($dirs[$base.$subdir] = "${subdir}_");
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
* @param int $id_objet
* Identifiant de l'objet
* @param array $options
- * Toutes les options
+ * array data : tableau des donnees sources utilisees pour la detection de conflit ($_POST sinon fourni ou si nul)
+ * array nonvide : valeur par defaut des champs que l'on ne veut pas vide
+ * string date_modif : champ a mettre a date('Y-m-d H:i:s') s'il y a modif
+ * string invalideur : id de l'invalideur eventuel
+ * array champs : non documente (utilise seulement par inc/rechercher ?)
+ * string action : action realisee, passee aux pipelines pre/post edition (par defaut 'modifier')
+ * bool indexation : deprecie
* @param array|null $c
* Couples champ/valeur à modifier
* @param string $serveur
'id_objet' => $id_objet,
'champs' => isset($options['champs']) ? $options['champs'] : array(), // [doc] c'est quoi ?
'serveur' => $serveur,
- 'action' => 'modifier'
+ 'action' => isset($options['action']) ? $options['action'] : 'modifier'
),
'data' => $champs
)
// Verifier si les mises a jour sont pertinentes, datees, en conflit etc
include_spip('inc/editer');
- $conflits = controler_md5($champs, $_POST, $objet, $id_objet, $serveur);
+ if (!isset($options['data']) OR is_null($options['data'])){
+ $options['data'] = &$_POST;
+ }
+ $conflits = controler_md5($champs, $options['data'], $objet, $id_objet, $serveur);
// cas hypothetique : normalement inc/editer verifie en amont le conflit edition
// et gere l'interface
// ici on ne renvoie donc qu'un messsage d'erreur, au cas ou on y arrive quand meme
'id_objet' => $id_objet,
'champs' => isset($options['champs']) ? $options['champs'] : array(), // [doc] kesako ?
'serveur' => $serveur,
- 'action' => 'modifier'
+ 'action' => isset($options['action']) ? $options['action'] : 'modifier'
),
'data' => $champs
)
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
}
-
-// Construire la liste des infos strictement necessaires aux plugins a activer
-// afin de les memoriser dans une meta pas trop grosse
-// http://doc.spip.org/@liste_plugin_valides
-function liste_plugin_valides($liste_plug, $force = false)
-{
+/**
+ * Construire la liste des infos strictement necessaires aux plugins a activer
+ * afin de les memoriser dans une meta pas trop grosse
+ * http://code.spip.net/@liste_plugin_valides
+ *
+ * @param array $liste_plug
+ * @param bool $force
+ * @return array
+ */
+function liste_plugin_valides($liste_plug, $force = false){
$liste_ext = liste_plugin_files(_DIR_PLUGINS_DIST);
- $get_infos = charger_fonction('get_infos','plugins');
+ $get_infos = charger_fonction('get_infos', 'plugins');
$infos = array(
// lister les extensions qui sont automatiquement actives
'_DIR_PLUGINS_DIST' => $get_infos($liste_ext, $force, _DIR_PLUGINS_DIST),
'_DIR_PLUGINS' => $get_infos($liste_plug, $force, _DIR_PLUGINS)
- );
+ );
// creer une premiere liste non ordonnee mais qui ne retient
// que les plugins valides, et dans leur derniere version en cas de doublon
- $infos['_DIR_RESTREINT'][''] = $get_infos('./',$force,_DIR_RESTREINT);
+ $infos['_DIR_RESTREINT'][''] = $get_infos('./', $force, _DIR_RESTREINT);
$infos['_DIR_RESTREINT']['SPIP']['version'] = $GLOBALS['spip_version_branche'];
$infos['_DIR_RESTREINT']['SPIP']['chemin'] = array();
- $liste_non_classee = array('SPIP'=>array(
+ $liste_non_classee = array('SPIP' => array(
'nom' => 'SPIP',
'etat' => 'stable',
'version' => $GLOBALS['spip_version_branche'],
'dir_type' => '_DIR_RESTREINT',
- 'dir'=> '',
+ 'dir' => '',
)
);
- foreach($liste_ext as $plug){
- if (isset($infos['_DIR_PLUGINS_DIST'][$plug]))
- plugin_valide_resume($liste_non_classee, $plug, $infos, '_DIR_PLUGINS_DIST');
+ foreach ($liste_ext as $plug){
+ if (isset($infos['_DIR_PLUGINS_DIST'][$plug]))
+ plugin_valide_resume($liste_non_classee, $plug, $infos, '_DIR_PLUGINS_DIST');
}
- foreach($liste_plug as $plug) {
- if (isset($infos['_DIR_PLUGINS'][$plug]))
- plugin_valide_resume($liste_non_classee, $plug, $infos, '_DIR_PLUGINS');
+ foreach ($liste_plug as $plug){
+ if (isset($infos['_DIR_PLUGINS'][$plug]))
+ plugin_valide_resume($liste_non_classee, $plug, $infos, '_DIR_PLUGINS');
}
- if (defined('_DIR_PLUGINS_SUPPL') and _DIR_PLUGINS_SUPPL) {
+ if (defined('_DIR_PLUGINS_SUPPL') and _DIR_PLUGINS_SUPPL){
$infos['_DIR_PLUGINS_SUPPL'] = $get_infos($liste_plug, false, _DIR_PLUGINS_SUPPL);
- foreach($liste_plug as $plug) {
+ foreach ($liste_plug as $plug){
if (isset($infos['_DIR_PLUGINS_SUPPL'][$plug]))
plugin_valide_resume($liste_non_classee, $plug, $infos, '_DIR_PLUGINS_SUPPL');
}
}
- // les procure de core.xml sont consideres comme des plugins proposes,
- // mais surchargeables (on peut activer un plugin qui procure ca pour l'ameliorer,
- // donc avec le meme prefixe)
- foreach($infos['_DIR_RESTREINT']['']['procure'] as $procure) {
- $p = strtoupper($procure['nom']);
- if (!isset($liste_non_classee[$p])){
- $procure['etat'] = '?';
- $procure['dir_type'] = '_DIR_RESTREINT';
- $procure['dir'] = '';
- $liste_non_classee[$p] = $procure;
- }
- }
+ plugin_fixer_procure($liste_non_classee, $infos);
return array($infos, $liste_non_classee);
}
-// Ne retenir un plugin que s'il est valide
-// et dans leur plus recente version compatible
-// avec la version presente de SPIP
-
-function plugin_valide_resume(&$liste, $plug, $infos, $dir)
-{
- $i = $infos[$dir][$plug];
+/**
+ * Ne retenir un plugin que s'il est valide
+ * et dans leur plus recente version compatible
+ * avec la version presente de SPIP
+ *
+ * @param array $liste
+ * @param string $plug
+ * @param array $infos
+ * @param string $dir_type
+ */
+function plugin_valide_resume(&$liste, $plug, $infos, $dir_type){
+ $i = $infos[$dir_type][$plug];
if (isset($i['erreur']) AND $i['erreur'])
return;
- if (!plugin_version_compatible($i['compatibilite'], $GLOBALS['spip_version_branche'],'spip'))
+ if (!plugin_version_compatible($i['compatibilite'], $GLOBALS['spip_version_branche'], 'spip'))
return;
$p = strtoupper($i['prefix']);
if (!isset($liste[$p])
- OR spip_version_compare($i['version'],$liste[$p]['version'],'>')) {
+ OR spip_version_compare($i['version'], $liste[$p]['version'], '>')
+ ){
$liste[$p] = array(
'nom' => $i['nom'],
'etat' => $i['etat'],
- 'version'=> $i['version'],
- 'dir'=> $plug,
- 'dir_type' => $dir
- );
+ 'version' => $i['version'],
+ 'dir' => $plug,
+ 'dir_type' => $dir_type
+ );
+ }
+}
+
+/**
+ * Completer la liste des plugins avec les eventuels procure
+ *
+ * les <procure> sont consideres comme des plugins proposes,
+ * mais surchargeables (on peut activer un plugin qui procure ca pour l'ameliorer,
+ * donc avec le meme prefixe, qui sera pris en compte si il a une version plus grande)
+ *
+ * @param array $liste
+ * @param array $infos
+ */
+function plugin_fixer_procure(&$liste, &$infos){
+ foreach($liste as $p=>$resume){
+ $i = $infos[$resume['dir_type']][$resume['dir']];
+ if (isset($i['procure']) AND $i['procure']){
+ foreach($i['procure'] as $procure){
+ $p = strtoupper($procure['nom']);
+ $dir = $resume['dir'];
+ if ($dir) $dir .= "/";
+ $dir .= "procure:".$procure['nom'];
+
+ $procure['etat'] = '?';
+ $procure['dir_type'] = $resume['dir_type'];
+ $procure['dir'] = $dir;
+
+ // si ce plugin n'est pas deja procure, ou dans une version plus ancienne
+ // on ajoute cette version a la liste
+ if (!isset($liste[$p])
+ OR spip_version_compare($procure['version'], $liste[$p]['version'], '>')
+ ){
+ $liste[$p] = $procure;
+
+ // on fournit une information minimale pour ne pas perturber la compilation
+ $infos[$resume['dir_type']][$dir] = array(
+ 'prefix' => $procure['nom'],
+ 'nom' => $procure['nom'],
+ 'etat' => $procure['etat'],
+ 'version' => $procure['version'],
+ 'chemin' => array(),
+ 'necessite' => array(),
+ 'utilise' => array(),
+ 'lib' => array(),
+ 'menu' => array(),
+ 'onglet' => array(),
+ 'procure' => array(),
+ );
+ }
+ }
}
+ }
}
/**
// donc ni sa relecture, ni sa detection
if (!isset($info[$charge])
AND $dir // exclure le cas du plugin "SPIP"
+ AND strpos($dir,":")===false // exclure le cas des procure:
AND file_exists("$dir$plug/paquet.xml") // uniquement pour les paquet.xml
){
if (is_readable("$dir$plug/".($file=$info['prefix']."_".$charge.".php"))){
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
// Fonctions de fabrication des URL des scripts de Spip
//
/**
- * l'URL de base du site, sans se fier a meta(adresse_site) qui
- * peut etre fausse (sites a plusieurs noms d'hotes, deplacements, erreurs)
+ * L'URL de base du site, en priorité sans se fier a meta(adresse_site) qui
+ * peut etre fausse (sites a plusieurs noms d'hotes, deplacements, erreurs).
+ * En dernier recours, lorsqu'on ne trouve rien, on utilise adresse_site comme fallback.
* Note : la globale $profondeur_url doit etre initialisee de maniere a
* indiquer le nombre de sous-repertoires de l'url courante par rapport a la
* racine de SPIP : par exemple, sur ecrire/ elle vaut 1, sur sedna/ 1, et a
OR (isset($_SERVER['HTTPS']) AND
test_valeur_serveur($_SERVER['HTTPS']))
) ? 'https' : 'http';
- # note : HTTP_HOST contient le :port si necessaire
+ // note : HTTP_HOST contient le :port si necessaire
$host = $_SERVER['HTTP_HOST'];
+ // si on n'a pas trouvé d'hôte du tout, en dernier recours on utilise adresse_site comme fallback
+ if (is_null($host) and isset($GLOBALS['meta']['adresse_site'])) {
+ $host = $GLOBALS['meta']['adresse_site'];
+ if ($scheme = parse_url($host, PHP_URL_SCHEME)) {
+ $http = $scheme;
+ $host = str_replace("{$scheme}://", '', $host);
+ }
+ }
if (isset($_SERVER['SERVER_PORT'])
AND $port=$_SERVER['SERVER_PORT']
AND strpos($host,":")==false){
#if (!defined('_SPIP_LOCK_MODE')) define('_SPIP_LOCK_MODE',2); // utiliser le nfslock de spip mais link() est tres souvent interdite
}
+ // PHP_VERSION_ID dispo depuis PHP 5.2.7
+ if (!defined('PHP_VERSION_ID')) {
+ $version = explode('.',PHP_VERSION);
+ define('PHP_VERSION_ID', ($version[0] * 10000 + $version[1] * 100 + $version[2]));
+ }
+
//
// Module de lecture/ecriture/suppression de fichiers utilisant flock()
// (non surchargeable en l'etat ; attention si on utilise include_spip()
spip_desinfecte($_REQUEST);
// Par ailleurs on ne veut pas de magic_quotes au cours de l'execution
- @set_magic_quotes_runtime(0);
+ if (PHP_VERSION_ID<50300) {
+ @set_magic_quotes_runtime(0);
+ }
// Si les variables sont passees en global par le serveur,
// il faut faire quelques verifications de base
// on verifie que la memoire est suffisante pour le compactage css+js pour eviter la page blanche
// il y aura d'autres problemes et l'utilisateur n'ira pas tres loin, mais ce sera plus comprehensible qu'une page blanche
if (test_espace_prive() AND _MEMORY_LIMIT_MIN>8){
- if ($memory = trim(ini_get('memory_limit'))){
+ if ($memory = trim(ini_get('memory_limit')) and $memory != -1) {
$unit = strtolower(substr($memory,strlen($memory/1),1));
switch($unit) {
// Le modifieur 'G' est disponible depuis PHP 5.1.0
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
define('_IS_BOT',
isset($_SERVER['HTTP_USER_AGENT'])
AND preg_match(
- // mots generiques
+ // mots generiques
',bot|slurp|crawler|spider|webvac|yandex|'
+ // MSIE 6.0 est un botnet 99,9% du temps, on traite donc ce USER_AGENT comme un bot
+ . 'MSIE 6\.0|'
// UA plus cibles
- . '80legs|accoona|AltaVista|ASPSeek|Baidu|Charlotte|EC2LinkFinder|eStyle|Google|Genieo|INA dlweb|InfegyAtlas|Java VM|LiteFinder|Lycos|Rambler|Scooter|ScrubbyBloglines|Yahoo|Yeti'
+ . '80legs|accoona|AltaVista|ASPSeek|Baidu|Charlotte|EC2LinkFinder|eStyle|facebook|flipboard|hootsuite|FunWebProducts|Google|Genieo|INA dlweb|InfegyAtlas|Java VM|LiteFinder|Lycos|MetaURI|Moreover|Rambler|Scooter|ScrubbyBloglines|Yahoo|Yeti'
. ',i', (string)$_SERVER['HTTP_USER_AGENT'])
);
}
// pour specifier les versions de SPIP necessaires
// il faut s'en tenir a un nombre de decimales fixe
// ex : 2.0.0, 2.0.0-dev, 2.0.0-beta, 2.0.0-beta2
-$spip_version_branche = "3.0.21";
+$spip_version_branche = "3.0.22";
// version des signatures de fonctions PHP
// (= numero SVN de leur derniere modif cassant la compatibilite et/ou necessitant un recalcul des squelettes)
$spip_version_code = 17873;
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
}
spip_unlink('test');
}
- // Verifier que les valeurs sont correctes
- $f = @fopen($my_dir.'test.php', 'w');
- if ($f) {
- @fputs($f, '<'.'?php $ok = true; ?'.'>');
- @fclose($f);
- @chmod($my_dir.'test.php', $chmod);
- include($my_dir.'test.php');
- }
- spip_unlink($my_dir.'test.php');
- return $ok?$chmod:false;
+ $ok = is_dir($my_dir) && is_writable($my_dir);
+
+ return $ok ? $chmod : false;
}
//
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
<paquet
prefix="spip"
categorie="outil"
- version="3.0.21"
+ version="3.0.22"
etat="stable"
compatibilite="];["
schema="19268"
documentation="http://www.spip.net"
demonstration="http://demo.spip.net"
developpement="http://core.spip.org/projects/spip/"
->
+>
<nom>SPIP</nom>
<!-- Système de publication pour l'Internet -->
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
function balise_RANG_dist($p) {
$b = index_boucle($p);
if ($b === '') {
- $msg = array('zbug_champ_hors_boucle',
- array('champ' => '#RANG')
- );
+ $msg = array(
+ 'zbug_champ_hors_boucle',
+ array('champ' => '#RANG')
+ );
erreur_squelette($msg, $p);
- }
- else {
+ } else {
// chercher d'abord un champ sql rang (mais pas dans le env : defaut '' si on trouve pas de champ sql)
// dans la boucle immediatement englobante uniquement
// sinon on compose le champ calcule
$_rang = champ_sql('rang', $p, '', false);
// si pas trouve de champ sql rang :
- if (!$_rang){
+ if (!$_rang) {
$boucle = &$p->boucles[$b];
- $trouver_table = charger_fonction('trouver_table','base');
+ $trouver_table = charger_fonction('trouver_table', 'base');
$desc = $trouver_table($boucle->id_table);
- $_titre = ''; # champ dont on extrait le numero
- if (isset($desc['titre'])){
- $t=$desc['titre'];
- if (preg_match(';(^|,)([^,]*titre)(,|$);',$t,$m)){
- $m = preg_replace(",as\s+titre$,i","",$m[2]);
- $m = trim($m);
- if ($m!="''"){
- if (!preg_match(",\W,",$m))
- $m = $boucle->id_table . ".$m";
- $m .= " AS titre_rang";
-
- $boucle->select[] = $m;
- $_titre = '$Pile[$SP][\'titre_rang\']';
- }
- }
+ $_titre = ''; # où extraire le numero ?
+
+ if (isset($desc['titre'])) {
+ $t = $desc['titre'];
+ if (
+ // Soit on trouve avec la déclaration de la lang AVANT
+ preg_match(';(?:lang\s*,)\s*(.*?titre)\s*(,|$);', $t, $m)
+ // Soit on prend depuis le début
+ or preg_match(';^(.*?titre)\s*(,|$);', $t, $m)
+ ) {
+ $m = preg_replace(',as\s+titre$,i', '', $m[1]);
+ $m = trim($m);
+ if ($m != "''") {
+ if (!preg_match(",\W,", $m)) {
+ $m = $boucle->id_table . ".$m";
+ }
+
+ $m .= " AS titre_rang";
+
+ $boucle->select[] = $m;
+ $_titre = '$Pile[$SP][\'titre_rang\']';
+ }
+ }
}
- if (!$_titre)
+
+ // si on n'a rien trouvé, on utilise le champ titre classique
+ if (!$_titre) {
$_titre = champ_sql('titre', $p);
+ }
+
$_rang = "recuperer_numero($_titre)";
}
+
$p->code = $_rang;
$p->interdire_scripts = false;
}
+
return $p;
}
AND $champ = ($p->param[0][1][0]->texte))
$p->code = champ_sql($champ, $p);
else {
- $err_b_s_a = array('zbug_balise_sans_argument', array('balise' => ' URL_'));
+ $err_b_s_a = array('zbug_balise_sans_argument', array('balise' => ' CHAMP_SQL'));
erreur_squelette($err_b_s_a, $p);
}
#$p->interdire_scripts = true;
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
if (strpos($page['texte'],'?xml')!==false)
$page['texte'] = str_replace('<'.'?xml', "<\1?xml", $page['texte']);
- $res = eval('?' . '>' . $page['texte']);
- $page['texte'] = ob_get_contents();
+ try {
+ $res = eval('?' . '>' . $page['texte']);
+ // error catching 5.2<=PHP<7
+ if ($res === false
+ and function_exists('error_get_last')
+ and ($erreur = error_get_last()) ) {
+ $code = $page['texte'];
+ $GLOBALS['numero_ligne_php'] = 1;
+ if (!function_exists('numerote_ligne_php')){
+ function numerote_ligne_php($match){
+ $GLOBALS['numero_ligne_php']++;
+ return "\n/*".str_pad($GLOBALS['numero_ligne_php'],3,"0",STR_PAD_LEFT)."*/";
+ }
+ }
+ $code = "/*001*/".preg_replace_callback(",\n,","numerote_ligne_php",$code);
+ $code = trim(highlight_string($code,true));
+ erreur_squelette("L".$erreur['line'].": ".$erreur['message']."<br />".$code,array($page['source'],'',$erreur['file'],'',$GLOBALS['spip_lang']));
+ $page['texte'] = "<!-- Erreur -->";
+ }
+ else {
+ $page['texte'] = ob_get_contents();
+ }
+ }
+ catch (Exception $e){
+ $code = $page['texte'];
+ $GLOBALS['numero_ligne_php'] = 1;
+ if (!function_exists('numerote_ligne_php')){
+ function numerote_ligne_php($match){
+ $GLOBALS['numero_ligne_php']++;
+ return "\n/*".str_pad($GLOBALS['numero_ligne_php'],3,"0",STR_PAD_LEFT)."*/";
+ }
+ }
+ $code = "/*001*/".preg_replace_callback(",\n,","numerote_ligne_php",$code);
+ $code = trim(highlight_string($code,true));
+ erreur_squelette("L".$e->getLine().": ".$e->getMessage()."<br />".$code,array($page['source'],'',$e->getFile(),'',$GLOBALS['spip_lang']));
+ $page['texte'] = "<!-- Erreur -->";
+ }
ob_end_clean();
$page['process_ins'] = 'html';
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
-\***************************************************************************/
+ * \***************************************************************************/
if (!defined('_ECRIRE_INC_VERSION')) return;
define('BALISE_ALT_BOUCLE', '<//B');
define('TYPE_RECURSIF', 'boucle');
-define('SPEC_BOUCLE','/\s*\(\s*([^\s?)]+)(\s*[^)?]*)([?]?)\)/');
+define('SPEC_BOUCLE', '/\s*\(\s*([^\s?)]+)(\s*[^)?]*)([?]?)\)/');
define('NOM_DE_BOUCLE', "[0-9]+|[-_][-_.a-zA-Z0-9]*");
# ecriture alambiquee pour rester compatible avec les hexadecimaux des vieux squelettes
define('NOM_DE_CHAMP', "#((" . NOM_DE_BOUCLE . "):)?(([A-F]*[G-Z_][A-Z_0-9]*)|[A-Z_]+)(\*{0,2})");
define('CHAMP_ETENDU', '/\[([^]\[]*)\(' . NOM_DE_CHAMP . '([^[)]*\)[^]\[]*)\]/S');
-define('BALISE_INCLURE','/<INCLU[DR]E[[:space:]]*(\(([^)]*)\))?/S');
-define('BALISE_POLYGLOTTE',',<multi>(.*)</multi>,Uims');
-define('BALISE_IDIOMES',',<:(([a-z0-9_]+):)?([a-z0-9_]*)({([^\|=>]*=[^\|>]*)})?((\|[^>]*)?:>),iS');
+define('BALISE_INCLURE', '/<INCLU[DR]E[[:space:]]*(\(([^)]*)\))?/S');
+define('BALISE_POLYGLOTTE', ',<multi>(.*)</multi>,Uims');
+define('BALISE_IDIOMES', ',<:(([a-z0-9_]+):)?([a-z0-9_]*)({([^\|=>]*=[^\|>]*)})?((\|[^>]*)?:>),iS');
define('BALISE_IDIOMES_ARGS', '@^\s*([^= ]*)\s*=\s*((' . NOM_DE_CHAMP . '[{][^}]*})?[^,]*)\s*,?\s*@s');
define('SQL_ARGS', '(\([^)]*\))');
define('CHAMP_SQL_PLUS_FONC', '`?([A-Z_\/][A-Z_\/0-9.]*)' . SQL_ARGS . '?`?');
// http://doc.spip.org/@phraser_inclure
-function phraser_inclure($texte, $ligne, $result) {
+function phraser_inclure($texte, $ligne, $result){
- while (preg_match(BALISE_INCLURE, $texte, $match)) {
- $p = strpos($texte,$match[0]);
+ while (preg_match(BALISE_INCLURE, $texte, $match)){
+ $p = strpos($texte, $match[0]);
$debut = substr($texte, 0, $p);
if ($p) $result = phraser_idiomes($debut, $ligne, $result);
- $ligne += substr_count($debut, "\n");
+ $ligne += substr_count($debut, "\n");
$champ = new Inclure;
$champ->ligne = $ligne;
$ligne += substr_count($match[0], "\n");
$fichier = @$match[2];
# assurer ici la migration .php3 => .php
# et de l'ancienne syntaxe INCLURE(page.php3) devenue surperflue
- if (preg_match(',^(.*[.]php)3$,', $fichier, $r)) {
+ if (preg_match(',^(.*[.]php)3$,', $fichier, $r)){
$fichier = $r[1];
}
- $champ->texte = ($fichier !== 'page.php') ? $fichier : '';
+ $champ->texte = ($fichier!=='page.php') ? $fichier : '';
$texte = substr($texte, $p+strlen($match[0]));
// on assimile {var=val} a une liste de un argument sans fonction
- phraser_args($texte,"/>","",$result,$champ);
- if (!$champ->texte OR count($champ->param) > 1) {
+ phraser_args($texte, "/>", "", $result, $champ);
+ if (!$champ->texte OR count($champ->param)>1){
if (!function_exists('normaliser_inclure'))
include_spip('public/normaliser');
normaliser_inclure($champ);
$texte = preg_replace(',^</INCLU[DR]E>,', '', $texte);
$result[] = $champ;
}
+
return (($texte==="") ? $result : phraser_idiomes($texte, $ligne, $result));
}
// http://doc.spip.org/@phraser_polyglotte
-function phraser_polyglotte($texte,$ligne, $result) {
+function phraser_polyglotte($texte, $ligne, $result){
if (preg_match_all(BALISE_POLYGLOTTE, $texte, $m, PREG_SET_ORDER))
- foreach ($m as $match) {
- $p = strpos($texte, $match[0]);
- $debut = substr($texte, 0, $p);
- if ($p) {
- $champ = new Texte;
- $champ->texte = $debut;
+ foreach ($m as $match){
+ $p = strpos($texte, $match[0]);
+ $debut = substr($texte, 0, $p);
+ if ($p){
+ $champ = new Texte;
+ $champ->texte = $debut;
+ $champ->ligne = $ligne;
+ $result[] = $champ;
+ $ligne += substr_count($champ->texte, "\n");
+ }
+
+ $champ = new Polyglotte;
$champ->ligne = $ligne;
+ $ligne += substr_count($match[0], "\n");
+ $lang = '';
+ $bloc = $match[1];
+ $texte = substr($texte, $p+strlen($match[0]));
+ while (preg_match("/^[[:space:]]*([^[{]*)[[:space:]]*[[{]([a-z_]+)[]}](.*)$/si", $bloc, $regs)){
+ $trad = $regs[1];
+ if ($trad OR $lang)
+ $champ->traductions[$lang] = $trad;
+ $lang = $regs[2];
+ $bloc = $regs[3];
+ }
+ $champ->traductions[$lang] = $bloc;
$result[] = $champ;
- $ligne += substr_count($champ->texte, "\n");
}
-
- $champ = new Polyglotte;
+ if ($texte!==""){
+ $champ = new Texte;
+ $champ->texte = $texte;
$champ->ligne = $ligne;
- $ligne += substr_count($match[0], "\n");
- $lang = '';
- $bloc = $match[1];
- $texte = substr($texte,$p+strlen($match[0]));
- while (preg_match("/^[[:space:]]*([^[{]*)[[:space:]]*[[{]([a-z_]+)[]}](.*)$/si", $bloc, $regs)) {
- $trad = $regs[1];
- if ($trad OR $lang)
- $champ->traductions[$lang] = $trad;
- $lang = $regs[2];
- $bloc = $regs[3];
- }
- $champ->traductions[$lang] = $bloc;
$result[] = $champ;
}
- if ($texte!=="") {
- $champ = new Texte;
- $champ->texte = $texte;
- $champ->ligne = $ligne;
- $result[] = $champ;
- }
+
return $result;
}
// chaine peut etre vide si =texte1 est present et arg1 est vide
// sinon ce n'est pas un idiome
// http://doc.spip.org/@phraser_idiomes
-function phraser_idiomes($texte,$ligne,$result) {
- while (preg_match(BALISE_IDIOMES, $texte, $match)) {
+function phraser_idiomes($texte, $ligne, $result){
+ while (preg_match(BALISE_IDIOMES, $texte, $match)){
$p = strpos($texte, $match[0]);
$ko = (!$match[3] && ($match[5][0]!=='='));
- $debut = substr($texte, 0, $p + ($ko ? strlen($match[0]) : 0));
+ $debut = substr($texte, 0, $p+($ko ? strlen($match[0]) : 0));
if ($debut) $result = phraser_champs($debut, $ligne, $result);
- $texte = substr($texte,$p+strlen($match[0]));
+ $texte = substr($texte, $p+strlen($match[0]));
$ligne += substr_count($debut, "\n");
if ($ko) continue; // faux idiome
$champ = new Idiome;
// Stocker les arguments de la balise de traduction
$args = array();
$largs = $match[5];
- while (preg_match(BALISE_IDIOMES_ARGS, $largs, $r)) {
+ while (preg_match(BALISE_IDIOMES_ARGS, $largs, $r)){
$args[$r[1]] = phraser_champs($r[2], 0, array());
- $largs = substr($largs, strlen($r[0]));
+ $largs = substr($largs, strlen($r[0]));
}
$champ->arg = $args;
$champ->nom_champ = strtolower($match[3]);
phraser_args(@$match[7], ":", '', array(), $champ);
$result[] = $champ;
}
- if ($texte!=="") $result = phraser_champs($texte,$ligne,$result);
+ if ($texte!=="") $result = phraser_champs($texte, $ligne, $result);
+
return $result;
}
// http://doc.spip.org/@phraser_champs
-function phraser_champs($texte,$ligne,$result) {
- while (preg_match("/".NOM_DE_CHAMP."/S", $texte, $match)) {
- $p = strpos($texte, $match[0]);
- $suite = substr($texte,$p+strlen($match[0]));
- if ($match[5] || (strpos($suite[0], "[0-9]") === false)) {
- $debut = substr($texte, 0, $p);
- if ($p) $result = phraser_polyglotte($debut, $ligne, $result);
- $ligne += substr_count($debut, "\n");
- $champ = new Champ;
- $champ->ligne = $ligne;
- $ligne += substr_count($match[0], "\n");
- $champ->nom_boucle = $match[2];
- $champ->nom_champ = $match[3];
- $champ->etoile = $match[5];
-
- if ($suite[0] == '{') {
- phraser_arg($suite, '', array(), $champ);
- // ce ltrim est une ereur de conception
- // mais on le conserve par souci de compatibilite
- $texte = ltrim($suite);
- // Il faudrait le normaliser dans l'arbre de syntaxe abstraite
- // pour faire sauter ce cas particulier a la decompilation.
- /* Ce qui suit est malheureusement incomplet pour cela:
- if ($n = (strlen($suite) - strlen($texte))) {
- $champ->apres = array(new Texte);
- $champ->apres[0]->texte = substr($suite,0,$n);
- }
- */
- } else $texte = $suite;
- phraser_vieux($champ);
- $result[] = $champ;
- } else {
- // faux champ
- $result = phraser_polyglotte (substr($texte, 0, $p+1), $ligne, $result);
- $texte = (substr($texte, $p+1));
- }
+function phraser_champs($texte, $ligne, $result){
+ while (preg_match("/" . NOM_DE_CHAMP . "/S", $texte, $match)){
+ $p = strpos($texte, $match[0]);
+ $suite = substr($texte, $p+strlen($match[0]));
+ if ($match[5] || (strpos($suite[0], "[0-9]")===false)){
+ $debut = substr($texte, 0, $p);
+ if ($p) $result = phraser_polyglotte($debut, $ligne, $result);
+ $ligne += substr_count($debut, "\n");
+ $champ = new Champ;
+ $champ->ligne = $ligne;
+ $ligne += substr_count($match[0], "\n");
+ $champ->nom_boucle = $match[2];
+ $champ->nom_champ = $match[3];
+ $champ->etoile = $match[5];
+
+ if ($suite[0]=='{'){
+ phraser_arg($suite, '', array(), $champ);
+ // ce ltrim est une ereur de conception
+ // mais on le conserve par souci de compatibilite
+ $texte = ltrim($suite);
+ // Il faudrait le normaliser dans l'arbre de syntaxe abstraite
+ // pour faire sauter ce cas particulier a la decompilation.
+ /* Ce qui suit est malheureusement incomplet pour cela:
+ if ($n = (strlen($suite) - strlen($texte))) {
+ $champ->apres = array(new Texte);
+ $champ->apres[0]->texte = substr($suite,0,$n);
+ }
+ */
+ } else $texte = $suite;
+ phraser_vieux($champ);
+ $result[] = $champ;
+ } else {
+ // faux champ
+ $result = phraser_polyglotte(substr($texte, 0, $p+1), $ligne, $result);
+ $texte = (substr($texte, $p+1));
+ }
}
if ($texte!=="") $result = phraser_polyglotte($texte, $ligne, $result);
+
return $result;
}
// on recommence tant qu'il y a des [...] en substituant a l'appel suivant
// http://doc.spip.org/@phraser_champs_etendus
-function phraser_champs_etendus($texte, $ligne,$result) {
+function phraser_champs_etendus($texte, $ligne, $result){
if ($texte==="") return $result;
$sep = '##';
- while (strpos($texte,$sep)!== false)
+ while (strpos($texte, $sep)!==false)
$sep .= '#';
+
return array_merge($result, phraser_champs_interieurs($texte, $ligne, $sep, array()));
}
// Tres chevelu
// http://doc.spip.org/@phraser_args
-function phraser_args($texte, $fin, $sep, $result, &$pointeur_champ) {
- $texte = ltrim($texte);
- while (($texte!=="") && strpos($fin, $texte[0]) === false) {
- $result = phraser_arg($texte, $sep, $result, $pointeur_champ);
+function phraser_args($texte, $fin, $sep, $result, &$pointeur_champ){
$texte = ltrim($texte);
- }
+ while (($texte!=="") && strpos($fin, $texte[0])===false){
+ $result = phraser_arg($texte, $sep, $result, $pointeur_champ);
+ $texte = ltrim($texte);
+ }
# mettre ici la suite du texte,
# notamment pour que l'appelant vire le caractere fermant si besoin
- $pointeur_champ->apres = $texte;
- return $result;
+ $pointeur_champ->apres = $texte;
+
+ return $result;
}
// http://doc.spip.org/@phraser_arg
-function phraser_arg(&$texte, $sep, $result, &$pointeur_champ) {
+function phraser_arg(&$texte, $sep, $result, &$pointeur_champ){
preg_match(",^(\|?[^}{)|]*)(.*)$,ms", $texte, $match);
$suite = ltrim($match[2]);
$fonc = trim($match[1]);
- if ($fonc && $fonc[0] == "|") $fonc = ltrim(substr($fonc,1));
+ if ($fonc && $fonc[0]=="|") $fonc = ltrim(substr($fonc, 1));
$res = array($fonc);
$err_f = '';
// cas du filtre sans argument ou du critere /
- if (($suite && ($suite[0] != '{')) || ($fonc && $fonc[0] == '/')) {
+ if (($suite && ($suite[0]!='{')) || ($fonc && $fonc[0]=='/')){
// si pas d'argument, alors il faut une fonction ou un double |
- if (!$match[1]) {
+ if (!$match[1]){
$err_f = array('zbug_erreur_filtre', array('filtre' => $texte));
erreur_squelette($err_f, $pointeur_champ);
$texte = '';
- } else $texte = $suite;
+ } else $texte = $suite;
if ($err_f) $pointeur_champ->param = false;
elseif ($fonc!=='') $pointeur_champ->param[] = $res;
// pour les balises avec faux filtres qui boudent ce dur larbeur
$pointeur_champ->fonctions[] = array($fonc, '');
+
return $result;
}
- $args = ltrim(substr($suite,1)); // virer le '(' initial
+ $args = ltrim(substr($suite, 1)); // virer le '(' initial
$collecte = array();
- while ($args && $args[0] != '}') {
- if ($args[0] == '"')
- preg_match ('/^(")([^"]*)(")(.*)$/ms', $args, $regs);
- else if ($args[0] == "'")
- preg_match ("/^(')([^']*)(')(.*)$/ms", $args, $regs);
+ while ($args && $args[0]!='}'){
+ if ($args[0]=='"')
+ preg_match('/^(")([^"]*)(")(.*)$/ms', $args, $regs);
+ else if ($args[0]=="'")
+ preg_match("/^(')([^']*)(')(.*)$/ms", $args, $regs);
else {
- preg_match("/^([[:space:]]*)([^,([{}]*([(\[{][^])}]*[])}])?[^,}]*)([,}].*)$/ms", $args, $regs);
- if (!strlen($regs[2]))
- {
- $err_f = array('zbug_erreur_filtre', array('filtre' => $args));
- erreur_squelette($err_f, $pointeur_champ);
- $champ = new Texte;
- $champ->apres = $champ->avant = $args = "";
- break;
- }
+ preg_match("/^([[:space:]]*)([^,([{}]*([(\[{][^])}]*[])}])?[^,}]*)([,}].*)$/ms", $args, $regs);
+ if (!strlen($regs[2])){
+ $err_f = array('zbug_erreur_filtre', array('filtre' => $args));
+ erreur_squelette($err_f, $pointeur_champ);
+ $champ = new Texte;
+ $champ->apres = $champ->avant = $args = "";
+ break;
+ }
}
$arg = $regs[2];
- if (trim($regs[1])) {
+ if (trim($regs[1])){
$champ = new Texte;
$champ->texte = $arg;
$champ->apres = $champ->avant = $regs[1];
$collecte[] = $champ;
$args = ltrim($regs[count($regs)-1]);
} else {
- if (!preg_match("/".NOM_DE_CHAMP ."([{|])/", $arg, $r)) {
+ if (!preg_match("/" . NOM_DE_CHAMP . "([{|])/", $arg, $r)){
// 0 est un aveu d'impuissance. A completer
$arg = phraser_champs_exterieurs($arg, 0, $sep, $result);
$args = ltrim($regs[count($regs)-1]);
$collecte = array_merge($collecte, $arg);
$result = array_merge($result, $arg);
- }
- else {
- $n = strpos($args,$r[0]);
+ } else {
+ $n = strpos($args, $r[0]);
$pred = substr($args, 0, $n);
$par = ',}';
- if (preg_match('/^(.*)\($/', $pred, $m))
- {$pred = $m[1]; $par =')';}
- if ($pred) {
+ if (preg_match('/^(.*)\($/', $pred, $m)){
+ $pred = $m[1];
+ $par = ')';
+ }
+ if ($pred){
$champ = new Texte;
$champ->texte = $pred;
$champ->apres = $champ->avant = "";
$result[] = $champ;
$collecte[] = $champ;
}
- $rec = substr($args, $n + strlen($r[0]) -1);
+ $rec = substr($args, $n+strlen($r[0])-1);
$champ = new Champ;
$champ->nom_boucle = $r[2];
$champ->nom_champ = $r[3];
$champ->etoile = $r[5];
$next = $r[6];
- while ($next=='{') {
+ while ($next=='{'){
phraser_arg($rec, $sep, array(), $champ);
- $args = ltrim($rec) ;
+ $args = ltrim($rec);
$next = isset($args[0]) ? $args[0] : '';
}
- while ($next=='|') {
+ while ($next=='|'){
phraser_args($rec, $par, $sep, array(), $champ);
- $args = $champ->apres ;
+ $args = $champ->apres;
$champ->apres = '';
$next = isset($args[0]) ? $args[0] : '';
}
// Si erreur de syntaxe dans un sous-argument, propager.
- if ($champ->param === false)
+ if ($champ->param===false)
$err_f = true;
else phraser_vieux($champ);
- if ($par==')') $args = substr($args,1);
+ if ($par==')') $args = substr($args, 1);
$collecte[] = $champ;
$result[] = $champ;
}
}
- if (isset($args[0]) AND $args[0] == ',') {
- $args = ltrim(substr($args,1));
- if ($collecte) {$res[] = $collecte; $collecte = array();}
+ if (isset($args[0]) AND $args[0]==','){
+ $args = ltrim(substr($args, 1));
+ if ($collecte){
+ $res[] = $collecte;
+ $collecte = array();
+ }
}
}
- if ($collecte) {$res[] = $collecte; $collecte = array();}
- $texte = substr($args,1);
- $source = substr($suite, 0, strlen($suite) - strlen($texte));
+ if ($collecte){
+ $res[] = $collecte;
+ $collecte = array();
+ }
+ $texte = substr($args, 1);
+ $source = substr($suite, 0, strlen($suite)-strlen($texte));
// propager les erreurs, et ignorer les param vides
- if ($pointeur_champ->param !== false) {
+ if ($pointeur_champ->param!==false){
if ($err_f)
$pointeur_champ->param = false;
- elseif ($fonc!=='' || count($res) > 1)
+ elseif ($fonc!=='' || count($res)>1)
$pointeur_champ->param[] = $res;
}
// pour les balises avec faux filtres qui boudent ce dur larbeur
$pointeur_champ->fonctions[] = array($fonc, $source);
+
return $result;
}
// http://doc.spip.org/@phraser_champs_exterieurs
-function phraser_champs_exterieurs($texte, $ligne, $sep, $nested) {
+function phraser_champs_exterieurs($texte, $ligne, $sep, $nested){
$res = array();
- while (($p=strpos($texte, "%$sep"))!==false) {
- if (!preg_match(',^%'.preg_quote($sep).'([0-9]+)@,', substr($texte,$p), $m))
+ while (($p = strpos($texte, "%$sep"))!==false){
+ if (!preg_match(',^%' . preg_quote($sep) . '([0-9]+)@,', substr($texte, $p), $m))
break;
- $debut = substr($texte,0,$p);
+ $debut = substr($texte, 0, $p);
$texte = substr($texte, $p+strlen($m[0]));
if ($p)
$res = phraser_inclure($debut, $ligne, $res);
$ligne += substr_count($debut, "\n");
- $res[]= $nested[$m[1]];
+ $res[] = $nested[$m[1]];
}
+
return (($texte==='') ? $res : phraser_inclure($texte, $ligne, $res));
}
// http://doc.spip.org/@phraser_champs_interieurs
-function phraser_champs_interieurs($texte, $ligne, $sep, $result) {
+function phraser_champs_interieurs($texte, $ligne, $sep, $result){
$i = 0; // en fait count($result)
$x = "";
- while (true) {
- $j=$i;
+ while (true){
+ $j = $i;
$n = $ligne;
- while (preg_match(CHAMP_ETENDU, $texte, $match)) {
+ while (preg_match(CHAMP_ETENDU, $texte, $match)){
$p = strpos($texte, $match[0]);
$debut = substr($texte, 0, $p);
- if ($p) {
+ if ($p){
$result[$i] = $debut;
$i++;
}
$nom = $match[4];
$champ = new Champ;
// ca ne marche pas encore en cas de champ imbrique
- $champ->ligne = $x ? 0 :($n+substr_count($debut, "\n"));
+ $champ->ligne = $x ? 0 : ($n+substr_count($debut, "\n"));
$champ->nom_boucle = $match[3];
$champ->nom_champ = $nom;
$champ->etoile = $match[6];
$result = phraser_args($match[7], ")", $sep, $result, $champ);
phraser_vieux($champ);
$champ->avant =
- phraser_champs_exterieurs($match[1],$n,$sep,$result);
- $debut = substr($champ->apres,1);
- $n += substr_count(substr($texte, 0, strpos($texte, $debut)), "\n");
- $champ->apres = phraser_champs_exterieurs($debut,$n,$sep,$result);
+ phraser_champs_exterieurs($match[1], $n, $sep, $result);
+ $debut = substr($champ->apres, 1);
+ if (!empty($debut)){
+ $n += substr_count(substr($texte, 0, strpos($texte, $debut)), "\n");
+ }
+ $champ->apres = phraser_champs_exterieurs($debut, $n, $sep, $result);
$result[$i] = $champ;
$i++;
- $texte = substr($texte,$p+strlen($match[0]));
+ $texte = substr($texte, $p+strlen($match[0]));
+ }
+ if ($texte!==""){
+ $result[$i] = $texte;
+ $i++;
}
- if ($texte!=="") {$result[$i] = $texte; $i++;}
- $x ='';
+ $x = '';
- while($j < $i) {
- $z= $result[$j];
+ while ($j<$i){
+ $z = $result[$j];
// j'aurais besoin de connaitre le nombre de lignes...
if (is_object($z))
$x .= "%$sep$j@";
else
- $x.=$z;
+ $x .= $z;
$j++;
}
if (preg_match(CHAMP_ETENDU, $x))
}
}
-function phraser_vieux(&$champ)
-{
+function phraser_vieux(&$champ){
$nom = $champ->nom_champ;
- if ($nom == 'EMBED_DOCUMENT') {
+ if ($nom=='EMBED_DOCUMENT'){
if (!function_exists('phraser_vieux_emb'))
include_spip('public/normaliser');
phraser_vieux_emb($champ);
- } elseif ($nom == 'EXPOSER') {
+ } elseif ($nom=='EXPOSER') {
if (!function_exists('phraser_vieux_exposer'))
include_spip('public/normaliser');
phraser_vieux_exposer($champ);
} elseif ($champ->param) {
- if ($nom == 'FORMULAIRE_RECHERCHE') {
+ if ($nom=='FORMULAIRE_RECHERCHE'){
if (!function_exists('phraser_vieux_recherche'))
include_spip('public/normaliser');
phraser_vieux_recherche($champ);
if (!function_exists('phraser_vieux_logos'))
include_spip('public/normaliser');
phraser_vieux_logos($champ);
- } elseif ($nom == 'MODELE') {
+ } elseif ($nom=='MODELE') {
if (!function_exists('phraser_vieux_modele'))
include_spip('public/normaliser');
phraser_vieux_modele($champ);
- } elseif ($nom == 'INCLURE' OR $nom == 'INCLUDE') {
+ } elseif ($nom=='INCLURE' OR $nom=='INCLUDE') {
if (!function_exists('phraser_vieux_inclu'))
include_spip('public/normaliser');
phraser_vieux_inclu($champ);
/**
- * Analyse les critères de boucle
+ * Analyse les critères de boucle
*
* Chaque paramètre de la boucle (tel que {id_article>3}) est analysé
* pour construire un critère (objet Critere) de boucle.
- *
+ *
* Un critère a une description plus fine que le paramètre original
* car on en extrait certaines informations tel que la n'égation et l'opérateur
* utilisé s'il y a.
- *
+ *
* La fonction en profite pour déclarer des modificateurs de boucles
* en présence de certains critères (tout, plat) ou initialiser des
* variables de compilation (doublons)...
- *
+ *
* @param array $params
* Tableau de description des paramètres passés à la boucle.
* Chaque paramètre deviendra un critère
* Description de la boucle
* Elle sera complété de la liste de ses critères
* @return void
-**/
-function phraser_criteres($params, &$result) {
+ **/
+function phraser_criteres($params, &$result){
$err_ci = ''; // indiquera s'il y a eu une erreur
$args = array();
$type = $result->type_requete;
$doublons = array();
- foreach($params as $v) {
+ foreach ($params as $v){
$var = $v[1][0];
- $param = ($var->type != 'texte') ? "" : $var->texte;
- if ((count($v) > 2) && (!preg_match(",[^A-Za-z]IN[^A-Za-z],i",$param)))
- {
+ $param = ($var->type!='texte') ? "" : $var->texte;
+ if ((count($v)>2) && (!preg_match(",[^A-Za-z]IN[^A-Za-z],i", $param))){
// plus d'un argument et pas le critere IN:
// detecter comme on peut si c'est le critere implicite LIMIT debut, fin
- if ($var->type != 'texte'
- OR preg_match("/^(n|n-|(n-)?\d+)$/S", $param)) {
- $op = ',';
- $not = "";
+ if ($var->type!='texte'
+ OR preg_match("/^(n|n-|(n-)?\d+)$/S", $param)
+ ){
+ $op = ',';
+ $not = "";
} else {
- // Le debut du premier argument est l'operateur
- preg_match("/^([!]?)([a-zA-Z][a-zA-Z0-9_]*)[[:space:]]*(\??)[[:space:]]*(.*)$/ms", $param, $m);
- $op = $m[2];
- $not = $m[1];
- $cond = $m[3];
- // virer le premier argument,
- // et mettre son reliquat eventuel
- // Recopier pour ne pas alterer le texte source
- // utile au debusqueur
- if ($m[4]) {
- // une maniere tres sale de supprimer les "' autour de {critere "xxx","yyy"}
- if (preg_match(',^(["\'])(.*)\1$,', $m[4])) {
- $c = null;
- eval ('$c = '.$m[4].';');
- if (isset($c))
- $m[4] = $c;
- }
- $texte = new Texte;
- $texte->texte = $m[4];
- $v[1][0]= $texte;
- } else array_shift($v[1]);
+ // Le debut du premier argument est l'operateur
+ preg_match("/^([!]?)([a-zA-Z][a-zA-Z0-9_]*)[[:space:]]*(\??)[[:space:]]*(.*)$/ms", $param, $m);
+ $op = $m[2];
+ $not = $m[1];
+ $cond = $m[3];
+ // virer le premier argument,
+ // et mettre son reliquat eventuel
+ // Recopier pour ne pas alterer le texte source
+ // utile au debusqueur
+ if ($m[4]){
+ // une maniere tres sale de supprimer les "' autour de {critere "xxx","yyy"}
+ if (preg_match(',^(["\'])(.*)\1$,', $m[4])){
+ $c = null;
+ eval ('$c = ' . $m[4] . ';');
+ if (isset($c))
+ $m[4] = $c;
+ }
+ $texte = new Texte;
+ $texte->texte = $m[4];
+ $v[1][0] = $texte;
+ } else array_shift($v[1]);
}
array_shift($v); // $v[O] est vide
$crit = new Critere;
$crit->op = $op;
$crit->not = $not;
$crit->cond = $cond;
- $crit->exclus ="";
+ $crit->exclus = "";
$crit->param = $v;
$args[] = $crit;
- } else {
- if ($var->type != 'texte') {
- // cas 1 seul arg ne commencant pas par du texte brut:
- // erreur ou critere infixe "/"
- if (($v[1][1]->type != 'texte') || (trim($v[1][1]->texte) !='/')) {
- $err_ci = array('zbug_critere_inconnu',
- array('critere' => $var->nom_champ));
- erreur_squelette($err_ci, $result);
- } else {
- $crit = new Critere;
- $crit->op = '/';
- $crit->not = "";
- $crit->exclus ="";
- $crit->param = array(array($v[1][0]),array($v[1][2]));
- $args[] = $crit;
- }
- } else {
- // traiter qq lexemes particuliers pour faciliter la suite
- // les separateurs
- if ($var->apres)
- $result->separateur[] = $param;
- elseif (($param == 'tout') OR ($param == 'tous'))
- $result->modificateur['tout'] = true;
- elseif ($param == 'plat')
- $result->modificateur['plat'] = true;
-
- // Boucle hierarchie, analyser le critere id_rubrique
- // et les autres critères {id_x} pour forcer {tout} sur
- // ceux-ci pour avoir la rubrique mere...
- // Les autres critères de la boucle hierarchie doivent être
- // traités normalement.
- elseif (strcasecmp($type, 'hierarchie')==0
- AND !preg_match(",^id_rubrique\b,",$param)
- AND preg_match(",^id_\w+\s*$,", $param))
- {
- $result->modificateur['tout'] = true;
- }
- elseif (strcasecmp($type, 'hierarchie')==0 AND $param=="id_rubrique") {
- // rien a faire sur {id_rubrique} tout seul
- }
- else {
- // pas d'emplacement statique, faut un dynamique
- /// mais il y a 2 cas qui ont les 2 !
- if (($param == 'unique') || (preg_match(',^!?doublons *,', $param)))
- {
- // cette variable sera inseree dans le code
- // et son nom sert d'indicateur des maintenant
- $result->doublons = '$doublons_index';
- if ($param == 'unique') $param = 'doublons';
- }
- elseif ($param == 'recherche')
- // meme chose (a cause de #nom_de_boucle:URL_*)
- $result->hash = ' ';
- if (preg_match(',^ *([0-9-]+) *(/) *(.+) *$,', $param, $m)) {
- $crit = phraser_critere_infixe($m[1], $m[3],$v, '/', '', '');
- } elseif (preg_match(',^([!]?)(' . CHAMP_SQL_PLUS_FONC .
- ')[[:space:]]*(\??)(!?)(<=?|>=?|==?|\b(?:IN|LIKE)\b)(.*)$,is', $param, $m)) {
- $a2 = trim($m[8]);
- if ($a2 AND ($a2[0]=="'" OR $a2[0]=='"') AND ($a2[0]==substr($a2,-1)))
- $a2 = substr($a2,1,-1);
- $crit = phraser_critere_infixe($m[2], $a2, $v,
- (($m[2] == 'lang_select') ? $m[2] : $m[7]),
- $m[6], $m[5]);
- $crit->exclus = $m[1];
- } elseif (preg_match("/^([!]?)\s*(" .
- CHAMP_SQL_PLUS_FONC .
- ")\s*(\??)(.*)$/is", $param, $m)) {
- // contient aussi les comparaisons implicites !
- // Comme ci-dessus:
- // le premier arg contient l'operateur
- array_shift($v);
- if ($m[6]) {
- $v[0][0] = new Texte;
- $v[0][0]->texte = $m[6];
- } else {
- array_shift($v[0]);
- if (!$v[0]) array_shift($v);
- }
- $crit = new Critere;
- $crit->op = $m[2];
- $crit->param = $v;
- $crit->not = $m[1];
- $crit->cond = $m[5];
- }
- else {
- $err_ci = array('zbug_critere_inconnu',
- array('critere' => $param));
- erreur_squelette($err_ci, $result);
- }
- if ((!preg_match(',^!?doublons *,', $param)) || $crit->not)
- $args[] = $crit;
- else
- $doublons[] = $crit;
+ } else {
+ if ($var->type!='texte'){
+ // cas 1 seul arg ne commencant pas par du texte brut:
+ // erreur ou critere infixe "/"
+ if (($v[1][1]->type!='texte') || (trim($v[1][1]->texte)!='/')){
+ $err_ci = array('zbug_critere_inconnu',
+ array('critere' => $var->nom_champ));
+ erreur_squelette($err_ci, $result);
+ } else {
+ $crit = new Critere;
+ $crit->op = '/';
+ $crit->not = "";
+ $crit->exclus = "";
+ $crit->param = array(array($v[1][0]), array($v[1][2]));
+ $args[] = $crit;
+ }
+ } else {
+ // traiter qq lexemes particuliers pour faciliter la suite
+ // les separateurs
+ if ($var->apres)
+ $result->separateur[] = $param;
+ elseif (($param=='tout') OR ($param=='tous'))
+ $result->modificateur['tout'] = true;
+ elseif ($param=='plat')
+ $result->modificateur['plat'] = true;
+
+ // Boucle hierarchie, analyser le critere id_rubrique
+ // et les autres critères {id_x} pour forcer {tout} sur
+ // ceux-ci pour avoir la rubrique mere...
+ // Les autres critères de la boucle hierarchie doivent être
+ // traités normalement.
+ elseif (strcasecmp($type, 'hierarchie')==0
+ AND !preg_match(",^id_rubrique\b,", $param)
+ AND preg_match(",^id_\w+\s*$,", $param)
+ ) {
+ $result->modificateur['tout'] = true;
+ } elseif (strcasecmp($type, 'hierarchie')==0 AND $param=="id_rubrique") {
+ // rien a faire sur {id_rubrique} tout seul
+ } else {
+ // pas d'emplacement statique, faut un dynamique
+ /// mais il y a 2 cas qui ont les 2 !
+ if (($param=='unique') || (preg_match(',^!?doublons *,', $param))){
+ // cette variable sera inseree dans le code
+ // et son nom sert d'indicateur des maintenant
+ $result->doublons = '$doublons_index';
+ if ($param=='unique') $param = 'doublons';
+ } elseif ($param=='recherche')
+ // meme chose (a cause de #nom_de_boucle:URL_*)
+ $result->hash = ' ';
+ if (preg_match(',^ *([0-9-]+) *(/) *(.+) *$,', $param, $m)){
+ $crit = phraser_critere_infixe($m[1], $m[3], $v, '/', '', '');
+ } elseif (preg_match(',^([!]?)(' . CHAMP_SQL_PLUS_FONC .
+ ')[[:space:]]*(\??)(!?)(<=?|>=?|==?|\b(?:IN|LIKE)\b)(.*)$,is', $param, $m)) {
+ $a2 = trim($m[8]);
+ if ($a2 AND ($a2[0]=="'" OR $a2[0]=='"') AND ($a2[0]==substr($a2, -1)))
+ $a2 = substr($a2, 1, -1);
+ $crit = phraser_critere_infixe($m[2], $a2, $v,
+ (($m[2]=='lang_select') ? $m[2] : $m[7]),
+ $m[6], $m[5]);
+ $crit->exclus = $m[1];
+ } elseif (preg_match("/^([!]?)\s*(" .
+ CHAMP_SQL_PLUS_FONC .
+ ")\s*(\??)(.*)$/is", $param, $m)) {
+ // contient aussi les comparaisons implicites !
+ // Comme ci-dessus:
+ // le premier arg contient l'operateur
+ array_shift($v);
+ if ($m[6]){
+ $v[0][0] = new Texte;
+ $v[0][0]->texte = $m[6];
+ } else {
+ array_shift($v[0]);
+ if (!$v[0]) array_shift($v);
+ }
+ $crit = new Critere;
+ $crit->op = $m[2];
+ $crit->param = $v;
+ $crit->not = $m[1];
+ $crit->cond = $m[5];
+ } else {
+ $err_ci = array('zbug_critere_inconnu',
+ array('critere' => $param));
+ erreur_squelette($err_ci, $result);
+ }
+ if ((!preg_match(',^!?doublons *,', $param)) || $crit->not)
+ $args[] = $crit;
+ else
+ $doublons[] = $crit;
+ }
}
- }
}
}
// les doublons non nies doivent etre le dernier critere
// pour que la variable $doublon_index ait la bonne valeur
// cf critere_doublon
- if ($doublons) $args= array_merge($args, $doublons);
+ if ($doublons) $args = array_merge($args, $doublons);
// Si erreur, laisser la chaine dans ce champ pour le HTTP 503
if (!$err_ci) $result->criteres = $args;
}
// http://doc.spip.org/@phraser_critere_infixe
-function phraser_critere_infixe($arg1, $arg2, $args, $op, $not, $cond)
-{
+function phraser_critere_infixe($arg1, $arg2, $args, $op, $not, $cond){
$args[0] = new Texte;
$args[0]->texte = $arg1;
$args[0] = array($args[0]);
$args[1][0] = new Texte;
- $args[1][0]->texte = $arg2;
+ $args[1][0]->texte = $arg2;
$crit = new Critere;
$crit->op = $op;
$crit->not = $not;
$crit->cond = $cond;
$crit->param = $args;
+
return $crit;
}
-function public_phraser_html_dist($texte, $id_parent, &$boucles, $descr, $ligne=1) {
+function public_phraser_html_dist($texte, $id_parent, &$boucles, $descr, $ligne = 1){
$all_res = array();
- while (($pos_boucle = strpos($texte, BALISE_BOUCLE)) !== false) {
+ while (($pos_boucle = strpos($texte, BALISE_BOUCLE))!==false){
$err_b = ''; // indiquera s'il y a eu une erreur
$result = new Boucle;
$result->descr = $descr;
# attention: reperer la premiere des 2 balises: pre_boucle ou boucle
- if (!preg_match(",".BALISE_PRE_BOUCLE . '[0-9_],', $texte, $r)
+ if (!preg_match("," . BALISE_PRE_BOUCLE . '[0-9_],', $texte, $r)
OR ($n = strpos($texte, $r[0]))===false
- OR ($n > $pos_boucle) ) {
- $debut = substr($texte, 0, $pos_boucle);
- $milieu = substr($texte, $pos_boucle);
- $k = strpos($milieu, '(');
- $id_boucle = trim(substr($milieu,
- strlen(BALISE_BOUCLE),
- $k - strlen(BALISE_BOUCLE)));
- $milieu = substr($milieu, $k);
+ OR ($n>$pos_boucle)
+ ){
+ $debut = substr($texte, 0, $pos_boucle);
+ $milieu = substr($texte, $pos_boucle);
+ $k = strpos($milieu, '(');
+ $id_boucle = trim(substr($milieu,
+ strlen(BALISE_BOUCLE),
+ $k-strlen(BALISE_BOUCLE)));
+ $milieu = substr($milieu, $k);
} else {
- $debut = substr($texte, 0, $n);
- $milieu = substr($texte, $n);
- $k = strpos($milieu, '>');
- $id_boucle = substr($milieu,
- strlen(BALISE_PRE_BOUCLE),
- $k - strlen(BALISE_PRE_BOUCLE));
-
- if (!preg_match(",".BALISE_BOUCLE . $id_boucle . "[[:space:]]*\(,", $milieu, $r)) {
- $err_b = array('zbug_erreur_boucle_syntaxe', array('id' => $id_boucle));
- erreur_squelette($err_b, $result);
- }
- $pos_boucle = $n;
- $n = strpos($milieu, $r[0]);
- $result->avant = substr($milieu, $k+1, $n-$k-1);
- $milieu = substr($milieu, $n+strlen($id_boucle)+strlen(BALISE_BOUCLE));
+ $debut = substr($texte, 0, $n);
+ $milieu = substr($texte, $n);
+ $k = strpos($milieu, '>');
+ $id_boucle = substr($milieu,
+ strlen(BALISE_PRE_BOUCLE),
+ $k-strlen(BALISE_PRE_BOUCLE));
+
+ if (!preg_match("," . BALISE_BOUCLE . $id_boucle . "[[:space:]]*\(,", $milieu, $r)){
+ $err_b = array('zbug_erreur_boucle_syntaxe', array('id' => $id_boucle));
+ erreur_squelette($err_b, $result);
+ $texte = substr($texte, $n+1);
+ continue;
+ } else {
+ $pos_boucle = $n;
+ $n = strpos($milieu, $r[0]);
+ $result->avant = substr($milieu, $k+1, $n-$k-1);
+ $milieu = substr($milieu, $n+strlen($id_boucle)+strlen(BALISE_BOUCLE));
+ }
}
$result->id_boucle = $id_boucle;
preg_match(SPEC_BOUCLE, $milieu, $match);
$result->type_requete = $match[0];
- $milieu = substr($milieu, strlen($match[0]));
+ $milieu = substr($milieu, strlen($match[0]));
$type = $match[1];
$jointures = trim($match[2]);
$table_optionnelle = ($match[3]);
- if ($jointures) {
+ if ($jointures){
// on affecte pas ici les jointures explicites, mais dans la compilation
// ou elles seront completees des jointures declarees
$result->jointures_explicites = $jointures;
}
-
+
if ($table_optionnelle){
$result->table_optionnelle = $type;
}
-
+
// 1ere passe sur les criteres, vu comme des arguments sans fct
// Resultat mis dans result->param
- phraser_args($milieu,"/>","",$all_res,$result);
+ phraser_args($milieu, "/>", "", $all_res, $result);
// En 2e passe result->criteres contiendra un tableau
// pour l'instant on met le source (chaine) :
// si elle reste ici au final, c'est qu'elle contient une erreur
- $result->criteres = substr($milieu,0,@strpos($milieu,$result->apres));
+ $result->criteres = substr($milieu, 0, @strpos($milieu, $result->apres));
$milieu = $result->apres;
$result->apres = "";
//
// Recuperer la fin :
//
- if ($milieu[0] === '/') {
- $suite = substr($milieu,2);
+ if ($milieu[0]==='/'){
+ $suite = substr($milieu, 2);
$milieu = '';
} else {
- $milieu = substr($milieu,1);
+ $milieu = substr($milieu, 1);
$s = BALISE_FIN_BOUCLE . $id_boucle . ">";
$p = strpos($milieu, $s);
- if ($p === false) {
+ if ($p===false){
$err_b = array('zbug_erreur_boucle_fermant',
array('id' => $id_boucle));
erreur_squelette($err_b, $result);
}
- $suite = substr($milieu, $p + strlen($s));
+ $suite = substr($milieu, $p+strlen($s));
$milieu = substr($milieu, 0, $p);
}
//
$s = BALISE_POST_BOUCLE . $id_boucle . ">";
$p = strpos($suite, $s);
- if ($p !== false) {
+ if ($p!==false){
$result->apres = substr($suite, 0, $p);
- $suite = substr($suite, $p + strlen($s));
+ $suite = substr($suite, $p+strlen($s));
}
//
//
$s = BALISE_ALT_BOUCLE . $id_boucle . ">";
$p = strpos($suite, $s);
- if ($p !== false) {
+ if ($p!==false){
$result->altern = substr($suite, 0, $p);
- $suite = substr($suite, $p + strlen($s));
+ $suite = substr($suite, $p+strlen($s));
}
- $result->ligne = $ligne + substr_count($debut, "\n");
+ $result->ligne = $ligne+substr_count($debut, "\n");
$m = substr_count($milieu, "\n");
$b = substr_count($result->avant, "\n");
$a = substr_count($result->apres, "\n");
- if ($p = strpos($type, ':')) {
- $result->sql_serveur = substr($type,0,$p);
- $type = substr($type,$p+1);
+ if ($p = strpos($type, ':')){
+ $result->sql_serveur = substr($type, 0, $p);
+ $type = substr($type, $p+1);
}
$soustype = strtolower($type);
$err_b = true;
else {
phraser_criteres($result->param, $result);
- if (strncasecmp($soustype, TYPE_RECURSIF, strlen(TYPE_RECURSIF)) == 0) {
+ if (strncasecmp($soustype, TYPE_RECURSIF, strlen(TYPE_RECURSIF))==0){
$result->type_requete = TYPE_RECURSIF;
$args = $result->param;
array_unshift($args,
}
}
- $result->avant = public_phraser_html_dist($result->avant, $id_parent,$boucles, $descr, $result->ligne);
- $result->apres = public_phraser_html_dist($result->apres, $id_parent,$boucles, $descr, $result->ligne+$b+$m);
- $result->altern = public_phraser_html_dist($result->altern,$id_parent,$boucles, $descr, $result->ligne+$a+$m+$b);
- $result->milieu = public_phraser_html_dist($milieu, $id_boucle,$boucles, $descr, $result->ligne+$b);
+ $result->avant = public_phraser_html_dist($result->avant, $id_parent, $boucles, $descr, $result->ligne);
+ $result->apres = public_phraser_html_dist($result->apres, $id_parent, $boucles, $descr, $result->ligne+$b+$m);
+ $result->altern = public_phraser_html_dist($result->altern, $id_parent, $boucles, $descr, $result->ligne+$a+$m+$b);
+ $result->milieu = public_phraser_html_dist($milieu, $id_boucle, $boucles, $descr, $result->ligne+$b);
// Prevenir le generateur de code que le squelette est faux
if ($err_b) $result->type_requete = false;
// Verifier qu'il n'y a pas double definition
// apres analyse des sous-parties (pas avant).
-
- if (isset($boucles[$id_boucle])) {
+
+ if (isset($boucles[$id_boucle])){
$err_b_d = array('zbug_erreur_boucle_double',
- array('id'=>$id_boucle));
+ array('id' => $id_boucle));
erreur_squelette($err_b_d, $result);
- // Prevenir le generateur de code que le squelette est faux
+ // Prevenir le generateur de code que le squelette est faux
$boucles[$id_boucle]->type_requete = false;
} else
$boucles[$id_boucle] = $result;
$all_res = phraser_champs_etendus($debut, $ligne, $all_res);
$all_res[] = &$boucles[$id_boucle];
- $ligne += substr_count(substr($texte, 0, strpos($texte, $suite)), "\n");
+ if (!empty($suite)){
+ $ligne += substr_count(substr($texte, 0, strpos($texte, $suite)), "\n");
+ }
$texte = $suite;
}
return phraser_champs_etendus($texte, $ligne, $all_res);
}
+
?>
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/* *************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
'utf-8'=>array('charset'=>'utf8','collation'=>'utf8_general_ci'))
);
-// http://doc.spip.org/@spip_mysql_set_charset
+
/**
- * @param $charset
- * @param string $serveur
- * @param bool $requeter
- * @param bool $requeter
- * @return resource
+ * Définit un charset pour la connexion avec Mysql
+ *
+ * @param string $charset Charset à appliquer
+ * @param string $serveur Nom de la connexion
+ * @param bool $requeter inutilisé
+ * @return resource Ressource de résultats pour fetch()
*/
-function spip_mysql_set_charset($charset, $serveur='',$requeter=true,$requeter=true){
+function spip_mysql_set_charset($charset, $serveur='',$requeter=true){
$connexion = &$GLOBALS['connexions'][$serveur ? strtolower($serveur) : 0];
spip_log("changement de charset sql : "."SET NAMES "._q($charset), _LOG_DEBUG);
return mysql_query($connexion['last'] = "SET NAMES "._q($charset));
}
-// http://doc.spip.org/@spip_mysql_get_charset
-/**
- * @param array $charset
- * @param string $serveur
- * @param bool $requeter
- * @return array
- *
+/**
+ * Teste si le charset indiqué est disponible sur le serveur SQL
+ *
+ * @param array|string $charset Nom du charset à tester.
+ * @param string $serveur Nom de la connexion
+ * @param bool $requeter inutilisé
+ * @return array Description du charset (son nom est dans 'charset')
*/
function spip_mysql_get_charset($charset=array(), $serveur='',$requeter=true){
$connexion = &$GLOBALS['connexions'][$serveur ? strtolower($serveur) : 0];
/* *************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/* *************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
RewriteRule ^sitemap[.]xml$ spip.php?page=sitemap.xml [QSA,L]
##
+# Favicon pour itrucs
+# Si vous avez le plugin filtres_images et qu'une méthode de retouche a été configurée, vous pouvez décommenter la ligne ci-dessous.
+#RewriteRule ^apple-touch-icon(-(\d+x\d+))?(-precomposed)?[.]png$ spip.php?page=apple-touch-icon.png&size=$2 [QSA,L]
# expirer les images (pour contourner gros bug MSIE sur le cache)
# note : a decommenter si vous voulez tester
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
*/
/**
- * Defines ctype functions if required
- * @todo make them methods of csstidy class
- * @version 1.0
+ * Defines ctype functions if required.
+ *
+ * @TODO: Make these methods of CSSTidy.
+ * @since 1.0.0
*/
-if (!function_exists('ctype_space')) {
- /* ctype_space Check for whitespace character(s) */
- function ctype_space($text) {
- return!preg_match("/[^\s\r\n\t\f]/", $text);
+if (!function_exists('ctype_space')){
+ /* ctype_space Check for whitespace character(s) */
+ function ctype_space($text){
+ return (1===preg_match("/^[ \r\n\t\f]+$/", $text));
}
-
}
-if (!function_exists('ctype_alpha')) {
- /* ctype_alpha Check for alphabetic character(s) */
- function ctype_alpha($text) {
- return preg_match("/[a-zA-Z]/", $text);
+if (!function_exists('ctype_alpha')){
+ /* ctype_alpha Check for alphabetic character(s) */
+ function ctype_alpha($text){
+ return (1===preg_match('/^[a-zA-Z]+$/', $text));
+ }
+}
+if (!function_exists('ctype_xdigit')){
+ /* ctype_xdigit Check for HEX character(s) */
+ function ctype_xdigit($text){
+ return (1===preg_match('/^[a-fA-F0-9]+$/', $text));
}
-
}
/**
* An online version should be available here: http://cdburnerxp.se/cssparse/css_optimiser.php
* @package csstidy
* @author Florian Schmitz (floele at gmail dot com) 2005-2006
- * @version 1.5.2
+ * @version 1.5.5
*/
class csstidy {
* @var string
* @access private
*/
- public $version = '1.5.2';
+ public $version = '1.5.5';
/**
* Stores the settings
* @var array
*/
$this->settings['optimise_shorthands'] = 1;
$this->settings['remove_last_;'] = true;
+ $this->settings['space_before_important'] = false;
/* rewrite all properties with low case, better for later gzip OK, safe*/
$this->settings['case_properties'] = 1;
/* sort properties in alpabetic order, better for later gzip
$this->at .= $this->_unicode($string, $i);
}
// fix for complicated media, i.e @media screen and (-webkit-min-device-pixel-ratio:1.5)
- elseif (in_array($string{$i}, array('(', ')', ':', '.'))) {
+ elseif (in_array($string{$i}, array('(', ')', ':', '.', '/'))) {
$this->at .= $string{$i};
}
} else {
$this->sel_separate[] = strlen($this->selector);
} elseif ($string{$i} === '\\') {
$this->selector .= $this->_unicode($string, $i);
- } elseif ($string{$i} === '*' && @in_array($string{$i + 1}, array('.', '#', '[', ':'))) {
- // remove unnecessary universal selector, FS#147
+ } elseif ($string{$i} === '*' && @in_array($string{$i + 1}, array('.', '#', '[', ':')) && ($i==0 OR $string{$i - 1}!=='/')) {
+ // remove unnecessary universal selector, FS#147, but not comment in selector
} else {
$this->selector .= $string{$i};
}
*/
public function compress_important(&$string) {
if ($this->parser->is_important($string)) {
- $string = $this->parser->gvw_important($string) . '!important';
+ $important = $this->parser->get_cfg('space_before_important') ? ' !important' : '!important';
+ $string = $this->parser->gvw_important($string) . $important;
}
return $string;
}
$new_font_value = '';
$important = '';
// Skip if not font-family and font-size set
- if (isset($input_css['font-family']) && isset($input_css['font-size'])) {
+ if (isset($input_css['font-family']) && isset($input_css['font-size']) && $input_css['font-family'] != 'inherit') {
// fix several words in font-family - add quotes
if (isset($input_css['font-family'])) {
$families = explode(',', $input_css['font-family']);
case AT_END:
$out = & $output;
- $out .= $template[10] . str_replace("\n", "\n" . $template[10], $in_at_out);
+ $in_at_out = str_replace("\n\n", "\r\n", $in_at_out); // don't fill empty lines
+ $in_at_out = str_replace("\n", "\n" . $template[10], $in_at_out);
+ $in_at_out = str_replace("\r\n", "\n\n", $in_at_out);
+ $out .= $template[10] . $in_at_out . $template[9];
$in_at_out = '';
- $out .= $template[9];
break;
case COMMENT:
<paquet
prefix="compresseur"
categorie="performance"
- version="1.8.11"
+ version="1.8.13"
etat="stable"
- compatibilite="[3.0.0;3.1.*]"
+ compatibilite="[3.0.0;3.0.*]"
logo="images/compresseur-32.png"
>
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
// http://code.spip.net/@printWordWrapped
function printWordWrapped($image, $top, $left, $maxWidth, $font, $couleur, $text, $textSize, $align="left", $hauteur_ligne = 0) {
static $memps = array();
+ $fontps = false;
// imageftbbox exige un float, et settype aime le double pour php < 4.2.0
settype($textSize, 'double');
$line = '';
+ $lines = array();
while (count($words) > 0) {
$mot = $words[0];
// Deux passes pour recuperer, d'abord, largeur_ligne
// necessaire pour alignement right et center
+ $largeur_max = 0;
foreach ($lines as $line) {
if ($rtl_global) $line = rtl_visuel($line, $rtl_global);
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
<paquet
prefix="images"
categorie="multimedia"
- version="1.1.10"
+ version="1.1.11"
etat="stable"
compatibilite="[3.0.0;3.0.*]"
logo="images/image_filtre-32.png"
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\\r
* SPIP, Systeme de publication pour l'internet *\r
* *\r
- * Copyright (c) 2001-2014 *\r
+ * Copyright (c) 2001-2016 *\r
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *\r
* *\r
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *\r
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\\r
* SPIP, Systeme de publication pour l'internet *\r
* *\r
- * Copyright (c) 2001-2014 *\r
+ * Copyright (c) 2001-2016 *\r
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *\r
* *\r
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *\r
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\\r
* SPIP, Systeme de publication pour l'internet *\r
* *\r
- * Copyright (c) 2001-2014 *\r
+ * Copyright (c) 2001-2016 *\r
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *\r
* *\r
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *\r
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\\r
* SPIP, Systeme de publication pour l'internet *\r
* *\r
- * Copyright (c) 2001-2014 *\r
+ * Copyright (c) 2001-2016 *\r
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *\r
* *\r
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *\r
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\\r
* SPIP, Systeme de publication pour l'internet *\r
* *\r
- * Copyright (c) 2001-2014 *\r
+ * Copyright (c) 2001-2016 *\r
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *\r
* *\r
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *\r
/***************************************************************************\\r
* SPIP, Systeme de publication pour l'internet *\r
* *\r
- * Copyright (c) 2001-2014 *\r
+ * Copyright (c) 2001-2016 *\r
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *\r
* *\r
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *\r
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
[ | (#TOTAL_BOUCLE|>{200}|oui) [(#SELF|parametre_url{nb,1000}|lien_ou_expose{1000,#ENV{nb}|=={1000},ajax})]]
</p>
]<//B_cpt_mot>
-<INCLURE{fond=prive/objets/liste/mots-admin,id_groupe,par=titre,ajax,env} />
+<INCLURE{fond=prive/objets/liste/mots-admin,id_groupe,par=multi titre,ajax,env} />
[(#AUTORISER{creer,mot,'','',#ARRAY{id_groupe,#ID_GROUPE}})
[(#URL_ECRIRE{mot_edit,new=oui&id_groupe=#ID_GROUPE}|parametre_url{redirect,#SELF}
|icone_verticale{<:mots:icone_creation_mots_cles:>,mot-24.png,new,right})]
data,#INCLURE{fond=prive/objets/contenu/groupe_mots, id=#ID_GROUPE, id_groupe=#ID_GROUPE}}})]
</div>
<div class="nettoyeur"></div>
- <INCLURE{fond=prive/objets/liste/mots-admin,id_groupe,par=titre,ajax,env} />
+ <INCLURE{fond=prive/objets/liste/mots-admin,id_groupe,par=multi titre,ajax,env} />
[(#AUTORISER{voir,groupemots,#ID_GROUPE})
[(#URL_ECRIRE{groupe_mots,id_groupe=#ID_GROUPE}
|icone_verticale{<:mots:icone_voir_groupe_mots:>,groupe_mots-24.png,'',left})]
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
<paquet
prefix="revisions"
categorie="edition"
- version="1.7.10"
+ version="1.7.11"
etat="stable"
compatibilite="[3.0.0;3.0.*]"
logo="prive/themes/spip/images/revision-32.png"
<tr class="[(#COMPTEUR_BOUCLE|alterner{row_odd,row_even})]">
<td class='statut'>[(#INFO_STATUT{#OBJET,#ID_OBJET}|puce_statut{#OBJET})]</td>
<td class="type">[(#OBJET|objet_icone{16})]</td>
- <td class='diff'>#SET{diff,#ID_OBJET|revisions_diff{#OBJET,#ID_VERSION}}
+ <td class='diff'>[(#REM) desactive/ perf issue #SET{diff,#ID_OBJET|revisions_diff{#OBJET,#ID_VERSION}} ]
[<a href="#" onclick="$(this).parent().next().find('.diff').toggle('fast');return false;" title="<:revisions:voir_differences|attribut_html:>">[(#CHEMIN_IMAGE{diff-16.png}|balise_img{<:revisions:voir_differences:>})]</a>
(#GET{diff}|oui)]
</td>
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
// Mettre a jour la date si lastbuilddate
if ($data['lastbuilddate'])
$vals['date']= date("Y-m-d H:i:s", $data['lastbuilddate']);
-
- sql_updateq('spip_syndic_articles', $vals, "id_syndic_article=$id_syndic_article");
+
+ include_spip('inc/modifier');
+ objet_modifier_champs('syndic_article',$id_syndic_article,array('data'=>$vals,'action'=>'syndiquer'),$vals);
// Point d'entree post_syndication
pipeline('post_syndication',
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
$head = filtrer_entites($regs[1]);
} else
$head = $texte;
- if (preg_match(',<title[^>]*>(.*),i', $head, $regs))
- $result['nom_site'] = filtrer_entites(supprimer_tags(preg_replace(',</title>.*,i', '', $regs[1])));
+
+ if (preg_match(',<title[^>]*>(.*),ims', $head, $regs)){
+ $titre = trim($regs[1]);
+ if (!strlen($titre)){
+ $titre = substr($head,strpos($head,$regs[0]));
+ }
+ $result['nom_site'] = filtrer_entites(supprimer_tags(preg_replace(',</title>.*$,ims', '', $titre)));
+ }
+
if ($a = array_merge(
extraire_balises($head, 'meta'),
extraire_balises($head, 'http-equiv')
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
// passer l'url en absolue
$data['url'] = url_absolue(filtrer_entites($data['url']), $url_syndic);
+ // si on demande un dereferencement de l'URL, il faut verifier que ce n'est pas une redirection
+ if (_SYNDICATION_DEREFERENCER_URL){
+ $target = $data['url'];
+ include_spip("inc/distant");
+ for ($i = 0; $i<10; $i++){
+ // on fait un GET et pas un HEAD car les vieux SPIP ne repondent pas la redirection avec un HEAD (honte) sur un article virtuel
+ $res = recuperer_lapage($target, false, "GET", 4096);
+ if (!$res) break; // c'est pas bon signe car on a pas trouve l'URL...
+ if (is_array($res)) break; // on a trouve la page, donc on a l'URL finale
+ $target = $res; // c'est une redirection, on la suit pour voir ou elle mene
+ }
+ // ici $target est l'URL finale de la page
+ $data['url'] = $target;
+ }
+
// Trouver les microformats (ecrase les <category> et <dc:subject>)
if (preg_match_all(
',<a[[:space:]]([^>]+[[:space:]])?rel=[^>]+>.*</a>,Uims',
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
<paquet
prefix="sites"
categorie="edition"
- version="1.7.14"
+ version="1.7.19"
etat="stable"
compatibilite="[3.0.0;3.0.*]"
logo="prive/themes/spip/images/site-32.png"
#ANCRE_PAGINATION
<div class="liste-objets syndic_articles">
<table class='spip liste'>
-[<caption><span class="image_loading"></span><strong class="caption">(#ENV*{titre,#GRAND_TOTAL|singulier_ou_pluriel{info_1_article_syndique,info_nb_articles_syndiques}})</strong></caption>]
+[<caption><span class="image_loading"></span><strong class="caption">(#ENV*{titre,#GRAND_TOTAL|singulier_ou_pluriel{sites:info_1_article_syndique,sites:info_nb_articles_syndiques}})</strong></caption>]
<thead>
<tr class='first_row'>
<th class='statut' scope='col'>[(#TRI{statut,<span title="<:lien_trier_statut|attribut_html:>">#</span>,ajax})]</th>
<tr class="[(#COMPTEUR_BOUCLE|alterner{row_odd,row_even})]">
<td class='statut'>[(#STATUT|puce_statut{syndic_article})]</td>
<td class='titre principale'>[<a
- href="(#URL_ARTICLE)"
+ href="(#URL_ARTICLE)"[
+ (#LANG|=={#ENV{lang}}|non)hreflang="#LANG"]
title="<:info_numero_abbreviation|attribut_html:> #ID_SYNDIC_ARTICLE">#SET{a,'</a>'}]#TITRE[(#GET{a})]
<span class="auteurs">([(#LESAUTEURS), ][(#DATE|affdate_court)])</span>
[(#TAGS|afficher_enclosures)]
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
<BOUCLE_test(SYNDIC_ARTICLES){id_syndic=#ID_SYNDIC}{0,1}{si #SYNDICATION|=={non}}>
[(#AUTORISER{purger,site,#ID_SITE}|oui)
+ <INCLURE{fond=prive/objets/liste/syndic_articles,id_syndic,titre=<:sites:titre_articles_syndiques:>,par=date,ajax} />
<div class='purger_syndic'>
[(#BOUTON_ACTION{<:sites:lien_purger_syndication:>,#URL_ACTION_AUTEUR{purger_site,#ID_SYNDIC,#SELF},ajax,<:sites:confirmer_purger_syndication:>})]
</div>
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
query=
arianna\.libero\.it
+[Lilo]
+q=
+(.*\.|)uselilo\.org
+
[Lost]
x_query=
(www\.)?lo\.st
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
<paquet
prefix="stats"
categorie="statistique"
- version="0.4.34"
+ version="0.4.36"
etat="stable"
- compatibilite="[3.0.0;3.1.*]"
+ compatibilite="[3.0.0;3.0.*]"
logo="prive/themes/spip/images/statistique-32.png"
schema="1.0.0"
>
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
<input type="submit" class="submit" name="appliquer" value="<:svp:bouton_appliquer:>" />
</fieldset>]
<script type="text/javascript">
- //<![CDATA[
+ /*<![CDATA[*/
(function($){
$("#select_tous").click(function(){
jQuery("input.select_plugin").attr("checked",true);
onAjaxLoad(cocher_plugins_up);
onAjaxLoad(remonter_sur_erreurs);
})(jQuery);
- //]]>
+ /*]]>*/
</script>
</div>
</form>
</B_plugins>
<script type="text/javascript">
-//<![CDATA[
+/*<![CDATA[*/
(function($){
$('.plugins li.item a[rel=info]').click(function(){
var li = $(this).parents('li').eq(0);
});
}
})(jQuery);
-//]]>
-</script>
+/*]]>*/
+</script>
\ No newline at end of file
<input type="submit" name="annuler_actions" class="submit annuler_actions" value="<:bouton_annuler:>" />
<input type="submit" name="valider_actions" class="submit valider_actions" value="<:bouton_valider:>" />
</p>
- <script type="text/javascript">
+ <script type="text/javascript">/*<!\[CDATA\[*/
[(#REM)
Fonctionnement du JS.
- overlayClose // pas de click en dehors des éléments prévus
- onClose // apres la fermeture, on clique le bouton ayant 'fire'
]
- <!--
(function($){
$(function(){
if ($.modalbox !== 'undefined') {
}
});
})(jQuery);
- -->
+ /*\]\]>*/
</script>
</div>]
</B_plugins_trouves>
<script type="text/javascript">
-//<![CDATA[
+/*<![CDATA[*/
jQuery(function(){
jQuery('.plugins li.item a[rel=info]').click(function(){
var li = jQuery(this).parents('li').eq(0);
}
});
});
-//]]>
+/*]]>*/
</script>
// absent ou erreur ou pas compatible
$etat = $err ? 'erreur' : ($ninfo ? 'conflit' : 'absent');
// conflit signifie qu'il existe le prefixe actif, mais pas a la version demandee
- $this->log("Dedendance " . $p . " a resoudre ! ($etat)");
+ $this->log("Dependance " . $p . " a resoudre ! ($etat)");
switch ($etat) {
// commencons par le plus simple :
<paquet
prefix="svp"
categorie="maintenance"
- version="0.80.27"
+ version="0.80.28"
etat="stable"
compatibilite="[3.0.0;3.0.*]"
logo="svp-64.png"
#FORMULAIRE_ADMIN_PLUGIN{#ENV{voir},#ENV{verrouille},#ENV{id_paquet}}
</div>
<script type="text/javascript">
- //<![CDATA[
- jQuery(function(){
+ /*<![CDATA[*/
+ jQuery(function(){
jQuery('#contenu .svp_retour').on('hover',function(){
if (jQuery('.box .inner .hd h3 img.close', this).length == 0) {
jQuery('.box .inner .hd h3', this)
});
}
});
- });
- //]]>
+ });
+ /*]]>*/
</script>
\ No newline at end of file
$dest_tmp = preg_replace(";\.[\w]{2,3}$;i","",$dest_tmp).".$extension";
+ if (!defined('_SVP_PAQUET_MAX_SIZE')) define('_SVP_PAQUET_MAX_SIZE', 67108864); // 64Mo
include_spip('inc/distant');
- $dest_tmp = copie_locale($source,'force',$dest_tmp);
+ $dest_tmp = copie_locale($source,'force',$dest_tmp,_SVP_PAQUET_MAX_SIZE);
if (!$dest_tmp
OR !file_exists($dest_tmp = _DIR_RACINE . $dest_tmp)) {
spip_log("Chargement impossible de la source $source","teleport"._LOG_ERREUR);
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
+++ /dev/null
-<?php
-
-if (!defined('_ECRIRE_INC_VERSION')) return;
-
-# memoization minimale (preferer le plugin memoization)
-function cache_get($key) {
- return @unserialize(file_get_contents(_DIR_CACHE."wheels/".$key.".txt"));
-}
-function cache_set($key, $value) {
- $dir = sous_repertoire(_DIR_CACHE,"wheels/");
- return ecrire_fichier($dir.$key.".txt", serialize($value));
-}
-
-?>
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
$key = 'tw-'.md5(_WHEELS_VERSION."-".serialize($ruleset).$callback.$class._DIR_RACINE);
# lecture du cache
- include_spip('memoization_options');
- if (!function_exists('cache_get')) include_spip('inc/memoization-mini');
if ((!defined('_VAR_MODE') OR _VAR_MODE!='recalcul')
- AND $cacheruleset = cache_get($key))
+ AND $cacheruleset = tw_cache_get($key))
return $cacheruleset;
# calcul de la wheel
$ruleset = parent::loader($ruleset, $callback, $class);
# ecriture du cache
- cache_set($key, $ruleset);
+ tw_cache_set($key, $ruleset);
return $ruleset;
}
return $quoi;
}
-?>
+
+/**
+ * Lire une valeur en cache
+ * memoization minimale
+ * (utilise le plugin memoization si disponible)
+ *
+ * @param string $key
+ * @return mixed
+ */
+function tw_cache_get($key) {
+ if (function_exists('cache_get')){
+ return cache_get($key);
+ }
+ return @unserialize(file_get_contents(_DIR_CACHE."wheels/".$key.".txt"));
+}
+
+/**
+ * Ecrire une valeur en cache
+ * memoization minimale
+ * (utilise le plugin memoization si disponible)
+ *
+ * @param string $key
+ * @param mixed $value
+ * @param int|null $ttl
+ * @return bool
+ */
+function tw_cache_set($key, $value, $ttl=null) {
+ if (function_exists('cache_set')){
+ return cache_set($key, $value, $ttl);
+ }
+ $dir = sous_repertoire(_DIR_CACHE,"wheels/");
+ return ecrire_fichier($dir.$key.".txt", serialize($value));
+}
<paquet
prefix="tw"
categorie="edition"
- version="0.8.30"
+ version="0.8.31"
etat="stable"
compatibilite="[3.0.0;3.0.*]"
logo="textwheel-32.png"
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
}
- $arg = explode('-',$arg);
- $id_parent = array_shift($arg);
- $url = implode('-',$arg);
+ if (strncmp($arg,"-1-",3)==0){
+ $id_parent = -1;
+ $url = substr($arg,3);
+ }
+ else {
+ $arg = explode('-',$arg);
+ $id_parent = array_shift($arg);
+ $url = implode('-',$arg);
+ }
$where = 'id_parent='.intval($id_parent)." AND url=".sql_quote($url);
if($row = sql_fetsel('*','spip_urls',$where)){
- if (autoriser('modifier',$row['type'],$row['id_objet'])){
+ if (autoriser('modifierurl',$row['type'],$row['id_objet'])){
sql_delete('spip_urls',$where);
}
else
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
$arg = $securiser_action();
include_spip('inc/autoriser');
- if (autoriser('modifier',$type,$id)){
- $arg = explode('-',$arg);
- $type = array_shift($arg);
- $id = array_shift($arg);
- $url = implode('-',$arg);
-
+ $arg = explode('-',$arg);
+ $type = array_shift($arg);
+ $id = array_shift($arg);
+ $url = implode('-',$arg);
+ if (autoriser('modifierurl',$type,$id)){
include_spip('action/editer_url');
url_delete($type, $id, $url);
}
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
$arg = $securiser_action();
include_spip('inc/autoriser');
- if (autoriser('modifier',$type,$id)){
- $arg = explode('-',$arg);
- $type = array_shift($arg);
- $id = array_shift($arg);
- $url = implode('-',$arg);
-
+ $arg = explode('-',$arg);
+ $type = array_shift($arg);
+ $id = array_shift($arg);
+ $url = implode('-',$arg);
+ if (autoriser('modifierurl',$type,$id)){
include_spip('action/editer_url');
url_verrouiller($type, $id, $url);
}
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
<paquet
prefix="urls"
categorie="statistique"
- version="1.4.26"
+ version="1.4.29"
etat="stable"
compatibilite="[3.0.0;3.0.*]"
logo="prive/themes/spip/images/url-32.png"
[(#INFO_STATUT{#OBJET,#ID_OBJET}|!={prepa}|oui)
<div class="editer_urls">
[<span class='link'>
- #SET{auth,#AUTORISER{modifier,#OBJET,#ID_OBJET}}
+ #SET{auth,#AUTORISER{modifierurl,#OBJET,#ID_OBJET}}
[(#GET{auth})
<a href="#"
title="Modifier l'URL"
<td class='objet'><a href="[(#ID_OBJET|generer_url_entite{#TYPE})]">[(#TYPE|objet_info{texte_objet}|_T)] #ID_OBJET</a></td>
<td class='parent'>[(#ID_PARENT|?{#ID_PARENT})]</td>
<td class='date secondaire'>[(#DATE|affdate_jourcourt)]</td>
- <td class='action'>[(#AUTORISER{modifier,#TYPE,#ID_OBJET})[(#BOUTON_ACTION{[(#CHEMIN_IMAGE{supprimer-12}|balise_img{<:urls:bouton_supprimer_url:>})],[(#URL_ACTION_AUTEUR{supprimer_url,[(#ID_PARENT)-#URL],#SELF})],ajax})]]</td>
+ <td class='action'>[(#AUTORISER{modifierurl,#TYPE,#ID_OBJET})[(#BOUTON_ACTION{[(#CHEMIN_IMAGE{supprimer-12}|balise_img{<:urls:bouton_supprimer_url:>})],[(#URL_ACTION_AUTEUR{supprimer_url,[(#ID_PARENT)-#URL],#SELF})],ajax})]]</td>
</tr>
</BOUCLE_liste_urls>
</tbody>
[(#AUTORISER{administrer,url}|sinon_interdire_acces)]
#BOITE_OUVRIR{'',raccourcis}
-[(#AUTORISER{modifier})
+[(#AUTORISER{modifierurl})
[(#BOUTON_ACTION{[(#CHEMIN_IMAGE{url-edit-24.png}|balise_img)<:urls:actualiser_toutes:>],#URL_ACTION_AUTEUR{urls_actualiser,'',#SELF},icone horizontale})]
]
#BOITE_FERMER
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
// puis le bon parent avec 1 segment
// puis un parent indefini (le 0 de preference) et les deux segments
// puis un parent indefini (le 0 de preference) et 1 segment
- (intval($cp)?"id_parent=".intval($cp)." DESC, ":"")."segments DESC, id_parent"
+ (intval($cp)?"id_parent=".intval($cp)." DESC, ":"id_parent>=0 DESC, ")."segments DESC, id_parent"
);
if ($row){
if (!is_null($type) AND $row['url']==$type){
}
}
}
- define('_SET_HTML_BASE',1);
+ if (!defined('_SET_HTML_BASE')){
+ define('_SET_HTML_BASE',1);
+ }
return array($contexte, $entite, $url_redirect, null);
}
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
return autoriser('administrer','url');
}
+function autoriser_modifierurl($faire, $type='', $id=0, $qui = NULL, $opt = NULL){
+ if (autoriser('modifier',$type,$id,$qui,$opt)){
+ return true;
+ }
+
+ // si pas le droit de 'modifier', regarder d'un peu plus pres pourquoi
+ if (!$type OR !intval($id)) {
+ return false;
+ }
+ // verifier si l'objet existe encore en base
+ $table_sql = table_objet_sql($type);
+ $primary = id_table_objet($type);
+ if (!sql_countsel($table_sql,"$primary=".intval($id))){
+ return autoriser('administrer','url');
+ }
+ return false;
+}
+
function urls_afficher_fiche_objet($flux){
if (isset($GLOBALS['meta']['urls_activer_controle'])
AND $GLOBALS['meta']['urls_activer_controle']=='oui'
}
return $flux;
}
-?>
\ No newline at end of file
+?>
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/**************************************************************************/
/* SPIP, Systeme de publication pour l'internet */
/* */
-/* Copyright (c) 2001-2014 */
+/* Copyright (c) 2001-2016 */
/* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James */
/* */
/* Ce programme est un logiciel libre distribue sous licence GNU/GPL. */
/**************************************************************************/
/* SPIP, Systeme de publication pour l'internet */
/* */
-/* Copyright (c) 2001-2014 */
+/* Copyright (c) 2001-2016 */
/* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James */
/* */
/* Ce programme est un logiciel libre distribue sous licence GNU/GPL. */
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
#SET{p,pr_#ID_RUBRIQUE}<B_enfants>
[<p class='pagination'>(#PAGINATION)</p>]
<ul class='items'>
-<BOUCLE_enfants(RUBRIQUES){id_parent=#ID_RUBRIQUE}{statut?}{pagination 100 #GET{p}}><li
+<BOUCLE_enfants(RUBRIQUES){id_parent=#ID_RUBRIQUE}{statut?}{pagination 100 #GET{p}}{par num titre, titre}><li
class='rubrique'>[(#ENV{rubriques,0}|oui)<a
href='#' onclick="jQuery(this).item_pick('rubrique|#ID_RUBRIQUE','#ENV{name,id_item}','[(#TITRE*|extraire_multi|attribut_html|texte_script|replace{''',#VAL{'\\'}|concat{#EVAL{chr(39)}}})]','rubrique');return false;"
><img
title="<:bouton_choisir:> : [(#TITRE|attribut_html|couper{80})]"
class="choisir"
href="#"
- onclick="jQuery(this).item_pick('article|#ID_ARTICLE','#ENV{name,id_item}','#TITRE','article');return false;"
+ onclick="jQuery(this).item_pick('article|#ID_ARTICLE','#ENV{name,id_item}','[(#TITRE|textebrut|texte_script)]','article');return false;"
><:bouton_choisir:></a>]
</li>
</BOUCLE_enfants>
title="<:bouton_choisir:> : [(#TITRE|attribut_html|couper{80})]"
class="choisir"
href="#"
- onclick="jQuery(this).item_pick('rubrique|#ID_RUBRIQUE','#ENV{name,id_item}','#TITRE','rubrique');return false;"
+ onclick="jQuery(this).item_pick('rubrique|#ID_RUBRIQUE','#ENV{name,id_item}','[(#TITRE|textebrut|texte_script)]','rubrique');return false;"
><:bouton_choisir:></a>]
</li>
</BOUCLE_enfants>
title="<:bouton_choisir:> : [(#TITRE|attribut_html|couper{80})]"
class="choisir"
href="#"
- onclick="jQuery(this).item_pick('article|#ID_ARTICLE','#ENV{name,id_item}','#TITRE','article');return false;"
+ onclick="jQuery(this).item_pick('article|#ID_ARTICLE','#ENV{name,id_item}','[(#TITRE|textebrut|texte_script)]','article');return false;"
><:bouton_choisir:></a>]
</li>
</BOUCLE_enfants>
title="<:bouton_choisir:> : [(#TITRE|attribut_html|couper{80})]"
class="choisir"
href="#"
- onclick="jQuery(this).item_pick('rubrique|#ID_RUBRIQUE','#ENV{name,id_item}','#TITRE','rubrique');return false;"
+ onclick="jQuery(this).item_pick('rubrique|#ID_RUBRIQUE','#ENV{name,id_item}','[(#TITRE|textebrut|texte_script)]','rubrique');return false;"
><:bouton_choisir:></a>]
</li>
</BOUCLE_enfants>
<a
href="#"
class="choisir_ici"
- title="<:bouton_choisir:> : #GET{titre}"
- onclick="jQuery(this).item_pick('[(#ENV{quoi}|objet_type)]|#ENV{id_objet}','#ENV{name,id_item}','#GET{titre}','#ENV{quoi}');return false;"
+ title="<:bouton_choisir:> : [(#GET{titre}|attribut_html)]"
+ onclick="jQuery(this).item_pick('[(#ENV{quoi}|objet_type)]|#ENV{id_objet}','#ENV{name,id_item}','[(#GET{titre}|textebrut|texte_script)]','#ENV{quoi}');return false;"
><span><:bouton_choisir:></span></a>
]
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
$fauxalea2 = md5('fauxalea'.secret_du_site().$login.ceil(date('U')/86400));
$row = array('login' => $login,
- 'cnx' => 0,
+ 'cnx' => '0',
'logo' => "",
'alea_actuel' => substr_replace($fauxalea1,'.',24,0),
'alea_futur' => substr_replace($fauxalea2,'.',24,0)
/**
* autosave plugin
*
- * Copyright (c) 2009-2014 Fil (fil@rezo.net)
+ * Copyright (c) 2009-2016 Fil (fil@rezo.net)
* Dual licensed under the MIT and GPL licenses:
* http://www.opensource.org/licenses/mit-license.php
* http://www.gnu.org/licenses/gpl.html
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
border-bottom:2px solid #FEFF7F !important;
background:url(images/fond-inclure.png) repeat top left !important;
}
-.inclure_blocs > h6 {background:#FEFF7F;margin:0;padding:2px;margin-bottom:2px;font-family: Courier, "Courier New", monospace;font-size: 0.8em;}
+.inclure_blocs > h6 {background:#FEFF7F;color:#000000;margin:0;padding:2px;margin-bottom:2px;font-family: Courier, "Courier New", monospace;font-size: 0.8em;}
.inclure_blocs > h6:hover,
.inclure_blocs.hover {
background-color: #FDFF1F !important;
<div class='largeur clearfix'>
<a href='#conteneur' onclick='return focus_zone("#conteneur")'>Aller au contenu</a> |
<a href='#bando_navigation' onclick='return focus_zone("#bando_navigation")'>Aller à la navigation</a> |
- <a href='#recherche' onclick='return focus_zone("#recherche")'>Aller à la recherche</a>
+ <a href='#recherche' onclick='return focus_zone("#rapides .formulaire_recherche")'>Aller à la recherche</a>
</div>
</div>
.formulaire_traduire .liste-objets {margin-top:0;margin-bottom:0;}
.formulaire_traduire .liste-objets .first_row {display:none;}
.formulaire_traduire .supprimer_trad {float:#ENV{right};}
+.formulaire_traduire .voir_traductions {overflow: visible;}
/* les boutons action */
form.bouton_action_post, form.bouton_action_post div {display:inline;}
form.bouton_action_post.link button.submit:hover, .formulaire_spip .boutons input.link:hover,.formulaire_spip button.link:hover {border-bottom:1px solid;padding:0;}
/* formulaire_editer_logo */
-.formulaire_editer_logo .titrem,.formulaire_editer_logo .ajouter_survol {text-transform: uppercase;}
\ No newline at end of file
+.formulaire_editer_logo .titrem,.formulaire_editer_logo .ajouter_survol {text-transform: uppercase;}
+/* Date picker : passer par dessus des icones et du menu haut */
+.ui-datepicker { z-index: 1001 !important;}
.onglets_simple ul {list-style:none;margin-#ENV{left}:1px;padding:0;}
.onglets_simple ul li {float:#ENV{left};padding:0;margin:0;margin-bottom:-1px;}
-.onglets_simple ul li strong,.onglets_simple ul li a {display:block;float:#ENV{left};padding:4px 7px;border:1px solid #ENV{foncee};margin-#ENV{left}:5px;background-color:#eee;background-position:center left;background-repeat:no-repeat;}
+.onglets_simple ul li strong,.onglets_simple ul li a {display:block;float:#ENV{left};padding:4px 7px;border:1px solid #ENV{foncee};margin-#ENV{left}:5px;background-color:#eee;background-position:center #ENV{left};background-repeat:no-repeat;}
.onglets_simple ul li strong,.onglets_simple ul li a:hover {background-color:#f8f7f3;}
.onglets_simple ul li a:hover {cursor:hand;cursor:pointer;}
.onglets_simple ul li strong {border-bottom:1px solid #f8f7f3;color:#555;}
em, i { font-style: italic; }
small, .small { font-size: 80%; }
big, .big { font-size: 150%; }
-abbr[title], acronym[title] { border-bottom: .1em dotted; cursor: help; }
+abbr[title], acronym[title] { border-bottom: .1em dotted; text-decoration: none; cursor: help; }
dfn { font-weight: bold; font-style: italic; }
del { text-decoration: line-through; }
ins { text-decoration: none; background-color: #FFC; }
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
- * Copyright (c) 2001-2014 *
+ * Copyright (c) 2001-2016 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
<svn_revision>
<text_version>
-Origine: svn://trac.rezo.net/spip/tags/spip-3.0.21
-Revision: 22462
-Dernier commit: 2015-10-31 22:17:30 +0100
+Origine: svn://trac.rezo.net/spip/tags/spip-3.0.22
+Revision: 22914
+Dernier commit: 2016-03-10 15:00:32 +0100
</text_version>
-<origine>svn://trac.rezo.net/spip/tags/spip-3.0.21</origine>
-<revision>22462</revision>
-<commit>2015-10-31 22:17:30 +0100 </commit>
+<origine>svn://trac.rezo.net/spip/tags/spip-3.0.22</origine>
+<revision>22914</revision>
+<commit>2016-03-10 15:00:32 +0100 </commit>
</svn_revision>
\ No newline at end of file