$attributes = CRM_Core_DAO::getAttribute('CRM_Batch_DAO_Batch');
$attributes['total']['class'] = $attributes['item_count']['class'] = 'number';
$this->add('text', 'title', ts('Batch Name'), $attributes['title']);
-
+
+ $batchStatus = CRM_Core_PseudoConstant::get('CRM_Batch_DAO_Batch', 'status_id', array('labelColumn' => 'name'));
$this->add(
'select',
'status_id',
ts('Batch Status'),
array(
'' => ts('- any -' ),
- 1 => ts('Open'),
- 2 => ts('Closed'),
- 5 => ts('Exported'),
+ array_search('Open', $batchStatus) => ts('Open'),
+ array_search('Closed', $batchStatus) => ts('Closed'),
+ array_search('Exported', $batchStatus) => ts('Exported'),
),
false
);
SELECT @option_group_id_batch_status := max(id) from civicrm_option_group where name = 'batch_status';
SELECT @weight := MAX(value) FROM civicrm_option_value WHERE option_group_id = @option_group_id_batch_status;
-UPDATE civicrm_option_value
+UPDATE civicrm_option_value
SET value = (Select @weight := @weight +1),
weight = @weight
-where option_group_id = @option_group_id_batch_status AND name IN ('Data Entry', 'Reopened', 'Exported') AND value = 0 ORDER BY id;
+WHERE option_group_id = @option_group_id_batch_status AND name IN ('Data Entry', 'Reopened', 'Exported') AND value = 0 ORDER BY id;
SELECT @option_group_id_batch_modes := max(id) from civicrm_option_group where name = 'batch_mode';
SELECT @weights := MAX(value) FROM civicrm_option_value WHERE option_group_id = @option_group_id_batch_modes;
-UPDATE civicrm_option_value
+UPDATE civicrm_option_value
SET value = (Select @weights := @weights +1),
weight = @weights
-where option_group_id = @option_group_id_batch_modes AND name IN ('Manual Batch', 'Automatic Batch') AND value = 0;
\ No newline at end of file
+WHERE option_group_id = @option_group_id_batch_modes AND name IN ('Manual Batch', 'Automatic Batch') AND value = 0;
+
+SELECT @manual_mode_id := MAX(value) FROM civicrm_option_value WHERE option_group_id = @option_group_id_batch_modes AND name = 'Manual Batch';
+UPDATE civicrm_batch SET mode_id = @manual_mode_id WHERE (mode_id IS NULL OR mode_id = 0) AND type_id IS NULL;
+
+SELECT @data_entry_status_id := MAX(value) FROM civicrm_option_value WHERE option_group_id = @option_group_id_batch_status AND name = 'Data Entry';
+UPDATE civicrm_batch SET status_id = @data_entry_status_id WHERE status_id = 3 AND type_id IS NOT NULL;
+
+SELECT @exported_status_id := MAX(value) FROM civicrm_option_value WHERE option_group_id = @option_group_id_batch_status AND name = 'Exported';
+UPDATE civicrm_navigation SET url = CONCAT('civicrm/financial/financialbatches?reset=1&batchStatus=', @exported_status_id) WHERE name = 'Exported Batches';
+
+-- update status_id to Exported
+SELECT @export_activity_type := max(value) FROM civicrm_option_value cov
+INNER JOIN civicrm_option_group cog ON cog.id = cov.option_group_id
+WHERE cog.name = 'activity_type' AND cov.name = 'Export Accounting Batch';
+
+UPDATE civicrm_batch cb
+INNER JOIN civicrm_activity ca ON ca.source_record_id = cb.id
+SET cb.status_id = @exported_status_id
+WHERE cb.status_id = 0 AND ca.activity_type_id = @export_activity_type;
\ No newline at end of file