dev/core#561 - case_start_date field -> datepicker
authorColeman Watts <coleman@civicrm.org>
Mon, 17 Dec 2018 18:36:46 +0000 (13:36 -0500)
committerColeman Watts <coleman@civicrm.org>
Thu, 27 Dec 2018 20:50:51 +0000 (15:50 -0500)
CRM/Case/Form/Activity.php
CRM/Case/Form/Activity/ChangeCaseStartDate.php
CRM/Case/Form/Activity/OpenCase.php
templates/CRM/Case/Form/Activity/ChangeCaseStartDate.tpl
templates/CRM/Case/Form/Activity/OpenCase.tpl

index 5f84e5bf80eaf6cbb4b3feea7620f29d2370cac2..a1f6809ec3b5a2a15ae131ce5a84fd92be6e75db 100644 (file)
@@ -272,18 +272,14 @@ class CRM_Case_Form_Activity extends CRM_Activity_Form_Activity {
     $this->assign('urlPath', 'civicrm/case/activity');
 
     $encounterMediums = CRM_Case_PseudoConstant::encounterMedium();
-    if ($this->_activityTypeFile == 'OpenCase') {
-      if ($this->_action == CRM_Core_Action::UPDATE) {
-        $this->getElement('activity_date_time')->freeze();
-      }
+    if ($this->_activityTypeFile == 'OpenCase' && $this->_action == CRM_Core_Action::UPDATE) {
+      $this->getElement('activity_date_time')->freeze();
+
       // Fixme: what's the justification for this? It seems like it is just re-adding an option in case it is the default and disabled.
       // Is that really a big problem?
       $this->_encounterMedium = CRM_Core_DAO::getFieldValue('CRM_Activity_DAO_Activity', $this->_activityId, 'medium_id');
       if (!array_key_exists($this->_encounterMedium, $encounterMediums)) {
-        $encounterMediums[$this->_encounterMedium] = CRM_Core_OptionGroup::getLabel('encounter_medium',
-          $this->_encounterMedium,
-          FALSE
-        );
+        $encounterMediums[$this->_encounterMedium] = CRM_Core_OptionGroup::getLabel('encounter_medium', $this->_encounterMedium, FALSE);
       }
     }
 
@@ -405,8 +401,6 @@ class CRM_Case_Form_Activity extends CRM_Activity_Form_Activity {
       $params['parent_id'] = $parentId;
     }
 
-    // store the dates with proper format
-    $params['activity_date_time'] = CRM_Utils_Date::processDate($params['activity_date_time'], $params['activity_date_time_time']);
     $params['activity_type_id'] = $this->_activityTypeId;
 
     // format with contact (target contact) values
index 0494ca135d6b1adcded2977de1bffef87963314d..7066aa10b578f5c4d8bc81c51af9afb4c60542da 100644 (file)
@@ -67,7 +67,7 @@ class CRM_Case_Form_Activity_ChangeCaseStartDate {
     $openCaseParams = array('activity_type_id' => $openCaseActivityType);
     $openCaseInfo = CRM_Case_BAO_Case::getCaseActivityDates($caseId, $openCaseParams, TRUE);
     if (empty($openCaseInfo)) {
-      list($defaults['start_date'], $defaults['start_date_time']) = CRM_Utils_Date::setDateDefaults();
+      $defaults['start_date'] = date('Y-m-d H:i:s');
     }
     else {
       // We know there can only be one result
@@ -76,7 +76,7 @@ class CRM_Case_Form_Activity_ChangeCaseStartDate {
       // store activity id for updating it later
       $form->openCaseActivityId = $openCaseInfo['id'];
 
-      list($defaults['start_date'], $defaults['start_date_time']) = CRM_Utils_Date::setDateDefaults($openCaseInfo['activity_date'], 'activityDateTime');
+      $defaults['start_date'] = $openCaseInfo['activity_date'];
     }
     return $defaults;
   }
@@ -91,7 +91,7 @@ class CRM_Case_Form_Activity_ChangeCaseStartDate {
 
     $currentStartDate = CRM_Core_DAO::getFieldValue('CRM_Case_DAO_Case', $caseId, 'start_date');
     $form->assign('current_start_date', $currentStartDate);
-    $form->addDate('start_date', ts('New Start Date'), FALSE, array('formatType' => 'activityDateTime'));
+    $form->add('datepicker', 'start_date', ts('New Start Date'), [], TRUE);
   }
 
   /**
@@ -132,10 +132,6 @@ class CRM_Case_Form_Activity_ChangeCaseStartDate {
    * @param $activity
    */
   public static function endPostProcess(&$form, &$params, $activity) {
-    if (!empty($params['start_date'])) {
-      $params['start_date'] = CRM_Utils_Date::processDate($params['start_date'], $params['start_date_time']);
-    }
-
     $caseType = CRM_Utils_Array::first($form->_caseType);
     $caseId = CRM_Utils_Array::first($form->_caseId);
 
@@ -162,7 +158,7 @@ class CRM_Case_Form_Activity_ChangeCaseStartDate {
     $currentStartDate = CRM_Utils_Date::customFormat(CRM_Core_DAO::getFieldValue('CRM_Case_DAO_Case',
       $caseId, 'start_date'
     ), $config->dateformatFull);
-    $newStartDate = CRM_Utils_Date::customFormat(CRM_Utils_Date::mysqlToIso($params['start_date']), $config->dateformatFull);
+    $newStartDate = CRM_Utils_Date::customFormat($params['start_date'], $config->dateformatFull);
     $subject = 'Change Case Start Date from ' . $currentStartDate . ' to ' . $newStartDate;
     $activity->subject = $subject;
     $activity->save();
index 64e64deb0e60de776583f1c8246048a1630d2c7b..73f6f5a4c45acf251a93032bbcf35f110c8df677 100644 (file)
@@ -98,7 +98,7 @@ class CRM_Case_Form_Activity_OpenCase {
       return $defaults;
     }
 
-    list($defaults['start_date'], $defaults['start_date_time']) = CRM_Utils_Date::setDateDefaults(NULL, 'activityDateTime');
+    $defaults['start_date'] = date('Y-m-d H:i:s');
 
     // set default case status, case type, encounter medium, location type and phone type defaults are set in DB
     if ($form->_caseStatusId) {
@@ -183,7 +183,7 @@ class CRM_Case_Form_Activity_OpenCase {
       $form->assign('clientName', $displayName);
     }
 
-    $form->addDate('start_date', ts('Case Start Date'), TRUE, array('formatType' => 'activityDateTime'));
+    $form->add('datepicker', 'start_date', ts('Case Start Date'), [], TRUE);
 
     $form->addField('medium_id', array('entity' => 'activity', 'context' => 'create'), TRUE);
 
@@ -227,9 +227,6 @@ class CRM_Case_Form_Activity_OpenCase {
       $form->_currentlyViewedContactId = $params['client_id'][0];
     }
 
-    // for open case start date should be set to current date
-    $params['start_date'] = CRM_Utils_Date::processDate($params['start_date'], $params['start_date_time']);
-
     // rename activity_location param to the correct column name for activity DAO
     $params['location'] = CRM_Utils_Array::value('activity_location', $params);
 
index a70ba927452a7cdc712bc387f6b57616062a2eb6..8d8c464c6ff62faa4725af4d28455425a46540a1 100644 (file)
@@ -35,6 +35,6 @@
     </tr>
     <tr class="crm-case-changecasestartdate-form-block-start_date">
         <td class="label">{$form.start_date.label}</td>
-  <td>{include file="CRM/common/jcalendar.tpl" elementName=start_date}</td>
+        <td>{$form.start_date.html}</td>
     </tr>
    </div>
index 0117df24753ddc2da8e8e82103f7172158b1b251..569375946925d25b06a7835abd889cb65060d69a 100644 (file)
@@ -34,9 +34,7 @@
   </tr>
   <tr class="crm-case-opencase-form-block-start_date">
     <td class="label">{$form.start_date.label}</td>
-    <td>
-    {include file="CRM/common/jcalendar.tpl" elementName=start_date}
-    </td>
+    <td>{$form.start_date.html}</td>
   </tr>
 
 {* Add fields for attachments *}