Opencomp, présentation du projet

Opencomp, mais qu’est-ce donc ?

Pour ceux qui ne le saurait pas encore, Opencomp souhaite proposer une alternative au logiciel propriétaire Pronote développé par la société Index Education. En effet, d’une part, les coûts de licence de ce logiciel sont assez élevés et, d’autre part, il n’existe pas de réelle alternative à ce logiciel pour les enseignants du primaire qui évaluent les élèves selon l’acquisition de compétences.
Continuer la lecture

Publié dans Non classé | 2 commentaires

[Git] Comment renommer l’utilisateur d’un commit ?

Bonjour à tous !

Plus trop de nouvelles du projets ces derniers mois …
Mes études me prennent tout mon temps.

Aujourd’hui, j’ai décidé de nettoyer un peu le dépôt git d’Opencomp. En effet, au fil du temps, on fait quelques erreurs lorsque l’on Commit. Par exemple, sur le dépôt d’Opencomp, plusieurs Commit appartenant à des utilisateurs identiques apparaissaient avec des noms d’utilisateurs différents !

Cela se produit par exemple si l’on Commit sans avoir défini son git.username ou alors si l’on s’est trompé lors de la définition de cette variable mais que l’on a déjà Commité et envoyé sur le serveur distant …

Alors, comment faire pour changer l’auteur d’un Commmit ?

Continuer la lecture

Publié dans Non classé | Marqué avec | Laisser un commentaire

[CakePHP] Associations HABTM (Has And Belong To Many)

J’ai abordé récemment la mise en place sur quelques modules d’Opencomp des associations CakePHP HABTM (Has And Belong To Many). Mais, c’est quoi une association HABTM ? Has And Belong To Many signifie en français Possède Et Appartient À Plusieurs. Concrètement, il s’agit d’une relation Plusieurs à plusieurs (n : m).

Par exemple, un utilisateur peut gérer 0 à n académie(s) et, une académie doit être gérée par 1 à n utilisateurs.

Continuer la lecture

Publié dans Non classé | Marqué avec , , , , , , | 3 commentaires

[CakePHP] Column … in order clause is ambiguous

Aujourd’hui, j’ai été confronté à une erreur lors du développement d’Opencomp.

Warning (512): SQL Error: 1052: Column 'name' in order clause is ambiguous [CORE/cake/libs/model/datasources/dbo_source.php, line 684]

En regardant le debug de la requête SQL exécutée, j’ai vite compris la source du problème. Mais, comme ce n’est pas forcément évident au premier abord, je poste la solution ici en espérant que ça serve à quelqu’un …
Continuer la lecture

Publié dans Non classé | Laisser un commentaire

Regardons ensemble le chemin parcouru !

Depuis le début du projet, de nombreuses choses ont évolué, et les connaissances acquises au quotidien sont désormais réinvesties à chaque moment du développement.

Mais où en est le projet Opencomp ? Comment avance le développement ?
Il est grand tant de faire un point d’étape pour vous détailler tout cela.

Continuer la lecture

Publié dans Non classé | Laisser un commentaire

Comment Github simplifie le versionning d’un projet ?


Dans un précédent billet, je vous informais de l’abandon de Subversion au profit de Git pour le système de contrôle de version du projet. Je vais tenter à travers ce billet de vous expliquer pourquoi nous avons choisi Github comme fournisseur de dépôt Git à travers plusieurs exemples concrets montrant la réelle valeur ajoutée qu’apporte Github à Git. Continuer la lecture

Publié dans Non classé | Laisser un commentaire

Structure de base de données, la suite !

Dans le dernier billet, je vous parlais de la structure de la base de données. Depuis la dernière fois, les choses ont bien évolué nous pensons maintenant que la structure de données est plus ou moins arrivée à sa forme définitive. Nous avons essayé de ne rien oublier et nous pensons que c’est le cas actuellement.
Continuer la lecture

Publié dans Non classé | Marqué avec , , , | Un commentaire

Conception de la base de donnée

Depuis quelques temps, Opencomp n’avance pas vraiment. Beaucoup de choses étaient sur le feu, on touche un peu à tout, on se renseigne. Puis on prend du recul et on finit par se dire que l’essentiel n’a pas encore été réellement soigneusement réfléchi.

Je veux bien sûr parler de la structure de base de donnée d’Opencomp. Évidemment, cette étape de la conception de l’application m’a longtemps angoissé. Au début, j’avais donc tendance à faire un peu au feeling. Cependant, si ça peut marcher pour un petit blog ou un portfolio, cela ne fonctionne pas pour une application de la taille d’Opencomp.
Continuer la lecture

Publié dans Non classé | Marqué avec , , , | 2 commentaires

Adoption de Git pour le versionning du projet

Il y a quelques mois, je vous parlais de Subversion. Je vous expliquait que ce logiciel permettait de gérer les différentes révisions du projet et je vous expliquais comment récupérer la dernière révision du projet via le référentiel Subversion.

J’ai récemment décidé d’abandonner Subversion au profit du système de versionning Git. Alors, pourquoi ce changement pourrez vous me dire ?
Continuer la lecture

Publié dans Non classé | Marqué avec , , | 4 commentaires

[CakePHP] Récupérer le nom du contrôleur courant

Dans certains cas, il peut être très utile de récupérer le nom du contrôleur courant.
Pour vous donner un cas concret, pour le menu de type onglets d’Opencomp.

Menu de navigation d'Opencomp (onglets)

Dans ce genre de menu, il faut faire en sorte de colorer différemment l’onglet actif. En effet, si l’on se trouve dans le module permettant de gérer les utilisateurs, il faut que ça soit l’onglet « Utilisateurs » qui soit actif et non plus « Tableau de bord ».

Techniquement, il faut simplement changer la classe CSS associé à l’onglet. Pour cela, on a besoin de récupérer le nom du contrôleur.

Cette opération peut-être effectuée grâce à l’attribut :

$this->params['controller']

Cet attribut permet de récupérer le nom du contrôleur courant.
Vous pouvez aussi récupérer le nom de l’action courante (edit, index, add par exemple) grâce à :

$this->params['action']

Maintenant, rien de plus simple que de modifier la classe de chaque onglet si il correspond au contrôleur courant.

Publié dans Non classé | Marqué avec | Laisser un commentaire

CakePHP, les conventions de nommage

Ce billet est le premier d’une série qui abordera quelques unes des spécificités et des fonctionnalités du framework que nous avons choisi d’utiliser pour la création d’Opencomp : CakePHP.

Nous allons parler aujourd’hui des conventions de nommage de CakePHP. En effet, comme CakePHP suit le modèle MVC, un certain nombre de règles doivent être respectées pour que le framework puisse trouver les différents fichiers qui composent un module. Ces différents fichiers vont donc devoir adopter certaines conventions de nommage.
Continuer la lecture

Publié dans Non classé | Marqué avec , | Laisser un commentaire