Merge pull request #15307 from seamuslee001/dev_core_1249
[civicrm-core.git] / Civi / Api4 / Action / Contact / ValidateChecksum.php
1 <?php
2
3 /*
4 +--------------------------------------------------------------------+
5 | Copyright CiviCRM LLC. All rights reserved. |
6 | |
7 | This work is published under the GNU AGPLv3 license with some |
8 | permitted exceptions and without any warranty. For full license |
9 | and copyright information, see https://civicrm.org/licensing |
10 +--------------------------------------------------------------------+
11 */
12
13 /**
14 *
15 * @package CRM
16 * @copyright CiviCRM LLC https://civicrm.org/licensing
17 * $Id$
18 *
19 */
20
21
22 namespace Civi\Api4\Action\Contact;
23
24 use Civi\Api4\Generic\Result;
25
26 /**
27 * Generate a security checksum for anonymous access to CiviCRM.
28 *
29 * @method $this setContactId(int $cid) Set contact ID (required)
30 * @method int getContactId() Get contact ID param
31 * @method $this setChecksum(string $checksum) Set checksum param (required)
32 * @method string getChecksum() Get checksum param
33 */
34 class ValidateChecksum extends \Civi\Api4\Generic\AbstractAction {
35
36 /**
37 * ID of contact
38 *
39 * @var int
40 * @required
41 */
42 protected $contactId;
43
44 /**
45 * Value of checksum
46 *
47 * @var string
48 * @required
49 */
50 protected $checksum;
51
52 /**
53 * @param \Civi\Api4\Generic\Result $result
54 */
55 public function _run(Result $result) {
56 $result[] = [
57 'valid' => \CRM_Contact_BAO_Contact_Utils::validChecksum($this->contactId, $this->checksum),
58 ];
59 }
60
61 }