Requirement
I’ve got a task where I have to save user’s browser information (Browser name and version) into Sitecore WFFM SQL database as part of the every WFFM form submission. Website support team would like to know the user’s browser that is being used for accessing the production site, so that they don't have to request this information while troubleshooting any issues the user has reported via the Feedback/Troubleshooting Contact Us form.Environment Details
Sitecore 8.2 update 5 (CMS only mode), Web Forms for Marketers 8.2 rev. 170807
Implementation
I’ve decided to customize WFFM save to database functionality and add new FieldData to form field list dynamically while saving form data. This new FieldData will consist user’s browser information (Browser name and version). This implementation can be achieved by below three ways:
- Customizing SQL form data provider
- Create new save to database action
- Create a custom field.
WFFM Configuration
In the \Website\Data folder of your Sitecore instance, attach the Sitecore_Wffm.mdf database to the SQL Server, and add a connection string with the name “wffm” in the ConnectionStrings.config file, located in the \Website\App_Config folder.
<add name="wffm" connectionString="Data Source=(local);Initial Catalog=instance_name_wffmDB;Integrated Security=False;User ID=sa;Password=12345"
Customizing SQL form data provider
- Create a new CustomSqlFormsDataProvider class and inherit SqlFormsDataProvider class.
- Write custom logic to add new FieldData to form field list dynamically while saving form data.
- Add a config patch as below to configure CustomSqlFormsDataProvider.
<configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" xmlns:set="http://www.sitecore.net/xmlconfig/set/"> <sitecore> <wffm> <analytics> <formsDataProvider patch:instead="*[@ref='/sitecore/wffm/analytics/analyticsFormsDataProvider']" ref="/sitecore/wffm/analytics/customSqlFormsDataProvider"/> <customSqlFormsDataProvider type="Website.WFFM.Providers.CustomSqlFormsDataProvider, Website"> <param name="connectionStringName">wffm</param> <param name="settings" ref="/sitecore/wffm/settings"/> <param name="connectionProvider" ref="/sitecore/wffm/analytics/connectionProvider"/> </customSqlFormsDataProvider> </analytics> </wffm> </sitecore> </configuration>
- Select the relevant WFFM form and in the Submit section, select Save Form Data To Storage checkbox.
- Publish Sitecore related changes. Build the code and deploy assembly in bin folder of your Sitecore instance.
https://saglamproxy.com
ReplyDeletemetin2 proxy
proxy satın al
knight online proxy
mobil proxy satın al
YFO7H