{"action":"opened","issue":{"url":"https://api.github.com/repos/easydigitaldownloads/easy-digital-downloads/issues/6064","repository_url":"https://api.github.com/repos/easydigitaldownloads/easy-digital-downloads","labels_url":"https://api.github.com/repos/easydigitaldownloads/easy-digital-downloads/issues/6064/labels{/name}","comments_url":"https://api.github.com/repos/easydigitaldownloads/easy-digital-downloads/issues/6064/comments","events_url":"https://api.github.com/repos/easydigitaldownloads/easy-digital-downloads/issues/6064/events","html_url":"https://github.com/easydigitaldownloads/easy-digital-downloads/issues/6064","id":262915969,"number":6064,"title":"Introduce EDD_Email_Settings API","user":{"login":"brashrebel","id":4993131,"avatar_url":"https://avatars1.githubusercontent.com/u/4993131?v=4","gravatar_id":"","url":"https://api.github.com/users/brashrebel","html_url":"https://github.com/brashrebel","followers_url":"https://api.github.com/users/brashrebel/followers","following_url":"https://api.github.com/users/brashrebel/following{/other_user}","gists_url":"https://api.github.com/users/brashrebel/gists{/gist_id}","starred_url":"https://api.github.com/users/brashrebel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brashrebel/subscriptions","organizations_url":"https://api.github.com/users/brashrebel/orgs","repos_url":"https://api.github.com/users/brashrebel/repos","events_url":"https://api.github.com/users/brashrebel/events{/privacy}","received_events_url":"https://api.github.com/users/brashrebel/received_events","type":"User","site_admin":false},"labels":[{"id":37586223,"url":"https://api.github.com/repos/easydigitaldownloads/easy-digital-downloads/labels/Administration","name":"Administration","color":"E74C3C","default":false},{"id":2798128,"url":"https://api.github.com/repos/easydigitaldownloads/easy-digital-downloads/labels/Enhancement","name":"Enhancement","color":"84b6eb","default":false},{"id":674351208,"url":"https://api.github.com/repos/easydigitaldownloads/easy-digital-downloads/labels/Proposal","name":"Proposal","color":"d4c5f9","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2017-10-04T20:14:38Z","updated_at":"2017-10-04T20:14:38Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"EDD extensions introduce all kinds of different settings but one of the most common is some sort of new email message specific to the extension's needs. There are many extensions in existence now which introduce new email subject and message settings as well as a selection of email tags. Despite the end goal being pretty similar, there's quite a bit of inconsistency when it comes to how these settings are being included.\r\n\r\nI propose that we introduce a simple new API for adding these specific types of settings. Here's a few benefits we'd gain if we did:\r\n\r\n- Consistent location.  Some extensions put their email settings under Downloads - > Settings - > Emails in a new subsection. Others include them under Downloads - > Extensions - > Extension name. Others like FES, Product Updates and Per Product Emails put them somewhere else entirely like they're special or something. I think all email related settings should end up under Emails (also discussed [here](https://github.com/easydigitaldownloads/edd-fes/issues/1338#issuecomment-324738995)).\r\n- Consistent fields. Some emails include extra fields which others do not and the reasons are not always clear.\r\n- More consistent tags. It isn't always clear to users why some tags are available for some emails but not for others. With a new API we might be able to make it much easier to maintain consistency and ensure all emails have whichever tags they need.\r\n- Consistent UX. Again over [here](https://github.com/easydigitaldownloads/edd-fes/issues/1338#issuecomment-324738995) an improved UX is being considered. Enhancements like that could be really awesome and would be much easier to implement if we have everyone using the same method.\r\n- Code simplicity. With a well constructed new class, extensions could register their new email settings in just a few lines instead of a few dozen lines (at best). They'll also likely end up getting more for free if we standardize a lot of common email settings.\r\n\r\n##Some extensions with email settings\r\n\r\n- Frontend Submissions\r\n- Simple Shipping\r\n- Recurring Payments\r\n- Software Licensing\r\n- Commissions\r\n- Reviews\r\n- Custom Deliverables\r\n- Message (planned feature)\r\n- PDF Vouchers\r\n- Per Product Emails\r\n- Product Updates\r\n- Check Payment Gateway\r\n- Purchase Rewards\r\n- Sales Recovery\r\n- Wallet\r\n- Subscriber Discounts for Easy Digital Downloads\r\n\r\nEvery single one of these extensions creates settings with at least a subject and message field as well as their own list of tags.\r\n\r\nI think this change would make things easier for developers, make enhancements easier for us and most importantly, provide end users with a much simpler and more consistent experience."}}
{"actor":{"display_login":"brashrebel"}}