Ok, well the coffee has kicked in. I'm posting this message so others will hopefully benefit from my experience. I tracked down the language ("Checking for existing email entry...") to a label "LBL_VERIFY_EMAIL_ADDRESS". This label is used in the Javascript in:
/include/SugarEmailAddress/SugarEmailAddress.js
Which uses an AJAX call to:
index.php?module=Contacts&action=RetrieveEmail ...
Trying to request this action results in a message of:
"There is no action by that name."
Removing my custom controller seems to fix the problem, resulting in a response:
{"target":null}
So, this brings me to my custom controller. I thought my custom controller would only extend the existing actions, but obviously I'm mistaken. I noticed that there's already a controller.php file. This is where the action and view is set for action_RetrieveEmail().
/modues/Contacts/controller.php
PHP Code:
class ContactsController extends SugarController
{
function action_Popup(){
if(!empty($_REQUEST['html']) && $_REQUEST['html'] == 'mail_merge'){
$this->view = 'mailmergepopup';
}else{
$this->view = 'popup';
}
}
function action_ValidPortalUsername()
{
$this->view = 'validportalusername';
}
function action_RetrieveEmail()
{
$this->view = 'retrieveemail';
}
function action_ContactAddressPopup()
{
$this->view = 'contactaddresspopup';
}
function action_CloseContactAddressPopup()
{
$this->view = 'closecontactaddresspopup';
}
}
I fixed this problem by extending the existing module controller into my custom controller.
require_once('modules/Contacts/controller.php');
class CustomContactsController extends ContactsController {
...
}
Thanks, Jeff
Bookmarks