PDF Conjurer (updated free plugin, now saving to database)

Hi Ryanck! I meant for the page numbering (but maybe you can do without it) and grey line to separate each row (but maybe you are fine without that too).

Hi there @Lucien,

Thanks for your reply. Now it makes more sense. I need to try the approach and hope it´s possible to have a grey line to separate each row and to put all the invoice lines there.

Have a nice day.

You’ve got me thinking… would bubble allow a plugin to do such thing?
I use very few plugins other then the ones made by bubble team in my apps.
Could a 3rd party plugin collect data that flows through it without letting the app owner know about it?

Yes, perfectly possible, for example when you set up something like google analytics or hotjar, that’s exactly what’s happening. Also with our smartphones, everything is tracked and reported back to, for example, phone manufacturer or phone software provider, so they know how we type, who we talk to, etc. The main difference is the intention of the developer or organization.

Someone malicious could indeed try to setup a plugin to steal the app’s data, but Bubble has security measures in place in order to prevent that, so I don’t know if such attempt would be successful.

Also, to help myself I try not to bloat my app with plugins, that’s usually a bad choice for a variety of reasons.

1 Like

Seems like a fantastic plugin! On my app users will be generating a lot of pdfs on both mobile and desktop, and our company wants to make sure we also have a copy of the pdf that is generated for our files. So the saving to bubble and/or integration with an email plugin would be huge for us! Very much looking forward to the next update, thanks!

2 Likes

Hey people for some reason I can’t get to edit the opening post, so I’ll insert new instructions regarding changes here.

Update: Now saving back to the database! This is a backward compatible change (non breaking change).

Yes it works on mobile browsers, just like the rest of the plugin. :smile:

So, a long awaited and much requested feature was to save our PDF files into our app’s storage.
Here it is! This is how you do it:

Step 1 is as easy as checking a box in the final workflow action. That’s what it is!

Then you click this custom event that the plugin gives you:

Then at that event you build the workflow that will execute your logic regarding how you want to save the link to the PDF file. In this picture I’m creating a sample thing I called in its data type “A file”. It’s just a thing with three text fields.

Here’s a similar logic with a few differences.

See? Just three text fields for that first example.

And a single text field on that second example.

Here’s how the first example looks in my database after the first run. Just so you see what kind of text comes from each of the options. And at what time of the day I was working on this :joy:


The text I have at the field to explain it is this one:

If this is enabled, you will be able to use this plugin’s custom event called “PDF uploaded and available in element state”, there you’ll be able to save the file’s URL to a text field in a thing in Bubble’s database.
Note that it comes like this: //aws.com/23892378/filename so you must append the https: or http: for it to work as a link when displaying.

But I suggest you to save it in that original state, Bubble apparently uses it as it is for some things. When that event is triggered, the PDF will already be uploaded to your app’s storage and the link will be in the PDF Model element custom state called “Saved PDF’s URL”.
Note that it will be available in the same “PDF Model X” element that was used to create the file.

Also, if you want to restrict access to the file (make it private), you can. This is the explanation for it, found right below the field to attach the pdf to a thing:

Optional. Required if you want this file to be private. Else anyone with the link will be able to access it. Check Introduction - Bubble Docs and Introduction - Bubble Docs to know more.

I think this wraps it. As always, keep requests for features, bug reports and questions coming!

20 Likes

Thanks, for this useful upgrade.

1 Like

Very exiting :wink:

Just a note… I had to remove and add re-add the plugin for the “A PDF Model finished…” to appear in my Elements menu.

One more thing; is it possible to only save file to database and not trigger the file being opened/downloaded in the browser ? Scenario: generate/save file/trigger send S3 link in mail (no downloading of file triggered)

1 Like

Hmm, didn’t thought of that, but it’s perfectly possible, will add that soon.

Merely upgrading it didn’t solved it? Edit: I upgraded, it did not appeared, then pressed F5 then it appeared.

1 Like

Thanks @vini_brito for the plugin, very nice to work with!

Is it possible to save the PDF into the database as a PDF file which I can mail afterwords?

Thanks!

2 Likes

Hi! Yes, that’s exactly what it does. You save the link and then you can send the link to the file in the email (or do something else unrelated to email).

About attaching it to the email (like we do on a consumer grade gmail or outlook interface), I don’t know how it goes because I have not dealt with mailing from Bubble and that’s beyond this plugin’s reach, but as far as uploading the file to your app and then presenting it to be downloaded through whatever means you want, saving the link and later presenting it is the way to go. Note that you don’t need to show the ugly link, you can do something like this to present something prettier, note that I hid the link into words fitting the context, you can do something like “Here’s your invoice”.

If you want to see the file itself, it will be at your app’s file manager tab here (click the picture to see it in details):

Even if you can find the file there, make sure you save the file’s URL (its link) into a text field in your app’s database when uploading it (like I’ve shown in the example images) that’s the only moment you’ll be able to save the URL in your database to refer to it later.

2 Likes

I know i can save it in the database which is great. I would like to attach the PDF. Anybody any experience with mailing (standard bubble or plugin)

@klaas.vanhoeck
Have you seen this thread? There’s a free plugin that enhances our mailing capabilities…

1 Like

Hi,

I think that with the Sendgrid plugin it will be possible.

Hi,

I’m getting a temporary bug when creating a pdf on IOS (Ipad). Android and Web works fine, really strange…

Thanks!

Hi @klaas.vanhoeck
Can you share more information? Fastest would be you private messaging me a link to your app with view capabilities on and maybe a screenshot of something outputted by Bubble debugger or even the browser console if you’re willing to.

All in a private message of course. However, at least I need screenshots of your workflow actions related to generating the PDF and if possible screenshots of the Bubble debugger in case it shows some error.

1 Like

Hi, Thank you for this awesome plugin. I have tested it and found that there is issue regarding to rendering foreign language text (in my case, its Thai langauge). Are there any workaround to fix?

Hi! It’s about the font, currently the plugin only supports Roboto which does not supports Thai (and some other languages).

Not currently on the roadmap, but in a distant future there may be support for other fonts.

2 Likes

Just a quick word of THANKS to you @vini_brito for this outstanding plugin. Generating PDFs is … not fun. With the PDF Conjurer plugin, it kinda almost is? The stepwise approach is very, very smart. I’m just getting started but was able to quickly create a live sample on my own use case. Great in-app documentation, clear screenshot of the flow, etc. Just really well done. I was dreading the idea of turning my app’s dynamic contract-builder feature into a printable document with invoice. With this … I’ll sleep well now, 'cause I’m pretty confident I’ll have it all done by noon tomorrow.

4 Likes

I highly appreciate the kind words! Also thank you for taking the time to write feedback, that means a lot to me :smiley:
Enjoy!

1 Like