Connexion

Récupérer mon mot de passe

Derniers sujets
» Socrate et la maïeutique "histoire"
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Aujourd'hui à 7:34 par Quad Daniel

» les Histoires Belge
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Hier à 7:34 par Quad Daniel

» histoire du Jour sans fin
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Lun 24 Juin 2019 - 14:04 par Quad Daniel

» Coca-Cola (histoire)
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Lun 24 Juin 2019 - 9:33 par bildil62

» Sœur Mathématiques et Sœur Logique
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Sam 22 Juin 2019 - 15:59 par bildil62

» Les deux bons potes "histoire"
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Ven 21 Juin 2019 - 19:45 par soleda

» *RESOLU*[PhpBB2] Onglet sur page d’accueil
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Mer 19 Juin 2019 - 16:38 par Milouze14

» Le spationaute belge
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Mer 19 Juin 2019 - 16:26 par Milouze14

» *RESOLU*[PhpBB2] Aide mise en forme page d’accueil merci
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Dim 16 Juin 2019 - 8:33 par Milouze14

» *RESOLU*[PhpBB2] Chatbox / Réinitialiser
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Ven 14 Juin 2019 - 19:55 par Milouze14

» *RESOLU*[PhpBB2] Bloquer les IP
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Jeu 13 Juin 2019 - 18:36 par Milouze14

» Les réseaux sociaux
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Mer 12 Juin 2019 - 7:51 par Romain

» [PhpBB2] Barre navigation supplémentaire
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Dim 9 Juin 2019 - 19:32 par Milouze14

» *RESOLU*[Invision] Réduction image avec clic agrandissement
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Sam 8 Juin 2019 - 19:07 par Milouze14

» Histoire de Blondes Sans Fin
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Sam 8 Juin 2019 - 19:01 par Quad Daniel

» *RESOLU*[PhpBB3] Interdiction de citer le dernier message
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Ven 7 Juin 2019 - 19:04 par Milouze14

» Règlement de l'entraide Forumactif
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Ven 7 Juin 2019 - 14:16 par jakes

» *RESOLU*[PhpBB2] [Toutes versions] Activer la prévisualisation directe
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Mer 5 Juin 2019 - 18:52 par Milouze14

» [PHPBB3] Afficher une réponse automatique style staff
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Lun 3 Juin 2019 - 17:35 par Milouze14

» *RESOLU*[PhpBB2] Changer un message quand un membre ne peut pas répondre à un sujet
*RESOLU* [EDGE] Préfixes réservés au Staff du forum Clock-10Jeu 30 Mai 2019 - 19:38 par Milouze14

*RESOLU* [EDGE] Préfixes réservés au Staff du forum

Voir le sujet précédent Voir le sujet suivant Aller en bas

Splash
Splash
Milouzien

MessageSplash le Lun 8 Oct 2018 - 8:52

Hi,

Suite à ce tuto : https://www.milouze14.com/t26211-toutes-versions-ajouter-des-prefixes-devant-les-titres-des-sujets?highlight=préfixe

J'aimerais bien avoir un script pour réserver une série de préfixes aux admins et modos du forum.
Soit en modifiant celui existant, soit en en ajoutant un autre

Merci bien et bonne journée


Dernière édition par Splash le Mar 9 Oct 2018 - 7:10, édité 1 fois
fascicularia
fascicularia
Milouzien

Messagefascicularia le Lun 8 Oct 2018 - 13:05

Bonjour SPLASH,
Philippe sera absent toute la semaine pour des raisons familiales.
Splash
Splash
Milouzien

MessageSplash le Lun 8 Oct 2018 - 13:40

Merci a toi, rien de grave j’espère...
no_way
no_way
Développeur

Messageno_way le Lun 8 Oct 2018 - 15:06

Salut tu peux utiliser _userdata["user_level"] pour différencier le niveau d'accès des membres:
si 0 -> simple membre
si >0 -> admin ou modo
Splash
Splash
Milouzien

MessageSplash le Lun 8 Oct 2018 - 18:17

merci no-way pour l'info mais dans ce script je ne sais ni comment ni où le renseigner

Code:
var prefixes = ["Avis modérateur","Avis membres","html","css"];
    var _pm = false;
    var chk = false;
    function toMenu(a) {
      var htmlpre = '<select style="margin-right:5px" id="prefix" size="1"><option value="">Préfixe</option>';
      for (i in a)
      htmlpre += '<option value="' + a[i] + '">' + a[i] + '</option>';
      htmlpre += '</select>';
      return htmlpre;
    }
    function checkpre(ar, input) {
      for (i in ar) {
          var p = new RegExp("\\" + ar[i], "g");
          var title = input.substr(0, input.indexOf(']'));
          if (p.test(title)) return ar[i];
      }
      return "";
    }
    $(function () {
      if (_pm) chk = /\privmsg/.test(location.href);
      if (/\/post/.test(location.href) || chk) {
          $(toMenu(prefixes)).insertBefore("input[name=subject][type=text]");
          var mw = $("#prefix").width() + 5;
          $("input[name=subject]").css("width", $("input[name=subject]").width() - mw);
          var t = $("[name=subject]").val();
          var cur = checkpre(prefixes, t);
          if (cur != "") {
            $("[value=" + cur + "]").attr("selected", "selected");
            $("input[name=subject]").val(t.replace('[' + cur + ']', '').trim());
          }
          $("input[name=post]").click(function () {
            var sub = $("input[name=subject]").val().trim();
            if (sub != "" && $("#prefix").val() != "")
                $("input[name=subject]").val("[" + $("#prefix").val() + "] " + sub);
          });
      }
    });
no_way
no_way
Développeur

Messageno_way le Lun 8 Oct 2018 - 19:12

Remplace ta ligne var prefixes ... par:
Code:
/*Prefixes pour tous*/
var prefixes = ["Avis membres","html","css"];
/*Prefixes pour moderateurs*/
var prefixesModerateurs = ["Avis modérateur"];
/*Prefixes pour administrateurs*/
var prefixesAdministrateurs = ["Avis administrateur"];

/*Ajout des prefixes selon niveau d'acces*/
if(_userdata["user_level"]==2){
    prefixes=prefixes.concat(prefixesModerateurs);
}
if(_userdata["user_level"]==1){
    prefixes=prefixes.concat(prefixesModerateurs,prefixesAdministrateurs);
}

A toi bien entendu de modifier les préfixes ;)
Splash
Splash
Milouzien

MessageSplash le Lun 8 Oct 2018 - 21:06

Hum, j'ai donc modifié le script ainsi :

Code:
var prefixes = ["phpBB2","phpBB3","punBB","Invision","ModernBB","AwesomeBB","Edge"];
var prefixesModerateurs = ["Avis Modérateur"];
var prefixesAdministrateurs = ["Avis Administrateur","HTML","CSS","JavaScript"];
if(_userdata["user_level"]==2){
    prefixes=prefixes.concat(prefixesModerateurs);
}
if(_userdata["user_level"]==1){
    prefixes=prefixes.concat(prefixesModerateurs,prefixesAdministrateurs);
}
    var _pm = false;
    var chk = false;
    function toMenu(a) {
      var htmlpre = '<select style="margin-right:5px" id="prefix" size="1"><option value="">Préfixe</option>';
      for (i in a)
      htmlpre += '<option value="' + a[i] + '">' + a[i] + '</option>';
      htmlpre += '</select>';
      return htmlpre;
    }
    function checkpre(ar, input) {
      for (i in ar) {
          var p = new RegExp("\\" + ar[i], "g");
          var title = input.substr(0, input.indexOf(']'));
          if (p.test(title)) return ar[i];
      }
      return "";
    }
    $(function () {
      if (_pm) chk = /\privmsg/.test(location.href);
      if (/\/post/.test(location.href) || chk) {
          $(toMenu(prefixes)).insertBefore("input[name=subject][type=text]");
          var mw = $("#prefix").width() + 5;
          $("input[name=subject]").css("width", $("input[name=subject]").width() - mw);
          var t = $("[name=subject]").val();
          var cur = checkpre(prefixes, t);
          if (cur != "") {
            $("[value=" + cur + "]").attr("selected", "selected");
            $("input[name=subject]").val(t.replace('[' + cur + ']', '').trim());
          }
          $("input[name=post]").click(function () {
            var sub = $("input[name=subject]").val().trim();
            if (sub != "" && $("#prefix").val() != "")
                $("input[name=subject]").val("[" + $("#prefix").val() + "] " + sub);
          });
      }
    });

Depuis je rencontre une erreur sur le forum :

*RESOLU* [EDGE] Préfixes réservés au Staff du forum Error_10

Ce javascript n'existe pas dans mes codes enregistrés 

Et le choix de préfixes n'est plus disponible en ouvrant un sujet :

*RESOLU* [EDGE] Préfixes réservés au Staff du forum Sujet_10
no_way
no_way
Développeur

Messageno_way le Mar 9 Oct 2018 - 4:16

Ah je comprends pourquoi, généralement on synchronise l’exécution du script avec le DOM remplace ton script par celui-ci afin de corriger ça:
Code:
$(function () {
    var prefixes = ["phpBB2","phpBB3","punBB","Invision","ModernBB","AwesomeBB","Edge"];
    var prefixesModerateurs = ["Avis Modérateur"];
    var prefixesAdministrateurs = ["Avis Administrateur","HTML","CSS","JavaScript"];
    if(_userdata["user_level"]==2){
        prefixes=prefixes.concat(prefixesModerateurs);
    }
    if(_userdata["user_level"]==1){
        prefixes=prefixes.concat(prefixesModerateurs,prefixesAdministrateurs);
    }
    var _pm = false;
    var chk = false;
    function toMenu(a) {
        var htmlpre = '<select style="margin-right:5px" id="prefix" size="1"><option value="">Préfixe</option>';
        for (i in a)
          htmlpre += '<option value="' + a[i] + '">' + a[i] + '</option>';
          htmlpre += '</select>';
          return htmlpre;
    }
    function checkpre(ar, input) {
        for (i in ar) {
            var p = new RegExp("\\" + ar[i], "g");
            var title = input.substr(0, input.indexOf(']'));
            if (p.test(title)) return ar[i];
        }
        return "";
    }
    /**/
    if (_pm) chk = /\privmsg/.test(location.href);
    if (/\/post/.test(location.href) || chk) {
        $(toMenu(prefixes)).insertBefore("input[name=subject][type=text]");
        var mw = $("#prefix").width() + 5;
        $("input[name=subject]").css("width", $("input[name=subject]").width() - mw);
        var t = $("[name=subject]").val();
        var cur = checkpre(prefixes, t);
        if (cur != "") {
            $("[value=" + cur + "]").attr("selected", "selected");
            $("input[name=subject]").val(t.replace('[' + cur + ']', '').trim());
        }
        $("input[name=post]").click(function () {
            var sub = $("input[name=subject]").val().trim();
            if (sub != "" && $("#prefix").val() != "")
                $("input[name=subject]").val("[" + $("#prefix").val() + "] " + sub);
            });
        }
});
Je n'ai pas essayé ce code car je dois partir de suite au boulot, je te laisse tout de même essayer.
Splash
Splash
Milouzien

MessageSplash le Mar 9 Oct 2018 - 7:09

@no_way a écrit:Ah je comprends pourquoi, généralement on synchronise l’exécution du script avec le DOM...
Donc ça c'est ce que tu appelles le DOM ?

Code:
$(function () {

Tout est OK pour moi, merci de ton aide no_way
Jackymi
Jackymi
Milouzien

MessageJackymi le Mar 9 Oct 2018 - 12:50


Coucou

Sujet résolu et déplacé dans le forum adéquate

A bientôt pour une prochaine demande clin oeil

Voir le sujet précédent Voir le sujet suivant Revenir en haut

Créer un compte ou se connecter pour répondre

Vous devez être membre pour répondre.

S'enregistrer

Rejoignez notre communauté ! C'est facile !


S'enregistrer

Connexion

Vous êtes déjà membre ? Aucun soucis, cliquez ici pour vous connecter.


Connexion

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum