=== FileBridge ===
Contributors: organifox
Donate link: https://organifox.com
Tags: file transfer, file sharing, large files, gdpr, customer portal
Requires at least: 5.8
Requires PHP: 7.4
Stable tag: 1.3.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Transfert de fichiers volumineux sécurisé entre une entreprise et ses clients, avec expiration automatique des liens et conformité RGPD intégrée.

== Description ==

FileBridge organise les échanges de fichiers volumineux entre une entreprise (un « utilisateur société ») et ses clients (rôle « Customer ») directement depuis WordPress, sans dépendre d'un service tiers.

= Fonctionnalités =

* **Upload par morceaux (chunks)** : les fichiers volumineux sont découpés côté navigateur avant l'envoi, ce qui contourne les limites `upload_max_filesize`/`post_max_size` du serveur et permet de reprendre un chunk en cas d'interruption réseau.
* **Liens à durée de vie limitée** : chaque transfert expire automatiquement après un nombre de jours configurable, et se ferme après un nombre défini de téléchargements.
* **Espace client en self-service** : tableau de bord, envoi de fichiers, historique des transferts (envoyés/reçus, filtrable), profil avec changement de mot de passe — sans jamais donner accès à `wp-admin` aux customers.
* **Notifications email** : à l'envoi, au premier téléchargement, et rappel automatique avant expiration.
* **Quotas par utilisateur** configurables par l'administrateur, avec libération automatique de l'espace à l'expiration.
* **Journal d'activité** : traçabilité de chaque action (envoi, téléchargement, révocation) avec adresse IP, consultable depuis le tableau de bord admin.
* **Vérification réelle du type de fichier** à l'upload (lecture de la signature binaire, pas seulement de l'extension) pour bloquer les fichiers exécutables déguisés.
* **Conformité RGPD intégrée** : export et effacement des données personnelles branchés sur les outils natifs de WordPress (*Outils → Exporter/Effacer les données personnelles*), texte suggéré pour la politique de confidentialité, anonymisation automatique des adresses IP après un délai configurable.
* 100 % gratuit, sans palier payant ni limite artificielle.

= Comment ça marche =

1. L'administrateur désigne un « utilisateur société » dans les réglages : c'est le point central des échanges.
2. Chaque customer envoie ses fichiers à l'utilisateur société, qui peut lui-même envoyer des fichiers à n'importe quel customer.
3. Le destinataire reçoit un email avec un lien sécurisé, valable jusqu'à expiration ou atteinte de la limite de téléchargements.

== Installation ==

1. Téléversez le dossier `filebridge` dans `/wp-content/plugins/`, ou installez directement depuis l'administration WordPress.
2. Activez le plugin depuis le menu **Extensions**.
3. Rendez-vous dans **Transferts → Réglages → Général** et sélectionnez l'utilisateur société.
4. Créez des comptes avec le rôle **Customer** depuis **Utilisateurs → Ajouter** (ou laissez vos clients s'inscrire selon votre configuration).
5. Les pages nécessaires (connexion, tableau de bord, envoi, transferts, profil, aide) sont créées automatiquement à l'activation et peuvent être déplacées librement.

== Frequently Asked Questions ==

= Les customers ont-ils accès à wp-admin ? =

Non, l'accès à `wp-admin` leur est automatiquement bloqué. Tout se passe depuis leur espace personnel en front-end, y compris le changement de mot de passe.

= Où sont stockés les fichiers ? =

Dans `wp-content/uploads/pft-transferts/`, un dossier protégé contre l'accès HTTP direct. Tous les téléchargements passent par une vérification des droits avant d'être servis.

= Que se passe-t-il quand un transfert expire ? =

Les fichiers sont supprimés automatiquement du serveur par une tâche planifiée quotidienne, et le quota de l'expéditeur est libéré.

= Le plugin est-il compatible RGPD ? =

Oui : export et effacement des données personnelles sont branchés sur les outils natifs de WordPress, et les adresses IP du journal d'activité sont anonymisées automatiquement après un délai configurable (180 jours par défaut).

= Puis-je changer les limites (taille, nombre de fichiers, durée d'expiration) ? =

Oui, tout est configurable depuis **Transferts → Réglages**, sans plafond imposé par le plugin.

== Screenshots ==

1. Tableau de bord administrateur
2. Espace personnel du customer
3. Formulaire d'envoi avec glisser-déposer
4. Réglages du plugin

== Changelog ==

= 1.3.1 =
* Sécurité : vérification réelle du type de fichier à l'upload (signature binaire, plus seulement l'extension) ; le `Content-Type` servi au téléchargement n'est plus déclaré par le client.
* Sécurité : correction d'une condition de course sur le compteur de téléchargements (incrément SQL atomique).
* Sécurité : `.htaccess` du dossier d'upload compatible Apache 2.2 et 2.4+, avec alerte admin si le dossier est réellement exposé.
* UI/UX : mot de passe en libre-service sur la page Profil, cards cliquables sur les tableaux de bord, libellés « Télécharger »/« Téléchargements » clarifiés.

= 1.3.0 =
* Conformité RGPD native (export/effacement des données personnelles, politique de confidentialité suggérée, anonymisation automatique des IP).
* Habillage visuel des pages admin et de l'aide.

= 1.2.0 =
* Retrait complet du système de licence : FileBridge devient 100 % gratuit, sans palier Free/Pro.

== Upgrade Notice ==

= 1.3.1 =
Mise à jour de sécurité recommandée : vérification renforcée des fichiers uploadés et correction d'une condition de course sur le compteur de téléchargements.
