*
* @param string $op
* The type of operation being performed.
- * @param string $groupID
+ * @param int $groupID
* The custom group ID.
- * @param object $entityID
+ * @param int $entityID
* The entityID of the row in the custom table.
* @param array $params
* The parameters that were sent into the calling function.
* @return null
* the return value is ignored
*/
- public static function custom($op, $groupID, $entityID, &$params) {
+ public static function custom(string $op, int $groupID, int $entityID, &$params) {
return self::singleton()
->invoke(['op', 'groupID', 'entityID', 'params'], $op, $groupID, $entityID, $params, self::$_nullObject, self::$_nullObject, 'civicrm_custom');
}
*
* @param string $op
* The type of operation being performed.
- * @param string $groupID
+ * @param int $groupID
* The custom group ID.
- * @param object $entityID
+ * @param int $entityID
* The entityID of the row in the custom table.
* @param array $params
* The parameters that were sent into the calling function.
* @return null
* the return value is ignored
*/
- public static function customPre($op, $groupID, $entityID, &$params) {
+ public static function customPre(string $op, int $groupID, int $entityID, array &$params) {
return self::singleton()
->invoke(['op', 'groupID', 'entityID', 'params'], $op, $groupID, $entityID, $params, self::$_nullObject, self::$_nullObject, 'civicrm_customPre');
}
);
}
+ /**
+ * Define the list of fields supported in APIv4 data-translation.
+ *
+ * @param array $fields
+ * List of data fields to translate, organized by table and column.
+ * Omitted/unlisted fields are not translated. Any listed field may be translated.
+ * Values should be TRUE.
+ * Ex: $fields['civicrm_event']['summary'] = TRUE
+ * @return mixed
+ */
+ public static function translateFields(&$fields) {
+ return self::singleton()->invoke(['fields'], $fields, self::$_nullObject,
+ self::$_nullObject, self::$_nullObject, self::$_nullObject,
+ self::$_nullObject,
+ 'civicrm_translateFields'
+ );
+ }
+
/**
* This hook allows changes to the spec of which tables to log.
*
* @return mixed
*/
public static function check(&$messages, $statusNames = [], $includeDisabled = FALSE) {
- return self::singleton()->invoke(['messages'],
+ return self::singleton()->invoke(['messages', 'statusNames', 'includeDisabled'],
$messages, $statusNames, $includeDisabled,
self::$_nullObject, self::$_nullObject, self::$_nullObject,
'civicrm_check'
);
}
+ /**
+ * Allows an extension to override the checksum validation.
+ * For example you may want to invalidate checksums that were sent out/forwarded by mistake. You could also
+ * intercept and redirect to a different page in this case - eg. to say "sorry, you tried to use a compromised
+ * checksum".
+ *
+ * @param int $contactID
+ * @param string $checksum
+ * @param bool $invalid
+ * Leave this at FALSE to allow the core code to perform validation. Set to TRUE to invalidate
+ */
+ public static function invalidateChecksum($contactID, $checksum, &$invalid) {
+ return self::singleton()->invoke(
+ ['contactID', 'checksum', 'invalid'],
+ $contactID, $checksum, $invalid, self::$_nullObject, self::$_nullObject,
+ self::$_nullObject, 'civicrm_invalidateChecksum'
+ );
+ }
+
}