upgrade email system
Ticket
+status
+priority
+tag
+commit
+solution
I'm getting very tempted to change our email handling to map better to our emerging action framework. I've been thinking we should:
- add card event settings. We get rid of *send and add something like *on create, *on update, and *on delete
- add an email template cardtype, which could be a value (or values) of the above. Essentially the same structure as the '+email config' cards (by convention) now. (aside - this has parallels to the *layout patterns -- I think that should be a cardtype too). Note that we'll need to give a good bit of thought to nomenclature -- there are lots of "email" cards out there already.
Other improvements needed:
- add time event settings, like *hourly, *daily, *monthly (not sure how much these complicate installation, but I'm guessing f'in with cron jobs can get icky. probably best to wait and make this a non-core module.
- add other "action" cardtypes. Not sure exactly how to organize them, but I imagine we'd want to be able to trigger a wide range of HTTP calls, and maybe some calls to other protocols? We can gather ideas here if necessary, but I mainly mention it to point out the significance of the Email cardtype (otherwise, add a preview option
- (module) integration with bulk mail service. Impressed with mailchimp.com. Haven't used but solid api / docs.
- more explicit permission granting. Pretty sure this is needed to make sure that watcher notifications don't let people use watching to see things they shouldn't. (can explain later. consider this a flag)
- add some indication of outcome of flexmail attempt
- If a card is in a set that triggers email, add a menu item under advanced that indicates this, and clicking on it goes to the relevant email setup card.