You would have to change the blog creation process significantly to suppoort this. Here are a few suggestions:
- I have posted some code for per-user blog creation in one of the earlier support threads: http://www.mono-software.com/Mono/Pages/Discussion/dtopic/jQYy1_fP8EKrc56gAOJw2A/NA/?dbmpageno=1&dmsgid=_xYfR83BDUeI_J6mAQaAlw#dbmPageNopg
- mail alert sending is realtively easy, look into the MonoSoftware.MonoX.Mail namespace, for example
MonoXMailSender.GetInstance().SendMail(mailToAddress, mailSubject, htmlContent, plainContent);
- the approval step will require a new Web part/page. If you would like to avoid it, you could use the strategy from our account activation part, where clicking on a link in the mail message would approve a blog. However, sooner or later a separate approval UI will have to be developed.
- Blog entity by default does not have the "approved" indicator (blog post entity holds IsPublished field, but it is under the control of the original blog post author). You could either change the source of thedata layer to support it, or get around it by assigning approved blog authors to a separate role, and that filter blogs by that role.