web-dev-qa-db-fra.com

Utilisation de com_checkin et $ canChange et $ canCheckin dans listview

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

1
Sumer Raj Chouhan

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).

1
Dmitry Rekun