Recherche avancée

Médias (1)

Mot : - Tags -/artwork

Autres articles (52)

  • Mise à jour de la version 0.1 vers 0.2

    24 juin 2013, par

    Explications des différents changements notables lors du passage de la version 0.1 de MediaSPIP à la version 0.3. Quelles sont les nouveautés
    Au niveau des dépendances logicielles Utilisation des dernières versions de FFMpeg (>= v1.2.1) ; Installation des dépendances pour Smush ; Installation de MediaInfo et FFprobe pour la récupération des métadonnées ; On n’utilise plus ffmpeg2theora ; On n’installe plus flvtool2 au profit de flvtool++ ; On n’installe plus ffmpeg-php qui n’est plus maintenu au (...)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

Sur d’autres sites (6740)

  • Evolution #4391 : Squelettes de la dist : améliorer le markup et passer à BEM

    14 octobre 2019, par tcharlss (*´_ゝ`)

    j’utiliserais plutôt un modifier de "menu__item" : <li class="menu__item menu__item--plan"></li>

    Cf. remarque de RastaPopoulos (qui a posté pendant que j’écrivais ma réponse :p)
    Il y a encore beaucoup de guides officieux qui ne sont pas à jour sur ce point.
    Le guide officiel : https://en.bem.info/methodology/naming-convention/

    Pas de HTML5 pour l’instant.

    Pourquoi ?

    Je pensais qu’il y avait encore des points bloquants ou tout du moins genants, mais finalement ça ne semble pas être le cas.
    Donc go go go pour le HTML5, mieux pour la sémantique et l’accessibilité.

    Classes en english avec des exceptions en français

    Why ?

    Français ou anglais, ou mélange des 2, je n’ai pas d’avis vraiment tranché là dessus. Est-ce qu’il y a un consensus à ce sujet ? (dans ce cas, on continue comme ça et on en parle plus :p)
    Mon avis en 2 mots, c’est que c’est en général moins verbeux, et ça rend le code accessible aux non francophones.

    Je ne pense pas que la version cible est la 3.3, 3.4 ou plus à la limite

    Ok pour 3.4. Mais on ne sait jamais, ça pourrait être prêt avant :)
    Je te laisse modifier, j’ai pas le droit d’éditer le ticket.

    pensez-vous que BEM est un truc utilisé par les personnes qui bidouillent leur site à partir de la dist ?

    Bis, cf. remarque de RastaPopoulos qui poste plus vite que son ombre concernant les perfs.
    C’est juste un standard parmis d’autres (OOCSS, SMACSS...), mais il me semble que c’est un des plus simples et un des plus utilisés.

    Après, je ne pense pas que ça forcerait les gens qui bidouillent la dist à l’apprendre et à l’adopter.
    Ce ne sont que des noms de classe, même sans connaître BEM et comprendre comment ces noms sont construits, ça n’empêche pas de bidouiller les styles.

    Rangement

    Il y a un autre point que je n’avais pas abordé, c’est le rangement des squelettes.

    Je pense que les listes d’objets pourraient être mutualisées comme dans spipr, en ajoutant 2 dossiers et en y créant ces squelettes :

    • inclure/liste/
      • articles.html
      • rubriques.html
      • etc.
    • inclure/resume/
      • article.html
      • rubrique.html
      • etc.

    Après, je me demande si on ne pourrait pas aller plus loin, et reprendre le rangement de z-core pour les blocs principaux.
    Attention, je parle bien uniquement de rangement, pas de mettre z-core en dépendance.

    C’est à dire concrètement :

    • header/
      • dist.html
    • footer/
      • dist.html
    • content/
      • sommaire.html
      • article.html
      • rubrique.html
      • etc.
    • aside/
      • sommaire.html
      • article.html
      • rubrique.html
      • etc.

    Ce qui fait que le squelette des pages en serait simplifié, exemple pour sommaire.html :

    <span class="CodeRay"><span class="tag">span> <span class="attribute-name">class</span>=<span class="string"><span class="delimiter">"</span><span class="content">page</span><span class="delimiter">"</span></span><span class="tag">></span>

       <span class="tag">span> <span class="attribute-name">class</span>=<span class="string"><span class="delimiter">"</span><span class="content">header</span><span class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span class="string"><span class="delimiter">"</span><span class="content">header</span><span class="delimiter">"</span></span> <span class="attribute-name">role</span>=<span class="string"><span class="delimiter">"</span><span class="content">banner</span><span class="delimiter">"</span></span><span class="tag">></span>
           <span class="tag">span><span class="error">{</span><span class="attribute-name">fond</span>=<span class="attribute-value">header</span><span class="error">/</span><span class="attribute-name">dist</span><span class="error">,</span> <span class="attribute-name">home</span>=<span class="attribute-value">oui</span><span class="error">}</span> <span class="tag">/></span>
       <span class="tag"></span>

       <span class="tag">span> <span class="attribute-name">class</span>=<span class="string"><span class="delimiter">"</span><span class="content">content</span><span class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span class="string"><span class="delimiter">"</span><span class="content">content</span><span class="delimiter">"</span></span><span class="tag">></span>

           <span class="tag">span> <span class="attribute-name">class</span>=<span class="string"><span class="delimiter">"</span><span class="content">main</span><span class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span class="string"><span class="delimiter">"</span><span class="content">main</span><span class="delimiter">"</span></span> <span class="attribute-name">role</span>=<span class="string"><span class="delimiter">"</span><span class="content">main</span><span class="delimiter">"</span></span><span class="tag">></span>
               <span class="tag">span><span class="error">{</span><span class="attribute-name">fond</span>=<span class="attribute-value">content</span><span class="error">/</span><span class="attribute-name">sommaire</span><span class="error">,</span> <span class="attribute-name">env</span><span class="error">}</span><span class="tag">></span>
           <span class="tag"></span>

           <span class="tag">span> <span class="attribute-name">class</span>=<span class="string"><span class="delimiter">"</span><span class="content">aside</span><span class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span class="string"><span class="delimiter">"</span><span class="content">aside</span><span class="delimiter">"</span></span><span class="tag">></span>
               <span class="tag">span><span class="error">{</span><span class="attribute-name">fond</span>=<span class="attribute-value">aside</span><span class="error">/</span><span class="attribute-name">sommaire</span><span class="error">,</span> <span class="attribute-name">env</span><span class="error">}</span><span class="tag">></span>
           <span class="tag"></span>

       <span class="tag"></span>

       <span class="tag">span> <span class="attribute-name">class</span>=<span class="string"><span class="delimiter">"</span><span class="content">footer</span><span class="delimiter">"</span></span> <span class="attribute-name">id</span>=<span class="string"><span class="delimiter">"</span><span class="content">footer</span><span class="delimiter">"</span></span> <span class="attribute-name">role</span>=<span class="string"><span class="delimiter">"</span><span class="content">contentinfo</span><span class="delimiter">"</span></span><span class="tag">></span>
           <span class="tag">span><span class="error">{</span><span class="attribute-name">fond</span>=<span class="attribute-value">footer</span><span class="error">/</span><span class="attribute-name">dist</span><span class="error">,</span> <span class="attribute-name">self</span>=<span class="error">#</span><span class="attribute-value">SELF</span><span class="error">}</span> <span class="tag">/></span>
       <span class="tag"></span>

    <span class="tag"></span>
    </span></span></span></span></span></span></span></span></span></span></span>

    Bon, je sais pas, je réfléchis tout haut.
    Peut-être que ça pourrait apporter aussi un peu de confusion.

    Branche et dépôt GIT

    Concernant le dépôt, je n’ai pas les droits pour créer une branche sur https://git.spip.net/SPIP/dist , du coup je bosse dans un fork : https://git.spip.net/tcharlss/dist/src/branch/bem

    Pour celleux intéressées à contribuer, c’est quoi la meilleurs méthode ? Je vous ajoute comme collaborateurs sur ce dépôt ?
    Ou alors il faut faire une vraie branche 3.4 dans le dépôt de l’orga SPIP ?

  • Evolution #3926 : Remplacement de safehtml par le plug htmlpurifier ou autre

    14 janvier 2019, par Guillaume Fahrner

    Sorry je n’avais pas vu ce message :

    cedric - a écrit :

    Depuis https://core.spip.net/projects/spip/repository/revisions/24131 le plugin HTMLPurifier est fonctionel sans nécessiter de patch dans le core ?

    Malheureusement si : il reste une surcharge de la fonction propre() via inc/texte.php. Elle est utilisée pour réaliser la protection HTML via echappe_html() AVANT le 1er filtrage de sécurité via echapper_html_suspect(). Un deuxième est réalisé via echappe_retour_modeles($t, $interdire_script) ou $interdire_script est vrai en espacé privé ou si le mode parano actif et faux sinon. (Je n’ai pas su faire autrement, mais il y a peut être une astuce a trouver.)

    Je ne sais pas si tu considères que c’est le core mais une surchage des règles YAML de textwheel est également réalisé afin que l’on envoi bien tout qui doit l’être dans les filtres de sécurité.

    Donc non pas de modification du core nécessaire pour que le plugin fonctionne. A voir si ces surcharges mériterais une "intégration directe" future.

    on est bon et on peut release tel quel en indiquant que le plugin htmlpurifier est disponible pour tests et se laisser le temps ?

    A mon avis oui. Pour rappel : le mode parano est actuellement inutilisable avec l’actuel safehtml(). Du coup ça peut être une approche pour l’intégrer/le tester au fil de l’eau : commencé par les gens qui utilisent le mode parano en leur recommandant chaudement/forcant ce plugin.

    Ci dessous la liste des plugins que j’utilise sans problème hors textwheel/todo (cf https://core.spip.net/issues/4254) avec htmlPurifier :

    Abonnements 3.3.6 - stable
    Agenda 3.26.0 - stable
    API de vérification 1.8.1 - stable
    API Prix 0.1.16 - dev
    Article PDF 1.0.10 - stable
    Autorité 0.10.20 - stable
    Banque&paiement 3.6.7 - stable
    Cache Cool 0.5.4 - stable
    Challenge Hacking 1.0.0 - stable
    Champs Extras 3.11.7 - stable
    Chatbox 1.0.5 - stable
    Coloration Code 99 - stable
    Commandes 1.15.5 - stable
    Compositions 3.7.3 - stable
    Crayons 1.26.18 - stable
    CTF all the day 1.0.0 - stable
    Facteur 3.6.2 - stable
    Formulaire de contact avancé 0.16.5 - stable
    Frimousses 1.5.1 - stable
    GIS 4.44.24 - stable
    HTML Purifier 5.0.0.1 - test
    iCalendar 0.4.5 - test
    Import ics 4.4.3 - stable
    Imprimer document 0.2.2 - stable
    LangOnet 1.4.6 - stable
    MailShot 1.27.3 - stable
    MailSubscribers 2.11.3 - stable
    Markdown 1.0.2 - test
    Messagerie 3.1.8 - test
    Mini Calendrier 2.4.1 - stable
    Mot de passe dès l’inscription 1.0.19 - stable
    Newsletters 1.6.0 - stable
    Nombres de visiteurs connectés 0.2.3 - stable
    NoSPAM 1.5.18 - stable
    Notation 2.4.2 - test
    Notifications 3.6.8 - stable
    Notifications avancées 0.4.2 - test
    Pages 1.3.7 - stable
    Pre & Code 99 - test
    Saisies pour formulaires 3.11.1 - stable
    Social tags 1.1.1 - stable
    SPIP Bonux 3.4.6 - stable
    Tip A Friend 1.6.9 - stable
    Todo 2.2.1 - stable
    Traduction entre rubriques 3.1.3 - stable
    YAML 1.5.4 - stable

    Je pense que si on doit intégrer le plugin ça sera sur la version dev 3.3, pas sur la version stable, et ça va demander de prendre le temps de voir toutes les modifs et les impacts éventuels que tu n’aurais pas vu ou auxquelles tu n’aurais pas pensé.

    Clairement je pense me faire insulter :-) Je suis prêt ^^ Plus sérieusement il faut absolument tester/restester/reretester. J’ai tenté de faire au mieux mais je ne peux pas revoir tout le code HTML généré par les plugins... Au moindre écart de conformité HTML ca ne passera pas. Le bug https://core.spip.net/issues/4254 en est un bon exemple : avec htmlpurifier l’élément

    est supprimé ; avec "safehtml() standard" le code invalide est conservé et c’est le navigateur qui va corriger.

    Il faut voir les bons cotés : cela force les bonnes pratiques, met SPIP au plus haut niveau du standard (Drupal fait moins bien), aide a identifier des bugs et ce qui passe dans propre() sera obligatoirement valide. C’est aussi a terme moins de problèmes d’injection XSS a traiter pour la team.

    Sur la fonction de survol des logos le sujet reste ouvert ? On est en effet d’accord que cette écriture est obsolète et devrait être revue de toute façon, mais c’est donc un point à traiter dans le core le cas échéant

    Euh je comprend pas, faut-il intégrer le patch des puces de statut dans ce plugin ? Je pensais plus coder le truc """proprement""" avec un JS dans le directement dans /prive/. A décolérer complètement à mon sens.

    Encore merci pour le temps que tu y passes :)

  • ffmpeg merge video and audio + fade out

    1er mai 2016, par jacky brown

    I have one video file and one audio file.
    I want to merge them together that the final output video will be in the length of the video and will contain the audio in the background.

    i did :

    ffmpeg -i output.avi -i bgmusic.mp3 -filter_complex " [1:0] apad " -shortest out.avi

    but the background audio is cut in the end of the final merge movie.
    i want it to fade out nicely.

    how can i do it ??

    but the background audio is cut in the end of the final merge movie.
    i want it to fade out nicely.

    how can i do it ??

    thanks.