yourls:correctifs

Ceci est une ancienne révision du document !


Sur la page de détail statistiques d'un lien l'icone à coté du lien apparait cassée. Pour moi c'est un bug dans le fichier

includes/functions.php

Ou l'on a ceci :

function yourls_favicon( $echo = true ) {
        static $favicon = null;
        if( $favicon !== null )
                return $favicon;
 
        $custom = null;
        // search for favicon.(gif|ico|png|jpg|svg)
        foreach( array( 'gif', 'ico', 'png', 'jpg', 'svg' ) as $ext ) {
                if( file_exists( YOURLS_USERDIR. '/favicon.' . $ext ) ) {
                        $custom = 'favicon.' . $ext;
                        break;
                }
        }
 
        if( $custom ) {
                $favicon = yourls_site_url( false, YOURLS_USERURL . '/' . $custom );
        } else {
                $favicon = yourls_site_url( false ) . '/images/favicon.gif';
        }
        if( $echo )
                echo $favicon;
        return $favicon;
}

Qu'il vaudrait mieux remplacer par ceci (selon moi)

function yourls_favicon( $echo = true ) {
 
        static $favicon = null;
 
        if( $favicon !== null ) {
 
                // FIX AMU 20140821
                if ($echo) {
                        echo $favicon;
                }
                return $favicon;
        }
 
        $custom = null;
        // search for favicon.(gif|ico|png|jpg|svg)
        foreach( array( 'gif', 'ico', 'png', 'jpg', 'svg' ) as $ext ) {
                if( file_exists( YOURLS_USERDIR. '/favicon.' . $ext ) ) {
                        $custom = 'favicon.' . $ext;
                        break;
                }
        }
 
        if( $custom ) {
                $favicon = yourls_site_url( false, YOURLS_USERURL . '/' . $custom );
        } else {
                $favicon = yourls_site_url( false ) . '/images/favicon.gif';
        }
        if( $echo )
                echo $favicon;
        return $favicon;
}

En gros le problème c'est qu'une fois la favicon initialisée (static) la fonction echo n'est plus appelée puisque par défaut c'est fait seulement à la fin du code qui n'est appelé que la première fois.

  • yourls/correctifs.1438118896.txt.gz
  • Dernière modification : 2021/04/18 22:24
  • (modification externe)