/** * Ajout de l'onglet 'Ajouter les plugins' * * L'URL dépend de l'existence ou pas d'un dépot de plugins. * En absence, on amène sur la page permettant de créer un premier dépot. * * @pipeline ajouter_onglets * @param array $flux Données du pipeline * @return array Données du pipeline */ function svp_ajouter_onglets($flux) { if ($flux['args'] == 'plugins' and autoriser('ajouter', '_plugins')) { $compteurs = svp_compter('depot'); $page = $compteurs['depot'] == 0 ? 'depots' : 'charger_plugin'; $flux['data']['charger_plugin'] = new Bouton(find_in_theme('images/plugin-add-24.png'), 'plugin_titre_automatique_ajouter', generer_url_ecrire($page)); } return $flux; }
/** * Retourne un texte indiquant un nombre total de plugins * * Calcule le nombre de plugins correspondant à certaines contraintes, * tel que l'appartenance à un certain dépot, une certaine catégorie * ou une certaine branche de SPIP et retourne une phrase traduite * tel que «64 plugins disponibles» * * @param int $id_depot * Identifiant du dépot * Zéro (par défaut) signifie ici : «dans tous les dépots distants» * (id_dépot>0) et non «dans le dépot local» * @param string $categorie * Type de catégorie (auteur, communication, date...) * @param string $compatible_spip * Numéro de branche de SPIP. (3.0, 2.1, ...) * @return string * Texte indiquant un nombre total de paquets **/ function svp_compter_plugins($id_depot = 0, $categorie = '', $compatible_spip = '') { $total = svp_compter('plugin', $id_depot, $categorie, $compatible_spip); $info = _T('svp:info_plugins_disponibles', array('total_plugins' => $total['plugin'])); return $info; }