<?php
/*
- +--------------------------------------------------------------------+
- | CiviCRM version 5 |
- +--------------------------------------------------------------------+
- | Copyright CiviCRM LLC (c) 2004-2019 |
- +--------------------------------------------------------------------+
- | This file is a part of CiviCRM. |
- | |
- | CiviCRM is free software; you can copy, modify, and distribute it |
- | under the terms of the GNU Affero General Public License |
- | Version 3, 19 November 2007 and the CiviCRM Licensing Exception. |
- | |
- | CiviCRM is distributed in the hope that it will be useful, but |
- | WITHOUT ANY WARRANTY; without even the implied warranty of |
- | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
- | See the GNU Affero General Public License for more details. |
- | |
- | You should have received a copy of the GNU Affero General Public |
- | License and the CiviCRM Licensing Exception along |
- | with this program; if not, contact CiviCRM LLC |
- | at info[AT]civicrm[DOT]org. If you have questions about the |
- | GNU Affero General Public License or the licensing of CiviCRM, |
- | see the CiviCRM license FAQ at http://civicrm.org/licensing |
- +--------------------------------------------------------------------+
+ +--------------------------------------------------------------------+
+ | Copyright CiviCRM LLC. All rights reserved. |
+ | |
+ | This work is published under the GNU AGPLv3 license with some |
+ | permitted exceptions and without any warranty. For full license |
+ | and copyright information, see https://civicrm.org/licensing |
+ +--------------------------------------------------------------------+
*/
/**
* All DAO classes should inherit from this class.
*
* @package CRM
- * @copyright CiviCRM LLC (c) 2004-2019
+ * @copyright CiviCRM LLC https://civicrm.org/licensing
*/
if (!defined('DB_DSN_MODE')) {
Civi::$statics[__CLASS__]['init'] = 1;
$options = &PEAR::getStaticProperty('DB_DataObject', 'options');
$options['database'] = $dsn;
+ $options['quote_identifiers'] = TRUE;
if (defined('CIVICRM_DAO_DEBUG')) {
self::DebugLevel(CIVICRM_DAO_DEBUG);
}
* @param array $fieldDef
* @param int $counter
* The globally-unique ID of the test object.
+ *
+ * @throws \CRM_Core_Exception
*/
protected function assignTestValue($fieldName, &$fieldDef, $counter) {
$dbName = $fieldDef['name'];
break;
case CRM_Utils_Type::T_TIME:
- CRM_Core_Error::fatal("T_TIME shouldn't be used.");
- //$object->$dbName='000000';
- //break;
+ throw new CRM_Core_Exception('T_TIME shouldn\'t be used.');
+
case CRM_Utils_Type::T_CCNUM:
$this->$dbName = '4111 1111 1111 1111';
break;
*
* @return bool
* true if constraint exists, false otherwise
+ *
+ * @throws \CRM_Core_Exception
*/
public static function checkConstraintExists($tableName, $constraint) {
static $show = [];
$dao = CRM_Core_DAO::executeQuery($query, [], TRUE, NULL, FALSE, FALSE);
if (!$dao->fetch()) {
- CRM_Core_Error::fatal();
+ throw new CRM_Core_Exception('query failed');
}
$show[$tableName] = $dao->Create_Table;
*
* @param array $tables
*
- * @throws Exception
+ * @throws CRM_Core_Exception
*
* @return bool
* true if CONSTRAINT keyword exists, false otherwise
$dao = CRM_Core_DAO::executeQuery($query, [], TRUE, NULL, FALSE, FALSE);
if (!$dao->fetch()) {
- CRM_Core_Error::fatal();
+ throw new CRM_Core_Exception('Show create table failed.');
}
$show[$tableName] = $dao->Create_Table;
*
* @return bool
* true if in format, false otherwise
+ *
+ * @throws \CRM_Core_Exception
*/
public static function checkFKConstraintInFormat($tableName, $columnName) {
static $show = [];
$dao = CRM_Core_DAO::executeQuery($query);
if (!$dao->fetch()) {
- CRM_Core_Error::fatal();
+ throw new CRM_Core_Exception('query failed');
}
$show[$tableName] = $dao->Create_Table;
*
* @return array
*/
- public function fetchAll() {
+ public function fetchAll($k = FALSE, $v = FALSE, $method = FALSE) {
$result = [];
while ($this->fetch()) {
$result[] = $this->toArray();
*
* @return string|null
* Value of $returnColumn in the retrieved record
+ *
+ * @throws \CRM_Core_Exception
*/
public static function getFieldValue($daoName, $searchValue, $returnColumn = 'name', $searchColumn = 'id', $force = FALSE) {
if (
// adding this here since developers forget to check for an id
// or for the 'null' (which is a bad DAO kludge)
// and hence we get the first value in the db
- CRM_Core_Error::fatal();
+ throw new CRM_Core_Exception('getFieldValue failed');
}
self::$_dbColumnValueCache = self::$_dbColumnValueCache ?? [];
* @param bool $abort
*
* @return string
- * @throws Exception
+ * @throws CRM_Core_Exception
*/
public static function composeQuery($query, $params = [], $abort = TRUE) {
$tr = [];
* @see CRM_Utils_SQL_TempTable
*/
public static function createTempTableName($prefix = 'civicrm', $addRandomString = TRUE, $string = NULL) {
+ CRM_Core_Error::deprecatedFunctionWarning('Use CRM_Utils_SQL_TempTable interface to create temporary tables');
$tableName = $prefix . "_temp";
if ($addRandomString) {