Server : Apache System : Linux indy02.toastserver.com 3.10.0-962.3.2.lve1.5.85.el7.x86_64 #1 SMP Thu Apr 18 15:18:36 UTC 2024 x86_64 User : palandch ( 1163) PHP Version : 7.1.33 Disable Function : NONE Directory : /home/palandch/www/core/model/modx/processors/resource/locks/ |
<?php /** * Steal a lock on a resource * * @package modx * @subpackage processors.resource.locks */ class modResourceLocksStealProcessor extends modProcessor { public function checkPermissions() { return $this->modx->hasPermission('steal_locks'); } public function process() { $stolen = false; if (!empty($scriptProperties['id'])) { /** @var modResource $resource */ $resource = $this->modx->getObject('modResource', intval($scriptProperties['id'])); if ($resource && $resource->checkPolicy('steal_lock')) { $lock = $resource->getLock($this->modx->user->get('id')); if ($lock > 0 && $lock != $this->modx->user->get('id')) { $resource->removeLock($lock); $stolen = $resource->addLock($this->modx->user->get('id')); } } } if ($stolen !== true) return $this->failure($stolen); return $this->success(); } } return 'modResourceLocksStealProcessor';