https://project.proxyepn.org/https://project.proxyepn.org/favicon.ico?16699090422010-12-09T17:11:25ZProject ManagerProxyEPN - Evolution #77: Nouvelle version d'EPNadminhttps://project.proxyepn.org/issues/77?journal_id=2452010-12-09T17:11:25ZGrégory MARIGOT - TEICEEgmarigot@teicee.com
<ul><li><strong>Statut</strong> changé de <i>Nouveau</i> à <i>In Progress</i></li></ul><p>Modifications publiées sur le svn (<a class="changeset" title="Création d'une branche EPNadmin-NG (version 100% Symfony 1.4)" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/311">r311</a>) :</p>
<p>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.</p>
<p>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).</p> ProxyEPN - Evolution #77: Nouvelle version d'EPNadminhttps://project.proxyepn.org/issues/77?journal_id=2462010-12-09T17:13:56ZGrégory MARIGOT - TEICEEgmarigot@teicee.com
<ul><li><strong>% réalisé</strong> changé de <i>0</i> à <i>10</i></li></ul><p>Modifications publiées sur le svn (<a class="changeset" title="Suppression des sources sfGuardPlugin pour les remplacer par une référence externe svn" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/312">r312</a>, <a class="changeset" title="Mise à jour de Symfony en version 1.2 + réorganisation des références externes" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/313">r313</a>, <a class="changeset" title="Modification du code pour supporter Symfony 1.2 (Propel 1.3, PDO, divers...)" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/314">r314</a>, <a class="changeset" title="Suite de la r314 avec intégration de sfGuardPlugin en référence externe svn" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/315">r315</a>, <a class="changeset" title="Suite de la r315 : surcharge de classes sfGuardPlugin en dehors de son dossier en référence externe" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/316">r316</a>) :</p>
<a name="Migration-Symfony-12"></a>
<h2 >Migration Symfony 1.2<a href="#Migration-Symfony-12" class="wiki-anchor">¶</a></h2>
Le framework symfony a été mis à jour en passant de la 1.1.7 à la 1.2.12 :
<ul>
<li>Les plugins Symfony ont également été mis à jour</li>
<li>En particulier, sfGuardPlugin redevient une référence externe</li>
<li>L'ORM Propel passe en version 1.3</li>
<li>L'interface BDD utilise PDO à la place de Creole</li>
</ul>
<p>Diverses modifications ont été apportées pour adapter le code aux nouvelles API.</p> ProxyEPN - Evolution #77: Nouvelle version d'EPNadminhttps://project.proxyepn.org/issues/77?journal_id=2472010-12-09T17:27:43ZGrégory MARIGOT - TEICEEgmarigot@teicee.com
<ul></ul><p>Modifications publiées sur le svn (<a class="changeset" title="Mise à jour de Symfony en version 1.3" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/317">r317</a>, <a class="changeset" title="Suite de la r317 avec réorganisation des références externes" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/318">r318</a>, <a class="changeset" title="Suite de la r318 : Adaptations du code pour compatibilité Symfony 1.3" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/319">r319</a>, <a class="changeset" title="Rectifications pour compatibilité Symfony 1.4" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/320">r320</a>) :</p>
<a name="Migration-Symfony-13"></a>
<h2 >Migration Symfony 1.3<a href="#Migration-Symfony-13" class="wiki-anchor">¶</a></h2>
Le framework symfony a été mis à jour en passant de la 1.2.12 à la 1.3.8 :
<ul>
<li>Les plugins Symfony ont été également mis à jour</li>
<li>L'ORM Propel passe en version 1.4</li>
</ul>
<p>Diverses modifications ont été apportées pour adapter le code aux nouvelles API.</p>
<a name="Différences-entre-Symfony-13-et-14"></a>
<h2 >Différences entre Symfony 1.3 et 1.4<a href="#Différences-entre-Symfony-13-et-14" class="wiki-anchor">¶</a></h2>
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 :
<ul>
<li>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.</li>
<li>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.</li>
</ul>
<p>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.</p>
<p>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.</p> ProxyEPN - Evolution #77: Nouvelle version d'EPNadminhttps://project.proxyepn.org/issues/77?journal_id=2482010-12-09T17:28:45ZGrégory MARIGOT - TEICEEgmarigot@teicee.com
<ul><li><strong>% réalisé</strong> changé de <i>10</i> à <i>30</i></li></ul> ProxyEPN - Evolution #77: Nouvelle version d'EPNadminhttps://project.proxyepn.org/issues/77?journal_id=2492010-12-10T15:15:56ZGrégory MARIGOT - TEICEEgmarigot@teicee.com
<ul><li><strong>% réalisé</strong> changé de <i>30</i> à <i>50</i></li></ul><p>Modifications publiées sur le svn (<a class="changeset" title="NEW #77: Suppression de l'utilisation et des dépendances de l'ancien code lib/epnadmin" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/321">r321</a>, <a class="changeset" title="NEW #77: Suite de la r321" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/322">r322</a>) :</p>
<p><strong>Fin de l'utilisation du code EPNadmin d'origine (lib/epnadmin/).</strong></p>
L'application fonctionne désormais uniquement avec le framework Symfony et ses modules :
<ul>
<li>Le controlleur principal (index.php) ne fait que diriger vers les modules symfony</li>
<li>Des ressources (images, css, js) de l'ancien EPNadmin qui étaient liées ont été copiées</li>
<li>Le module 'default' prend désormais en charge l'affichage de la page d'accueil</li>
<li>La création du menu est maintenant faites par des méthodes de la classe myUser</li>
<li>L'ancien fichier de configuration config_local.inc.php est remplacé par des options de app.yml</li>
<li>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</li>
<li>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)</li>
</ul>
<p>Au passage les librairies JS ont été mises à jour (jQuery, jQuery-ui, tiny_mce...)</p> ProxyEPN - Evolution #77: Nouvelle version d'EPNadminhttps://project.proxyepn.org/issues/77?journal_id=2502010-12-10T15:25:28ZGrégory MARIGOT - TEICEEgmarigot@teicee.com
<ul></ul><a name="TODO"></a>
<h2 >TODO:<a href="#TODO" class="wiki-anchor">¶</a></h2>
<p>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.</p>
Ainsi certains points restent à travailler pour retrouver l'usage initial :
<ul>
<li>Administration des droits (gestion des liens entre modules, rôles, me/others, r/w/n) -> <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Evolution: Nouveau module d'administration des droits (Fermé)" href="https://project.proxyepn.org/issues/78">#78</a></li>
<li>Gestion des listes administrables en base de données -> <a class="issue tracker-2 status-2 priority-4 priority-default" title="Evolution: Gestion des listes administrables (In Progress)" href="https://project.proxyepn.org/issues/84">#84</a></li>
<li>Interface d'admin pour éditer page d'accueil principale et pied de page -> <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Evolution: Personnalisation de l'interface (générale + GEPN) (Fermé)" href="https://project.proxyepn.org/issues/87">#87</a></li>
<li>Affichage des pages d'accueil personnalisée et gestion des macros (sessions à venir etc) -> <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Evolution: Personnalisation de l'interface (générale + GEPN) (Fermé)" href="https://project.proxyepn.org/issues/87">#87</a></li>
<li>Validation des JS utilisés (liens vers les js et css requis) -> <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Evolution: Mise en page, look & feel, etc... (Fermé)" href="https://project.proxyepn.org/issues/86">#86</a></li>
<li>Réorganisation du menu principal -> <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Evolution: Mise en page, look & feel, etc... (Fermé)" href="https://project.proxyepn.org/issues/86">#86</a></li>
<li>Module de gestion du parc informatique (ordinateurs, périphériques, logiciels) -> <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Evolution: Nouveau module de gestion des équipements (Fermé)" href="https://project.proxyepn.org/issues/79">#79</a></li>
<li>Module de statistiques -> <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Evolution: Version 1 - Modification des stats EPNadmin (Fermé)" href="https://project.proxyepn.org/issues/57">#57</a></li>
</ul>
<p>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.</p> ProxyEPN - Evolution #77: Nouvelle version d'EPNadminhttps://project.proxyepn.org/issues/77?journal_id=2762011-02-04T13:33:25ZGrégory MARIGOT - TEICEEgmarigot@teicee.com
<ul></ul><p>Modifications publiées sur le svn (<a class="changeset" title="NEW #77, #80: EpnAdmin-NG devient ProxyEPN ! - Feuille de styles CSS totalement nouvelle - Remise..." href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/337">r337</a> et <a class="changeset" title="Renommage de la branche en ProxyEPN" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/338">r338</a>) :</p>
<a name="Le-projet-change-de-nom-ProxyEPN-"></a>
<h2 >Le projet change de nom : ProxyEPN !<a href="#Le-projet-change-de-nom-ProxyEPN-" class="wiki-anchor">¶</a></h2>
<p>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.</p>
<p>Le fork devient ainsi officiel, ProxyEPN est le nouveau nom du projet développé ici.<br />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.</p>
<p>A cette occasion, le dossier lib/epnadmin qui n'était plus utilisé disparait définitivement, ainsi que l'ensemble des composants graphiques (cf <a class="issue tracker-2 status-5 priority-4 priority-default closed" title="Evolution: Mise en page, look & feel, etc... (Fermé)" href="https://project.proxyepn.org/issues/86">#86</a> pour le nouveau look&feel).</p> ProxyEPN - Evolution #77: Nouvelle version d'EPNadminhttps://project.proxyepn.org/issues/77?journal_id=2842011-02-07T13:44:40ZGrégory MARIGOT - TEICEEgmarigot@teicee.com
<ul><li><strong>% réalisé</strong> changé de <i>50</i> à <i>70</i></li></ul><p>Modifications publiées sur le svn (<a class="changeset" title="NEW #77: Mises à jour Symfony 1.4, jQuery 1.5, licence AGPLv3, documentations..." href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/350">r350</a>) :</p>
<a name="Utilisation-du-framework-Symfony-en-version-14"></a>
<h3 >Utilisation du framework Symfony en version 1.4<a href="#Utilisation-du-framework-Symfony-en-version-14" class="wiki-anchor">¶</a></h3>
<p>La référence externe du dépôt passe de la version 1.3.8 à la 1.4.8.<br />Les portions de codes obsolètes sont supprimées (tests, scriptaculous).</p>
<a name="Mise-à-jour-des-composants-JavaScript"></a>
<h3 >Mise à jour des composants JavaScript<a href="#Mise-à-jour-des-composants-JavaScript" class="wiki-anchor">¶</a></h3>
<p>La bibliothèque jQuery passe de la version 1.4.4 à la 1.5.<br />Le plugin jQuery-UI est réempacté en omettant le widget <em>autocomplete</em>, afin de ne pas entrer en conflit avec le widget Symfony fournit par le plugin sfFormExtra.<br />Les plugins jQuery Feedback et WeekCalendar sont également mis à niveaux.</p>
<a name="Application-de-la-licence-du-projet-en-AGPL-v3"></a>
<h3 >Application de la licence du projet en AGPL v3<a href="#Application-de-la-licence-du-projet-en-AGPL-v3" class="wiki-anchor">¶</a></h3>
<p>La <em>GNU Affero General Public License</em> est indiquée dans les principaux entêtes de fichiers.<br />Elle est également disponible au sein de l'application à l'adresse 'page/license'.</p>
<a name="Mise-à-niveau-de-la-documentation"></a>
<h3 >Mise à niveau de la documentation<a href="#Mise-à-niveau-de-la-documentation" class="wiki-anchor">¶</a></h3>
<p>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.<br />De plus les fichiers de configuration ont été revus (pertinence des valeurs par défaut, suppression des paramètres obsolètes...)<br />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).</p> ProxyEPN - Evolution #77: Nouvelle version d'EPNadminhttps://project.proxyepn.org/issues/77?journal_id=3652011-04-07T21:10:08ZGrégory MARIGOT - TEICEEgmarigot@teicee.com
<ul><li><strong>Statut</strong> changé de <i>Résolu</i> à <i>Fermé</i></li></ul> ProxyEPN - Evolution #77: Nouvelle version d'EPNadminhttps://project.proxyepn.org/issues/77?journal_id=3582011-04-07T21:11:25ZGrégory MARIGOT - TEICEEgmarigot@teicee.com
<ul><li><strong>Statut</strong> changé de <i>In Progress</i> à <i>Résolu</i></li><li><strong>% réalisé</strong> changé de <i>70</i> à <i>100</i></li></ul><p>Modifications publiées sur le svn (<a class="changeset" title="Mise en place du dépot ProxyEPN à partir de la branche de développement" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/436">r436</a> et <a class="changeset" title="Réalisation de la version 2.0 du projet" href="https://project.proxyepn.org/projects/proxyepn/repository/4/revisions/437">r437</a>) :</p>
<a name="Sortie-de-ProxyEPN-20"></a>
<h2 >Sortie de ProxyEPN 2.0<a href="#Sortie-de-ProxyEPN-20" class="wiki-anchor">¶</a></h2>
<p>Le long travail entrepris pour réaliser une nouvelle version du projet a abouti : la première version officielle de ProxyEPN est sortie !</p>
<p>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...</p>
A cette occasion le dépôt SVN se réorganise :
<ul>
<li>le nom du dépôt <em>epnadmin</em> devient <em>proxyepn</em></li>
<li>apparition d'un nouveau dossier <em>proxyconcept</em> en parallèle avec <em>ctn</em></li>
<li>la branche ayant servi au développement de ProxyEPN devient le trunk de ce nouveau dossier</li>
<li>la version 2.0 est réalisée dans le dossier <code>proxyconcept/tags/</code></li>
</ul>