api4 - Import CRM/, Civi/, templates/, ang/, css/, js/, xml/menu
[civicrm-core.git] / Civi / Api4 / Service / Schema / Joinable / ActivityToActivityContactAssigneesJoinable.php
1 <?php
2
3 namespace Civi\Api4\Service\Schema\Joinable;
4
5 class ActivityToActivityContactAssigneesJoinable extends Joinable {
6 /**
7 * @var string
8 */
9 protected $baseTable = 'civicrm_activity';
10
11 /**
12 * @var string
13 */
14 protected $baseColumn = 'id';
15
16 /**
17 * @param $alias
18 */
19 public function __construct($alias) {
20 $optionValueTable = 'civicrm_option_value';
21 $optionGroupTable = 'civicrm_option_group';
22
23 $subSubSelect = sprintf(
24 'SELECT id FROM %s WHERE name = "%s"',
25 $optionGroupTable,
26 'activity_contacts'
27 );
28
29 $subSelect = sprintf(
30 'SELECT value FROM %s WHERE name = "%s" AND option_group_id = (%s)',
31 $optionValueTable,
32 'Activity Assignees',
33 $subSubSelect
34 );
35
36 $this->addCondition(sprintf('%s.record_type_id = (%s)', $alias, $subSelect));
37 parent::__construct('civicrm_activity_contact', 'activity_id', $alias);
38 }
39
40 }