JSmallfib-Pro

JSmallFib, crée par Enrico Sandoli, est un plugin qui affiche dans un article des dossiers et des fichiers selon une arborescence semblable à celle d'un explorateur de fichiers Windows ou du finder  Macintosh.

Il permet très facilement d'accorder des droits en lecture, modification ou suppression aux utilisateurs. Il peut créer automatiquement des dossiers accessibles uniquement à un utilisateur ou un groupe d'utilisateurs.

Ce plugin n'a pas d'équivalents pour la mise en place rapide d'une gestion de fichiers, d'un extranet ou pour créer une zone de téléchargements spécifique à un utilisateur ou un groupe.

Cet article n'a pas vocation à remplacer le mode d'emploi (disponible en anglais) mais vous donner les bases pour démarrer avec ce fabuleux plugin.

Ci-dessous, un exemple complet d'affichage. La plupart des éléments peuvent être masqués dans les paramètres du plugin ou selon le contexte (niveau visiteur, type de dossier, …)

JSmallfib - gestionnaire de fichiers

  1. titre du dossier
  2. lien vers info (mode d'emploi) et logs d'activités
  3. filtrage des fichiers
  4. zone des dossiers et fichiers avec icône ou vignette image, nom du dossier ou fichier, taille, date modification, bouton téléchargement, bouton suppression
  5. zone dépliable (à l'aide du bouton 6) pour ajouter des dossiers et fichiers
  6. bouton pour déplier la zone d'ajout (5)
  7. très petit logo JSmallfib

Prise en mains rapide

Pour utiliser ce plugin, il suffit de taper une des commandes ci-dessous dans le contenu d'un article

{jsmallfib} permet de parcourir le dossier de base défini dans les paramètres du plugins

{jsmallfib [dossier_x]} affiche le sous-dossier "dossier_x" du dossier de base défini dans les paramètres du plugins. Le sous-dossier "dossier_x" sera créé si inexistant.

{jsmallfib [USERBOUND]} affiche le sous-dossier de l'utilisateur

{jsmallfib [GROUPBOUND]} affiche le sous-dossier du ou des groupes de l'utilisateur

{jsmallfib [g2:0][g8:4][906:5] desc(tous les dossiers)} pour le dossier de base, le téléchargement est autorisé pour le groupe des utilisateurs enregistrés (g2:2), l'ajout, suppression et modification pour les super-administrateurs (g8:5) et la lecture des logs pour l'utilisateur d'ID 906 (906:6)

0 -> aucun accès
1 -> parcourir les dossiers sans possibilité de téléchargement
2 -> parcourir les dossiers et télécharger des fichiers
3 -> créer des dossiers, déposer des fichiers et renommer les fichiers et dossiers
4 -> supprimer les fichiers, mais pas les dossiers
5 -> supprimer les fichiers et dossiers vides
6 -> voir les logs en plus de toutes les permissions. La description de la zone de téléchargement sera renommée en "tous les dossiers"

Installation

Le site du créateur ne répond plus depuis quelque temps. Vous trouverez la dernière version du plugin à la fin de cet article.

L'installation se fait selon la méthode habituelle de Joomla.

Configuration

Les paramètres sont organisés par onglets selon leur rôle.

Il serait trop long de reprendre tous, je vous invite à consulter la description disponible lors du survol du libellé d'un paramètre.

Le comportement du plugin est très dépendant de sa configuration.
Il est très important de bien en comprendre les points les plus importants.

Dans la version française, j'ai ajouté un symbole devant les paramètres importants et pour ceux qui peuvent être ignorés.

Onglet "Options dépôt"

Emplacement physique des dossiers et fichiers

Chemin par défaut :
dossier racine contenant les fichiers. Par défaut dans un dossier  'jsmallfib_top' à la racine de Joomla! (sans '/' à la fin ou au début)
Type de chemin :
si absolu, il faut indiquer le chemin complet dans 'chemin par défaut''
Activer la substitution de chemin :
oui permet d'utiliser un paramètre lors de l'appel du plugin dans un article pour indiquer le type d'emplacement  sous la forme : abspath(chemin_absolu_vers_dossier_courant) ou relpath(chemin_relatif_vers_dossier_courant)

Onglet "Niveaux d'accès"

Niveaux d'accès par défaut :
les droits d'accès pour les simples visiteurs et les d'utilisateurs enregistrés. Bien qu'il soit possible d'indiquer les droits lors de l'appel du plugin, il est important de définir ici les cas par défaut. Mon conseil: pour éviter d'afficher une page avec un message d'erreur, il faut définir le menu appelant l'article avec un niveau d'accès en rapport.
Niveaux d'accès dépôt utilisateur (Userbound)
Niveaux d'accès dépôt groupe utilisateurs (Groupbound)
Il est important de définir comment nommer les dossiers personnels et ceux du groupe.
En ce qui me concerne, je mets "Perso" et "Group" comme préfixe avec "username" et "Nom du groupe" comme identifiant du dossier. Cela va créer des dossiers tels que "group auteurs" et "perso lomart". Un espace est automatiquement ajouté entre le préfixe et le nom.

Attention à la dénomination de ces dossiers. Il sera quasi-impossible de les modifier par la suite.

Onglet "Options d'affichage"

Les paramètres de cet onglet définissent comment afficher la liste des fichiers (contenu, tri, taille des vignettes) .

Le plus important est de mettre Conversion UTF-8 sur "Non" pour gérer nos caractères accentués dans les noms de fichiers

Onglet "Téléversement (Upload)"

En 2016, il est préférable d'utiliser la méthode HTML pour envoyer les fichiers sur le serveur

Onglet "Style et mise en forme"

Pour adapter le look de l'explorateur de fichiers, vous pouvez jouer avec les différents paramètres de cet onglet.

Pour avoir une largeur fluide, je vous conseille de mettre "width:100%" pour le paramètre "Largeur de l'affichage principal"

Si vous rencontrez un problème d'alignement des colonnes, vous pouvez modifier la ligne 2297 de \plugins\content\jsmallfib\jsmallfib.php en attribuant la valeur 7 (au lieu de 8) à $rowColspan.

Pour personnaliser l'affichage vous pouvez créer votre set d'icônes dans un sous-dossier du dossier '/plugins/content/jsmallfib/media' puis de le choisir dans le paramètre 'Set d'icônes'

Onglet "Journaux d'activités"

JSmallfib permet de suivre l'activité du plugin dans des journaux (logs).
Cet onglet permet de sélectionner les informations à mémoriser, ainsi que les paramètres pour l'envoi (optionnel) d'emails.

Onglet Paramètres avancés

Permets d'indiquer des auteurs de confiance, les autorisations d'accès aux fichiers et dossiers (chmod), un lien vers l'auteur et l'affichage d'informations de débogage.  

 Gestion des dossiers personnels et de groupes

JSmallfib peut automatiquement  créer un dossier par utilisateur ou par groupe d'utilisateur.

Vous devez uniquement créer un article contenant la commande {jsmallfib [USERBOUND]} pour qu'un utilisateur accède à son dossier personnel. {jsmallfib [GROUPBOUND]} permets à un utilisateur d'accéder au dossier commun aux membres de son (ou ses) groupe(s).

Je vous conseille également de créer un article réservé aux gestionnaires avec {jsmallfib} pour qu'ils puissent accéder à tous les dossiers.

Bien entendu, pour afficher ces articles , il faut ajouter des menus accessibles aux utilisateurs concernés. Vous pouvez également modifier les droits définis dans les paramètres du plugin dans la ligne de commande (voir le PDF guide utilisateur en anglais).

Les dossiers seront créés comme sous dossiers du répertoire de base de JSmallfib (voir paramètres/Options dépôt).  Je vous conseille de définir un préfixe (perso ou group) avec le nom de connexion ou de groupe comme paramètre. De cette façon, le dossier pour l'utilisateur UNTEL sera "perso untel" ou "group client"

Mes conseils pour la configuration de base

Sur une installation neuve de jsmallfib, vérifier/modifier les paramètres suivants :

  • Les points sont repérés par un petit losange devant le libellé
  • les mots en gras sont à taper littéralement, ceux en normal sont des indications
  • Si vous avez installé une version FR du plugin, ces options sont définies par défaut
Onglet Paramètre Valeur
Options dépôt Chemin par défaut jsf_files (jsmallfib_top par défaut)
Type de chemin relatif
Niveaux d'accès Visiteurs à vous de choisir
Utilisateurs enregistrés à vous de choisir
Utilisateur - Préfixe Perso
Utilisateur - identifiant dossier Nom utilisateur
Groupe - Préfixe Group
Groupe - identifiant dossier Nom du groupe
Affichage Conversion UTF-8 Non - Très important pour le français
Upload Méthode envoi fichiers HTML - Important
Style et mise en forme Largeur bloc principal width:100% pour être responsive

Téléchargement

Le plugin n'étant plus disponible sur le web, je le propose ci-dessous en téléchargement.

La version proposée est la version d'origine, sauf pour la partie configuration pour laquelle j'ai changé les valeurs par défaut pour les adapter à la langue française (UTF8), au responsive et au mode d'upload utilisé en 2016. Ceci permet d'utiliser le plugin sans toucher aux paramètres pour découvrir le plugin.

J'ai également terminé et complété le fichier de traduction afin d'apporter le maximum d'aide lors du survol d'un paramètre par la souris. Les points importants pour la configuration sont signalés par un petit losange () devant le libellé et ceux sans intérêt par une croix ().

Les traductions DK, DE, GB, ES, IT, NL, PT et SE sont fournies (sans mes ajouts) dans le fichier zip.

J'ai supprimé les liens obsolètes. Si vous avez des informations sur ce plugin, je me ferai un plaisir de les publier.

Téléchargements

Compatible Joomla 4

Compatible Joomla 4

documentation

Print Friendly and PDF