Plugin de gestion de documents pour CakePHP 2.x

Le plugin de gestion de document fournit une solution complète et simple pour gérer une arborescence de fichiers à l'intérieur d'une application CakePHP 2.x.

Vous définissez un répertoire racine à l'intérieur du répertoire webroot/ et ensuite vous pourrez à l'intérieur créer des sous-dossiers, mettre en ligne/renommer/supprimer des fichiers, les parcourir, obtenir le lien absolu vers chaque fichier pour pouvoir faire un lien vers eux. Les informations sur les fichiers mis en ligne sont stockées dans une table Documents qui permet ensuite d'y accéder facilement dans votre application.

De plus, ce plugin peut être lié à un système de gestion d'utilisateurs pour gérer des permissions sur les fichiers et empêcher la suppression ou l'édition de fichiers par les mauvais utilisateurs. Si vous n'avez pas de système de gestion d'utilisateurs, vous pouvez aussi désactiver cette fonctionnalité pour avoir un explorateur libre d'accès.

Ce plugin nécessite jQuery pour fonctionner. Le style utilise Bootstrap.

Le code source est disponible sur GitHub : Document Manager Plugin for CakePHP.

Behavior Documented

Un Behavior Documented se trouve à l'intérieur du plugin pour permettre la gestion de fichiers associés à des modèles de votre application et stocker leurs détails dans la table documents. Plutôt que d'avoir par exemple une colonne 'datasheet_url' dans une table d'un modèle, vous déclarez une colonne 'datasheet_id' dans la table puis associez votre modèle au behavior :

public $actsAs = array(
	'DocumentManager.Documented' => array(
		'datasheet',
));

L'URL du document et d'éventuels détails additionnels seront sauvegardés dans la table documents et la clé étrangère de cette entrée sera enregistrée dans la colonne 'datasheet_id'.

Enfin, quand vous faîtes une recherche sur un modèle qui a un behavior Documented, les urls vers les documents associés sont automagiquement insérées dans le tableau résultant. L'appel à un find() renverra un tableau contenant une entrée $model['Model']['datasheet'] contenant le lien vers le fichier. 

Cette page appartient aux catégories suivantes: actualités , CakePHP , Code , Plugin.

Commentaires

Ajoutez un commentaire

5103
Petits fours servis