Support » Plugin: Events Made Easy » Show html-form after Booking (template)

  • Resolved mattblox

    (@mattblox)


    Hi there,

    after the guest booked, i need her to print,fill,sign,email a contract (5 pages pdf).

    to save her and mine time, i made a PHP script to fill in the contract details using the booking data.

    i used a Booking-Success-Template so the guest can get her personal contract using one click:

    <form action=”https://domain.tld/contract.php&#8221; method=”POST”>
    <input name=”Course” value=”#_EMEFOOBAR”>
    <input name=”LastName” value=”#_FIELD{4}”>
    <input name=”Birthdate” value=”#_FIELD{5}”>
    <submit type=Button>Click here to download the contract</submit>
    </form>

    The guest will not see the values but could get the prepared pdf using one click.

    But the Template page would erase all formular data (for security reasons i guess).

    ofc. i could just generate a GET Link, but then i would have to encode all information to fit inside the GET request :/

    Yes, i could send this information via email, but email clients often ignore <form>
    plus, what if the email does not arrive?

    Any idea?

    EDIT: sorry for posting this into the wrong forum before ( https://wordpress.org/support/topic/show-after-booking/ )

    • This topic was modified 2 months, 3 weeks ago by mattblox.

    The page I need help with: [log in to see the link]

Viewing 8 replies - 1 through 8 (of 8 total)
  • Plugin Author Franky

    (@liedekef)

    Email clients *always* ignore form-tags, that’s just bad politics anyway.
    You can already create a dynamic PDF using the “ticket PDF template” option in the RSVP settings for an event. That template can have all booking placeholders, but of course it is currently only used as mail attachment.
    I could create an extra booking placeholder so you can reference a dynamically generated pdf in your thank-you message, but that’s a new feature to develop.

    Plugin Author Franky

    (@liedekef)

    To continue on this: for feature request, please post to https://www.e-dynamics.be/wordpress (and feel free to buy me a coffee).
    Otherwise: generate a GET-link with the booking id, use a php script that initiates the wordpress environment and then use the EME functions to get all the info needed to generate your pdf. See the EME function call examples on the hooks and filters document page: https://www.e-dynamics.be/wordpress/category/documentation/12-hooks-and-filters/

    Plugin Author Franky

    (@liedekef)

    Another option would be to require booking approval (in the event RSVP settings) and use the “ticket url template” option to mail the booking pdf upon booking. The booking is then in pending status and once the person signs the contract you can approve it.

    Thread Starter mattblox

    (@mattblox)

    Hi and thx again for your help!

    creating a <a href> GET Link is not too convinient in terms of transferring multiline-adress-data, so i’d like to avoid it.
    If i used GET, i’d had to use some other code to encode the Data…

    Since i’m no developer, i don’t really know about hooks and stuff (can barely do some copypasta)
    I guess it would be possible to echo the forbidden html tags using a simple hook that echoes “<form action=…”?

    Ragarding the PDF Template, i discovered it does not activate on pending bookings despite activated. Maybe a bug or rather me doing the wrong settings?

    Also, inserting pagebreaks is not possible yet?

    Greetings Matt

    • This reply was modified 2 months, 3 weeks ago by mattblox.
    • This reply was modified 2 months, 3 weeks ago by mattblox.
    Plugin Author Franky

    (@liedekef)

    You won’t be able to add the form-thing using a hook (there’s no hook/filter to change the thank-you message since it can be configured per event already).
    I’ll take a look for the PDF template and pending bookings to be sure.
    Pagebreaks are filtered by wordpress (installing tinymce advanced or something alike will allow you to change that). Unless you mean something else here?

    Plugin Author Franky

    (@liedekef)

    This should fix the PDF upon booking if approval is needed too:
    https://plugins.trac.wordpress.org/changeset/2463820/

    The next version will also have an extra placeholder #_BOOKINGPDF_URL{xx} that will return an url to a generated pdf (xx being a template id). This can be used in mails or in the booking thank-you message too.

    Thread Starter mattblox

    (@mattblox)

    This should fix the PDF upon booking if approval is needed too:
    https://plugins.trac.wordpress.org/changeset/2463820/

    works like a charm! Thanks!

    Improving the pdf part is surely a cool thing!

    Pagebreaks are filtered by wordpress (installing tinymce advanced or something alike will allow you to change that). Unless you mean something else here?

    I meant: in case your “ticket” is 3-5 pages long, it would be nice to have some control when one A4-page ends and the next one starts.
    Also, i’m not sure what syntax the pdf-margin expects, so i worked around:

    		<div id="Seite1" style="
    margin-top:	5mm;
    margin-bottom:	0mm;
    margin-left:	5mm;
    margin-right:	5mm;
    width:100%;
    height: 280mm;
    font-size: 10pt;
    	">...first page contents</div>
    
    		<div id="Seite2" style="
    margin-top:	5mm;
    margin-bottom:	0mm;
    margin-left:	5mm;
    margin-right:	5mm;
    width:100%;
    height: 280mm;
    font-size: 10pt;
    	">...2nd page contents</div>

    This way, it seems to place the whole <div> onto the next page.

    • This reply was modified 2 months, 3 weeks ago by mattblox.
    Plugin Author Franky

    (@liedekef)

    I’m using dompdf for pdf rendering. Forcing a new page can be done via css styling, see:
    https://stackoverflow.com/questions/22746958/dompdf-adding-a-new-page-to-pdf#22768573

Viewing 8 replies - 1 through 8 (of 8 total)
  • You must be logged in to reply to this topic.