Recherche avancée

Médias (0)

Mot : - Tags -/navigation

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (37)

  • La file d’attente de SPIPmotion

    28 novembre 2010, par

    Une file d’attente stockée dans la base de donnée
    Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
    Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...)

  • Personnaliser les catégories

    21 juin 2013, par

    Formulaire de création d’une catégorie
    Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
    Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
    On peut modifier ce formulaire dans la partie :
    Administration > Configuration des masques de formulaire.
    Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
    Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)

  • Participer à sa traduction

    10 avril 2011

    Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
    Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
    Actuellement MediaSPIP n’est disponible qu’en français et (...)

Sur d’autres sites (6291)

  • Anomalie #3799 : appliquer_filtre ne s’applique pas aux filtres image_

    10 février 2017

    L’intention que tu cites n’était peut être pas forcément le but de la fonction appliquer_filtre() à l’origine.

    Bon, j’ai un problème. Comme je disais en #note-7 il y a un bug sur appliquer filtre et l’option qui avait été ajoutée en r71781.

    En plein dans le bug

    Il y a un cas intéressant sur la zone dans SarkaSPIP, parmi d’autres :

    [(#ENVid_rubrique|appliquer_filtreaccesrestreint_rubrique_restreinte,0|oui) #SETretour_logout, #URL_PAGEsommaire]
    

    function accesrestreint_rubrique_restreinte($id_rubrique, $id_auteur = null)

    Le zéro passé en second paramètre, on ne sait pas s’il était
    - à destination de appliquer_filtre() pour éviter absolument qu’il retourne la valeur id_rubrique SI accès restreint est absent, ou s’il était
    - à destination de accesrestreint_rubrique_restreinte() pour indiquer l’auteur 0 (ce qui est peu probable)
    Et du coup, ça casse le fonctionnement de accesrestreint_rubrique_restreinte() car ça ne prend pas en compte le visiteur courant car $id_auteur ne vaut plus null

    À d’autres endroits au contraire, par exemple dans Emballe Medias, on trouve :

    [(#INCLUREjavascript/jquery.shiftcheckbox.js|appliquer_filtreminifier,js)]
    

    Ici, la présence de l’option ’js’ fait que appliquer_filtre va comprendre qu’il doit toujours retourner le contenu d’origine même en absence du filtre.
    C’est d’ailleurs très certainement ce qui est souhaité ici. Sauf que ce n’est pas voulu explicitement a priori.

    On trouve aussi un usage avec |sinon :

    ["geometry" : (#GEOMETRY|appliquer_filtrewkt_to_json|sinon"type" : "Point", "coordinates" : [#LON, #LAT]),]
    

    Corrections de appliquer_filtre en créant une seconde fonction ?

    Ces 2 derniers exemples montrent que quelque soit l’option choisie pour corriger on va casser des usages (en créant une seconde fonction pour faire l’inverse), ie :

    Option Historique)
    - T|appliquer_filtre{F} retourne ’’ si F introuvable
    - T|appliquer_filtre_ou_continuer retourne T si F introuvable

    Option Chaînage)
    - T|appliquer_filtre{F} retourne T si F introuvable
    - T|appliquer_filtre_sinon_rien{F} retourne ’’ si F introuvable

    Ou déprécier appliquer_filtre()

    Une autre solution est de créer 2 nouvelles fonctions pour remplacer appliquer_filtre et son fonctionnement incertain.
    Contrainte : elles ne doivent pas commencer par filtre_.
    - T|utiliser_filtre{F} retourne T si F introuvable (chaînage)
    - T|utiliser_filtre_sinon_rien{F} retourne ’’ si F introuvable

    C’est peut être une solution acceptable. On aurait du être plus vigilent en introduisant une nouvelle fonction plutôt qu’un paramètre en plus à appliquer_filtre() alors que celle ci utilise func_get_args…

  • Anomalie #4177 (Nouveau) : Les traitements d’images de mauvaise extension créent des erreurs fatales

    26 septembre 2018

    Comme il a été discuté sur la liste spip-dev, il y a des cas maintenant (depuis une mise à jour des librairies GD sur les serveurs), où des images créent des erreurs fatales, ce qui plante complètement les pages.

    Cela se passe souvent sur des sites anciens, car normalement sur les SPIP récents, des images dont l’extension est incorrecte par rapport au contenu réel du fichier sont renommés dès l’import.
    Mais dans le cas de vieux sites, il peut encore y avoir des logos ou des documents, par exemple IMG/arton1.jpg dont le contenu est au format PNG.
    Avant libgd 2.?, et après libgd 2.2.5, une erreur "normale" est levée… mais notamment en libgd 2.2.4 (dans Debian 9 par exemple), une erreur fatale est levée.
    https://github.com/libgd/libgd/issues/338

    Il faudrait j’imagine :

    1. dans SPIP éviter ce problème.
    2. permettre de corriger les fichiers impactés

    Éviter le problème fatal dans SPIP

    La solution la plus évidente est d’analyser le contenu "mime type" du fichier prioritairement à l’extension.
    Cette solution fonctionne avec une analyse via la fonction finfo_file
    Je joins un patch qui permet cela, et log dans tmp/log/images tout fichier d’extension incorrect

    Recherche et correction des fichiers erronés

    D’autre part il peut être pratique de permettre une recherche / correction de ces fichiers.
    J’ai proposé une commande Spip-cli images:verifier:extensions qui permet également de réparer les fichiers avec l’option --reparer
    - https://zone.spip.net/trac/spip-zone/changeset/111668

  • Evolution #3897 (Nouveau) : Traduction des configurations (yaml, xml, json) et certains formulaire...

    6 février 2017, par marcimat ☺☮☯♫

    Je remets le texte d’un mail envoyé sur spip-devel (comme il n’y a plus de liens gmane pour les voir), sur le sujet parlant de la fonction _T_ou_typo() qui permet de pouvoir traiter des chaînes contenant

    • soit "du texte"
    • soit une "<:chaine_de_langue:>"
    • soit des "<multi>...</multi>"

    La fonction _T_ou_typo() a comme usage principal d’appliquer la fonction typo() sur le texte qui lui est envoyé, ou récursivement sur chaque valeur si un tableau lui est donné.
    Et, si un des textes est de la forme &lt;:cle_de_langue:> ou &lt;:module:cle_de_langue:> (une forme simple de l’écriture de chaîne de langue dans les squelettes donc), alors c’est la valeur de traduction de cette chaîne de langue qui est retourné.

    Autrement dit :

    _T_ou_typo("Coucou") == "Coucou" 
    _T_ou_typo("<:module:bonjour :>") == "Coucou" (avec le fichier de langue qui va bien quand même)
    _T_ou_typo("Coucou") == "Coucou" 
    _T_ou_typo(["Coucou", "<:module:bonjour :>", "Coucou"]) == ["Coucou", "Coucou", "Coucou"]
    

    Cette intégration pose plusieurs questions sur l’usage / le besoin d’origine et sur la réponse apportée.

    L’usage et solution actuelle

    Le besoin est de permettre dans des fichiers de configuration (yaml, xml, json) de certains plugins, ou dans des options de configuration de certains plugins directement dans l’interface privée de SPIP (Menus, Formidable, Champs Extras, ...), de pouvoir indiquer soit un texte quelconque, soit de se référer à une chaîne de langue quelque part.

    Par exemple, dans une déclaration .yaml d’une saisie, on peut trouver : label: '&lt;:saisies:option_groupe_description:>'. On pourrait utiliser pour des saisies spécifiques à un site label: 'Description' si on sait que le site n’est pas multilingue par exemple.

    La difficulté d’utiliser directement le code de langue (ie : label: 'saisies:option_groupe_description'" qui paraît pourtant plus simple) est qu’il est impossible de discriminer les cas où on écrirait un code de langue, des cas où c’est réellement le texte voulu, par exemple avec "label: 'todo'", qui si on utilise le code de langue retournerait ’à venir’ (dans spip_fr.php), alors que ce n’était pas forcément ce qui serait souhaité.

    D’où donc l’apparition de cette écriture &lt;:truc:muche:> pour les textes de configuration, écriture connue déjà dans les squelettes SPIP, avec les nuances qu’on parle bien ici d’une syntaxe simplifiée.
    On ne peut pas écrire label: '&lt;:module:nb_elephants{nb=5}:>' par exemple.

    Proposition

    Il me semble qu’on pourrait voir la chose autrement, en considérant que toute présence d’un idiome doit être transformé par la fonction typo().
    La fonction typo() traite déjà en fait le cas des polyglottes <multi>...</multi> que l’on peut écrire à la fois dans les squelettes SPIP et à la fois dans le texte d’un article.
    Il suffirait d’ajouter la gestion de l’idiome &lt;:module:cle:> également. Ainsi typo("&lt;:module:bonjour:>") retournerait "Coucou" en allant piocher la chaîne de langue correspondante.

    La conséquence est que ça permettrait plus de possibilités que le besoin d’origine (on pourrait mettre des chaines de langue dans les textes d’articles par exemple)
    (je ne dis pas que ça serait recommandé non plus, mais dans certains cas ça serait pratique !), tout en répondant au problème avec les configurations de type .yaml ou d’autres déclarations multilingues : il leur suffirait d’appliquer typo() sans autre question, du moins en théorie.