Bonjour a tous,
Tout d'abord je tiens à préciser que je suis vraiment novice en Javascript.
Voila ! je souhaite afficher un widget de deezer (avec le sdk de deezer) à partir de données stockée sur mon site. Les données sont récupérées via une page php.
Voici les lignes :
Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
       		<!-- Je recherche l'album sur deezer-->
			<?php 
			$album_title = $basic['title']->value;
			$subtitle = $basic['subtitle']->value ;
			$upc = $basic['isbn']->value ;
 
 
			$deezer_data = array (
					'album_title'	=> $album_title,
					'author'		=> $auteur,
					'subtitle'		=> $subtitle,
					'upc'			=> $upc,
			);
			$deezer_data_json = json_encode($deezer_data, JSON_UNESCAPED_UNICODE);
			?>
			<script  type="text/javascript">
			var deezerData = <?php echo $deezer_data_json; ?>;
			console.log(deezerData);
			</script>
<!-- mon bouton -->
<?php if ($basic['support']->value == "Audio" && $params->get('ApiDeezer') == 1) { ?><li id="deezer"><a data-toggle="tab" href="#menu03"><h7><i class="deezer">::b</i><?php echo JText::_('MENU_DEEZER');?></h7></a></li><?php }?>
 
<!-- Infos Deezer -->
	  <div id="menu03" class="tab-pane fade">
     	<div id="dz-root"></div>
			<div id="player" style="width:100%;"></div>
			<div id="deezer_msg" class="loader">					
				<div class="loader_content">Aucun resultat :(</div>
			</div>
	  </div>
Voila pour la page qui doit m'afficher le widget
et voici ma page deezer.js
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
jQuery(document).ready(function($){
	//SEARCH
		jQuery("#deezer").click(function (){
			var author = deezerData.author ;
			var album_title = deezerData.album_title;
			var subtitle = deezerData.subtitle;
			var upc = deezerData.upc;
 
 
			DZ.api('/album/upc:' +upc, function(response){  
				if (response.available == true) {
					DZ.player.playAlbum(response.id,false);
					document.getElementById("deezer_msg").style.display = "none";
				}
				else if(response.error.message == "no data"){
								DZ.api('/search?q=' +album_title+' '+author , function(response){
 
							        if (response.data.length == 0) {
										document.getElementById("player").style.display = "none";								
									}
									else if(response.data.length > 0){
										// boucle de recherche par titre similaire
										for ( var i = 0; i <= 10; i++){
											console.log(response.data[i].album.title);
											var response_deezer = response.data[i].album.title;
					                        var response_author = response.data[i].artist.name;
											//si response_deezer.title contient le titre de l'album
											if(	album_title.search(/response_deezer/i) && author.search(/response_author/i) ){
												DZ.player.playAlbum(response.data[i].album.id, function(data){ console.log(data.tracks) });
												break;
												}
											}
										document.getElementById("deezer_msg").style.display = "none";
									}
								});
						}
				});
			});
 
			function onPlayerLoaded() {
				jQuery("#deezer").attr('disabled', false);
				event_listener_append('player_loaded');
				DZ.Event.subscribe('current_track', function(arg){
					event_listener_append('current_track', arg.index, arg.track.title, arg.track.album.title);
				});
				DZ.Event.subscribe('player_position', function(arg){
					event_listener_append('position', arg[0], arg[1]);
				});
			};
 
			DZ.init({
				appId  : '329242',
				channelUrl : 'jQuery(document).ready(function($){
	//SEARCH
		jQuery("#deezer").click(function (){
			var author = deezerData.author ;
			var album_title = deezerData.album_title;
			var subtitle = deezerData.subtitle;
			var upc = deezerData.upc;
 
 
			DZ.api('/album/upc:' +upc, function(response){  
				if (response.available == true) {
					DZ.player.playAlbum(response.id,false);
					document.getElementById("deezer_msg").style.display = "none";
				}
				else if(response.error.message == "no data"){
								DZ.api('/search?q=' +album_title+' '+author , function(response){
 
							        if (response.data.length == 0) {
										document.getElementById("player").style.display = "none";								
									}
									else if(response.data.length > 0){
										// boucle de recherche par titre similaire
										for ( var i = 0; i <= 10; i++){
											console.log(response.data[i].album.title);
											var response_deezer = response.data[i].album.title;
					                        var response_author = response.data[i].artist.name;
											//si response_deezer.title contient le titre de l'album
											if(	album_title.search(/response_deezer/i) && author.search(/response_author/i) ){
												DZ.player.playAlbum(response.data[i].album.id, function(data){ console.log(data.tracks) });
												break;
												}
											}
										document.getElementById("deezer_msg").style.display = "none";
									}
								});
						}
				});
			});
 
			function onPlayerLoaded() {
				jQuery("#deezer").attr('disabled', false);
				event_listener_append('player_loaded');
				DZ.Event.subscribe('current_track', function(arg){
					event_listener_append('current_track', arg.index, arg.track.title, arg.track.album.title);
				});
				DZ.Event.subscribe('player_position', function(arg){
					event_listener_append('position', arg[0], arg[1]);
				});
			};
 
			DZ.init({
				appId  : '8', // ce n'est pas mon Id :-)
				channelUrl : 'http://developers.deezer.com/examples/channel.php',
				player : {
					container : 'player',
					cover : true,
					playlist : true,
					width : 650,
					height : 300,
					onload : onPlayerLoaded
				}
			});
 
	});',
				player : {
					container : 'player',
					cover : true,
					playlist : true,
					width : 650,
					height : 300,
					onload : onPlayerLoaded
				}
			});
 
	});
J'ai pris exemple sur les docs fournis par deezer developer. Je tiens à dire que cela à déjà fonctionné et je ne sait pour quel raison (plus maintenant) !!
Merci pour votre aide