Système d'alertes en temps réel ne fonctionne pas
3 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
Système d'alertes en temps réel ne fonctionne pas
Détails techniques
Version du forum : Invision
Poste occupé : Fondateur
Navigateur(s) concerné(s) : Mozilla Firefox
Personnes concernées par le problème : Tous les utilisateurs
Lien du forum : http://www.arcadia-forum.com
Description du problème
Bonsoir,Le système d'alerte en temps réel ne semble pas fonctionner sur le forum. En effet, j'ai fait tous les réglages nécessaires; les permissions du sous-forum concerné, les modifications dans le JS etc.
Auriez-vous une idée ?
Le JS:
- Code:
function realTime_alert() {
var version="invision";
var topicAlertId="1308";
jQuery.ajax({
url: "/t"+topicAlertId+"-?view=newest",
success: function(result) {
var html = jQuery(result);
if (version=="phpbb3") {
var alertBody= html.find("div.post .content .codebox code").eq(-1).text();
var id = html.find("div.post").eq(-1).attr("id");
}
if (version=="phpbb2") {
var alertBody= html.find("tr.post .postbody .codebox .cont_code").eq(-1).text();
var id = html.find("tr.post").eq(-1).attr("id");
}
if (version=="punbb") {
var alertBody= html.find("div.post .postbody .entry-content .codebox .cont_code code").eq(-1).text();
var id = html.find("div.post .postmain .posthead").eq(-1).attr("id");
}
if (version=="invision") {
var alertBody= html.find("div.post .post-entry .codebox.contcode dd code").eq(-1).text();
var id = html.find("div.post").eq(-1).attr("id");
}
if(localStorage.getItem(id)!='read' && sessionStorage.getItem(id)!=location.pathname) {
$('body').append(alertBody);
$('.realTime_alert .close').click(function() {
$(this).closest('.realTime_alert').fadeOut();
localStorage.setItem(id,"read");
});
}
if(sessionStorage.getItem(id)!=location.pathname) {
sessionStorage.setItem(id, location.pathname);
} else {
sessionStorage.setItem(id, location.pathname);
}
},
});
return topicAlertId;
}
$(function(){
realTime_alert();
setInterval('realTime_alert();', 30000); // Reactualisation toutes les 30s
});
Le HTML:
- Code:
<br /><style>
.progress-bar {
height: 12px;
margin-bottom: 20px;
overflow: hidden;
background-color: #F5F5FB;
border-radius: 9px;
-webkit-box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
}
.progress-bar span {
float: left;
height: 100%;
font-size: 12px;
line-height: 20px;
color: #fff;
text-align: center;
background-color: #0787DD;
-webkit-box-shadow: inset 0 -1px 0 rgba(0,0,0,.15);
box-shadow: inset 0 -1px 0 rgba(0,0,0,.15);
-webkit-transition: width .6s ease;
-o-transition: width .6s ease;
transition: width .6s ease;
}
.result {
font-size: 25px;
max-width: 350px;
height: 60px;
margin: auto;
padding-top: 80px;
text-align: center;
}
.result.done {
background: url(https://cdn2.iconfinder.com/data/icons/color-svg-vector-icons-part-2/512/ok_check_yes_tick_accept_success-64.png) no-repeat top center;
}
.result.fail {
background: url(https://cdn2.iconfinder.com/data/icons/color-svg-vector-icons-part-2/512/wrong_table_no_navigator_formula-64.png) no-repeat top center;
}
</style>
<form id="form">
<label for="alert_name">Titre de l'alerte</label> <input type="text" name="alert_name" id="alert_name" placeholder="Exemple: Impossible de changer de mot de passe" style="width: 60%;"/>
<br /><br />
<label for="alert_content">Contenu du message</label> <input type="text" name="alert_message" id="alert_message" placeholder="" style="width: 70%;" />
<br /><br />
<label for="alert_image">Image</label> <input type="text" name="alert_image" id="alert_image" placeholder="http://" style="width: 70%;"/>
<br /><br /><br />
<button class="button1" id="send">Envoyer l'alerte</button>
</form><div class="result"></div><div class="progress-bar"><span style="width: 200px;"></span></div>
<script>
var _param = function(obj, modifier) { var buildParams = function(prefix, obj, traditional, add) { var name; if (jQuery.isArray(obj)) { jQuery.each(obj, function(i, v) { if (traditional || /\[\]$/.test(prefix)) { add(prefix, v); } else { buildParams(prefix + "[" + (typeof v === "object" ? i : "") + "]", v, traditional, add); } }); } else { if (!traditional && jQuery.type(obj) === "object") { for (name in obj) { buildParams(prefix + "[" + name + "]", obj[name], traditional, add); } } else { add(prefix, obj); } } }; var prefix, s = [], add = function(key, value) { var nvalue; if (modifier) { if ((nvalue = modifier(key, value)) === null) { return; } else if (nvalue !== undefined) value = nvalue } value = jQuery.isFunction(value) ? value() : value == null ? "" : value; s[s.length] = _encodeURIComponent(key) + "=" + _encodeURIComponent(value); }; if (jQuery.isArray(obj) || obj.jquery && !jQuery.isPlainObject(obj)) { jQuery.each(obj, function() { add(this.name, this.value); }); } else { for (prefix in obj) { buildParams(prefix, obj[prefix], undefined, add); } } return s.join("&").replace(/%20/g, "+"); }, _encodeURIComponent = function(str) { if ((document.charset ? document.charset : document.characterSet).toLowerCase() != "utf-8") { return encodeURIComponent(escape(str).replace(/%u[A-F0-9]{4}/g, function(x) { return "&#" + parseInt(x.substr(2), 16) + ";"; })).replace(/%25/g, "%"); } else { return encodeURIComponent(str); } };
$('.progress-bar').hide();
$('.reslt').hide();
$('form#form').submit(function() {
var message="[code]<div class='realTime_alert' style='display: block; background-image: url("+document.getElementById('alert_image').value+");'><span class='close'>×</span><b>"+document.getElementById('alert_name').value+"</b>\n<span class='inner'>"+document.getElementById('alert_message').value+"</span></div>[/code]";
$('.progress-bar').show();
$('form#form').hide();
if($('.progress-bar span').css('width')!='100%') {setTimeout("$('.progress-bar span').css('width', '80%');", 100);}
$.post( "/post", _param({ mode: "reply", t: realTime_alert(), post: 1, notify: 0, message: message }))
.done(function() {
$('.progress-bar span').css('width', '100%');
$('.result').fadeIn().text('Envoyée avec succès');
$('.result').addClass('done');
})
.fail(function() {
$('.progress-bar span').css('width', '0%');
$('.result').fadeIn().text('Erreur lors du traitement');
$('.progress-bar').fadeOut();
$('.result').addClass('fail');
alert('Il semblerait qu\'une erreur se soit produite ! Vérifiez votre connexion internet et réessayez ultérieurement <img src="http://r23.imgfast.net/users/2316/18/97/34/smiles/1371890812.gif" alt="Sad" longdesc="3" />');
});
return false;
});
</script>
Merci d'avance.
ZYVHK- ***
-
Messages : 134
Inscrit(e) le : 05/03/2016
Re: Système d'alertes en temps réel ne fonctionne pas
Oy,
Je remonte le sujet, le problème étant toujours d'actualité.
Merci :>
Je remonte le sujet, le problème étant toujours d'actualité.
Merci :>
ZYVHK- ***
-
Messages : 134
Inscrit(e) le : 05/03/2016
Re: Système d'alertes en temps réel ne fonctionne pas
Coucou
Tu as regardé dans tes autres js ? La console affiche une erreur :
ça expliquerait peut etre pourquoi ça ne fonctionne pas.
Tu as regardé dans tes autres js ? La console affiche une erreur :
- Code:
Uncaught ReferenceError: recupFrame is not defined
ça expliquerait peut etre pourquoi ça ne fonctionne pas.
Re: Système d'alertes en temps réel ne fonctionne pas
Oy,
Avec ou sans les codes concernés qui afficheraient cette erreur, les alertes n'apparaissent pas. :l
Avec ou sans les codes concernés qui afficheraient cette erreur, les alertes n'apparaissent pas. :l
ZYVHK- ***
-
Messages : 134
Inscrit(e) le : 05/03/2016
Re: Système d'alertes en temps réel ne fonctionne pas
Bon j'ai tout testé et ça fonctionne sur mon forum de test :/:
tu as bien affiché le js sur toutes les pages ?
EDIT : ah bah non, pas sur Firefox :/
tu as bien affiché le js sur toutes les pages ?
EDIT : ah bah non, pas sur Firefox :/
Re: Système d'alertes en temps réel ne fonctionne pas
Salut à vous deux,
j'ai le même soucis et cela est dû au template viewtopic_body:
https://forum.forumactif.com/t384530-script-alerte-en-temps-reel-fonctionnel-mais-pas-de-notification#3235318
Si ce template est vierge les notifications réapparaissent.
a++
j'ai le même soucis et cela est dû au template viewtopic_body:
https://forum.forumactif.com/t384530-script-alerte-en-temps-reel-fonctionnel-mais-pas-de-notification#3235318
Si ce template est vierge les notifications réapparaissent.
a++
Invité- Invité
Re: Système d'alertes en temps réel ne fonctionne pas
Oy,
Il me faudrait une solution plutôt que d'avoir un code vierge. :l
J'ai essayé de modifier le JS convenablement (en renommant et ajoutant ce qu'il faut), mais rien. Voir partie invision:
Merci d'avance pour votre aide. :/
Il me faudrait une solution plutôt que d'avoir un code vierge. :l
J'ai essayé de modifier le JS convenablement (en renommant et ajoutant ce qu'il faut), mais rien. Voir partie invision:
- Code:
function realTime_alert() {
var version="invision";
var topicAlertId="1308";
jQuery.ajax({
url: "/t"+topicAlertId+"-?view=newest",
success: function(result) {
var html = jQuery(result);
if (version=="phpbb3") {
var alertBody= html.find("div.post .content .codebox code").eq(-1).text();
var id = html.find("div.post").eq(-1).attr("id");
}
if (version=="phpbb2") {
var alertBody= html.find("tr.post .postbody .codebox .cont_code").eq(-1).text();
var id = html.find("tr.post").eq(-1).attr("id");
}
if (version=="punbb") {
var alertBody= html.find("div.post .postbody .entry-content .codebox .cont_code code").eq(-1).text();
var id = html.find("div.post .postmain .posthead").eq(-1).attr("id");
}
if (version=="invision") {
var alertBody= html.find("div.post .postbody .ppp dl.codebox.contcode dd code").eq(-1).text();
var id = html.find("div.post").eq(-1).attr("id");
}
if(localStorage.getItem(id)!='read' && sessionStorage.getItem(id)!=location.pathname) {
$('body').append(alertBody);
$('.realTime_alert .close').click(function() {
$(this).closest('.realTime_alert').fadeOut();
localStorage.setItem(id,"read");
});
}
if(sessionStorage.getItem(id)!=location.pathname) {
sessionStorage.setItem(id, location.pathname);
} else {
sessionStorage.setItem(id, location.pathname);
}
},
});
return topicAlertId;
}
$(function(){
realTime_alert();
setInterval('realTime_alert();', 30000); // Reactualisation toutes les 30s
});
Merci d'avance pour votre aide. :/
ZYVHK- ***
-
Messages : 134
Inscrit(e) le : 05/03/2016
Re: Système d'alertes en temps réel ne fonctionne pas
Re,
au moins , tu sais d’où vient le soucis.
a++
Il me faudrait une solution plutôt que d'avoir un code vierge. :l
au moins , tu sais d’où vient le soucis.
a++
Invité- Invité
Re: Système d'alertes en temps réel ne fonctionne pas
En effet, je t'en remercie. Je continue les essais de mon côté.
ZYVHK- ***
-
Messages : 134
Inscrit(e) le : 05/03/2016
Re: Système d'alertes en temps réel ne fonctionne pas
Réglé. Merci à l'auteur du message suivant:
https://forum.forumactif.com/t379000-systeme-d-annonce-en-temps-reel-aller-plus-loin#3197271
https://forum.forumactif.com/t379000-systeme-d-annonce-en-temps-reel-aller-plus-loin#3197271
ZYVHK- ***
-
Messages : 134
Inscrit(e) le : 05/03/2016
Re: Système d'alertes en temps réel ne fonctionne pas
Arcadia-forum a écrit:Réglé. Merci à l'auteur du message suivant:
https://forum.forumactif.com/t379000-systeme-d-annonce-en-temps-reel-aller-plus-loin#3197271
Bonjour, Afin de faciliter la gestion des problèmes, si le vôtre est résolu, pensez à :
|
Sujets similaires
» Système alertes en temps réel ne fonctionne pas
» Système d'alerte en temps réel
» Système d'alerte en temps réel
» Système d'alerte en temps réel - ModernBB
» Système d'annonce en temps réel (aller plus loin)
» Système d'alerte en temps réel
» Système d'alerte en temps réel
» Système d'alerte en temps réel - ModernBB
» Système d'annonce en temps réel (aller plus loin)
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