Souci sur le script de préfixe de Ea
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
Souci sur le script de préfixe de Ea
Bonsoir,
Je viens sur ce forum pour un souci sur le script de préfixe que j'ai demandé et qui a été réalisé par Ea.
Au départ j'ai eu ce code de préfixe avec possibilité d'éditer justement ce préfixe par ce script :
Ce script a très bien marché mais certains de mes membres ne l'utilisaient pas du coup j'ai demandé à ce qu'il soit obligatoire de l'utiliser et voici le script que j'ai actuellement :
Malheureusement depuis que j'ai ce script il n'est plus possible de modifier le préfixe lorsqu'on édite le sujet...
J'aimerais donc qu'il soit possible de modifier le préfixe lorsqu'on édite le sujet tout en gardant l'obligation de l'utiliser lors de la création d'un nouveau post...
Merci d'avance !
Je viens sur ce forum pour un souci sur le script de préfixe que j'ai demandé et qui a été réalisé par Ea.
Au départ j'ai eu ce code de préfixe avec possibilité d'éditer justement ce préfixe par ce script :
- Code:
location.pathname=="/post"&&$(function(){
var tags= { 4 : ["[En cours]"], 9 : ["[En cours] (Simple achat)","[En cours] (Multiples achats)"], 19 : ["[En cours] (Simple vente)","[En cours] (Multiples ventes)"], 29 : ["[En cours] (Simple estimation)","[En cours] (Multiples estimations)"], 12 : ["[En cours]","[Prévue]"], 31 : ["[Commentaires]","[Contenu]"], 5 : ["- SP","- Acte","- Tutoriel","- Raid","- Divers","- Nosmate","- Compagnon","- Equipement","- TS","- Nosmall","- Mini-Pays"] };
var dont_add_space_if = /^[\s\[]/;
var f=$('form[method="post"] input[name="f"]');if(f.length==0)return;tags=tags[f.val()];if(!tags)return;$("<select><option></option><option>"+tags.join("</option><option>")+"</option></select>").insertAfter('form[method="post"] input[name="subject"]').change(function(){var v=this.value,a=1,t=$(this).prev().val();if(t.indexOf(v)!=-1)a=0;$("option",this).each(function(){t=t.replace($(this).val(),"")});if(a)t=v+(dont_add_space_if.test(t)?"":" ")+
t;$(this).prev().val(t);this.selectedIndex=0;return false})
});
location.pathname=="/post"&&$(function(){
var tags=["[En cours]","[Accepté]","[Essai]","[Refusé]","[Terminée]","[Terminée] (Simple achat)","[Terminée] (Multiples achats)","[Terminée] (Simple vente)","[Terminée] (Multiples ventes)","[Terminée] (Simple estimation)","[Terminée] (Multiples estimations)","[Commentaires]"];
var dont_add_space_if=/^[\s\[]/;
if($('form[method="post"] input[name="f"]').length)return;$("<select><option></option><option>"+tags.join("</option><option>")+"</option></select>").insertAfter('form[method="post"] input[name="modif_topic_title"]').change(function(){var v=this.value,a=1,t=$(this).prev().val();if(t.indexOf(v)!=-1)a=0;$("option",this).each(function(){t=t.replace($(this).val(),"")});if(a)t=v+(dont_add_space_if.test(t)?"":" ")+
t;$(this).prev().val(t);this.selectedIndex=0;return false})
});
Ce script a très bien marché mais certains de mes membres ne l'utilisaient pas du coup j'ai demandé à ce qu'il soit obligatoire de l'utiliser et voici le script que j'ai actuellement :
- Code:
location.pathname == "/post" && $(function() {
var tags = {
4: ["[En cours]"],
9: ["[En cours] (Simple achat)", "[En cours] (Multiples achats)"],
19: ["[En cours] (Simple vente)", "[En cours] (Multiples ventes)"],
29: ["[En cours] (Simple estimation)", "[En cours] (Multiples estimations)"],
12: ["[En cours]", "[Prévue]"],
31: ["[Commentaires]", "[Contenu]"],
5: ["- SP", "- Acte", "- Tutoriel", "- Raid", "- Divers", "- Nosmate", "- Compagnon", "- Equipement", "- TS", "- Nosmall", "- Mini-Pays"]
};
var dont_add_space_if = /^[\s\[]/;
var f = $('form[method="post"] input[name="f"]');
if (f.length == 0) return;
tags = tags[f.val()];
if (!tags) return;
var s = $("<select><option></option><option>" + tags.join("</option><option>") + "</option></select>").insertAfter('form[method="post"] input[name="subject"]').change(function() {
var v = this.value,
a = 1,
t = $(this).prev().val();
if (t.indexOf(v) != -1) a = 0;
$("option", this).each(function() {
t = t.replace($(this).val(), "")
});
if (a) t = v + (dont_add_space_if.test(t) ? "" : " ") +
t;
$(this).css('border', 'initial');
$(this).prev().val(t);
this.selectedIndex = 0;
return false
});
s.closest('form').on('submit', function(){
var v = $("input[name='subject']", this).val();
for(var i= 0; i<tags.length; i++)
if(v.indexOf(tags[i]) != -1)
return true;
alert("Il faut choisir un tag ;)");
$("html, body").animate({scrollTop:s.offset().top-$(window).height()/2}, '500', 'swing');
s.css('border', '3px dashed red');
return false;
});
});
Malheureusement depuis que j'ai ce script il n'est plus possible de modifier le préfixe lorsqu'on édite le sujet...
J'aimerais donc qu'il soit possible de modifier le préfixe lorsqu'on édite le sujet tout en gardant l'obligation de l'utiliser lors de la création d'un nouveau post...
Merci d'avance !
Dernière édition par Gae67 le Sam 6 Sep 2014 - 12:16, édité 1 fois
Re: Souci sur le script de préfixe de Ea
Bonjour,
Dans le premier code il y a une partie pour la création de sujet :
et une partie pour l'édition de message :
dans le deuxième script il n'y a que la partie pour la création de sujet.
Il faut donc ajouter la partie pour l'édition.
Dans le premier code il y a une partie pour la création de sujet :
- Code:
location.pathname=="/post"&&$(function(){
var tags= { 4 : ["[En cours]"], 9 : ["[En cours] (Simple achat)","[En cours] (Multiples achats)"], 19 : ["[En cours] (Simple vente)","[En cours] (Multiples ventes)"], 29 : ["[En cours] (Simple estimation)","[En cours] (Multiples estimations)"], 12 : ["[En cours]","[Prévue]"], 31 : ["[Commentaires]","[Contenu]"], 5 : ["- SP","- Acte","- Tutoriel","- Raid","- Divers","- Nosmate","- Compagnon","- Equipement","- TS","- Nosmall","- Mini-Pays"] };
var dont_add_space_if = /^[\s\[]/;
var f=$('form[method="post"] input[name="f"]');if(f.length==0)return;tags=tags[f.val()];if(!tags)return;$("<select><option></option><option>"+tags.join("</option><option>")+"</option></select>").insertAfter('form[method="post"] input[name="subject"]').change(function(){var v=this.value,a=1,t=$(this).prev().val();if(t.indexOf(v)!=-1)a=0;$("option",this).each(function(){t=t.replace($(this).val(),"")});if(a)t=v+(dont_add_space_if.test(t)?"":" ")+
t;$(this).prev().val(t);this.selectedIndex=0;return false})
});
et une partie pour l'édition de message :
- Code:
location.pathname=="/post"&&$(function(){
var tags=["[En cours]","[Accepté]","[Essai]","[Refusé]","[Terminée]","[Terminée] (Simple achat)","[Terminée] (Multiples achats)","[Terminée] (Simple vente)","[Terminée] (Multiples ventes)","[Terminée] (Simple estimation)","[Terminée] (Multiples estimations)","[Commentaires]"];
var dont_add_space_if=/^[\s\[]/;
if($('form[method="post"] input[name="f"]').length)return;$("<select><option></option><option>"+tags.join("</option><option>")+"</option></select>").insertAfter('form[method="post"] input[name="modif_topic_title"]').change(function(){var v=this.value,a=1,t=$(this).prev().val();if(t.indexOf(v)!=-1)a=0;$("option",this).each(function(){t=t.replace($(this).val(),"")});if(a)t=v+(dont_add_space_if.test(t)?"":" ")+
t;$(this).prev().val(t);this.selectedIndex=0;return false})
});
dans le deuxième script il n'y a que la partie pour la création de sujet.
Il faut donc ajouter la partie pour l'édition.
Ea- Aidactif
- Messages : 23583
Inscrit(e) le : 04/04/2008
Re: Souci sur le script de préfixe de Ea
Je viens d'ajouter la partie pour l'édition de message dans le deuxième script et effectivement cela ne marche pas...
J'ai bien essayé justement avant que poster un nouveau sujet.
J'ai bien essayé justement avant que poster un nouveau sujet.
Re: Souci sur le script de préfixe de Ea
.. | Bonjour, Attention, cela fait 8 jours que nous n'avons pas de nouvelles concernant votre demande, si vous ne voulez pas voir délester votre sujet, merci de poster dans les 24h qui suivent ce message. Si votre sujet est résolu, dans ce cas, votre premier message et cochez l'icône A bientôt sur ForumActif |
Re: Souci sur le script de préfixe de Ea
Si je l'exécute sur ce forum-ci ça marche : https://i.imgur.com/KvXmdis.png
Et j'imagine qu'il marchait les fois précédente où il était sur votre forum.
Donc je ne vois pas comment il serait possible qu'il ne fonctionne plus maintenant
Cordialement.
Et j'imagine qu'il marchait les fois précédente où il était sur votre forum.
Donc je ne vois pas comment il serait possible qu'il ne fonctionne plus maintenant
Cordialement.
Ea- Aidactif
- Messages : 23583
Inscrit(e) le : 04/04/2008
Re: Souci sur le script de préfixe de Ea
Voici le code que j'ai actuellement, quand vous me dites d'ajouter la partie de l'édition :
Cordialement.
- Code:
location.pathname == "/post" && $(function() {
var tags = {
4: ["[En cours]"],
9: ["[En cours] (Simple achat)", "[En cours] (Multiples achats)"],
19: ["[En cours] (Simple vente)", "[En cours] (Multiples ventes)"],
29: ["[En cours] (Simple estimation)", "[En cours] (Multiples estimations)"],
12: ["[En cours]", "[Prévue]"],
31: ["[Commentaires]", "[Contenu]"],
5: ["- SP", "- Acte", "- Tutoriel", "- Raid", "- Divers", "- Nosmate", "- Compagnon", "- Equipement", "- TS", "- Nosmall", "- Mini-Pays"]
};
var dont_add_space_if = /^[\s\[]/;
var f = $('form[method="post"] input[name="f"]');
if (f.length == 0) return;
tags = tags[f.val()];
if (!tags) return;
var s = $("<select><option></option><option>" + tags.join("</option><option>") + "</option></select>").insertAfter('form[method="post"] input[name="subject"]').change(function() {
var v = this.value,
a = 1,
t = $(this).prev().val();
if (t.indexOf(v) != -1) a = 0;
$("option", this).each(function() {
t = t.replace($(this).val(), "")
});
if (a) t = v + (dont_add_space_if.test(t) ? "" : " ") +
t;
$(this).css('border', 'initial');
$(this).prev().val(t);
this.selectedIndex = 0;
return false
});
s.closest('form').on('submit', function(){
var v = $("input[name='subject']", this).val();
for(var i= 0; i<tags.length; i++)
if(v.indexOf(tags[i]) != -1)
return true;
alert("Il faut choisir un préfixe/tag en début de sujet avant de pouvoir poster ;)");
$("html, body").animate({scrollTop:s.offset().top-$(window).height()/2}, '500', 'swing');
s.css('border', '3px dashed red');
return false;
});
location.pathname=="/post"&&$(function(){
var tags=["[En cours]","[Accepté]","[Essai]","[Refusé]","[Terminée]","[Terminée] (Simple achat)","[Terminée] (Multiples achats)","[Terminée] (Simple vente)","[Terminée] (Multiples ventes)","[Terminée] (Simple estimation)","[Terminée] (Multiples estimations)","[Commentaires]"];
var dont_add_space_if=/^[\s\[]/;
if($('form[method="post"] input[name="f"]').length)return;$("<select><option></option><option>"+tags.join("</option><option>")+"</option></select>").insertAfter('form[method="post"] input[name="modif_topic_title"]').change(function(){var v=this.value,a=1,t=$(this).prev().val();if(t.indexOf(v)!=-1)a=0;$("option",this).each(function(){t=t.replace($(this).val(),"")});if(a)t=v+(dont_add_space_if.test(t)?"":" ")+
t;$(this).prev().val(t);this.selectedIndex=0;return false})
});
});
Cordialement.
Re: Souci sur le script de préfixe de Ea
Il ne faut pas les imbriquer, mais soit les mettres chacun sur une page de script, soit les mettre à la suite l'un de l'autre :
en le mettant au milieu de l'autre script, ceci dans l'autre script :
va, si on est pas sur une page de nouveau sujet, annuler la totalité du reste du code de la fonction ( le return termine la fonction sans faire la suite )
donc dans le cas d'une édition le script ( différent de création de nouveau sujet ) on sort de la fonction à cet endroit et le script pour l'édition n'est jamais exécuté.
Cordialement.
- Code:
location.pathname == "/post" && $(function() {
var tags = {
4: ["[En cours]"],
9: ["[En cours] (Simple achat)", "[En cours] (Multiples achats)"],
19: ["[En cours] (Simple vente)", "[En cours] (Multiples ventes)"],
29: ["[En cours] (Simple estimation)", "[En cours] (Multiples estimations)"],
12: ["[En cours]", "[Prévue]"],
31: ["[Commentaires]", "[Contenu]"],
5: ["- SP", "- Acte", "- Tutoriel", "- Raid", "- Divers", "- Nosmate", "- Compagnon", "- Equipement", "- TS", "- Nosmall", "- Mini-Pays"]
};
var dont_add_space_if = /^[\s\[]/;
var f = $('form[method="post"] input[name="f"]');
if (f.length == 0) return;
tags = tags[f.val()];
if (!tags) return;
var s = $("<select><option></option><option>" + tags.join("</option><option>") + "</option></select>").insertAfter('form[method="post"] input[name="subject"]').change(function() {
var v = this.value,
a = 1,
t = $(this).prev().val();
if (t.indexOf(v) != -1) a = 0;
$("option", this).each(function() {
t = t.replace($(this).val(), "")
});
if (a) t = v + (dont_add_space_if.test(t) ? "" : " ") +
t;
$(this).css('border', 'initial');
$(this).prev().val(t);
this.selectedIndex = 0;
return false
});
s.closest('form').on('submit', function() {
var v = $("input[name='subject']", this).val();
for (var i = 0; i < tags.length; i++)
if (v.indexOf(tags[i]) != -1)
return true;
alert("Il faut choisir un préfixe/tag en début de sujet avant de pouvoir poster ;)");
$("html, body").animate({
scrollTop: s.offset().top - $(window).height() / 2
}, '500', 'swing');
s.css('border', '3px dashed red');
return false;
});
});
location.pathname == "/post" && $(function() {
var tags = ["[En cours]", "[Accepté]", "[Essai]", "[Refusé]", "[Terminée]", "[Terminée] (Simple achat)", "[Terminée] (Multiples achats)", "[Terminée] (Simple vente)", "[Terminée] (Multiples ventes)", "[Terminée] (Simple estimation)", "[Terminée] (Multiples estimations)", "[Commentaires]"];
var dont_add_space_if = /^[\s\[]/;
if ($('form[method="post"] input[name="f"]').length) return;
$("<select><option></option><option>" + tags.join("</option><option>") + "</option></select>").insertAfter('form[method="post"] input[name="modif_topic_title"]').change(function() {
var v = this.value,
a = 1,
t = $(this).prev().val();
if (t.indexOf(v) != -1) a = 0;
$("option", this).each(function() {
t = t.replace($(this).val(), "")
});
if (a) t = v + (dont_add_space_if.test(t) ? "" : " ") +
t;
$(this).prev().val(t);
this.selectedIndex = 0;
return false
})
});
en le mettant au milieu de l'autre script, ceci dans l'autre script :
- Code:
var f = $('form[method="post"] input[name="f"]');
if (f.length == 0) return;
va, si on est pas sur une page de nouveau sujet, annuler la totalité du reste du code de la fonction ( le return termine la fonction sans faire la suite )
donc dans le cas d'une édition le script ( différent de création de nouveau sujet ) on sort de la fonction à cet endroit et le script pour l'édition n'est jamais exécuté.
Cordialement.
Ea- Aidactif
- Messages : 23583
Inscrit(e) le : 04/04/2008
Re: Souci sur le script de préfixe de Ea
Merci beaucoup pour cette précieuse aide.
Dans votre explication je n'ai pas très bien compris (vous m'excuserez mais je suis d'une nullité dans les codes javascript que avec moi ca fait deux ) mais l'essentiel c'est que ca marche et je vous remercie une fois de plus.
Cordialement.
Dans votre explication je n'ai pas très bien compris (vous m'excuserez mais je suis d'une nullité dans les codes javascript que avec moi ca fait deux ) mais l'essentiel c'est que ca marche et je vous remercie une fois de plus.
Cordialement.
Sujets similaires
» Problème de script Changer le préfixe de modérateurs de la Chat Box
» Souci avec mon script page d'acceuil
» Souci avec un script effet 'spoiler' sur la PA
» Souci script pour image dans cadre répondre
» Souci de récupération de couleur du groupe pour coloration de div script javascript
» Souci avec mon script page d'acceuil
» Souci avec un script effet 'spoiler' sur la PA
» Souci script pour image dans cadre répondre
» Souci de récupération de couleur du groupe pour coloration de div script javascript
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