The solution you're referring to perfectly works on 7.1.0 but with some additions.
I will begin from the start:
1) Open the file 'administration/profiles.php'
2) Find this code starting from the line 38
//--- Process Actions ---//
if(isset($_POST['adm-mp-activate']) && (bool)$_POST['members']) {
$GLOBALS['MySQL']->query("UPDATE `Profiles` SET `Status`='Active' WHERE `ID` IN ('" . implode("','", $_POST['members']) . "')");
$oEmailTemplate = new BxDolEmailTemplates();
foreach($_POST['members'] as $iId) {
createUserDataFile((int)$iId);
reparseObjTags('profile', (int)$iId);
$aProfile = getProfileInfo($iId);
$aMail = $oEmailTemplate->parseTemplate('t_Activation', array(), $iId);
sendMail($aProfile['Email'], $aMail['subject'], $aMail['body'], $iId, array(), 'html', false, true);
$oAlert = new BxDolAlerts('profile', 'change_status', (int)$iId, 0, array('status' => 'Active'));
$oAlert->alert();
}
echo "<script>window.parent." . BX_DOL_ADM_MP_JS_NAME . ".reload();</script>";
exit;
}
3) Copy and paste the following code right after it:
else if(isset($_POST['adm-mp-reject']) && (bool)$_POST['members']) {
$GLOBALS['MySQL']->query("UPDATE `Profiles` SET `Status`='Rejected' WHERE `ID` IN ('" . implode("','", $_POST['members']) . "')");
$oEmailTemplate = new BxDolEmailTemplates();
foreach($_POST['members'] as $iId) {
createUserDataFile((int)$iId);
reparseObjTags('profile', (int)$iId);
$aProfile = getProfileInfo($iId);
$aMail = $oEmailTemplate->parseTemplate('t_Rejection', array(), $iId);
sendMail($aProfile['Email'], $aMail['subject'], $aMail['body'], $iId, array(), 'html', false, true);
$oAlert = new BxDolAlerts('profile', 'change_status', (int)$iId, 0, array('status' => 'Rejected'));
$oAlert->alert();
}
echo "<script>window.parent." . BX_DOL_ADM_MP_JS_NAME . ".reload();</script>";
exit;
}
4) Open phpMyAdmin and run this query:
INSERT INTO `sys_email_templates` (`Name`, `Subject`, `Body`, `Desc`, `LangID`) VALUES ('t_Rejection', 'Your Profile Is Rejected!', '<bx_include_auto:_email_header.html />
<p><b>Dear <RealName></b>,</p>
<p>Your profile was rejected !</p>
<bx_include_auto:_email_footer.html />', 'Profile rejection notification', '0');
5) Log into the Admin Panel, go to Tools -> Cache and clear the DB cache.
6) The new Rejection email template can be edited in Settings -> Email Templates.
7) Yes, you're right: the reason of rejection can't be chosen personally. This can be done only by editing the Rejection email each time you want to reject the next member.
8) I hope this helps.