Je suis en train d'écrire la disposition par défaut de listView pour mon composant dans laquelle je suis en train d'implémenter la fonctionnalité publier & non publiée de Joomla dans laquelle l'utilisateur peut publier un élément en un seul clic sur la case à cocher. Je suis un peu confus quant à la déclaration d'obtention de l'authentification d'utilisateur pour $ canChange donnée ci-dessous:
$canCheckin = $user->authorise('core.manage', 'com_checkin') || $item->checked_out == $userId || $item->checked_out == 0;
n'importe quel corps peut-il me dire comment nous authentifions l'utilisateur contre com_checkin?
deuxièmement, je pense que c'est faux, cela devrait être comme suit:
$canCheckin = $user->authorise('core.manage', 'com_my_component') && $item->checked_out==$user->id || $item->checked_out==0;
Dans le code ci-dessus, j'authentifie l'utilisateur sur mon composant pour m'assurer que celui-ci est autorisé à check-in. Je vérifie également si l'élément n'est pas coché par un autre utilisateur pour édition.
maintenant, la question est: où est-ce que je me trompe et si j'ai raison alors pourquoi com_content authentifie l'utilisateur contre com_checkin
com_checkin
est un composant spécial qui permet à l’utilisateur d’archiver tous les éléments de tous les composants, d’effacer le cache et de purger le cache expiré.
Ainsi, lorsque vous authentifiez un utilisateur auprès de com_checkin
vous vous assurez que cet utilisateur a le droit d’archiver cet élément (s’il dispose des droits manage
, il peut alors archiver tous les éléments).