The Email Address dashboard widget is configured with a default Email Address Type. Addresses added in the widget receive that address type. When configured to use an Extended Type, the widget fails at the point of adding the address (post-verification).
To reproduce the problem:
- Create an extended type for attribute Email Address. For example: “wordpress”.
- Configure the Email Address Widget’s default Email Address Type to the new extended type.
- Add an address using the widget.
- Go through the verification process (get email, enter the code in the form).
- The process will fail after verification. You’ll find the hung email address data in the cm_email_address_widget_verifications table and the system will throw the error shown below.
The data coming through looks correct both in the plugin table and passed along just prior to save. The moment of failure seems occur deep in the CakePHP library code (right at lib/Cake/Model/model.php:_doSave) where we fail out with the above exception.