Merge branch 'develop' into feature/groupFields feature/groupFields
authorSteve Sutton <steve@gaslightmedia.com>
Fri, 18 Jan 2019 20:12:51 +0000 (15:12 -0500)
committerSteve Sutton <steve@gaslightmedia.com>
Fri, 18 Jan 2019 20:12:51 +0000 (15:12 -0500)
1  2 
views/admin/entity/fields.html

  <div id="glm-members-custom-fields-{$uid}" class="glm-row glm-custom-field-group glm-admin-custom-fields">
 -    {foreach $customFields as $field}
 -        <div class="glm-small-12 glm-large-2 glm-columns glm-custom-field-label {if $field.required.value == 1} glm-required {/if}">{$field.field_name}</div>
 -        <div class="glm-small-12 glm-large-9 glm-columns glm-custom-field">
 -            <input type="hidden" name="custom-required" value="{$field.required.value}">
 +    {if $haveGroups}
  
 -           {$fail = ''}
 -           {if is_array($customFieldsData)}
 -            {if array_key_exists('fieldFail', $customFieldsData)}
 -                 {if array_key_exists($field.id,$customFieldsData['fieldFail'])}
 -                     {$fail = 'glm-form-bad-input'}
 -                  {/if}
 -            {/if}
 -           {/if}
 -           <div class="glm-input-wrapper {$fail}">
 -                {if $field.field_type.name == 'text'}
 +        {foreach $groups as $group}
 +        <h4 class="glm-custom-field-group-name"> {$group.group_name} </h4>
 +        <fieldset>
 +
 +            {foreach $group.custom_fields as $field}
++                {if $field.field_type.value == 'checkbox'}
++                    <div class="glm-custom-field-checkbox-wrapper">
  
-             {if $field.field_type.value == 'checkbox'}
-                 <div class="glm-custom-field-checkbox-wrapper">
-                     <div class="glm-custom-field-checkbox-field">
-             {else}
-                 <div class="glm-small-12 glm-large-2 glm-columns glm-custom-field-label {if $field.required.value == 1} glm-required {/if}">{$field.field_name}</div>
-                     <div class="glm-small-12 glm-large-9 glm-columns glm-custom-field">
-             {/if}
-                         <input type="hidden" name="custom-required" value="{$field.required.value}">
-                         {$fail = ''}
-                         {if is_array($customFieldsData)}
-                             {if array_key_exists('fieldFail', $customFieldsData)}
-                                 {if array_key_exists($field.id,$customFieldsData['fieldFail'])}
-                                     {$fail = 'glm-form-bad-input'}
-                                 {/if}
-                             {/if}
 -                    <input class="glm-input glm-form-text-input-medium" type="text" name="{$prefix}[{$field.id}]" value="{if isset($customFieldsData[$field.id])}{$customFieldsData[$field.id]|escape}{/if}" {if $field.required.value == 1} required{/if}>
 -                {elseif $field.field_type.name == 'textarea'}
 -                    {$content = $customFieldsData[$field.id]|escape:'quotes'}
 -                    {$editorid = 'custom-field-'|cat:$field.id}
 -                    {if $field.required.value == 1}
 -                        {$editorclass = "glm-required"}
 -                    {else}
 -                        {$editorclass = ''}
++                        <div class="glm-custom-field-checkbox-field">
++                {else}
++                    <div class="glm-small-12 glm-large-2 glm-columns glm-custom-field-label {if $field.required.value == 1} glm-required {/if}">{$field.field_name}</div>
++                        <div class="glm-small-12 glm-large-9 glm-columns glm-custom-field">
++                {/if}
++                <input type="hidden" name="custom-required" value="{$field.required.value}">
++                {$fail = ''}
++                {if is_array($customFieldsData)}
++                    {if array_key_exists('fieldFail', $customFieldsData)}
++                        {if array_key_exists($field.id,$customFieldsData['fieldFail'])}
++                            {$fail = 'glm-form-bad-input'}
 +                        {/if}
-                         <div class="glm-input-wrapper {$fail}">
+                     {/if}
 -                    {$textareaname = $prefix|cat:'['|cat:$field.id|cat:']'}
 -                    {$wpArgs = "{
 -                        \"media_buttons\":    false,
 -                        \"quicktags\":        false,
 -                        \"textarea_name\":    \"$textareaname\",
 -                        \"editor_height\":    200,
 -                        \"editor_class\":     \"$editorclass\"
 -                    }"}
 -                    {wp_editor(
 -                        $content,
 -                        $editorid,
 -                        json_decode($wpArgs, true)
 -                    )}
 -                {elseif $field.field_type.name == 'checkbox'}
 -                    <input type="hidden" name="{$prefix}[{$field.id}]" value="No" {if !isset($customFieldsData[$field.id]) || $customFieldsData[$field.id] == 'No'}checked{/if}>
 -                    <input type="checkbox" name="{$prefix}[{$field.id}]" value="Yes" {if isset($customFieldsData[$field.id]) && $customFieldsData[$field.id] == 'Yes'}checked{/if} {if $field.required.value == 1} required{/if}>
+                 {/if}
 -           </div>
 -        </div>
 -    {/foreach}
++                <div class="glm-input-wrapper {$fail}">
 +                    {if $field.field_type.value == 'text'}
-                             <input class="glm-input glm-form-text-input-medium" type="text" name="{$prefix}[{$field.id}]" value="{if isset($customFieldsData[$field.id])}{$customFieldsData[$field.id]|escape}{/if}" {if $field.required.value == 1} required{/if}>
++                        <input class="glm-input glm-form-text-input-medium" type="text" name="{$prefix}[{$field.id}]" value="{if isset($customFieldsData[$field.id])}{$customFieldsData[$field.id]|escape}{/if}" {if $field.required.value == 1} required{/if}>
 +                    {elseif $field.field_type.value == 'textarea'}
-                     {php}
-                             wp_editor('{if isset($customFieldsData[$field.id])}{$customFieldsData[$field.id]|escape:quotes}{/if}', 'custom-field-{$field.id}', array(
-                                 'media_buttons' => false,
-                                 'textarea_name' => '{$prefix}[{$field.id}]',
-                                 'editor_height' => 200,     // Height in px, overrides editor_rows
-                                 {if $field.required.value == 1}'editor_class' => 'glm-required' {/if}
-                             ));
-                         {/php}
++                        {$content = $customFieldsData[$field.id]|escape:'quotes'}
++                        {$editorid = 'custom-field-'|cat:$field.id}
++                        {if $field.required.value == 1}
++                            {$editorclass = "glm-required"}
++                        {else}
++                            {$editorclass = ''}
++                        {/if}
++                        {$textareaname = $prefix|cat:'['|cat:$field.id|cat:']'}
++                        {$wpArgs = "{
++                            \"media_buttons\":    false,
++                            \"quicktags\":        false,
++                            \"textarea_name\":    \"$textareaname\",
++                            \"editor_height\":    200,
++                            \"editor_class\":     \"$editorclass\"
++                        }"}
++                        {wp_editor(
++                            $content,
++                            $editorid,
++                            json_decode($wpArgs, true)
++                        )}
 +                    {elseif $field.field_type.value == 'checkbox'}
-                             <label class="glm-label{if $field.required.value == 1} glm-required {/if}" style="margin-left: 5px; padding-bottom: 10px;">
++                        <label class="glm-label{if $field.required.value == 1} glm-required {/if}" style="margin-left: 5px; padding-bottom: 10px;">
 +                            <input type="hidden" name="{$prefix}[{$field.id}]" value="No" {if !isset($customFieldsData[$field.id]) || $customFieldsData[$field.id] == 'No'}checked{/if}>
 +                            <input type="checkbox" name="{$prefix}[{$field.id}]" value="Yes" {if isset($customFieldsData[$field.id]) && $customFieldsData[$field.id] == 'Yes'}checked{/if} {if $field.required.value == 1} required{/if}>
 +                            {$field.field_name}
-                             </label>
++                        </label>
 +                    {elseif $field.field_type.value == 'picklist'}
 +                        {if $field.options}
 +                            <select name="{$prefix}[{$field.id}]">
 +                                <option value=""></option>
 +                                {foreach $field.options as $option}
 +                                    <option value="{$option.option_value|escape:'html'}"
 +                                        {if (isset($customFieldsData[$field.id]) && $customFieldsData[$field.id] == $option.option_value) || $option.option_default}
 +                                            selected
 +                                        {/if}>{$option.option_text}</option>
 +                                {/foreach}
 +                            </select>
 +                        {/if}
 +                    {/if}
-                         </div>
 +                    </div>
-             {if $field.field_type.value == 'checkbox'}
 +                </div>
-             {/if}
-         {/foreach}
++                {if $field.field_type.value == 'checkbox'}
++                    </div>
++                {/if}
++            {/foreach}
 +        </fieldset>
 +        {/foreach}
 +
 +    {else}
 +
 +        {foreach $customFields as $field}
 +            <div class="glm-small-12 glm-large-2 glm-columns glm-custom-field-label {if $field.required.value == 1} glm-required {/if}">{$field.field_name}</div>
 +            <div class="glm-small-12 glm-large-9 glm-columns glm-custom-field">
 +                <input type="hidden" name="custom-required" value="{$field.required.value}">
 +
-                {$fail = ''}
-                {if is_array($customFieldsData)}
++            {$fail = ''}
++            {if is_array($customFieldsData)}
 +                {if array_key_exists('fieldFail', $customFieldsData)}
-                      {if array_key_exists($field.id,$customFieldsData['fieldFail'])}
-                          {$fail = 'glm-form-bad-input'}
-                       {/if}
++                    {if array_key_exists($field.id,$customFieldsData['fieldFail'])}
++                        {$fail = 'glm-form-bad-input'}
++                    {/if}
 +                {/if}
-                {/if}
-                <div class="glm-input-wrapper {$fail}">
-                     {if $field.field_type.value == 'text'}
++            {/if}
++                <div class="glm-input-wrapper {$fail}">
++                    {if $field.field_type.name == 'text'}
 +                        <input class="glm-input glm-form-text-input-medium" type="text" name="{$prefix}[{$field.id}]" value="{if isset($customFieldsData[$field.id])}{$customFieldsData[$field.id]|escape}{/if}" {if $field.required.value == 1} required{/if}>
-                     {elseif $field.field_type.value == 'textarea'}
-                        {php}
-                             wp_editor('{if isset($customFieldsData[$field.id])}{$customFieldsData[$field.id]|escape:quotes}{/if}', 'custom-field-{$field.id}', array(
-                                 'media_buttons' => false,
-                                 // 'quicktags' => false,
-                                 // 'wpautop' => false,  NOTE: Dont's use. Problem when numerous spaces before text.
-                                 'textarea_name' => '{$prefix}[{$field.id}]',
-                                 'editor_height' => 200,     // Height in px, overrides editor_rows
-                                 // 'textarea_rows' => 8,
-                                 {if $field.required.value == 1}'editor_class' => 'glm-required' {/if}
-                             ));
-                         {/php}
-                     {elseif $field.field_type.value == 'checkbox'}
++                    {elseif $field.field_type.name == 'textarea'}
++                        {$content = $customFieldsData[$field.id]|escape:'quotes'}
++                        {$editorid = 'custom-field-'|cat:$field.id}
++                        {if $field.required.value == 1}
++                            {$editorclass = "glm-required"}
++                        {else}
++                            {$editorclass = ''}
++                        {/if}
++                        {$textareaname = $prefix|cat:'['|cat:$field.id|cat:']'}
++                        {$wpArgs = "{
++                            \"media_buttons\":    false,
++                            \"quicktags\":        false,
++                            \"textarea_name\":    \"$textareaname\",
++                            \"editor_height\":    200,
++                            \"editor_class\":     \"$editorclass\"
++                        }"}
++                        {wp_editor(
++                            $content,
++                            $editorid,
++                            json_decode($wpArgs, true)
++                        )}
++                    {elseif $field.field_type.name == 'checkbox'}
 +                        <input type="hidden" name="{$prefix}[{$field.id}]" value="No" {if !isset($customFieldsData[$field.id]) || $customFieldsData[$field.id] == 'No'}checked{/if}>
 +                        <input type="checkbox" name="{$prefix}[{$field.id}]" value="Yes" {if isset($customFieldsData[$field.id]) && $customFieldsData[$field.id] == 'Yes'}checked{/if} {if $field.required.value == 1} required{/if}>
 +                    {/if}
-                </div>
++
 +            </div>
 +        {/foreach}
 +    {/if}
  </div>