source: spip-zone/_plugins_/getID3/trunk/inc/getid3_verifier_binaires.php @ 62451

Last change on this file since 62451 was 62451, checked in by kent1@…, 7 years ago

Premier tour de compatibilité SPIP 3.0 :

-* paquet.xml et ses fichiers de langue
-* getid3_administrations
-* on met à jour les entêtes de fichier PHP

File size: 2.0 KB
Line 
1<?php
2/**
3 * GetID3
4 * Gestion des métadonnées de fichiers sonores directement dans SPIP
5 *
6 * Auteurs :
7 * kent1 (http://www.kent1.info - kent1@arscenic.info), BoOz
8 * 2008-2012 - Distribué sous licence GNU/GPL
9 *
10 */
11
12if (!defined("_ECRIRE_INC_VERSION")) return;
13
14/**
15 * Fonction de vérification que les binaires utilisés soient correctement installés
16 * et exécutables
17 *
18 * -* vorbiscomment
19 * -* metaflac
20 *
21 * Note : Les codes de retour normaux d'une application sont :
22 * -* 0 en cas de réussite
23 * -* 1 en cas d'échec (l'application est là mais retourne une erreur)
24 * -* 127 en cas d'absence de l'application
25 *
26 * @param unknown_type $valeurs
27 * @param boolean $notif : On notifie ou pas?
28 */
29function inc_getid3_verifier_binaires_dist($notif=false){
30        spip_log('Verification des binaires','getid3');
31        $erreurs = array();
32       
33        $tags_write = array('mp3','mpc','ogg','flac');
34        $tags_impossible = array();
35
36        /**
37         * Tester vorbiscomment
38         */
39        exec('vorbiscomment --help',$retour,$retour_int);       
40        if($retour_int != 0){
41                ecrire_config('getid3_vorbiscomment_casse', 'oui');
42                $erreurs[] = 'vorbiscomment';
43                $tags_impossible[] = 'ogg';
44        }else{
45                effacer_config('getid3_vorbiscomment_casse');
46        }
47
48        /**
49         * Tester metaflac
50         */
51        exec('metaflac --help',$retour_metaflac,$retour_metaflac_int);
52        if($retour_metaflac_int != 0){
53                ecrire_config('getid3_metaflac_casse', 'oui');
54                $erreurs[] = 'metaflac';
55                $tags_impossible[] = 'flac';
56        }else{
57                effacer_config('getid3_metaflac_casse');
58        }
59
60        if(count($erreurs) > 0){
61                ecrire_config('getid3_casse', 'oui');
62        }else{
63                effacer_config('getid3_casse');
64        }
65
66        $tags_write = array_diff($tags_write,$tags_impossible);
67        ecrire_config('getid3_write',serialize($tags_write));
68       
69        if($notif){
70                if ($notifications = charger_fonction('notifications', 'inc')) {
71                        spip_log('notifications verifier_binaires','getid3');
72                        spip_log($erreurs,'getid3');
73                        $notifications('getid3_verifier_binaires', 1,
74                                array(
75                                        'erreurs' => $erreurs
76                                )
77                        );
78                }
79        }
80        return $erreurs;
81}
82?>
Note: See TracBrowser for help on using the repository browser.