add:  return false; }     if (primaryEmail.textLength != 0 && !/.@./.test(primaryEmail.value)) { Components .classes["@mozilla.org/embedcomp/prompt-service;1"] .getService(Components.interfaces.nsIPromptService) .alert( window, gAddressBookBundle.getString("incorrectEmailAddressFormatTitle"), gAddressBookBundle.getString("incorrectEmailAddressFormatMessage")); 
context: function CheckCardRequiredDataPresence(doc){  // Simple checks that the primary email could be of the form |user@host|.  var primaryEmail = doc.getElementById("PrimaryEmail");  var primaryEmailValue = primaryEmail.value;  var primaryEmailValueLength = primaryEmailValue.length;  var primaryEmailValueAtLastIndex = primaryEmailValue.lastIndexOf("@");  if (!((primaryEmailValueLength >= 3) &&        (primaryEmailValueAtLastIndex > 0) &&        (primaryEmailValueAtLastIndex < primaryEmailValueLength - 1)))  {    Components      .classes["@mozilla.org/embedcomp/prompt-service;1"]      .getService(Components.interfaces.nsIPromptService)      .alert(        window,        gAddressBookBundle.getString("cardRequiredDataMissingTitle"),        gAddressBookBundle.getString("cardRequiredDataMissingMessage"));    // Focus the dialog field, to help the user.    document.getElementById("abTabs").selectedIndex = 0;    primaryEmail.focus();    return false;  }  return true;}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/bd69816b5765dfd607db8dd0c96cd4eb36ce4e7b/abCardOverlay.js/clean/mailnews/addrbook/resources/content/abCardOverlay.js