static $_dbColumnValueCache = NULL;
const NOT_NULL = 1, IS_NULL = 2,
- DB_DAO_NOTNULL = 128,
- VALUE_SEPARATOR = "\ 1",
- BULK_INSERT_COUNT = 200,
- BULK_INSERT_HIGH_COUNT = 200,
- // special value for mail bulk inserts to avoid
- // potential duplication, assuming a smaller number reduces number of queries
- // by some factor, so some tradeoff. CRM-8678
- BULK_MAIL_INSERT_COUNT = 10,
- QUERY_FORMAT_WILDCARD = 1,
- QUERY_FORMAT_NO_QUOTES = 2;
-
- /*
+ DB_DAO_NOTNULL = 128,
+ VALUE_SEPARATOR = "\ 1",
+ BULK_INSERT_COUNT = 200,
+ BULK_INSERT_HIGH_COUNT = 200,
+ // special value for mail bulk inserts to avoid
+ // potential duplication, assuming a smaller number reduces number of queries
+ // by some factor, so some tradeoff. CRM-8678
+ BULK_MAIL_INSERT_COUNT = 10,
+ QUERY_FORMAT_WILDCARD = 1,
+ QUERY_FORMAT_NO_QUOTES = 2;
+
+ /**
* Define entities that shouldn't be created or deleted when creating/ deleting
- * test objects - this prevents world regions, countries etc from being added / deleted
+ * test objects - this prevents world regions, countries etc from being added / deleted
+ * @var array
*/
static $_testEntitiesToSkip = array();
/**
* Class constructor
*
* @return \CRM_Core_DAO
- @access public
+ * @access public
*/
public function __construct() {
$this->initialize();
/**
* Initialize the DAO object
*
- * @param string $dsn the database connection string
+ * @param string $dsn
+ * The database connection string.
*
* @return void
* @static
* @param string $fieldName
* @param $fieldDef
* @param array $params
- *
*/
protected function assignTestFK($fieldName, $fieldDef, $params) {
$required = CRM_Utils_Array::value('required', $fieldDef);
$FKClassName = CRM_Utils_Array::value('FKClassName', $fieldDef);
$dbName = $fieldDef['name'];
- $daoName = get_class($this);
+ $daoName = str_replace('_BAO_', '_DAO_', get_class($this));
// skip the FK if it is not required
// if it's contact id we should create even if not required
*
* @param string $fieldName
* @param array $fieldDef
- * @param int $counter the globally-unique ID of the test object
+ * @param int $counter
+ * The globally-unique ID of the test object.
*/
protected function assignTestValue($fieldName, &$fieldDef, $counter) {
$dbName = $fieldDef['name'];
* by resetting some of DAO's internal fields. Use this with caution
*
* @return void
- *
*/
public function reset() {
/**
* Execute a query by the current DAO, localizing it along the way (if needed).
*
- * @param string $query the SQL query for execution
- * @param bool $i18nRewrite whether to rewrite the query
+ * @param string $query
+ * The SQL query for execution.
+ * @param bool $i18nRewrite
+ * Whether to rewrite the query.
*
- * @return object the current DAO object after the query execution
+ * @return object
+ * the current DAO object after the query execution
*/
public function query($query, $i18nRewrite = TRUE) {
// rewrite queries that should use $dbLocale-based views for multi-language installs
/**
* Static function to set the factory instance for this class.
*
- * @param object $factory the factory application object
+ * @param object $factory
+ * The factory application object.
*
* @return void
* @static
*
* @static
*
- * @return array of CRM_Core_Reference_Interface
+ * @return array
+ * Array of CRM_Core_Reference_Interface
*/
public static function getReferenceColumns() {
return array();
*
* @return array
*/
- static function &fields() {
+ static function &fields() {
$result = NULL;
return $result;
}
/**
* Get/set an associative array of table columns
*
- * @param array key=>type array
- * @return array (associative)
+ * @param array key=>type array
+ * @return array
+ * (associative)
*/
public function table() {
$fields = &$this->fields();
return;
}
- $dao = new CRM_Core_DAO_Log();
- $dao->entity_table = $this->getTableName();
- $dao->entity_id = $this->id;
- $dao->modified_id = $cid;
+ $dao = new CRM_Core_DAO_Log();
+ $dao->entity_table = $this->getTableName();
+ $dao->entity_id = $this->id;
+ $dao->modified_id = $cid;
$dao->modified_date = date("YmdHis");
$dao->insert();
}
* Given an associative array of name/value pairs, extract all the values
* that belong to this object and initialize the object with said values
*
- * @param array $params (reference ) associative array of name/value pairs
+ * @param array $params
+ * (reference ) associative array of name/value pairs.
*
- * @return boolean did we copy all null values into the object
+ * @return boolean
+ * did we copy all null values into the object
*/
public function copyValues(&$params) {
$fields = &$this->fields();
* this is a destructive store, calling function is responsible
* for keeping sanity of id's.
*
- * @param object $object the object that we are extracting data from
- * @param array $values (reference ) associative array of name/value pairs
+ * @param object $object
+ * The object that we are extracting data from.
+ * @param array $values
+ * (reference ) associative array of name/value pairs.
*
* @return void
* @static
/**
* Create an attribute for this specific field. We only do this for strings and text
*
- * @param array $field the field under task
+ * @param array $field
+ * The field under task.
*
- * @return array|null the attributes for the object
+ * @return array|null
+ * the attributes for the object
* @static
*/
public static function makeAttribute($field) {
$cols = 80;
}
- $attributes = array();
+ $attributes = array();
$attributes['rows'] = $rows;
$attributes['cols'] = $cols;
return $attributes;
* Get the size and maxLength attributes for this text field
* (or for all text fields) in the DAO object.
*
- * @param string $class name of DAO class
- * @param string $fieldName field that i'm interested in or null if
+ * @param string $class
+ * Name of DAO class.
+ * @param string $fieldName
+ * Field that i'm interested in or null if.
* you want the attributes for all DAO text fields
*
- * @return array assoc array of name => attribute pairs
+ * @return array
+ * assoc array of name => attribute pairs
* @static
*/
public static function getAttribute($class, $fieldName = NULL) {
- $object = new $class( );
+ $object = new $class();
$fields = &$object->fields();
if ($fieldName != NULL) {
$field = CRM_Utils_Array::value($fieldName, $fields);
/**
* Check if there is a record with the same name in the db
*
- * @param string $value the value of the field we are checking
- * @param string $daoName the dao object name
- * @param string $daoID the id of the object being updated. u can change your name
+ * @param string $value
+ * The value of the field we are checking.
+ * @param string $daoName
+ * The dao object name.
+ * @param string $daoID
+ * The id of the object being updated. u can change your name.
* as long as there is no conflict
- * @param string $fieldName the name of the field in the DAO
+ * @param string $fieldName
+ * The name of the field in the DAO.
*
- * @return boolean true if object exists
+ * @return boolean
+ * true if object exists
* @static
*/
public static function objectExists($value, $daoName, $daoID, $fieldName = 'name') {
- $object = new $daoName( );
+ $object = new $daoName();
$object->$fieldName = $value;
$config = CRM_Core_Config::singleton();
*
* @param string $tableName
* @param string $columnName
- * @param bool $i18nRewrite whether to rewrite the query on multilingual setups
+ * @param bool $i18nRewrite
+ * Whether to rewrite the query on multilingual setups.
*
- * @return boolean true if exists, else false
+ * @return boolean
+ * true if exists, else false
* @static
*/
public static function checkFieldExists($tableName, $columnName, $i18nRewrite = TRUE) {
LIKE %1
";
$params = array(1 => array($columnName, 'String'));
- $dao = CRM_Core_DAO::executeQuery($query, $params, TRUE, NULL, FALSE, $i18nRewrite);
+ $dao = CRM_Core_DAO::executeQuery($query, $params, TRUE, NULL, FALSE, $i18nRewrite);
$result = $dao->fetch() ? TRUE : FALSE;
$dao->free();
return $result;
* @param string $tableName
* @param string $constraint
*
- * @return boolean true if constraint exists, false otherwise
+ * @return boolean
+ * true if constraint exists, false otherwise
* @static
*/
public static function checkConstraintExists($tableName, $constraint) {
*
* @throws Exception
*
- * @return boolean true if CONSTRAINT keyword exists, false otherwise
+ * @return boolean
+ * true if CONSTRAINT keyword exists, false otherwise
*/
public static function schemaRequiresRebuilding($tables = array("civicrm_contact")) {
$show = array();
- foreach($tables as $tableName){
+ foreach ($tables as $tableName) {
if (!array_key_exists($tableName, $show)) {
$query = "SHOW CREATE TABLE $tableName";
$dao = CRM_Core_DAO::executeQuery($query);
}
$result = preg_match("/\bCONSTRAINT\b\s/i", $show[$tableName]) ? TRUE : FALSE;
- if ($result == TRUE){
+ if ($result == TRUE) {
continue;
}
else {
* @param string $tableName
* @param string $columnName
*
- * @return boolean true if in format, false otherwise
+ * @return boolean
+ * true if in format, false otherwise
* @static
*/
public static function checkFKConstraintInFormat($tableName, $columnName) {
}
$constraint = "`FK_{$tableName}_{$columnName}`";
$pattern = "/\bCONSTRAINT\b\s+%s\s+\bFOREIGN\s+KEY\b\s/i";
- return preg_match(sprintf($pattern, $constraint),$show[$tableName]) ? TRUE : FALSE;
+ return preg_match(sprintf($pattern, $constraint), $show[$tableName]) ? TRUE : FALSE;
}
/**
* @param string $columnName
* @param string $columnValue
*
- * @return boolean true if the value is always $columnValue, false otherwise
+ * @return boolean
+ * true if the value is always $columnValue, false otherwise
* @static
*/
public static function checkFieldHasAlwaysValue($tableName, $columnName, $columnValue) {
- $query = "SELECT * FROM $tableName WHERE $columnName != '$columnValue'";
- $dao = CRM_Core_DAO::executeQuery($query);
+ $query = "SELECT * FROM $tableName WHERE $columnName != '$columnValue'";
+ $dao = CRM_Core_DAO::executeQuery($query);
$result = $dao->fetch() ? FALSE : TRUE;
$dao->free();
return $result;
* @param string $tableName
* @param string $columnName
*
- * @return boolean true if if the value is always NULL, false otherwise
+ * @return boolean
+ * true if if the value is always NULL, false otherwise
* @static
*/
public static function checkFieldIsAlwaysNull($tableName, $columnName) {
- $query = "SELECT * FROM $tableName WHERE $columnName IS NOT NULL";
- $dao = CRM_Core_DAO::executeQuery($query);
+ $query = "SELECT * FROM $tableName WHERE $columnName IS NOT NULL";
+ $dao = CRM_Core_DAO::executeQuery($query);
$result = $dao->fetch() ? FALSE : TRUE;
$dao->free();
return $result;
*
* @param string $tableName
*
- * @return boolean true if exists, else false
+ * @return boolean
+ * true if exists, else false
* @static
*/
public static function checkTableExists($tableName) {
/**
* Find a DAO object for the given ID and return it.
*
- * @param int $id Id of the DAO object being searched for.
+ * @param int $id
+ * Id of the DAO object being searched for.
*
- * @return object Object of the type of the class that called this function.
+ * @return object
+ * Object of the type of the class that called this function.
*/
public static function findById($id) {
$object = new static();
/**
* Given a DAO name, a column name and a column value, find the record and GET the value of another column in that record
*
- * @param string $daoName Name of the DAO (Example: CRM_Contact_DAO_Contact to retrieve value from a contact)
- * @param int $searchValue Value of the column you want to search by
- * @param string $returnColumn Name of the column you want to GET the value of
- * @param string $searchColumn Name of the column you want to search by
- * @param boolean $force Skip use of the cache
+ * @param string $daoName
+ * Name of the DAO (Example: CRM_Contact_DAO_Contact to retrieve value from a contact).
+ * @param int $searchValue
+ * Value of the column you want to search by.
+ * @param string $returnColumn
+ * Name of the column you want to GET the value of.
+ * @param string $searchColumn
+ * Name of the column you want to search by.
+ * @param bool $force
+ * Skip use of the cache.
*
- * @return string|null Value of $returnColumn in the retrieved record
+ * @return string|null
+ * Value of $returnColumn in the retrieved record
* @static
*/
public static function getFieldValue($daoName, $searchValue, $returnColumn = 'name', $searchColumn = 'id', $force = FALSE) {
}
if (!array_key_exists($cacheKey, self::$_dbColumnValueCache) || $force) {
- $object = new $daoName( );
+ $object = new $daoName();
$object->$searchColumn = $searchValue;
$object->selectAdd();
$object->selectAdd($returnColumn);
/**
* Given a DAO name, a column name and a column value, find the record and SET the value of another column in that record
*
- * @param string $daoName Name of the DAO (Example: CRM_Contact_DAO_Contact to retrieve value from a contact)
- * @param int $searchValue Value of the column you want to search by
- * @param string $setColumn Name of the column you want to SET the value of
- * @param string $setValue SET the setColumn to this value
- * @param string $searchColumn Name of the column you want to search by
- *
- * @return boolean true if we found and updated the object, else false
+ * @param string $daoName
+ * Name of the DAO (Example: CRM_Contact_DAO_Contact to retrieve value from a contact).
+ * @param int $searchValue
+ * Value of the column you want to search by.
+ * @param string $setColumn
+ * Name of the column you want to SET the value of.
+ * @param string $setValue
+ * SET the setColumn to this value.
+ * @param string $searchColumn
+ * Name of the column you want to search by.
+ *
+ * @return boolean
+ * true if we found and updated the object, else false
* @static
*/
public static function setFieldValue($daoName, $searchValue, $setColumn, $setValue, $searchColumn = 'id') {
- $object = new $daoName( );
+ $object = new $daoName();
$object->selectAdd();
$object->selectAdd("$searchColumn, $setColumn");
$object->$searchColumn = $searchValue;
* Get sort string
*
* @param array|object $sort either array or CRM_Utils_Sort
- * @param string $default - default sort value
+ * @param string $default
+ * Default sort value.
*
- * @return string - sortString
+ * @return string
+ * sortString
* @static
*/
public static function getSortString($sort, $default = NULL) {
/**
* Fetch object based on array of properties
*
- * @param string $daoName name of the dao object
- * @param array $params (reference ) an assoc array of name/value pairs
- * @param array $defaults (reference ) an assoc array to hold the flattened values
- * @param array $returnProperities an assoc array of fields that need to be returned, eg array( 'first_name', 'last_name')
- *
- * @return object an object of type referenced by daoName
+ * @param string $daoName
+ * Name of the dao object.
+ * @param array $params
+ * (reference ) an assoc array of name/value pairs.
+ * @param array $defaults
+ * (reference ) an assoc array to hold the flattened values.
+ * @param array $returnProperities
+ * An assoc array of fields that need to be returned, eg array( 'first_name', 'last_name').
+ *
+ * @return object
+ * an object of type referenced by daoName
* @static
*/
public static function commonRetrieve($daoName, &$params, &$defaults, $returnProperities = NULL) {
- $object = new $daoName( );
+ $object = new $daoName();
$object->copyValues($params);
// return only specific fields if returnproperties are sent
/**
* Delete the object records that are associated with this contact
*
- * @param string $daoName name of the dao object
- * @param int $contactId id of the contact to delete
+ * @param string $daoName
+ * Name of the dao object.
+ * @param int $contactId
+ * Id of the contact to delete.
*
* @return void
* @static
*/
public static function deleteEntityContact($daoName, $contactId) {
- $object = new $daoName( );
+ $object = new $daoName();
$object->entity_table = 'civicrm_contact';
$object->entity_id = $contactId;
/**
* Execute a query
*
- * @param string $query query to be executed
+ * @param string $query
+ * Query to be executed.
*
* @param array $params
* @param bool $abort
* @param bool $i18nRewrite
* @param bool $trapException
*
- * @return CRM_Core_DAO object that holds the results of the query
+ * @return CRM_Core_DAO
+ * object that holds the results of the query
* @static
*/
static function &executeQuery(
$query,
- $params = array(),
- $abort = TRUE,
- $daoName = NULL,
- $freeDAO = FALSE,
- $i18nRewrite = TRUE,
+ $params = array(),
+ $abort = TRUE,
+ $daoName = NULL,
+ $freeDAO = FALSE,
+ $i18nRewrite = TRUE,
$trapException = FALSE
) {
$queryStr = self::composeQuery($query, $params, $abort);
$dao = new CRM_Core_DAO();
}
else {
- $dao = new $daoName( );
+ $dao = new $daoName();
}
if ($trapException) {
/**
* Execute a query and get the single result
*
- * @param string $query query to be executed
+ * @param string $query
+ * Query to be executed.
* @param array $params
* @param bool $abort
* @param bool $i18nRewrite
- * @return string|null the result of the query if any
+ * @return string|null
+ * the result of the query if any
*
* @static
*/
- static function &singleValueQuery($query,
- $params = array(),
- $abort = TRUE,
+ static function &singleValueQuery(
+ $query,
+ $params = array(),
+ $abort = TRUE,
$i18nRewrite = TRUE
) {
$queryStr = self::composeQuery($query, $params, $abort);
}
/**
- * This function is to make a shallow copy of an object
+ * make a shallow copy of an object
* and all the fields in the object
*
- * @param string $daoName name of the dao
- * @param array $criteria array of all the fields & values
+ * @param string $daoName
+ * Name of the dao.
+ * @param array $criteria
+ * Array of all the fields & values.
* on which basis to copy
- * @param array $newData array of all the fields & values
+ * @param array $newData
+ * Array of all the fields & values.
* to be copied besides the other fields
- * @param string $fieldsFix array of fields that you want to prefix/suffix/replace
- * @param string $blockCopyOfDependencies fields that you want to block from
+ * @param string $fieldsFix
+ * Array of fields that you want to prefix/suffix/replace.
+ * @param string $blockCopyOfDependencies
+ * Fields that you want to block from.
* getting copied
*
*
- * @return (reference ) the newly created copy of the object
+ * @return CRM_Core_DAO
+ * the newly created copy of the object
*/
static function ©Generic($daoName, $criteria, $newData = NULL, $fieldsFix = NULL, $blockCopyOfDependencies = NULL) {
- $object = new $daoName( );
+ $object = new $daoName();
if (!$newData) {
$object->id = $criteria['id'];
}
break;
}
- $newObject = new $daoName( );
+ $newObject = new $daoName();
$fields = &$object->fields();
if (!is_array($fieldsFix)) {
- $fieldsToPrefix = array();
- $fieldsToSuffix = array();
+ $fieldsToPrefix = array();
+ $fieldsToSuffix = array();
$fieldsToReplace = array();
}
if (!empty($fieldsFix['prefix'])) {
}
public static function cascadeUpdate($daoName, $fromId, $toId, $newData = array()) {
- $object = new $daoName( );
+ $object = new $daoName();
$object->id = $fromId;
if ($object->find(TRUE)) {
- $newObject = new $daoName( );
+ $newObject = new $daoName();
$newObject->id = $toId;
if ($newObject->find(TRUE)) {
/**
* Fetch object based on array of properties
*
- * @param string $daoName name of the dao object
+ * @param string $daoName
+ * Name of the dao object.
* @param string $fieldIdName
* @param int $fieldId
* @param $details
- * @param array $returnProperities an assoc array of fields that need to be returned, eg array( 'first_name', 'last_name')
+ * @param array $returnProperities
+ * An assoc array of fields that need to be returned, eg array( 'first_name', 'last_name').
*
- * @return object an object of type referenced by daoName
+ * @return object
+ * an object of type referenced by daoName
* @static
*/
public static function commonRetrieveAll($daoName, $fieldIdName = 'id', $fieldId, &$details, $returnProperities = NULL) {
- require_once (str_replace('_', DIRECTORY_SEPARATOR, $daoName) . ".php");
- $object = new $daoName( );
+ require_once(str_replace('_', DIRECTORY_SEPARATOR, $daoName) . ".php");
+ $object = new $daoName();
$object->$fieldIdName = $fieldId;
// return only specific fields if returnproperties are sent
if (!defined('CIVICRM_DSN')) {
if (function_exists('mysql_real_escape_string')) {
return mysql_real_escape_string($string);
- } else {
+ }
+ else {
throw new CRM_Core_Exception("Cannot generate SQL. \"mysql_real_escape_string\" is missing. Have you installed PHP \"mysql\" extension?");
}
}
/**
* Escape a list of strings for use with "WHERE X IN (...)" queries.
*
- * @param $strings array
- * @param $default string the value to use if $strings has no elements
- * @return string eg "abc","def","ghi"
+ * @param array $strings
+ * @param string $default
+ * the value to use if $strings has no elements.
+ * @return string
+ * eg "abc","def","ghi"
*/
public static function escapeStrings($strings, $default = NULL) {
static $_dao = NULL;
// note that mysql does not escape these characters
if ($string && in_array($string,
array('%', '_', '%%', '_%')
- )) {
+ )
+ ) {
return '\\' . $string;
}
'CRM_Core_DAO_StateProvince',
'CRM_Core_DAO_Country',
'CRM_Core_DAO_Domain',
- 'CRM_Financial_DAO_FinancialType'//because valid ones exist & we use pick them due to pseudoconstant can't reliably create & delete these
+ 'CRM_Financial_DAO_FinancialType'
+ //because valid ones exist & we use pick them due to pseudoconstant can't reliably create & delete these
);
+ // Prefer to instantiate BAO's instead of DAO's (when possible)
+ // so that assignTestValue()/assignTestFK() can be overloaded.
+ $baoName = str_replace('_DAO_', '_BAO_', $daoName);
+ if (class_exists($baoName)) {
+ $daoName = $baoName;
+ }
+
for ($i = 0; $i < $numObjects; ++$i) {
++$counter;
/** @var CRM_Core_DAO $object */
$object = new $daoName();
- $fields = & $object->fields();
+ $fields = &$object->fields();
foreach ($fields as $fieldName => $fieldDef) {
$dbName = $fieldDef['name'];
$FKClassName = CRM_Utils_Array::value('FKClassName', $fieldDef);
if ($FKClassName != NULL) {
$object->assignTestFK($fieldName, $fieldDef, $params);
continue;
- } else {
+ }
+ else {
$object->assignTestValue($fieldName, $fieldDef, $counter);
}
}
&& ($required || $dbName == 'contact_id')
//I'm a bit stuck on this one - we might need to change the singleValueAlter so that the entities don't share a contact
// to make this test process pass - line below makes pass for now
- && $dbName != 'member_of_contact_id') {
+ && $dbName != 'member_of_contact_id'
+ ) {
$deletions[] = array($FKClassName, array('id' => $object->$dbName)); // x
}
}
foreach ($deletions as $deletion) {
CRM_Core_DAO::deleteTestObjects($deletion[0], $deletion[1]);
- }
+ }
}
/**
* Build a list of triggers via hook and add them to (err, reconcile them
* with) the database.
*
- * @param $tableName string the specific table requiring a rebuild; or NULL to rebuild all tables
+ * @param string $tableName
+ * the specific table requiring a rebuild; or NULL to rebuild all tables.
* @param bool $force
*
* @see CRM-9716
/**
* Wrapper function to drop triggers
*
- * @param $tableName string the specific table requiring a rebuild; or NULL to rebuild all tables
+ * @param string $tableName
+ * the specific table requiring a rebuild; or NULL to rebuild all tables.
*/
public static function dropTriggers($tableName = NULL) {
$info = array();
}
/**
- * @param $info array per hook_civicrm_triggerInfo
- * @param $onlyTableName string the specific table requiring a rebuild; or NULL to rebuild all tables
+ * @param array $info
+ * per hook_civicrm_triggerInfo.
+ * @param string $onlyTableName
+ * the specific table requiring a rebuild; or NULL to rebuild all tables.
*/
public static function createTriggers(&$info, $onlyTableName = NULL) {
// Validate info array, should probably raise errors?
}
foreach ($tables as $eventName => $events) {
foreach ($events as $whenName => $parts) {
- $varString = implode("\n", $parts['variables']);
- $sqlString = implode("\n", $parts['sql']);
- $validName = CRM_Core_DAO::shortenSQLName($tableName, 48, TRUE);
+ $varString = implode("\n", $parts['variables']);
+ $sqlString = implode("\n", $parts['sql']);
+ $validName = CRM_Core_DAO::shortenSQLName($tableName, 48, TRUE);
$triggerName = "{$validName}_{$whenName}_{$eventName}";
- $triggerSQL = "CREATE TRIGGER $triggerName $whenName $eventName ON $tableName FOR EACH ROW BEGIN $varString $sqlString END";
+ $triggerSQL = "CREATE TRIGGER $triggerName $whenName $eventName ON $tableName FOR EACH ROW BEGIN $varString $sqlString END";
CRM_Core_DAO::executeQuery("DROP TRIGGER IF EXISTS $triggerName");
CRM_Core_DAO::executeQuery(
/**
* Given a list of fields, create a list of references.
*
- * @param string $className BAO/DAO class name
+ * @param string $className
+ * BAO/DAO class name.
* @return array<CRM_Core_Reference_Interface>
*/
public static function createReferenceColumns($className) {
/**
* Find all records which refer to this entity.
*
- * @return array of objects referencing this
+ * @return array
+ * Array of objects referencing this
*/
public function findReferences() {
$links = self::getReferencesToTable(static::getTableName());
}
/**
- * @return array each item has keys:
- * - name: string
- * - type: string
- * - count: int
- * - table: string|null SQL table name
- * - key: string|null SQL column name
+ * @return array
+ * each item has keys:
+ * - name: string
+ * - type: string
+ * - count: int
+ * - table: string|null SQL table name
+ * - key: string|null SQL column name
*/
public function getReferenceCounts() {
$links = self::getReferencesToTable(static::getTableName());
* schema metadata in dynamicForeignKey which enumerates a restricted
* set of possible entity_table's.
*
- * @param string $tableName table referred to
+ * @param string $tableName
+ * Table referred to.
*
- * @return array structure of table and column, listing every table with a
- * foreign key reference to $tableName, and the column where the key appears.
+ * @return array
+ * structure of table and column, listing every table with a
+ * foreign key reference to $tableName, and the column where the key appears.
*/
public static function getReferencesToTable($tableName) {
$refsFound = array();
/**
* Lookup the value of a MySQL global configuration variable.
*
- * @param string $name e.g. "thread_stack"
+ * @param string $name
+ * E.g. "thread_stack".
* @param mixed $default
* @return mixed
*/
* The overriding function will generally call the lower-level CRM_Core_PseudoConstant::get
*
* @param string $fieldName
- * @param string $context : @see CRM_Core_DAO::buildOptionsContext
- * @param array $props : whatever is known about this bao object
+ * @param string $context
+ * @see CRM_Core_DAO::buildOptionsContext.
+ * @param array $props
+ * whatever is known about this bao object.
*
* @return Array|bool
*/
/**
* Provides documentation and validation for the buildOptions $context param
*
- * @param String $context
+ * @param string $context
*
* @throws Exception
* @return array
* $field => array('LIKE' => array('%me%))
* etc
*
- * @param string $fieldName name of fields
- * @param $filter array filter to be applied indexed by operator
- * @param $type String type of field (not actually used - nor in api @todo )
- * @param $alias String alternative field name ('as') @todo- not actually used
- * @param bool $returnSanitisedArray return a sanitised array instead of a clause
- * this is primarily so we can add filters @ the api level to the Query object based fields
+ * @param string $fieldName
+ * Name of fields.
+ * @param array $filter
+ * filter to be applied indexed by operator.
+ * @param string $type
+ * type of field (not actually used - nor in api @todo ).
+ * @param string $alias
+ * alternative field name ('as') @todo- not actually used.
+ * @param bool $returnSanitisedArray
+ * Return a sanitised array instead of a clause.
+ * this is primarily so we can add filters @ the api level to the Query object based fields
*
* @throws Exception
*
* preferable to not double-banger the return context next refactor of this - but keeping the attention
* in one place has some advantages as we try to extend this format
*
- * @return NULL|string|array a string is returned if $returnSanitisedArray is not set, otherwise and Array or NULL
+ * @return NULL|string|array
+ * a string is returned if $returnSanitisedArray is not set, otherwise and Array or NULL
* depending on whether it is supported as yet
*/
public static function createSQLFilter($fieldName, $filter, $type, $alias = NULL, $returnSanitisedArray = FALSE) {
default:
if (!$returnSanitisedArray) {
- return(sprintf('%s %s "%s"', $fieldName, $operator, CRM_Core_DAO::escapeString($criteria)));
+ return (sprintf('%s %s "%s"', $fieldName, $operator, CRM_Core_DAO::escapeString($criteria)));
}
else {
return NULL; // not yet implemented (tests required to implement)
* @return array
*/
public static function acceptedSQLOperators() {
- return array('=', '<=', '>=', '>', '<', 'LIKE', "<>", "!=", "NOT LIKE", 'IN', 'NOT IN', 'BETWEEN', 'NOT BETWEEN', 'IS NOT NULL', 'IS NULL');
+ return array(
+ '=',
+ '<=',
+ '>=',
+ '>',
+ '<',
+ 'LIKE',
+ "<>",
+ "!=",
+ "NOT LIKE",
+ 'IN',
+ 'NOT IN',
+ 'BETWEEN',
+ 'NOT BETWEEN',
+ 'IS NOT NULL',
+ 'IS NULL'
+ );
}
/**
* which can be longer than this length, this function helps with creating
* strings that meet various criteria.
*
- * @param string $string - the string to be shortened
- * @param int $length - the max length of the string
+ * @param string $string
+ * The string to be shortened.
+ * @param int $length
+ * The max length of the string.
*
* @param bool $makeRandom
*
/**
* @param array $params
*/
- public function setApiFilter(&$params) {}
+ public function setApiFilter(&$params) {
+ }
}