Projet

Général

Profil

Actions

Evolution #77

fermé

Nouvelle version d'EPNadmin

Ajouté par Grégory MARIGOT - TEICEE il y a plus de 13 ans. Mis à jour il y a environ 13 ans.

Statut:
Fermé
Priorité:
Normal
Version cible:
Début:
09/12/2010
Echéance:
% réalisé:

100%

Temps estimé:
Version ProxyEPN:
1.0

Description

La version actuelle fait plus qu'hériter de la version d'origine d'EPNadmin : c'est un code hybride entre des modules réécrits sur le framework Symfony et d'autres parties utilisant toujours l'ancien code (avec des ponts pour faire cohabiter les deux mondes). Il serait donc souhaitable pour plus de clarté et d'efficacité d'aboutir au terme de cette évolution en se débarassant totalement de l'ancien code, au profit d'une application 100% symfony.

De plus, les bibliothèques utilisées sont devenues obsolètes. Le framework symfony est en version 1.1, alors que la version stable actuellement maintenue est en 1.4. Les quelques plugins symfony, comme la version de Propel, sont également concernées.


Demandes liées 7 (1 ouverte6 fermées)

Lié à Evolution #78: Nouveau module d'administration des droitsFerméGrégory MARIGOT - TEICEE13/12/2010

Actions
Lié à Evolution #79: Nouveau module de gestion des équipementsFerméGrégory MARIGOT - TEICEE13/12/2010

Actions
Lié à Evolution #80: Révision globale du codeFerméGrégory MARIGOT - TEICEE17/12/2010

Actions
Lié à Evolution #81: Modifications sur la gestion des sessionsFerméGrégory MARIGOT - TEICEE07/01/2011

Actions
Lié à Evolution #84: Gestion des listes administrablesIn ProgressGrégory MARIGOT - TEICEE03/02/2011

Actions
Lié à Evolution #86: Mise en page, look & feel, etc...FerméGrégory MARIGOT - TEICEE04/02/2011

Actions
Lié à Evolution #87: Personnalisation de l'interface (générale + GEPN)FerméGrégory MARIGOT - TEICEE04/02/2011

Actions

Mis à jour par Grégory MARIGOT - TEICEE il y a plus de 13 ans

  • Statut changé de Nouveau à In Progress

Modifications publiées sur le svn (r311) :

Pour mener à bien ces nombreuses transformations en profondeur, une branche à part a été créée sur le dépôt SVN, nommée epnadmin-ng.

Ceci permet d'ouvrir le chantier tout en maintenant dans le trunk une version exploitable de l'application (équivalente à celle déployée en production).

Mis à jour par Grégory MARIGOT - TEICEE il y a plus de 13 ans

  • % réalisé changé de 0 à 10

Modifications publiées sur le svn (r312, r313, r314, r315, r316) :

Migration Symfony 1.2

Le framework symfony a été mis à jour en passant de la 1.1.7 à la 1.2.12 :
  • Les plugins Symfony ont également été mis à jour
  • En particulier, sfGuardPlugin redevient une référence externe
  • L'ORM Propel passe en version 1.3
  • L'interface BDD utilise PDO à la place de Creole

Diverses modifications ont été apportées pour adapter le code aux nouvelles API.

Mis à jour par Grégory MARIGOT - TEICEE il y a plus de 13 ans

Modifications publiées sur le svn (r317, r318, r319, r320) :

Migration Symfony 1.3

Le framework symfony a été mis à jour en passant de la 1.2.12 à la 1.3.8 :
  • Les plugins Symfony ont été également mis à jour
  • L'ORM Propel passe en version 1.4

Diverses modifications ont été apportées pour adapter le code aux nouvelles API.

Différences entre Symfony 1.3 et 1.4

Ces deux versions du framework sont cousines car elles proposent exactement les mêmes fonctionnalités (notamment la même documentation). La différence vient de leur attitude vis-à-vis des versions précédentes de l'API :
  • La branche 1.3 est prévue pour les projets migrants d'une version précédente, elle assure une compatibilité ascendante en conservant les éléments notés obsolètes.
  • La branche 1.4 est surtout dédiée aux nouveaux projets qui n'ont aucune problématique de compatibilité. C'est une version plus stricte, dans laquelle les éléments obsolètes sont supprimés.

C'est pourquoi ces étapes de mises à jour s'arreteront pour le moment sur la branche 1.3, ce qui ne retire rien aux fonctionnalités disponibles. Le passage en 1.4 pourra se faire sans mal une fois tous les appels obsolètes corrigés.

Ce travail a déjà été entrepris, les avertissements restants sont rares et concernent essentiellement ds parties d'EPNadmin qui doivent être revus. Il est donc prévu de passer le framework en 1.4 une fois la refonte de l'application aboutie.

Mis à jour par Grégory MARIGOT - TEICEE il y a plus de 13 ans

  • % réalisé changé de 10 à 30

Mis à jour par Grégory MARIGOT - TEICEE il y a plus de 13 ans

  • % réalisé changé de 30 à 50

Modifications publiées sur le svn (r321, r322) :

Fin de l'utilisation du code EPNadmin d'origine (lib/epnadmin/).

L'application fonctionne désormais uniquement avec le framework Symfony et ses modules :
  • Le controlleur principal (index.php) ne fait que diriger vers les modules symfony
  • Des ressources (images, css, js) de l'ancien EPNadmin qui étaient liées ont été copiées
  • Le module 'default' prend désormais en charge l'affichage de la page d'accueil
  • La création du menu est maintenant faites par des méthodes de la classe myUser
  • L'ancien fichier de configuration config_local.inc.php est remplacé par des options de app.yml
  • Le contenu par défaut de la page d'accueil ainsi que du pied de page sont stockés dans des fichiers html (sous web/uploads/assets/) inclus par les templates
  • Le layout général de l'application a été revu (meilleur usage des include_partial, de la gestion des styles et javascripts, des options de l'application)

Au passage les librairies JS ont été mises à jour (jQuery, jQuery-ui, tiny_mce...)

Mis à jour par Grégory MARIGOT - TEICEE il y a plus de 13 ans

TODO:

L'application est à présent globalement fonctionnelle avec uniquement du code Symfony. Néanmoins certaines fonctionnalités annexes n'ont pas encore été réimplémentées, ou de manière très basique seulement pour assurer un fonctionnement minimal.

Ainsi certains points restent à travailler pour retrouver l'usage initial :
  • Administration des droits (gestion des liens entre modules, rôles, me/others, r/w/n) -> #78
  • Gestion des listes administrables en base de données -> #84
  • Interface d'admin pour éditer page d'accueil principale et pied de page -> #87
  • Affichage des pages d'accueil personnalisée et gestion des macros (sessions à venir etc) -> #87
  • Validation des JS utilisés (liens vers les js et css requis) -> #86
  • Réorganisation du menu principal -> #86
  • Module de gestion du parc informatique (ordinateurs, périphériques, logiciels) -> #79
  • Module de statistiques -> #57

La plupart de ces points sont liés à l'écriture de nouveaux modules Symfony ou à la modification profonde de certains déjà existants. Leur développement pourra faire l'objet de tickets propres à chacun.

Mis à jour par Grégory MARIGOT - TEICEE il y a environ 13 ans

Modifications publiées sur le svn (r337 et r338) :

Le projet change de nom : ProxyEPN !

Il n'était pas envisageable de conserver le nom EPNadmin pour cette nouvelle version, dont le code n'a plus grand chose de commun, dont l'ensemble des fonctionnalités est amenés à changer, et qui de plus n'est pas géré par la même équipe. La version développée par Proxyconcept se devait de marquer la différence avec le projet initial.

Le fork devient ainsi officiel, ProxyEPN est le nouveau nom du projet développé ici.
Ce nom remplace le terme "epnadmin-ng" qui a été utilisé temporairement à la création de la branche SVN. Les références ont été modifiées dans le code source et la branche renommée.

A cette occasion, le dossier lib/epnadmin qui n'était plus utilisé disparait définitivement, ainsi que l'ensemble des composants graphiques (cf #86 pour le nouveau look&feel).

Mis à jour par Grégory MARIGOT - TEICEE il y a environ 13 ans

  • % réalisé changé de 50 à 70

Modifications publiées sur le svn (r350) :

Utilisation du framework Symfony en version 1.4

La référence externe du dépôt passe de la version 1.3.8 à la 1.4.8.
Les portions de codes obsolètes sont supprimées (tests, scriptaculous).

Mise à jour des composants JavaScript

La bibliothèque jQuery passe de la version 1.4.4 à la 1.5.
Le plugin jQuery-UI est réempacté en omettant le widget autocomplete, afin de ne pas entrer en conflit avec le widget Symfony fournit par le plugin sfFormExtra.
Les plugins jQuery Feedback et WeekCalendar sont également mis à niveaux.

Application de la licence du projet en AGPL v3

La GNU Affero General Public License est indiquée dans les principaux entêtes de fichiers.
Elle est également disponible au sein de l'application à l'adresse 'page/license'.

Mise à niveau de la documentation

Le dossier 'doc' contient désormais des fichiers README, AUTHORS, COPYING et INSTALL cohérents avec le projet ProxyEPN. Ces informations seront sans doute à compléter, mais elles contiennent déjà l'essentiel.
De plus les fichiers de configuration ont été revus (pertinence des valeurs par défaut, suppression des paramètres obsolètes...)
Les 'fixtures' d'origine sont supprimées, de nouveaux fichiers au format SQL permettent de créer les tables de la base de données et de les peupler (liste des droits par défaut, liste des communes de France, contenu par défaut des listes administrables).

Mis à jour par Grégory MARIGOT - TEICEE il y a environ 13 ans

  • Statut changé de Résolu à Fermé

Mis à jour par Grégory MARIGOT - TEICEE il y a environ 13 ans

  • Statut changé de In Progress à Résolu
  • % réalisé changé de 70 à 100

Modifications publiées sur le svn (r436 et r437) :

Sortie de ProxyEPN 2.0

Le long travail entrepris pour réaliser une nouvelle version du projet a abouti : la première version officielle de ProxyEPN est sortie !

Numérotée 2.0 afin de conserver une numérotation incrémentale malgré les changements de noms et forks du projet, cette version représente un nouveau départ, de nouvelles bases pour de nombreuses évolutions qui restent à venir...

A cette occasion le dépôt SVN se réorganise :
  • le nom du dépôt epnadmin devient proxyepn
  • apparition d'un nouveau dossier proxyconcept en parallèle avec ctn
  • la branche ayant servi au développement de ProxyEPN devient le trunk de ce nouveau dossier
  • la version 2.0 est réalisée dans le dossier proxyconcept/tags/
Actions

Formats disponibles : Atom PDF