Page 1 sur 1

Afficher le lien PCM sur toutes les pages

Posté : 18 mai 2025, 07:55
par Admin
Ce qui n’a pas de sens est de ne pas avoir le lien PCM visible sur toutes les pages. C’est une chose ennuyeuse au niveau du design et un petit problème de fonctionnalité.
Le lien PCA quant à lui est visible sur toutes les pages. Alors, soyons cohérents.

À la ligne 4065 dans includes/functions.php, nous avons ceci :
'U_MODCP' => append_sid("{$phpbb_root_path}mcp.$phpEx", false, true, $user->session_id),??

Avec cette astuce le lien PCM sera visible sur toutes les pages - seulement pour les administrateurs. Les modérateurs ne verront le lien PCM qu’aux endroits habituels.
Les utilisateurs réguliers ne voient pas le lien PCM
{% si U_MODCP %} est visible pour les utilisateurs connectés, avec un accès au PCM ou non

Les autorisations d’administrateur et de modérateur sont complètement séparées. Par défaut, le groupe Administrateurs a uniquement des autorisations d’administrateur et le groupe Modérateur global n’a que des autorisations de modérateur global.
A vous de voir si cela fait sens d'allouer des permissions de modération au groupe Administrateur.


Ouvrir styles/prosilver/template/navbar_header.html et trouver :

Code : Tout sélectionner

		<!-- IF U_MCP -->
			<li data-last-responsive="true">
				<a href="{U_MCP}" title="{L_MCP}" role="menuitem">
					<i class="icon fa-gavel fa-fw" aria-hidden="true"></i><span>{L_MCP_SHORT}</span>
				</a>
			</li>
		<!-- ENDIF -->
Remplacer par :

Code : Tout sélectionner

		{% if U_ACP %}
			<li data-last-responsive="true">
				<a href="{U_MODCP}" title="{L_MCP}" role="menuitem">
					<i class="icon fa-gavel fa-fw" aria-hidden="true"></i><span>{L_MCP_SHORT}</span>
				</a>
			</li>
		{% elseif U_MCP %}
			<li data-last-responsive="true">
				<a href="{U_MCP}" title="{L_MCP}" role="menuitem">
					<i class="icon fa-gavel fa-fw" aria-hidden="true"></i><span>{L_MCP_SHORT}</span>
				</a>
			</li>
		{% endif %}
Enregistrer et purger le cache.

Re: Afficher le lien PCM sur toutes les pages

Posté : 18 mai 2025, 10:38
par Admin
Le message ci-dessus ne concerne que les administrateurs.

La deuxième partie le rend visible pour les utilisateurs que vous définissez dans le code.

Ouvrir styles/prosilver/template/navbar_header.html et trouver :

Code : Tout sélectionner

		<!-- IF U_MCP -->
			<li data-last-responsive="true">
				<a href="{U_MCP}" title="{L_MCP}" role="menuitem">
					<i class="icon fa-gavel fa-fw" aria-hidden="true"></i><span>{L_MCP_SHORT}</span>
				</a>
			</li>
		<!-- ENDIF -->
Remplacer par :

Code : Tout sélectionner

		{% if S_USERNAME in ['nom1', 'nom2', 'nom3', 'nom4', 'nom5', 'nom6'] %}
			<li data-last-responsive="true">
				<a href="{U_MODCP}" title="{L_MCP}" role="menuitem">
					<i class="icon fa-gavel fa-fw" aria-hidden="true"></i><span>{L_MCP_SHORT}</span>
				</a>
			</li>
		{% endif %}
Enregistrer le fichier, télécharger et purger le cache.

Cette partie : {% if S_USERNAME in ['name1', 'name2', 'name3', 'name4', 'name5', 'name6'] %} est l’endroit où vous définissez qui doit voir le lien PCM.
L’inconvénient est que vous devez modifier cette ligne chaque fois que vous ajoutez ou supprimez des utilisateurs chaque fois que quelqu’un entre ou quitte le groupe Modérateur.
Disons que vous n’avez que 3 modérateurs sur votre forum. Appelons-les Pierre, Paul et Marie.
La ligne ressemblerait alors à ceci : {% if S_USERNAME in ['Pierre', 'Paul', 'Marie'] %}