Fork me on GitHub




(1) 2 3 »


News 1.4 et vrais modérateurs
Admin Frxoops
Inscrit: 16/05/2003 18:10
De Rhone-Alpes
Messages: 4051
Bonjour,

j'utilise xoops depuis quelques années maintenant et pour un usage très précis j'ai besoin de différents niveaux d'utilisateurs :

Administrateurs (total)
Webmasters (droits sur les modules, sur une partie du système)
Moderateurs (peut approuver des infos)
Membres du club
Membre du site
Anonyme

J'utilise News 1.4 sur un xoops 2.0.13.1

Or, je viens de m'apercevoir que le groupe moderateurs qui pourtant a le droit d'approuver des news ne peut pas le faire car je ne leur ai pas donné les "droits d'administration du module News".

Et je ne veux pas le faire car je ne veux pas que ce groupe puisse supprimer des sujets d'articles (catégories).

Alors voici ma question :

Que dois-je faire pour avoir un VRAI groupe moderateur, qui ne peut que supprimer ou approuver des news, sans intervenir sur l'administration de ce module ?

Posté le : 29/09/2005 17:00

Open in new window
Partager Twitter Partagez cette article sur GG+
Re: News 1.4 et vrais modérateurs
Régulier
Inscrit: 24/08/2005 18:35
Messages: 220
Approuver des articles soumis par d'autres utilisateurs est différent d'auto-approuver un article de son cru...
Autrement dit, les permissions "approuver" dans les paramètres du modules signifient, "ne passe pas par l'approbation d'un administrateur".
Si un modérateur doit approuver un article d'un autre utilisateur, il doit passer par la phase "administration du site". Si tu veux une interface utilisateur pour la gestion des articles, bah c'est pas implémenté. Dans la partie utilisateur, on ne peut gérer que les articles publiés (effacer, éditer).
C'est mon avis sur le problème, il existe peut-être une solution...

Posté le : 29/09/2005 19:11
Partager Twitter Partagez cette article sur GG+
Re: News 1.4 et vrais modérateurs
Admin Frxoops
Inscrit: 16/05/2003 18:10
De Rhone-Alpes
Messages: 4051
C'est exactement le cas, oui.

J'ai besoin d'avoir des approbateurs pour des articles qui ne leur appartiennent pas.

Effectivement, comme tu le précises, on ne voit que les articles publiés coté utilisateur...

Peut-être Hervé, l'auteur nous proposera de dupliquer un template particulier et de le modifier à la ligne xxx pour avoir cette fonctionnalité qui me semble importante.

Posté le : 29/09/2005 19:19

Open in new window
Partager Twitter Partagez cette article sur GG+
Re: News 1.4 et vrais modérateurs
Admin Frxoops
Inscrit: 04/02/2003 16:46
De Blois
Messages: 3071
Comme je l'evoquais avec Alain la vraie possibilité passe par une modification du module. Il faudrait creer une option dans l'admin du module pour definir un groupe "moderateur" en fonction d'un groupe XOOPS.
Ensuite il faudrait bien entendu modifier la validation de l'article afin de permettre un groupe de moderateur par catégorie d'article...

Posté le : 29/09/2005 21:17
Partager Twitter Partagez cette article sur GG+
Re: News 1.4 et vrais modérateurs
Régulier
Inscrit: 24/08/2005 18:35
Messages: 220
Ou bien, dans la partie utilisateur, afficher un sous-menu du module (comme "proposer" ou "archives") qui ne serait visible que pour le groupe des modérateurs (mais dans ce cas, toutes les personnes de ce groupe auraient les droits de modération des news), et qui donnerait accès à une page qui affiche les articles à approuver.

Posté le : 29/09/2005 22:36
Partager Twitter Partagez cette article sur GG+
Re: News 1.4 et vrais modérateurs
Admin Frxoops
Inscrit: 16/05/2003 18:10
De Rhone-Alpes
Messages: 4051
Citation :

GreaTed a écrit:
de modération des news), et qui donnerait accès à une page qui affiche les articles à approuver.


Sauf que cette page n'existe pas dans le module actuellement...

Posté le : 30/09/2005 08:53

Open in new window
Partager Twitter Partagez cette article sur GG+
Re: News 1.4 et vrais modérateurs
Semi pro
Inscrit: 07/03/2004 12:52
Messages: 591
Est-ce qu'en faisant une copie de la page qui présentent les articles en attente, puis en supprimant le menu, et les autres éléments de la page (dans le code php), enfin en faisant pointer un lien (à partir du menu) vers cette page ça pourrait suffire en attendant qu'Hervé trouve une parade à ce bidouillage ?

De cette façon les modérateurs pourraient accéder à la page, mais comme ils n'auraient pas de menu, ils ne sauraient pas qu'il peuvent intervenir ailleurs.

Ok, c'est du bricolage et une idée en l'air, mais dans le cadre d'un Intranet c'est jouable... non?

Posté le : 30/09/2005 09:51

la fonction recherche, la meilleure amie du Xoopsien !!
Partager Twitter Partagez cette article sur GG+
Re: News 1.4 et vrais modérateurs
Admin Frxoops
Inscrit: 16/05/2003 18:10
De Rhone-Alpes
Messages: 4051
Ok, oui, je comprends ton idée...

Il faut dans ce cas, que je modifie aussi le lien qui envoi vers la page admin news vers l'ancre "News en attente" dans le bloc news en attente et dans mon bloc "waitings".

Qui tente quelque chose ?

Posté le : 30/09/2005 10:07

Open in new window
Partager Twitter Partagez cette article sur GG+
Re: News 1.4 et vrais modérateurs
Semi pro
Inscrit: 07/03/2004 12:52
Messages: 591
Salut,

1- copier le fichier index.php en indexmodo.php
2- supprimer le code qui ne concerne pas les articles en attentes, ce qui devrait donner quelque chose comme ça
<?php
// $Id: index.php,v 1.25 2004/09/02 17:04:07 hthouzard Exp $
// ------------------------------------------------------------------------ //
// XOOPS - PHP Content Management System                                      //
// Copyright (c) 2000 XOOPS.org                                             //
// <http://www.xoops.org/>   ... nbsp;   //
// ------------------------------------------------------------------------ //
// This program is free software; you can redistribute it and/or modify     //
// it under the terms of the GNU General Public License as published by     //
// the Free Software Foundation; either version 2 of the License, or        //
// (at your option) any later version.                                      //
//                                                                             //
// You may not change or alter any portion of this comment or credits       //
// of supporting developers from this source code or any supporting         //
// source code which is considered copyrighted (c) material of the          //
// original comment or credit authors.                                      //
//                                                                             //
// This program is distributed in the hope that it will be useful,          //
// but WITHOUT ANY WARRANTY; without even the implied warranty of           //
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the            //
// GNU General Public License for more details.                             //
//                                                                             //
// You should have received a copy of the GNU General Public License        //
// along with this program; if not, write to the Free Software              //
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA //
// ------------------------------------------------------------------------ //
include_once '../../../include/cp_header.php';
include_once 
XOOPS_ROOT_PATH."/class/xoopstopic.php";
include_once 
XOOPS_ROOT_PATH."/class/xoopslists.php";
include_once 
XOOPS_ROOT_PATH."/modules/news/class/class.newsstory.php";
include_once 
XOOPS_ROOT_PATH."/modules/news/class/class.newstopic.php";
include_once 
XOOPS_ROOT_PATH."/modules/news/class/class.sfiles.php";
include_once 
XOOPS_ROOT_PATH.'/class/uploader.php';
include_once 
XOOPS_ROOT_PATH.'/class/pagenav.php';
include_once 
XOOPS_ROOT_PATH.'/modules/news/admin/functions.php';
include_once 
XOOPS_ROOT_PATH.'/modules/news/include/functions.php';
include_once 
XOOPS_ROOT_PATH."/class/tree.php";
$dateformat=getmoduleoption('dateformat');
$myts =& MyTextSanitizer::getInstance();
$topicscount=0;

/**
 * Show new submissions
 *
 * This list can be view in the module's admin when you click on the tab named "Post/Edit News"
 * Submissions are news that was submit by users but who are not approved, so you need to edit
 * them to approve them.
 * Actually you can see the the story's title, the topic, the posted date, the author and a
 * link to delete the story. If you click on the story's title, you will be able to edit the news.
 * The table contains ALL the new submissions.
 * The system's block called "Waiting Contents" is listing the number of those news.
 */
function newSubmissions()
{
    global 
$dateformat;
    
$storyarray NewsStory :: getAllSubmitted();
    if ( 
count$storyarray ) > )
    {
        
news_collapsableBar('newsub''topnewsubicon');
        echo 
"<img onclick='toggle('toptable'); toggleIcon('toptableicon');' id='topnewsubicon' name='topnewsubicon' src=" XOOPS_URL "/modules/news/images/close12.gif alt='' /></a>&nbsp;"._AM_NEWSUB."</h4>";
        echo 
"<div id='newsub'>";
        echo 
"<br />";
        echo 
"<div style='text-align: center;'><table width='100%' cellspacing='1' cellpadding='3' border='0' class='outer'><tr class='bg3'><td align='center'>" _AM_TITLE "</td><td align='center'>" _AM_TOPIC "</td><td align='center'>" _AM_POSTED "</td><td align='center'>" _AM_POSTER "</td><td align='center'>" _AM_ACTION "</td></tr>n";
        
$class='';
        foreach( 
$storyarray as $newstory )
        {
            
$class = ($class == 'even') ? 'odd' 'even';
            echo 
"<tr class='".$class."'><td align='left'>n";
            
$title $newstory->title();
            if (!isset(
$title) || ($title == "" )) {
                echo 
"<a href='".XOOPS_URL."/modules/news/admin/index.php?op=edit&amp;returnside=1&amp;storyid=" $newstory -> storyid() . "'>" _AD_NOSUBJECT "</a>n";
            } else {
                echo 
"&nbsp;<a href='".XOOPS_URL."/modules/news/submit.php?returnside=1&amp;op=edit&amp;storyid=" $newstory -> storyid() . "'>" $title "</a>n";
            }
            echo 
"</td><td>" $newstory->topic_title() . "</td><td align='center' class='nw'>" formatTimestamp($newstory->created(),$dateformat) . "</td><td align='center'><a href='" XOOPS_URL "/userinfo.php?uid=" $newstory->uid() . "'>" $newstory->uname() . "</a></td><td align='right'><a href='".XOOPS_URL."/modules/news/admin/index.php?op=delete&amp;storyid=" $newstory->storyid() . "'>" _AM_DELETE "</a></td></tr>n";
        }
        echo 
"</table></div>";
        echo 
"<br /></div><br />";
    }
}




// **********************************************************************************************************************************************
// **** Main
// **********************************************************************************************************************************************
$op 'default';
if(isset(
$_POST['op'])) {
 
$op=$_POST['op'];
} else {
    if(isset(
$_GET['op'])) {
        
$op=$_GET['op'];
    }
}


switch (
$op)
{
    
    case 
"delete":
           
$storyid=0;
           if(isset(
$_GET['storyid'])) {
            
$storyid=intval($_GET['storyid']);
           } else {
               if(isset(
$_POST['storyid'])) {
                   
$storyid=intval($_POST['storyid']);
               }
           }

        if (!empty(
$_POST['ok'])) {
            if (empty(
$storyid)) {
                
redirect_header'index.php?op=newarticle'2_AM_EMPTYNODELETE );
                exit();
            }
            
$story = new NewsStory($storyid);
            
$story->delete();
            
$sfiles = new sFiles();
            
$filesarr=Array();
            
$filesarr=$sfiles->getAllbyStory($storyid);
            if(
count($filesarr)>0) {
                foreach (
$filesarr as $onefile) {
                    
$onefile->delete();
                }
            }
            
xoops_comment_delete($xoopsModule->getVar('mid'),$storyid);
            
xoops_notification_deletebyitem($xoopsModule->getVar('mid'), 'story'$storyid);
            
updateCache();
            
redirect_header'index.php?op=newarticle'1_AM_DBUPDATED );
            exit();
        } else {
            
$story = new NewsStory($storyid);
            
xoops_cp_header();
            echo 
"<h4>" _AM_CONFIG "</h4>";
            
xoops_confirm(array('op' => 'delete''storyid' => $storyid'ok' => 1), 'index.php'_AM_RUSUREDEL .'<br />' $story->title());
        }
        break;

 
    case 
"edit":
        include_once 
XOOPS_ROOT_PATH.'/modules/news/submit.php';
        break;


    case 
"default":
    default:
        
xoops_cp_header();
        
adminmenu(-1);
        if(!
TableExists($xoopsDB->prefix('stories_votedata')) || !TableExists($xoopsDB->prefix('stories_files')) )
        {
            echo 
"<div align='center'>"._AM_NEWS_PLEASE_UPGRADE."</div><br/><br />";
        }

        
//echo "<h4>" . _AM_CONFIG . "</h4>";
        //echo"<table width='100%' border='0' cellspacing='1' class='outer'><tr><td class="odd">";
        //echo " - <b><a href='index.php?op=topicsmanager'>" . _AM_TOPICSMNGR . "</a></b>";
        //echo "<br /><br />n";
        //echo " - <b><a href='index.php?op=newarticle'>" . _AM_PEARTICLES . "</a></b>n";
        //echo "<br /><br />n";
        //echo " - <b><a href='groupperms.php'>" . _AM_GROUPPERM . "</a></b>n";
        //echo "<br /><br />n";
        //echo " - <b><a href='" . XOOPS_URL . '/modules/system/admin.php?fct=preferences&amp;op=showmod&amp;mod=' . $xoopsModule -> getVar( 'mid' ) . "'>" . _AM_GENERALCONF . "</a></b>";
        //echo "<br /><br />n";
        //echo " - <b><a href='index.php?op=prune'>" . _AM_NEWS_PRUNENEWS . "</a></b>n";
        //echo "<br /><br />n";
        //echo " - <b><a href='index.php?op=export'>" . _AM_NEWS_EXPORT_NEWS . "</a></b>n";
        //echo "<br /><br />n";
        //echo " - <b><a href='index.php?op=configurenewsletter'>" . _AM_NEWS_NEWSLETTER . "</a></b>n";
        //echo "<br /><br />n";
        //echo " - <b><a href='index.php?op=stats'>" . _AM_NEWS_STATS . "</a></b>n";
        //echo"</td></tr></table>";
        
break;
}

xoops_cp_footer();
?>


3- pour le bloc, je suppose que c'est le bloc dans le fichier blocks/news_moderate.php
remplacer les index.php par indexmodo.php

PS: je n'ai rien testé, donc ce n'est qu'une théorie mais je ne sais pas si ça marche...
Par ailleurs le code d'Hervé étant particulièrement bien documenté et structuré, il est relativement facile de s'y retrouver et de comprendre chacune des options...

PS 2 : en fin de code, j'ai mis le menu en commentaire car je ne sais pas trop s'il faut effacer ou pas cette partie.

Bref, c'est un point de départ....

SVP, ne me jetez pas de cailloux pour tentative de massacre de modules, de toute façon je n'y connaît pas grand chose...

A+

Posté le : 30/09/2005 10:41

la fonction recherche, la meilleure amie du Xoopsien !!
Partager Twitter Partagez cette article sur GG+
Re: News 1.4 et vrais modérateurs
Admin Frxoops
Inscrit: 16/05/2003 18:10
De Rhone-Alpes
Messages: 4051
ok, je suis parti de ton idée...

J'ai modifié les fichiers
- modules/news/admin/index.php en modules/news/admin/alain_modo.php
- modules/news/admin/functions.php en modules/news/admin/alain_function.php

J'ai ajouté le groupe moderateurs en administrateurs du module news (snif).

J'ai mis un lien pour mes moderateurs :

http://monsite.fr/modules/news/admin/alain_modo.php

et...

ça marche jusqu'à la soumission (plutôt approbation dans ce cas, car approbation d'un article dont ils ne sont pas l'auteur), mais une fois soumis, le module nous ramène sur la page index.php de l'admin donc problème.

Il faut donc modifier aussi le fichier modules/news/submit.php ligne 485
Citation :

/* alain */
/* redirect_header(XOOPS_URL."/modules/news/admin/index.php?op=newarticle",2,_NW_THANKS);
*/
redirect_header XOOPS_URL."/modules/news/index.php",2,_NW_THANKS);


Fichiers joints
/modules/news/admin/alain_modo.php
/modules/news/admin/alain_function.php
/modules/news/submit.php

En tous cas ça marche.
Espérons qu'Hervé nous prépare une future version avec une vraie gestion par les moderateurs.

Attacher un fichier:


zip hack_moderateurs_news1.4.zip Taille: 21.50 KB; Hits: 1721

Posté le : 30/09/2005 15:26

Open in new window
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
(1) 2 3 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

49 Personne(s) en ligne (37 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 49 | Plus ...