Réservation d’événements

Ce plugin permet d’offrir aux visiteurs de s’inscrire pour un évènement du plugin Agenda et de gérer les réservations enregistrées.

Recherche de repreneur

Je ne suis plus suffisamment impliqué dans spip pour assurer un maintien correcte de ce plugins, Donc si quelqu’un veuille reprendre la main, c’est avec plaisir.

Installation

Le plugin s’installe comme n’importe quel plugin.

il nécessite :

Introduction

Une réservation comporte deux parties :

  • La partie principale qui contient les données générales, comme les coordonnées, la date et référence de la réservation - la réservation proprement dit.
  • à cette réservation est/sont attaché/s le/s détail/s de la réservation contenant les informations relatives à l’évènement réservé.

Une réservation peut donc contenir plusieurs détails de réservation, mais en nécessite au minimum un.

Configuration

Statut par défaut
Configurez d’abord votre plugin en commençant par le statut par défaut de chaque réservation (si rien n’est choisi, le statut par défaut sera dans liste d’attente)

Le(s) Statut(s) complet(s)
Si vous comptez utiliser la limitation de places pour les réservations, choisissez le/s statut/s qui entre/nt en compte pour déterminer si un événement est complet. Lors d’un changement de statut vers un des « statuts complets », le plugin déterminera alors si il reste des places disponibles, sinon il mettra le statut à « en liste d’attente ».

Calculer automatiquement le statut accepté de la réservation
Si activé, lors d’un changement de statut vers accepté, le plugin vérifiera si tous les détails de réservation ont le statut accepté, sinon la réservation sera mis en « accepté partiellement ».

Notifications
Vous pouvez ensuite activer l’envoi automatique des notifications de réservations aux vendeurs/administrateurs du site.

Paramètres des notifications
Déclenchement
Définissez alors quel changement de statut déclenchera une notification et les autres paramètres de notifications

Client
Vous pouvez également activer l’envoi d’un mail de notification au client.

Vous avez la possibilité de « Permettre d’envoyer les notifications à plusieurs destinataires ». Si activé, un champ supplémentaire s’ajoutera aux formulaires de réservation permettant d’ajouter des adresses emails (séparés par comma)

Activer le mode Envoi Séparé pour le statut
Par défaut, le changement de statut d’un détail de réservation ne déclenche pas d’envoi de mail. Si vous voulez pouvoir envoyer des notification séparés pour chaque détail de réservation, activez le pour le statut souhaité.

Clôturer automatiquement une réservation
Vous pouvez programmer la clôture automatique d’un évènement.

Si activé, un champ Clôture automatique s’affichera dans vos formulaire d’édition d’articles et d’évènements.
Afin qu’un évènement soit clôturé automatiquement, il faut l’activer au niveau de l’évènement.
Si activé au niveau de l’article, tout nouveau évènement de cet article aura la Clôture automatique activé par défaut.

Chaque évènement pour lequel la Clôture automatique est activé sera déclaré comme clôturé quand la date fin est atteinte et les détail de réservation concernés ayant le statut accepté seront mis en statut clôturé.
Si vous voulez envoyer une notification lors de la clôture de l’évènement, ajoutez le statut clôturé sous Paramètres des notifications/Déclenchement.

Permettre au visiteur de s’enregistrer lors d’une réservation
Si activé, le visiteur peut choisir de s’enregistrer et de créer un compte auteur spip (statut visiteur) avec login et mot passe, ce qui lui permettra d’effectuer de nouvelles réservation dans devoir renseigner à nouveau ses coordonnées.

Cette option peut être rendu obligatoire.

Un visiteur enregistré sera logué automatiquement après la réservation

Créer les évènements ouverts à l’inscription

Saisissez d’abord un évènement.
Nativement le plugin agenda prévoit une case inscription en ligne et Limiter le nombre de places qui seront utilisé par ce plugin.

Pour que l’évènement soit pris en compte par ce plugin, il faut cocher inscription en ligne.

Si vous prévoyez de limiter le nombre d’inscriptions, remplissez le champ Limiter le nombre de places. Laissez vide si vous ne voulez pas imposer de limite.
Si vous avez indiqué un nombre limite, lors de chaque réservation sera alors calculé le nombre de détails de réservation pour cet évènement ayant le statut correspondant au/x Statut(s) complet(s) définit dans la Configuration. Si ce nombre dépasse celui prévu dans Limiter le nombre de places, le détail de réservation obtiendra le statut dans liste d’attente.

Gestion des champs extras

Le plugin intègre automatiquement les champs extras auteurs et réservation ajoutés via le plugin Champs extras

Gestion de prix

  • Créez un champ extra prix pour vos articles ou vos événements. (Il est alors conseillé d’installer le plugin API Prix afin de mieux gérer les formats de prix, surtout pour un site multilingue).
  • Installez le plugin Prix Objets puis activez dans la configuration les objets articles et évènements.

Le plugin vérifie d’abord si il existe un prix fournis par Prix Objets, sinon il cherchera un champs prix (ou prix_ht si API Prix est installé).

Un prix définit au niveau de l’article s’applique à tous ses évènements qui n’ont pas de prix définit.

Vous pouvez également utiliser le plugin Déclinaisons Prix afin de déterminer plusieurs prix par événement.

Formulaire public

Squelettes

<div class="ajax">
        #FORMULAIRE_RESERVATION{#ENV{id_evenement},#ENV{id_article}, #ENV{retour}, #ENV{options}}
</div>

Les variables ne sont pas nécessaire :

  • Les deux premiers servent à limiter l’étendu du formulaire. Il peut s’agir d’un seul id ou d’un tableau de plusieurs id. Si rien n’est mis, tous les événements sont prix en compte.
  • La troisième variable permet de renseigner une url de redirection.
  • La quatrième définit un tableau d’options. Seule l’option « id_evenement_source » est disponible actuellement. Elle permet de définir comment traiter les événements répétés :
    • Par défaut (pas d’option « id_evenement_source ») les événements sont groupés. Une réservation pour l’ensemble des événements répétés est proposé.
    • Pour une réservation pour chaque événement répété il faudrait mettre
      #ARRAY{id_evenement_source,''} 

Modèle

<reservation|>

Si ce modèle est placé dans un article, le formulaire affichera uniquement les évènements futurs de cet article.

Pour afficher seulement le formulaire d’un seul évènement.

 <reservation|id_evenement=#ID_EVENEMENT>

Gestion des réservations

Rendez vous sur Activité>Réservations pour trouver une liste des réservations effectuées.

Le menu de la colonne de gauche vous permet de classer les réservations par événement ou par article.

Pour chaque événement ou article il est ainsi possible de visualiser et télécharger les différents réservation effectuées, classées par statut.

Vous retrouverez ces informations également dans la colonne gauche des pages rubriques, articles et événements dans l’espace privé

Extensions

Ce plugin peut être complémenté avec :

Discussion

88 discussions

  • 23

    Bonjour Rainer,

    J’ai essaye avec spip 3.1 l’utilisation de reservation_bank, et ai fait des essais en echec avec Paypal.

    Est-ce que reservation_bank est totalement incompatible avec spip 3.1 ?

    Merci.

    Julie

    • Je ne l’ai pas testé en 3.1, mais ça devrait l’être.

      Que sont tes erreurs, tu as des logs ?

    • Rebonjour Rainer,

      Je n’ai pas d’erreur dans les logs mais plus des problemes d’url de retour de la banque.
      Les reservations se font, les boutons permettent de commencer le paiement mais on revient systematiquement sur la page d’accueil et pas sur des squelettes de retour comme bank_retour_ok ou bank_retour_echec . Mes essais de rentrer url_retour_ok et url_retour_echec dans inclure/paiement_reservation.html n’ont pas eu d’effet probant.

      -  Dans le cas paypal simple : le paiement se fait mais la transaction dans spip est anonyme (fait en etant connectee) et non payee.
      J’ai configure le compte sandbox Paypal avec une adresse retour a la page inscription mais ce n’est pas pris en compte.

      -  Dans le cas paypal express : comme il faut une validation et que l’on ne revient pas sur la page inscription pour confirmer le paiement , le paiement n’est pas fait et la transaction est logiquement non payee, mais elle reste aussi anonyme (fait en etant connectee)

      Merci

      Juile

    • Il me semble que les problèmes sont plutôt au niveau de bank, car reservation_bank n’intervient pas sur cela.

      Dans la config de bank/paypal, qu’est-ce que tu as comme comme url de renvoi ? Il faudrait qc comme « https://domaine.ext/bank.api/paypal-57B8/autoresponse/ »

      Est-ce que tu utilises spipr ?

    • Bonjour Rainer,

      Oui, en effet, bien vu !, l’adresse de renvoi restait a http://domaine.ext. Je pense que Paypal a du invalider
      le compte sandbox.
      J’ai donc modifie pour un compte sandbox deja actif sur un autre site et
      l’adresse de renvoi est desormais correcte et le paiement est fait et les statuts et attributions sont
      mises a jour pour les transactions et les reservations.

      Tout est ok pour Paypal simple.


      Un probleme subsiste avec Paypal Express, qui requiert une validation de paiement sur le site vendeur.
      Le retour a lieu sur la page inscription, mais cette page reste blanche et ne propose pas de bouton de validation de commande.

      Pour valider Paypal dans ce mode Express, j’ai installe le plugin tutocommerce sur le meme site, et dans ce cas au retour
      il y a affichage des coordonnees de l’acheteur et aussi du bouton qui termine l’achat.

      L’url de retour semble etre basee sur #SELF lors du premier click sur le bouton Paypal

      voici la comparaison des urls reservation/tuto lors de ce retour :

      tutocommerce : apres retour de Paypal Express :
      http://domain.ext/spip.php?page=demo/tutocommerce&etape=paiement&confirm=oui&checkout=http://domain.ext/spip.php?action=paypalexpress_checkoutpayment&arg=W6GH6U3AKQ5FC-paypalexpress-0BB6&hash=f90b7dca51dc91299c390f34ab30f5c46cc918e1
      Vous allez payer avec :

      Paiement par compte Paypal :
      test buyer,julie_xxx_@xxxx.com
      Validez pour effectuer maintenant le paiement avec ce compte

      http://domain.ext/spip.php?page=demo/tutocommerce&etape=retour&paiement=succes&type=acte&id_transaction=32&transaction_hash=3811278238

      Commande n° 19 / Transaction n° 32
      Votre règlement a bien été pris en compte, et nous vous en remercions.
      Nous avons bien enregistré votre commande 1488005415, et nous la traitons dans les meilleurs délais.


      reservation : tutocommerce : apres retour de Paypal Express :

      http://domain.ext/?page=inscription&id_auteur=1&id_evenement[]=3&confirm=oui&checkout=http://domain.ext/spip.php?action=paypalexpress_checkoutpayment&arg=W6GH6U3AKQ5FC-paypalexpress-0BB6&hash=f90b7dca51dc91299c390f34ab30f5c46cc918e1

      Inscription (titre sur page blanche)

      -----
      Meme en changeant id_evenement[]=3 en id_evenement=3 dans l’url ca ne donne rien de plus


      Y a t’il donc un autre parametre de configuration que j’ignore ?
      — -
      Ceci se passe sous Spip 3.1 avec Spipr

      Bon weekend,

      Julie

    • Apparemment reservation_bank ne peut pas encore fonctionner avec express. Je vais regarder ça.

    • Salut Julie,
      je viens de faire une petite modif (grâce à tes testes, simple à trouver). Mais je n’arrive pas à utiliser mon compte sandbox. peux tu refaire un teste ?

    • Ok Rainer,

      C’est un protocole un peu different.
      Merci pour ta reactivite.

      Julie

    • Salut Rainer,

      J’ai desinstalle reservation bank et installe la version nouvelle.
      J’ai ensuite, apres vidage du cache, refait deux fois le meme test que precedemment, mais le resultat n’a pas change
      http: //domain.ext/ ?page=inscription&id_auteur=1&id_evenement[]=3&confirm=oui&checkout=http%3A%2F%2Fdomain.ext%2Fspip.php%3Faction%3Dpaypalexpress_checkoutpayment%26amp%3Barg%3D6K9J4QFA56JHU-paypalexpress-0BB6%26amp%3Bhash%3D1f14c3188b35c6c10656967a8698856c009ebd66

      Inscription (titre sur page blanche)

      Julie

    • Salut Julie,

      il faut que je me prends le temps pour analyser ça plus en profondeur. J’ai fait une petite modif dans le code qui pourrait résoudre le problème, sinon il faudrait que tu te patiente un peu.

      Rainer

    • Bonjour Rainer,

      Pas de probleme. Je comprends bien.

      J’ai fait hier quelques tests en paypal simple.

      Pour memoire, voici quelques points importants en backoffice :
      -  les transactions n’ont pas le numero de reservation qui les concerne d’affiché
      -  les reservations n’ont pas le listing de la transaction faite pour les payer
      -  le statut des reservations payees ne passe pas a « payé »

      Je testerai paypal express des que possible

      Bonne journee

      Julie

    • Salut Julie,

      les transactions n’ont pas le numero de reservation qui les concerne d’affiché

      Oui j’ai remarque ça, mais pas encore trouvé une manière élégante pour y remédier.

      les reservations n’ont pas le listing de la transaction faite pour les payer

      Dans la liste des réservations tu as as déjà le lien « payer » (voir print screen). Je trouve que ça n’apportearait pas beaucoup et encombrerai trop l’interface.

      le statut des reservations payees ne passe pas a « payé »

      En faisant quoi, le retour de paypal ? Paypal express ? Quel statut ils ont ?

      Rainer

    • Rebonjour Rainer,

      Ta petite modification a etre tres efficace pour Paypal Express. Merci !
      On retombe bien desormais sur la page inscription avec un bouton de validation
      Et le paiement est bien effectue :
      Règlement réussi
      Votre règlement a bien été pris en compte, et nous vous en remercions.

      -  Outre les points deja evoques dans le post precedent, il y a une anomalie recurrente,
      que j’ai vu aussi en utilisant Paypal simple.
      En plus de la creation de la transaction ok, il y a generation d’une dizaine de transactions fantomes a payer
      en quelques secondes. Ca semble se passer au retour, apres paiement complet, car il y a 2 ou 3 minutes
      entre le timing de la vraie transaction ok , et la serie des autres .

      voici un listing de ces transactions pour exemple :

      N°  Auteur ModeAutorisationHT TTC Réglé Date Statut C
      86 @ 18 18 2017-02-28 04:18:11 commande Payer
      85 @ 18 18 2017-02-28 04:17:58 commande Payer
      84 @ 18 18 2017-02-28 04:17:58 commande Payer
      83 @ 18 18 2017-02-28 04:17:58 commande Payer
      82 @ 18 18 2017-02-28 04:17:58 commande Payer
      81 @ 18 18 2017-02-28 04:17:58 commande Payer
      80 @ 18 18 2017-02-28 04:17:58 commande Payer
      79 @ 18 18 2017-02-28 04:17:58 commande Payer
      78 @ 18 18 2017-02-28 04:17:36 commande Payer
      77 @ 18 18 2017-02-28 04:17:36 commande Payer
      76 @ 18 18 2017-02-28 04:17:36 commande Payer
      75 @ 18 18 2017-02-28 04:17:36 commande Payer
      74 @ 18 18 2017-02-28 04:17:36 commande Payer
      73 @ 18 18 2017-02-28 04:17:36 commande Payer
      72 @ 18 18 2017-02-28 04:17:36 commande Payer
      71 @paypal_test B1E0 08149449YR70896 18 18 18.00 2017-02-28 04:14:54 ok

      Voila,

      En esperant que ca puisse t’aider un peu.

      Julie

      PS : j’ai ecrit ce message avant de lire ta derniere reponse.
      Je vais faire quelques verifications avant de te donner ces precisions

    • Je ne reproduis pas, peux tu vérifier sur la page transaction (/ ?exec=transactions#pagination_transactions) pour quelle réservation ces transactions se sont faits

    • Ok Rainer,

      exec=transactions :
      pour les commandes de produits j’ai un numero de commande, c’est simple.
      mais pour les transactions de resa : il n ’y a pas d’ info la reliant a une reservation

      -  En fait, c’est l’acces a cette page : ?exec=reservations qui me cree a chaque fois 8 fausses transactions avec le prix de la derniere effectuee

      -  le click sur payer : ?exec=reservation&id_reservation=22

      cree une fausse transaction a chaque fois
      et donne une page vide avec le message : erreur aucune commande

      Collision avec le plugin commandes ?

    •  ?exec=reservations crée des transaction pour toute réservation en statut « an attente du paiement » et qui n’as pas encore de transaction ouverte.

      le lien de paiement devrait resembler au suivant
       ?exec=payer_reservation&id_transaction=716&transaction_hash=1217625082&id_reservation=690

      peux tu recharge ta page avec ctrl F5 et retester le lien ?

    • Julie B.

      Oui Rainer,

      J’aurais pense que la creation d’une transaction passait par une action bank.
      Tu as surement des raisons de proceder comme cela.
      Pourquoi les transactions doivent-elles etre crees pour les statuts en attente de paiement ?
      Un paiement ulterieur ne pourrait-il pas simplement creer cette transaction au moment du paiement effectif ?

      La creation de transactions vides est genante, car je n’ai pas trouve comment les supprimer, et il y en a beaucoup :-) .

      J’ai donc verifie l’url :
      ecrire/ ?exec=payer_reservation&id_transaction=219&id_reservation=24

      Il n’ y a pas de hash

      Julie

    • C’est une action bank, mais légèrement adapté (possibilité de déterminer le montant payé pour chaque détail de réservation). Je vais regarder ce qui se passe avec les transaction. Tu peux regarder dans la bd , table spip_transactions quel id_reservation ont ces tranwactions fantômes (regarde également si un id_commande est enregistré).

    • Julie B.

      Ok Rainer,
      les id_commandes sont tous a 0 , comme j’ai desinstalle le plugin commandes.
      Voici un tableau avec la transaction ok faite sous paypal express ,
      et la serie de fantomes suite a visite de ?exec=reservations

      id_tx /id_reservation/heure/statut
      231/ 28 / 06:44:22 OK
      232/ 27/ 06:45:46
      233/ 26/ 06:45:46
      234/ 25/ 06:45:46
      235/ 22/ 06:45:46
      236/ 23/ 06:45:46
      237/ 22/ 06:45:46
      238/ 21/ 06:45:46
      239/ 20/ 06:45:46
      240/ 19/ 06:45:46

      (la numerotation des reservations est inversee)
      les resas referencees existent : la 28 est la bonne qui est acceptee
      les 19-27 sont des resas faites dans le passe du 26 fevrier au premier mars de statut en liste d attente.

      Si je mets en mode non-groupe, il n’y a plus (mes premiers essais) de generation de transactions fantomes.
      c.a.d :
      incription.html avec :

      	#FORMULAIRE_RESERVATION{#ENV{id_evenement},
      				#ENV{id_article},
      				#ENV{retour},
      				#ARRAY{id_evenement_source,''}}

      Julie

    • Julie B.

      OOps Rainer,

      Meme avec degroupage , j ai eu 5 transactions fantomes inexpliquees.
      Mais, c est unique, et contrairement aux cas precedents, ce n’est pas
      systematique. Je n’arrive pas a le reproduire.

      Peut-etre que le click sur « payer » devrait seul pouvoir creer une transaction pour la
      resa si elle n’existe pas ( et ceci donc juste avant de montrer les boutons paypal).
      Tout echec ou abandon de paiement devrait la supprimer.
      En back office, c’est plus simple peut-etre car il y a deja ce lien « payer ».
      Mais, en front office, il faudrait alors un bouton « payer » pour creer la
      transaction seulement si on le clique,( ce qui apres seulement declencherait la
      presentation des boutons de paiement).
      Ceci pourrait-il permettre d’eviter d’avoir a creer des transactions en serie pour les resas en
      attente de paiement ?

      My 10 cents,

      Julie

    • Salut Julie,

      merci pour tes tests, je vais regarder ça

      Rainer

    • Salut Julie,

      je reprends les point ouverts :

      Pourquoi les transactions doivent-elles être crées pour les statuts en attente de paiement ?
      Un paiement ultérieur ne pourrait-il pas simplement créer cette transaction au moment du paiement effectif ?

      En fait, je répondais un peu vite, un paiement est proposé quand il y un montant à payer > 0.

      J’ai donc verifie l’url :
      ecrire/ ?exec=payer_reservation&id_transaction=219&id_reservation=24
      Il n’ y a pas de hash

      C’est corrigé, il devrait toujours y avoir une url correcte avec hash.

      Concernant les transactions « fantômes ». Moi je ne découvre rien d’anormal dans mes testes.

      sur la page ?exec=reservations, pour chaque réservation il est testé s’il y une commande ouverte (statut commande,attente). Sinon, s’il reste un monstan à payer, une transaction est crée.

      Quand le plugin reservation_bank est activé et le formulaire public proposé, après un enregistrement d’une réservation une transaction est crée.

      Donc si reservation_bank est ajouté après coup (quand il y a déjà des réservation enregistrés) et qu’on se rend sur la page ?exec=reservations ; une transaction sera crée pour chaque ancienne réservation affiché (qui ne dispose pas encore de transaction).

      Tes transactions « fantômes » correspondent au réservations faites avant l’installation du plugin bank_reservation ?

    • Julie B.

      Merci Rainer pour ces explications,

      Je vais verifier de plus pres, des que possible, pour pouvoir te repondre.

      Julie

    • Julie B.

      Bonjour Rainer,

      J’ai donc verifie les dates des dernieres transactions « fantomes » et elles sont en effet pour des reservations plus anciennes de quelques jours aux essais qui ont cree les transactions. Elles sont associees a des reservations non-payees et de montant > 0 .
      Si je supprime une de ces transactions dans la base, le fait de visiter la reservation associee recree la transaction, ce qui correspond a un comportement normal, et qui correspond bien a tes explications.

      Certaines de ces transactions fantomes plus anciennes ont des id_reservations vides, et correspondent a mes premiers posts sur le sujet. Est-ce un effet de bord d’une mauvaise installation ?
      Elles etaient recurrentes a chaque visite de la page reservations, apres un paiement reussi.
      Mais, apres reinstallation du plugin reservations_bank pour les dernieres mises a jour, il n’y a plus ce phenomene.
      Je pensais que c’etait le degroupage qui avait calme le jeu, mais en enlevant inscription.html de mon dossier squelettes, ca reste stable pour le moment.

      Ca semble plutot bien parti.
      Bonne semaine

      Julie

    Répondre à ce message

  • 1
    Pierrot

    Bonjour,

    Petite correction cosmétique possible dans inclure/places_disponibles.html, ligne 8, ajouter un espace dans [ (#GET{disponibles})] pour éviter que le nbre de places disponibles soit collé au «  : ».
    Je peux le faire aussi dans le fichier lang en l’ajoutant au bout de la chaine de langue mais cela a été fait autrement à la ligne 9 du même fichier ... bref c’est un détail :-)

    Pierre

    Répondre à ce message

  • 2

    Rebonjour Rainer,

    Avec la nouvelle version, je n’avais essaye que des inscriptions pour un seul evenement.
    Mais si je tente d’appeler la page inscription et de reserver plus d’un evenement, en tickant 2 boxes par exemple et en etant connectee : c’est un echec, j’obtiens le message : Erreur
    -  si alors je ticke un seul evenement => Cliquer sur Enregistrer ne fait pas l’inscription :
    il n y a pas d’erreur mais le formulaire est a nouveau resservi pour le seul evenement selectionne.
    Alors si je clique sur Enregistrer => C’est ok, la reservation se fait bien

    Si je me deconnecte => pas de probleme je peux bien reserver tous les evenements directement en une seule fois

    (site d’essai avec version reservations 1.23.7 et mon fichier squelettes renomme, plugin prix_objets desactive)

    Bonne journee

    Julie

    Répondre à ce message

  • 2

    Bonjour Rainer,

    A propos de prix, apres installation de prix_objets, je me suis apercue que les prix mis aux evenements etaient ignores. J’ai du mettre id_objet=#ID_EVENEMENT au lieu de id_objet a la premiere boucle de evenement_details pour qu’ils soient pris en compte a l’affichage pour la page evenement et inscription.
    Les prix mis aux articles n’ont pas ce probleme.

    Je n’ai pas pu faire appliquer les devises ajoutees que ce soit au prix des articles ou des evenements :
    -  ils sont systematiquement affiches dans la devise par defaut fixee dans le setting du plugin prix_objet.
    Y a t’il une utilisation incorrecte de ma part ?

    Bonne journee,

    Julie B.

    • Salut Julie,

      Efectivement le plugin n’implémente pas nativement une solution pour gérér les multi devises. Comme tu l’as constate c’est toujours la devise par défaut de prix objet, sinon l’euro qui est choisit.

      Tu peux cependant modifier la valeur de cookie « devise_defaut » mis par prix_objets pour afficher une autre devise. (menu de sélection de devise ou autre mécanisme).

      Est-ce que cela t’avance ?

      Rainer

    • Merci Rainer,

      Je pense que ca devrait etre suffisant pour mes specifs actuelles.

      A plus.

      Julie

    Répondre à ce message

  • 5

    Bonjour Rainer,

    Merci pour la nouvelle version du plugin 1.23.5 :
    Dans l’etat (avec l’option repetition choisie pour #FORMULAIRE_RESERVATION) les problemes restent les memes (repetitions du futur non reservables)
    mais il se produit desormais un message d’erreur.
    C’est a l appel de la page inscription avec un id_evenement (qui est bien en cours).
    Warning : in_array() expects parameter 2 to be array, string given in xxx/ecrire/public/composer.php(92) : eval()’d code on line 30

    J’ai alors modifie le fichier inclure/evenements_details.html selon ton conseil :
    J’ai remplace a la ligne 46, #ID_OBJET par #ID_EVENEMENT
    Alors dans ce cas ca marche ! j’ai bien possibilite de reserver une repetition future dont la date source est dans le passe .
    J’ai aussi le message warning mais il n impacte pas le fonctionnement.

    Je ne sais pas si le « Warning » vient du plugin ou non, mais il semble sytematique a l inscription.

    Bonne journee

    Julie B

    • Salut Julie,

      je vois et je viens de le corriger sur github (https://github.com/abelass/reservation_evenement/archive/master.zip) en attendant que je puisse l’actualiser sur la zone

    • Ça y est, les modifications on été reportés sur la zone

    • Bonjour Rainer,

      J’ai donc essaye la derniere version 1.23.6 sur le site d’essai.
      - l’affichage du statut est desormais ok, pourle bilan sur le site et sur le mail de confirmation.

      -  1) J’ai fait l’essai d’abord sans surcharger de squelettes (donc pour evenements groupes)

      -  Si on tente de s’inscrire pour une repetition du futur (a partir du calendrier) :
      une anomalie :
      on n’a plus le message « Il n’y a actuellement pas d’événement ouvert à l’inscription. »
      On obtient desormais un formulaire de participation :
      mais ll n’ y a pas d’evenement : il n’indique ni le lieu ni la date , rien sur l’evenement
      si on fait enregistrer : on obtient logiquement « Votre saisie contient des erreurs »

      -  2) Pour le mode repetition reservable a part :
      J’ai seulement surcharge inscription.html avec #ENV(options) remplace par #ARRAY{id_evenement_source,''} pour argument du formulaire reservation,

      Ca marche desormais :
      => j’ai pu reserve pour une repetition du futur (10 fevrier) dont l’evenement source etait dans le passe (25 janvier) : la reservation est faite pour la bonne date (la repetition).
      — -

      -  Une autre petite anomalie, qui me laisse perplexe. Je ne sais pas si c’est lie ou non au plugin. (Ca existait deja avec la version precedente)

      La page evenement (si on fait un view-source depuis chrome par exemple) presente
      une ligne vide, puis sur la deuxieme ligne 8 espaces avant le DOCTYPE.
      Sur la page inscription ca se reduit aux 8 espaces.
      Je n’ai pas ce probleme si je suis sous une autre page comme la page d’acceuil par exemple.
      La desactivation du plugin reservation permet de voir une page evenement d’agenda qui n’a pas non plus ce probleme.
      La suppression du directory squelettes ne change rien.
      J’ai verifie sans rien trouver les debuts et terminaisons des .php du plugin reservation , tout semble correct.
      Si tu as une idee ...

      Merci beaucoup pour ces avancees.
      Bonne journee
      Julie B.

    • Salut Julie,

      • concernant le point 1 : je viens de le corriger sur github
      • Les anomalies constatés viennent du squelette événement qui fait un teste si oui ou non spipr est activé, si non inclut un squelette de base pour ne pas provoquer une erreur 404. Agenda ne prévoit pas de squelette de base. J’ai optimisé les squelettes evenement et inscription pour éviter ces lignes vides
    • Bonjour Rainer,

      J’ai reteste ces 2 points : tout est desormais ok sur la version github.
      Merci pour ces corrections et bonne journee

      Julie B.

    Répondre à ce message

  • 4

    Bonjour Rainer,

    Je reviens vers toi pour 2 choses :
    -  Design public d’abord : Dans le plugin reservations_multiples, formulaire /inclure/auteurs_multiples.html, les images ajouter-16.png et enlever-16.png ont été remplacées chez moi respectivement par auteur-new-32.png et auteur-del-32.png, plus visuelles sur petit écran. Voir si tu souhaite l’appliquer.

    -  Fonctionnel Rédacteur ensuite : Malgré le paramétrage ’Permettre de réutiliser une adresse email’ à oui, lors de la saisie, le formulaire privé de saisie de réservation refuse cela.

    Pour le reste, tout me va à merveille. Merci de ces fonctions.
    Amitiés jean.

    • Bonjour Jean,
      -  ok pour les images, mais 24 au lieu de 32
      -  pour « Permettre de réutiliser une adresse email », je viens de faire un teste et ça fonctionne. Qu’est-ce qui se passe exactement ?

    • Pardon, j’avais mal lu ton message. En effet ce n’était pas répliqué dans l’espace privé. C’est corrigé sur github : https://github.com/abelass/reservation_evenement/archive/master.zip

    • Bonjour Rainer,

      Merci de tes corrections.
      Pour les images, j’avais pris une autre dans le même répertoire ;-) C’est Ok pour 24.
      Dès que je peux je vérifie et te redis quoi.
      Amitiés. Jean.

    • Bonjour Rainer,
      Désolé, un peu long pour ma vérif ;-)
      Ta correction est la bonne, le même email peut être utilisé pour plusieurs réservations coté privé aussi. Très pratique en multi-reservation si 1 personne s’occupe d’un groupe.
      Sachant que je n’enregistre pas les convives comme des auteurs.
      C’est super pour moi. Merci.

    Répondre à ce message

  • 6

    Bonjour,

    Cet ensemble de plugins est tres utile.
    Mais je ne parviens pas a reserver separement pour chaque repetition.
    J’ai mis a jour toutes mes versions de plugins sous Spip 3.1.1, mais rien n’y fait.

    J’ai bien modifie le fichier inscription.html selon la contribution de Rainer Muller
    (squelettes/content/inscription.html)
    avec
    #FORMULAIRE_RESERVATION#ENVid_evenement, #ENVid_article, #ENVretour,#ARRAYid_evenement_source

    et c’est bien lui qui est pris en compte en verifiant par SkelEditor.

    Cependant, si l’ evenement source est dans le passe et bien que la reservation demandee soit dans le futur :
    il y a bien la proposition d’inscription, mais apres un click, on obtient la page inscription avec le message

    « Il n’y a actuellement pas d’événement ouvert à l’inscription. »

    -  La page evenement mentionne une plage temporelle par exemple « Du 6 février 2016 (16:30) au 25 février 2017 (18:00) »
    alors qu il ne s agit pas d’ evenement continu mais de 3 repetitions le 6 fevier 2016 le 13 fevrier 2016 et le 25 fevrier 2017

    -  Y-a-t’il un mauvais setting de ma part ?

    -  Pourquoi par defaut la balise #FORMULAIRE_RESERVATIONS agit comme si on reservait pour toutes les repetitions ?
    IL est plus que rare que l’on veuille assister a toutes les sceances d’un meme film par exemple.
    En general, on prend un billet pour une soiree.


    D’ autre part :

    -  Dans tous les cas le Statut affiche reste vide

    -  pour les evenements passes il y a quand meme le bouton s’inscrire sur la page evenement
    il faut le cliquer pour avoir le message « pas d’événement ouvert »
    peut-on eviter alors de proposer le bouton d’ inscription a l utilisateur ?

    Je comprends la complexite et la valeur du travail fait pour la mise au point de ces plugins.
    Je souhaite progressivement passer aux reservations multiples et aux paiements.
    Cependant, je dois d’abord maitriser les elements de base

    Merci beaucoup !

    Julie

    • Bonbjour,

      est-ce que tu as vien mis

      #ARRAY{id_evenement_source,''} 
    • Bonjour et merci Rainer,

      En effet, j’avais bien omis le ’’ dans cette ligne.
      Cependant, apres modification :

      #FORMULAIRE_RESERVATION{#ENV{id_evenement}, #ENV{id_article},
       #ENV{retour},#ARRAY{id_evenement_source,''}} 

      puis ,
      -  vidage du cache,
      -  creation de nouveaux evenements de test
      J’obtiens toujours le meme resultat :
      j’ ai toujours un refus d inscription pour une repetition future
      si l’evenement source est passe.
      La reservation pour une repetition future d’un evenement source futur
      est acceptee mais est affectee a l’evenement source :
      -aucune reservation n’apparait associee a la repetition future .

      J’ai d’autres anomalies :
      si sous ecrire/ ?exec=evenement&id_evenement=13 je clique
      « Liste des inscriptions » , donc depuis la page d un evenement ,
      j ai toujours « Aucun inscrit », et ceci quelque soit l’evenement.
      (et bien apres acceptation des reservations)

      Est-ce un probleme possible a resoudre ?

      Merci beaucoup !

      Julie

    • Bonjour Julie,

      Est-ce que tu as un site teste en ligne pour que je puisse vérifier ?

      Normalement su aucun id_article ou id_evenement es passé dans l’environnement, tu devrais avoir un formulaire avec un champ pour chaque événement répété.

      Liste d’inscription est propre à « Agenda » et ne pas utilisé par ce plugin.

      Le réservations se trouvent dans la colonne gauche au niveau des événements, article et rubriques.

      Bonne journée
      Rainer

    • Bonjour Rainer,

      Je t’ai envoye par mail deux ou trois fois les donnees necessaires pour
      la connexion au site de test .
      mais j’ai l’erreur suivante : « à cause d’un problème technique, l’email ne peut pas être envoyé »


      Donc j’en conclus que ce lien vers « Liste des inscriptions » est a ignorer .

      J’ai a nouveau cree un evenenent le 31 janvier et sa repetition le 20 fevrier
      J’ai fait une reservation pour le 31/01 et une pour le 20/02 : les 2 sont affectees au 31 janvier.

      Pour l evenement du 25 janvier avec repetition le 10 fevrier , il est impossible
      de reserver pour le 10 fevrier car l’evenement source est desormais dans le passe.

      Merci et bonne journee.

      Julie B.

    • Le formulaire marche à nouveau

    • Entre temps le code sur la zone a été actualisé

    Répondre à ce message

  • 2

    Encore moi Rainer,

    Je suis dans les tests d’intégration et je trouve un résultat curieux sur les réservations :
    En config, je n’ai pas demandé l’enregistrement des personnes qui réservent.

    Dans le site privé, quand je crée une réservation en saisissant nom et émail, tout est bon.
    Quand je choisi un auteur, il n’y a aucune information nom et émail d’enregistré dans la table ’reservations’ alors que je les vois sur l’affichage de fin de saisie !!

    De plus, sur le site public, si un auteur signé enregistre une personne autre qu’elle même par changement de coordonnées, ce sont ces données qui sont mises sur sa fiche auteur. Peut-être est-ce volontaire ?

    Amitiés Jean.
    PS : Si tu modifie ’action/editer_reservations_detail.php’, tu peux me prévenir ; j’ai ce script en spécifique pour le moment.

    Répondre à ce message

  • 4

    Bonsoir Rainer,

    J’arrive au bout du 1er jet de mon plugin de regroupement.
    Juste à revoir comment récupérer la clé de regroupement pour établir le lien avec ’reservations_detail’.
    J’utilise pour le moment le pipeline ’post_edition’ invoqué dans ’action/editer_reservations_detail.php’ que j’ai repris chez moi.
    Il y a une faute de frappe dans les appels des pipelines ’pre_edition’ et ’post_edition’ :

    ’id_reservation_detail’ => $id_reservations_detail

    Il manque un ’s’ à reservation de la clé ’id_reservation_detail’

    Une faute qui m’a tenu bien chaud ;-)

    Amitiés Jean.

    Répondre à ce message

  • 3

    Lorsque qu’un événement est complet (statut accepté dans ma config) il est affiché :
    « Complet : Choisissez un autre cours ou inscrivez-vous dans la liste d’attente. »

    Il y a une option pour changez cela en « Complet ! » sans que le formulaire ne s’affiche ou bien il faut bidouiller le code ?

    Lorsque je décoche « réservation en ligne » pour l’événement le formulaire n’est plus affiché mais du coup la liste des inscrits en-dessous non plus.

    Merci

    • Bonjour,

      le « cours » est un vestige de la première utilisation de ce plugin, je vais le changer en événement.

      Le texte est généré par la chaîne de langue « inscrire_liste_attente » que tu peux personnaliser via un fichier lang/local_fr.php dans ton squelette ou plugin. Voir ici

      Pour enlever toute la chaîne de langue tu peux surcharger « inclures/places_disponibles.html »
      en mettant

      #SET{reservations,''} [(#REM)Toutes les résérvations]
      #SET{total,#INCLURE{fond=inclure/compteur_reservations,env}}
      [(#REM)Les disponibilités]
      #SET{disponibles,#PLACES|moins{#GET{total}}}
      
      <div class="disponibles[ (#GET{disponibles}|=={1}|oui)imminent][ (#GET{disponibles}|<={0}|oui)complet]">
      	[(#GET{disponibles}|>{0}|?{
      		<:reservation:places_disponibles:>[(#GET{disponibles})] ,
      		<:reservation:complet:>
      	})]
      </div>
    • OK merci je vais changer la chaîne de langue et voir comment bidouiller pour faire disparaître le formulaire d’inscription quand l’avènement est complet.
      dd

    • Tu seras effectivement obligé de bidouiller une peu.

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom