Merge pull request #18008 from civicrm/5.28
[civicrm-core.git] / Civi / Api4 / GroupContact.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 */
18
19 namespace Civi\Api4;
20
21 /**
22 * GroupContact entity - link between groups and contacts.
23 *
24 * A contact can either be "Added" "Removed" or "Pending" in a group.
25 * CiviCRM only considers them to be "in" a group if their status is "Added".
26 *
27 * @see \Civi\Api4\Group
28 *
29 * @package Civi\Api4
30 */
31 class GroupContact extends Generic\BridgeEntity {
32
33 /**
34 * @param bool $checkPermissions
35 * @return Action\GroupContact\Create
36 */
37 public static function create($checkPermissions = TRUE) {
38 return (new Action\GroupContact\Create(__CLASS__, __FUNCTION__))
39 ->setCheckPermissions($checkPermissions);
40 }
41
42 /**
43 * @param bool $checkPermissions
44 * @return Action\GroupContact\Save
45 */
46 public static function save($checkPermissions = TRUE) {
47 return (new Action\GroupContact\Save(__CLASS__, __FUNCTION__))
48 ->setCheckPermissions($checkPermissions);
49 }
50
51 /**
52 * @param bool $checkPermissions
53 * @return Action\GroupContact\Update
54 */
55 public static function update($checkPermissions = TRUE) {
56 return (new Action\GroupContact\Update(__CLASS__, __FUNCTION__))
57 ->setCheckPermissions($checkPermissions);
58 }
59
60 }