=== BeeHive Events ===
Contributors: beehive
Tags: events, agenda, the events calendar, events manager, beehive
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 0.1.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Publiez automatiquement les événements de votre site sur BeeHive, et affichez vos événements BeeHive sur votre site.

== Description ==

BeeHive Events relie votre site à votre espace établissement BeeHive.

**Synchronisation.** Les événements créés avec The Events Calendar ou Events Manager sont envoyés sur BeeHive dès leur enregistrement :

* un événement publié est créé sur BeeHive, puis vérifié par la modération avant sa mise en ligne ;
* une modification est appliquée sur BeeHive ;
* un événement mis à la corbeille, en brouillon ou en privé est mis hors ligne sur BeeHive ;
* un événement annulé (Events Manager, The Events Calendar) reste sur BeeHive avec « ANNULÉ » devant son titre, sans lien de billetterie ; rétabli, il retrouve son titre ;
* un événement reporté (The Events Calendar) est mis hors ligne jusqu'à ce qu'il soit de nouveau prévu ;
* un événement supprimé définitivement est supprimé de BeeHive (restaurable 30 jours depuis votre espace établissement) ;
* l'image à la une devient la couverture de l'événement.

L'envoi se fait en arrière-plan : enregistrer un événement n'est jamais ralenti, même si BeeHive ne répond pas. Les envois en échec sont repris automatiquement.

**Affichage.** Le shortcode `[beehive_events]` affiche les événements à venir de votre établissement publiés sur BeeHive, quelle que soit leur origine. Synchronisation et affichage fonctionnent ensemble, avec la même clé.

**Mode test.** Avec une clé de test, rien n'est enregistré chez BeeHive : chaque envoi est vérifié et son résultat s'affiche dans le menu BeeHive de l'administration. Passez à la clé de production quand tout est prêt.

= Limites =

* Les événements récurrents ne sont pas encore pris en charge : ils restent sur votre site sans être envoyés.
* Les événements passés ne sont jamais envoyés.
* Le tarif est lu dans The Events Calendar (champ « Coût ») ; Events Manager n'en fournit pas.
* Par sécurité, BeeHive suspend une connexion qui retire ou modifie un grand nombre d'événements en peu de temps. Si vous en retirez ou modifiez beaucoup d'un coup (corbeille, suppression, changement de catégories, lieu modifié), l'extension envoie les changements progressivement et vous prévient ; ceux qui attendent partent automatiquement.

== Installation ==

1. Dans votre espace établissement BeeHive, page **Intégrations**, créez une connexion en choisissant **Envoyer et afficher mes events**. Choisissez **Afficher seulement** si votre site ne fait qu'afficher vos événements BeeHive : sa clé ne pourra rien publier, même si le site est piraté. Copiez la clé de test et la clé de production : elles ne sont montrées qu'une fois.
2. Dans WordPress, **Extensions > Ajouter > Téléverser une extension**, choisissez le fichier zip, puis activez l'extension.
3. Dans le menu **BeeHive** de l'administration, collez les clés et choisissez une catégorie par défaut.
4. En mode test, cliquez sur **Envoyer les événements à venir** et vérifiez les résultats.
5. Passez en mode **Production**, puis cliquez de nouveau sur **Envoyer les événements à venir**.

Si votre hébergement désactive WP-Cron (`DISABLE_WP_CRON`), une tâche cron système doit appeler `wp-cron.php` régulièrement, sans quoi les envois n'ont lieu qu'au clic sur **Synchroniser maintenant**.

== Frequently Asked Questions ==

= Ma clé est-elle en sécurité ? =

Les clés sont stockées dans la base de données de votre site, ne sont jamais réaffichées et ne sont jamais envoyées au navigateur des visiteurs. Seuls les administrateurs accèdent aux réglages. Au moindre doute, régénérez la clé depuis votre espace établissement : l'ancienne cesse aussitôt de fonctionner.

= J'ai copié mon site (préproduction, sauvegarde) : que se passe-t-il ? =

L'extension détecte que l'adresse du site a changé et met la synchronisation en pause, pour que la copie ne modifie pas vos événements BeeHive. Sur la page BeeHive de la copie, choisissez « C'est une copie : retirer la clé de production ».

= Comment l'extension se met-elle à jour ? =

Comme les autres extensions : WordPress signale les nouvelles versions dans la page Extensions, et vous pouvez activer les mises à jour automatiques. Chaque version est signée par BeeHive ; une version dont la signature n'est pas valide est refusée.

= Désactiver ou supprimer l'extension supprime-t-il mes événements BeeHive ? =

Non. Les événements déjà publiés restent sur BeeHive et se gèrent depuis votre espace établissement. La suppression de l'extension efface seulement ses réglages et ses données de ce site.

= Pourquoi un événement est-il « En modération » ? =

Chaque nouvel événement est vérifié avant sa mise en ligne sur BeeHive. Son statut se met à jour automatiquement dans la liste de la page BeeHive.

== External services ==

Cette extension se connecte à l'API de BeeHive (https://api.beehiveevents.app), un service de BeeHive, pour publier vos événements et lire vos événements publics. Rien n'est envoyé tant qu'aucune clé n'est enregistrée.

Données envoyées, à chaque enregistrement d'un événement des extensions d'événements détectées (et lors de l'envoi initial que vous déclenchez) : titre, description, dates et heures, lieu et adresse, coordonnées si Events Manager les fournit, catégorie, mots-clés, tarif, lien de billetterie, adresse de la page de l'événement sur votre site, langue, image à la une et son texte alternatif. Chaque requête porte l'adresse de votre site dans l'en-tête User-Agent.

Mises à jour : toutes les 12 heures au plus, l'extension lit https://beehiveevents.app/downloads/wordpress/beehive-events.json (numéro de la dernière version), puis télécharge la nouvelle version si vous la mettez à jour. Cette requête porte l'adresse de votre site dans l'en-tête User-Agent, comme les autres.

Données lues : l'état de la connexion et le quota (à l'enregistrement d'une clé et sur la page BeeHive), les catégories, le statut de vos événements (toutes les heures) et, si vous utilisez le shortcode, vos événements publics (toutes les 15 minutes au plus).

Conditions d'utilisation : https://beehiveevents.app/fr/cgu
Politique de confidentialité : https://beehiveevents.app/fr/confidentialite

== Changelog ==

= 0.1.0 =
* Première version : synchronisation The Events Calendar et Events Manager, mode test, affichage par shortcode, événements annulés et reportés, mises à jour signées depuis beehiveevents.app.
