Astuces Forumactif
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Membres connectés récemment
Voir tous les membres

[AwesomeBB] Enlever bonton "Poster un nouveau sujet" sur les sujets d'un forum

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

Tony L
Tony L
https://diamant-mandarin-co.forumactif.com

MessageTony L Mar 1 Oct 2019 - 18:42

  • Version du forum :
    AwesomeBB
  • Templates modifiés :
    oui
  • Navigateur :
    Firefox
Bonsoir à tous,

Je cherche à supprimer le bouton "Poster un nouveau sujet" sur les sujets d'un forum en particulier pour les membres seulement.

J'ai testé ce code sans succès :
Code:
if((document.location.pathname == "/f16-actualites")) {
$(function() {
      if(_userdata["user_level"] == 1 || _userdata["user_level"] == 2)
      $('a[href^="/post?f=16"]  ').show();
    });
  $(function() {
      if(_userdata["user_level"] == 0 )
      $('a[href^="/post?f=16"]  ').remove();
    });
}

Quelles seraient les modifications à y apporter svp ?


Merci d'avance pour l'aide, bonne soirée.
Tony


Dernière édition par Tony L le Jeu 3 Oct 2019 - 18:44, édité 1 fois
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Mar 1 Oct 2019 - 19:04

Hello Tony,

tu peux tester ce script s'il te plait:
Code:
  if((document.location.pathname == "/f16-actualites")) {
    $(function() {
          if(_userdata["user_level"] == 1 || _userdata["user_level"] == 2)
          $('a[href$="mode=newtopic"]  ').show();
        });
      $(function() {
          if(_userdata["user_level"] == 0 )
          $('a[href$="mode=newtopic"]  ').remove();
        });
    }
Tony L
Tony L
https://diamant-mandarin-co.forumactif.com

MessageTony L Mar 1 Oct 2019 - 20:25

Hello Philippe,


Pas d'effet, je l'ai essayé une 1er fois en mettant "sur toutes les pages" et une 2e fois en mettant sur les "sous forums" et "sujets". Le forum est en fait un sous forum (oups).

Pour peut être donner une piste, j'arrive à enlever le bouton "Poster un nouveau sujet" sur le sous forum avec ce code :

Code:
if((document.location.pathname == "/f16-actualites")) {
$(function() {
      if(_userdata["user_level"] == 1 || _userdata["user_level"] == 2)
      $('a[href^="/post?f"]  ').show();
    });
  $(function() {
      if(_userdata["user_level"] == 0 )
      $('a[href^="/post?f"]  ').remove();
    });
}


Mais n'agit pas sur le bouton "Poster un nouveau sujet" qui est sur les sujets de ce sous-forum.
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Mer 2 Oct 2019 - 3:58

Hello Tony,
pourquoi, tu ne passes pas par les permissions du forum via ton P.A:
Général/Catégories et Forums/Catégories et Forums/Le forum en question

Ouvrir un sujet : Décocher pour les membres et cocher pour les admins et modos.


Tony L
Tony L
https://diamant-mandarin-co.forumactif.com

MessageTony L Mer 2 Oct 2019 - 17:16

Hello Philippe,


C'est ce qui est déjà fait. Malgré tout, le bouton "Poster un nouveau sujet" reste présent pour les membres sur les sujets.
En testant, lorsque le membre clique sur le bouton, on obtient la phrase d'information "Désolé, mais seuls les utilisateurs avec un accès spécial peuvent poster dans ce forum.", maintenant remplacée par "Veuillez vous présentez aux autres membres, avant de pouvoir poster" grâce à ce sujet : Remplacer la phrase d'information : Désolé, mais seuls les utilisateurs avec un accès.. et ceci même lorsque le membre c'est déjà présenté. Ce qui peut générer des imcompréhensions.

Voici donc la raison de ce 2e sujet. Seulement comment cibler dans le code les sujets d'un seul forum où trouver une autre astuce..
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Mer 2 Oct 2019 - 19:07

Re Tony,
donc en faite, tu désires supprimes le bouton pour ceux qui ne peuvent pas poster sur le forum?
/f16-actualites
Tony L
Tony L
https://diamant-mandarin-co.forumactif.com

MessageTony L Mer 2 Oct 2019 - 19:18

Re-Philippe,


Oui, tout à fait. Le bouton qui est sur chaque sujet de ce forum.
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Mer 2 Oct 2019 - 19:37

Sur les sujets du forum ,
pas de soucis pas contre cette version ne renseigne pas si le membre peut créer un nouveau sujet sur le message en lui même.

Donc on va intervenir sur le template viewforum_body:
Affichage/Templates/Général/viewforum_body


Recherches ceci:
Code:
    <div class="block-content">
        <p>{S_AUTH_LIST}</p>
    </div>

Supprimes et remplaces par:

Code:
 <div id="M14_perm"class="block-content">
        <p>{S_AUTH_LIST}</p>
    </div>


Penses a enregistrer puis à valider en cliquant respectivement sur   Enregistr puis Ajout



Puis le script:



Modules/HTML&JAVASCRIPT/Gestion des codes Javascript/Créer un nouveau Javascript


Mettre un titre explicite.

Cocher sur les sous-forums

Déposes ceci:

Code:

$(function(){
if($('#breadcrumbs a[href^="/f16-"]').length) {
var test=$('div#M14_perm:contains("Vous ne pouvez pas poster de nouveaux sujets dans ce forum")').length;
if(test){$('a[href$="mode=newtopic"]').remove(); }};});

Penser a cliquer sur le bouton Valid


Dernière édition par Milouze14 le Jeu 3 Oct 2019 - 18:07, édité 2 fois
Tony L
Tony L
https://diamant-mandarin-co.forumactif.com

MessageTony L Mer 2 Oct 2019 - 21:18

Hum, j'ai bien mis en place, mais le bouton est encore visible.

J'ai testé quelques modif. du code JS, la phrase ""Vous ne pouvez pas poster de nouveaux sujets dans ce forum" doit être la phrase d'informations qui devrait apparaitre en cliquant sur le bouton ?
/f16- ne devrait pas être /f16-actualités ?
Le bouton quand on l'inspecte correspond à btn ou 'a[href^="/post?f" , non ?
On ne fait pas agir le Js sur les sujets ?

Bonne soirée hinhin
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Jeu 3 Oct 2019 - 5:00

Hello Tony,

je me suis planté de template,j'ai édité mon message:

https://www.milouze14.com/t32288-awesomebb-enlever-bonton-poster-un-nouveau-sujet-sur-les-sujets-d-un-forum#614630

Pour l'instant, le script agit sur la liste des sujets et non sur le sujet en lui même.

/f16- ne devrait pas être /f16-actualités ?

Code:
a[href^="/f16-"]
Veut dire, le lien qui commence par:
Code:
/f16-

Donc valide mon ami.

Code:
Le bouton quand on l'inspecte correspond à btn ou
 'a[href^="/post?f" , non ?

Oui bien sûr et donc ?


Je suppose que tu as du modifier le template viewtopic_body.
Code:
 <div id="M14_perm"class="block-content">
            {S_AUTH_LIST}
        </div>


On va remplacer le script afin et agir autrement.


Modules/HTML&JAVASCRIPT/Gestion des codes Javascript/Créer un nouveau Javascript

Mettre un titre explicite.
Coches sur les sous-forums et sur les sujets.

Déposes ceci:
Code:

$(function(){if($('#breadcrumbs a[href^="/f16-"]').length) {
var test=$('div#M14_perm a[href^="/modcp?f=16"]').length;
if(!test){$('a[href$="mode=newtopic"]').remove();}};});

Penses a cliquer sur le bouton Valid


Le script va rechercher si le membre à les droits de modération sur le forum f16
Code:
{if($('#breadcrumbs a[href^="/f16-"]').length) {
$('div#M14_perm a[href^="/modcp?f=16"]').length;

Si le membre n'a pas les droits:

Code:
if(!test){}

On supprime le bouton nouveau:

Code:
$('a[href$="mode=newtopic"]').remove();

Ou mettre ce que tu mentionnes :
Code:
a[href^="/post?f"]

Mais je sens qu'ensuite tu vas vite revenir me voir pour me signaler que tes membres ne peuvent plus....

Ce que tu proposes est très vague Tony, çà veut dire , je vais supprimer les liens qui commencent par
Code:
/post?f

Cette partie veux dire,

Code:
a[href$="mode=newtopic"]').remove();

Je cherche le lien ou l'on ouvre un sujet

Tony L
Tony L
https://diamant-mandarin-co.forumactif.com

MessageTony L Jeu 3 Oct 2019 - 17:20

Hello Philippe,

Merci pour les explications, ça m'aide à comprendre.
Pour enlever le bouton et bouton fixe (en bas pour répondre) sur la liste des sujets j'ai mis ce code qui fonctionne :
Code:
if((document.location.pathname == "/f16-actualites")) {
$(function() {
      if(_userdata["user_level"] == 1 || _userdata["user_level"] == 2)
      $('.btn').show();  $('.btn-fixed').show();
    });
  $(function() {
      if(_userdata["user_level"] == 0 )
      $('.btn').remove();  $('.btn-fixed').remove();
    });
}

Je sais par contre que "btn" enlèverais le bouton répondre, mais sur la liste des sujets il n'y ait pas à l'origine.

J'ai essayé ton derniers code et modification dans le template viewforum_body (en ajoutant id="M14_perm"), mais il n'y pas d'effet.
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Jeu 3 Oct 2019 - 18:03

Re Tony,

alors tu n'as pas coché sur les sous forums et les sujets.

Édites le script et remplaces par celui-ci:

Code:
$(function(){if($('#breadcrumbs a[href^="/f16-"]').length) {
var test=$('div#M14_perm a[href^="/modcp?f=16"]').length;
if(!test){$('div#M14_perm').html('Vous <strong>ne pouvez pas</strong> repondre à ce message');$('a.quick-reply-btn.quick-reply-upload,input#quick-reply-send,.quick-reply-textarea-wrap,.block quick-reply,a[href$="mode=newtopic"],a[href$="mode=reply"]').remove();}};});


Il faut impérativement ajouter les ids sur les deux templates mentionnés:
https://www.milouze14.com/t32288-awesomebb-enlever-bonton-poster-un-nouveau-sujet-sur-les-sujets-d-un-forum#614630


Dans le template viewtopic_body:
Affichage/Templates/Général/viewtopic_body

Recherches ceci:
Code:

<div class="block-content">
            {S_AUTH_LIST}
        </div>
Supprimes et remplaces par:

Code:

<div id="M14_perm"class="block-content">
            {S_AUTH_LIST}
        </div>


Ensuite le script va rechercher les droits(modération), dans le cas contraire, tous les boutons de rédaction vont purement être supprimés ainsi que la réponse rapide.


Dernière édition par Milouze14 le Jeu 3 Oct 2019 - 18:11, édité 1 fois
Tony L
Tony L
https://diamant-mandarin-co.forumactif.com

MessageTony L Jeu 3 Oct 2019 - 18:10

Re Philippe,

Si sur les sous-forums et sujets pour ton code, par contre j'avais enlevé la modif sur le 1er template.

Cela fonctionne, par contre le bouton "Répondre au sujet" disparaît aussi.
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Jeu 3 Oct 2019 - 18:17

Je viens d'éditer mon message:
https://www.milouze14.com/t32288-awesomebb-enlever-bonton-poster-un-nouveau-sujet-sur-les-sujets-d-un-forum#614656

Cela fonctionne, par contre le bouton "Répondre au sujet" disparaît aussi.

J'ai lu trop vite ton dernier message et j'ai cru comprendre que tu voulais aussi le supprimer.

Remplaces le script par celui-ci:


Code:
$(function(){if($('#breadcrumbs a[href^="/f16-"]').length) {
var test=$('div#M14_perm a[href^="/modcp?f=16"]').length;
if(!test){$('div#M14_perm').html('Vous <strong>ne pouvez pas</strong> poster de sujet');$('a[href$="mode=newtopic"]').remove();}};});
Tony L
Tony L
https://diamant-mandarin-co.forumactif.com

MessageTony L Jeu 3 Oct 2019 - 18:26


Super super

Merci bien Philippe hinhin

Mais, cela pourrait être appliquer sur tout le forum si on ne spécifie pas l'endroit ? Le bouton serait présent suivant les permissions..
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Jeu 3 Oct 2019 - 18:35

Pour tout le forum, ce serait ce script:
Code:
 $(function(){
    var test=$('div#M14_perm a[href^="/modcp"]').length;
    if(!test){$('div#M14_perm').html('Vous <strong>ne pouvez pas</strong> poster de sujet');$('a[href$="mode=newtopic"]').remove();}});
Tony L
Tony L
https://diamant-mandarin-co.forumactif.com

MessageTony L Jeu 3 Oct 2019 - 18:43

Ok, bon à savoir.

Encore merci Philippe pour le temps passé à m'avoir aidé.

Je te souhaite une bonne soirée clin oeil
Milouze14
Milouze14
Fondateur

https://www.milouze14.net/

MessageMilouze14 Jeu 3 Oct 2019 - 18:49

Pas de soucis Tony,


Hello


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