impresspages / ImpressPages

ImpressPages is php framework with admin panel. Build functional website in one hour.
http://www.impresspages.org
Other
501 stars 179 forks source link

Overriding how email is handled?? #842

Open ghost opened 7 years ago

ghost commented 7 years ago

I'd like to override how ImpressPages sends email (from forms) as I wish to store the data in a database rather than sending an email.

I've hacked Ip/Internal/Email/Module.php for now but that will be wiped during updates (unless there's a way of doing this which avoids that problem??)

I reviewed FormExample but the user wants to use the drag/drop form editor which isn't an option with a plugin like that?

Note: I've noticed if you blank-out the (send to) email for a form, no attempt is made to send email - the email still exists in the log/queue and so I could access that I suppose BUT I'd like a slicker solution really...

Any help with this issue would be greatly appreciated...

jankus commented 7 years ago

This part of the system isn't developer friendly, yet. We have plans to make it extendable and easier to work with. However, at this time we don't have a final decision how to approach this issue. All ideas are welcome.

Having that in mind, any hack is correct way as long as it suits your needs. Unfortunately, you are correct about updates. They will wipe out your changes in the core. However, if you work with code version control, it should be easy to spot that and revert when needed.

wannaco commented 7 years ago

@shrewdlogarithm I had been thinking about a way to store form data and I figured that getting form data into the database would not be as

efficient. So I got a little plugin created that integrates with Google SpreadSheets using Google Apps scripts.

I will hopefully publish it soon, I just need to get the documentation ready. image No matter how many forms you add and in what page they are, a sheet gets created with the name of the active breadcrumb on the page and inserts the data with its respective headers alongwith the page and widgetid to keep track of form submissions