Hello Swapnil,
In past I tried to refactoring email interface with the idea to :
* deprecate current ProductStoreEmailSetting to link it to
TemplateEmailSetting. The purpose is to centralize all email
configuration in this entity
* link TemplateEmailSetting with Content through
TemplateEmailSettingContent and TemplateEmailSettingContentType. This
offert the possibilty to link header, body, footer or some more complex
case like link documents, pdf invoice, order, etc ...
* review all send email function to manage the content rendering
But the time has been missed :(
If you are motivate, we can try to revive this idea ?
Nicolas
Le 11/08/2017 à 08:01, Swapnil Mane a écrit :
Hello Devs,
While looking into the support of email templates for Product Store, we
found it is managed by screens.
Like for Order Completion
<ProductStoreEmailSetting
bodyScreenLocation="component://ecommerce/widget/EmailOrderScreens.xml#OrderCompleteNotice"
emailType="PRDS_ODR_COMPLETE" fromAddress="ofbizt...@example.com"
productStoreId="9000" subject="OFBiz Demo - Your Order Is Complete
#${orderId}"/>
Here you can see, we are having dependency on screens (i.e. templates
defined in file system)
Due to this, the user is unable to edit the email template on the fly.
We can enhance this mechanism by making the template as content driven.
Here is the design plan,
We can extend the ProductStoreEmailSetting entity by contentId field.
While rendering email based on its type, if the contentId is present, this
content will render, else system will look for bodyScreenLocation (our
existing implementation)
Using this we can leverage the CMS capability of the OFBiz.
Right now if end user (client) wants to make any change in the email
template, it required the changes in the file.
If we manage this by content, the user can edit this on the fly with the
help of CMS.
All the inputs and suggestions are welcome!
- Best Regards,
Swapnil M Mane
www.hotwaxsystems.com
www.hotwax.co