Ignore:
Timestamp:
Mar 26, 2017, 11:15:53 AM (3 years ago)
Author:
bystrano@…
Message:

On permet de définir une image par défaut pour chaque type de logo

On en profite pour passer en test, la structure générale du plugin ne devrait
plus trop bouger.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/logos_roles/trunk/logos_roles_fonctions.php

    r103407 r103549  
    2929 *        ne retourne alors que les rôles de logos que l'on peut attribuer à cet
    3030 *        objet.
     31 * @param string|null $role : Un rôle auquel se restreindre. On accepte `on` ou
     32 * `off` pour la rétro-compatibilité
    3133 *
    32  * @return array : Retourne le tableau décrivant les rôles de logos
     34 * @return array : Retourne le tableau décrivant les rôles de logos. Si on a
     35 * passé un paramètre rôle, on retourne directement la définition plutôt qu'une
     36 * liste avec un seul rôle.
    3337 */
    34 function lister_roles_logos($objet = null) {
     38function lister_roles_logos($objet = null, $role = null) {
     39
     40        if ($role === 'on') {
     41                $role = 'logo';
     42        } elseif ($role === 'off') {
     43                $role = 'logo_survol';
     44        }
    3545
    3646        // Logos par défaut
     
    5161        include_spip('base/objets');
    5262
     63        /* Filtrer par objet */
    5364        if ($objet = table_objet($objet)) {
    5465                $roles_logos_objet = array();
    55                 foreach ($roles_logos as $role => $options) {
     66                foreach ($roles_logos as $cle_role => $options) {
    5667                        if ((! is_array($options['objets']))
    5768                                        or in_array($objet, array_map('table_objet', $options['objets']))) {
    58                                 $roles_logos_objet[$role] = $options;
     69                                $roles_logos_objet[$cle_role] = $options;
    5970                        }
    6071                }
    6172
    6273                $roles_logos = $roles_logos_objet;
     74        }
     75
     76        /* Filtrer par rôle */
     77        if (! is_null($role)) {
     78                return $roles_logos[$role];
    6379        }
    6480
Note: See TracChangeset for help on using the changeset viewer.