It does make sense. But I'm confused as to why when I was previously using [[!Profile]] along with the Extended Fields (no classExtender) everything worked fine for non-members, i.e., none of the "User not found" business.
But when I replace [[!Profile]] with [[!setUserPlaceholders]] and also remove the old Extended Fields entries, that's when I have problems.
The only way I've been able to use classExtender and avoid the "User not found" alert (for non-members) is to keep the Profile tag and not use setUserPlaceholders at all. Additionally I need to keep the old Extended Fields entries. This way I still have editing control over the classExtender table and everything else works fine.
Todd
I suspect that Profile returns nothing when the the user is not found -- so no error message.
You could easily modify setUserPlaceholders to do the same, just change this:
if (!$data) {
return $modx->lexicon('ce.user_not_found');
}
to this:
if (!$data) {
return '';
}
ExtUserUpdateProfile doesn't handle prefixes, so it probably won't work with them in the form unless you modify its code to handle them.