Merge pull request #24140 from eileenmcnaughton/invoice_test
[civicrm-core.git] / Civi / Api4 / Address.php
1 <?php
2 /*
3 +--------------------------------------------------------------------+
4 | Copyright CiviCRM LLC. All rights reserved. |
5 | |
6 | This work is published under the GNU AGPLv3 license with some |
7 | permitted exceptions and without any warranty. For full license |
8 | and copyright information, see https://civicrm.org/licensing |
9 +--------------------------------------------------------------------+
10 */
11 namespace Civi\Api4;
12
13 /**
14 * Address Entity.
15 *
16 * This entity holds the address information of a contact. Each contact may hold
17 * one or more addresses but must have different location types respectively.
18 *
19 * Creating a new address requires at minimum a contact's ID and location type ID
20 * and other attributes (although optional) like street address, city, country etc.
21 *
22 * @ui_join_filters is_primary
23 *
24 * @searchable secondary
25 * @since 5.19
26 * @package Civi\Api4
27 */
28 class Address extends Generic\DAOEntity {
29
30 /**
31 * @param bool $checkPermissions
32 * @return Action\Address\Create
33 */
34 public static function create($checkPermissions = TRUE) {
35 return (new Action\Address\Create(__CLASS__, __FUNCTION__))
36 ->setCheckPermissions($checkPermissions);
37 }
38
39 /**
40 * @param bool $checkPermissions
41 * @return Action\Address\Save
42 */
43 public static function save($checkPermissions = TRUE) {
44 return (new Action\Address\Save(__CLASS__, __FUNCTION__))
45 ->setCheckPermissions($checkPermissions);
46 }
47
48 /**
49 * @param bool $checkPermissions
50 * @return Action\Address\Update
51 */
52 public static function update($checkPermissions = TRUE) {
53 return (new Action\Address\Update(__CLASS__, __FUNCTION__))
54 ->setCheckPermissions($checkPermissions);
55 }
56
57 /**
58 * @param bool $checkPermissions
59 * @return Action\Address\GetCoordinates
60 */
61 public static function getCoordinates($checkPermissions = TRUE) {
62 return (new Action\Address\GetCoordinates(__CLASS__, __FUNCTION__))
63 ->setCheckPermissions($checkPermissions);
64 }
65
66 }