diff --git a/server/public/assets/js/channel.js b/server/public/assets/js/channel.js index ce949cf6..eb2763e6 100644 --- a/server/public/assets/js/channel.js +++ b/server/public/assets/js/channel.js @@ -18,17 +18,19 @@ var Channel = { } else { if(!api_key.hasOwnProperty("soundcloud")) soundcloud_enabled = false; else { - SC.initialize({ + /*SC.initialize({ client_id: api_key.soundcloud }, function() { - }); + });*/ } if(cast_ready_connect || chromecastAvailable || chromecastReady) { Helper.addClass(".volume-container", "volume-container-cast"); } if(!embed) { + console.log("qq"); + console.log(Helper.computedStyle(document.querySelector("#video-container"))); document.querySelector("#main-container").insertAdjacentHTML("beforeend", "keyboard_arrow_right"); - document.querySelector("#hide-playlist").style.left = (document.querySelector("#video-container").offsetWidth - document.querySelector("#hide-playlist").offsetWidth) + "px"; + document.querySelector("#hide-playlist").style.left = (document.querySelector("#video-container").offsetWidth - document.querySelector("#hide-playlist").offsetWidth) + "px"; } //Player.soundcloud_player = document.querySelector("#soundcloud_player"); } diff --git a/server/public/assets/js/listeners.js b/server/public/assets/js/listeners.js index fa83a8b5..54307c45 100755 --- a/server/public/assets/js/listeners.js +++ b/server/public/assets/js/listeners.js @@ -210,21 +210,54 @@ window.addEventListener("DOMContentLoaded", function() { Frontpage.init(); } if(window.location.pathname == "/" && !client) { - tag = document.createElement('script'); - tag.src = "https://www.youtube.com/iframe_api"; - firstScriptTag = document.getElementsByTagName('script')[0]; - firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); + if(document.querySelectorAll("script[src='https://www.youtube.com/iframe_api']").length == 1){ + try{ + Player.onYouTubeIframeAPIReady(); + //SC.Widget(Player.soundcloud_player).bind("ready", Player.soundcloudReady); - tag.onload = function() { - if(document.querySelectorAll("script[src='https://w.soundcloud.com/player/api.js']").length == 1) { - - } else { - tagSearch = document.createElement('script'); - tagSearch.setAttribute("async", true); - tagSearch.src = "https://connect.soundcloud.com/sdk/sdk-3.3.0.js"; - firstScriptTag = document.getElementsByTagName('script')[0]; - firstScriptTag.parentNode.insertBefore(tagSearch, firstScriptTag); + } catch(error){ + console.error(error); + console.error("Seems YouTube iFrame script isn't correctly loaded. Please reload the page."); } + try { + //Player.soundcloudReady(); + } catch(error) { + console.error(error); + console.error("Seems SoundCloud script isn't correctly loaded. Please reload the page."); + } + } else { + tag = document.createElement('script'); + tag.src = "https://www.youtube.com/iframe_api"; + firstScriptTag = document.getElementsByTagName('script')[0]; + firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); + } + if(document.querySelectorAll("script[src='https://connect.soundcloud.com/sdk/sdk-3.3.0.js']").length == 1) { + console.log("exists"); + } else { + tagSC = document.createElement('script'); + console.log("not exists"); + if (tagSC.readyState){ //IE + tagSC.onreadystatechange = function(){ + if (tagSC.readyState == "loaded" || + tagSC.readyState == "complete"){ + tagSC.onreadystatechange = null; + SC.initialize({ + client_id: api_key.soundcloud + }, function() { + }); + } + }; + } else { //Others + tagSC.onload = function(){ + SC.initialize({ + client_id: api_key.soundcloud + }, function() { + }); + }; + } + tagSC.src = "https://connect.soundcloud.com/sdk/sdk-3.3.0.js"; + firstScriptTagSC = document.getElementsByTagName('script')[0]; + firstScriptTagSC.parentNode.insertBefore(tagSC, firstScriptTagSC); } } diff --git a/server/public/assets/js/player.js b/server/public/assets/js/player.js index b0fdadca..19cb2a5e 100755 --- a/server/public/assets/js/player.js +++ b/server/public/assets/js/player.js @@ -729,6 +729,10 @@ var Player = { }, soundcloudReady: function() { + SC.initialize({ + client_id: api_key.soundcloud + }, function() { + }); beginning = true; player_ready = true; if(!durationBegun) { @@ -969,7 +973,7 @@ var Player = { } }, - loadPlayer: function() { + loadPlayer: function(notify) { if(document.querySelectorAll("script[src='https://www.youtube.com/iframe_api']").length == 1){ try{ Player.onYouTubeIframeAPIReady(); @@ -991,6 +995,29 @@ var Player = { firstScriptTag = document.getElementsByTagName('script')[0]; firstScriptTag.parentNode.insertBefore(tag, firstScriptTag); } + if(document.querySelectorAll("script[src='https://connect.soundcloud.com/sdk/sdk-3.3.0.js']").length == 1) { + console.log("exists"); + } else { + tagSC = document.createElement('script'); + console.log("not exists"); + if (tagSC.readyState){ //IE + tagSC.onreadystatechange = function(){ + if (tagSC.readyState == "loaded" || + tagSC.readyState == "complete"){ + tagSC.onreadystatechange = null; + Player.soundcloudReady(); + } + }; + } else { //Others + tagSC.onload = function(){ + Player.soundcloudReady(); + }; + } + tagSC.src = "https://connect.soundcloud.com/sdk/sdk-3.3.0.js"; + firstScriptTagSC = document.getElementsByTagName('script')[0]; + firstScriptTagSC.parentNode.insertBefore(tagSC, firstScriptTagSC); + } + } }; diff --git a/server/public/layouts/client/main.handlebars b/server/public/layouts/client/main.handlebars index b1cd5436..54b100f0 100644 --- a/server/public/layouts/client/main.handlebars +++ b/server/public/layouts/client/main.handlebars @@ -31,7 +31,7 @@ {{/unless}} - + {{#unless embed}} - {{#unless client}} - - {{/unless}} {{#unless embed}}