WIP Working on the level custom fields
authorSteve Sutton <ssutton@gmail.com>
Tue, 17 Apr 2018 10:49:16 +0000 (06:49 -0400)
committerSteve Sutton <ssutton@gmail.com>
Tue, 17 Apr 2018 10:49:16 +0000 (06:49 -0400)
I'm getting the custom field form elements now on add.
Not working is maybe saving the data and the edit level custom fields.

js/frontRegApp.js
js/views/front/regRequestRegistrant.js
js/views/front/registrantForm.js
views/front/registrations/registration.html

index eec6a21..b6d889e 100644 (file)
@@ -830,6 +830,7 @@ app.Views.Front.RegRequestRegistrant = Backbone.View.extend({
     resetCustomFields: function() {
         // Call the custom fields ajax
         app.setCustomFieldsForm(this.model.get('reg_event'), this.model.id, '.attendee-cf-' + this.model.id);
+        app.setCustomFieldsForLevelForm(this.model.get('reg_event'), this.model.get('class_id'),  this.model.id, '.attendee-cf-level-' + this.model.id);
         this.$('.reg-edit-form').hide();
     },
 
@@ -868,6 +869,7 @@ app.Views.Front.RegRequestRegistrant = Backbone.View.extend({
 
         // Call the custom fields ajax
         app.setCustomFieldsForm(this.model.get('reg_event'), this.model.id, '.attendee-cf-' + this.model.id);
+        app.setCustomFieldsForLevelForm(this.model.get('reg_event'), this.model.get('class_id'), this.model.id, '.attendee-cf-level-' + this.model.id);
         return this;
     },
 
@@ -1101,8 +1103,8 @@ app.Views.Front.RegistrantForm = Backbone.View.extend({
     // render the view
     render: function(){
         this.$el.html( this.template( this.model.toJSON() ) );
-        // console.log( this.model.get('reg_event') );
-        // app.setCustomFieldsForm(this.model.get('reg_event'), '', '.attendee-cf-new');
+        var regClass = this.model.get('reg_class');
+        app.setCustomFieldsForLevelForm( this.model.get('reg_event'), regClass.get('id'), this.model.id, '.attendee-cf-level-' + this.model.id);
         return this;
     },
 
index 3c14624..6e4e15b 100644 (file)
@@ -84,6 +84,7 @@ app.Views.Front.RegRequestRegistrant = Backbone.View.extend({
     resetCustomFields: function() {
         // Call the custom fields ajax
         app.setCustomFieldsForm(this.model.get('reg_event'), this.model.id, '.attendee-cf-' + this.model.id);
+        app.setCustomFieldsForLevelForm(this.model.get('reg_event'), this.model.get('class_id'),  this.model.id, '.attendee-cf-level-' + this.model.id);
         this.$('.reg-edit-form').hide();
     },
 
@@ -122,6 +123,7 @@ app.Views.Front.RegRequestRegistrant = Backbone.View.extend({
 
         // Call the custom fields ajax
         app.setCustomFieldsForm(this.model.get('reg_event'), this.model.id, '.attendee-cf-' + this.model.id);
+        app.setCustomFieldsForLevelForm(this.model.get('reg_event'), this.model.get('class_id'), this.model.id, '.attendee-cf-level-' + this.model.id);
         return this;
     },
 
index 0681f07..15af930 100644 (file)
@@ -26,8 +26,8 @@ app.Views.Front.RegistrantForm = Backbone.View.extend({
     // render the view
     render: function(){
         this.$el.html( this.template( this.model.toJSON() ) );
-        // console.log( this.model.get('reg_event') );
-        // app.setCustomFieldsForm(this.model.get('reg_event'), '', '.attendee-cf-new');
+        var regClass = this.model.get('reg_class');
+        app.setCustomFieldsForLevelForm( this.model.get('reg_event'), regClass.get('id'), this.model.id, '.attendee-cf-level-' + this.model.id);
         return this;
     },
 
index 3629622..db13409 100644 (file)
@@ -323,6 +323,9 @@ glm_reg_customfields_reg_event_{$regEventId}_level_{literal}<%- reg_class.id %>{
                         {literal}
                     </div>
                 </form>
+                <form class="attendee-cf-level-form-<%= id %>">
+                    <div class="attendee-cf-level-<%= id %>"></div>
+                </form>
                 {/literal}{/if}{literal}
                 {/literal}{if $regEvent.time_specific.value}
                     <input type="hidden" id="add_reg-select-time">
@@ -417,6 +420,7 @@ glm_reg_customfields_reg_event_{$regEventId}_level_{literal}<%- reg_class.id %>{
                         <h4>Additional Info Needed</h4>
                     {/literal}{/if}{literal}
                         <form class="attendee-cf-form-<%= id %>"><div class="attendee-cf-<%= id %>"></div></form>
+                        <form class="attendee-cf-level-form-<%= id %>"><div class="attendee-cf-level-<%= id %>"></div></form>
                     {/literal}{/if}{literal}
                 </div>
             {/literal}{if $regEvent.time_specific.value}
@@ -489,6 +493,38 @@ var app = {
             return false;
         }
     },
+    setCustomFieldsForLevelForm: function( reg_event_id, reg_level_id, record_id, target ){
+    console.log('record_id: ', record_id);
+        if ( customFieldActive ) {
+            var formData = {
+                'action': 'glm_members_admin_ajax',
+                'glm_action': 'customFieldsFront',
+                'option': 'displayForm',
+                'fid': 'glm_reg_customfields_reg_event_' + reg_event_id + '_level_' + reg_level_id,
+                'recordId': record_id,
+                'parentFormId': '',
+                'formData': false
+            };
+            jQuery.ajax({
+                cache: false,
+                type: 'POST',
+                url: ajaxUrl,
+                data: formData,
+                encode: true,
+                dataType: 'text'
+            })
+            .done( function( formHtml ) {
+                if ( target === 'return' ) {
+                    console.log( formHtml );
+                    return formHtml;
+                } else {
+                    jQuery(target).html( formHtml );
+                }
+            });
+        } else {
+            return false;
+        }
+    },
     setCustomFieldsForm: function( reg_event_id, record_id, target ){
         if ( customFieldActive ) {
             var formData = {