From: Nileema <nileema@nileema.(none)>
Date: Tue, 6 May 2014 14:38:20 +0000 (+0530)
Subject: --Fix for "New Case" page break
X-Git-Url: https://vcs.fsf.org/?a=commitdiff_plain;h=d14b35a4aefd93dcc1dc24fc594ec86aea3af078;p=civicrm-core.git

--Fix for "New Case" page break
---

diff --git a/CRM/Case/BAO/Case.php b/CRM/Case/BAO/Case.php
index a51ba1513e..dc33d0cafd 100644
--- a/CRM/Case/BAO/Case.php
+++ b/CRM/Case/BAO/Case.php
@@ -838,7 +838,8 @@ AND civicrm_case.status_id != $closedId";
         }
       }
       //CRM-4510.
-      $caseManagerContact = self::getCaseManagerContact($result->case_type_name, $result->case_id);
+      $caseTypes = CRM_Case_PseudoConstant::caseType('name');
+      $caseManagerContact = self::getCaseManagerContact($caseTypes[$result->case_type_id], $result->case_id);
       if (!empty($caseManagerContact)) {
         $casesList[$result->case_id]['casemanager_id'] = CRM_Utils_Array::value('casemanager_id', $caseManagerContact);
         $casesList[$result->case_id]['casemanager'] = CRM_Utils_Array::value('casemanager', $caseManagerContact);
diff --git a/CRM/Case/Form/Activity/ChangeCaseType.php b/CRM/Case/Form/Activity/ChangeCaseType.php
index 144826412a..9c7aaf4db4 100644
--- a/CRM/Case/Form/Activity/ChangeCaseType.php
+++ b/CRM/Case/Form/Activity/ChangeCaseType.php
@@ -75,7 +75,7 @@ class CRM_Case_Form_Activity_ChangeCaseType {
       'case_type_id'
     );
     if (!in_array($form->_caseTypeId, $form->_caseType)) {
-      $form->_caseType[$form->_caseTypeId] = CRM_Core_DAO::getFieldValue('CRM_Case_DAO_CaseType', $form->_caseTypeId, 'label');
+      $form->_caseType[$form->_caseTypeId] = CRM_Core_DAO::getFieldValue('CRM_Case_DAO_CaseType', $form->_caseTypeId, 'title');
     }
 
     $form->add('select', 'case_type_id', ts('New Case Type'),
diff --git a/CRM/Case/Form/Activity/OpenCase.php b/CRM/Case/Form/Activity/OpenCase.php
index c4bfef3dcf..101cf7c8ea 100644
--- a/CRM/Case/Form/Activity/OpenCase.php
+++ b/CRM/Case/Form/Activity/OpenCase.php
@@ -114,8 +114,8 @@ class CRM_Case_Form_Activity_OpenCase {
     // set default case type passed in url
     if ($form->_caseTypeId) {
       $caseType = $form->_caseTypeId;
+      $defaults['case_type_id'] = $caseType;
     }
-    $defaults['case_type_id'] = $caseType;
 
     $medium = CRM_Core_OptionGroup::values('encounter_medium', FALSE, FALSE, FALSE, 'AND is_default = 1');
     if (count($medium) == 1) {
@@ -146,10 +146,10 @@ class CRM_Case_Form_Activity_OpenCase {
       $form->addEntityRef('client_id', ts('Client'), array('create' => TRUE, 'multiple' => $form->_allowMultiClient), TRUE);
     }
 
-    $element = $form->addSelect(
-      'case_type_id',
-      array('onchange' => "CRM.buildCustomData('Case', this.value);"),
-      TRUE
+    $caseTypes = CRM_Case_PseudoConstant::caseType();
+    $element = $form->add('select',
+      'case_type_id', ts('Case Type'), $caseTypes,
+      TRUE, array('onchange' => "CRM.buildCustomData('Case', this.value);")
     );
 
     if ($form->_caseTypeId) {
diff --git a/CRM/Case/Form/Case.php b/CRM/Case/Form/Case.php
index e8c6e9d4eb..c81c39179d 100644
--- a/CRM/Case/Form/Case.php
+++ b/CRM/Case/Form/Case.php
@@ -384,7 +384,7 @@ class CRM_Case_Form_Case extends CRM_Core_Form {
 
     // 2. create/edit case
     if (!empty($params['case_type_id'])) {
-      $params['case_type'] = $params['case_type_id'];
+      $params['case_type'] = CRM_Core_DAO::getFieldValue('CRM_Case_DAO_CaseType', $params['case_type_id'], 'name', 'id');
       $params['subject'] = $params['activity_subject'];
     }
     $caseObj = CRM_Case_BAO_Case::create($params);