static function postProcess(&$form) { $values = $form->exportValues(); $teamId = $values['pcp_team_contact']; $teampcpId = CRM_Pcpteams_Utils::getPcpIdByContactAndEvent($form->get('component_page_id'), $teamId); $userId = CRM_Pcpteams_Utils::getloggedInUserId(); // Create Team Member of relation to this Team $cfpcpab = CRM_Pcpteams_Utils::getPcpABCustomFieldId(); $cfpcpba = CRM_Pcpteams_Utils::getPcpBACustomFieldId(); $customParams = array("custom_{$cfpcpab}" => $form->get('page_id'), "custom_{$cfpcpba}" => $teampcpId); CRM_Pcpteams_Utils::createTeamRelationship($userId, $teamId, $customParams); $form->_teamName = CRM_Contact_BAO_Contact::displayName($teamId); $form->set('teamName', $form->_teamName); $form->set('teamContactID', $teamId); $form->set('teamPcpId', $teampcpId); $teamAdminId = CRM_Pcpteams_Utils::getTeamAdmin($teampcpId); // Team Join: create activity $actParams = array('target_contact_id' => $teamId, 'assignee_contact_id' => $teamAdminId); CRM_Pcpteams_Utils::createPcpActivity($actParams, CRM_Pcpteams_Constant::C_AT_REQ_MADE); CRM_Core_Session::setStatus(ts('A notification has been sent to the team. Once approved, team should be visible on your page.'), ts('Team Request Sent')); //send email once the team request has done. list($teamAdminName, $teamAdminEmail) = CRM_Contact_BAO_Contact::getContactDetails($teamAdminId); $contactDetails = civicrm_api('Contact', 'get', array('version' => 3, 'sequential' => 1, 'id' => $userId)); $emailParams = array('tplParams' => array('teamAdminName' => $teamAdminName, 'userFirstName' => $contactDetails['values'][0]['first_name'], 'userlastName' => $contactDetails['values'][0]['last_name'], 'teamName' => $form->_teamName, 'pageURL' => CRM_Utils_System::url('civicrm/pcp/manage', "reset=1&id={$teampcpId}", TRUE, NULL, FALSE, TRUE)), 'email' => array($teamAdminName => array('first_name' => $teamAdminName, 'last_name' => $teamAdminName, 'email-Primary' => $teamAdminEmail, 'display_name' => $teamAdminName)), 'valueName' => CRM_Pcpteams_Constant::C_MSG_TPL_JOIN_REQUEST); $sendEmail = CRM_Pcpteams_Utils::sendMail($userId, $emailParams); }
function survey_get_example() { $params = array('version' => 3, 'title' => 'survey title', 'activity_type_id' => '30', 'max_number_of_contacts' => 12, 'instructions' => 'Call people, ask for money'); require_once 'api/api.php'; $result = civicrm_api('survey', 'get', $params); return $result; }
function survey_get_example() { $params = array('version' => 3, 'title' => 'survey title', 'api.survey.delete' => 1); require_once 'api/api.php'; $result = civicrm_api('survey', 'get', $params); return $result; }
function uf_group_get_example() { $params = array('add_captcha' => 1, 'add_contact_to_group' => 2, 'cancel_URL' => 'http://example.org/cancel', 'created_date' => '2009-06-27 00:00:00', 'created_id' => 69, 'group' => 2, 'group_type' => 'Individual,Contact', 'help_post' => 'help post', 'help_pre' => 'help pre', 'is_active' => 0, 'is_cms_user' => 1, 'is_edit_link' => 1, 'is_map' => 1, 'is_reserved' => 1, 'is_uf_link' => 1, 'is_update_dupe' => 1, 'name' => 'Test_Group', 'notify' => '*****@*****.**', 'post_URL' => 'http://example.org/post', 'title' => 'Test Group', 'version' => 3); require_once 'api/api.php'; $result = civicrm_api('uf_group', 'get', $params); return $result; }
function participant_get_example() { $params = array('id' => 14, 'version' => 3); require_once 'api/api.php'; $result = civicrm_api('participant', 'get', $params); return $result; }
/** * @param array $cxn * @param string $entity * @param string $action * @param array $params * @return mixed */ public static function route($cxn, $entity, $action, $params) { $SUPER_PERM = array('administer CiviCRM'); require_once 'api/v3/utils.php'; // FIXME: Shouldn't the X-Forwarded-Proto check be part of CRM_Utils_System::isSSL()? if (CRM_Core_BAO_Setting::getItem(CRM_Core_BAO_Setting::SYSTEM_PREFERENCES_NAME, 'enableSSL') && !CRM_Utils_System::isSSL() && strtolower(CRM_Utils_Array::value('X_FORWARDED_PROTO', CRM_Utils_System::getRequestHeaders())) != 'https') { return civicrm_api3_create_error('System policy requires HTTPS.'); } // Note: $cxn and cxnId are authenticated before router is called. $dao = new CRM_Cxn_DAO_Cxn(); $dao->cxn_id = $cxn['cxnId']; if (empty($cxn['cxnId']) || !$dao->find(TRUE) || !$dao->cxn_id) { return civicrm_api3_create_error('Failed to lookup connection authorizations.'); } if (!$dao->is_active) { return civicrm_api3_create_error('Connection is inactive.'); } if (!is_string($entity) || !is_string($action) || !is_array($params)) { return civicrm_api3_create_error('API parameters are malformed.'); } if (empty($cxn['perm']['api']) || !is_array($cxn['perm']['api']) || empty($cxn['perm']['grant']) || !(is_array($cxn['perm']['grant']) || is_string($cxn['perm']['grant']))) { return civicrm_api3_create_error('Connection has no permissions.'); } $whitelist = \Civi\API\WhitelistRule::createAll($cxn['perm']['api']); \Civi::service('dispatcher')->addSubscriber(new \Civi\API\Subscriber\WhitelistSubscriber($whitelist)); CRM_Core_Config::singleton()->userPermissionTemp = new CRM_Core_Permission_Temp(); if ($cxn['perm']['grant'] === '*') { CRM_Core_Config::singleton()->userPermissionTemp->grant($SUPER_PERM); } else { CRM_Core_Config::singleton()->userPermissionTemp->grant($cxn['perm']['grant']); } $params['check_permissions'] = 'whitelist'; return civicrm_api($entity, $action, $params); }
function group_contact_get_example() { $params = array('group_id' => 1, 'version' => 3, 'api.contact.get' => 1); require_once 'api/api.php'; $result = civicrm_api('group_contact', 'get', $params); return $result; }
function line_item_get_example() { $params = array('version' => 3, 'entity_table' => 'civicrm_contribution'); require_once 'api/api.php'; $result = civicrm_api('line_item', 'get', $params); return $result; }
function activity_type_delete_example() { $params = array('activity_type_id' => 682, 'version' => 3); require_once 'api/api.php'; $result = civicrm_api('activity_type', 'delete', $params); return $result; }
/** * Custom getContactList AJAX from CRM_Contact_Page_AJAX * */ static function getContactList() { $params = array('version' => 3, 'check_permissions' => TRUE); // String params // FIXME: param keys don't match input keys, using this array to translate $whitelist = array('s' => 'name', 'fieldName' => 'field_name', 'tableName' => 'table_name', 'context' => 'context', 'rel' => 'rel'); foreach ($whitelist as $key => $param) { if (!empty($_GET[$key])) { $params[$param] = $_GET[$key]; } } //CRM-10687: Allow quicksearch by multiple fields if (!empty($params['field_name'])) { if ($params['field_name'] == 'phone_numeric') { $params['name'] = preg_replace('/[^\\d]/', '', $params['name']); } if (!$params['name']) { CRM_Utils_System::civiExit(); } } // Numeric params $whitelist = array('limit', 'org', 'employee_id', 'cid', 'id', 'cmsuser'); foreach ($whitelist as $key) { if (!empty($_GET[$key]) && is_numeric($_GET[$key])) { $params[$key] = $_GET[$key]; } } $result = civicrm_api('Contact', 'getquick', $params); if (empty($result['is_error']) && !empty($result['values'])) { foreach ($result['values'] as $key => $val) { echo "{$val['id']}::{$val['data']}|{$val['id']}\n"; } } CRM_Utils_System::civiExit(); }
function entity_tag_create_example() { $params = array('contact_id' => 1, 'tag_id' => 1, 'version' => 3); require_once 'api/api.php'; $result = civicrm_api('entity_tag', 'create', $params); return $result; }
function banking_civicrm_install_options($data) { foreach ($data as $groupName => $group) { // check group existence $result = civicrm_api('option_group', 'getsingle', array('version' => 3, 'name' => $groupName)); if (isset($result['is_error']) && $result['is_error']) { $params = array('version' => 3, 'sequential' => 1, 'name' => $groupName, 'is_reserved' => 1, 'is_active' => 1, 'title' => $group['title'], 'description' => $group['description']); $result = civicrm_api('option_group', 'create', $params); $group_id = $result['values'][0]['id']; } else { $group_id = $result['id']; } if (is_array($group['values'])) { $groupValues = $group['values']; $weight = 1; //print_r(array_keys($groupValues)); foreach ($groupValues as $valueName => $value) { $result = civicrm_api('option_value', 'getsingle', array('version' => 3, 'name' => $valueName)); if (isset($result['is_error']) && $result['is_error']) { $params = array('version' => 3, 'sequential' => 1, 'option_group_id' => $group_id, 'name' => $valueName, 'label' => $value['label'], 'value' => $value['value'], 'weight' => $weight, 'is_default' => $value['is_default'], 'is_active' => 1); $result = civicrm_api('option_value', 'create', $params); } else { $weight = $result['weight'] + 1; } } } } }
function uf_match_get_example() { $params = array('contact_id' => 69, 'version' => 3); require_once 'api/api.php'; $result = civicrm_api('uf_match', 'get', $params); return $result; }
function activity_create_example() { $params = array('source_contact_id' => 17, 'activity_type_id' => 40, 'subject' => 'test activity type id', 'activity_date_time' => '2011-06-02 14:36:13', 'status_id' => 2, 'priority_id' => 1, 'duration' => 120, 'location' => 'Pensulvania', 'details' => 'a test activity', 'version' => 3, 'custom_2' => '17'); require_once 'api/api.php'; $result = civicrm_api('activity', 'create', $params); return $result; }
function contribution_get_example() { $params = array('contribution_id' => 1, 'version' => 3); require_once 'api/api.php'; $result = civicrm_api('contribution', 'get', $params); return $result; }
function membership_get_example() { $params = array('version' => 3, 'membership_type_id' => 9); require_once 'api/api.php'; $result = civicrm_api('membership', 'get', $params); return $result; }
function activity__example() { $params = array('source_contact_id' => 17, 'subject' => 'Make-it-Happen Meeting', 'activity_date_time' => '20110316', 'duration' => 120, 'location' => 'Pensulvania', 'details' => 'a test activity', 'status_id' => 1, 'activity_type_id' => 1, 'version' => 3, 'priority_id' => 1, 'target_contact_id' => 17, 'assignee_contact_id' => 17); require_once 'api/api.php'; $result = civicrm_api('activity', '', $params); return $result; }
/** * Get details for the target and assignee contact of an activity. * * This is "simple" in that it is only appropriate for activities in which the business-process * guarantees that there is only one target and one assignee. If the business-process permits * multiple targets or multiple assignees, then consider the more versatile (but less sugary) * function "crmAPI". * * Note: This will perform like a dog, but who cares -- at most, we deal with O(100) iterations * as part of a background task. * * @param $params , array with keys: * - activity_id: int, required * - target_var: string, optional; name of a variable which will store the first/only target contact; default "target" * - assignee_var: string, optional; name of a variable which will store the first/only assignee contact; default "assignee" * - return: string, optional; comma-separated list of fields to return for each contact * * @param $smarty * * @return empty */ function smarty_function_simpleActivityContacts($params, &$smarty) { if (empty($params['activity_id'])) { $smarty->trigger_error('assign: missing \'activity_id\' parameter'); } if (!isset($params['target_var'])) { $params['target_var'] = 'target'; } if (!isset($params['assignee_var'])) { $params['assignee_var'] = 'assignee'; } if (!isset($params['return'])) { $params['return'] = 'contact_id,contact_type,display_name,sort_name,first_name,last_name'; } require_once 'api/api.php'; require_once 'api/v3/utils.php'; $activity = civicrm_api('activity', 'getsingle', array('version' => 3, 'id' => $params['activity_id'], 'return.target_contact_id' => 1, 'return.assignee_contact_id' => 1)); $baseContactParams = array('version' => 3); foreach (explode(',', $params['return']) as $field) { $baseContactParams['return.' . $field] = 1; } foreach (array('target', 'assignee') as $role) { $contact = array(); if (!empty($activity[$role . '_contact_id'])) { $contact_id = array_shift($activity[$role . '_contact_id']); $contact = civicrm_api('contact', 'getsingle', $baseContactParams + array('contact_id' => $contact_id)); } $smarty->assign($params[$role . '_var'], $contact); } return ''; }
function group_contact__example() { $params = array('contact_id' => '1', 'group_id' => '1', 'version' => '3'); require_once 'api/api.php'; $result = civicrm_api('group_contact', '', $params); return $result; }
function mailing_group_subscribe_example() { $params = array('email' => '*****@*****.**', 'group_id' => 2, 'contact_id' => 1, 'version' => 3, 'hash' => 'b15de8b64e2cec34', 'time_stamp' => '20101212121212'); require_once 'api/api.php'; $result = civicrm_api('mailing_group', 'subscribe', $params); return $result; }
function domain_create_example() { $params = array('name' => 'A-team domain', 'description' => 'domain of chaos', 'version' => 3, 'domain_version' => '4.2', 'loc_block_id' => '2'); require_once 'api/api.php'; $result = civicrm_api('domain', 'create', $params); return $result; }
function custom_group_get_example() { $params = array('version' => 3); require_once 'api/api.php'; $result = civicrm_api('custom_group', 'get', $params); return $result; }
function relationship_type_delete_example() { $params = array('id' => 1, 'version' => 3); require_once 'api/api.php'; $result = civicrm_api('relationship_type', 'delete', $params); return $result; }
function phone_create_example() { $params = array('contact_id' => 1, 'location_type_id' => 6, 'phone' => '021 512 755', 'is_primary' => 1, 'version' => 3); require_once 'api/api.php'; $result = civicrm_api('phone', 'create', $params); return $result; }
function option_value_get_example() { $params = array('option_group_id' => 1, 'version' => 3); require_once 'api/api.php'; $result = civicrm_api('option_value', 'get', $params); return $result; }
function group_organization_create_example() { $params = array('organization_id' => 1, 'group_id' => 1, 'version' => 3); require_once 'api/api.php'; $result = civicrm_api('group_organization', 'create', $params); return $result; }
function price_set_get_example() { $params = array('version' => 3, 'name' => 'default_contribution_amount'); require_once 'api/api.php'; $result = civicrm_api('price_set', 'get', $params); return $result; }
function relationship_get_example() { $params = array('version' => 3, 'id' => 1); require_once 'api/api.php'; $result = civicrm_api('relationship', 'get', $params); return $result; }
/** */ function smarty_function_crmAPI($params, &$smarty) { if (!array_key_exists('action', $params)) { $params['action'] = "get"; } if (!array_key_exists('sequential', $params)) { $params['sequential'] = 1; } if (!array_key_exists('entity', $params)) { $smarty->trigger_error("assign: missing 'entity' parameter"); return "crmAPI: missing 'entity' parameter"; } CRM_Core_Error::setCallback(array('CRM_Utils_REST', 'fatal')); $action = $params['action']; $entity = $params['entity']; unset($params['entity']); unset($params['method']); unset($params['assign']); $params['version'] = 3; require_once 'api/api.php'; $result = civicrm_api($entity, $action, $params); CRM_Core_Error::setCallback(); if ($result === FALSE) { $smarty->trigger_error("Unkown error"); return; } if (!array_key_exists('var', $params)) { return json_encode($result); } if (!empty($params['json'])) { $smarty->assign($params["var"], json_encode($result)); } else { $smarty->assign($params["var"], $result); } }
function membership_type_create_example() { $params = array('name' => '40+ Membership', 'description' => 'people above 40 are given health instructions', 'member_of_contact_id' => 1, 'contribution_type_id' => 1, 'domain_id' => '1', 'minimum_fee' => '200', 'duration_unit' => 'month', 'duration_interval' => '10', 'period_type' => 'rolling', 'visibility' => 'public', 'version' => 3); require_once 'api/api.php'; $result = civicrm_api('membership_type', 'create', $params); return $result; }