source: spip-zone/_plugins_/mediaspip_player/trunk/mediaspip_player_pipelines.php @ 77645

Last change on this file since 77645 was 77645, checked in by severo@…, 6 years ago

On charge mediaspip_player_lang.js et non pas mediaspip_medias_init

File size: 5.3 KB
Line 
1<?php
2/**
3 * MediaSPIP player
4 * Lecteur multimédia HTML5 pour MediaSPIP
5 *
6 * Auteurs :
7 * kent1 (http://www.kent1.info - kent1@arscenic.info)
8 * 2010-2013 - Distribué sous licence GNU/GPL
9 *
10 * Fichier de définition des différents pipelines
11 *
12 */
13if (!defined("_ECRIRE_INC_VERSION")) return;
14
15/**
16 * Insertion dans le pipeline insert_head (SPIP)
17 * On ajoute les js compilé et la css du player dans le public
18 *
19 * @param $flux string
20 *              Le contenu du insert_head modifié
21 * @return $flux string
22 *              Le contenu du insert_head modifié
23 */function mediaspip_player_insert_head($flux){
24        $flux .= '
25<script src="'.produire_fond_statique('mediaspip_player_lang.js',array('lang'=>$GLOBALS['spip_lang'])).'" type="text/javascript"></script>
26';
27        return $flux;
28}
29
30/**
31 * Insertion dans le pipeline header_prive (SPIP)
32 * On ajoute les js compilé et la css du player dans le privé
33 *
34 * @param $flux string
35 *              Le contenu du insert_head modifié
36 * @return $flux string
37 *              Le contenu du insert_head modifié
38 */
39function mediaspip_player_header_prive($flux){
40        $flux .= '
41<script src="'.produire_fond_statique('mediaspip_player_lang.js',array('lang'=>$GLOBALS['spip_lang'])).'" type="text/javascript"></script>
42<link rel="stylesheet" href="'.direction_css(find_in_path('css/html5_controls.css')).'" type="text/css" media="all" />
43';
44        return $flux;
45}
46
47/**
48 * Insertion dans le pipeline jqueryui_plugins (jQuery UI)
49 * On ajoute les sliders au chargement des js (et ses dépendances)
50 *
51 * @param $flux array
52 *              L'array des plugins déjà inséré
53 * @return $flux array
54 *              L'array des plugins mis à jour
55 */
56function mediaspip_player_jqueryui_plugins($plugins){
57        if(!function_exists('lire_config'))
58                include_spip('inc/config');
59       
60        if(lire_config('mediaspip_player/slider_non_charger','non') != 'on')
61                $plugins[] = 'jquery.ui.slider';
62        return $plugins;
63}
64
65/**
66 * Insertion dans le pipeline jquery_plugins (SPIP)
67 * On ajoute les différents plugins jquery dans le privé et public
68 *
69 * @param $flux array
70 *              L'array des plugins déjà inséré
71 * @return $flux array
72 *              L'array des plugins mis à jour
73 */
74function mediaspip_player_jquery_plugins($plugins){
75        if(!function_exists('lire_config'))
76                include_spip('inc/config');
77       
78        if(lire_config('mediaspip_player/mousewheel_non_charger','non') != 'on')
79                $plugins[] = _DIR_LIB_MOUSEWHEEL.'jquery.mousewheel.js';
80        $plugins[] = 'javascript/flowplayer-3.2.12.min.js';
81        $plugins[] = 'javascript/mediaspip_player.js';
82        $plugins[] = 'javascript/mediaspip_fallback_flash.js';
83        return $plugins;
84}
85
86/**
87 * Insertion dans le pipeline insert_head_css (SPIP)
88 * On ajoute la css de mediaspip_player dans l'espace public
89 *
90 * @param $flux string
91 *              Le contexte du pipeline
92 * @return $flux string
93 *              Le contexte du pipeline modifié
94 */
95function mediaspip_player_insert_head_css($flux){
96        $flux .= '
97<link rel="stylesheet" href="'.direction_css(mediaspip_player_timestamp(find_in_path('css/html5_controls.css'))).'" type="text/css" media="all" />';
98        return $flux;
99}
100
101/**
102 * Insertion dans le pipeline formulaire_verifier (SPIP)
103 * On vérifie les valeurs du formulaire de configuration
104 *
105 * @param $flux array
106 *              Le contexte du pipeline
107 * @return $flux array
108 *              Le contexte du pipeline modifié
109 */
110function mediaspip_player_formulaire_verifier($flux){
111        if($flux['args']['form'] == 'configurer_mediaspip_player'){
112                $numeriques = array('video_largeur_embed','video_hauteur_embed');
113                foreach($numeriques as $numerique){
114                        if(_request($numerique) && !ctype_digit(_request($numerique)))
115                                $flux['data'][$numerique] = _T('mediaspip_player:erreur_valeur_int');
116                        if(!$flux['data'][$numerique] && _request($numerique) && (_request($numerique) > 2000))
117                                $flux['data'][$numerique] = _T('mediaspip_player:erreur_valeur_int_inf',array('nb'=>'2000'));
118                }
119                if(!$flux['data']['video_largeur_embed'] && _request('video_largeur_embed') && (_request('video_largeur_embed') < 200))
120                        $flux['data']['video_largeur_embed'] = _T('mediaspip_player:erreur_valeur_int_sup',array('nb'=>'200'));
121        }
122        return $flux;
123}
124
125/**
126 * Insertion dans le pipeline formulaire_traiter (SPIP)
127 * On purge le cache js pour que la nouvelle config soit prise en compte automatiquement
128 *
129 * @param $flux array
130 *              Le contexte du pipeline
131 * @return $flux array
132 *              Le contexte du pipeline modifié
133 */
134function mediaspip_player_formulaire_traiter($flux){
135        if($flux['args']['form'] == 'configurer_mediaspip_player'){
136                include_spip('inc/invalideur');
137                $rep_js = _DIR_VAR.'cache-js/';
138                purger_repertoire($rep_js);
139        }
140        return $flux;
141}
142
143/**
144 * Insertion dans le pipeline recuperer_fond (SPIP)
145 * On affiche en dessous des documents les conversions
146 *
147 * @param array $flux
148 * @return array $flux
149 */
150function mediaspip_player_recuperer_fond($flux){
151        if ($flux['args']['fond']=='modeles/document_desc')
152                $flux['data']['texte'] .= recuperer_fond('prive/inclure/document_desc_liste_conversions',$flux['args']['contexte']);
153        return $flux;
154}
155
156/**
157 * Insertion dans le pipeline medias_documents_visibles (Plugin medias)
158 * On ajoute le fait que les documents ayant comme mode conversion soient visibles et non pas
159 * supprimés des boucles documents
160 *
161 * @param array $flux
162 * @return array $flux
163 */
164function mediaspip_player_medias_documents_visibles($flux){
165        $flux[] = 'conversion';
166        return $flux;
167}
168
169function mediaspip_player_timestamp($fichier){
170        if ($m = filemtime($fichier))
171                return "$fichier?$m";
172        return $fichier;
173}
174?>
Note: See TracBrowser for help on using the repository browser.