Est-il possible d'empêcher Joomla de supprimer des utilisateurs avec un plugin utilisateur? Le profil de l'utilisateur doit être désactivé, mais jamais supprimé.
J'ai bricolé avec onUserBeforeDelete, mais les documents font référence à la v1.5, je ne suis donc pas sûr que je l'aborde même de la bonne façon "d'annuler l'événement".
Dans le plug-in, forcez une redirection vers la page où le bouton de suppression est activé.
public function onUserBeforeDelete($user)
{
$app = JFactory::getApplication();
//possibly set an error message
JError::raiseWarning( 100, 'Warning: Cannot delete user profile' );
$app->redirect(JRoute::_('index.php?option=com_users&view=profile&layout=edit'));
jExit();
}
Cet exemple peut être ajusté, mais cela devrait fonctionner simplement pour arrêter l'utilisateur. Vous pouvez aussi lancer quelques requêtes mysql pour "désactiver" l'utilisateur, pour donner l'impression qu'il a été désactivé plutôt que de simplement définir une erreur.
https://github.com/joomla/joomla-cms-examples/blob/master/plugins/user/example/example.php
Le lien a été modifié la dernière fois il y a moins d'un an. Je doute donc fort que onUserBeforeDelete
ait subi des modifications majeures.