Script SCM music player ne fonctionne pas
4 participants
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1 • Partagez
Script SCM music player ne fonctionne pas
Détails techniques
Version du forum : phpBB2
Poste occupé : Administrateur
Navigateur(s) concerné(s) : Autre
Personnes concernées par le problème : Tous les utilisateurs
Problème apparu depuis : Aujourd'hui
Lien du forum : https://albastrya.bbactif.com/
Description du problème
Bonjour,il se trouve que j'ai voulu tester ceci : https://forum.forumactif.com/t400189-probleme-de-connection-avec-un-scm-player-integre
Cependant je ne peux pas du tout me connecter et virer le script suivant (Problème résolu plus bas ! ) :
- Code:
<!-- SCM Music Player https://www.scmplayer.net -->
<script type="text/javascript" src="https://www.scmplayer.net/script.js"
data-config="{'skin':'https://static.tumblr.com/83zgfej/c83m2c7qy/skin19.css','volume':19,'autoplay':true,'shuffle':false,'repeat':1,'placement':'top','showplaylist':false,'playlist':[{'title':'Ambian%E7age ','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'}]}" ></script>
<!-- SCM Music Player script end -->
merci...
La résolution a été rapide car j'ai vu , grâce aux sujets liés, le lien de ceci : https://forum.forumactif.com/t362534-impossible-de-se-connecter-et-d-acceder-au-panneau-d-admin
Chacha a donné la réponse et m'a permis de supprimer le script qui m'empêchait de me connecter.
J'aurai voulu savoir dans un second temps si vous seriez ce qui bloque l'intégration de ce player, et la connexion forum ?
Je me doute que le sujet n'est pas au bon endroit mais la première aide demandée concernait réellement le panneau d'administration
Cordialement
Dernière édition par Kaehlyth le Mer 25 Mai 2022 - 15:57, édité 1 fois
Re: Script SCM music player ne fonctionne pas
Bonjour @Kaehlyth,Kaehlyth a écrit:Je me doute que le sujet n'est pas au bon endroit mais la première aide demandée concernait réellement le panneau d'administration
Il n'y a pas de souci, votre sujet a été déplacé dans la section "Problème avec un script, un code".
Cordialement.
Re: Script SCM music player ne fonctionne pas
Je vous remercie @Chacha pour votre aide et votre compréhension.
Re: Script SCM music player ne fonctionne pas
Bonjour,
Où aviez-vous placé le code ?Kaehlyth a écrit:J'aurai voulu savoir dans un second temps si vous seriez ce qui bloque l'intégration de ce player, et la connexion forum ?
Donnez un titre explicite à votre sujet pour améliorer son référencement Remerciez le message qui vous a aidé pour le mettre en évidence Cochez lorsque votre problème est résolu pour faciliter le travail des modérateurs L'aide par MP n'est pas autorisée pour que celle-ci puisse bénéficier au plus grand nombre |
Re: Script SCM music player ne fonctionne pas
Bonjour Oka.mi !
J'ai placé le code dans "overall header"
en dessous de la ligne :
En le mettant en dessous, le player ne s'affichait pas.
Au-dessus, il s'affichait mais ne se lançait pas (la musique).
La cause de son non affichage à la place où il doit être, est sûrement dû à une sorte de z-index ? Après tout, j'ai plusieurs éléments graphiques qui se chevauchent parfaitement sur mon forum.
Que ce soit l'un ou l'autre (au dessus ou en dessous), la connexion était IMPOSSIBLE.
Oka.mi a écrit:Bonjour,
Où aviez-vous placé le code ?
J'ai placé le code dans "overall header"
en dessous de la ligne :
- Code:
<body background="{T_BODY_BACKGROUND}" bgcolor="{T_BODY_BGCOLOR}" text="{T_BODY_TEXT}" link="{T_BODY_LINK}"vlink="{T_BODY_VLINK}">
En le mettant en dessous, le player ne s'affichait pas.
Au-dessus, il s'affichait mais ne se lançait pas (la musique).
La cause de son non affichage à la place où il doit être, est sûrement dû à une sorte de z-index ? Après tout, j'ai plusieurs éléments graphiques qui se chevauchent parfaitement sur mon forum.
Que ce soit l'un ou l'autre (au dessus ou en dessous), la connexion était IMPOSSIBLE.
Re: Script SCM music player ne fonctionne pas
Mettez-le tout à la fin, entre le </table> et le </body> et dîtes-moi si cela fonctionne.
Donnez un titre explicite à votre sujet pour améliorer son référencement Remerciez le message qui vous a aidé pour le mettre en évidence Cochez lorsque votre problème est résolu pour faciliter le travail des modérateurs L'aide par MP n'est pas autorisée pour que celle-ci puisse bénéficier au plus grand nombre |
Re: Script SCM music player ne fonctionne pas
La bonne nouvelle est que la connexion n'est pas "bloquée".
La seconde qui est "mauvaise", c'est qu'il ne s'affiche pas.
Du fait que la connexion n'est pas bloquée, je vous laisse l'accès au code en enlevant l'anti clic droit également qui pourrait vous gener.
La seconde qui est "mauvaise", c'est qu'il ne s'affiche pas.
Du fait que la connexion n'est pas bloquée, je vous laisse l'accès au code en enlevant l'anti clic droit également qui pourrait vous gener.
Re: Script SCM music player ne fonctionne pas
Bonjour,
Pour information, le problème est plus complexe que prévu. En effet, en y regardant de plus près, j'ai vu que le script crée un iframe qui récupère les éléments de la page et donc, on navigue en réalité à l'intérieur de l'iframe en question. C'est, en soi, la solution pour que la musique joue en continu et ne s'interrompt pas lorsqu'on change de page : puisque la page ne se recharge pas, et qu'on se promène juste dans la page qui est dans la page, le script du lecteur reste en place.
Le problème, maintenant, c'est que Forumactif bloque la page de connexion lorsqu'elle est dans un iframe, et à raison, pour la sécurité des identifiants.
Avec un ami, on a essayé plusieurs techniques, sans succès, et plus ça va, plus on se dirige vers une réécriture complète du script. Je vais me renseigner auprès de l'équipe pro pour savoir s'ils ont plus d'info de ce côté.
Merci de votre patience.
Pour information, le problème est plus complexe que prévu. En effet, en y regardant de plus près, j'ai vu que le script crée un iframe qui récupère les éléments de la page et donc, on navigue en réalité à l'intérieur de l'iframe en question. C'est, en soi, la solution pour que la musique joue en continu et ne s'interrompt pas lorsqu'on change de page : puisque la page ne se recharge pas, et qu'on se promène juste dans la page qui est dans la page, le script du lecteur reste en place.
Le problème, maintenant, c'est que Forumactif bloque la page de connexion lorsqu'elle est dans un iframe, et à raison, pour la sécurité des identifiants.
Avec un ami, on a essayé plusieurs techniques, sans succès, et plus ça va, plus on se dirige vers une réécriture complète du script. Je vais me renseigner auprès de l'équipe pro pour savoir s'ils ont plus d'info de ce côté.
Merci de votre patience.
Donnez un titre explicite à votre sujet pour améliorer son référencement Remerciez le message qui vous a aidé pour le mettre en évidence Cochez lorsque votre problème est résolu pour faciliter le travail des modérateurs L'aide par MP n'est pas autorisée pour que celle-ci puisse bénéficier au plus grand nombre |
Re: Script SCM music player ne fonctionne pas
Bonjour !
Je vous remercie des détails et d'avoir totalement expliqué le problème.
En effet, dans un premier temps j'ai cru que ça se comportait comme un iframe mais ne m'y connaissant pas et ne voyant pas la balise nommée... je me suis dis que c'était une histoire de cookie auxquel FA avait "naturellement" banni. Cela arrive selon les sites et ça ne m'a pas choqué suite au sujet que j'ai linké plus haut.
Ce script est normalement une alternative "simplifiée" de radio. Il n'est pas vital ou urgent, prenez votre temps. Je vous remercie déjà de vous pencher sur le sujet.
Je vous remercie des détails et d'avoir totalement expliqué le problème.
En effet, dans un premier temps j'ai cru que ça se comportait comme un iframe mais ne m'y connaissant pas et ne voyant pas la balise nommée... je me suis dis que c'était une histoire de cookie auxquel FA avait "naturellement" banni. Cela arrive selon les sites et ça ne m'a pas choqué suite au sujet que j'ai linké plus haut.
Ce script est normalement une alternative "simplifiée" de radio. Il n'est pas vital ou urgent, prenez votre temps. Je vous remercie déjà de vous pencher sur le sujet.
Re: Script SCM music player ne fonctionne pas
Bonjour !
Avec Oka.mi donc, nous avons testé pas mal de choses.
Alors plus précisément, pourquoi ça ne fonctionne pas actuellement : le script crée une iframe (1) du site https://www.scmplayer.net/ et à l'intérieur de cet iframe (1), il crée un iframe (2) qui contient le lecteur youtube et un iframe (3) qui contient votre forum. Quand on consulte votre forum, on le fait donc à travers le site https://www.scmplayer.net/, un peu comme s'il nous servait de proxy. Bon... non, mais vous comprenez le principe : les données peuvent être lues et interceptées par https://www.scmplayer.net/ et pour les données de connexion, ce ne serait pas souhaitable, parce que ce site pourrait récupérer votre mot de passe par exemple ("man-in-the-middle"). Donc Forumactif bloque ça : ils n'interdisent pas que la page login apparaisse dans un iframe, mais ils interdisent le fait qu'elle apparaisse dans un iframe via un autre site... et c'est le cas ici.
Solution que je vous propose : on va recréer l'iframe (1) dans les pages personnalisées de votre forum et faire en sorte que le script pointe vers cette page perso plutôt que vers https://www.scmplayer.net/
Ainsi, on ne passera plus par https://www.scmplayer.net/ mais on restera sur votre forum... et du coup, iframe ou non, la page login voudra bien s'afficher parce qu'on restera dans son "domain", on restera en interne.
Page HTML à créer dans vos HTML personnalisés : vous allez dans Gestion des pages HTML > Création en mode avancé (HTML) et vous copiez ce contenu :
Après avoir validé la création de la page, vous allez chercher son nom dans la liste. Il devrait s'agir de la dernière page créée (première dans la liste), et pour moi par exemple, c'est la page https://ceseravotrenomdeforumici.forumactif.com/h4-test-scm-music-player. On copie ce nom dans un coin.
Ensuite, deuxième étape, on va modifier l'ancien script par celui-ci :
Et dans ce script, vous allez modifier une dernière chose, la ligne suivante :
Cette ligne, c'est l'adresse qui permet au script de créer l'iframe (1). En mettant https://ceseravotrenomdeforumici.forumactif.com/h4-, on fait donc en sorte de rester sur votre site plutôt que d'aller sur https://www.scmplayer.net/ ... et c'est de cette façon que non seulement, le script va marcher, mais en plus, il ne devrait pas déranger quand vous vous rendrez ensuite sur la page login.
C'était assez compliqué à faire, il faut être précis quand vous le mettrez en place... mais normalement, ça doit passer, c'est testé et validé sur mon forum test en tout cas !
Avec Oka.mi donc, nous avons testé pas mal de choses.
Alors plus précisément, pourquoi ça ne fonctionne pas actuellement : le script crée une iframe (1) du site https://www.scmplayer.net/ et à l'intérieur de cet iframe (1), il crée un iframe (2) qui contient le lecteur youtube et un iframe (3) qui contient votre forum. Quand on consulte votre forum, on le fait donc à travers le site https://www.scmplayer.net/, un peu comme s'il nous servait de proxy. Bon... non, mais vous comprenez le principe : les données peuvent être lues et interceptées par https://www.scmplayer.net/ et pour les données de connexion, ce ne serait pas souhaitable, parce que ce site pourrait récupérer votre mot de passe par exemple ("man-in-the-middle"). Donc Forumactif bloque ça : ils n'interdisent pas que la page login apparaisse dans un iframe, mais ils interdisent le fait qu'elle apparaisse dans un iframe via un autre site... et c'est le cas ici.
Solution que je vous propose : on va recréer l'iframe (1) dans les pages personnalisées de votre forum et faire en sorte que le script pointe vers cette page perso plutôt que vers https://www.scmplayer.net/
Ainsi, on ne passera plus par https://www.scmplayer.net/ mais on restera sur votre forum... et du coup, iframe ou non, la page login voudra bien s'afficher parce qu'on restera dans son "domain", on restera en interne.
Page HTML à créer dans vos HTML personnalisés : vous allez dans Gestion des pages HTML > Création en mode avancé (HTML) et vous copiez ce contenu :
- Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>SCM Music Player</title>
<meta name="robots" content="noindex" />
<link rel="stylesheet" type="text/css" href="https://www.scmplayer.net/css/reset.css" />
<style type="text/css">
body{overflow:hidden; background:transparent; }
#contentW, #playlistW, #playerW{ position:absolute; overflow:hidden;}
#contentW{z-index:10; top:0; bottom:0; left:0; right:0;}
#playlistW{ z-index:1; right:0; top:0; bottom:0; width:0; }
#playerW{z-index:2; left:0; right:0; height:0;}
#content{ position:relative; height:100%; width:100%; }
#SCMYoutube{ display: none; }
</style>
<link rel="stylesheet" type="text/css" href="https://www.scmplayer.net/css/scm.css?168" />
<link rel="stylesheet" type="text/css" data-bind="attr:{href:skin}" id="skin" />
</head>
<body>
<div id="contentW" data-bind="style:{top:placement()=='top'?'25px':'0',
bottom:placement()=='top'?'0':'25px', right:showPlaylist()?'202px':'0'}">
<script type="text/javascript">
(function(){
var addEvent = function(elm, evType, fn) {
if(elm.addEventListener)
elm.addEventListener(evType, fn);
else if (elm.attachEvent)
elm.attachEvent('on' + evType, fn);
else
elm['on' + evType] = fn;
},
url = location.hash.substr(1),
host = url.substr(0,url.indexOf('/',10));
window.SCMQueue = [];
addEvent(window,'message',function(e){
var data = e.data;
if(data.indexOf('SCM')!=0)
return;
if(window.SCM && window.Song)
(new Function("SCM,Song",data))(SCM,Song);
else
SCMQueue.push(data);
});
url = url.replace(/(\%27|')/g, '%2527');
document.write('<iframe src="javascript:location.replace(\''+url+'\');" frameborder="0" id="content" allowtransparency="true" name="content"></iframe>');
})();
</script>
</div>
<div id="playerW" data-bind="style:{ top:placement()=='top'?'0':'auto',
bottom:placement()=='top'?'auto':'0',height:'25px'}">
<div id="player">
<div class="item button" data-bind="
click:previous,
maskBtn:{css:'mainImage'}
" id="previous"></div>
<div class="item button" data-bind="
click:play,
visible:!isPlay(),
maskBtn:{hasOffset:false}
" id="play"></div>
<div class="item button" data-bind="
click:pause,
visible:isPlay(),
maskBtn:{css:'mainImage'}
" id="pause"></div>
<div class="item button" data-bind="
click:next,
maskBtn:{css:'mainImage'}
" id="next"></div>
<div class="text" id="title" data-bind="
followLeft:'#seeker'
" >
<a data-bind="text:display, attr: { href: current().url() }" target="_blank" id="titleLink" > </a>
</div>
<div class="item" data-bind="
slider:playedFraction,
sliderOptions:{step:0.00001,min:0,max:1,pauseable:true}
" id="seeker">
<div id="seekerSliderBase" class="ui-slider-handle"></div>
<div id="seekerBase"></div>
<div id="seekerBuffered" data-bind="
style:{width:(loadedFraction()*100)+'%'}
"></div>
</div>
<div class="text" id="tooltip">
<a href="http://scmplayer.net" id="scmLink" target="_blank" >SCM Music Player</a>
</div>
<div class="text item" id="timer" data-bind="text:timer"></div>
<div class="item ui-slider-horizontal" data-bind="
innerBound:{bound:'.bound',handle:'.ui-slider-handle'}
" id="volume" >
<div class="bound" data-bind="
slider:volume,
sliderOptions:{liveUpdate:true},
caption:'Volume: '+volume()+'%',
captionOptions:{target:'#tooltip a',trigger:'slide'}
">
<div class="ui-slider-handle" id="volumeSlider"></div>
</div>
</div>
<div class="item button" id="list"
data-bind="maskBtn:{css:'mainImage',align:'right'},
click:togglePlaylist,
caption:'Toggle Playlist',
captionOptions:{target:'#tooltip a',trigger:'hover'}
"></div>
<div class="mainImage" id="baseRight"></div>
<div class="mainImage" id="baseLeft"></div>
</div>
</div>
<div id="playlistW" data-bind="style:{top:placement()=='top'?'25px':'0',
bottom:placement()=='top'?'0':'25px', width:showPlaylist()?'202px':'0'}">
<div id="playlist">
<div class="module">
<h3>Playlist</h3>
</div>
<div class="module" id="playlistContainer">
<ol class="items" style="bottom:250px;">
<!-- ko foreach:playlist -->
<li class="item" data-bind="
visible:isValid(),
click:$root.play,
css:{focus:on, even:$index()%2==1, odd:$index()%2==0}
">
<span class="title" data-bind="text:title"></span>
</li>
<!-- /ko -->
</ol>
<div class="odd" style="z-index:167; margin-left:-25px; position:absolute; height:220px; overflow: hidden; left:0; right:0; bottom:0;" >
<!-- BuySellAds Zone Code -->
<!-- <div id="bsap_1306358" class="bsarocks bsap_09cb595ac00d408b4665ea9a271bdd97"></div> -->
<div id="bsap_1306386" style="transform: scale(0.84); margin-top: -20px;" class="bsarocks bsap_09cb595ac00d408b4665ea9a271bdd97"></div>
<!-- End BuySellAds Zone Code -->
</div>
</div>
</div>
</div>
<script type="text/javascript" src="https://www.scmplayer.net/js/lib/soundmanager/soundmanager2-nodebug-jsmin.js"></script>
<script type="text/javascript">
var requirejs = ({
shim: {
'underscore': {exports: '_'},
'jquery.ui': {deps: ['jquery'],exports: 'jQuery'},
'jquery.scrollto': {deps: ['jquery'],exports: 'jQuery'}
},
paths: {
'jquery': 'https://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min',
'jquery.ui': 'https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.23/jquery-ui.min',
'jquery.scrollto': 'https://www.scmplayer.net/js/lib/jquery/jquery.scrollTo.min',
'underscore': 'https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.4.1/underscore-min',
'knockout':'https://cdnjs.cloudflare.com/ajax/libs/knockout/2.1.0/knockout-min',
'text': 'https://www.scmplayer.net/js/lib/require/text',
'domready': 'https://www.scmplayer.net/js/lib/require/domready',
'scm': 'https://www.scmplayer.net/js/scm',
'scm.ui': 'https://www.scmplayer.net/js/scm.ui',
'song': 'https://www.scmplayer.net/js/song',
'binding/scm': 'https://www.scmplayer.net/js/binding/scm',
'binding/slider': 'https://www.scmplayer.net/js/binding/slider',
'binding/sortable': 'https://www.scmplayer.net/js/binding/sortable'
},
config:{
'scm':{
playback:{
'youtube':'(youtube.com|youtu.be)',
'soundcloud':'^http(s)?\:\/\/soundcloud.com',
"exfm": "^( *)(http(s)?://)?(www.)?ex.fm",
'soundmanager':'.*'
},
playlist:{
'youtube':'(youtube.com|youtu.be)',
'soundcloud':'^http(s)?\:\/\/soundcloud.com',
'rss':'.*'
}
}
},
waitSeconds: 900,
baseUrl: 'https://www.scmplayer.net/js/'
});
</script>
<script type="text/javascript" src="https://www.scmplayer.net/js/lib/require/require.js"></script>
<script type="text/javascript">
soundManager.preferFlash = false;
soundManager.useHTML5Audio = true;
soundManager.url = 'swf/';
soundManager.allowScriptAccess = 'always';
require([
'knockout','jquery','underscore',
'scm','song','scm.ui',
'binding/slider',
'binding/scm'
],function(ko,$,_,SCM,Song){
var config = SCM.config;
SCM.config = _.once(function(data){
config(data);
ko.applyBindings(SCM,$('#skin').get(0));
setTimeout(function(){
$('#contentW,#playerW,#playlistW').each(function(){
ko.applyBindings(SCM,this);
$(this).mousedown(function(){
return false;
});
});
},200);
});
while(SCMQueue.length > 0)
(new Function('SCM,Song',SCMQueue.shift()))(SCM,Song);
window.SCM = SCM;
window.Song = Song;
var resize = function(){
$('#content').height($('#contentW').height());
}
$(window).resize(_.throttle(resize,100));
resize();
});
</script>
</body>
</html>
Après avoir validé la création de la page, vous allez chercher son nom dans la liste. Il devrait s'agir de la dernière page créée (première dans la liste), et pour moi par exemple, c'est la page https://ceseravotrenomdeforumici.forumactif.com/h4-test-scm-music-player. On copie ce nom dans un coin.
Ensuite, deuxième étape, on va modifier l'ancien script par celui-ci :
- Code:
<!-- SCM Music Player https://www.scmplayer.net -->
<script type="text/javascript">
(function() {
var hasFrame = window.parent != window,
config = "{'skin':'https://static.tumblr.com/83zgfej/c83m2c7qy/skin19.css','volume':100,'autoplay':true,'shuffle':false,'repeat':1,'placement':'top','showplaylist':false,'playlist':[{'title':'Ambiance','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'}]}",
head = document.getElementsByTagName("head")[0],
dest = location.href.replace(/scmplayer\=true/g, 'scmplayer=false'),
destHost = dest.substr(0, dest.indexOf('/', 10)),
scm = 'https://ceseravotrenomdeforumici.forumactif.com/h4-' + '#' + dest,
scmHost = scm.substr(0, scm.indexOf('/', 10)),
isOutside = !hasFrame || location.href.indexOf("scmplayer=true") > 0,
postMessage = function(msg) {
return window.top.document.getElementById('scmframe').contentWindow.postMessage(msg, scmHost);
},
postFactory = function(obj, keys) {
var keys = keys.split(','),
post = function(key) {
return function(arg) {
var argStr = '';
if (typeof(arg) != 'undefined')
argStr = (key.match(/(play|queue)/) ? 'new Song(' : '(') +
JSON.stringify(arg) + ')';
postMessage('SCM.' + key + '(' + argStr + ')');
}
};
for (var i = 0; i < keys.length; i++) {
var key = keys[i];
obj[key] = post(key);
}
},
postConfig = function(config) {
if (!isOutside)
postMessage('SCM.config(' + config + ')');
},
addEvent = function(elm, evType, fn) {
if (elm.addEventListener) {
elm.addEventListener(evType, fn);
}
else if (elm.attachEvent) {
elm.attachEvent('on' + evType, fn);
}
else {
elm['on' + evType] = fn;
}
},
isIE = (function() {
var undef, v = 3,
div = document.createElement('div'),
all = div.getElementsByTagName('i');
while (div.innerHTML = '<!--[if gt IE ' + (++v) + ']><i></i><![endif]-->', all[0]);
return v > 4 ? v : undef;
})(),
isMobile = navigator.userAgent.match(/iPad|iPhone|Android|Blackberry/i),
isIPad = navigator.userAgent.match(/iPad/i),
init = function() {
if (!document.body) {
setTimeout(init, 10);
return;
}
if (isOutside) outside();
else inside();
},
outside = function() {
var css = 'html,body{overflow:hidden;} body{margin:0;padding:0;border:0;} img,a,embed,object,div,address,table,iframe,p,span,form,header,section,footer{ display:none;border:0;margin:0;padding:0; } #tumblr_controls{display:none;} #scmframe{display:block; background-color:transparent; position:fixed; top:0px; left:0px; width:100%; height:100%; z-index:1667;} ';
var style = document.createElement('style');
style.type = 'text/css';
style.id = 'scmcss';
if (style.styleSheet) style.styleSheet.cssText = css;
else style.appendChild(document.createTextNode(css));
head.appendChild(style);
var scmframe = document.createElement('iframe');
scmframe.frameBorder = 0;
scmframe.id = "scmframe";
scmframe.allowTransparency = true;
scmframe.src = scm;
document.body.insertBefore(scmframe, document.body.firstChild);
var resize = function() {
scmframe.style.height = (function() {
if (typeof(window.innerHeight) == 'number')
return window.innerHeight;
else if (document.documentElement && document.documentElement.clientHeight)
return document.documentElement.clientHeight;
else if (document.body && document.body.clientHeight)
return document.body.clientHeight;
})();
};
addEvent(window, 'load', function() {
setTimeout(function() {
while (document.body.firstChild != scmframe)
document.body.removeChild(document.body.firstChild);
while (document.body.lastChild != scmframe)
document.body.removeChild(document.body.lastChild);
resize();
}, 0);
});
addEvent(window, 'resize', resize);
var getPath = function() {
return location.href.replace(/#.*/, '');
},
path = getPath(),
hash = location.hash;
setInterval(function() {
if (getPath() != path) {
path = getPath();
window.scminside.location.replace(path);
}
if (location.hash != hash) {
hash = location.hash;
window.scminside.location.hash = hash;
}
}, 100);
},
inside = function() {
window.top.document.title = document.title;
var filter = function(host) {
host = host.replace(/blogspot.[a-z.]*/i, 'blogspot.com');
host = host.replace(/^(http(s)?:\/\/)?(www.)?/i, '');
return host;
};
addEvent(document.body, 'click', function(e) {
var tar = e.target;
while (!tar.tagName.match(/^(a|area)$/i) && tar != document.body)
tar = tar.parentNode;
if (tar.tagName.match(/^(a|area)$/i) && !tar.href.match(/.(jpg|png)$/i) && !tar.href.match(/^javascript:/)) {
if (tar.href.indexOf('#') == 0) {
if (tar.href != "#") {
window.top.scminside = window;
window.top.location.hash = location.hash;
e.preventDefault();
}
} else if (tar.title.match(/^(SCM:|\[SCM\])/i)) {
var title = tar.title.replace(/^(SCM:|\[SCM\])( )?/i, '');
var url = tar.href;
SCM.play({
title: title,
url: url
});
e.preventDefault();
} else if (tar.href.match(/\.css$/)) {
window.open('http://scmplayer.net/#skin=' + tar.href, '_blank');
window.focus();
e.preventDefault();
} else if (filter(tar.href).indexOf(filter(location.host)) == -1) {
if (tar.href.match(/^http(s)?/)) {
window.open(tar.href, '_blank');
window.focus();
e.preventDefault();
}
} else if (history.pushState) {
var url = filter(tar.href).replace(filter(destHost), '');
window.top.scminside = window;
window.top.history.pushState(null, null, url);
e.preventDefault();
}
}
});
};
var SCM = Object();
postFactory(SCM, 'queue,play,pause,next,previous,volume,skin,placement,' +
'loadPlaylist,repeatMode,isShuffle,showPlaylist,' +
'togglePlaylist,toggleShuffle,changeRepeatMode');
if (window.SCM && window.SCMMusicPlayer) return;
if (!isMobile) {
init();
}
if (config) postConfig(config);
SCM.init = postConfig;
window.SCMMusicPlayer = window.SCMMusicPlayer || SCM;
window.SCM = window.SCM || SCM;
})();
</script>
<!-- SCM Music Player script end -->
Et dans ce script, vous allez modifier une dernière chose, la ligne suivante :
- Code:
scm = 'https://ceseravotrenomdeforumici.forumactif.com/h4-' + '#' + dest,
Cette ligne, c'est l'adresse qui permet au script de créer l'iframe (1). En mettant https://ceseravotrenomdeforumici.forumactif.com/h4-, on fait donc en sorte de rester sur votre site plutôt que d'aller sur https://www.scmplayer.net/ ... et c'est de cette façon que non seulement, le script va marcher, mais en plus, il ne devrait pas déranger quand vous vous rendrez ensuite sur la page login.
C'était assez compliqué à faire, il faut être précis quand vous le mettrez en place... mais normalement, ça doit passer, c'est testé et validé sur mon forum test en tout cas !
Re: Script SCM music player ne fonctionne pas
Ouah.
Je reste sans voix.
Parce que de 1, ça fonctionne.
De 2, on est passé de quelques lignes à une manipulation gigantesque !
Je respecte du coup votre travail et je vous respecte tous les deux car c'est un script compliqué, je ne comprends rien à ce qui est écrit MAIS je comprends parfaitement vos explications !
J'ai une dernière question avant de vous libérer : si je décide de rajouter une musique sur le site SCM, ainsi que de changer son apparence, comment puis-je faire avec votre code sans casser votre travail ?
J'ai trouvé la ligne CSS.
J'ai trouvé la ligne musique :
En tout cas merci, je respecte tellement les codeurs que ça donne envie d'en devenir !
EDIT : 09h50 : Il se trouve que bien que tout fonctionne impec, je me retrouve devant un "bug" dirais-je ! Imaginons que je clique sur l'accueil une fois pour revenir en arrière, je retourne sur ma page d'accueil. Mais si je reclique dessus, je ne peux pas. Cela arrive aussi si je clique sur "éditer un post", je ne peux pas re-cliquer sur éditer juste après.
J'imagine que c'est du au fait qu'on charge une HTML.
Car sachez le; votre code permet d'avoir de la musique SANS COUPURE !!!
>>> Sans coupure... même dans le panneau d'administration ! C'est génial. Mais voilà, il y a un petit inconvénient sur les "clics".
Je reste sans voix.
Parce que de 1, ça fonctionne.
De 2, on est passé de quelques lignes à une manipulation gigantesque !
Je respecte du coup votre travail et je vous respecte tous les deux car c'est un script compliqué, je ne comprends rien à ce qui est écrit MAIS je comprends parfaitement vos explications !
J'ai une dernière question avant de vous libérer : si je décide de rajouter une musique sur le site SCM, ainsi que de changer son apparence, comment puis-je faire avec votre code sans casser votre travail ?
J'ai trouvé la ligne CSS.
J'ai trouvé la ligne musique :
- Code:
{'title':'Ambiance','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'}
- Code:
'playlist':[{'title':'Ambiance','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'}
{'title':'TEST 2','url':'INSERER URL'}]
En tout cas merci, je respecte tellement les codeurs que ça donne envie d'en devenir !
EDIT : 09h50 : Il se trouve que bien que tout fonctionne impec, je me retrouve devant un "bug" dirais-je ! Imaginons que je clique sur l'accueil une fois pour revenir en arrière, je retourne sur ma page d'accueil. Mais si je reclique dessus, je ne peux pas. Cela arrive aussi si je clique sur "éditer un post", je ne peux pas re-cliquer sur éditer juste après.
J'imagine que c'est du au fait qu'on charge une HTML.
Car sachez le; votre code permet d'avoir de la musique SANS COUPURE !!!
>>> Sans coupure... même dans le panneau d'administration ! C'est génial. Mais voilà, il y a un petit inconvénient sur les "clics".
Re: Script SCM music player ne fonctionne pas
Bonjour,
Ce que je vais vous conseiller pour tout ce qui est config, c'est de passer par le site https://www.scmplayer.net/ à chaque fois. Vous entrez les informations que vous souhaitez, et à la fin, quand il vous donne le code correspondant, vous copiez la partie data-config :
"{'skin':'https://static.tumblr.com/83zgfej/c83m2c7qy/skin19.css','volume':100,'autoplay':true,'shuffle':false,'repeat':1,'placement':'top','showplaylist':false,'playlist':[{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'},{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'},{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'}]}"
Et ce contenu, vous le copiez au niveau de la ligne "config =" du script dans le template (sans oublier la virgule à la toute fin de la ligne) :
Comme ça, aucune chance de se tromper !
Par contre, pour le problème que vous soulevez, je ne suis pas sûr de pouvoir faire quoi que ce soit : les scripts rechargent la page à partir du moment où l'url change... Si vous cliquez sur un lien qui a une url identique à la page actuelle, les scripts ne détectent rien, donc ne font rien. J'ai peur de vous rajouter des bugs si je touche encore plus en profondeur (et ça, ce serait dans le cas où j'arrive à trifouiller quelque chose)...
Ce que je vais vous conseiller pour tout ce qui est config, c'est de passer par le site https://www.scmplayer.net/ à chaque fois. Vous entrez les informations que vous souhaitez, et à la fin, quand il vous donne le code correspondant, vous copiez la partie data-config :
- Code:
<!-- SCM Music Player https://www.scmplayer.net -->
<script type="text/javascript" src="https://www.scmplayer.net/script.js"
data-config="{'skin':'https://static.tumblr.com/83zgfej/c83m2c7qy/skin19.css','volume':100,'autoplay':true,'shuffle':false,'repeat':1,'placement':'top','showplaylist':false,'playlist':[{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'},{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'},{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'}]}" ></script>
<!-- SCM Music Player script end -->
"{'skin':'https://static.tumblr.com/83zgfej/c83m2c7qy/skin19.css','volume':100,'autoplay':true,'shuffle':false,'repeat':1,'placement':'top','showplaylist':false,'playlist':[{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'},{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'},{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'}]}"
Et ce contenu, vous le copiez au niveau de la ligne "config =" du script dans le template (sans oublier la virgule à la toute fin de la ligne) :
- Code:
config = "{'skin':'https://static.tumblr.com/83zgfej/c83m2c7qy/skin19.css','volume':100,'autoplay':true,'shuffle':false,'repeat':1,'placement':'top','showplaylist':false,'playlist':[{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'},{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'},{'title':'','url':'https://www.youtube.com/watch?v=tEZr-7qk_4k'}]}",
Comme ça, aucune chance de se tromper !
Par contre, pour le problème que vous soulevez, je ne suis pas sûr de pouvoir faire quoi que ce soit : les scripts rechargent la page à partir du moment où l'url change... Si vous cliquez sur un lien qui a une url identique à la page actuelle, les scripts ne détectent rien, donc ne font rien. J'ai peur de vous rajouter des bugs si je touche encore plus en profondeur (et ça, ce serait dans le cas où j'arrive à trifouiller quelque chose)...
Re: Script SCM music player ne fonctionne pas
Vous avez parfaitement raison. J'ai tenu informé mes membres qui jouaient avec la bannière defilante en changeant l'URL que c'était fini, qu'il fallait passer à autre chose. Ils ont allumé un feu funéraire haha.
Merci de votre aide à tous les deux, je classe l'affaire et espère que ça aidera aussi d'autres personnes !
Merci de votre aide à tous les deux, je classe l'affaire et espère que ça aidera aussi d'autres personnes !
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum