ADDON NPDS-AGENDA beta 1

Date : mercredi 02 janvier 2002 @ 09:01:03 :: Sujet : NPDS

Bonjour à tous, comme évoqué sur le forum (et avec l'ami dév'), je vous propose mon premier module NPDS.

Il s'agit d'un module Agenda pour la gestion d'évènements et de rendez-vous.
C'est un gros boulot (mes débuts en PHP) et ce module n'est pas une simple adaptation de l'existant à NPDS : c'est un développement POUR NPDS, même si rien n'est véritablement révolutionnaire (ça reste un agenda).

Il me semble que cela peut être utile à d'autres.

Amicalement, jerome



p>© 2002 jerome@auzeray.com


Le fichier ZIP est disponible ICI en attendant de le faire hébergé directement sur NPDS.ORG.


Bienvenu dans ce premier module spécialement écrit pour le générateur de Portail NPDS.


Mes besoins d’enseignants m’ont conduit à rechercher les solutions de
planification disponibles sous systèmes xNuke pouvant s’adapter à la gestion de différents groupes (différentes classes ou équipes de travail).


Déjà beaucoup de produits en concurrence, mais aucun qui ne répondent vraiment à mes attentes.


Voilà pourquoi NPDS-AGENDA est né.


Ce module « compilent » (disons le comme cela) ce que j’ai pu remarquer de mieux (dans l’optique qui est la mienne) avec les développements actuels sous Nuke. D’ailleurs, il reprend quelques portions de code du PHP-AGENDA 0.1 de Didier CAILLON.


Mais il s’agit là d’une vraie intégration NPDS en cela que cet agenda tire le bénéfice de fonctionnalités que je trouve particulièrement attractives avec ce portail.


Ce que vous offre NPDS-AGENDA beta 1 ?


- La possibilité d’ajouter un nouveau bloc « agenda » à vos pages sous la forme d’un calendrier mensuel donnant une visibilité des journées comprenant rendez-vous et évènements.


Ce bloc peut-être public ou privé. Privé, il ne s’affichera qu’aux membres choisis (en corrélation avec les «groupes» NPDS).


Par ailleurs, un bloc public peut malgré tout contenir des informations de rendez-vous privé et, là encore, seuls les utilisateurs choisis auront la lisibilité de ces évènements, en sur-ajouts de ceux définis comme publics.


- Un module de calendrier pleine page, avec repérage des évènements par leur titre.


- Un module agenda pleine page, avec repérage des évènements par tranches horaires avec titre et résumé.


- Un module de fiche avec l’intégral des informations relatives à l’évènements.


Je n’ai pas jugé opportun d’inclure une vue de l’année complète comme d’autres produits le propose. L’intérêt utilitaire m’en semble en effet réduit.


En revanche ce module dispose de son mode d’administration intégré permettant de modifier, supprimer et ajouter des entrées à l’agenda. Ce mode permet aussi de définir les horaires de journées ainsi que de la famille de sujets (au choix ceux intégrés à NPDS ou ceux à définir spécifiquement pour l’agenda).


Mode de fonctionnement :
J’ai tenté de faire simple. Y suis-je parvenu ? Quoi qu’il en soit cet agenda fonctionne sur le principe des membres-modérateurs.


Ainsi, si l’administrateur à tous pouvoirs pour créer, modifier ou supprimer des entrées, seuls les utilisateurs déclarés comme modérateurs inclus à un (des) groupe(s) NPDS pourront ajouter leurs propres entrées.


Les autres membres pourront, selon les choix de l’administrateur, seulement consulter tout ou partie des entrées en fonction de leur appartenance à différents groupes.


Le groupe 0 n’ayant aucune existence avec NPDS, j’ai retenu cette valeur pour les entrées publics visibles à tous (membres comme visiteurs).


Ce module est ma vraie première contribution au monde Nuke. J’y ai beaucoup travaillé.
J’ai notamment testé abandonnement sa sécurité. Cependant il s’agit d’un développement jeune et donc évidemment perfectible.


N’hésitez donc pas à faire remonter vos expériences d’utilisateurs (je proposerai prochainement un forum au webmaster du site npds.org).


Par exemple pour créer un bloc nommé "Agenda" visible par tous, on ajoutera dans le fichier header.php (ou footer.php) l'appel :


agenda("Agenda", "0", "0");


où "Agenda" est le titre pour le bloc, "0" le groupe d'utilisateurs associé (ici tous les utilisateurs membres et visiteurs mais seul l'administrateur peut entrer de nouveaux évènements - groupe 0 indisponible dans NPDS), et le second "0" pour signifier que le bloc est public (toujours à l'écran)


agenda("Suivi de Projet", "7", "1");


où "Suivi de Projet" est le titre du bloc, "7" désigne le groupe NPDS associé (il faudra donc qu'il y ait au moins un membre modérateur associé au groupe 7 pour ajouter des entrées, en dehors de l'administrateur) et le "1" pour signifier que le bloc est privé (s'affiche uniquement pour les membres associés au groupe 7)


Pour moi, tout l'intéret est de pouvoir afficher des agendas différents pour chacun de mes groupes d'étudiants tout en gardant la possibiliter d'avoir un bloc agenda généraliste toujours présent sur le site.


Installation :


-Dézippez l’archive


-Copier l’intégral des fichiers en respectant l’arborescence sur votre serveur.


-Passez le fichier adminmodulesconfig.php en chmod 666


-Créez les tables nécessaires au fonctionnement de l'agenda comme défini dans le fichier modules/npds-agenda/npds-agenda.sql


Enfin, loggez-vous en tant qu'administrateur et dirigez-vous vers l'option "Bloc Administration" pour y ajouter la ligne :


<.LI><.A href="module.php?p=admin/modules/agenda.php">Admin Agenda<./A>(Supprimez les . à l'intérieur des balises html

Vous pouvez à présent accéder au mode administration de l'agenda via le bloc Administration (celui permettant l'administration de la chat box !)


Enjoy !


Limite de compatibilité :


Le bloc Agenda, de par le nombre d'informations affichées, necessite une largeur supérieure à celle définie par défaut avec le theme Permanent-Double-Side (120p)Idéalement, vous pouvez modifier la valeur $tbl du thème en l'augmentant à 160 (160 pixels).


La prochaine mise à jour permettra en outre de définir ses propres couleurs pour l'interface de l'agenda par le mode d'administration.


Prochain objectif : concocter un module de suivi de projet sous NPDS.


Mr J








Cet article provient de NPDS

L'URL pour cet article est : http://www.npds.org/article.php?sid=86