From b83c988e706113fef6dc04be3f6de75bbd9cc896 Mon Sep 17 00:00:00 2001 From: Chuck Scott Date: Tue, 19 Dec 2017 08:43:40 -0500 Subject: [PATCH] Fixed problem with cart ID that have a missing reg_request record. More improvements in Custom Fields display and storage. --- classes/customFieldSupport.php | 8 ++++--- classes/data/dataCustomFieldsData.php | 27 ++++++++++++++++++++++- models/front/customFields/formDisplay.php | 10 +++++---- views/admin/customFields/index.html | 12 ++++++---- 4 files changed, 45 insertions(+), 12 deletions(-) diff --git a/classes/customFieldSupport.php b/classes/customFieldSupport.php index 86879cc..60007ee 100644 --- a/classes/customFieldSupport.php +++ b/classes/customFieldSupport.php @@ -266,9 +266,11 @@ class GlmCustomFieldSupport extends GlmDataFieldsCustomFields $sep = ','; } - // Get any data already stored for these fid / record ID combination - $CustomFieldsData = new GlmDataFieldsCustomFieldsData($this->wpdb, $this->config); - $formUpdate = $CustomFieldsData->getList("field_id in ($fieldIds) AND record_id = $recordId"); + // Get any data already stored for these field IDs / record ID combination + if ($fieldIds != '') { + $CustomFieldsData = new GlmDataFieldsCustomFieldsData($this->wpdb, $this->config); + $formUpdate = $CustomFieldsData->getList("field_id in ($fieldIds) AND record_id = $recordId"); + } $this->wpdb->query("START TRANSACTION"); diff --git a/classes/data/dataCustomFieldsData.php b/classes/data/dataCustomFieldsData.php index ed91f98..8bfa5ee 100644 --- a/classes/data/dataCustomFieldsData.php +++ b/classes/data/dataCustomFieldsData.php @@ -146,13 +146,38 @@ class GlmDataFieldsCustomFieldsData extends GlmDataAbstract 'use' => 'a' ), + // Text data for text, textarea, and picklist fields 'text_data' => array( 'field' => 'text_data', 'type' => 'text', 'required' => true, 'use' => 'a' + ), + + // Data for Checkbox and other boolean fields + 'checkbox_data' => array( + 'field' => 'checkbox_data', + 'type' => 'text', + 'required' => true, + 'use' => 'a' + ), + + // Integer data + 'integer_data' => array( + 'field' => 'integer_data', + 'type' => 'text', + 'required' => true, + 'use' => 'a' + ), + + // Float data (money) + 'float_data' => array( + 'field' => 'float_data', + 'type' => 'text', + 'required' => true, + 'use' => 'a' ) - + ); } diff --git a/models/front/customFields/formDisplay.php b/models/front/customFields/formDisplay.php index e0344ef..8c33ed7 100644 --- a/models/front/customFields/formDisplay.php +++ b/models/front/customFields/formDisplay.php @@ -102,7 +102,7 @@ class GlmMembersFront_customFields_formDisplay extends GlmDataFieldsCustomFields */ public function modelAction( $actionData = false ) { - +trigger_error('********* WORKING IN formDisplay.php **********',E_USER_NOTICE); $formId = false; $formFields = false; $haveForm = false; @@ -133,10 +133,11 @@ trigger_error('Form Display Submit Data '.print_r($actionData,1),E_USER_NOTICE); // If there's a record ID $recordId = ($actionData['request']['record-id'] - 0); if ($recordId > 0) { -trigger_error('recordId = '.$recordId,E_USER_NOTICE); +trigger_error("fid = '$formId' AND record_id = $recordId",E_USER_NOTICE); + // Try to get any stored data $CustomFieldData = new GlmDataFieldsCustomFieldsData($this->wpdb, $this->config); - $customFieldData = $CustomFieldData->getList("fid = '$formId' AND field_id = $recordId"); + $customFieldData = $CustomFieldData->getList("fid = '$formId' AND record_id = $recordId"); trigger_error('Field Data = '.print_r($customFieldData,1), E_USER_NOTICE); @@ -145,7 +146,8 @@ trigger_error('Field Data = '.print_r($customFieldData,1), E_USER_NOTICE); } } - +trigger_error('Field Data = '.print_r($formFields,1), E_USER_NOTICE); + // Compile template data $templateData = array( 'formId' => $formId, diff --git a/views/admin/customFields/index.html b/views/admin/customFields/index.html index 7f2bad8..1fcf1d9 100644 --- a/views/admin/customFields/index.html +++ b/views/admin/customFields/index.html @@ -6,7 +6,8 @@ Field Name: - (for reference - keep short) + +
(for reference - keep short) @@ -80,8 +81,11 @@
- - + + @@ -136,7 +140,7 @@ {if $t.field_type=='picklist'} - + -- 2.17.1
Option Name (for reference):Option Name: + +
(For reference - keep short) +
Displayed Text:
Prompt: {$t.field_prompt}
Option ValueOption Name Option Text Cost Default