|
@@ -52,9 +52,11 @@
|
|
secureDocument = (document.location.protocol === 'https:'),
|
|
secureDocument = (document.location.protocol === 'https:'),
|
|
|
|
|
|
scApiUrl = function(url, apiKey) {
|
|
scApiUrl = function(url, apiKey) {
|
|
|
|
+
|
|
|
|
+
|
|
var resolver = ( secureDocument || (/^https/i).test(url) ? 'https' : 'http') + '://api.' + domain + '/resolve?url=',
|
|
var resolver = ( secureDocument || (/^https/i).test(url) ? 'https' : 'http') + '://api.' + domain + '/resolve?url=',
|
|
- params = 'format=json&consumer_key=' + apiKey +'&callback=?';
|
|
+ params = 'format=json&callback=?';
|
|
-
|
|
+
|
|
|
|
|
|
if( secureDocument ) {
|
|
if( secureDocument ) {
|
|
url = url.replace(/^http:/, 'https:');
|
|
url = url.replace(/^http:/, 'https:');
|
|
@@ -258,40 +260,110 @@
|
|
playerObj = {node: $player, tracks: []},
|
|
playerObj = {node: $player, tracks: []},
|
|
loadUrl = function(link) {
|
|
loadUrl = function(link) {
|
|
var apiUrl = scApiUrl(link.url, apiKey);
|
|
var apiUrl = scApiUrl(link.url, apiKey);
|
|
- $.getJSON(apiUrl, function(data) {
|
|
+
|
|
-
|
|
+
|
|
- index += 1;
|
|
+
|
|
-
|
|
+
|
|
- data.href = link.href;
|
|
+
|
|
- if(data.tracks){
|
|
+
|
|
-
|
|
+
|
|
- playerObj.tracks = playerObj.tracks.concat(data.tracks);
|
|
+
|
|
- }else if(data.duration){
|
|
+
|
|
-
|
|
+
|
|
- data.permalink_url = link.url;
|
|
+
|
|
-
|
|
+
|
|
- playerObj.tracks.push(data);
|
|
+
|
|
- }else if(data.creator){
|
|
+
|
|
-
|
|
+
|
|
- links.push({url:data.uri + '/tracks'});
|
|
+
|
|
- }else if(data.username){
|
|
+
|
|
-
|
|
+
|
|
- if(/favorites/.test(link.url)){
|
|
+
|
|
- links.push({url:data.uri + '/favorites'});
|
|
+
|
|
- }else{
|
|
+
|
|
- links.push({url:data.uri + '/tracks'});
|
|
+
|
|
- }
|
|
+
|
|
- }else if($.isArray(data)){
|
|
+
|
|
- playerObj.tracks = playerObj.tracks.concat(data);
|
|
+
|
|
- }
|
|
+
|
|
- if(links[index]){
|
|
+
|
|
-
|
|
+
|
|
- loadUrl(links[index]);
|
|
+
|
|
- }else{
|
|
+
|
|
-
|
|
+
|
|
- playerObj.node.trigger({type:'onTrackDataLoaded', playerObj: playerObj, url: apiUrl});
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ $.ajax({
|
|
|
|
+ method: 'POST',
|
|
|
|
+ url: 'https://api.soundcloud.com/oauth2/token',
|
|
|
|
+ data: {
|
|
|
|
+ 'grant_type' : "client_credentials",
|
|
|
|
+ 'client_id' : "965bd4363fdd909723749b003be67125",
|
|
|
|
+ 'client_secret': "bb68647335a47f104a86dcddf4e70fa8"
|
|
|
|
+ },
|
|
|
|
+ headers: {
|
|
|
|
+ "accept" : "application/json; charset=utf-8",
|
|
|
|
+ "Content-Type" : "application/x-www-form-urlencoded",
|
|
|
|
+ "Authorization": "OAuth 965bd4363fdd909723749b003be67125"
|
|
}
|
|
}
|
|
- });
|
|
+ });
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
};
|
|
};
|
|
|
|
|
|
apiKey = key;
|
|
apiKey = key;
|