Browse Source

Evolution #174: Récupé d'image: jamendo tracks

bastien 13 years ago
parent
commit
e516073186
1 changed files with 30 additions and 2 deletions
  1. 30 2
      src/Muzich/CoreBundle/ElementFactory/Site/JamendocomFactory.php

+ 30 - 2
src/Muzich/CoreBundle/ElementFactory/Site/JamendocomFactory.php View File

68
     // http://www.jamendo.com/fr/track/207079
68
     // http://www.jamendo.com/fr/track/207079
69
     else if (preg_match("#^\/[a-zA-Z0-9_-]+\/track\/([0-9]+)#", $url_object, $chaines))
69
     else if (preg_match("#^\/[a-zA-Z0-9_-]+\/track\/([0-9]+)#", $url_object, $chaines))
70
     {
70
     {
71
+      /*
72
+      * Pour une track c'est un peu différent
73
+      */
71
       $id_track = $chaines[1];
74
       $id_track = $chaines[1];
72
-      $get_url = "http://api.jamendo.com/get2/image/track/json/?id=".$id_track;
75
+      $get_album_url = "http://www.jamendo.com/get/album/id/track/page/json/".$id_track.'/';
76
+      
77
+      $ch = curl_init($get_album_url);
78
+      curl_setopt_array($ch, array(
79
+        CURLOPT_RETURNTRANSFER => true,
80
+        CURLOPT_HTTPHEADER => array('Content-type: application/json')
81
+      ));
82
+      $result = json_decode(curl_exec($ch));
83
+      if (count($result))
84
+      {
85
+        $album_url = str_replace('http://www.jamendo.com', '', $result[0]);
86
+        
87
+        $expl_alb = null;
88
+        if (preg_match("#^\/album\/([0-9]+)#", $album_url, $expl_alb))
89
+        {
90
+          $id_album = $expl_alb[1];
91
+          $get_url = "http://api.jamendo.com/get2/image/album/json/?id=".$id_album;
92
+        }
93
+      }
73
     }
94
     }
74
     
95
     
75
     if ($get_url)
96
     if ($get_url)
77
       $ch = curl_init($get_url);
98
       $ch = curl_init($get_url);
78
       $options = array(
99
       $options = array(
79
         CURLOPT_RETURNTRANSFER => true,
100
         CURLOPT_RETURNTRANSFER => true,
80
-        CURLOPT_HTTPHEADER => array('Content-type: application/json')
101
+        CURLOPT_HTTPHEADER => array('Content-type: text/plain')
81
       );
102
       );
82
       curl_setopt_array( $ch, $options );
103
       curl_setopt_array( $ch, $options );
83
       $result = json_decode(curl_exec($ch));
104
       $result = json_decode(curl_exec($ch));
89
     }
110
     }
90
     
111
     
91
       
112
       
113
+    /**
114
+     * www.jamendo.com/get/album/id/track/page/plain/2000/
115
+     * api.jamendo.com/get2/image/track/json/?id=
116
+     * 
117
+     * api.jamendo.com/get2/album/id/track/json/?id=
118
+     * 
119
+     */
92
     
120
     
93
 
121
 
94
     
122