Recherche avancée

Médias (0)

Mot : - Tags -/formulaire

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

Autres articles (96)

  • MediaSPIP 0.1 Beta version

    25 avril 2011, par

    MediaSPIP 0.1 beta is the first version of MediaSPIP proclaimed as "usable".
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

Sur d’autres sites (6807)

  • 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 :)

  • How to install ffmpeg

    8 octobre 2017, par user5913892

    I want to make a "mini" editor video. My goal is, cut some part of the video and then save it and also create an undo button. Now , I was looking for the best solution (This operation have to be done in a website) and I found that I have to use ffmpeg. I didn’t know if ffmpeg was already installed on my server and I use this php script to discover it :

    <?php

    /**
    * Test script for FFmpeg
    *
    * @author Andycoder /wdevblog.net.ru/>
    */

    ini_set('display_errors',1);
    error_reporting(E_ALL);

    $is_windows = strpos( php_uname(), "Windows" ) !== false;
    $ffmpeg_path = !empty( $_POST['ffmpeg_path'] ) && strpos( $_POST['ffmpeg_path'], 'ffmpeg' ) !== false ? trim( $_POST['ffmpeg_path'] ) : '';
    if( !$ffmpeg_path && !$is_windows ){
       $ffmpeg_path = trim( shell_exec( 'which ffmpeg' ) );
    }

    function getCodecs( $ffmpeg_path = '' ) {

       $lines = array();
       $encoders = array();
       exec( "{$ffmpeg_path} -codecs", $lines);

       foreach ($lines as $line) {

           if (preg_match('/^\s+([A-Z .]+)\s+(\w{2,})\s+(.*)$/', $line, $m)) {
               $type = trim($m[1]);
               if (strpos($type, 'E') !== false) {
                   $encoder = trim($m[2]);
                   if (strpos($encoder, ',') !== false) {
                       foreach (split(',', $encoder) as $e) {
                           $encoders[] = $e;
                       }
                   } else {
                       $encoders[] = $encoder;
                   }
               }
           }
       }
       sort($encoders);

       return $encoders;
    }

    function getPHPPath(){

       $is_windows = strpos( strtolower(php_uname()), 'windows' ) !== false;

       if( $is_windows ){
           $output = dirname(ini_get('extension_dir')) . "/php.exe";
       }else{
           $output = trim(shell_exec("which php"));
       }

       return $output;
    }

    $info = array();

    $info['php_version'] = array( 'name' => 'PHP version', 'value' => phpversion() );
    $info['php_path'] = array( 'name' => 'PHP path', 'value' =>  getPHPPath() );
    $info['web_server'] = array( 'name' => 'Web server', 'value' => $_SERVER['SERVER_SOFTWARE'] );
    $info['ffmpeg_path'] = array( 'name' => 'FFMPEG path', 'value' =>  $ffmpeg_path );

    $info['ffmpeg_version'] = array( 'name' => 'FFMPEG version', 'value' => '' );
    if( $ffmpeg_path ){
       $ffmpeg_ver = shell_exec( "{$ffmpeg_path} -version" );
       preg_match( '/.+version.+/', $ffmpeg_ver, $matches );
       if( !empty( $matches ) ){
           $info['ffmpeg_version']['value'] = $matches[0];
       }
    }
    $info['yamdi_path'] = array( 'name' => 'Yamdi path', 'value' => !$is_windows ? trim(shell_exec('which yamdi')) : '' );
    $info['mp4box_path'] = array( 'name' => 'MP4Box (GPAC) path', 'value' => !$is_windows ? trim(shell_exec('which MP4Box')) : '' );
    $info['qtfaststart_path'] = array( 'name' => 'qt-faststart path', 'value' => !$is_windows ? trim(shell_exec('which qt-faststart')) : '' );
    $info['flvtool2_path'] = array( 'name' => 'flvtool2 path', 'value' => !$is_windows ? trim(shell_exec('which flvtool2')) : '' );

    $info['ffmpeg_codecs'] = array( 'name' => 'FFMPEG codecs', 'value' => array() );
    if( $ffmpeg_path ) {
       $info['ffmpeg_codecs']['value'] = getCodecs( $ffmpeg_path );
    }

    if( empty( $info['ffmpeg_codecs']['value'] ) ){
       $info['ffmpeg_path']['value'] = '';
    }

    ksort($info);

    ?>



       



    <code class="echappe-js">&lt;script type=&quot;text/javascript&quot;&gt;<br />
       function expandCollapse( id ){<br />
           if( document.getElementById(id).style.display == 'none' ){<br />
               document.getElementById(id).style.display = 'block';<br />
           }else{<br />
               document.getElementById(id).style.display = 'none';<br />
           }<br />
       }<br />
    &lt;/script&gt;


    < ?php foreach( $info as $key => $opt ) : ?>

    < ?php endforeach ; ?>

    Property Value
    < ?php echo $opt[’name’] ; ?> :

    < ?php if( !empty( $opt[’value’] ) ) : ?>

    < ?php
    if( !is_array( $opt[’value’] ) ) :
    echo $opt[’value’] ;
    else : ?>

    [Expand/Collapse]

    < ?php foreach( $opt[’value’] as $val ) : ?>

    < ?php echo $val ; ?>

    < ?php endforeach ; ?>

    < ?php endif ; ?>

    < ?php else : ?>
    [Not found]
    < ?php endif ; ?>

    that return me this :

    enter image description here

    So, I have not ffmpeg installed on that server. The server should be Linux, I say this because I use one of the many website in Internet to discover it.
    enter image description here

    I know that the website say that the Webserver is Engine-x, but my company has told that is Apache (as the php script already told me). Now , I found this link http://www.mysql-apache-php.com/ffmpeg-install.htm (in Stackoverflow and many other parts) that say how to install ffmpeg in Linux, but Where should I execute these commands ? Should I use Putty ? or What ?

  • How to install ffmpeg

    9 mars 2016, par user5913892

    I want to make a "mini" editor video. My goal is, cut some part of the video and then save it and also create an undo button. Now , I was looking for the best solution (This operation have to be done in a website) and I found that I have to use ffmpeg. I didn’t know if ffmpeg was already installed on my server and I use this php script to discover it :

    &lt;?php

    /**
    * Test script for FFmpeg
    *
    * @author Andycoder /wdevblog.net.ru/>
    */

    ini_set('display_errors',1);
    error_reporting(E_ALL);

    $is_windows = strpos( php_uname(), "Windows" ) !== false;
    $ffmpeg_path = !empty( $_POST['ffmpeg_path'] ) &amp;&amp; strpos( $_POST['ffmpeg_path'], 'ffmpeg' ) !== false ? trim( $_POST['ffmpeg_path'] ) : '';
    if( !$ffmpeg_path &amp;&amp; !$is_windows ){
       $ffmpeg_path = trim( shell_exec( 'which ffmpeg' ) );
    }

    function getCodecs( $ffmpeg_path = '' ) {

       $lines = array();
       $encoders = array();
       exec( "{$ffmpeg_path} -codecs", $lines);

       foreach ($lines as $line) {

           if (preg_match('/^\s+([A-Z .]+)\s+(\w{2,})\s+(.*)$/', $line, $m)) {
               $type = trim($m[1]);
               if (strpos($type, 'E') !== false) {
                   $encoder = trim($m[2]);
                   if (strpos($encoder, ',') !== false) {
                       foreach (split(',', $encoder) as $e) {
                           $encoders[] = $e;
                       }
                   } else {
                       $encoders[] = $encoder;
                   }
               }
           }
       }
       sort($encoders);

       return $encoders;
    }

    function getPHPPath(){

       $is_windows = strpos( strtolower(php_uname()), 'windows' ) !== false;

       if( $is_windows ){
           $output = dirname(ini_get('extension_dir')) . "/php.exe";
       }else{
           $output = trim(shell_exec("which php"));
       }

       return $output;
    }

    $info = array();

    $info['php_version'] = array( 'name' => 'PHP version', 'value' => phpversion() );
    $info['php_path'] = array( 'name' => 'PHP path', 'value' =>  getPHPPath() );
    $info['web_server'] = array( 'name' => 'Web server', 'value' => $_SERVER['SERVER_SOFTWARE'] );
    $info['ffmpeg_path'] = array( 'name' => 'FFMPEG path', 'value' =>  $ffmpeg_path );

    $info['ffmpeg_version'] = array( 'name' => 'FFMPEG version', 'value' => '' );
    if( $ffmpeg_path ){
       $ffmpeg_ver = shell_exec( "{$ffmpeg_path} -version" );
       preg_match( '/.+version.+/', $ffmpeg_ver, $matches );
       if( !empty( $matches ) ){
           $info['ffmpeg_version']['value'] = $matches[0];
       }
    }
    $info['yamdi_path'] = array( 'name' => 'Yamdi path', 'value' => !$is_windows ? trim(shell_exec('which yamdi')) : '' );
    $info['mp4box_path'] = array( 'name' => 'MP4Box (GPAC) path', 'value' => !$is_windows ? trim(shell_exec('which MP4Box')) : '' );
    $info['qtfaststart_path'] = array( 'name' => 'qt-faststart path', 'value' => !$is_windows ? trim(shell_exec('which qt-faststart')) : '' );
    $info['flvtool2_path'] = array( 'name' => 'flvtool2 path', 'value' => !$is_windows ? trim(shell_exec('which flvtool2')) : '' );

    $info['ffmpeg_codecs'] = array( 'name' => 'FFMPEG codecs', 'value' => array() );
    if( $ffmpeg_path ) {
       $info['ffmpeg_codecs']['value'] = getCodecs( $ffmpeg_path );
    }

    if( empty( $info['ffmpeg_codecs']['value'] ) ){
       $info['ffmpeg_path']['value'] = '';
    }

    ksort($info);

    ?>



       



    <code class="echappe-js">&lt;script type=&quot;text/javascript&quot;&gt;<br />
       function expandCollapse( id ){<br />
           if( document.getElementById(id).style.display == 'none' ){<br />
               document.getElementById(id).style.display = 'block';<br />
           }else{<br />
               document.getElementById(id).style.display = 'none';<br />
           }<br />
       }<br />
    &lt;/script&gt;


    < ?php foreach( $info as $key => $opt ) : ?>

    < ?php endforeach ; ?>

    Property Value
    < ?php echo $opt[’name’] ; ?> :

    < ?php if( !empty( $opt[’value’] ) ) : ?>

    < ?php
    if( !is_array( $opt[’value’] ) ) :
    echo $opt[’value’] ;
    else : ?>

    [Expand/Collapse]

    < ?php foreach( $opt[’value’] as $val ) : ?>

    < ?php echo $val ; ?>

    < ?php endforeach ; ?>

    < ?php endif ; ?>

    < ?php else : ?>
    [Not found]
    < ?php endif ; ?>

    that return me this :

    enter image description here

    So, I have not ffmpeg installed on that server. The server should be Linux, I say this because I use one of the many website in Internet to discover it.
    enter image description here

    I know that the website say that the Webserver is Engine-x, but my company has told that is Apache (as the php script already told me). Now , I found this link http://www.mysql-apache-php.com/ffmpeg-install.htm (in Stackoverflow and many other parts) that say how to install ffmpeg in Linux, but Where should I execute these commands ? Should I use Putty ? or What ?