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

87 discussions

  • Bonjour,

    existe-t-il un plugin qui permettrait de gérer les inscrits à un événement qui ne sont pas passés par le formulaire de réservation mais par panier + commande ?

    Le système evenement + panier + commande fonctionne. Cependant, les informations sur les participants, les inscrits ne sont pas gérés pour le moment. Auriez vous des pistes pour aboutir à un système cohérent ?

    Répondre à ce message

  • 2

    Bonjour,
    Hébergé par SpipFactory, j’utilise Réservation d’évènements et réservations multiples !
    Pb spipfactory est passé en php 8, ce qui semble poser un pb à ces plugins != !
    Y a t’il un paramétrage au niveau php que nous pouvons utiliser pour pallier à ce problème ou es-ce sans solution ?

    Merci,
    Cordialement,
    André

    • Bonjour,
      Je relance cette question !
      Actuellement SpipFactory maintient mes sites en php 7.4 pour que les plugins réservations d’évènements et réservations multiples fonctionnent, ce qui n’est pas très opérationnel les autres sites de la plateforme étant en 8.2 !
      Y aura t’il une évolution pour que cela fonctionne en php 8.2 ou dois-je abandonner ces plugins pour d’autres, si cela existe !

    • Bonjour,

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

    Répondre à ce message

  • Bonjour et merci pour ce plugin... Y a-t-il un retour pour l’utilisation de ce plugin sous spip 4.2 ? Quelqu’un a-t-il déjà essayé en modifiant les bornes de version ?

    Répondre à ce message

  • 3

    Hello Rainer,
    je ne sais pas si tu as vu mais j’ai ouvert deux tickets sur git.spip.net :
    https://git.spip.net/spip-contrib-extensions/reservation_evenement/issues

    Le ticket #3 (« Tag 2.3.3 mais code source en 2.3.2 ») me pose souci pour proposer une PR pour corriger le plugin pour SPIP 4.1

    • Merci @Nicod, je t’ai répondu sur les tickets

    • Ok super.

      Par ailleurs, je me demandais quel était le rôle de la case à cocher « Modifier les identifiants personnels : ok » lors de l’inscription ?
      Je n’ai pas tout suivi dans le code, mais ça modifierais quoi ?

    • Pour ta question, l’intitulé n’est pas très parlant, en fait il es possible de modifier quelques données de son profil, comme le nom ou l’adresse email (ainsi que des champs extras auteur) lors de l’inscription. (ceci peut être désactivé dans la config)

    Répondre à ce message

  • Bonjour,

    Je cherche à afficher l’ensemble des évènements d’un article et les infos des participants sur une seule et même page (évitant donc d’ouvrir chaque événément pour y lire le contenu)… les deux tables sont bien liées ? puis-je le faire via une boucle récursive ?

    Répondre à ce message

  • 13

    Bonjour,
    je souhaite passer par le plugins « panier ». Et côté panier et commande, ca roule. Seulement, j’aimerais pouvoir décompter les inscrits ou re-ajouter les désinscrits au compteur des participants. Existe-t-il un tuto à ce sujet ? Une boucle ou un commencement de code ?

    Merci !!

    • A priori, en utilisant commande et panier, je ne vois plus trop quel serait le rôle de ce plugin. Vue que commande gère l’enregistrement des réserves. Sans plus d’explications, je ne saurais pas te répondre.

    • Bonjour, comment procéder pour gérer un stock ? J’aurai bien lié le plugin reservation à mon panier mais si cela est possible via le plugin commande, pourriez vous me guider ? Auriez vous un lien à me fournir. Merci 🙏

    • Bonjour Bob,

      le problème reste le mème, sans plus d’explications je ne peux pas trop aider.

      Rainer

    • Voici le binz. Je me sers des événements comme étant des produits mis en vente ou parfois non (événement gratuit), cela dans le cadre d’une association de formation pour des personnes en voie de réinsertion. J’ai donc un produit = 1 évenement spip, mais je souhaite que une même personne puisse réserver un ou plusieurs événement(s), pour lui et/ou une autre personne (tuteur par exemple). Le plugin réservation d’événement allait bien jusqu’à ce que je tombe sur des complications. Du coup je me suis détourner de ce plugin pour créer un panier. Tout cela fonctionne. Le manque, ce que je n’arrive pas à gérer ce sont le nombre de place (stock). J’aimerais pouvoir le gérer. Mais je ne sais pas comment m’y prendre !
      AUTRE POINT ; une seconde problématique est que je souhaite que dans mes notifications soit intégré un lien visio lorsque l’événement se fait à distance. et pareil, je rame :(

    • Salut Bob,

      Tu devra adapter tes squelettes

      Tu as d’un coté le nombre de commandes approuvé pour un événement et de l’autre côte le nombre de places disponibles pour cet évènement (champ places dans la table spip_evenements).

      À mon avis il suffirait alors d’adapter ton squelette où tu inclus le panier avec une boucle commandes commandes_details qui te calcule le nombre de commandes avec la Balise #TOTAL_BOUCLE par exemple, puis n’afficher le bouton panier seulement si le nombre de commandes validés est inférieur aux places disponibles de l’évènement.

      Mais cela concerne plutôt le forum dédié au plugin commandes, no ?

      J’espère que ça te fait avancer das ta quête

      Rainer

    • Bonjour,
      D’après ce que je comprends, tu n’utilises plus réservation d’évènement mais le couple produit/panier/commande.
      Il y a le plugin stock qui fonctionne dans ce cas : https://contrib.spip.net/Stocks

      Pour le lien dans la notification peut-être qu’en ajoutant un champ extra au produit / évènement tu peux inclure sa valeur dans la notification envoyée. Il faudrait trouver le fichier modèle de notification pour le modifier, selon le type de notification que tu utilises.

    • Merci à vous deux pour ces éclaircissements. J’ai bien avancé grace à vous. Je peche sur les notifications. Je fonctionne avec notifications avancées mais je n’arrive pas à ajouter mon champs extra « lien_video »... Si des exemples existent, pourriez vous m’en faire part ?
      Grand merci.

    • Bonjour, je cherche à créer une boucle qui me permettra, à partir du plugin commande de panier, à gérer les places du plugin réservation d’événement. Existe-t-il de l’aide à ce sujet ? En l’état, j’en suis à arrivé à cette boucle, qui permet de gérer un panier proprement, mais sans toucher au « stock », le nombre de places restantes pour un événement. Voici cette boucle :

      <BOUCLE_test_produit_enstock(CONDITION){si #PLACES|>{0}}><hr><BOUCLE_prix_article(PRIX_OBJETS){id_objet=#ID_EVENEMENT}{objet=evenement}>
      <a href="[(#URL_ACTION_AUTEUR{remplir_panier, prix_objets-#ID_PRIX_OBJET-1, #SELF})]"><button type="submit" class="btn">Ajouter au panier</button></a>  </BOUCLE_prix_article></B_prix_article><a href="[(#URL_ACTION_AUTEUR{remplir_panier, evenement-#ID_EVENEMENT-1, #SELF})]"><button type="submit" class="btn">Ajouter au panier</button></a><//B_prix_article>
      </BOUCLE_test_produit_enstock><button class="btn-disable"><:stocks:stock_epuise:></button><//B_test_produit_enstock>
    • Salut Bob,

      Pas testé et pas optimisé un truc du style ?

      #SET{id_prix, #ARRAY}
      <BOUCLE_prix_delarticle(PRIX_OBJETS){id_objet=#ID_EVENEMENT}{objet=evenement}>
          #SET{id_prix,#GET{id_prix}|push{#ID_OBJET}}
      </BOUCLE_prix_delarticle>
      
      #SET{reserve,0}
      
      <BOUCLE_commandes_ev(COMMANDES_DETAILS){objet = prix_objet} {id_objet IN #GET{id_prix}>
      </BOUCLE_commandes_ev>
      #SET{reserve, #GET{reserve}|plus{#TOTAL_BOUCLE}}
      </B_commandes_ev>
      <BOUCLE_commandes_ev(COMMANDES_DETAILS){objet = evenement} {id_objet = #ID_EVENEMENT}>
      </BOUCLE_commandes_ev>
         #SET{reserve, #GET{reserve}|plus{#TOTAL_BOUCLE}}
      </B_commandes>
      #SET{places_dispos, #PLACES|moins{#GET{reserve}}
      <BOUCLE_test_produit_enstock(CONDITION){si #GET{places_dipos}|>{0}}><hr>
          <BOUCLE_prix_article(PRIX_OBJETS){id_objet=#ID_EVENEMENT}{objet=evenement}>
              <a href="[(#URL_ACTION_AUTEUR{remplir_panier, prix_objets-#ID_PRIX_OBJET-1, #SELF})]">
                 <button type="submit" class="btn">Ajouter au panier</button>
              </a>  
          </BOUCLE_prix_article>
          <a href="[(#URL_ACTION_AUTEUR{remplir_panier, evenement-#ID_EVENEMENT-1, #SELF})]">
              <button type="submit" class="btn">Ajouter au panier</button>
          </a>
      <//B_prix_article>
      </BOUCLE_test_produit_enstock>
      <button class="btn-disable"><:stocks:stock_epuise:></button>
      <//B_test_produit_enstock>
    • Merci beaucoup.
      Le code suivant me permet de vérifier que le compteur fonctionne :

      <B_personnes_inscrites><BOUCLE_personnes_inscrites(COMMANDES_DETAILS){id_evenement}>
       <strong>[(#PLACES|moins{#TOTAL_BOUCLE})]</strong> place(s) restante(s).</BOUCLE_personnes_inscrites></B_personnes_inscrites>

      En revanche, la liste des inscrits dans l’espace d’administration ne fonctionne pas ;(

    • Quelle liste d’inscrits ?

    • La liste des inscrits à un événement.

      Je n’ai pas pu me servir du plugin reservation d’evenement seul car j’avais besoin qu’un internaute puisse reserver pour 1 ou plusieurs personnes, 1 ou plusieurs evenements, independamment l’un de l’autre. Mais je suis désormais confronté à deux autres problèmes :
      1/ celui de la gestion du nombre de places, gestion proposée justement par le plugin reservation d’evenement
      2/ permettre aux administrateurs de consulter la liste des inscrits à un événement.

    • Bonjour,

      j’ai testé cette boucle, j’ai le bon nombre de commande qui apparait sur ma page, mais c’est toujours le même auteur qui apparait. Je suis bloqué ;(. Pourriez vous m’orienter ?

      <BOUCLE_vevent(EVENEMENTS){age<=0}{par date_debut}{statut=publie}>
      <li><a href="#URL_EVENEMENT" target="_blank">#TITRE [(#DATE_DEBUT|jour) ][(#DATE_DEBUT|nom_mois) ][(#DATE_DEBUT|annee) ][(#DATE_DEBUT|heures):][(#DATE_DEBUT|minutes)]</a></li>
      
      <BOUCLE_commande2 (COMMANDES){statut=paye}> <BOUCLE_commande_detail2(COMMANDES_DETAILS auteurs){id_evenement}>boucle commande detail #TITRE nom: <a href="#URL_AUTEUR">#ID_AUTEUR #NOM_FAMILLE #PRENOM #EMAIL</a>  <a href="/ecrire/?exec=commande&id_commande=#ID_COMMANDE">commande: #ID_COMMANDE</a><br>
      </BOUCLE_commande_detail2></BOUCLE_commande2>
      
      </BOUCLE_vevent>

    Répondre à ce message

  • 5
    Alexandre

    Bonjour,

    Tout d’abord je tiens à vous remercier pour cet excellent plugin.
    Suite à la dernière mise à jour je rencontre un problème avec la validation des champs extra sur l’objet reservation, lors de la validation d’une reservation le message d’erreur suivant est affiché :
    Fatal error : Call to undefined function cextras_verifier_saisie() in /xxxxxxxx/plugins/auto/reservation_evenement/v2.1.4/formulaires/reservation.php on line 330

    Auriez vous un correctif ?
    Merci d’avance !

    • Alexandre

      Version de SPIP : 3.2.11
      Version de Champs Extra : 3.14.1
      Version de Réservation événement : 2.1.4
      Version de Réservation multiple : 1.5.14

    • Pour autant cela ne marchera pas, car la fonction a été supprimée de champs extra. Normalement c’est une fonction interne qui n’a pas à être utilisée en dehors. Je la retablis au cas où, mais elle ne devrait pas être appelée.

      Rainer, contacte moi pour qu’on voit comment s’en passer.

    • La version 3.14.2 de cextras devraient permettre de refaire fonctionner. Mais comme dit, il faudrait sans doute que Rainer modifie son code pour utiliser l’API de saisies.

    • Alexandre

      Très bien, je vais donc attendre la disponibilité de la version 3.14.2.
      Merci pour votre réactivité !

    • Dans la dernière version

      cextras_verifier_saisie()

      a été remplacé par

      saisies_verifier()

    Répondre à ce message

  • 2

    Bonjour,
    et grand merci
    Cela fonctionne très bien sauf pour les champs extra obligatoire
    Je suis sous spip 3.1, champ extras3.13.2, Réservation Événements 2.1.1
    J’ajoute le champ « Tél » comme obligatoire
    Il apparait bien dans le formulaire comme « obligatoire »
    Mais l’enregistrement ce réalise même s’il est vide

    Erreur de ma part ?
    Par avance merci
    Bruno

    • Bonjour Bruno,

      effectivement la validation des champs extras reservation fonctionnait pas. C’est corrigé dans la version 2.1.2

      Rainer

    • Bonjour,
      Merci, après mise à jour cela marche

      Bonne journée
      Bruno

    Répondre à ce message

  • 3

    Rebonjour,
    Il n’y a pas de vérification sur l’adresse email à la soumission du formulaire ou j’ai loupé quelque chose dans le paramétrage ?

    Merci.

    • Tu parles du formulaire de configuration ? Non il n’y en a pas. On fait confiance à ceux qui gèrent le site :)

    • Non, non. Je parle du formulaire d’inscription #FORMULAIRE_RESERVATION .

    • Il y plusieurs vérification au niveau de l’email, qui est un champ obligatoire.

      Donc on vérifie
      * s’il es bien renseigné
      * s’il conforme au norme RFC 822 on le passant par la fonction

      email_valide() 

      du plugin API de vérification
      * et finalement on vérifie s’il est pas déjà utilisé par un auteur spip.

    Répondre à ce message

  • 2

    Bonjour et merci pour ce plugin.

    J’utilise la version 2.0.0.

    J’ai voulu essayer l’option « un ou des email » de l’option « Choisir un ou plusieurs administrateurs » du bloc « Paramètres des notifications » de la page de configuration du plugin.
    Je n’ai reçu aucun courriel de cette façon.

    Par contre, avec l’option « un ou des administrateurs », ça fonctionne, y compris en sélectionnant un admin dont l’adresse électronique correspond à celle que je testais avec l’autre option.

    Oilà. C’est pas bien grâve en ce qui me concerne puisque c’était pour faire mes tests que j’avais besoin de cette première option. Mais je veux bien essayer de debogguer si d’autres personnes sont confrontées au même souci que moi.

    • Bonjour ludogre,

      Oups, apparemment cela n’avait jamais fonctionné. Merci de l’avoir signalé. C’est corrigé dans la version 2.0.1.

      Bonne journée
      Rainer

    • Impeccable. Je viens de tester et ça fonctionne bien en v2.0.1. En effet.

      Merci.

    Répondre à ce message

  • 1

    Bonjour Rainier,
    Merci pour ce rappel sur la méthode de débogage avec #ENV.
    Oui, il s’agissait bien de Nom et Email qui étaient en cause. En appliquant vos conseils, c’est OK. Donc votre code modifié :

    [(#REM) 15/06/2020 : include modifié et simplifié pour ne PAS saisir d'autres inscriptions]
    
    #SET{id_auteur,#SESSION{id_auteur}}
    <div class="identifiants">
    	[(#GET{id_auteur}|>{0}|non)
    		<div class="login">
    			#SET{url,#URL_PAGE{login}|parametre_url{url,#SELF}}
    			[(#SET{titre_login,<:lien_connecter:>})]
    			<strong class="explication"><:reservation:explication_login{url=#GET{url},titre_login=#GET{titre_login}}:></strong>
    		</div>
    	]
    
    	<BOUCLE_connecte(CONDITION){si #GET{id_auteur}|>{0}}>
    		<div class="donnes_personnels">
    			<div class="nom">
    				<span class="label"><:reservation:label_nom:></span> <span>#NOM</span>
    			</div>
    			<div class="nom">
    				<span class="label"><:reservation:label_email:></span> <span>#EMAIL</span>
    			</div>
    			<BOUCLE_extras(DATA){source tableau, #ENV{champs_extras_auteurs}}>
    				#SET{nom,#OPTIONS|table_valeur{nom}}
    				<div class="#GET{nom}">
    					<span class="label">[(#OPTIONS|table_valeur{label})]</span> <span>#ENV{#GET{nom}}</span>
    				</div>
    			</BOUCLE_extras>
    		</div>
    	</BOUCLE_connecte>
    	[(#SAISIE{hidden,#ENV{name_nom,nom},label=<:reservation:label_nom:>,obligatoire=oui})]
     	[(#SAISIE{hidden,#ENV{name_email,email},label=<:reservation:label_email:>,obligatoire=oui})]
    
    	<!--extra_connection1-->
    [(#GET{id_auteur}|>{0}|non|et{#ENV{enregistrement_inscrit}|=={on}|oui})
    	<div class="editer-groupe">
    		[(#ENV{enregistrement_inscrit_obligatoire}|!={on}|?{
    			[(#SAISIE{checkbox,enregistrer,
    				class=enregistrer,
    				label=<:reservation:label_enregistrer:>,
    				datas=#ARRAY{1,<:reservation:ok:>}
    			})]
    			,
    			#SET{obligatoire,oui}
    		})]
    		<div class="editer-groupe block_mp">
    			[(#SAISIE{input,#ENV{name_new_login,new_login},
    				label=<:item_login:>,
    				obligatoire=#GET{obligatoire}
    			})]
    			[(#SAISIE{input,#ENV{name_new_pass,new_pass},
    				type="password",
    				label=<:reservation:label_mot_passe:>,
    				obligatoire=#GET{obligatoire},
    				class=password,explication=<:info_plus_cinq_car:>
    			})]
    			[(#SAISIE{input,#ENV{name_new_pass2,new_pass2},
    				type="password",
    				label=<:reservation:label_mot_passe2:>,
    				obligatoire=#GET{obligatoire},
    				class=password
    			})]
    		</div>
    	</div>
    ]
    </div>
    
    <!--extra_connection2-->
    <BOUCLE_condition(CONDITION){si #ENV{enregistrement_inscrit_obligatoire}|!={on}|oui}>
    	<script type="text/javascript">
    		/*<![CDATA[*/
    		if (!$('input[name="enregistrer[]"]').is(':checked')) {
    			$('.block_mp').hide();
    		}
    
    		$('input[name="enregistrer[]"]').click(function() {
    			$('.block_mp').slideToggle('slow', function() {
    			});
    		});
    		/*]]>*/
    	</script>
    </BOUCLE_condition>
    
    <BOUCLE_condition2(CONDITION){si #GET{id_auteur}|>{0}|oui}>
    	<script type="text/javascript">
    		/*<![CDATA[*/
    			if (!$('input[name="modifier_donnees_auteur[]"]').is(':checked')) {
    				$('.donnees_auteur').hide();
    			}
    			else {
    				$('.donnes_personnels').hide();
    			}
    
    			$('input[name="modifier_donnees_auteur[]"]').click(function() {
    				$('.donnees_auteur').slideToggle('slow', function() {});
    				$('.donnes_personnels').slideToggle('slow', function() {});
    			});
    		/*]]>*/
    	</script>
    </BOUCLE_condition2>

    Ensuite, j’ai cherché un moyen de limiter l’affichage des éènements avec une solution type « massacre à la tronçonneuse » : en ajoutant un critère en dur 0,3 dans
    formulaires/inc-reservation_evenements.html

    <BOUCLE_art_or (DATA){source tableau,#ENV{evenements}} {id_evenement_source ?} {par date_debut} {0,3}>

    J’ai essayé sans succès de trouver un critère pour obtenir les événements des prochains 30 jours.
    J’aurai préféré passer ces options via un paramètre du modèle <reservation|>

    Enfin, un truc bizarre : il est possible d’effectuer plusieurs fois la réservation d’un événement (version non modifiée du plugin) pour une même personne ....(à mon avis, c’est une anomalie, cela devrait être la réservation d’un événement par personne et non pas la réservation de n éléments d’un stock effectuée par une personne)

    Cordialement
    Philippe

    • Pour le critères, regarde la doc de agenda

      Critères de date
      Tous les critères habituels age, age_relatif, mois_relatif, jour_relatif sont declinables sur les dates de début et de fin : age_debut, age_relatif_debut, mois_relatif_debut, jour_relatif_debut, et de même age_fin, age_relatif_fin, mois_relatif_fin, jour_relatif_fin
      Dans ce cas, il est à noter que les comparaison sont faites par rapport à des date_debut et des date_fin.
      Ainsi si vous utilisez mois_relatif_debut<0 comme critère de votre boucle EVENEMENTS, seront retenus les évènements dont le mois de la date de début est supérieur ou égal au mois de date_debut du contexte (soit #ENVdate_debut #DATE_DEBUT de la boucle englobante)

      Enfin, un truc bizarre : il est possible d’effectuer plusieurs fois la réservation d’un événement (version non modifiée du plugin) pour une même personne ....(à mon avis, c’est une anomalie, cela devrait être la réservation d’un événement par personne et non pas la réservation de n éléments d’un stock effectuée par une personne)

      Non c’est pas un bug, la mème personne peut réserver pour d’autres. Il y d’ailleurs le plugin Réservations multiples qui permet de le faire d’un coup.

    Répondre à ce message

  • 3

    Questions au sujet des restrictions sur les réservations.

    Débutant sur SPIP, j’essaie de mettre en place un site associatif
    -  Pour test, j’ai rédigé des articles et créé des rubriques
    -  avec le plugin Accès restreint, l’une des rubriques « Adhérents » n’est accessible qu’avec un login/password. Ce dernier n’est validé que par les administrateurs (inscription à l’association)
    -  Des articles de la rubrique Adhérents décrivent des activités types (sorties, formations etc...) qui peuvent être réservées. Chaque auteur d’un article (en fait responsable de l’activité) va donc créer un ou plusieurs événements éventuellement avec répétitions.
    -  Pour test, j’ai créé un évènement avec répétition associé à un article de description en cochant « inscription en ligne » pour que le formulaire puisse apparaitre sur la page publique.
    -  je place le modèle <reservation|> dans l’article et le formulaire de réservation apparait bien pour chaque événement futur (comme annoncé dans la doc !)
    A ce niveau, 2 questions :
    -  comment ne faire apparaitre que le prochain événement dans l’ensemble des événements créés par l’auteur ? (ou de manière plus générique, les N prochains évènements ?)
    -  puisque les réservations se font sur des articles protégés par le plugin Accès Restreint, du coup, je ne dois par faire apparaitre Modifier les identifiants personnels : après l’affichage de l’identification en bas du formulaire. Comment procéder / que dois-je modifier ?

    Enfin, l’auteur de l’article devra gérer ses réservations dans sa zone privée via l’onglet Activité/Réservations.
    Je n’ai pas bien compris comment l’auteur pouvait simplement valider (ou refuser) un ensemble d’inscriptions à la fois. Plus précisément, comment faire un tri : les réservations d’un événement lié à un article pour voir leurs statuts et faire les validations ....

    Voilà, c’est un peu long, mais j’essaie d’être clair avec les exemples et savoir ce qui ressort du bon paramétrage du plugin Réservation ou de la modification par surcharge. Dans la mise en place, j’aurai plusieurs responsables (auteurs) qui devront créer leurs événements et gérer les réservations.

    Merci d’avance pour vos éclaircissements et votre aide.
    Philippe

    • Bonjour Philippe,

      Filtration des événement.

      Le plus simple c’est de créer un tableau des événements à prendre en compte par le formulaire et de l’injecter dans la balise du formulaire

      #SET{id_evenement,#ARRAY}
      
      <BOUCLE_evenements(EVENEMENTS) {criteresDeFiltrages}>
        #SET{id_evenement,#GET{id_evenement}|push{#ID_EVENEMENT}}
      </BOUCLE_evenements>
      
       #FORMULAIRE_RESERVATION{#ENV{id_evenement}}

      Pour le critères d’affichage d’événements regarde la doc d’agenda

      Modification squelettes formulaire

      L’affichage se fait via squelettes. Tu pourras donc enlever simplement dans le squelettes formulaires/inc-reservation_connection.html

      		<div class="editer-groupe">
      		[(#SAISIE{checkbox,modifier_donnees_auteur,
      			label=<:reservation:label_modifier_identifiants_personnels:>,
      			datas=#ARRAY{1,<:reservation:ok:>}
      			})]
      		</div>

      et à la ligne 34

      	<div class="editer-groupe donnees_auteur">
      		[(#SAISIE{input,#ENV{name_nom,nom},label=<:reservation:label_nom:>,obligatoire=oui})]
      
      		[(#SAISIE{input,#ENV{name_email,email},label=<:reservation:label_email:>,obligatoire=oui})]
      
      		[(#REM)Géneration des champs extras auteurs]
      
      		#GENERER_SAISIES{#ENV{champs_extras_auteurs}}
      	</div>

      Gestion des réservation

      • Il n’y a pas de gestion spécifique par auteur prévue. Ce qui est probablement le plus simple à faire, c’est de créer une page dans l’espace publique mais accessible seulement par l’auteur, ou il trouve tous ces réservation (BOUCLE réservation avec id_auteur) avec les actions de changement de statut. Tu pourras t’inspirer des squelettes du plugin notammentprive/objets/liste/inc-reservations_reservations.html etprive/objets/liste/inc-reservations_row.html.
      • Il n’y a pas non plus de gestion de réesrvation en batch. Il te faudrait développer ça. C’est intéressant, mais je n’auras pas le temps actuellement. Si tu t’y connais en php, le mieux serait de développer une extension au plugin réservation événement et de le mettre à disposition.

      Rainer

    • Bonjour Rainer,
      Je viens d’appliquer les indications sous le titre « Modification squelettes formulaire ».
      L’affichage est OK, bien entendu, l’option d’inscription supplémentaires a disparu.
      Mais en testant une inscription, j’ai un message sibyllin « Votre saisie contient des erreurs ! » dont je n’arrive pas à trouver l’origine en cherchant dans « formulaire/reservation.php » ....

      Pour la gestion des réservation, effectivement, l’idée est bonne de faire un affichage des validations dans une page publique (la même ...) quand le webmestre ou l’auteur est connecté ... Je vais voir par la suite.
      Cordialement
      Philippe

    • Salut Philippe,

      C’est de champs manquant, probablement nom et email, pour être sûr met

      #ENV

      dans ton squelette et cherche pour erreur.

      Si c’est effectivement nom et email rajoute ce code :

      		[(#SAISIE{hidden,#ENV{name_nom,nom},label=<:reservation:label_nom:>,obligatoire=oui})]
      
      		[(#SAISIE{hidden,#ENV{name_email,email},label=<:reservation:label_email:>,obligatoire=oui})

    Répondre à ce message

  • 11

    Bonjour,
    Ce plugin semble correspondre parfaitement à mon besoin, mais est-ce vraiment compatible SPIP 3.x ?
    Après installation et activation, puis configuration, la création d’un événement abouti à un message :
    « Vous n’avez pas le droit d’associer cet événement à cet article »
    Le message ne me permet pas de comprendre la raison de l’erreur....
    Une idée ?
    Bien cordialement
    Philippe

    • Bonjour,

      S’il ne pas compatible spip 3* c’est qu’il n’est pas compatible spip. :)

      La création d’un événement est géré par agenda. Réservation événement n’y intervient pas. Visiblem,ent c’est un problème de droit. Quel statut d’auteur ?

      Désactive tous les plug puis active agenda -> teste. Puis active réservation événements -> teste et dis moi ce que tu obtiens.
      Rainer

    • Bonjour,
      Merci pour cette réponse rapide.
      J’ai le statut d’Administrateur
      J’ai désactivé tous les plugins sauf Agenda 4.2.1 et Mini Calendrier 2.4.1.
      J’ai toujours le même message en tentant de créer un événement.

      Je viens d’installer SPIP 3.x pour test, j’ai créé quelques rubriques et articles, mis en place le plugin « Accès Restreint » (Ok après un peu de recherche sur les syntaxes pour Spip 3)

      J’essaie de mettre en place un serveur associatif avec gestion des accès restreints et des réservations, en remplacement d’un serveur existant sous Joomla qui ne me plait pas trop (!)
      Cordialement
      Philippe

    • Bonjour,

      J’ai ce message lorsque je tente d’associer un évènement à un article qui est en dehors d’une zone définie dans la config :
      Sur la page ecrire/ ?exec=configurer_reservation_evenement
      il y a « Définir une/des zones pour l’application de ce plugin / Permet de restreindre l’application de ce plugin au/x zone/s définie/s »
      Lorsqu’il n’y a aucune zone de définie il est possible de créer un évènement partout.

      Donc c’est peut-être un peu trompeur car la restriction se définit pour le plugin reservation_evenement mais au final il semble qu’elle s’applique aussi aux évènements (même sans réservation)

    • Merci pour cette remarque, mais je n’ai pas défini de zone pour l’instant .... Cela aurait pu être une bonne raison.
      Cordialement
      Philippe

    • tu dis

      J’ai désactivé tous les plugins sauf Agenda 4.2.1 et Mini Calendrier 2.4.1.
      J’ai toujours le même message en tentant de créer un événement.

      Ça veut dire que tu as ce message quand réservation événéments n’est pas activé ?

      Est-ce que c’est bien dans l’espàce privé que tu essaie d’ajouter un événement ?

    • Quant à

      “J’ai ce message lorsque je tente d’associer un évènement à un article qui est en dehors d’une zone définie dans la config :
      Sur la page ecrire/ ?exec=configurer_reservation_evenement
      il y a “Définir une/des zones pour l’application de ce plugin / Permet de restreindre l’application de ce plugin au/x zone/s définie/s”
      Lorsqu’il n’y a aucune zone de définie il est possible de créer un évènement partout.”

      je ne reproduis pas @DD peux tu me dire plus sur ta configuration ?

    • Bon je crois que j’ai trouvé : il faut cocher la case « Activer le mode agenda » sur la page d’édition d’une rubrique pour pouvoir ajouter des événements aux articles de cette rubrique.
      Dans la base de données on voit que pour le champ « agenda » de la table « rubriques » la valeur peut être 0 ou 1.
      Ce que j’en déduis (toute correction ou autre déduction est la bienvenue) :
      Si une des rubriques du site à la valeur 1 alors l’agenda est désactivé pour toutes les autres
      Si toutes les rubriques ont la valeur « 0 » alors l’agenda est activé pour toutes
      Mais si il y a déjà des événements attachés à un article d’une rubrique (avant qu’une restriction d’agenda soit ajoutée par après pour cette rubrique), alors on peut continuer d’ajouter des événements à l’article même si la valeur du champ « agenda » est à « 0 » pour la rubrique.

      En tout cas ce n’est pas lié à ce plugin de réservation.

    • Oui, j’ai bien fait le test avec Agenda et Mini calendrier SANS Réservation évenements
      Cordialement
      Philippe

    • Oui, bien vu : il fallait bien cocher la case « Activer le mode agenda » sur la page d’édition d’une rubrique !
      La confusion vient de 2 points :
      -  Après installation de SPIP, j’ai commencé par rédiger des articles et créer des rubriques pour tester sans avoir aucun plugin installé. Je pense donc que cette case à cocher n’était pas présente à ce moment.
      -  Ensuite, en installant le plugin Réservation évènement, il est fait état de restreindre le plugin à des zones. Bien entendu, pour commencer, je n’ai pas activé cette possibilité, d’où le manque de méfiance sur la case à cocher .... Ce plugin charge Agenda mais la version est indiquée comme "test" (au lieu de "stable"), ce qui est la porte ouverte aux suspicions ...
      -  Enfin, en tant que débutant, je pensais plus à mes nombreuses erreurs possibles ....

      Bref, dans la doc de Réservation événement, un petite ligne supplémentaire au sujet de cette case serait la bienvenue .....

      Je vais continuer à essayer de comprendre les relations entre "article", "agenda", "évenement" et "réservations" .....

      Merci pour vos aides !

      Cordialement
      Philippe

    • « Activer le mode agenda » est und foncionnalité du plugin Agenda et n’a rien à voir avec la foncionalite du présent plugin de limiter son champ d’action ("Définir une/des zones pour l’application de ce plugin").

      Comme les utilisateurs de réservation d’événements n’ont pas vraiment manifesté de problèmes lié à la fonction « Activer le mode agenda » du plugin Agenda, je préfère de ne pas mélanger les docs et de laisser à Agenda d’expliquer cette particularité de son fontionnement.

    • Dans la doc de réservation, la première ligne est :
      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.
      Si la case n’est pas cochée « Activer le mode agenda », ce que l’utilisateur a du mal à deviner (n’apparait pas clairement dans la doc Agenda), on arrive simplement à des messages d’erreurs incompréhensibles de prime abord dans la mise en application du plugin Réservation quand on en suit la documentation
      Donc, une simple ligne de mise en garde m’apparait indispensable, ce n’est pas vraiment un mélange de documentation (quoi que : votre reprenez bien une documentation sur la création d’évènement, ce qui est appréciable). Je ne suis pas le premier à avoir posé la question au sujet du message d’erreur ... J’ai passé 2 semaines à essayer d’entrer dans le code pour remonter à l’erreur, ce qui peut décourager le débutant. Mais j’ai été agréablement surpris par votre aide rapide ! Votre doc est déjà assez détaillée en recouvrant celle d’Agenda, une ligne supplémentaire ne sera pas de trop pour éviter un blocage rien qu’au premier test ....

      Cordialement
      Philippe

    Répondre à ce message

  • 3

    Bonjour,
    dans la liste des résa par article, peut-on les classer en ordre inverse ?
    Merci

    Répondre à ce message

  • 1

    Hello :-)
    php 5.6.38
    J’essaie de me servir du plug pour la première fois :-)
    Ce soir, sur un spip 3.2.3 tout neuf j’installe le plug via SVP et donc les necessite dans les version les plus récente.
    Je colle dans le squelette de la distà la ligne https://zone.spip.net/trac/spip-zone/browser/spip-zone/_core_/branches/spip-3.2/plugins/dist/sommaire.html#L32 le code qui est dit dans l’article :

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

    Après, je vide le cache et je vais dans la partie publique du site !
    Et là, pouf, le site rame et ne fonctionne plus :-(
    Il y a un truc que je n’ai pas du comprendre, mais quoi ???
    Franck

    Répondre à ce message

  • 19

    Bonjour,
    J’essaie d’utiliser la réservation d’événements et je ne vois pas trop à quoi sert d’afficher le bloc je participerai, peut-être, etc. dans l’événement puisque l’inscription se fait sur l’article de l’agenda (voir captures). D’autre part, aucune information n’est mentionnée dans les zones inscrits, incertains, absents même si des inscriptions (j’y participerai par exemple) ont été faites.
    Ai-je raté quelque chose ?
    Merci de votre aide.
    Yann

    • Salut Yann,

      Ceci à l’air de venir du formulaire

      #FORMULAIRE_PARTICIPER_EVENEMENT

      du plugin agenda. Si tu veux utiliser le système de réservation du présent plugin il te faut utiliser la balise

      #FORMULAIRE_RESERVATION
    • Rainer,
      En fait j’utilise le modèle <reservation|id_evenement=#ID_EVENEMENT> dans mon article et j’active les inscriptions dans l’événement.

      1. Je ne sais pas où placer #FORMULAIRE_RESERVATION.

      2. D’autre part, je souhaiterais avoir la possibilité de plusieurs choix de prix. Exemple :
      Adulte : 10 € Quantité : xxxx
      Enfants - 12 ans 5 ans : 5 € Quantité xxxx
      et bien sûr un total de tout ça

      Je ne vois pas trop comment faire.

      Yann

    • 1. Le modèle utilise déjà #FORMULAIRE_RESERVATION.. Donc c’est bon. Par contre ton squelette article doit contenir #FORMULAIRE_PARTICIPER_EVENEMENT, efface la balise.

      2. Essaie avec le plugin Déclinaisons Prix

    • Rainer,
      J’ai essayé les déclinaisons. Le souci c’est que cela utilise des boutons radio. donc ça ne prend en compte que le dernier. Mon idée était de pouvoir sélectionner par exemple : 1 adulte (10 €) et 2 enfants (2 x 5 €) et donc d’avoir un total à payer de 20 €.
      Yann

    • Dans l’état actuel du plugin ce n’est pas possible

    • Merci Rainer.
      Dans ce cas je vais procéder différemment avec des déclinaisons :
      -  adulte seul
      -  couple sans enfant
      -  adulte + 1 enfant
      -  couple + 1 enfant
      etc.

      ça devrait répondre aux besoins pour le moment sachant que les familles de 15 enfants sont plutôt rares. :-)
      Yann

    • Pour mon souci de bloc de participation dans l’événement, il semble que ce soit le fichier de l’agenda formulaires/participer_evenement.html qui est appelé et affiché dans l’événement pour un auteur loggué.

      Pour un visiteur seuls les mots inscrits incertains absents sont affichés.

      J’ai l’impression que l’événement parle d’une invitation à participer alors que l’article lui invite à réserver. Le problème c’est que dire qu’on va participer ne vaut pas réservation.

      Y a un truc qui se mord la queue.

      Yann

    • Enlève la balise du formulaire dans le squelettes correspondant, probablement evenement.html

    • Je pense avoir trouvé. Sous Escal il semble s’agir du fichier inclusions/inc-events_calendrier.html

      J’ai retiré la balise et déposé le fichier modifié dans squelettes/inclusions à la racine de mon site et le résultat est là ! Je vais néanmoins vérifier auprès de JC Villeneuve (Escal) qu’il s’agit bien de ce fichier.
      Merci encore pour ton aide précieuse.

      Yann

    • Ma solution était pour partie bonne mais nécessitait la modification d’un 2e fichier. Qui plus est lors de mises à jour ultérieures d’Escal j’aurais perdu les bénéfices de mises à jour pour ces fichiers. JC Villeneuve a donc livré une petite modif. Il suffit pour masquer le bloc de participation dans un événement de rajouter le code suivant dans le fichier perso.css :

      .meta-publi{
          display: none;
          }

      Yann

    • SPIP 38

      Bonjour
      J’ai le même souci que Yann, aussi avec le squelette ESCAL, mais je n’arrive pas au même résultat !!
      Je voudrais faire disparaitre ce formulaire où on coche : j’y serai //ou // j’y serai peut être // ou // j’y serai pas. j’ai retiré la balise et déposé le fichier modifié dans squelettes/inclusions à la racine de mon site, et modifié dans Eval/styles le perso.css, mais le pavé est tjrs là. Le fichier modifié doit il etre enlevé de eval/inclusions ou pas ?
      Merci d’avance

    • Bonjour,
      1. Retirez le fichier que vous avez mis à la racine dans squelettes inclusions. Seule la modification du perso.css suffit
      2. Ne jamais supprimer ou modifier un fichier directement dans les répertoires d’ Escal
      3. Le fichier modifié perso.css doit déposé à la racine dans squelettes/styles
      4. Videz le cache dans l’espace privé

      yann

    • Spip 38

      Merci Yann pour cette réponse rapide, mais cela résoud le pb à moitié. Dans l’article qui a le formulaire et qui s’affiche en page d’accueil (avec le mot clé annonce) le logo avec la date de l’évènement n’est pas au bas de l’article. Mais quand on cherche l’article par le menu, il apparait avec « évènement associé » à la fin (et le logo de la date) et si on clique sur ce logo, on a une autre page avec ce fameux pavé « j’y serai/ peut etre / j’y serai pas » sous le logo avec la date de l’évènement.
      voici l’adresse du site : afpen38.fr

      J’ai aussi un autre pb sur le formulaire cette fois, j’aimerais enlever le pavé "si vous êtes enregistré sur ce site « connectez vous » je trouve que c’est pas clair, car même si on est pas enregistré sur le site, il faut remplir ces deux cases.

    • Spip 38

      En fait, je viens de modifier mon formulaire en enlevant les champs "nom" prénom" et "mail" qui étaient redondants et prêtait à confusion avec le pavé "identifiants personnels". C’est plus clair pour la personne qui veut s’inscrire et qui comprend alors plus facilement qu’elle doit rentrer "nom" et "mail" dans le pavé identifiants personnels même si elle n’est pas enregistrée dans le site. Mais quand même, l’indication "connectez vous si vous êtes déjà enregistrés sur le site" pourrait être en dehors du pavé "identifiants personnels" (au dessus par exemple) ce serait plus clair.

      Par contre pour le pavé « j’y serai/ peut etre / j’y serai pas » quand on clique sur le logo avec la date de l’évènement, j’ai fait les modifs (fichier perso.css) mais c’est toujours là, quand on appelle l’article depuis le menu.

    • L’indication informe juste les personnes qui se sont déjà enregistrées en tant qu’auteur/visiteur qu’elles doivent juste entrer leurs informations en se connectant. Pour ma part, je ne je ne trouve pas cela trop dérangeant. Peut-être juste modifier le libellé dans les fichiers de langue résoudrait-il ton souci de clarté.

      Pour ce qui est du pavé, je vois que ton site utilise la version 4.0.79 d’Escal or la version actuelle est la 4.0.85. Une mise à jour vers cette dernière version résoudrait je pense ton souci.
      Yann

    • Spip 38

      Tout marche à merveille !! un grand merci Yann pour ton aide.

    • Super ! Et de rien. Il est normal d’aider lorsqu’on peut. :-)

    • Par rapport à

      J’ai essayé les déclinaisons. Le souci c’est que cela utilise des boutons radio. donc ça ne prend en compte que le dernier. Mon idée était de pouvoir sélectionner par exemple : 1 adulte (10 €) et 2 enfants (2 x 5 €) et donc d’avoir un total à payer de 20 €.

      La possibilité de réserver plusieurs déclinaisons par événement a été introduit dans la version 1.29.7 (112516) du plugin. Donc tu devrais pouvoir le faire maintenant.

    • Rainer,
      Un grand merci pour ton écoute et ton suivi. Je vais tester ! :-)

    Répondre à ce message

  • 3

    Dysfonctionnement ?
    En faisant mes essais, je tombe sur quelque chose que je ne m’explique pas :
    le nombre d’enregistrements n’est pas le même quand on visualise (clic sur la paire de lorgnons) ou lorsqu’on télécharge les réservations.
    (voir copie d’écran)
    Bug ou feature ?

    Répondre à ce message

  • 3

    Bonjour,
    Je fais mes premiers pas avec ce plugin qui semble pouvoir répondre tout à fait à une demande qui m’est faite.
    Il y a toutefois un truc que je ne comprends pas bien.
    Dans la configuration du plugin, j’ai choisi « Non » pour l’item « Permettre au visiteur de s’enregistrer lors d’une réservation : »
    Du coup, je ne pige pas pourquoi le formulaire affiche/demande
    Identifiants personnels (Connectez-vous si vous êtes déjà enregistré sur ce site)
    Nom : (obligatoire)
    Email : (obligatoire)
    Infos générales réservation
    Adresse email

    Il y a quelque chose qui m’échappe... Quelle est l’explication de cette présence ?
    Merci d’avance.

    • S’enregistrer veut dire créer un compte auteur spip lors de la réservation.

      Le mettre à non n’empêche pas de se loguer avec un compote existant, il n’y a juste pas de compte auteur crée.

    • Merci de ta réponse rapide. Je continue ma découverte du plugin
      Quelques petites choses :

      • dans les champs extras, je vois la possibilité de rajouter des CE dans deux objets différents : réservations et détails réservation. Pourquoi y a-t-il deux objets différents et qu’est-ce qui les différencie l’un de l’autre ?
      • Lorsqu’on remplit un formulaire et que celui-ci comporte des erreurs, les valeurs saisies dans les différents champs sont perdues et il faut recommencer la saisie. Est-ce que c’est moi qui ai mal intégré le formulaire ?
      • Dans une page qui liste des articles - par exemple les articles d’une rubrique - via une boucle ARTICLES classique, je ne pige pas comment intégrer dans le squelette l’appel au formulaire pour que, pour chaque article ainsi listé, le formulaire de réservation ne retienne que les évènements de l’article. Mon code ressemble à ça et liste l’ensemble des évènements sujets à réservation :
        <BOUCLE_liste(ARTICLES){id_rubrique}>
        <h3>#TITRE</h3>
        <div class="ajax">  #FORMULAIRE_RESERVATION{#ENV{id_evenement},#ENV{id_article}, #ENV{retour}, #ENV{options}}
        </div>
        </BOUCLE_liste>

        C’est certainement ma façon d’appeler le formulaire qui n’est pas correcte . Comment faudrait-il procéder ?

      1. Regarde dans l’introduction de cet article
      2. Les valeurs de quels champs sont perdus ?
      3. Dans ton exemple tu affichera un formulaire par article de la rubrique, chaque formulaire contenant tous les événements de l’article, dans une tel liste ne vaudrait-il pas mieux de mettre un lien vers le formulaire d’inscription ?
        [(#URL_PAGE{inscription}|parametre_url{id_article,#ID_ARTICLE})]

    Répondre à ce message

  • 5

    Merci pour ce plugin très utile. Je l’utilise sur https://lyceeduparc.fr/ldp/spip.php?page=psychologue et j’essaie de créer un formulaire d’annulation d’une réservation. Je croyais pouvoir y arriver avec une commande sql pour mettre à jour le champ « statut » de la table « spip_reservation_details », mais cela ne semble pas fonctionner. Du coup je ne sais pas comment procéder.

    Répondre à ce message

  • 2

    Bonjour Rainer,

    Dans Réservations multiples, j’ai repéré, dans le fichier de lang reservations_multiples_fr.php, une petite erreur d’orthographe : « J’aimerais également inscrire une autre persone : »
    il manque un « n » à personne.

    Ça n’est pas dramatique, je le corrige à chaque MAJ, mais à l’occasion...

    Merci.

    Yann

    Répondre à ce message

  • 7

    Bonjour Rainer,

    Je suis bien embêtée car la dernière version du plugin fait que mes champs extras (nom, prénom) ne s’affichent plus dans mon tableau des inscrits.
    Voici ma boucle dans un fichier inclure/reservation_visualiser. C’est assez touffu, je ne sais plus trop quoi changer.

    Code sur pastebin car ici ça dépasse :

    https://pastebin.com/NQBbk5hL

    Est-ce que tu vois d’un coup d’œil ce qui cloche ?
    Merci

    • Salut DD,

      Afin de pouvoir afficher également les champs extras reservation la function

       champs_extras_reservation()

      (reservation_evenement_fonctions.php ligne 22) retourne maintenant un tableau en distinguant les champs extras par objet :

      [
        auteurs => champs_extras_auteurs, 
        reservation => champs_extras_reservation
      ]

      quand avant ça ne retournait directement et uniquement les champs extras auteurs

      [champs_extras_auteurs]

      Donc du dois adapter la définition de ta variable champs_extras

      #SET{extras,#VAL|champs_extras_reservation}
      #SET{champs_extras_auteur,#GET{extras}|table_valeur{auteur}}
    • C’est encore un peu tôt :)

      le résultat de la fonction

       [
            auteurs => champs_extras_auteurs, 
            reservation => champs_extras_reservation
       ]

      Donc du dois adapter la définition de ta variable champs_extras

          #SET{extras,#VAL|champs_extras_reservation}
          #SET{champs_extras,#GET{extras}|table_valeur{auteur}}
    • Bonjour Reiner,

      Je n’ai pas encore réussi mais je m’y remets..
      Il y a un nouveau plugin « Réservations Champs Extras 1.0.1 - test »

      Est-ce que je dois l’utiliser et comment ?

      Sur la page ’exec=configurer_reservations_champs_extras" je vois seulement

      Réservations Champs Extras
      Paramétrages
      Exemple
      
      Explication de cet exemple

      Merci

    • Salut DD,

      un oubli, en fait il n’y a rien à configure pour ce plugin.

      Réservations Champs Extras sert à customiser les champs extras pour un formulaire déterminé. C’est pour cela qu’il nécessite le plugin Réservation formulaires qui lui permet d’insérer des formulaires depuis l’espace privé et de le configurer basiquement (ce plugin demande que tu configure les objets disponibles).

      Ces deux plugins, faites pour les besoins spécifique d’un client, sont encore très basiques pour le moment et permettent d’attacher un formulaire à un objet, de définir l’utilisation et la nature obligatoire d’un champs extras définis via le plugin champs extras et de définir le scope des événements à prendre en compte (rubriques, articles ou événement spécifiques).

      Basiquement tu attache un formulaire à un objet, puis tu peux (pas obligatoire) lui ajouter des configurations (« configuration de formulaire »).

    • Je reviens avec mon problème d’affichage des inscrits sur le site public.

      au début de mon fichier j’ai donc :

              #SET{extras,#VAL|champs_extras_reservation}
              #SET{champs_extras,#GET{extras}|table_valeur{auteur}}

      et la boucle

      <BOUCLE_extras_reservation(DATA){source tableau, #GET{champs_extras_reservation}}>
      <td>[(#ID_RESERVATION|generer_info_entite{reservation,#VALEUR{options/label}}|sinon{-})]</td>
      </BOUCLE_extras_reservation>

      me retourne uniquement les infos (champ extras) de l’utilisateur qui s’inscrit mais pas les détails des personnes qu’elle inscrit en plus.

      Qu’est-ce que je dois changer ?

      Merci

    • Oui, c’est normal, car en cas d’inscription multiple, chaque réservation est enregistré séparément

    • J’ai réussi en reprenant un bout de code de
      reservation_evenement/v1.28.3/prive/objets/liste/reservation_visualiser.html

      maintenant je dois adapter pour ne pas afficher certains champs d’info perso à tous.

    Répondre à ce message

  • 1
    Spip 38

    Bonjour,
    J’essaye aussi d’utiliser ce plugin pour une inscription en ligne à un évènement : Je rencontre un peu le même problème que Yann : j’ai inclus un formulaire d’inscription directement dans l’article en y mettant la balise « reservation » , le formulaire que j’ai enrichi avec « champs extra » s’affiche très bien (avec l’indication du nombre de places auquel je tiens) MAIS à la fin de mon article, il y a un encart « Evènement associé », et si on clique dessus, une page s’ouvre avec l’indication Inscrits Incertains Absents, et la possibilité de s’inscrire si on est logué.
    J’aimerais d’une part garder cette possibilité d’indication du nombre de places (et restantes), et enlever le pavé d’incription des auteurs logués (« Le plugin intègre automatiquement les champs extras auteurs » à dévalider ? comment ? ).
    Merci d’avance et encore Bravo pour tout ce travail !!

    • Tu utilise quelle squelette pour ton article ?

      Le lien et formulaire que tu mentionne vient du plugin agenda. C’est le système de réservation de base de agenda et pas compattible avec Réservation événements

    Répondre à ce message

  • 9

    Bonjour Rainer,
    je quitte les déclinaisons pour revenir ici, vrai lieu de mon questionnement.

    Le problème : introduire un code qui déclenche une réduction en bas du formulaire de réservation : c’est simple et le code inscrit le cas échéant apparaît dans la liste des réservations.

    Pour l’instant, j’en suis là, pensant qu’il est possible de faire quelque chose sur le dispositif bancaire (exemple : valider le paiement par exemple le jour de l’événement, rembourser partiellement du montant de la ristourne), ce qui oblige à intervenir manuellement sur la somme payée, mais c’est une possibilité, sans doute payante (acte).

    J’ai installé : coupons, chèque cadeau, et surtout réservation-crédit-master, ce dernier n’apparaissant pas dans la liste des plugins ... pour lesquels les infos d’utilisation sont parcimonieuses ...

    Pour chèque cadeau, je vois qu’on peut créer une commande en ne mettant que le chèque cadeau ...

    Bon, tout ça s’embrouille un peu dans ma tête surtout après les farfouilles et bidouilles pour tenter de trouver où je vais bien pouvoir mettre des infos complémentaires dans le message de retour du formulaire d’inscription (pas trouvé dans les lang, il y a de la magie car le message est bien là !)

    Ma question est donc le lien absent avec « commande » excepté quand le paiement est attendu, lorsque (je crois) le paiement en ligne n’est pas activé - ce qui est problématique quand on peut pouvoir afficher « complet » !

    • Je suis d’accord, il manque un peu de doc pour ces plugs

      Cheque cadeau, ensemble avec le plugin reservation crédit, crée un crédit pour le bénéficiaire du chèque à l’hauteur du montant offert. Ce crédit peut ou être géré manuellement (mettre la réservation manuellement en payé et déduire le montant correspondant depuis la page crédit) ou via reservation bank qui ajoute le crédit comme moyen de paiement .

      Pour le code promotionnel, il y a un plugin plus adapté (https://github.com/abelass/promotions) auquel je viens d’ajouter la possibilité de gérer un code de promotion. Il te suffit de créer un champ extra « code_promotion » pour l’objet reservation via le plugin champs extras et de configurer ta promotion « code promotionnel »

    • bonjour Rainer,
      je m’y remets ...
      merci pour le contenu de ta réponse.
      je vais tester tout ça qui décante ...

    • Merci Rainer, ça fonctionne tout bien en utilisant des codes promotion dans le plugin Promotion et le champ extra dans la réservation. Testé en local, j’installe demain ... Crédits, chèques cadeaux, coupons, tout ça offre une belle palette pour répondre à toutes les situations mais on verra plus tard.

    • Bonne chance alors :)

    • Bonjour Rainer
      Est t-il possible d’utiliser le plugin « promotion » sans le plugin « réservation », seulement avec le plugin « commandes » ?

    • Arff je répond à mon message. Si j’en crois le deposit sur Github, oui c’est bel et bien adapté seulement à « Reservation ». Dommage !

    • Oui, pour le moment c’est le cas. Mème si initialement il a été pensé à être ouvert à d’autres plugins, je n’ai uniquement inclus reservation pour le moment.

    • Salut Ras, juste pour ton information. Je viens d’ouvrir le plugin promotions aux commandes (via paniers). Pour le moment seulement des promotions basiques sont possible (sans conditions ou limité dans le temps).

      Il faut installer les deux plugins :

    • Merci beaucoup pour l’info. je testerai sous peu pour un nouveau développement. je m’en suis sorti en bricolant avec une rubrique pour mon besoin précédent ;)
      Merci

    Répondre à ce message

  • 1

    À la question :

    j’aimerai que Les réservation ne soient pas ferme, mais
    simplement une participation à un tirage au sort pour attribuer les
    places à gagner.

    Raner à répondu :

    À mon avis tu peux juste modifier quelques messages, du plugin ne pas mettre de places limites puis à la fin utiliser la liste des inscrits pour ton tirage au sort.

    Merci pour la piste.

    Existe t’il un moyen de générer un tirage qui n’envoie le message de Reservation_Communication qu’aux gagnants du tirage ? où faut-il surcharger pour envisager cela ?

    • Les messages sont envoyés lors d’un changement de statut, comme défini dans la conf. Alors tu peux utiliser un statut déjà existant ou en rajouter un neuf.

    Répondre à ce message

  • 27

    Bonjour Rainer
    Merci ...
    J’utilise Réservation d’événement pour des formations et je demande aux personnes de s’inscrire sur le site et aux formations.
    Dans le formulaire public :
    si je permet l’enregistrement et l’oblige lors de l’inscription à une formation, les personnes déjà enregistrées sur le site se voient signifié une erreur « Votre saisie contient une erreur. »
    si je permet l’enregistrement sans l’obliger, les personnes peuvent s’inscrire à une formation sans s’inscrire sur le site, chose que je veux éviter afin de pouvoir les contacter facilement par la suite.
    Y-a-t-il une solution ? à ces deux problèmes !
    Je précise que je ne maîtrise pas beaucoup le langage, disons que je bafouille !
    Merci
    Jean-Luc

    • Bonjour Jean-Luc,

      Je ne suis pas sur de saisir le problème.

      Ton erreur apparaît quand la personne n’est pas logué, mais s’inscrit avec un email déjà utilisé par son compte ? Si c’est ça, il devrait y avoir un autre message indiquant que l’email est déjà utilisé et l’invitant à se loguer. Bref, peux tu ajouter un screenshot.

      Rainer

    • Bonsoir
      oui, si je veux m’inscrire avec une adresse déjà enregistrée, il y bien le message demandant de se loguer ou d’utiliser une autre adresse.
      Seulement j’aimerais que si l’adresse n’est pas enregistrée, on ne puisse pas s’inscrire à une formation sans créer un compte. ça c’est un des points.
      J’ai compris que le plugin, dans les paramètres du formulaire public permettait d’obliger l’inscription. J’ai fait la manip, mais dans ce cas là, j’ai une erreur lors de l’inscription à une formation voir screeshot avec parametres form public et erreur

    • J’utilise inscription 3 si cela peut t’aider ou avoir une influence !

    • J’imagine que le problème vient du fait que tu as un champ extra auteur obligatoire qui n’est pas encore prérempli, alors le formulaire indique ce manquement, le problème c’est qu’il faut d’abord cocher « Modifier les identifiants personnels : » pour voir le champ ou l’info manque.

      Ceci n’est pas très « user friendly », je viens de le modifier dans la version 1.27.5 du plugin.

    • Comme la création de zip de la zone est en panne actuellement -> voici sur github : https://github.com/abelass/reservation_evenement/archive/master.zip

    • Bonjour Rainer
      Un pb résolu : si je ne suis pas connu (ou inscrit sur le site) et, si l’inscription site est rendue obligatoire alors ça marche.
      Par contre si je suis déjà logué, toujours même pb ... voir copie écran jointe
      Et les infos sont toutes données car je l’ai fait avec le compte que je venais juste de créer en m’inscrivant à une autre formation.
      Cordialement
      Jean-Luc

    • je viens de parcourir les commentaires et des difficultés similaires ont été plus ou moins resolues par Lebardix, si j’ai tout compris car je ne code pas. Le pb a bien l’ai d’être dans la compatibilité entre ce plg et inscription 3

    • Alors tu as désinstallé inscription3 en gérant les champs extras avec le plugin champs extras ?

    • Bonjour JL et les autres,
      juste un point de vue : si tu veux simplement pouvoir envoyer un message à tes inscrits, pas besoin d’exiger un compte auteur : tu installes tout simplement le plugin « notifications_avancees » avec le paramètre qui t’autorise à (ré)utiliser l’adresse.
      Dans le menu des inscriptions, tu as alors un bouton-enveloppe qui te permet d’envoyer un message soit à tous, soit à une personne.
      Il y a juste un « petit machin » qui peut troubler l’internaute :

      « Identifiants personnels
      Connectez-vous si vous êtes déjà enregistré sur ce site » avec un lien sur « connectez-vous »

      est-ce bien grave ?

    • Je viens de faire un teste avec Inscription3. J’ai définis un nouveau champs obligatoire via la configuration de inscription3. Le champs est bien prix en compte dans le formulaire de réservation et si je le remplis, la validation du formulaire se passe sans problème.

      Est-ce que tu utiliser bien la dernière version (1.27.5) du plugin ?

      Quelle est exactement ta configuration de inscription3 ?

    • J’ai fais une pose, je regarde tout cela. Je viens de mettre les mise à jours en place.
      Je vous tiens au courant
      Jean-Luc

    • voici ma config isnc3

    • J’ai refait un teste avec ta configuration, ce qui m’as permis de détecter un disfonctionnement des testes sur les champs extras ajouté par inscription3 (ils n’étaient pas pris en compte). Par contre je n’ai pas reproduis ton problème.

      • Peux tu refaire un teste avec le plugin actualisé (1.27.7) ?
      • Peux tu désactiver tous les plugins non nécessaires à ce teste ?
      • Si tu as encore le mème problème, peux tu mettre
        [(#ENV{erreurs}|var_dump)]

        au début de formulaires/reservation.html et me copier le tableau ?

    • Bonsoir Rainer
      Je ne suis pas sûr de voir comment obtenir le tableau que tu me demandes !
      je sais ajouter cette ligne en début de reservation.html mais ensuite ?
      Désolé
      J’ai cela qui s’affiche lorsqu’il y a erreur (je suis logué et je permet l’enregistrement et le rend obligatoire dans le formaulaire public du plg) :

      array(3)  new_pass »]=> string(33) « Cette information est obligatoire » [« new_login »]=> string(33) « Cette information est obligatoire » [« message_erreur »]=> string(36) « Votre saisie contient des erreurs ! »

      JLuc
      Pour préciser : Je travaille avec scolaspip, spip 3.17

    • Concernant la suppression de « insc3 » et de la gestion avec des champs extras ... je ne sais pas faire pour l’instant.

    • Bon j’ai tenté : j’ai juste desinstallé insc3, vidé le cache, et essayé de m’inscrire en étant logué et j’ai toujours le même pb "votre saisie contient des erreurs.
      Je vais tenter, plus tard, sur un site copie de monter les plugins les uns après les autres.
      Est-ce qu’un log sur le site peut t’aider ? en confiance donc.

    • Merci pour ce débugage, le problème vient du présent plugin qui rendait obligatoire les champ login et mp me si logué. C’est corrigé sur github : https://github.com/abelass/reservation_evenement/archive/master.zip en attendant que j’actualise sur la zone. Donc rien à voir avec inscription3

    • Merci
      Je regarde ce soir et je fais le bilan.
      Bonne soirée
      Jean-Luc

    • J’ai récupéré la mise à jour.
      je constate que ... ça marche !
      MERCI bcp Rainer

      et Emma pour ta contribution à laquelle je n’ai pas repondu car le probleme n’éyait pas lié à l’envoi de message aux inscrits. Mais j’utilise cette fonction pour que les organisateurs de stage envoient des infos aux inscrits.

      J’ai une autre requete ! Je change de post.

    • Alors en fait ça ne fonctionne pas avec mon compte webmestre ! Si je veux m’inscrire à une formation le login et le mot de passe (avec controle) me sont demandés en bas de formulaire !

    • Si tu n’est pas logué, c’est normal que ceci apparaisse, ensemble avec l’invitation à se connecter « Connectez-vous si vous êtes déjà enregistré sur ce site ».

      C’est le formulaire normal d’inscription

    • Oui je sais bien, mais je suis logué.

    • Je ne reproduis pas.

      Est-ce que tu peux te déconnecter et reconnecter.

    • Oui, tjs pareil.
      Mais il doit y avoir autre chose car je ne suis pas reconnu par acces restreint, je ne vois pas les rubriques qui sont réservées aux personnes connectées. ça ne doit pas être lié à ce plg.

    • Donc j’ai deux compte webmestre dont un à le numéro -1 !!!
      Je ne vois pas d’où cela vient ???
      C’est celui là qui est connecté et qui ne fonctionne pas avec la résa.

    • Je suis allé le supprimer dans ma base de donnée !
      Très bizarre cela.
      Tout est rentré dans l’ordre et je change mon mot de passe webmestre !
      Bien cordialement
      Jean-Luc

    Répondre à ce message

  • 2

    Re bjr
    C’est encore moi.
    Mes réservations ne contiennent qu’un seul détail de réservation (systématiquement) et les rédacteurs qui valident les réservations se mélangent un peu et valident dans les détails de réservation (ce qui, en fait, est plus simple, mais ne valide pas la réservation proncipale. Est-ce que j’ai manqué une configuration qui ferait cela.

    Pour résumer : le changement de statut d’un détail de R en accepté (par exemple) peut-il automatiquement faire passer le statut de la réservation en accepté ?
    Merci
    Jean-Luc

    • La validation de la réservation entraîne l’adaptation des détails de réservation, mais pas le contraire.

      Donc la réponse est non :) ?

    • Oui c’est bien ce que je pensais.
      Je vais faire un petit tuto pour ceux qui valident.
      Cordialement
      Jean-Luc

    Répondre à ce message

  • 7
    Francis

    Bonjour Rainer,

    Tout d’abord merci pour la mise à disposition de ce plugin.

    De mon côté, c’est la première fois que je creuse du côté des plugins SPIP, du coup, j’ai 34 points sur lesquels je bloque, mais peut-être suis-je passé à coté de quelque chose...

    1. Est-il possible que lorsque le nombre de places pour un événement est limité, le nombre de places restantes ne soit pas affiché pour les visiteurs ?

    2. Est-il possible de limiter le nombre de places réservées par utilisateur ?

    3. Simplement de la configuration je pense, mais je n’arrive pas à faire en sorte que lorsque toutes les places sont vendues, il n’y ai pas de liste d’attente (simplement un message « complet » par exemple).

    Bonne soirée

    Francis

    • Bonjour Francis

      1. Est-il possible que lorsque le nombre de places pour un événement est limité, le nombre de places restantes ne soit pas affiché pour les visiteurs ?

      il suffit de surcharger formulaires/inc-reservation_evenements.html en enlevant à la ligne 37.

      [(#PLACES|>{0}|oui)
      		<INCLURE{fond=inclure/places_disponibles,
      		id_evenement,
      		places,
      		statut=#VAL|statuts_complet} />]

      2. Est-il possible de limiter le nombre de places réservées par utilisateur ?

      Non, ce n’est pas prévu pour le moment.

      3. Simplement de la configuration je pense, mais je n’arrive pas à faire en sorte que lorsque toutes les places sont vendues, il n’y ai pas de liste d’attente (simplement un message « complet » par exemple).

      Suivant ce que tu veux faire, tu peux surcharger formulaires/inc-reservation_evenements_champ.html

      y inclure au début, en s’inspirant de inclure/places_disponibles.html

      [(#REM)Toutes les résérvations]
      #SET{total,#INCLURE{fond=inclure/compteur_reservations,env}}
      [(#REM)Les disponibilités]
      #SET{disponibles,#PLACES|moins{#GET{total}}}

      puis tu peux adapter le comportement ou l’affichage du champ respectif suivant si

      #GET{disponibles} 

      est supérieure ou non à 0

      Par example, desactiver le champ si complet :

      <input type="checkbox" name="id_evenement[#ID_EVENEMENT]" class="checkbox evenement" id="id_evenement_#ID_EVENEMENT" value="#ID_EVENEMENT"
      		[(#ID_EVENEMENT|in_array{#GET{id_evenement}}|oui) checked="checked"][(#GET{disponibles}|>{0}|non) disabled="disabled"]/>
    • Francis

      Merci beaucoup, grâce à ces compléments, j’arrive à faire ce que je veux pour mon système de réservations.

      L’ultime interrogation que je rencontre est d’ordre cosmétique : je cherche l’endroit où je peux modifier l’affichage de texte comme « inscription » (sous la case à coher) ou « Si vide, la quantité sera 1 »

      J’ai bien trouvé le fichier reservations_multiples/lang/reservations_multiples_fr.php avec la valeur explication_quantite mais ça n’a pas l’air de changer grand chose !

    • Si tu veux modifier les traductions, le mieux c’est que tu crée un fichier squelettes/lang/local_fr.php dans lequel tu modifie les chaînes de langues à adapter.

    • Francis

      Je sais pas si j’ai bien formuler ma demande : je ne cherche pas à retraduire, mais bien modifier le texte existant en français. C’est bien ça ?

    • Traductions est mal choisis comme termes, s’agissant de la langue d’origine.

      Mais comme ce genre de textes sont gérés via les fichiers langues, c’est bien la manière décrite ci-haut qui est recommandée

    • Bonjour Rainer,
      Après quelque semaines de pause, je me replonge dans le système des réservations.
      Je viens d’avoir la demande de pouvoir préciser le nombre d’adultes et le nombre d’enfants lors de la réservation.
      Est-ce quelque chose de possible ? Qui aurait déjà été fait ?
      Bonne journée

    • Salut Francis,

      ce n’est pas possible pour le moment, il faudrait adapter Réservations multiples

      Rainer

    Répondre à ce message

  • 2
    Julie B.

    Bonjour Rainer,

    Juste une petite question sur le fonctionnement du plugin reservations :
    -  actuellement, on doit choisir de traiter pour les reservations :
    - soit des evenements de type sceances de cinema (la repetition du meme film) : - on ne reserve que pour cette sceance
    - soit la repetition de sceances de formation (chaque sceance a un contenu different) et on reserve donc pour l’ensemble des sceances en une fois.

    -  on peut travailler avec les deux types d’evenements si on renonce aux repetitions pour les evenements de type sceances de cinema. Or cette fonction de repetition est vraiment tres pratique pour les administrateurs.

    -  Peut-on envisager un moyen de pouvoir beneficier des repetitions
    en meme temps pour ces deux types d’evenements ?

    Merci

    Julie

    • Salut Julie,

      si j’ai bien compris, tu aimerais dans un même formulaire afficher les deux types ?

      Cela ne fonctionne pas pour le moment, tu devrais mettre un formulaire pour chaque type

    • Julie B

      Salut Rainer,

      Je pensais que le choix etait exclusif.
      Par contre, utiliser deux formulaires me convient.

      Merci !

      Julie

    Répondre à ce message

  • 3

    Bonjour,

    Je viens d’identifier 2 soucis dans le plugin suite à la dernière mise à jour en 1.26.5. Je n’avais pas fait de mises à jour depuis quelques temps et celle-ci a tout cassé chez moi, je pense que c’est révélé chez moi car mes évènements sont dans un système de grid (isotope) et donc la moindre erreur de div explose tout. Au début j’ai cru que c’était le fait d’être passé en div à la place des li et que donc c’est moi qui avait une erreur mais non ...

    -  dans formulaires/inc-reservation_connection .html, le </div> de la ligne 77 devrait être remonté à la ligne 74 par ex à l’intérieur du test sur le #GET{id_auteur} de la ligne 46 ... si le test est oui, on a 2 ouvertures de div et une seule fermeture ...

    -  dans formulaires/inc-reservation_evenements.html on a un </li> qui traine ligne 46, à remplacer par un </div> .

    Voilà :-) Bon été .
    Pierre

    Répondre à ce message

  • 2

    Bonjour Rainer,

    Je viens de réaliser une màj de mes plugins et après quelques manip j’obtiens cette erreur :

    Parse error : syntax error, unexpected ’[’ in /users/user1308921/sites/ffessm-codep21.fr/plugins/auto/reservation_evenement/v1.25.4/reservation_evenement_pipelines.php on line 50

    Tu pourrais m’aider ou bien j’ai un autre problème ?
    Merci d’avance.
    Amitiés Jean.

    • Salut Jean,

      Ton site tourne avec une vieille version de php (<5.4) ?> https://github.com/abelass/reservation_evenement.

      Bonne journée
      Rainer

    • Merci beaucoup Rainer,
      Effectivement mon site chez Oxyd était resté en PHP Version 5.3.3-7+squeeze29.
      C’est une option d’hébergement chez Oxyd que je n’avais pas correctement renseignée.
      Après être passé en 5.6 pour le moment ( on verra 7.0 plus tard ;-) ), la màj se déroule correctement.

      Encore merci de cette piste.
      Amitiés Jean.

    Répondre à ce message

  • 6

    Bonsoir,

    J’obtiens cette erreur : Votre saisie contient des erreurs !
    quelque soit la façon de m’inscrire, avec ou sans compte existant.
    Le plugin a été mis à jour à l’instant sur un spip 3.1.4
    http://www.art-logic.info/soiree-multimedia-decouvrez-avec-le-collectif

    Merci de vos retours

    • Julie B.

      Bonjour,
      Il faut peut-etre vider a nouveau le cache ?
      Julie

    • Le formulaire ne contient pas de champ pour sélectionner l’événement

      <fieldset>
      <legend> Votre participation </legend>
      <ul class="evenements"> </ul>
      </fieldset>
    • Comment as-tu inclus le formulaire ?

    • Bonjour,

      De la sorte : #FORMULAIRE_RESERVATION#ENVid_evenement,#ENVid_article, #ENVretour, #ARRAYid_evenement_source,’’

    • Bonjour,

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

    • Est-ce que tu as surchargé des squelettes de ce pluie ? Si oui compare les avec les originaux.

    Répondre à ce message

  • 7

    Bonjour, j’ai avancé donc avec les 2 plugins reservation_evenement et inscription3 natifs, et Zcore installé
    1- utilisateur inscrit ou non inscrit => le formulaire d’inscription s’ouvre toujours vierge. En effet

    --> plugins/auto/reservation_evenement/v1.24.1/inscription.html {{appelle}} plugins/auto/inscription3/v3.6.7/content/inscription.html {{au lieu de}} plugins/auto/reservation_evenement/v1.24.1/formulaires/reservation.html

    et dans ce cas le visiteur inscrit n’est pas pris en compte.

    donc j’ai remplacé auto/reservation_evenement/v1.24.1/inscription.html

    <BOUCLE_cond(CONDITION){si #PLUGIN{Zcore}}><INCLURE{fond=structure,env,type=inscription,type-page=inscription}/></BOUCLE_cond><INCLURE{fond=page_inscription,env}/><//B_cond>

    par squelettes/inscription.html

    [(#REM)
      Copie du 2017-04-12 20:01:01 par Anne Chopin
      Fichier original plugins/auto/reservation_evenement/v1.24.1/inscription.html
    ]
    <INCLURE{fond=structure,env,type=inscription,type-page=inscriptionresa,env}/>

    avec auto/reservation_evenement/v1.24.1/content/inscriptionresa.html

    <article class="inscription">
    	<header class="cartouche">
    		<h1>
    			<:reservation:inscription:>
    		</h1>
    	</header>
    	<div class="main">
    		<div class="ajax">
    			#FORMULAIRE_RESERVATION{
    				#ENV{id_evenement},
    				#ENV{id_article},
    				#ENV{retour},
    				#ENV{options}}
    		</div>
    	</div>
    </article>

    identique à l’original auto/reservation_evenement/v1.24.1/content/inscription.html afin de retrouver le formulaire d’inscription du plugin.
    ainsi je retrouve le fonctionnement normal pour l’inscription de réservation ,
    -  si l’utilisateur est connecté le formulaire prérempli l’identifiant et le mail et ajoute la saisie pour les champs extra prévus dans la configuration du plugin inscription3,
    -  si l’utilisateur n’est pas connecté, le formulaire permet donc de saisir les champs identifiant, mail ainsi que les champs extra du plugin inscription3.

    2- cependant dans le cas d’un nouvel utilisateur, la réservation d’événement crée bien
    l’entrée de réservation et indique bien le nouveau client, via le formulaire auto/reservation_evenement/v1.24.1/formulaire/reservation.html
    mais cette inscription ne créé pas le client comme nouvel auteur ( à modérer par l’admin puisque je ne propose pas ni infos de login, ni mot de passe) comme l’aurait fait inscription3.

    comment puis-je retrouver le comportement d’inscription3 , cad ajout d’un auteur (à modérer par l’admin) ?

    • bonjour,
      je précise cependant que, en l’état, la fonction « enregistrer sur le site » fonctionne.
      il faut préciser un identifiant de login et le mot de passe (et sa vérification),
      à la fin de la réservation le client se retrouve connecté.

      Ce n’est pas le fonctionnement que j’ai configuré dans inscription3, j’attends, tout au plus après que le client ayant précisé un identifiant de login, mais sans mot de passe, que l’inscription soit transmise à l’admin pour modération, le client recevra par mail un client de validation, et surtout le client de réservation reste non connecté après sa réservation.

      je « bricole » autour de inc-reservation_connection mais sans succès

      merci de conseils

    • Bonjour,
      dans l’état actuel il est normal que réservations événements ne prenne pas en compte toutes les configurations de inscription 3.

      Si le présent plugins se base comme inscription 3 sur le plugin champs extras pour l’ajout de champs extras, je crains de que la plupart des autres configurations de inscription 3 ne trouvent pas applications.

      Le mieux serait probablement de faire un mini plugin qui fasse le lien entre inscription 3 et reservation_evenements en intervenant via l’api de spip - les pipelines (notamment pre_edition [http://programmer.spip.net/pre_edition-756] ou post_edition [http://programmer.spip.net/post_edition-757] pour le changement de statut lors d’un enregistrement d’un auteur - formulaire_charger, formulaire_traiter et formulaire_verifier pour que le formulaire reservation prennne en compte d’éventuels configurations de inscription 3).

      Comme j’ai dis auparavant je ne connais pas bien le fonctionnement de inscription trois, je ne peux donc pas garantir que le pipelines susmentionnés soient utiles/suffisants pour intégrer pleinement les fonctionnalités de inscription 3.

      Je ne peux actuellement pas me lancer pleinement dans ce chantier, mais je veux bien t’épauler si tu veux te lancer dans l’aventure.

      Rainer

    • Julie B.

      Bonjour lebardix

      >1 utilisateur inscrit ou non inscrit => le formulaire d’inscription s’ouvre toujours vierge.

      Oui, ceci me semble normal, mais je comprends peut-etre mal ton pb.

      Le formulaire d’inscription n’est-il pas seulement pour l’ inscription ?
      Une fois inscrit, il n’est plus utile. Il faut utiliser #FORMULAIRE_EDITER_AUTEUR
      pour modifier eventuellement les donnees.
      Le message de DD ci-dessous en donne un bon exemple

      Mais attention, la derniere version d’inscription 3 a un bug (me semble t-il).
      J’ai ecrit un message en ce sens sur le forum du plugin, mais sans retour.

      J’ai simplement remplace la fonction pipeline inscription3_editer_contenu_objet($flux)
      par celle de la version 3.5.12 du plugin.
      (sinon preg_replace plante mon formulaire edit auteur )

      Bonne journee

      Julie

    • bonsoir Julie,
      Le fait de valider le plugin inscriptions3, la réservation d’événements au lieu d’utiliser son formulaire appelle le formulaire d’inscription.

      Alors que le formulaire natif de réservation événements tient compte de l’état connecter ou non, si le plugin inscription3 est installé, le comportement devient anormal.

      J’ai besoin que l’inscription événement se comporte comme prévu, cad créé (ou non suivant la config) un auteur (au statut visiteur) en présence du plugin inscription3,
      l’avantage d’inscription3 étant de gérer des champs extras, de pouvoir modérer la création d’un auteur, et de contrôler le contenu de s champs extras.

      Les visiteurs de mon site, en s’inscrivant à un événement (un stage pour être plus précis), s’enregistre comme auteur(visiteur à confirmer) et obtiendraient après modération de l’admin un compte auquel ils pourront se connecter ultérieurement.

      A charge de l’admin de vérifier si un visiteur s’est enregistré sous plusieurs noms et de corriger les réservations d’événements.

      J’ai donc un peu avancé en modifiant le traitement du formulaire RESERVATION (plugins/auto/reservation_evenement/v1.24.1/formulaires/reservation.php) en supprimant la saisie de mot de passe, email et autre (suivant patch ci-dessous).

      --- reservation (copie).php	2017-04-14 22:45:14.000000000 +0200
      +++ reservation.php	2017-04-17 22:44:29.000000000 +0200
      @@ -213,9 +213,9 @@
       		include_spip('inc/auth');
       		$obligatoires = array(
       			'nom',
      -			'email',
      +			'email'/*,
       			'new_pass',
      -			'new_login'
      +			'new_login'*/
       		);
       		foreach ($obligatoires as $champ) {
       			if (!_request($champ))
      @@ -227,25 +227,26 @@
       			$erreurs['message_erreur'] .= $err;
       		}
       
      -		// Vérifier les mp
      -		if ($p = _request('new_pass')) {
      -			if ($p != _request('new_pass2')) {
      -				$erreurs['new_pass'] = _T('info_passes_identiques');
      -				$erreurs['message_erreur'] .= _T('info_passes_identiques');
      -			}
      -			elseif ($err = auth_verifier_pass($auth_methode, _request('new_login'), $p, $id_auteur)) {
      -				$erreurs['new_pass'] = $err;
      -			}
      -		}
      -	}
      -	elseif (!$id_auteur) {
      -		include_spip('inc/config');
      -		$email_reutilisable = lire_config('reservation_evenement/email_reutilisable', '');
      -		$obligatoires = array(
      -			'nom',
      -			'email'
      -		);
      +//		// Vérifier les mp
      +//		if ($p = _request('new_pass')) {
      +//			if ($p != _request('new_pass2')) {
      +//				$erreurs['new_pass'] = _T('info_passes_identiques');
      +//				$erreurs['message_erreur'] .= _T('info_passes_identiques');
      +//			}
      +//			elseif ($err = auth_verifier_pass($auth_methode, _request('new_login'), $p, $id_auteur)) {
      +//				$erreurs['new_pass'] = $err;
      +//			}
      +//		}
       	}
      +	
      +//	elseif (!$id_auteur) {
      +//		include_spip('inc/config');
      +//		$email_reutilisable = lire_config('reservation_evenement/email_reutilisable', '');
      +//		$obligatoires = array(
      +//			'nom',
      +//			'email'
      +//		);
      +//	}
       
       	if (test_plugin_actif('declinaisons'))
       		array_push($obligatoires, 'id_objet_prix');
      @@ -257,17 +258,17 @@
       			$erreurs[$champ] = _T("info_obligatoire");
       	}
       
      -	if ($email) {
      -		include_spip('inc/filtres');
      -		// un redacteur qui modifie son email n'a pas le droit de le vider si il y en avait un
      -		if (!email_valide($email)) {
      -			$erreurs['email'] = $id_auteur ? _T('form_email_non_valide') : _T('form_prop_indiquer_email');
      -		}
      -		elseif (!$id_auteur and !$email_reutilisable) {
      -			if ($email_utilise = sql_getfetsel('email', 'spip_auteurs', 'email=' . sql_quote($email)))
      -				$erreurs['email'] = _T('reservation:erreur_email_utilise');
      -		}
      -	}
      +//	if ($email) {
      +//		include_spip('inc/filtres');
      +//		// un redacteur qui modifie son email n'a pas le droit de le vider si il y en avait un
      +//		if (!email_valide($email)) {
      +//			$erreurs['email'] = $id_auteur ? _T('form_email_non_valide') : _T('form_prop_indiquer_email');
      +//		}
      +//		elseif (!$id_auteur and !$email_reutilisable) {
      +//			if ($email_utilise = sql_getfetsel('email', 'spip_auteurs', 'email=' . sql_quote($email)))
      +//				$erreurs['email'] = _T('reservation:erreur_email_utilise');
      +//		}
      +//	}
       
       	// les champs extras auteur
       	include_spip('cextras_pipelines');

      Ainsi les champs extras sont gérés (hormis encore quelques problemes) et un compte auteur est créé, mais le visiteur se retrouve automatiquement connecter ( et son compte validé ... sans mot de passe ) alors que je souhaiterais qu’il soit seulement « à confirmer »

      Marc

    • bonsoir Rainer,
      Merci pour ta proposition, sans avoir suivi tes conseils, j’ai continué une voie pour parvenir à mon fonctionnement attendu.
      Comme indiqué à Julie, j’ai modifié la fonction de formulaires_reservation_verifier_dist de façon à enregistrer l’auteur (sans mot de passe puisque je souhaite qu’il soit modéré), de plus j’ai modifié dans inc/reservation_enregistrer.php pour lui attribuer le statut aconfirmer et ne pas exécuter la connexion.

      --- reservation_enregistrer (copie).php	2017-04-17 23:34:28.000000000 +0200
      +++ reservation_enregistrer.php	2017-04-17 23:35:58.000000000 +0200
      @@ -34,11 +34,11 @@
       			$res = formulaires_editer_objet_traiter('auteur', 'new', '', '', $retour, $config_fonc, $row, $hidden);
       			$id_auteur = $res['id_auteur'];
       			sql_updateq('spip_auteurs', array(
      -				'statut' => '6forum'
      +				'statut' => '8aconfirmer'
       			), 'id_auteur=' . $id_auteur);
       			$auteur = sql_fetsel('*', 'spip_auteurs', 'id_auteur=' . $id_auteur);
      -			auth_loger($auteur);
      -			set_request('id_auteur', $id_auteur);
      +//			auth_loger($auteur);
      +//			set_request('id_auteur', $id_auteur);
       		}
       	}
       	elseif (intval($id_auteur) and _request('modifier_donnees_auteur')) {

      et donc j’obtiens un fonctionnement presque correct pour mes événements, il me reste à gérer les champs d’extras non obligatoires ou spéciaux...

      donc à suivre ...

    • Bonjour Rainer
      Pour terminer ce fil, j’ai réglé les problèmes de date du plug inscription3.
      tout simplement j’ai retiré de la config i3 le champ date de naissance (et date d’enregistrement), ensuite j’ai installé les plugs « Champs Extras » et « Champs Extras Interface » [3.5.2] avec lequel j’ai configuré un champ date pour la table AUTEURS, ainsi que le plug « Date d’inscription » [0.2.1].
      Ainsi la saisie et vérification des champs extras, depuis le module « réservation événements », fonctionnent normalement.
      Pour terminer, je complète les mails de notification à l’aide de contenu d’articles spéciaux. dans contenu_reservation_mail.html

      ....
      </B_contact>
      
      <BOUCLE_test_statut(CONDITION) {si #ENV{statut}|!={cloture}|oui}>
      	<BOUCLE_politesse(ARTICLES){tout_voir}{type_mot='notifications'}{titre_mot=#GET{statut}}>
      	[(#ENV{qui}|=={client}|oui)
      	<p>Madame, Monsieur</p>
      	<p>votre référence client : #GET{nom_client}</p>
      	<p>#TEXTE</p>]
      	</BOUCLE_politesse>
      
      [(#ENV{qui}|=={client}|non)
      ....

      Je peux te faire parvenir mes squelettes modifiés à l’occasion.
      Merci

    • Salut lebardix,

      tant mieux que tu as trouvé une solution. Oui, envoie moi tes squelettes

      Bonne journée
      Rainer

    Répondre à ce message

  • 5

    bonjour,
    j’utilise le plugin Inscription3 pour la gestion des visiteurs

    De plus, j’ai installé le plugin réservation d’événements

    Si inscription3 est actif
    Dans le cas de la réservation à un événement soit
    ============ le visiteur est inconnu et non inscrit ===============
    * le formulaire d’inscription s’ouvre VIERGE ....
    l’utilisateur rempli les champs correctement et valide
    le formulaire signale
    « Votre compte a été correctement créé, Il est en attente de
    validation d’un administrateur »
    +++++ TOUT VA PRESQUE BIEN +++++
    il reçoit un message de validation et un mot de passe (alors qu’il
    en avait peut être donné un... mais passons)
    donc depuis le message il se connecte et paf il est affiché qu’il ne
    peut pas accèder à je ne sais quoi sur le site, mais cependant il
    est connecté..... la réservation existe

    ============= le visiteur est inscrit et connecté ==================
    * le formulaire d’inscription s’ouvre VIERGE ....aucun champ de son
    identification (login ou autre) ne sont mis à jour et donc il peut
    vouloir :

    ** soit remplir le formulaire avec son identifiant (avec les bonnes
    informations mot de passe et tout et tout) à la validation il lui
    est opposé ce message au dessus du champ pseudo « Cette valeur est
    déjà utilisé par un autre utilisateur »
    +++++ ET DONC IMPOSSIBLE DE S’INSCRIRE ++++++

    ** soit remplir le formulaire avec un identifiant qui n’est pas le
    sien (adresse, nom, etc qui sont définis dans le formulaire) et alors
    à la validation le message d’erreur « Impossible de prendre en compte
    votre message. Merci de le soumettre à nouveau ! »
    +++++ ET DONC IMPOSSIBLE DE S’INSCRIRE ++++++


    Si le plugin inscription3 est désactivé, la réservation d’événements
    fonctionne
    la réservation se fait au nom de l’utilisateur connecté,
    le message de validation est bien envoyé, sinon l’inscription se fait
    au nom de l’identifiant et mail indiqués dans le formulaire de base.


    y a-t-il une solution pour faire fonctionner la réservation avec
    inscription3, ou serait-il possible d’utiliser un formulaire basé sur
    formidable ?

    Merci

    • Bonjour,

      malheureusement je ne l’ai jamais testé avec inscription3. Je ne l’ai plus utilisé depuis longtemps et je méconnais son fonctionnement actuel. Je ne sais pas quand j’aurai le temps d’analyser ça.

      Rainer

    • Bonjour,

      J’utilise inscription 3 et ce plugin sur un site en SPIP 3 et cela fonctionne.
      Je teste d’abord si l’utilisateur est inscrit avant le remplissage du formulaire d’inscription.
      Mon code (sûrement pas parfait mais ça fonctionne) :

      <div class="fiche">
      [(#SESSION{id_auteur}|non) [(#LOGIN_PUBLIC)]
      <div class="spip_accordeon">
      <h3>Vous inscrire sur ce site</h3>
      <div class="ajax">#FORMULAIRE_INSCRIPTION</div>
      </div> ] [(#SESSION{id_auteur}|oui) [Bonjour <span class="#EDIT{inscrit_prenom}">(#SESSION{inscrit_prenom})</span>] [
      <span class="#EDIT{inscrit_nom}">&nbsp;(#SESSION{inscrit_nom})</span>] [ ((#SESSION{login}))] [
      <div class="#EDIT{inscrit_club}">Club : (#SESSION{inscrit_club})</div>] [
      <div>Email : (#SESSION{email})</div>] [
      <div class="#EDIT{inscrit_tel}">Tel : (#SESSION{inscrit_tel})</div>] [(#SESSION{id_auteur}|=={#ID_AUTEUR}|oui)#FORMULAIRE_EDITER_AUTEUR{#ENV{id_auteur}}]
      <a href="#URL_LOGOUT" rel="nofollow" class="hyperlien">
      <:icone_deconnecter:>
      </a>
      ]
      </div>

      Et lorsque le visiteur est identifié alors il peut remplir sa réservation :

      <BOUCLE_auteur(AUTEURS){id_auteur=#SESSION{id_auteur}}{tout}>
      [(#PLACES|>{0}|oui)
      <div class="evenbox">
      <div class="ajax">
      #FORMULAIRE_RESERVATION{#LISTE{#ID_EVENEMENT}} </div>
      </div>]
      </BOUCLE_auteur>

      Tu peux le voir en action ici : https://huit.re/resa

      dd

    • Bjr, merci pour la piste, j’utilise zcore,
      ton site correspond à mon objectif mais déjà :
      Je n’ai pas accès à la page auteur /spip.php ?page=auteur&var_mode=inclure j’ai les erreurs suivantes qui apparaissent

      1 - plugins/auto/zcore/v2.6.1/structure.html aucun squelette head/auteur n’est disponible
      2 - plugins/auto/zcore/v2.6.1/structure.html aucun squelette head_js/auteur n’est disponible

      pour le test j’ai totalement vidé mon dossier squelettes, où sont ces fichiers sur tout site ?
      Merci

    • rebonjour,

      Si le fichier par défaut de zcore plugins/auto/zcore/v2.6.0/head/dist.html n’est pas présent tu as un problème avec tes fichiers ou bien alors il n’y a pas d’auteur qui a au moins 1 article publié sur ton site.

    • re
      j’ai bien un fichier plugins/auto/zcore/v2.6.1/head/dist.html, et des articles par 2 auteurs,
      lorsque je demande la page monsite/spip.php ?page=auteur
      il m’indique manquer les fichiers
      head/auteur et head_js/auteur
      Peux-tu me lister tes plugins ?

    Répondre à ce message

  • Pierrot

    Bonjour,

    Un bug potentiel.

    Je regardai mes logs spip sur un site avec les plugins agenda et réservation et je vois une erreur très fréquente :

    2017-03-16 17:20:45 46.255.162.88 (pid 3169) :Pub:ERREUR: Erreur 1054 de mysql: Unknown column 'spip_reservations_details.statut' in 'where clause'
    in /home/XXXXXXXX/public_html/plugins/auto/reservation_evenement/v1.23.13/genie/reservation_evenement_cloture.php L28 [sql_select(),genie_reservation_evenement_cloture_dist(),queue_start_job(),queue_schedule(),inc_genie_dist(),cron(),action_cron(),traiter_appels_actions(),include()]
    SELECT id_reservations_detail,<span class="base64" title="PGNvZGUgY2xhc3M9InNwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lIiBkaXI9Imx0ciI+WVlZWVlZWVk8L2NvZGU+"></span>.sada_reservations_details.id_evenement,date_fin
    FROM <span class="base64" title="PGNvZGUgY2xhc3M9InNwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lIiBkaXI9Imx0ciI+WVlZWVlZWVk8L2NvZGU+"></span>.sada_reservations_details,<span class="base64" title="PGNvZGUgY2xhc3M9InNwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lIiBkaXI9Imx0ciI+WVlZWVlZWVk8L2NvZGU+"></span>.sada_evenements
    WHERE spip_reservations_details.statut="accepte" AND 
    			spip_reservations_details.id_evenement=spip_evenements.id_evenement AND
    			spip_evenements.date_fin &lt;="2017-03-16 17:20:45" AND
    			spip_evenements.action_cloture =1
    2017-03-16 17:20:45 46.255.162.88 (pid 3169) :Pub:ERREUR: Erreur mysql 1054

    J’ai occulté les noms de dossiers et de base.

    Ce qu’on voit c’est que le SELECT récupère la bonne base et les bonnes tables avec le bon préfixe « sada_ » mais qu’ensuite la clause WHERE oublie ce préfixe pour utiliser « spip_ » ... donc avec pour résultat un Unknown column 'spip_reservations_details.statut' in 'where clause'

    Bug, pas bug ?

    Pierre.

    Répondre à ce message

  • 4
    Julie B.

    Bonjour Rainer,

    Quelques petits problemes sur les prix :

    Evenements avec prix (prix uniquement mis sur l’article, taxe definie par defaut dans prix_objets).
    Un exemple :
    prix HT : 18 avec 10% de taxe
    La page inscription affiche bien un prix de 19,8

    Mais,apres paiement, la transaction affiche 18HT 18TTC 18,1 REGLE
    et donc ici, seul le prix HT est correct.

    Merci d’y jeter un coup d’oeil.

    Julie

    • Salut Julie,

      Merci pour le signalement, c’est corrigé sur github et bientôt sur la zone

      Rainer

    • Julie B.

      Merci Rainer !
      Julie

    • Julie B.

      Bonjour Rainer,

      Il y a une coquille je pense dans le donnees_reservations_details.php ligne 137 : 1 virgule en trop ?
      Correction faite, mes premiers tests montrent bien un prix ht, ttc et regle desormais coherent.

      Bonne journee

      Julie

    • Salut Julie,

      c’est corrigé

      Rainer

    Répondre à ce message

  • 3
    Pierrot

    Bonjour,

    J’ai envoyé un msg hier mais comme il n’est toujours pas apparu, je recommence.

    Je pense avoir détecté un souci. Mes logs sont pleins de message du type :

    2017-03-17 14:08:03 46.255.162.88 (pid 3169) :Pub:ERREUR: Erreur 1054 de mysql: Unknown column 'spip_reservations_details.statut' in 'where clause'
    in /home/XXXXXXXX/public_html/plugins/auto/reservation_evenement/v1.23.13/genie/reservation_evenement_cloture.php L28 [sql_select(),genie_reservation_evenement_cloture_dist(),queue_start_job(),queue_schedule(),inc_genie_dist(),cron(),action_cron(),traiter_appels_actions(),include()]
    SELECT id_reservations_detail,<span class="base64" title="PGNvZGUgY2xhc3M9InNwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lIiBkaXI9Imx0ciI+WVlZWVlZWVk8L2NvZGU+"></span>.sada_reservations_details.id_evenement,date_fin
    FROM <span class="base64" title="PGNvZGUgY2xhc3M9InNwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lIiBkaXI9Imx0ciI+WVlZWVlZWVk8L2NvZGU+"></span>.sada_reservations_details,<span class="base64" title="PGNvZGUgY2xhc3M9InNwaXBfY29kZSBzcGlwX2NvZGVfaW5saW5lIiBkaXI9Imx0ciI+cG91c2FzcGlwPC9jb2RlPg=="></span>.sada_evenements
    WHERE spip_reservations_details.statut="accepte" AND 
    			spip_reservations_details.id_evenement=spip_evenements.id_evenement AND
    			spip_evenements.date_fin &lt;="2017-03-17 14:08:03" AND
    			spip_evenements.action_cloture =1
    2017-03-17 14:08:03 46.255.162.88 (pid 3169) :Pub:ERREUR: Erreur mysql 1054

    La requete commence bien avec un SELECT et un FROM qui tiennent compte du fait que mon installation spip comporte un prefixe « sada_ » pour les tables ... Par contre la clause WHERE revient à un préfixe « spip_ » ce qui génère toutes les erreurs dans le log. Bug ?

    Pierre.

    • Pardon, ce message m’avait échappé. Je regarderai ça demain.

    • Salut Pierre,

      Merci pour le signalement. Cette requête ne posait pas de problème sous spip 3 mais spip 3.1 s’embrouille. Ça devrait être bon maintenant.

      Rainer

    • Pierrot

      Bonjour,
      Je viens de tester, ça a l’air bon, plus d’erreurs dans le log. Merci !!
      Pierre

    Répondre à ce message

  • 3

    Bonjour Rainer, enfin, re-bonjour,

    Mon plugin de groupement de réservation est en service sur mon site (www.ffessm-agn2017.fr).
    J’ai encore quelques correctifs et améliorations à apporter mais çà fonctionne.
    Je reviens vers toi pour un autre point : maintenant que les réservations sont lancées, il va falloir les stopper un jour.
    L’option de clôture automatique est très bien, mais elle agit seulement à date d’événement.
    Pour mon cas, je dois stopper 3 semaines avant la date d’événement pour contacter les fournisseurs.
    Comment pourrai-je automatiser cette règle, qui est propre à chaque événement ?

    Merci de tes pistes de recherche.
    Amitiés jean.

    • Salut Jean,

      à mon avis tu devrais créer un champ extras date_fin_inscription dans la table spip_evenements puis dans formulaires/inc-reservation_evenements.html à la ligne 4 mettre

      <BOUCLE_art_or (DATA){source tableau,#ENV{evenements}} {id_evenement_source ?} {date_fin_inscription>#DATE} {par date_debut}>

      pour empêcher l’inscription , puis évidemment adapter les autres squelettes en questions.

      Rainer

    • Bonjour Rainer,

      Merci beaucoup pour cette piste.
      Je vais regarder pour l’intégrer.
      Amitiés Jean.

    • Bonjour Rainer,

      J’ai appliqué ton idée (c’est vrai tardivement) et c’est Ok.
      Pour plus de clarté, j’ai ajouté dans la partie alternative de la boucle un message pour bien signaler qu’aucune inscription n’est ouverte.

      Bon, reste le formulaire de connexion mais pour l’oblitérer, il faut aller beaucoup plus loin (peut-être initialiser une variable d’environnement au niveau supérieur, la positionner si aucune inscription et verrouiller la connexion avec).

      Encore merci pour tes travaux et tes conseils.
      Amicalement Jean.

    Répondre à ce message

  • 6
    Pierrot

    Bonjour,

    Je pense avoir détecté un petit bug.

    Dans inc-reservation_evenements.html ligne 33 on a :

    <strong>([(#DATE_DEBUT|affdate_debut_fin{#GET{date_fin},#HORAIRE})])</strong>

    Cette ligne donne les dates-heures d’un événement que l’on souhaite réserver. Le souci est que dans le cas d’événements répétitifs, sur le premier événement (et uniquement sur le premier) cela donne l’amplitude de la première date à la dernière date (toutes les répétitions). Sur les événements suivants, curieusement c’est bon, ça ne donne la date-heure que de l’événement à réserver.

    J’ai remplacé par :

    <strong>([(#DATE_DEBUT|Agenda_affdate_debut_fin{#DATE_FIN,#HORAIRE})])</strong>

    Ceci en m’inspirant d’un autre affichage que je faisais en dehors du formulaire de résa et c’est bon ! Après plusieurs test je constate que c’est #GET{date_fin} qui fait souci, si je remplace en haut par #DATE_FIN, c’est bon aussi.

    Voilà !

    Pierre.

    • Salut Pierre,

      Ce n’est pas vraiment un bug, mais peut être pas assez clair en cas d’événements répétés, car on ne voit pas les détails des répétitions, seulement le début et la fin de l’événement.

      Il faudrait peut être ajouter le nombre de répétitions et dans faire apparaitre en mouseover ou click (modal) le détails des répétitions.

      Qu’est-ce que tu en penses ?

      Rainer

    • Pierrot

      Bonjour,

      En fait j’ai hésité sur le mot bug mais finalement je pense que c’est un bug ou alors effectivement une fonctionnalité que je ne comprends pas du tout (et c’est possible).

      Ce qui me fait penser que c’est un bug :

      -  la plupart du temps les événements répétés sont juste (exemple) la même formation que l’on dispense 5 fois, donc clairement quelqu’un qui veut s’inscrire souhaite aller une fois à une des 5 séances. Si dans le formulaire on lui dit qu’il s’inscrit du 8 mars 8h00 au 25 avril 16h00 il ne comprend pas, donc il faut que le formulaire affiche clairement la date pour laquelle il s’inscrit, à savoir, le 8, le 15, le 22 ou ... de 8h00 à 16h00 le jour choisi.

      -  ensuite dans mon cas j’avais disons 3 ou 4 événements répétition d’un premier, le premier chronologiquement affichait du 8 mars au 25 avril de 8h00 à 16h00 (donc je pense pas compréhensible pour l’internaute qui voulait venir juste le 8 mars de 8h00 à 16h00) et ensuite tous les formulaires de réservation des événements suivants affichaient ensuite bien la date du jour de l’événement seulement (et donc pas du tout la plage de date du premier événement à la dernière répétition comme dans le cas du tout premier) ce qui était bien pour moi le bon comportement.

      On a eu du mal à trouver car souvent les événements racines (ceux qui ont été répétés) étaient souvent déjà passés et ne s’affichaient plus, il a fallu que l’on crée un nouvel événement racine dans le futur avec X répétitions pour s’apercevoir des différences d’affichage entre l’événement racine et les répétés.

      C’est dur d’expliquer ce genre de souci, si tu le souhaites je peux remettre le code originel, te passer en MP l’url pour que tu vois, une fois que tu as vu je te remets ma modif ...

    • Ce que je ne comprends pas

      et ensuite tous les formulaires de réservation des événements suivants affichaient ensuite bien la date du jour de l’événement seulement (et donc pas du tout la plage de date du premier événement à la dernière répétition comme dans le cas du tout premier)

      il s’agit également d’événement répétés ?

      Pour l’affichage des événement répétés, tu as raison, c’est peu claire. Qu’est-ce que tu penses de ma suggestion.

      Il faudrait peut être ajouter le nombre de répétitions et faire apparaitre en mouseover ou click (modal) le détails des répétitions.

      Ou veux-tu proposer l’inscription pour chaque événement répété ?

      Alors il faudra mettre faudrait ou passer la variable

      options['id_evenement_source'] = ''

      dans le contexte our remplacer la 4e variable du formulaire par

      #ARRAY{id_evenement_source,''} 

      ce qui donnerait

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

      Oui bien sûr il s’agissait bien des répétitions du premier et oui bien sur j’affiche les événements répétés un par un avec chacun un formulaire de réservation propre à chaque répétition.

      Donc non la boite modale brouillerait les cartes, je ne veux pas qu’un événement répété affiche toutes ses occurences, j’ai autant de « boites » que j’ai d’événements ce qui permet d’avoir tous les événements en ordre chrono, quelle que soit le cycle de répétitions auquel il pourrait appartenir (ou pas).

      Pierre.

    • Pierrot

      En fait je constate que j’ai réussi à corriger le comportement de l’affichage mais j’ai encore le soucis dans les emails envoyés au gestionnaire ou là aussi on informe le gestionnaire qu’untel s’est inscrit à un évènement et on lui donne toute l’amplitude des répétitions ... donc on ne sait pas à quel date exactement (parmi les répétitions) la personne s’est inscrite.

      Je pense qu’il y a 2 conceptions sur ces répétitions :

      -  le plugin considère qu’un évènement avec des répétitions est un seul évènement et que l’on s’inscrit à l’ensemble des séances
      -  pour moi ces répétitions sont par exemple la répétition d’un même cours 8 fois dans l’année et je veux que l’on s’inscrive à un seul des 8 cours pas au 8 ... donc dans ce cadre l’affichage et le mail sont incompréhensibles car ils signalent l’amplitude complète des répétitions.

      Je vois qu’en fait je devrais faire la correction dans l’enregistrement des détails car le mail ne fait qu’envoyer les détails, je ne vois pas comment corriger dans la notification ... Je devrais regarder ou pour arriver à faire une correction équivalente au moment ou on crée le détail ?

    • Tu peux utiliser la pipeline reservation_evenement_donnees_details qui permet de modifier les détails de l’enregistrement (action/editer_reservations_detail.php ligne 70) générés par la fonction

      $donnees_reservations_details = charger_fonction('donnees_reservations_details', 'inc');

      elle même surchargeable dans ton fichier mes_fonctions.php

    Répondre à ce message

  • 25

    Bonjour,
    Après avoir activé le plugin Réservation d’évènements et configuré celui-ci, lorsque je clique sur un événement de ma page agenda dans l’espace public, j’ai un message d’erreur m’indiquant : Erreur 404, l’url n’existe pas. Voici le lien qui pourtant fonctionne très bien si le plugin réservation est désactivé : http://monsite/spip.php?page=evenement&id_article=40

    Je suis sous SPIP 3.1.4, Sarka-SPIP 3.4.6, PHP 5.4.45.

    Quel peut être le problème ? Si quelqu’un peut m’aider.
    Merci et cordialement,
    Yann

    • Bonjour,

      Le plugin propose des squelette sevenement à la source et dans le dossier content.

      Regarde le quel des deux cause problème et surcharge le/les dans ton squelettes avec ton original

      Rainer

    • Bonjour Rainer,
      Merci beaucoup pour réactivité. En effet, j’ai surchargé les squelettes et cela fonctionne. Super !
      J’ai effectué 2 réservations en test.
      Les réservations fonctionnent et sont visibles dans l’espace privé Activité / Réservations.

      Par contre, lorsque je vais dans l’événement dans l’espace privé mes détails de réservation s’affichent bien en bas (cf. xx détails de réservation)

      mais j’ai une ligne :
      Inscription en ligne : 50 places (Réponses : 0 oui | 0 non | 0 ?)
      Liste des inscriptions

      et quand je clique sur « Liste des inscriptions », c’est vide et sur mon site en ligne en dessous du calendrier et de l’événement j’ai : | 0/50

      Le formulaire lui, affiche bien le nombre de places restantes.

      Il doit s’agir d’un détail...mais où ?

      Yann

    • Ce dont tu parles est une fonctionnalité native du plugin agenda et pas lié à ce plugin.

      Comme plusieurs utilisateurs se sont déjà étonné de ça je vais peut-être le cacher dans le futur en laissant la possibilité de le faire réapparaître via la config.

      Le résumé des réservations se trouvent toujours dans la colonne gauche au niveau de l’événement, article, rubrique

    • Rainer,
      Si je comprends bien, on ne peut donc pas récupérer les infos bien que cela fasse partie du plugin Agenda.
      Dans ce cas oui, il serait peut être intéressant de le masquer avec la possibilité éventuelle de l’utiliser via la config.
      Merci.
      Yann

    • Pas tout à fait.

      Le plugin agenda dispose d’un propre formulaire d’inscription avec une table propre pour l’enregistrement. Le réservations faits via ce formulaire seraient disponibles à cet endroit.

      Réservation utilise d’autres tables et un autre formulaire et ses résultats son visible dans la colonne gauche.

      Le seul lien entre les deux systèmes est le champ « inscription » dans le formulaire d’édition de l’événement.

    • Ah d’accord. Compris ! :-)
      Pour faire propre sur le site en ligne, est-il possible dans ce cas de masquer l’info | 0/50 présente en dessous du calendrier ?

    • Pour le moment tu peux le faire en css.

      Je vais le prévoir dans une future version du plugin

    • Merci Rainer.
      Je n’ai pas trop été encore dans les css :-) peur de mettre le cirque...mais je vais regarder.
      Yann

    • Rainer,

      Je ne m’y connais pas trop en CSS et j’ai peur de faire des bêtises...

    • Je vais voir si j’ai un moment ce week-end pour le faire

    • Merci Rainer ! :-)

    • je viens de modifier le plugin dans ce sens. Par défaut c’est caché, possibilité de le rendre visible via config.

    • Rainer,
      Merci infiniment. Magnifique. Bon weekend.
      Yann

    • Rainer,
      Quand je veux modifier une réservation dans l’espace privé, par exemple pour indiquer la date de paiement, j’obtiens un message qui me dit qu’ il y a une erreur dans ma saisie.
      Pourtant j’indique juste la date sans rien modifier d’autre.
      Yann

    • peux-tu m’envoyer un screenshot ?

    • Bonjour Rainer,

      Voici le screenshot.

    • Je ne reproduis pas.

      Version spip, version reservations_evenements ?

      Peux-tu faire un essais avec seul les plugins nécessaire pour reservations_evenement installés ?

    • Même résultat en ne conservant que les plugins nécessaires à la réservation.
      SPIP 3.1.4, reservations_evenement 1.23.12
      Yann

    • pourrais-tu mettre la balise #ENV dans formulaires/editer_reservation.html, ressayer de soumettre le formulaire et me poster le résultat

    • Voici le résultat.

    • mais tu n’as pas d’erreur cette fois-ci, non ? Tu as soumis le formulaire ? Peux tu également mettre #ENV{erreurs}  ?

    • Si j’ai une erreur. Voici ce que j’obtiens après avoir rajouté #ENVerreurs

    • je vois.

      Tu as du désactivé « Permettre de réutiliser une adresse email ».

      Et une adresse email présente dans le champ « email » (caché) qui est déjà utilisé par un auteur.

      Enlève la sélection sous « client », ce qui fait réapparaître le champ email -> enlève l’adresse email et tout devrait entrer en ordre.

      Cependant cela ne devrait pas arriver et je vais corriger le plugin

    • Rainer,
      Super. Tout fonctionne. Merci encore pour ton aide.
      Bonne soirée.
      Yann

    • Tant mieux, le plugin est d’ailleurs actualisé

    Répondre à ce message

  • 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

  • 2

    Bonjour Rainer,

    J’arrive aux premiers essais du plugin complémentaire dont j’ai déjà parlé ici pour associer la réservation à un groupe (qui pourrait être une table de gala par exemple).
    Pour associer mes groupements (tables) aux détails de réservation (pour chaque ’réserviste’), j’ai utilisé l’ajout d’un champ extra via les API dans la table ’reservations-details’.
    Ceci pour m’éviter un fichier lien supplémentaire sachant que chaque personne ne peut être que dans un seul groupe.
    Or, il apparaît, lors d’un changement de statut, que cette info disparaît :-(
    As-tu une idée sur comment corriger cela, ou faut-il que je repasse par un fichier lien en limitant la relation (je ne sais pas encore comment d’ailleurs).

    L’ensemble de ton projet est très cohérent et je ne souhaite pas casser ta logique.

    Amitiés Jean.
    PS : Je n’ai pas encore vérifier ta modif sur les répétitions d’événements. Je vais avoir un peu de temps maintenant.

    • Salut Jean,

      un peu difficile de voir ce qui se passe, peux-tu m,e donner accès à ton code ?

      Bonne journée
      Rainer

    • Bonjour Rainer,

      Un peu en retard !!
      Merci de ta proposition ; pour le moment le code est en pur local et il n’est pas beau à présenter ;-) Je suis un peu dans l’urgence.
      La nuit ayant permis de réfléchir, je suis en cours d’application de l’idée de fichier lien de mon message précédant.
      Je penses que cela permet de ne pas interférer avec ton code et donc mon plugin reste vraiment optionnel vs le tien.
      Je te tiens au courant de l’évolution.

      Amitiés Jean.

    Répondre à ce message

  • 8

    Hello Rainer,
    Un point d’amélioration possible :
    Dans le squelette ’saisies/articles_evenements.html’, j’ai ajouté sur les boucles ’evenements’ le critere inscription==1 pour limiter la liste des événements aux seuls pour lesquels on a ouvert les inscriptions. Plus léger.

    Amitiés. Jean.

    • Après réflexions, je ne comprends pas lors de répétitions d’événements, tu fusionnes en un seul choix de réservation.
      Pour moi, chaque répétition peut faire l’objet d’une réservation indépendante ; imagines un spectacle qui a 3 représentations, on ne peut pas réserver les 3 d’un seul coup !!
      Voilà, une simple idée qui me passe par la tête au milieu de la nuit :-)

      Allez je vais me coucher. Amitiés.

    • dans la version 100784 j’ai repris ta proposition.

      Quant à ta question. Tu veux dire que avec déclinaison activés il n’est pas possible de choisir deux ou plus de déclinaisons d’un événement ? Effectivement ça pourrait être intéressant à rendre possible.

      Il faudrait alors pouvoir définir si les déclinaisons sont à choix multiples ou pas lors de l’encodage du prix (évolution de déclinaisons et réservation événements).

      Est-ce que j’ai bien compris ta question ?

    • Bonjour Rainer, et un grand merci pour cette suite de plugins qui semblent parfait pour le nouveau projet sur lequel je travaille.
      Mais je butte sur le même problème que Per’Jean : chaque répétition doit pouvoir faire l’objet d’une réservation indépendante. Et je ne comprends pas ta réponse : quel rapport avec les déclinaisons ? pour moi, les déclinaisons sont plutôt des déclinaisons de prix. Pour reprendre l’exemple de Per’Jean : un spectacle peut avoir trois représentations et chacune peut se décliner avec un prix adulte, enfant, chômeur, etc...
      Je me gourre dans la façon de faire ?

      J’en profite au passage pour te signaler une coquille relevée dans inc/donnees_reservations_details.php : ligne 29, $datte au lieu de $date.

      Merci encore pour tout ce boulot,
      Chaleureusement

    • Je crois que je comprends maintenant.

      Si dans formulaires/inc-reservation_evenements.html tu enlèves id_evenement_source=0 cela t’afficherai tous les événements répétés, non ? Je

      merci pour le signalement, je le corrigerai.

    • Merci, en effet c’est une piste, à condition de modifier également formulaires/reservation.php ligne 51 pour :
      $where = array('inscription=1 AND statut="publie"');
      sinon une fois l’événement initial passé plus aucun événement ne s’affiche dans le formulaire de réservation.
      Du coup, il m’a fallu aussi ajouter dans formulaires/inc-reservation_evenements.html une <BOUCLE_avenir (EVENEMENTS) {id_evenement}{evenement_a_venir}> cette fois pour n’afficher que les événements à venir dans le formulaire de réservation ( là, il y a sûrement moyen de faire plus propre mais je n’ai pas pris le temps de fouiller ).
      Bref, on s’en sort sauf que formulaires/inc-reservation_evenements.html n’est utilisé que lorsque le plugin des déclinaisons n’est pas activé ! Sinon c’est formulaires/inc-reservation_evenements_declinaisons.html qui est utilisé, et là si j’enlève id_evenement_source=0, je me prends une erreur 500 dans les dents ( aîe !).
      Bon, je continue à fouiller car j’aimerais bien utiliser les déclinaisons aussi ;)
      Passe une bonne journée et merci encore.

    • Salut Éric,

      je viens de faire un essai https://github.com/abelass/reservation_evenement/tree/dev que je n’ai pas pu tester à fond

      J’ai introduit la possibilité de desactiver l’affichage unique des événements sources.

      #FORMULAIRE_RESERVATION{#ENV{id_evenement},#ENV{id_article}, #ENV{retour}, #ARRAY{id_evenement_source,''}}
    • Normalement ça devrait être bon maintenant, j’ai actualisé le github et testé avec et sans déclinaisons. Ça répond à ce que vous cherchiez ?

    • Waou, super. Je teste tout ça et je reviens te dire.

    Répondre à ce message

  • 6

    Bonjour Rainer,

    J’avance sur ma fonction complémentaire sur les tables (que j’appelle des groupements de réservations pour généraliser).
    J’ai besoin d’ajouter un champs extras ’selecte’ dans la table reservations_details pour choisir le groupement.
    En testant le fonctionnement au préalable, en privé, sur le formulaire ’editer_reservations-detail’, j’ai un champ ’Type de prix’ que je ne comprends pas.
    Le plugin ’prix_objet’ est activé mais seulement pour les événements et les réservations, pas pour les détails.
    Aurais-tu une piste de recherche du fonctionnement ?

    Amitiés jean.

    • Salut Jean,

      tu fais du bon débogage ;).

      Le champ « Type de prix » n’a du sens uniquement si le Plugin déclinasion est activé.
      De plus il ne cherchait les prix uniquement au niveau de l’article.

      Je viens de corriger ceci sur github : https://github.com/abelass/reservation_evenement en attendant que j’aille accès à svn.

      Tu n’as pas besoin d’activer les prix pour les réservations (ni pour détail de réservation). Les prix sont gérés au niveau des détails de réservation et sont tirés de l’évenément ou article correspondant.

      Bonne journée
      Rainer

    • Bonjour Rainer,

      Super la correction. Tu maîtrise complètement ton sujet :-)
      Ce n’ai pas encore le cas pour moi pour la nouvelle fonction.
      Je testerai plus tard avec ’déclinaison’, mais pour le moment je ne l’utilise pas.

      Merci Beaucoup.
      J’ouvre un nouveau fil car autre point.

    • Du nouveau (oups !!) :
      Sur mon site de dév, j’ai laissé par erreur le plugin ’déclinaison’ actif.
      Dans ce cas, lors de l’appel de ’editer reservation détail’, le champ ’type de prix’ est bien là avec les chois possibles.
      Sauf que après enregistrement (qui se passe bien), le ré-affichage de remet pas la valeur préalablement choisie.

      A toi ;-)

    • j’ai corrigé le problème de type de prix ainsi que la faute de frappe (signalé auparavant) dans la version 100784

    • Bonjour Rainer,

      Merci pour ce correctif.

      Amitiés Jean.

    Répondre à ce message

  • 3

    Bonjour Rainer,

    Je me remet sur l’utilisation de tes plugins et c’est super comme développements avec les différentes fonctions multiple, prix, déclinaison...
    Je travaille sur des réservations par groupe genre « je réserve pour une table de 10 ou de 20... » sous la forme d’un plugin complémentaire en local pour le moment.

    Juste à te signaler un défaut d’écriture dans reservatrion_evenement/v1.21.31/formulaires/reservation.html : ligne 4 le </div n’est pas fermé.

    A bientôt. Jean.

    • Salut Jean,

      Merci pour le signalement. Je le corrigerai dés que j’ai accès à svn.

      Je suis très intéressé par ton plugin. Dis moi quand c’est utilisable et je rajouterai un lien depuis cette page.

      Rainer

    • C’est fait.

      Encore concernant ton plugin. J’imagine que tu as regardé Réservations multiples, un plugin qui semble faire un travail similaire à ce que tu cherches : permet ou de réserver pour plusieurs personnes à la fois ou de spécifier le nombre de réservations.

    • Salut Rainer,

      Merci de ta réactivité.
      Oui bien sur j’utilise resrevation-multiple aussi.
      Qd j’aurai finalisé (besoin de mettre en ligne avant début décembre), je reviens vers toi pour te le présenter cette fonction de façon plus détaillée.
      Ce sera peut-être un cadeau de noël ;-)
      A bientôt Jean.

    Répondre à ce message

  • 2

    Bonjour,
    Je ne sais pas si c’est voulu mais je trouve perturbant d’avoir la case :
    Mode Envoi Séparé activé
    Le changement de statut vers « accepté partiellement, accepté » provoquera l’envoi d’une notification !

    affichée même si dans la config du plugin j’ai spécifié :
    Envoyer par mail des notifications de réservation ? NON

    Sinon tout fonctionne bien merci
    dd

    Répondre à ce message

  • 8

    bonsoir,
    Merci pour ce plugin très efficace, mais je rencontre plusieurs petits problèmes et parfois perturbants (autour des situations : connecté ou non-connecté)
    Est-ce un problème particulier à ma configuration ? spip 3.0.21, SPIPr-dist 0.4.15, plugin inscription3,....
    et utilisation du modele <reservation|> dans un article.

    Le premier - le visiteur est connecté et veut s’inscrire à un évènement, la fiche d’inscription fait apparaitre ses informations, mais malheureusement la personne peut/veut changer l’identifiant et l’adresse mail (par erreur ou volontairement).
    le résultat est que l’inscription apparait avec son identifiant de connexion, donc il faudrait
    -  soit interdire la modification de l’identifiant (ou bien ne pas le faire apparaitre),
    -  soit cette possibilité est offerte et l’inscription a bien lieu avec ce nouvel identifiant ...

    Le second - le visiteur n’est pas connecté et s’inscrit pour un événement, cependant il en profite pour s’enregistrer sur le site (case à cocher), lorsqu’il valide une deuxième partie de formulaire apparait (là encore il peut entrer un identifiant différent de celui saisi auparavant ...) mais comme il est maladroit, il ne saisit pas 2 fois le même mot de passe
    une erreur est signalée (mot de passe différent), mais ne sait plus quoi faire car il ne peut rien ressaisir

    ( à moins que par hasard il ne décoche la case d’enregistrement .. et là il peut rectifier la saisie des mots de passe,
    le message de validation de l’inscription à l’événement est correcte mais dans en réalité l’inscription n’est pas enregistré completement - un numéro d’inscription est créé, mais pas de fiche utilisateur)

    Merci d’un conseil ....

    • Bonjour

      Pour commencer, je n’ai pas tester le plugin avec inscription3

      -  Pour le premier point, je viens de modifier le plugin (v1.21.24) pour que le changement des données de connexion (auteur) ne se fasse uniquement si expressément souhaité. Afin de réserver avec un autre identifiant, il faut d’abord se déloger.
      -  Pour la deuxième question, je ne suis pas sur de comprendre.

      lorsqu’il valide une deuxième partie de formulaire apparait (là encore il peut entrer un identifiant différent de celui saisi auparavant ...)


      si on est pas logué il apparait un formulaire pour enregistre le nom et l’email et si on veur créer un compte, le login et le mot de passe son demandé en plus.
      _

      mais comme il est maladroit, il ne saisit pas 2 fois le même mot de passe
      une erreur est signalée (mot de passe différent), mais ne sait plus quoi faire car il ne peut rien ressaisir


      ceci était un bug qui vient d’être corrigé dans la dernière version

    • probleme à l’installation du zip version 98658

      Erreur dans les plugins : /srv/data/web/vhosts/www.marseillereiki.com/htdocs/plugins/auto/reservation_evenement98658/reservation_evenement_pipelines.php

      comment revenir en arrière ?

    • après avoir bien m***é avec l’installation zip 98658, sans doute pas la bonne (erreur de pipeline ...), j’ai voulu réactivé la version 1.21.23 qui m’a été noté obsolete,
      par dépit j’ai réinstallé en la version 1.21.23 et me retrouve en 1.23.24 (dans un repertoire /plugins/auto/reservation_evenement/v1.21.23) mais le xml est correct ... passons

      Donc après tests :
      -  l’inscription avec création d’un compte, les erreurs de mot de passe sont bien traitées et celui-ci est normalement créé
      -  l’inscription lors que la personne est connectée utilise les identifiants du compte et peuvent être modifiés c’est bien

      -  un problème reste dans en partie privée, dans la visualisation des événements , pour un événement ayant reçu une ou plusieurs inscriptions , lorsque utilise le lien « liste des inscriptions » on obtient toujours « Aucun inscrit »

      merci encore

      • Comment tu avais installé l’actualisation du plugin ? Ce n’est pas normal qu’il soit nomme « reservation_evenement98658 ».
      • Peux-tu me dire exactement ou se trouve le problème d’affichage ?
    • Comment tu avais installé l’actualisation du plugin ?
      comme il n’y avait pas de proposition dans la gestion SVP des plugins au sujet de reservation_evenement, j’ai voulu l’installer depuis le zip de svn donc
      - recupération depuis http://zone.spip.org/trac/spip-zone/changeset/latest/_plugins_/reservation_evenement?old_path=/&format=zip
      -  dépose dans un dossier de mon serveur
      -  installation du zip (en donnant l’adresse du fichier téléchargé sur mon serveur) depuis ajouter un plugin « Télécharger un plugin depuis son archive »
      -  le compte-rendu d’installation était positif, mais le message ( entre la barre des outils et le cadre contenant l’information que l’installation s’était bien déroulée ) /srv/data/web/vhosts/www.marseillereiki.com/htdocs/plugins/auto/reservation_evenement98658/reservation_evenement_pipelines.php était affiché.
      -  la conséquence sur la partie publique était l’affichage dans l’article du texte <reservation|> au lieu de l’affichage des événements ....

      comment j’ai résolu
      la version du plugin 1.21.23 était signalé obsolete dans le dossier des plugins INACTIFS.
      J’ai donc dans la liste des plugins ACTIFS désactivé le plugin reservation_evenement que je venais de rajouter par zip et ensuite j’ai réinstallé normalement depuis SVP le plugin proposé par la fonction de recherche (donc version 1.21.23)
      et la je me suis que c’était la version 1.21.24 qui était installée...... (sur le serveur le dossier /plugins/auto/reservation_evenement/ est resté nommé v1.21.23 ......

      à propos du problème dans la partie privée
      * depuis le menu Edition il s’affiche les réservations en cours
      * à gauche je choisis Événements - la liste des événements apparait
      * je sélectionne un événement (qui a au moins une réservation active) - l’événement s’affiche et il y a un lien « liste des inscriptions »
      * je clique sur ce lien et là il est signalé « Aucun inscrit »

      j’espère avoir été assez clair, sans doute mes manipulations pour l’installation n’ont pas été très réglementaires , merci

      • le plugin est disponible dans SVP normalement, mais bon tu as réussi à résoudre ton problème
      • et il y a un lien « liste des inscriptions »
        je clique sur ce lien et là il est signalé « Aucun inscrit »


        ce lien est cree par le plugin agenda et affiche les résultats des inscriptions gérés par agenda. _ C’est un peu confus, J’imagine que je devrait permettre de le cacher. les isncriptions ’a un événement peuvent être visualisées ou dans la colonne gauche sous « Réservations Événements » ou en dessous de l’événement.

    • bonsoir,
      pour le lien , fallait juste le savoir, maintenant il suffirait peut etre de simplement signaler qu’il n’appartient pas a ce plugin....

      par contre plus ennuyeux, l’administrateur du site voudrait gérer toutes ses réservations à ses stages. Certaines sont faites directement auprès de l’administrateur (tel ou vocale...), et donc je lui ai proposé de les ajouter depuis l’interface privée en créant une réservation .

      Le problème est le suivant
      -  l’admin peut créer une réservation mais impossible de préciser à quel événement s’applique la réservation :/
      ai-je mal vu ?

    • aille pas taper !!!
      oui j’ai mal vu, il faut reprendre la réservation et rajouter un détail ...
      pourquoi ce n’est pas fait dès la création de la réservation ?

      merci

    Répondre à ce message

  • 3

    Bonjour et merci pour ce plugin,

    J’ai deux questions
    1/ j’ai crée un champ extrat pour les prix des événements mais avec une liste déroulante, le visiteur doit choisir un prix sur une liste de 4 prix différente. Est ce ce plugin est prévu pour ce genre de choix de prix ?

    2/ comment faire de sorte de pouvoir payer en ligne aprés avoir fait une réservation ?

    Merci de votre réponse

    • Bonjour,

      1. Pas avec champs extras, mais oui avec Declinaisons produits (ensemble avec Prix Objets) qui permet d’attacher plusieurs prix à un objet (dans la config de prix objets il faut sélectionner les objets auxquels on veut attacher un prix)
      2. utilisez le plugin Réservations Bank qui ensemble avec le plugin Banque et paiement intègre le paiement. Réservations Bank n’a pas encore testé de manière exhaustive, su tu tombe sur des bugs n’hésite pas à me le communiquer.

      Rainer

    • Bonjour et merci pour la réponse,
      J’ai installé tous les plugins, mais ou est ce qu’on doit configurer prix objet ? je ne le vois nul part, je cherche a attaché les prix sur les événements.
      Merci de votre aide je veux aller jusqu’ au bout :)

    • C’est comme pour tous les plugins. Va sur la page des plugins et clique sur l’icone avec les outils (voir annexe)

    Répondre à ce message

  • 4
    AlainF

    Bonjour,
    bravo pour ce travail.

    Dans le cadre de l’euro 2016, nous faisons une réservation de place pour visualiser des matchs sur la place du village (pour prévoir les chaises, avec l’entrée gratuite).

    Est-ce envisagé de pouvoir sélectionner plusieurs événements d’une même rubrique ?
    soit dans mon cas :
    -  rubrique
    « Euro 2016 »
    - articles
    - « match 1 » avec événement associé (date, heure, lieu)
    - « match 2 » avec événement associé (date, heure, lieu)
    - « match 3 » avec événement associé (date, heure, lieu)

    Les personnes souhaitant s’enregistrer aux 3 matchs, doivent le faire 3 fois, c’est pas très difficile, mais ça fait autant de mails (x 3) ...

    Si vous avez un todo, il me serait agréable d’y trouver cette option.

    Cordialement, Alain

    • Bonjour,

      Il te suffit de passer un tableau avec les id_evenement souhaités comme première variable de la balise formulaire.
      Donc
      #FORMULAIRE_RESERVATION {#LISTE{1, 6, 7,...}}

    • AlainF

      Bonjour,
      merci pour cette réponse, mais j’utilise plutôt le modèle :
      <reservation|>
      dans l’article, doit-on l’écrire comme ça ?

      <reservation|>
      <reservation|id-évenement=xx>
      <reservation|id-évenement=yy>

      ayant essayé, je ne trouve pas le système convivial, car cela fait autant de fois le formulaire...

      Préférant la boucle dans le squelette : peut elle permettre de sélectionner les autres articles souhaités de la rubrique, seulement pour les évènement à venir sans avoir à indiquer leur #ID, comme dans
      #FORMULAIRE_RESERVATION {#LISTE{1, 6, 7,...}} ?

      Mais plutôt avec un critère de type {age_redac<0} ? Car il est serait bien de venir directement sur le dernier évènement et sélectionner ceux précédent qui ne sont pas encore passés !

      Cordialement, Alain

    • Pour le modèle, tu peux utiliser

      <reservation|id_evenement=1,2,3,...>

      Pour ta deuxiéme question, su tu veux afficher tous les événement futurs, il suffit de mettre

      #FORMULAIRE_RESERVATION

      sans passer des variables, cela prendra tous les futurs événement ouverts à l’inscription

    • AlainF

      Merci beaucoup,
      j’ai utilisé dans le squelette « article » en dehors de la boucle pour ne pas prendre le paramètre #ID_ARTICLE, le code suivant :

      [(#ID_RUBRIQUE|=={25}|oui)     [#FORMULAIRE_RESERVATION)]      ]

      Comme ça, je n’ai les infos souhaitées que dans les pages articles de la rubrique !

      Bravo pour cette réactivité.

    Répondre à ce message

  • 5

    quelques bugs :
    pardate_fin -> par date_fin
    Dans inc-reservation_evenements.html

    30	        <BOUCLE_evenements_lies(EVENEMENTS) {id_evenement_source=#ID_EVENEMENT}{!pardate_fin} {0,1}>
    31	                #SET{date_fin,#DATE_FIN}
    32	        </BOUCLE_evenements_lies>

    /content/evenement.html

    <BOUCLE_evmt_lie(EVENEMENTS){id_evenement_source=#GET{id_evenement_source}}{! pardate_fin}{0,1}>
    10	                #SET{date_fin,#DATE_FIN}
    11	        </BOUCLE_evmt_lie>

    Et aussi pour l’internationalisation :
    modeles/reservation.html

       #FORMULAIRE_RESERVATION{#ENV{id_evenement},#ENV{id_article}}

    Rajouter un petit : ,env

       #FORMULAIRE_RESERVATION{#ENV{id_evenement},#ENV{id_article},env}
    • Bonjour,

      ces bugs sont déjà corrigé dans la dernière version du plugin (1.21.20). Quant à

      #FORMULAIRE_RESERVATION{#ENV{id_evenement},#ENV{id_article},URLDEREDIRECTION}

      la troisième variable sert à définir une éventuelle url de redirection, donc env ne transmettra pas les variables de l’environnement, mais redirigera vers la page /env après la validation du formulaire.

    • Vous êtes sur ? car je viens de vérifier, je suis en 1.21.20 et sur le svn j’avais vérifié aussi avant de poster.

      Quand à ce paramètre URLDEREDIRECTION, je ne l’ai pas dans mon modèle reservation.html

    • Autant pour moi, je n’avais pas commité les modifs, c’est fait dans la version 1.21.21.

      Pour l’url de redirection, comme ce n’est pas un cas commun je ne l’avais pas mis dans le modèle

    • yep, j’en a ai trouvé 3 autres pardate_debut
      ligne 4 inc-reservation_evenements
      et les 2 autres dans la copie écran.

      Curieux car cela ne génère pas d’erreur.

      J’ai une proposition d’amélioration de code pour formulaires/reservation.htm :

      <div class="formulaire_spip formulaire_#FORM formulaire_#FORM-#ENV{id,#ENV{id_evenement}}">
      	[(#ENV{evenements}|count|?{#SET{evenement,1},#SET{evenement,0}})]
      	[(#GET{evenement}|?{

      et à la fin du formulaire :

      	,<:reservation:pas_evenement:>})]
      
      </div>

      Cela permet de ne pas afficher le formulaire de connexion quand y a pas d’événements.

    • merci pour ces retours.

      les pardate... sont corrigés

      et j’ai ajouté ta proposition de modification

    Répondre à ce message

  • 2

    Depuis quelques jours (suite à la mise à jour du plugin réservation ou de SPIP vers 3.3.1 ?)

    la liste de réservations que j’affichai sur le site public n’apparaît plus.

    le code est :
    [(#INCLURE{fond=inclure/reservation_visualiser,nb=30,env,ajax})]

    C’est une noisette que j’avais repiquée de plugins/auto/reservation_evenement/v1.21.10/prive/objets/liste

    dd

    • Je ne sais pas si c’est lié mais dans l’espace privé les liens avec les icônes voir, télécharger n’affichent rien (la mediabox s’ouvre mais elle est vide)

      Et pour le lien « envoyer un message » j’ai cette erreur :

      1 	Erreur SQL 1054
      Unknown column 'lang' in 'field list' SELECT titre,lang FROM spip_evenements WHERE id_evenement=16
      
      squelette	/srv/site/www/www.site.org/htdocs/plugins/auto/master/formulaires/editer_reservation_communication.php	 
      
      boucle formulaires_editer_reservation_communication_charger_dist(){ sql_fetsel(); }

      Il n’y a qu’une langue dans mon site.

      dd

    • Bonjour,

      Résolu avec la dernière version du plugin !

      Merci

    Répondre à ce message

  • 5

    bonjour, est il possible d’ajouter le paiement en ligne à ce plugin ? Et comment procéder.? Merci pour vos reponses.

    • Actuellement le plugin ne prévoit pas d’intégration de paiement. Mais cela serait assez facilement realisable avec un des plugins de paiement disponible, comme par example bank. Il suffirait de passer le montant au formulaire de paiement puis enregistrer le retour du paiement via la pipeline adéquate.

    • Pas si simple étant donné que le plugin est implémentable avec le plugin déclinaison et le plugin reservation multiple.

      Pour calculer le montant de la réservation, il faut prévoir tout ces cas de figure.

      Le passage par un panier me semble la meilleure des préconisations. Hélas, le plugin panier n’est pas encore implementable avec le plugin déclinaison de produit...

    • Concernant le prix il faut récupérér le id_reservation afin de pouvoir récupérer les prix des reservations_details, la somme de tous ces prix fait le prix total. Pas besoin de se tracasser su l’origine du gestionnaire du prix. Je dois ajuter le id_reservation dans la session pour pouvoir le récupérer via #SESSION{id_reservation}. En attendant vous pouvez le faire via la pipeline formulaire_traiter

    • La version 1.18.0 du plugin prévoit maintenant de mettre en session l’id_reservation et ajoute une troisième variable au formulaire reservation afin de pouvoir définir un redirection après la validation du formulaire, ceci permettant de renvoyer vers une page de paiement

    • Salut Yohooo,

      Le plugin qui intègre bank est maintenant diponible en test : https://github.com/abelass/reservations_bank/archive/master.zip.

    Répondre à ce message

  • 11

    Bonjour auteur et contributeurs de ce bienvenu plugin,

    j’utilise la dernière version en .15, et j’ai trouvé une solution qui fonctionne : autoriser l’inscription « visiteur » type « forum », et mettre en haut, avant le formulaire de réservation, le dispositif de connexion présent dans footer (se connecter dans content) et à droite (dans inside) s’inscrire qui comprend nom et adresse de messagerie pour ceux qui ne sont pas inscrits. Ils reçoivent immédiatement leurs identifiants et peuvent se connecter.

    ça marche plutôt bien

    Par contre impossible de trouver le fichier langue pour faire dire ce qu’on veut lors de l’inscription et de la connexion, c’est-à-dire :

    vous êtes déjà inscrit(e) : connectez-vous pour réserver (qui devrait disparaître une fois connecté)
    et
    Indiquez ici votre nom et votre adresse email. Votre identifiant personnel vous parviendra rapidement, par courrier électronique et vous pourrez vous connecter aussitôt pour réserver. (qui devrait disparaître également)

    ceci pour l’ergonomie

    où se trouve ce fichier langue avec tous les pass_machin à modifier (le site ne sert qu’à la réservation ?)

    sinon, ça prend un peu la tête mais c’est bien

    • Bonjour
      Concernant la création de compte auteur, c’est déjà géré par le plugin (voir sous Configuration/Permettre au visiteur de s’enregistrer lors d’une réservation). Contrairement à l’inscription de base, il est possible de créer directement le mot de passe.

    • Bonjour,

      Il est possible que ce soit un artefact de développement (mon nombre d’adresses de messagerie étant quasi épuisé pour le site) qui nuit aux tests, mais, avec cette dernière version du plugin, j’ai encore obtenu un écrasement d’identifiants et un remplacement d’identifiant dans toutes les réservations précédentes en utilisant le dispositif dessous.

      Ce que je n’observe plus en mettant les dispositifs d’identification en tête de l’article qui porte les événements. Vous allez être étonné ... http://basedurocher.fr/reservation/spip.php?article1

      Encore merci, nous le testons pour son éventuelle mise à disposition en 2016 qui reste périlleuse, mais rien à voir avec ses qualités.
      Je vous/nous tiens au courant

    • Bonjour,
      Je ne suis pas sûr de comprendre. Si il s’agit d’un bug peux-tu me donner le scénario exacte ? Utilise tu bien la version 1.21.5 ?

    • la version que j’utilise intègre la rev 92045 et date du 2015-09-26 19:00:02 +0200

      le scénario pourrait être le suivant : déconnectée (ou pas car c’est important qu’un administrateur puisse enregistrer des réservations sur appel téléphonique par exemple), j’ai fais une réservation pour une autre adresse que celle inscrite automatiquement après connexion et le résultat a été le suivant : toutes les réservations faites à l’adresse connectée - celle de l’administrateur/webmaster - ont été écrasées par cette autre adresse.

      Conclusion et c’est bien que tu m’aies posé la question car on ne note pas tout ... Je pense que c’est ainsi que j’ai mis dans la procédure une adresse enregistrée (non administrateur, non webmaster) avec son propre mot de passe pour faire ces réservations.

      Comme je planche aujourd’hui sur la mise à disposition d’un « contrat/engagement légal » dans l’éventualité d’une annulation de la réservation avec les conditions de remboursement, j’allais créer un champ extra pour un petit formulaire d’acceptation des conditions, dans (j’y réfléchis encore) l’événement (mais c’est un groupe d’événements/locations) ou l’article portant les événements. l’essentiel étant de disposer de cet engagement réciproque.

      et donc, il faut sans doute ajouter un champ pour le nom, si possible l’adresse de messagerie de ces réservations par téléphone ...

      voilà où j’en suis ! (j’étais contente je croyais avoir tout bien fini ...

      je reste époustouflée par ce plugin !

    • Bonjour,
      Si un admin veut faire une réservation mieux vaut passer par l’espace privé. « Créer une réservation ».
      Si connecté, tu modifies les données personnelles d’une réservation via le formulaire public, cela modifiera les données du compte avec lequel tu es connecté. Ce qui a mon avis peut donnerai l’impression que les réservation soient écrasés (en fait le nom du compte a changé). Donc si tu veux faire une réservation pour le compte d’un autre. Soit tu te deconnecte, soit tu passes par l’espace privé.

    • L’autre solution est celle que j’ai choisie par nécessité puisque chaque article contient plusieurs réservations associées (donc ce serait beaucoup plus compliqué de faire au moins 3 réservations pour la même personne, le même jour, les mêmes heures)
      Ce compte « visiteur » créé permet d’avoir une trace par email au cas où la réservation est faite pour une personne qui n’a pas d’email et/ou de connexion Internet.

      Une petite question : il est bien sûr possible de mettre à la poubelle une réservation qui reste accessible, ce qui est bien, mais quid de l’accumulation : je ne la vois pas apparaître dans la corbeille.

    • Normalement le plugin devrait modifier également les champs extras, je n’a pas la possibilité de vérifier maintenant, mais je regarderai ça

    • Bonjour, ayant 3 types de réservation possibles associées à un nombre de réservations pour chaque type de réservation auxquelles sont associés des prix unitaires, le plugin fait son calcul du prix total sans problème, ce qui est super.

      J’en veux encore plus (c’est moche) : peut-on/comment le câbler directement sur le plugin bank sans passer par le plugin formidable ?

    • Bonjour,

      j’ai commencé un plugin qui intégrera bank, mais je n’ai pas encore trouvé le temps de le finir. (https://github.com/abelass/reservations_bank). Je te tiendrai au courant dés que c’est utilisable.

    • franchement quel beau travail. J’attendrai avec impatience.

    • Salut Emma,

      Le plugin qui intègre bank est maintenant diponible en test : https://github.com/abelass/reservations_bank/archive/master.zip.

    Répondre à ce message

  • Bonjour,

    D’après mes tests il faut être admin complet pour pouvoir changer le statut d’une réservation. Est-il possible via une déclaration dans mes_fonctions de limiter ce droit aux admins restreints à la rubrique ou encore à l’auteur de l’article qui contient l’événement ?
    merci

    dd

    Répondre à ce message

  • Bonjour,

    J’ai défini des champs extras pour la table AUTEURS et les utilise dans la config de Inscriptions3 :

    Champs extras déjà présents en base :
    Nom
    Prénom
    Club ou ville

    et je me retrouve dans le formulaire d’inscription à un événement avec les champs :
    Nom : (obligatoire)
    Email : (obligatoire)
    Nom (obligatoire)
    Prénom (obligatoire)
    Club ou ville (obligatoire)

    et donc le champ NOM est en double et je ne trouve pas ou changer ça dans le formulaire d’inscription.

    dd

    Répondre à ce message

  • 4

    Ce plugin fait la joie des organisateurs d’événements !

    Je remarque sur la page / ?exec=reservation_communications que le champ « date envoi » est toujours 0000

    Sur la page ?exec=reservation_communication&id_reservation_communication=1 la date est bien renseignée ( exemple : Date redaction : 2015-11-15 19:20:45 )

    dd

    Répondre à ce message

  • Y. Bourgeois

    Bonjour à toutes et tous,

    Non documenté, mais très utile : le modèle peut être utilisé sous plusieurs déclinaisons :

    - <reservation|> => affiche le ou les formulaires liés à l'article dans lequel est inséré cette forme du modèle.
    
    - <reservation|id-évenement=ee> => affiche le formulaire ee liés à l'article dans lequel est inséré cette forme du modèle.
    
    - <reservation|id_article=aa> => affiche le ou les formulaires liés à l'article aa dans l'article où est inséré cette forme du modèle.
    
    - <reservation|id_evenement=ee|id_article=aa> => affiche le formulaire de l'événement ee dans l'article dans lequel est inséré cette forme du modèle.

    Par exemples :
    -  Mettre dans un même article le récapitulatif de toutes les réservations lièes à différents articles, tout en conservant la possibilité de faire la résa directement dans l’article détaillé.

    -  Insérer dans un seul article des articles virtuels les à une campagne par exemple.

    Cdlt,
    Yanik

    Répondre à ce message

  • 2

    Hello, le changement de statut par la puce de survol ne semble pas faire le job (si on change via la puce de survol sur exec=evennement cela passe bien au vert ... par contre sur exec=reservation elle reste en rouge) ... et du coup les mails ne sont pas envoyés ( par exemple)

    • Salut,

      je en reproduis pas. As-tu des plugins reservation additionels installé ? Quels statuts ont les détails de réservation de la réservation ?

      Rainer

    • J’ai répondu trop vite :

      • Sur la page exec=evennement est affichée une liste des détails réservations. Donc un changement de statut n’affecte que le détail en question.
      • Sur la page exec=reservation est affiché la liste des réservations. Ici un changement de statut change celui de la réservation et ceux des détails attachés si le changement de statut est permis pour le détails en question.

    Répondre à ce message

  • 1

    Bonsoir,
    Je me retrouve avec quelques incohérences dans la liste des réservations :

    Sur la page de l’évènement : ?exec=evenement&id_evenement=1
    J’ai (je mets juste les champs qui nous intéressent)

    2 détails reservations (au statut accepté)
    Réservation Quantité : N° 
    1444769814 1 1
    1444816408 1 3

    et sur la page ?exec=reservations
    2 réservations n°
    1444835210 5
    1444769814 1

    En base pour la table spip_reservations_details
    le champ id_reservation liste seulement les 1 et 3

    Je pense que la réservation 3 a été refusée ou supprimée par l’admin et que la réservation 5 a été ensuite validée.

    Est-ce que c’est uniquement moi ou bien d’autres ont ce problème ?

    Merci
    dd

    • Seulement les réservation mis en poubelle n’apparaissent pas dans la liste des réservations, regarde sous « Voir les Résevations mises à la poubelle »

    Répondre à ce message

  • 4

    Je continue mon expérimentation de ce plugin.

    J’ai mis le statut des réservations par défaut à « accepté partiellement » que j’ai modifié via le fichier langue en « en attente de validation ».

    Après la validation du formulaire d’inscription il y a bien la notification dans l’encadré vert avec le statut « en attente de validation ».

    Mais dans la liste des réservation c’est « accept_part » qui s’affiche. Dans quel fichier peut-on modifier ce "accept_part’ ?

    et sur la page ?exec=evenement&id_evenement=x

    à gauche il y a bien :
    2 réservations
    par Statut
    2 en attente de validation
    mais dans l’encadré il y a :
    Inscription en ligne :
    30 places (Réponses : 0 oui | 0 non | 0 ?)

    et sur la page ?exec=agenda_inscriptions&id_evenement=x
    il y a « Aucun inscrit »

    Même en passant une inscription de « en attente de validation » à « acceptée » j’ai toujours « Aucun inscrit »

    Si je clique sur l’icone prévisualiser j’ai bien la liste qui s’affiche dans la mediabox.

    Merci
    dd

    Répondre à ce message

  • 7

    Bonjour,

    J’essaie désespérément d’afficher le formulaire réservation pour un seul évènement mais pas moyen tous les évènements du site s’affichent en dessous de « Votre participation ».

    Je suis sur une page évènement donc avec une boucle englobante
    <BOUCLE_lesevenements(EVENEMENTS) {id_evenement}>

    et mon inclure est :
    [(#FORMULAIRE_RESERVATION{#ENV{id_evenement=#ID_evenement}})]

    Merci de vos lumières

    dd

    • Bonjour,

      le formulaire doit être appelé de cette manière

      #FORMULAIRE_RESERVATION{#ID_EVENEMENT}
    • Bonjour,

      Non, rien ne marche, je tourne en rond.
      Sur cette capture http://snag.gy/O7Spw.jpg

      l’encadré en haut est mon appel aux détails de l’événement sur la page evenement.html via

      <BOUCLE_lesevenements(EVENEMENTS) {id_evenement}>
      ...
       [<div class="#EDIT{descriptif}">(#DESCRIPTIF)</div>]
      [<div class="#EDIT{lieu}">Lieu&nbsp;:&nbsp;(#LIEU)</div>]

      (c’est bon , je n’ai que les détails de l’évèneement appelé)

      et en dessous ce qui apparait via :

      #FORMULAIRE_RESERVATION{#ID_EVENEMENT}
      (c’est pas bon pour la réservation tous les évènements s’affichent)

      dd

    • Ça semble correcte. Essaie #FORMULAIRE_RESERVATION#LISTE #ID_EVENEMENT

    • Pardon

      <cadre class='spip'>
      #FORMULAIRE_RESERVATION{#LISTE{#ID_EVENEMENT}}
      </cadre>
    • En fait il s’afissait d’un bug corrigé dans la dernière version du plugin. Tu peux donc bel et bien utiliser

      #FORMULAIRE_RESERVATION{#ID_EVENEMENT} 
    • Yes !

      #FORMULAIRE_RESERVATION{#LISTE{#ID_EVENEMENT}}
      fonctionne.

      J’ai la version 1.21.1 SVN [91660]
      Il n’y a pas encore de nouvelle mise à jour disponible.

      Merci beaucoup

      dd

    • Pour info j’ai ajouté une condition pour ne pas que le formulaire s’affiche lorsqu’il n’y a pas de place à réserver :

       [(#PLACES|>{0}|oui)
       <div class="ajax">
      #FORMULAIRE_RESERVATION{#LISTE{#ID_EVENEMENT}}
      </div>]

      dd

    Répondre à ce message

  • 7

    J’ai 2 questions subsidiaires :

    Est-il possible d’empêcher un utilisateur de s’inscrire plusieurs fois au même évènement ?

    Lors de l’inscription les champs extra (déclarés via inscription3) des visiteurs authentifiés sont modifiables mais lorsque l’utilisateur les modifie lors de la réservation les nouvelles valeurs ne sont pas transmises au formulaire.

    Merci
    dd

    • Pour le moment, le plugin ne propose pas las possibilités de limiter l’inscription par personne. Cela pourrait se faire via la pipeline formulaire_verifier.

      Concernant les champs extras. Le formulaire de réservation prend en compte les champs extras auteurs déclarés via le plugin « champs extras ». Mais pas ceux de inscription 3.

    • Bonjour,
      Je vais donc me pencher sur le pipeline vérifier.

      Concernant les champs extra et Inscription3, ce dernier reprend dans son formulaire les champs extra déjà déclarés. Dans mon cas je n’ai pas déclaré de champ dans Inscription3, seulement des champs extra auteurs.

      Et enfin je viens de voir que les mentions :
      « Clôture automatique
      Oui
      Non »

      apparaissent en bas du formulaire d’édition des articles.

      merci
      dd

    • Vous voulez dire que avec un visiteur logué les champs extras sont bien résents dans le formulaire de réservations mais pas préremplis avec les donées du visiteur ?. Les champs extras se trouvent bien dans la table auteurs ?

    • Concernant « Clôture automatique » Vous l’avez probablement activé dans la configuration. Regardez co-hait sous « Clôturer automatiquement une réservation »

    • Oui j’ai bien activé cette option sur la page / ?exec=configurer_reservation_evenement

      Mais je ne comprends pas pourquoi sur les pages /ecrire/ ?exec=article_edit&id_article=xx (même si l’agenda est désactivé pour la rubrique)

      en bas il y aussi : (options non cochées)
      Clôture automatique
      Oui
      Non

      dd

    • Effectivement il n’y pas de teste si l’agenda est activé sur la rubrique ou non, c’est à corriger

    • Pour les champs extra du formulaire, les visiteurs même inscrits ne peuvent pas les modifier en ligne.
      Mais ce qui est déroutant, et je vais devoir passer plus de temps dessus pour tout comprendre est que les champs du formulaire de réservation sont modifiables par le visiteur mais ses modifs ne sont pas prises en compte. Donc peut-être ajouter aux champs du formulaire de réservation une déclaration (si déjà remplis) de non modification serait la solution.

      Je mentionne aussi au cas ou ce serait utile pour certains que grâce au fichier reservation_visualiser.html dupliqué dans squelettes/ il est possible d’afficher la liste des inscrits sur la page publique de l’évènement.
      Les champs extra sont concaténés donc je ne sais pas comment en rendre certains visibles et d’autres pas. Mais en tout cas a base est là ! Merci

      dd

    Répondre à ce message

  • 3

    Chouette plugin, bien imaginé

    Malheureusement les réservations écrasent les noms, email et pass du visiteur connecté qui la fait.

    Y a un bug ou c’est moi qui n’ait rien compris ?

    • Précision : « écrase » dans la table spip_auteurs.

      Suffisamment important pour que je ne puisse pas le déployer.

    • Pas facile de repondre via téléphone portable, la réponse a ton commentaire se trouve ici

    • Finalement j’ai reproduis ton erreur. Effectivement le nom et le mails se sont effacés. C’est corrigé dans la version 1.21.4

    Répondre à ce message

  • Bonjour,
    Si le visiteur es logué et qu’il change les données de connection proposé, cela actualise effectivement son compte spip. Cependant le mot de passe n’est jamais modifié.
    Ce comportement peu transparent, j’avoue, était prévu pour permettre a l’utilisateur d’actualiser ses données de compte. Je vais rendre cela optionnel (bouton permettant à l’utilisateur de choisir s’il veut actualiser son compte avec les données changées. )

    Rainer

    Répondre à ce message

  • 2

    Bonjour,

    J’éprouve des difficultés en tentant d’utiliser ton plugin Réservation Événements 1.19.7 - test.
    J’ai fait une page spip.php?page=inscription avec dedans

    <div class="ajax">
        #FORMULAIRE_RESERVATION{1,8,#ENV{retour}}
    </div>

    1 est mon id_evenement ; 8 est mon id_article

    J’ai aussi utilisé le plugin Prix Objets 1.6.8 - dev
    pour offrir plusieurs types d’inscriptions. Je rends l’inscription comme auteur spip obligatoire.

    • La page s’affiche bien, ok
    • essai 0 en étant enregistré (moi, webmaster, ai bien le droit de m’inscrire à mon évènement !). Mes identifiants nom et « email » remplacer par « courriel » svp sont bien remplis, super mais après Enregistrer j’obtiens : Votre saisie contient des erreurs !Impossible de prendre en compte votre message. Merci de le soumettre à nouveau !. Pareil à chaque fois que je test avec un utilisateur déjà inscrit sur le site.
    • Essais suivants sans être connecté sur le site
    • essai 1 avec Envoyer les notifications au client ? = non
    • essai 2 avec Envoyer les notifications au client ? = oui
    • La page /ecrire/?exec=reservations m’affiche les deux inscriptions,
    • L’exportation au format CSV ne m’affiche que la deuxième.
    • Le retour dans le formulaire ne permet pas de venir corriger l’option « prix » saisie la première fois : même erreur que lors de l’essai 0 .

    Pardon pour l’avalanche de critiques, c’est pour aider hen ...
    Si tu me propose une solution avant que j’ai dû livrer quelque chose de fonctionnel, tant mieux. Sinon mon message servira au moins à aider la mise au point du plkugin, j’espère ;-)

    • Encore un détail ...
      Je n’ai pas vraiment retrouvé la liste des options (prix) sélectionnés par les gens qui se sont inscrits. Pas dans l’espace privé ecrire/?exec=reservations. Dans la table, spip_reservations_details champ : description il y a un indice mais pas le prix directement. Ailleurs je n’ai pas trouvé. comment alors faire ressortir ce prix ? additionner les montants, distinguer les type d’inscription ...

      Dernier (?) détail
      J’aurais aimé pouvoir compléter le formulaire avec un champ particulier (besoin d’un accès handicapé, d’un transport, restriction alimentaire ...) Je suppose que j’aurais du utiliser CHAMP_EXTRAS mais je ne suis pas arrivé jusque là.

      Encore une fois, ma critique se veut constructive, et encouragements au développeur :-)

    • Salut,

      d’abord

         #FORMULAIRE_RESERVATION{1,8,#ENV{retour}}

      essaie de mette uniquement la premier ou la deuxième variable. Si tu veux limiter l’affichage à un événement, la deuxième variable (id_article) n’as plus de sens.

      Est-ce que tu as attaché un prix à l’article ou à l’événement ?

      Peux-tu me dire ce qui as dans les logs ?

    Répondre à ce message

  • 4

    Bonjour

    Merci pour ce plugin super pratique.
    J’essaye de le mettre en place et tout semble fonctionner à part une chose : lorsqu’on modifie le statut d’une réservation le nombre de places se réinitialise à 1.
    Lorsque le visiteur renseigne un chiffre en réservant il est bien enregistré. Lorsque j’arrive dans l’interface pour traiter la réservation le nombre de places réservées par le visiteur est juste mais dès que je modifie le statut de la résa il redescend à 1.

    Quelqu’un a-t-il remarqué ce problème et éventuellement trouvé une solution ? Merci.

    • Je me réponds :

      en fait c’est plus précisément lorsqu’on modifie le statut de la réservation que la quantité est automatiquement réinitialisée à 1 alors que lorsqu’on modifie le statut du détail de la réservation la quantité reste bien enregistrée.

      Donc pour garder trace du nombre de places réservées et que le nombre de places dispos des événements concernés soit juste, il ne faut surtout pas toucher au statut des réservations mais ne jouer que sur le statut du détail des réservations.

      Une fois qu’on le sait tout roule ;-)

    • Bonjour,
      je viens de corriger ce bug dans la version 1.19.7 du plugin.
      Rainer

    • Roooo ^_^
      Merci

    • Bonjour Rainer,
      Je reprends mon étude.
      Juste à te signaler que le zip est nommé en 1.19.6 sur cette page au lieu de 1.19.7 (son contenu est bien 1.19.7)
      Jean.

    Répondre à ce message

  • 1

    Bdd :

    • Si resa simple => infos correctes dans reservation_evenements et reservation_evenements_details.
    • Si resa multi =>
    1. Initiateur de l’inscription : infos incomplètes daan reservation_evenements, infos complètes dans reservation_evenements_details.
    2. multi-inscriptions associées : infos complètes dans reservation_evenements, absentes dans reservations_details.

    Là aussi, pb avec autres fonctions activées. Je ne reproduit pas non plus. Je vais chercher qui produit cet effet.
    Cas précédant : Id 11,12 et13
    Cas validé Ok : Id 14,15 et 16

    Répondre à ce message

  • 1

    On n’arrive pas à valider une multi-inscription.

    J’imagine que tu veux valider toutes les réservations liées d’un coup. Ceci n’est effectivement pas possible actuellement.
    .

    Je ne souhaite pas valider toutes les réservations liées d’un coup, au contraire, mais simplement que je ne les vois pas pour les valider et que la validation ’mère’ reste en ’attente.
    Par contre j’ai un cron à 3600 sec (1heure) ;-( . C’est peut-être la cause de mes pb de visu ? Je le passe à 60sec pour mes tests.
    Un des plugins que j’ai désactivé, c’est Escal. Il a une fonction agenda intégrée. Je vais regarder de ce coté aussi. Il y a peut-être interférence ??

    • La validation se fait en changeant le statut de la réservation. Si tu mets la réservation en statut « accepté », il mettra tous les détails de réservation en « accepté » sauf s’il n’y a plus assez de place, dans ce cas le statut restera « en attente »

    Répondre à ce message

  • 1

    Le mail est-il utilisé pour les multi-inscripts ou seul le mail de l’initiateur est utilisé ? Je préférerai ne pas rendre obligatoire ce mail pour les autres inscrits du groupe.

    Est-ce que il ne serait pas préférable pour tes besoins de choisir « d’indiquer le nombre d’inscriptions » en lieu de « l’inscription de plusieurs personnes » dans la config de reservations_multiples puis il suffirait d’ajouter un champ qui permettant de renseigner les noms d’inscrits ? Cela réglerai également le problème de la validation de toutes les réservations liées.

    La logique que tu as déployé avec les réservations multiples me convient.
    Dans le fil, je t’ai expliqué la logique que je cherchais à mettre en place.
    Simplement que je n’aurais pas les mails de tous les inscrits liés.
    Je vais reprendre les essais plus sereinement.

    Merci pour cet ensemble de plugins.

    Je te redis quoi dès que j’avance.

    • Das la logique actuelle l’adresse email est importante car c’est la seule information qui permet de contacter un inscrit, elle est le également le seul identificateur dans le cas d’une inscription sans enregistrement sur le site. Donc prévoir une option pour la rendre facultatif nécessiterai d’abord une étude d’impact puis ado`pter ls différents plugins en conséquence. Comme je ne crois pas que c’est un cas d’utilisation très fréquent, je ne vais pas adapter le plugin dans ce sens.

      Par contre ce que tu peux faire c’est d’intervenir sur la vérification du formulaire via la pipeline formulaire_verifier tu peux t’inspirer de https://github.com/abelass/reservations_multiples/blob/master/reservations_multiples_pipelines.php ligne 87

      pour plus d’infos sur le pipelines : http://programmer.spip.net/Qu-est-ce-qu-un-pipeline

      Tu peux essayer la fonction suivante (non testé). le principe c’est d’enlever le message d’erreur pour le mail si il n’est pas renseigné. (si l e mail est fournit on laisse passer les message d’erreur concernant une éventuelle adresse incorrecte)

      function ton_plugin_formulaire_verifier($flux) {
        $form = $flux['args']['form'];
        if ($form == 'reservation') {
      
          if ($nombre = _request('nombre_auteurs')) {
      
            //Rendre l'adresse email facultative
            $i = 1;
            while ($i <= $nombre) {
              $nr = $i++;
              //si email n'est pas présent, annuler le message d'erreur
              if (!_request('email_' . $nr))
             $flux['data']['email_' . $nr] = '';
           }
          }
        }
       return $flux;
      }

      Tu dois également rendre le champ ’email’ facultatif dans : https://github.com/abelass/reservations_multiples/blob/master/inclure/inc-reservation_connection_extras.html ligne 4

      Bonne chance

    Répondre à ce message

  • 10

    Bonjour,
    Cela fait un moment que je regardes les fonctionnalités du plugin « Réservation d’événements ».
    Jusque là, trop d’adaptations pour ce que je recherchais.
    Mais avec les compléments que vous avez mis à disposition, cela devient super pour moi ;-)
    Je viens de l’activer en local et pars à la découverte.
    J’ai activé aussi « Réservations-multiples ».
    2 points que je voudrais vous soumettre :
    1) Il n’y pas moyen de revenir sur une réservation que l’on vient de faire : Pas de ré-affichage si on retourne sur l’événement (même en étant signé) et pas de synthèse des places déjà réservées.
    2) Avec « Réservations-multiple », on perd la notion « inscripteur » dans la base. C’est dommage. Pour ce que je cherche, c’est un responsable (ou représentant) qui inscrit son groupe à l’événement.
    Je continue ma découverte et merci pour ce développement.

    • Bonjour,

      merci pour ces retours. Pour répondre à vos questions :

      1) Effectivement cela n’est actuellement pas prévu par le plugin, mais cela peut se faire assez facilement pour les inscrits qui on choisis de s’enregistrer sur le site (créer un compte spip). Vous pouvez lister les commandes avec les codes suivant

      <BOUCLE_reservations(RESERVATIONS){id_auteur=#SESSION{id_auteur}}{!par date}>
        <BOUCLE_reservations_details(RESERVATIONS_DETAILS){id_reservation}{statut?}>
        </BOUCLE_reservations_details}>
      </BOUCLE_reservations>

      2) Avec Réservation multiples, il y a deux possibilités cumulables :
      -  Réserver pour plusieurs personnes à la fois ; avec cette option il est possible de renseigner les données personnelles pour chaque inscrit et dans la bd une réservation sera crée pour chacun.
      -  Une personne réserve plusieurs places par événement. Dans ce cas, une seule réservation est enregistré avec la quantité choisi pour chaque événement réserve.
      Ces deux option peuvent être appliqué ensemble. Dans le deux cas il y a la trace d’au moins une personne inscrit.

    • Bonjour,
      Merci de ce retour rapide.
      1) De mémoire, un visiteur qui s’inscrit est un auteur spip. Ok donc pour la liste, effectivement id_reservation est commun à toutes les réservations de la même saisie. Il faut donc développer un formulaire de màj si on souhaite laisser l’internaute ré-intervenir sur son inscription. C’est bien çà ?

      2) Je n’avais pas encore vu cette double possibilité. Mais cela ne résout pas l’absence d’identifiant « inscripteur » pour les saisies de groupe. Dans le cas que je cherche à implémenter, j’ai même des informations communes pour tout le groupe (heure d’arrivée par exemple).

    • Bonjour
      1) pas tout à fait, le visiteur a le choix de s’inscrire sur le sites et ce n’est seulement à ce moment qu’il soit enregistré comme visiteur. Sinon c’est donées sont intégré directement dans la réservation. Effectivement il faudrait développer un nouveau formulaire de màj. Il y a bien celui de l’admin qui gère des modifications, mais c’est plus complexe à gérer que le formulaire public.
      2) Je ne suis pas sur de comprendre la problématique. Qu’est-ce que tu comprends sous « identifiant inscripteur » ?
      peux tu me donner un cas de figure ?

    • 1) Merci pour les précisions du point et pour la boucle d’affichage. Pour ma liste, il me faut rendre obligatoire l’inscription pour la personne qui se charge de la réservation multiple.

      2) Je développe actuellement pour un lieu de plongée sous-marine. Pour la gestion, le responsable souhaite ouvrir les inscriptions pour ses visiteurs. Le plus souvent, ce sont des clubs extérieurs qui souhaitent s’inscrire. Pour ce faire, c’est le ’directeur de plongée’ du groupe qui se charge de cette inscription. Le résultat étant que le gestionnaire du lieu doit avoir un contact en cas de besoin (nom, mail, téléphone, présence d’un directeur de plongée ou pas, etc..), Mais doit aussi connaître tous les plongeurs qui viennent sur son site avec leur niveau de plongée pour des règles de sécurité. En plus, pour regonfler les blocs, il lui faut connaître les volumes des blocs (calcul du temps d’occupation de son matériel).
      Donc des données différentes et complémentaires à gérer aux 2 niveaux : « inscripteur » et « participants ».

    • Bonjour
      1) L’inscription peut maintenant (depuis la version 1.19.1) être rendu obligatoire
      2) Ok, je vois. Il faudrait l’intégrer dans la première fonctionnalités de réservation multiple, et distinguer entre réservation principale et réservation lié en utilisation une id_reservation_source à l’instar de agenda (les événement répétes). La réservation original aaurait alors l’id_reservation_source=0 puis les réservations liées prennent l’id_reservation de la réservation originale comme id_reservation_source. Je ne crois pas que j’aurais le temps prochainement de faire évoluer le plugin dans ce sens. Regarde su tu y arrive en créant ce nouveau champ puis en intervenant via des pipelines sur l’enregistrement. On pourrai ainsi l’intégrer dans le plugin

    • Ah oui, excellente piste. Je ne voyait pas comme çà mais c’est bien.
      Pour le moment je dois livrer une 1er version du site et je n’ai pas trop le temps. Je finalise mon spécifique sur ce point.
      Mais dès que possible (un mois environ), je me penche dessus. Avec tes conseils pour ne pas tout casser. Je ne suis pas un pro des pipelines...
      Je te redis dès que possible.
      Encore merci de tes retours. Je reste en veille.

    • pour ton info. j’ai avancé un peu à ce sujet.
      Dans les versions dev de :
      -  reservation_evenements : https://github.com/abelass/reservation_evenement/archive/dev.zip
      et
      -  reservations_multiples : https://github.com/abelass/reservations_multiples/archive/dev.zip

      Lors d’une réservation pour plusieurs auteurs, les réservations multiples sont maintenant liées via un id_evenement_source.

      Il reste encore à améliorer l’affichage dans l’espace privé, mais le coté enregistrement dans la bd devrait être bon

    • Bonjour Rainer,
      J’ai installé les 2 versions Dev pour un nouvel essai.
      Super comme évolution de logique.
      Qq points notés sans avoir aboutis les essais au bout :

      • Front-office : Resa multi : Le statut ne s’affiche pas sur l’affichage de confirmation d’inscription(doc joint).
      • Bdd :
        • Si resa simple => infos correctes dans reservation_evenements et reservation_evenements_details.
        • Si resa multi => Initiateur de l’inscription : infos incomplètes daan reservation_evenements, infos complètes dans reservation_evenements_details. multi-inscriptions associées : infos complètes dans reservation_evenements, absentes dans reservations_details.
      • Back-office : evenement :
        • On ne voit pas les multi-inscriptions (peut-être Qté=n dans ce cas ?)
        • On n’arrive pas à valider une multi-inscription.

      Pour le moment je ne suis pas aller plus loin, mais c’est très prometteur.
      Le mail est-il utilsé pour les multi-inscripts ou seul le mail de l’initiateur est utilisé ? Je préférerai ne pas rendre obligatoire ce mail pour les autres inscrits du groupe.

      Merci pour ces évolutions.

    • je vais reprendre point par point :

      Front-office : Resa multi : Le statut ne s’affiche pas sur l’affichage de confirmation d’inscription(doc joint).

      Je ne reproduis pas, peux-tu me donner les détails de ta configuration de reservations_multiples ainsi que la liste des plugins activés ?

      Si resa multi => Initiateur de l’inscription : infos incomplètes daan reservation_evenements, infos complètes dans reservation_evenements_details. multi-inscriptions associées : infos complètes dans reservation_evenements, absentes dans reservations_details.

      peux-tu préciser en quelle mesure les infos sont incomplètes ? Dans mes tests cela semble en ordre

      On ne voit pas les multi-inscriptions (peut-être Qté=n dans ce cas ?)

      je viens de faire les modifications par rapport à l’affichage (v 1.20.0) Sont listées d’abord les réservation source, puis les réservations liées.

      On n’arrive pas à valider une multi-inscription.

      J’imagine que tu veux valider toutes les réservations liées d’un coup. Ceci n’est effectivement pas possible actuellement.

      Le mail est-il utilsé pour les multi-inscripts ou seul le mail de l’initiateur est utilisé ? Je préférerai ne pas rendre obligatoire ce mail pour les autres inscrits du groupe.

      Est-ce que il ne serait pas préférable pour tes besoins de choisir « d’indiquer le nombre d’inscriptions » en lieu de « l’inscription de plusieurs personnes » dans la config de reservations_multiples puis il suffirait d’ajouter un champ qui permettant de renseigner les noms d’inscrits ? Cela réglerai également le problème de la validation de toutes les réservations liées.

    • Trop d’infos dans le même message, je sépare pour plus de clarté.

      Front-office : Resa multi : Le statut ne s’affiche pas sur l’affichage de confirmation d’inscription

      Désolé, je n’ai pas respecté la règle de désactiver tous les plugins non liés et voilà le résultat ;-(
      C’est ok. Je vais rechercher la fonction qui perturbe dans les plugins que je veux utiliser.

    Répondre à ce message

  • 4

    Bonjour Rainer,
    Je vais regarder les changements que tu as implémenté.
    Juste un soucis mineur : Il manque la chaîne de langue ’notifications_destinateur_explication’ dans la configuration.
    Et peut-être mieux ’notifications_destinataire_explication’.
    Je reviens vers toi sur le fil des réservations multiples asap.

    • Aussi dans le back-office, dans le formulaire de réservation sur l’article, la chaîne ’item:oui’ est absente sur ’Clôture automatique :’

    • Tjrs dans le back-office, dans base/reservation-evenement.php en ligne 186 : il manque la chaîne ’’texte_changer_statut’ => ’reservations:texte_changer_statut_reservations_detail’’.

    • Salut Per’Jean,

      merci pour ces retours, j’intègrerai ces modifs.

    • les modifs sont intégrés dans le trunk et reporté à la branche avec les autres modifs concernant l’inscription multiple

    Répondre à ce message

  • 6

    Bonjour Rainer,
    Magnifique contrib qui correspondrait tout a fait à ce que je cherche. Si ce n’est que je reçois un message d’erreur : « Votre saisie contient des erreurs ! »
    Quelles peuvent être les causes d’un tel message ?
    lien ici : http://amisduvin.be/Degustations-ete-2015.html

    d’avance merci pour le retour

    • Bonjour,
      Ce message arrive quand aucun événement n’a été sélectionné. Je viens de faire un test sur votre site et le formulaire semble fonctionner normalment.

    • Effectivement, j’ai bien reçu.
      MERCI
      En fait je reçois l’erreur quand je suis connecté en admin. Je me suis déconnecté, et j’ai fait une réservation comme nouvel arrivant et là ça fonctionne bien.

    • Ce n’est pas normal comme comportement, est-ce que vous utilisez la dernière version du plugin ? J’ai essayé de me connecter sur votre site pour tester mais le formulaire de réservation a disparu...

    • Une petite précision. Si le visiteur crée un compte spip auteur (enregistrement volontaire ou imposé) il sera automatiquement logué après l’enregistrement de la réservation.

    • Concernant le comportement effectivement bizarre de session, une fois couplé avec reservation multiple, tout va bien.

      le formulaire complet de réservation a effectivement disparu car J’isole les reservations individuellement (bouton rouge demande d’invitation)
      en effet certains événements peuvent recevoir un form de réservation, d’autres pas. voici ma procédure :

      D’abord je place une boucle evenement :

      <BOUCLE_agenda(EVENEMENTS){id_article}{par date}{statut=publie}>
      <dt>#TITRE</dt> 
      [<dd>(#DATE_DEBUT|Agenda_affdate_debut_fin{#DATE_FIN,#HORAIRE})</dd>]
      <dd>#LIEU #ADRESSE</dd>
      <dd>#DESCRIPTIF</dd>
      </BOUCLE_agenda>

      et lors de l’édition des événements qui peuvent recevoir une réservation, je place l’appel à la popup contenant <reservation|id_evenement=#ID_EVENEMENT>

      C’est toujours <reservation|id_evenement=1> qui sort même si c’est bien <reservation|id_evenement=4> qui est inclus dans l’événement correspondant.

      Bizarre. Faut il un #ENV de contexte quelquepart ?

    • Le #ID_EVENEMENT n’est reconnu seulement dans un squelette il faudrait mettre l’id_evenement en dur ou si placé dans un événement, voir si avec <reservation|> t n’arrive pas à récupérer automatiquement l’i_evenement ?

    Répondre à ce message

  • 1
    nikon33

    MERCI POUR CE BEAU TRAVAIL

    Spip 3.0.19 tout neuf
    Réservation d’évènement 1.19.4, API Prix 0.1.8, Prix objet 1.6.8, Saisie 2.2.1 Agenda 3.14.10 API Vérification 1.0.7

    installation des plugins classique par import à partir d’un dépôt

    Un article nouvellement crée et publié
    Un événement crée et rattaché à cet article
    Plugins configurés
    Dans la procédure d’ajout de détail d’une réservation , facilement crée,
    .. Ecran d’erreur le table nnnn_prix_objets n’existe pas
    voir image jointe

    Vérification en phpMyAdmin, dans la base sql
    effectivement cette table nnnn_prix_objets n’existe pas

    Par contre
    plugins/auto/prix_objets/base/nnn_prix_objets.php .... comporte bien les « définitions » et « caractéristiques » des champs de la table prix_objets.php.. et si je comprends bien les « ordres » en php pour « le » faire

    je retrouve bien les tables, dans la base sql
    nnnn_reservations
    nnnn_reservations_details
    nnnn_reservations_communications
    nnnn_reservations_communications_destinataires

    j’ai REFAIT deux fois l’installation d’un nouveau spip 3.019 et de tous les plugins
    avec des fichiers nouveaux, nouvellement téléchargés et téléversés
    j’ai eu deux fois la même absence de création des tablesprix_objets

    ..... seule la table prix_objets n’est pas créée .. chez MOI

    Voici TOUS mes plugins
    agenda, bank-master, calendriermini, cfg, corbeille, couteau suisse, facteur, formidable, googleanalytics, googleplus1, mailshot, mailsubscribers, newsletters, nospam,prix, prix_objets, promotions-master, rechremp, reservation_communication-master, reservation_evenement, reservations_mailsubscribers_master, saisies, saveauto, socialtags, spip_bonux ; thumsites, verifier, yaml

    je DEBUTE
    Je sais tout juste créer un champ dans un table avec phpMyAdmin,
    j’ai crée, en me basant sur le fichier nnn_prix_objets.php, les différents champs de la table ... mais je ne sais pas créer les « join », ni le KEY .
    je DEBUTE

    QUESTION
    Quelle erreur j’ai fait pour ne pas avoir crée la table prix dans ma base nnn ?
    Comment réparer efficacement ce manque ?

    merci de votre aide

    OVH
    Version PHP courante : 5.5.22
    http://mboudry.fr/spip3019b

    • Bonjour,

      C’est le plugin Prix objets qui crée la table prix_objets. Je viens de faire un test et chez moi la table s’installe sans problème.

      Est-ce que vous avez installé beaucoup de plugins à la fois ? Essayez de désinstaller le plugin et de le réinstaller seul. Si ça ne marche pas, désactivez le plugin, puis allez dans la table meta via phpmyadmin et effacez l’entrée « prix_objets_base_version » et réinstallez le plugin. Si cela ne marche toujours pas, désactivez tous les plugins et répétez les pas ci-haut.. Vérifiez également des anomalies dans tmp/logs

      Bonne chance
      Rainer

    Répondre à ce message

  • 23

    Bonjour, un plugin attendu si je ne me trompe !!
    La question que je pose, n’entre pas vraiment dans le cadre du plugin mais comme vous en êtes le concepteur, je pense que vous êtes assez qualifié pour y répondre.

    Est-il possible de remplacer la référence à l’utilisateur inscrit par un autre champ créé avec le plugin extra ? Je m’explique, le décompte du champ ’nombre de places disponibles’ se réfère à une inscription par utilisateur... Cependant, j’aimerais référencer cela à un autre champ qui contiendrait par exemple le nombre d’élèves autorisés à participer à un événement, chaque professeur inscrit le nombre d’élèves qu’il amène à l’activité dans un champ extra et ensuite je fais le calcule du nombre de places disponibles moins le nombre de participants accompagnant chaque professeurs. Je ne peux pas en effet, et croyez moi le professeur non plus, inscrire nominativement un élève à la fois !

    Pouvez-vous me guider un tant soit peu ?

    Merci

    • Bonjour,

      Depuis le début du développement est prévu un champ quantité dans la base de donnée (table reservations_details) , permettant en théorie de faire plusieurs inscription en une fois, ce qui me semble correspondre à votre besoin.

      Seulement comme je n’ai pas eu vraiment eu ce besoin jusqu’à présent, je ne l’ai pas implémenté par la suite.

      Si j’ai bien compris, il vous faudrait un champ supplémentaire dans le formulaire réservation permettant d’indiquer le nombre d’inscrits ?

      Il y a le plugin Réservations Multiple qui permet d’encoder plusieurs personnes pour chaque réservation, mais je ne crois pas que cela vous aide apporte beaucoup, car il faudrait encoder chaque inscrit.

      Je peux proposer une telle option dans le plugin Réservations Multiple et adapter le comptage en conséquence dans le présent plugin, ce qui fait parfaitement sens. Seulement je ne peux pas promettre pour quand.

      Rainer

      Cette une option qui peut être prévu, mais je ne peux pas promettre pour quand.

    • Merci pour la réponse et votre démarche auprès de l’auteur du plugin ’Réservations Multiples’. J’espère qu’ils ajouteront cette possibilité à leur liste de tâche... Peut-être devrai-je aussi les contacter... Ce ne sont probablement que quelques variables à modifier ??

    • Pas besoin, c’est moi qu’il a fait :)

    • Hahaha... Une guerre de retard !.... :-)

      Pour ce qui est du champ supplémentaire, cela concerne en effet la personne qui remplit le formulaire. Je pense que le plugin ’formidable’ peut s’en charger. En effet, il pourrait s’agir de plusieurs champs et un champ calculé pour le total...
      Les activités ne sont pas toutes les mêmes.
      Par exemple, une activité concernerait plusieurs classes avec filles et garçons, d’autres activités pourrait ne concerner qu’une classe et les filles... Je dois donc attacher un formulaire différent par activité. Je devrai donc utiliser un modèle pour aller rechercher la valeur totale et la soustraire au champ ’places’ du plugin agenda. Ou alors court-circuiter le champs ’places’ avec un champ extra. Finalement, tout-cela est peut-être possible avec les plugins ’formidable’ et ’extra’. Un bon squelette pour mes événements permettrait alors de lier le tout ??

    • Si je comprend bien, vous avez besoin de décliner vos activités. La combinaison des plugins prix_objets et Déclinaisons produits permettre de faire cela fait cela (voir http://www.larut.eu/fr/ateliers/inscriptions/?id_evenement=469) :

      Comme vous n’avez probablement pas besoin de prix vous devriez adapter les squelettes correspondants pour enlever la mention du prix

    • Bien, je vais regarder comme je peux « bidouiller » ces deux plugins pour donner vie aux événements !
      Merci à nouveau pour votre aide éclairée !! ;-)

    • Pour donner suite à votre besoin, le plugin Réservations Multiples proposer maintenant l’option d’afficher un champ quantité lors de la réservation, permettant ainsi à un personne d’effectuer une réservations en mentionnant le numéro de participants.

    • Merci Rainer Müller, je vais de ce pas essayer en local le plugin et ses fonctionnalités... Votre contribution à la grande famille de la communauté des utilisateurs de spip est précieuse. Comme les athlètes des jeux olympiques de jadis, vous n’en récoltez malheureusement que les lauriers... Cependant, votre travail permettra à de nombreux enfants de s’inscrire via leur professeur d’éducation physique à des activités sportives pour leur propre épanouissement.

    • Malheureusement, en local, lorsque j’ajoute dans l’article le modele réservation, l’article n’est plus éditable (ERR_CONNECTION_RESET)... De même pour l’affichage de l’article dans l’affichage public. :-(

    • et si tu désactive le plugin cela disparait ? Peux-tu regarder ce que tu trouve dans tmp/log ?

    • depuis la dernière version du plugin il y a un squelette inscription, essayez donc avec l’url spip.php ?page=incription

    • La page inscription donne aussi une erreur...
      voici l’erreur trouvée dans le fichier mysql.log :

      SELECT id_evenement_source
      FROM spip2015.spip_evenements
      WHERE id_evenement IN ()
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri:ERREUR : You have an error in your SQL syntax ; check the manual that corresponds to your MySQL server version for the right syntax to use near ’)’ at line 3 - query inconnue
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri:ERREUR : Table ’spip2015.prix_objets’ doesn’t exist - SHOW CREATE TABLE PRIX_OBJETS
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri:ERREUR : Table ’spip2015.prix_objets’ doesn’t exist - SHOW CREATE TABLE PRIX_OBJETS
      2015-06-04 10:32:36 127.0.0.1 (pid 2112) :Pri:ERREUR : You have an error in your SQL syntax ; check the manual that corresponds to your MySQL server version for the right syntax to use near ’)’ at line 3 -
      SELECT id_evenement_source
      FROM spip2015.spip_evenements
      WHERE id_evenement IN ()
      2015-06-04 10:32:36 127.0.0.1 (pid 2112) :Pri:ERREUR : You have an error in your SQL syntax ; check the manual that corresponds to your MySQL server version for the right syntax to use near ’)’ at line 3 - query inconnue
      2015-06-04 10:32:36 127.0.0.1 (pid 2112) :Pri:ERREUR : Erreur 1064 de mysql : You have an error in your SQL syntax ; check the manual that corresponds to your MySQL server version for the right syntax to use near ’)’ at line 3

      et spip.log :

      SELECT id_evenement_source
      FROM spip2015.spip_evenements
      WHERE id_evenement IN ()
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri:ERREUR : Erreur mysql 1064
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri:ERREUR : You have an error in your SQL syntax ; check the manual that corresponds to your MySQL server version for the right syntax to use near ’)’ at line 3 - query inconnue
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri:ERREUR : Erreur mysql 1146
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri:ERREUR : Table ’spip2015.prix_objets’ doesn’t exist - SHOW CREATE TABLE PRIX_OBJETS
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri : !INFO : trouver_table : table inconnue ’’ ’PRIX_OBJETS’
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri : !INFO : spip_connect : fichier de connexion ’../config/prix_objets.php’ non trouve
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri:ERREUR : Erreur mysql 1146
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri:ERREUR : Table ’spip2015.prix_objets’ doesn’t exist - SHOW CREATE TABLE PRIX_OBJETS
      2015-06-04 10:32:30 127.0.0.1 (pid 6500) :Pri : !INFO : trouver_table : table inconnue ’’ ’PRIX_OBJETS’
      2015-06-04 10:32:36 127.0.0.1 (pid 2112) :Pri:ERREUR : Erreur mysql 1064
      2015-06-04 10:32:36 127.0.0.1 (pid 2112) :Pri:ERREUR : You have an error in your SQL syntax ; check the manual that corresponds to your MySQL server version for the right syntax to use near ’)’ at line 3 -
      SELECT id_evenement_source
      FROM spip2015.spip_evenements
      WHERE id_evenement IN ()
      2015-06-04 10:32:36 127.0.0.1 (pid 2112) :Pri:ERREUR : Erreur mysql 1064
      2015-06-04 10:32:36 127.0.0.1 (pid 2112) :Pri:ERREUR : You have an error in your SQL syntax ; check the manual that corresponds to your MySQL server version for the right syntax to use near ’)’ at line 3 - query inconnue
      2015-06-04 10:32:36 127.0.0.1 (pid 2112) :Pri:ERREUR : Erreur 1064 de mysql : You have an error in your SQL syntax ; check the manual that corresponds to your MySQL server version for the right syntax to use near ’)’ at line 3

      Je pense donc que cela vient du fait qu’il faut absolument encoder un prix ??.... Or, je n’ai pas besoin (pour le moment) de cette information ?

    • est-ce que le plugin prix_objets est activé, peux-tu le désactiver ?

    • est-ce que un id_evenement est passé dans l’url ? spip.php ?page=incription&id_evenement=2 ?

    • Non, le plugin prix_objets n’est pas installé donc pas activé... et oui, il y a un id_evenement qui passe en paramètre dans l’url.

    • Lorsque je désactive le plugin réservation d’événements, je peux à nouveau éditer l’article dans la partie privée... mais une fois ré-activé, je ne peux plus éditer l’article...

    • Je vois, mais comme je n’ai pas accès actuellement à svn, je ne peux pas mettre à jour le plugin sur spip, voici une nouvelle version qui corrige le bug :
      https://github.com/abelass/reservation_evenement/archive/master.zip

    • Non malheureusement, le problème persiste : (

      spip.log :

      2015-06-04 13:25:17 127.0.0.1 (pid 1480) :Pri:ERREUR : Erreur mysql 1146
      2015-06-04 13:25:17 127.0.0.1 (pid 1480) :Pri:ERREUR : Table ’spip2015.prix_objets’ doesn’t exist - SHOW CREATE TABLE PRIX_OBJETS
      2015-06-04 13:25:17 127.0.0.1 (pid 1480) :Pri : !INFO : trouver_table : table inconnue ’’ ’PRIX_OBJETS’
      2015-06-04 13:25:17 127.0.0.1 (pid 1480) :Pri : !INFO : spip_connect : fichier de connexion ’../config/prix_objets.php’ non trouve
      2015-06-04 13:25:17 127.0.0.1 (pid 1480) :Pri:ERREUR : Erreur mysql 1146
      2015-06-04 13:25:17 127.0.0.1 (pid 1480) :Pri:ERREUR : Table ’spip2015.prix_objets’ doesn’t exist - SHOW CREATE TABLE PRIX_OBJETS
      2015-06-04 13:25:17 127.0.0.1 (pid 1480) :Pri : !INFO : trouver_table : table inconnue ’’ ’PRIX_OBJETS’

      mysql.log :

      2015-06-04 13:25:17 127.0.0.1 (pid 1480) :Pri:ERREUR : Table ’spip2015.prix_objets’ doesn’t exist - SHOW CREATE TABLE PRIX_OBJETS

    • Je viens de corriger un autre bug mais qui ne devrait pas être relationné. Peux-tu reactualiser le plugin avec la version sur github et bien vider le cache de spip.

      est-ce que tu arrive à afficher le formulaire ?

    • Non, toujours rien... J’ai téléchargé à nouveau la version sur github, vidé le cache, j’ai essayé avec la page=inscription... non, malheureusement, rien ne s’affiche... :-(

      Je vais essayé sur un serveur en ligne !

    • Bon, en ligne tout fonctionne !!... Mais pas en local ??.... Je continue les test (en ligne) cette fois ;-)

    • Hello,

      Merci !
      Pour moi cela fonctionne maintenant, je n’ai plus le message d’erreur lié à l"évènement source.

      J’en profite pour signaler des typos dans le message de confirmation :
      Votre inscription a bien été enregistrée..... vérifiez dans votre dossier spam.

    • Ah l’orthographe :), merci, je le corrigerai

    Répondre à ce message

  • 1

    comment ajouter des champs aux deux existants (mail et nom) ?

    Répondre à ce message

  • 1

    Bonjour,

    Désolé, j’ai été accaparé par un autre dossier.

    J’ai bien vérifié, j’ai la la version 1.16.3 du plugin « réservation Evénement »

    Si le plugin API Prix n’est pas activé => le formulaire de réservation n’apparaît pas dans la page.

    J’utilise cette balise : #FORMULAIRE_RESERVATION#ENVid_evenement,#ENVid_article

    Si j’installe et active le plugin API objet => le formulaire apparait bien. Mais,

    En cliquant sur la case à cocher pour réserver une date, après enregistrement du formulaire, on passe à une écran suivant

    Et ce message d’erreur apparait (voir pièce jointe).

    Le message d’erreur disparait si je désactive le plugin PRIX_OBJET.

    Dans l’interface privée, il n’y a pas de champs extra de créer nul part. Donc impossible d’entrée un prix pour un événement.

    Autre chose :

    Si dans le formulaire de réservation, je clique sur le titre d’un évément (qui existe bien)

    J’ai immédiatement ce message d’erreur :

    Aucun squelette page_evenement n’est disponible - plugins/auto/reservation_evenement/v1.16.3/evenement.html - ligne 8

    Je peux vous laisser à l’admin si vous en avez besoin et si vous avez le temps de vous occuper de ces bugs.

    GIlles

    • Je viens de faire quelques modifs au plugin qui devrait améliorer l’intégration des prix. Dernière version : 1.17.0

      Si le plugin API Prix n’est pas activé => le formulaire de réservation n’apparaît pas dans la page.

      je ne reproduis pas, peux tu actualiser le plugin avec la dernière version et voir si le problème persiste.

      Si j’installe et active le plugin API objet => le formulaire apparait bien. Mais,

      En cliquant sur la case à cocher pour réserver une date, après enregistrement du formulaire,
      on passe à une écran suivant
      Et ce message d’erreur apparait (voir pièce jointe).

      Le message d’erreur me semble indiquer que tu n’as pas ajouté un prix à l’événement ou l’article

      Pour le squelette de l’événement, j’en ai fait un qui peut évidement être surchargé

    Répondre à ce message

  • 4

    Le deuxième bug se produit quand on clique sur l’un des événements liés à un article (sur le lien de l’événement, pas dans dans la case à cocher"). Cf screenshot.

    Pour celui là j’ai trouvé un début de réponse dans le forum du plugin « agenda ». Il faut copier coller le contenu du fichier agenda>content>evenement.html dans un nouveau fichier page_evenement.html. Mais cela génère d’autres fichiers manquants...

    Répondre à ce message

  • 2

    Bonsoir,

    Merci 1000 fois pour la correction.

    Je découvre un problème avec l’utilisation du plugin « prix_objet. »

    Par défaut, le formulaire de confirmation de la « réservation_d’événements » indique le prix des événements, même si le plugin « prix_objet » n’est pas installé. (voir screenshot)

    Et quand je l’installe, la réservation ne fonctionne pas.

    Le tarif de l’événement, s’affiche également dans le formulaire de réservation à coté de la case à cocher.

    J’ai désactivé le plugin « prix_objet » pour le moment et commenté la ligne 65 et 66 du fichier inc>reservation_enregistrer.php. Mais ce n’est pas optimum :)

    • Si je comprends bien, vous avez un champ prix dans votre table spip_evenements ?

      Le plugin n’est pas fait pour faire cohabiter un champ extras prix dans la table spip_evenements et le plugin prix objet qui utilise la table spip_prix_objets pour stocker les prix.

    • Ce n’est pas complètement exacte ce que je vous ai dit par rapport au prix, je viens d’expliquer ci-haut sou Gestion de prix comment ils sont gérés.

      Concernant votre problème. Est-ce que vous aviez fixé un prix via le module Prix Objets.

      Et quand je l’installe, la réservation ne fonctionne pas.

      Quel était exactement le problème ?

    Répondre à ce message

  • 7

    Bonjour,

    Il y a des bug dans la version 1.16.1 qui empêche l’inscription en ligne et visualiser les différents événements à partir de l’admin.

    Une des erreurs est dans le fichier evenements.html et vient de l’inclusion :

    le squelette page_evenement.html n’existe pas. Ou je ne le trouve pas.

    Que faire ?

    • Pourriez vous mettre un screenshot ?

    • La page evenement.html n’a rien à faire dans ce plugin et doit être viré, par contre je ne comprends pas ce que cela implique pour l’affiche dans l’admin ? A priori il n’y pas de lien

    • Voilà
      1/ processus de réservation en ligne (case à cocher pour un événement)
      2/ le message d’erreur

    • Dans quel fichier avez vous mis la balise #FORMULAIRE_RESERVATION ?

    • J’ai placé

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

      Dans mon squelette article.html

    • Je voie
      le problème vient du fait que vous n’avez pas configuré un Statut par défaut, ce qui est un bug, car liste d’attente devrait être le statut par défaut.

      Je vais corriger cela ce soir

    • C’est corrigé avec la version 1.16.3 du plugin

    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