X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=CRM%2FCase%2FBAO%2FCase.php;h=27b3324a8fb3012f04b620744e9df99b6aa01569;hb=8e553ccf20c275bfce578bb344cd3fc2bee4d76e;hp=53be2ddb26501e684fdb8bee43ec690713ec579e;hpb=9ba1ce64b802496d917beb752c1bbba148ce4546;p=civicrm-core.git diff --git a/CRM/Case/BAO/Case.php b/CRM/Case/BAO/Case.php index 53be2ddb26..27b3324a8f 100644 --- a/CRM/Case/BAO/Case.php +++ b/CRM/Case/BAO/Case.php @@ -1,7 +1,7 @@ 'msg_tpl_workflow_case', 'valueName' => 'case_activity', @@ -3095,17 +3095,20 @@ WHERE id IN (' . implode(',', $copiedActivityIds) . ')'; * Used during case component enablement and during ugprade */ static function createCaseViews() { + $dao = new CRM_Core_DAO(); + $sql = self::createCaseViewsQuery('upcoming'); CRM_Core_Error::ignoreException(); - $dao = new CRM_Core_DAO(); $dao->query($sql); + CRM_Core_Error::setCallback(); if (PEAR::getStaticProperty('DB_DataObject', 'lastError')) { - CRM_Core_Error::setCallback(); return FALSE; } // Above error doesn't get caught? + CRM_Core_Error::ignoreException(); $doublecheck = $dao->singleValueQuery("SELECT count(id) FROM civicrm_view_case_activity_upcoming"); + CRM_Core_Error::setCallback(); if (is_null($doublecheck)) { return FALSE; } @@ -3113,13 +3116,15 @@ WHERE id IN (' . implode(',', $copiedActivityIds) . ')'; $sql = self::createCaseViewsQuery('recent'); CRM_Core_Error::ignoreException(); $dao->query($sql); + CRM_Core_Error::setCallback(); if (PEAR::getStaticProperty('DB_DataObject', 'lastError')) { - CRM_Core_Error::setCallback(); return FALSE; } // Above error doesn't get caught? + CRM_Core_Error::ignoreException(); $doublecheck = $dao->singleValueQuery("SELECT count(id) FROM civicrm_view_case_activity_recent"); + CRM_Core_Error::setCallback(); if (is_null($doublecheck)) { return FALSE; } @@ -3216,5 +3221,25 @@ WHERE id IN (' . implode(',', $copiedActivityIds) . ')'; return $clients; } + + /** + * Get options for a given case field. + * @see CRM_Core_DAO::buildOptions + * + * @param String $fieldName + * @param String $context: @see CRM_Core_DAO::buildOptionsContext + * @param Array $props: whatever is known about this dao object + */ + public static function buildOptions($fieldName, $context = NULL, $props = array()) { + $className = __CLASS__; + $params = array(); + switch ($fieldName) { + // This field is not part of this object but the api supports it + case 'medium_id': + $className = 'CRM_Activity_BAO_Activity'; + break; + } + return CRM_Core_PseudoConstant::get($className, $fieldName, $params, $context); + } }