Gestion des catégories du module Articles [Réglé]
Tchii Membre non connecté
-
Booster Minigun
- Voir le profil du membre Tchii
- Inscrit le : 14/05/2021
- Site internet
- Groupes :
Bonjour, Bonsoir,
Je suis en train de monter un site d'écriture avec PHPBoost. (logique puisque que je suis ici
)
Je viens toutefois de me heurter à un problème. Je voudrais que les membres puissent créer des catégories (leurs histoires), et les articles seraient leurs chapitres.
En activant l' "Autorisation de gérer les catégories" aux groupes des écrivains, cela leur permet de créer une catégorie, sauf que je ne voudrais pas qu'il y est accés à la page "Gérer les catégories". (notamment pour supprimer les histoires des autres).
Est-ce qu'il y a un moyen soit de "cacher" cette page (sauf pour l'administration), ou alors de "supprimer" le lien dans le module de création sur les pages articles ?
Merci de votre aide
A trés vite!
Tchii.
j1.seth Membre non connecté
-
Administrateur
- Voir le profil du membre j1.seth
- Inscrit le : 01/09/2008
- Site internet
- Groupes :
-
Chef de Projet
-
Equipe Développement
Ce n'est pas possible en natif mais avec quelques modifications ça pourrait le faire.
Qui doit pouvoir accéder à la page de gestion des catégories ? Uniquement l'administrateur ?
j1.seth
Tchii Membre non connecté
-
Booster Minigun
- Voir le profil du membre Tchii
- Inscrit le : 14/05/2021
- Site internet
- Groupes :
Coucou!
Merci de cette première réponse.
Oui, uniquement moi en effet, l'administrateur donc.
Merci de votre aide.
A trés vite!
Tchii.
j1.seth Membre non connecté
-
Administrateur
- Voir le profil du membre j1.seth
- Inscrit le : 01/09/2008
- Site internet
- Groupes :
-
Chef de Projet
-
Equipe Développement
Pour ne plus afficher le lien "Gérer les catégories" aux utilisateurs (sauf pour l'administrateur), remplacer les lignes 19 à 22 du fichier /articles/phpboost/ArticlesTreeLinks.class.php par :
if (AppContext::get_current_user()->is_admin())
{
$manage_categories_link = new ModuleLink(LangLoader::get_message('categories.manage', 'categories-common'), ArticlesUrlBuilder::manage_categories(), ArticlesAuthorizationsService::check_authorizations()->manage_categories());
$manage_categories_link->add_sub_link(new ModuleLink(LangLoader::get_message('categories.manage', 'categories-common'), ArticlesUrlBuilder::manage_categories(), ArticlesAuthorizationsService::check_authorizations()->manage_categories()));
$manage_categories_link->add_sub_link(new ModuleLink(LangLoader::get_message('category.add', 'categories-common'), ArticlesUrlBuilder::add_category(AppContext::get_request()->get_getint('id_category', Category::ROOT_CATEGORY)), ArticlesAuthorizationsService::check_authorizations()->manage_categories()));
$tree->add_link($manage_categories_link);
}
else
{
$manage_categories_link->add_sub_link(new ModuleLink(LangLoader::get_message('category.add', 'categories-common'), ArticlesUrlBuilder::add_category(AppContext::get_request()->get_getint('id_category', Category::ROOT_CATEGORY)), ArticlesAuthorizationsService::check_authorizations()->manage_categories()));
$tree->add_link($manage_categories_link);
}
Pour complètement interdire l'accès à la page de gestion des catégories, dans le fichier /articles/controllers/categories/ArticlesCategoriesManageController.class.php remplacer la ligne 50 par :
if (!AppContext::get_current_user()->is_admin())
Les modifications seront à refaire si ces fichiers sont modifiés lors d'une mise à jour mineure de PHPBoost 5.2.
Pour la prochaine version 6.0 qui va bientôt sortir, ça ne fonctionne plus exactement de la même manière, il faudra adapter les modifications après la mise à jour. On y reviendra au moment opportun.
j1.seth
Tchii Membre non connecté
-
Booster Minigun
- Voir le profil du membre Tchii
- Inscrit le : 14/05/2021
- Site internet
- Groupes :
Coucou!
Merci de ces réponses rapides.
Toutefois, en changeant le fichier :/articles/phpboost/ArticlesTreeLinks.class.php
Je ne pouvais plus accéder au panneau d'administration.
Je n'ai sans doute pas dû le mettre au bon endroit. Mon bloc note n'affiche pas les numéros de lignes.
C'est la même chose pour le second fichier.
Est-il possible d'avoir le fichier complet, comme ça, j'aurais pu qu'à faire un copier/coller.
Merci encore de ton aide.
A trés vite!
Tchii.
babsolune Membre non connecté
-
Administrateur
- Voir le profil du membre babsolune
- Inscrit le : 16/05/2008
- Site internet
- Groupes :
-
Equipe Développement
les fichiers avec numéros de ligne
/articles/phpboost/ArticlesTreeLinks.class.php
/articles/controllers/categories/ArticlesCategoriesManageController.class.php
Édité par babsolune Le 28/12/2021 à 02h49
Tchii Membre non connecté
-
Booster Minigun
- Voir le profil du membre Tchii
- Inscrit le : 14/05/2021
- Site internet
- Groupes :
Coucou!
Merci pour ce petit message.
J'ai, donc une nouvelle fois, essayé les changements, quand je me connecte avec mon compte "membre", je suis tombée sur une page "fatal error".
Fatal error: Uncaught Error: Call to a member function add_sub_link() on null in /home/vol9_6/epizy.com/epiz_30629485/htdocs/articles/phpboost/ArticlesTreeLinks.class.php:29 Stack trace: #0 /home/vol9_6/epizy.com/epiz_30629485/htdocs/kernel/framework/phpboost/module/tree-links/ModuleTreeLinksService.class.php(22): ArticlesTreeLinks->get_actions_tree_links() #1 /home/vol9_6/epizy.com/epiz_30629485/htdocs/kernel/framework/phpboost/environment/SiteDisplayGraphicalEnvironment.class.php(60): ModuleTreeLinksService::display_actions_menu() #2 /home/vol9_6/epizy.com/epiz_30629485/htdocs/kernel/framework/mvc/response/AbstractResponse.class.php(48): SiteDisplayGraphicalEnvironment->display('\n<section id="m...') #3 /home/vol9_6/epizy.com/epiz_30629485/htdocs/kernel/framework/core/error/ExceptionHandler.class.php(116): AbstractResponse->send() #4 /home/vol9_6/epizy.com/epiz_30629485/htdocs/kernel/framework/core/error/ExceptionHandler.class.php(103): ExceptionHandler->integrated_display(Object(UserErrorController)) #5 /home/vol9_6/ep in /home/vol9_6/epizy.com/epiz_30629485/htdocs/articles/phpboost/ArticlesTreeLinks.class.php on line 29
Merci encore de votre aide.
A trés vite!
Tchii.
Édité par Tchii Le 28/12/2021 à 17h15
babsolune Membre non connecté
-
Administrateur
- Voir le profil du membre babsolune
- Inscrit le : 16/05/2008
- Site internet
- Groupes :
-
Equipe Développement
remplacer le else proposé
else { $manage_categories_link->add_sub_link(new ModuleLink(LangLoader::get_message('category.add', 'categories-common'), ArticlesUrlBuilder::add_category(AppContext::get_request()->get_getint('id_category', Category::ROOT_CATEGORY)), ArticlesAuthorizationsService::check_authorizations()->manage_categories())); $tree->add_link($manage_categories_link); }
par
else { $manage_categories_link = new ModuleLink(LangLoader::get_message('category.add', 'categories-common'), ArticlesUrlBuilder::add_category(AppContext::get_request()->get_getint('id_category', Category::ROOT_CATEGORY)), ArticlesAuthorizationsService::check_authorizations()->manage_categories()); $tree->add_link($manage_categories_link); }
Tchii Membre non connecté
-
Booster Minigun
- Voir le profil du membre Tchii
- Inscrit le : 14/05/2021
- Site internet
- Groupes :
Coucou!
ça semble bon.
Merci beaucoup pour votre aide à tous les deux.
Je vais pouvoir finir de construire mon site.
A trés vite!
Tchii.
