source: spip-zone/_plugins_/soundmanager/sm_pipelines.php @ 106487

Last change on this file since 106487 was 106487, checked in by booz@…, 3 years ago

surcharge des evenement du player 360 + fichier spécial

File size: 2.9 KB
Line 
1<?php
2
3if (!defined('_ECRIRE_INC_VERSION')) {
4        return;
5}
6
7// Ajouter soundmanager s'il n'y est pas déjà et qu'on a des enclosures dans la page
8function sm_affichage_final($page) {
9        if (!strpos($page, 'script/soundmanager2.js')){
10                if(strpos($page, 'rel="enclosure"')  OR strpos($page, "rel='enclosure'") AND $GLOBALS['html']){
11                                               
12                        $script .= "\n"."<script type=\"text/javascript\" src=\"" . find_in_path('script/soundmanager2.js') . "\"></script>"."\n";
13                        $script .= "<script type=\"text/javascript\" src=\"" . generer_url_public('soundmanager.js') . "\"></script>"."\n";
14                        $script .= "<link rel='stylesheet' href='" . generer_url_public('soundmanager.css') . "' type='text/css' media='projection, screen, tv' />"."\n";
15                       
16                        $page = substr_replace($page, $script, strpos($page, '</head>'), 0);
17                }
18               
19                if(strpos($page, 'class="ui360')  OR strpos($page, "class='ui360") AND $GLOBALS['html']){                                       
20                        $script .= "<link rel='stylesheet' href='" . find_in_path('360-player/360player.css') . "' type='text/css' />"."\n";
21                        $script .= "<link rel='stylesheet' href='" . find_in_path('360-player/360player-visualization.css') . "' type='text/css' />"."\n";
22                       
23                        $script .= "\n"."<script type=\"text/javascript\" src=\"" . find_in_path('360-player/script/berniecode-animator.js') . "\"></script>"."\n";
24                        $script .= "\n"."<script type=\"text/javascript\" src=\"" . find_in_path('script/soundmanager2.js') . "\"></script>"."\n";
25                       
26                        $script .= "\n". "<!-- special IE-only canvas fix -->" . "\n". "<!--[if IE]><script type=\"text/javascript\" src=\"" . find_in_path('360-player/script/excanvas.js') . "\"></script><![endif]-->"."\n";
27                        $script .= "\n"."<script type=\"text/javascript\" src=\"" . find_in_path('360-player/script/360player.js') . "\"></script>"."\n";
28                       
29                        $script .= "<script type=\"text/javascript\" src=\"" . generer_url_public('player360.js') . "\"></script>"."\n";
30                       
31                        $page = substr_replace($page, $script, strpos($page, '</head>'), 0);
32                }
33        }
34        return $page;
35}
36
37 /**
38 * Ajout d'un rel="enclosure" sur les liens mp3.
39 * Permet de traiter les [mon son->http://monsite/mon_son.mp3] dans un texte.
40 * Le filtre peut etre appele dans un squelette apres |liens_absolus
41 *
42 * Pete cependant dans les cas (tordus) suivants :
43 * [{{Une histoire d'amour}}->documents/sons/PIRATAGE/01 UNE HISTOIRE D'AMOUR.mp3]
44 * [{{Une histoire d'amour à trois}}->documents/sons/PIRATAGE/02 UNE HISTOIRE D'AMOUR A TROIS[2].mp3]
45 *
46 */
47
48function sm_pre_liens($texte) {
49       
50        define('_RACCOURCI_LIEN_MP3', "/\[([^][]*?([[]\w*[]][^][]*)*)->(>?)([^]]*\.mp3)\]/msS");
51       
52        if (preg_match_all(_RACCOURCI_LIEN_MP3, $texte, $regs, PREG_SET_ORDER)) {
53
54                foreach ($regs as $k => $reg) {
55                        if($reg[1]){
56                                $l = "<a href='$reg[4]' rel='enclosure'>$reg[1]</a>";
57                        }else{
58                                $l = "<a href='$reg[4]' rel='enclosure'>".couper($reg[4],50)."</a>";
59                        }
60                        $p = $reg[0];
61                        $texte = str_replace($p,$l,$texte);
62                } 
63        }
64
65        return $texte;
66}
Note: See TracBrowser for help on using the repository browser.