All the emails that are sent are sent using the language files, so changing the content to the email copy is a matter of doing language overrides:
I'm not sure there is a specific single 'event' for catching email sending. The only way to do this would be to probably override the mailer class and add ...
Registration message comes from Language Variable defined in com_users language file:
Replace en-GB with your desired language code of course.
You should search your message in the above file and instead of directly editing .com_users.ini which might get overwritten in next joomla update, you should create language ...
Within Joomla you could use JLayout.
$body = JLayoutHelper::render('path.to.layout');
If you have any variables you need to use in the layout, pass them as second argument:
$body = JLayoutHelper::render('path.to.layout', $displayData);
But because this is done for emails, you probably don't need JLayout features like template ...
Those constants are located in /language/en-GB/en-GB.com_users.ini
My guess is that you are looking for COM_USERS_EMAIL_ACTIVATED_BY_ADMIN_ACTIVATION_BODY constant in administrator language folder and you should look for it inside site language folder.
Yes, there are several ways to render internally a page from a view.
Basically, you call the view and capture the output in a variable.
For instance, in FoF you can do it in this way:
$output = ...
I will try to answer this, more in a general sense, not specific to easy-profile.
The code responsible to sending the email is located in the registration model. You can hack that, but it would just be the wrong approach. In order to hack it you need to change two things:
Language string: COM_USERS_EMAIL_ACTIVATE_WITH_ADMIN_ACTIVATION_BODY to include a new ...