Too many issues with using forms in a loaded reveal.
Just moving it right into billing side.
--- /dev/null
+<?php
+/**
+ * Gaslight Media Members Database
+ * GLM Members DB - Events Add-on - Management Events Tab
+ *
+ * PHP version 5.5
+ *
+ * @category glmWordPressPlugin
+ * @package glmMembersDatabase
+ * @author Chuck Scott <cscott@gaslightmedia.com>
+ * @license http://www.gaslightmedia.com Gaslightmedia
+ * @release billing.php,v 1.0 2014/10/31 19:31:47 cscott Exp $
+ * @link http://dev.gaslightmedia.com/
+ */
+
+// Load Management Events data abstract
+require_once GLM_MEMBERS_BILLING_PLUGIN_CLASS_PATH.'/data/dataSettings.php';
+
+/**
+ * GlmMembersAdmin_settings_billing
+ *
+ * PHP version 5
+ *
+ * @category Model
+ * @package GLM Member DB
+ * @author Chuck Scott <cscott@gaslightmedia.com>
+ * @license http://www.gaslightmedia.com Gaslightmedia
+ * @release SVN: $Id: packaging.php,v 1.0 2011/01/25 19:31:47 cscott
+ * Exp $
+ */
+class GlmMembersAdmin_billing_settings extends GlmDataBillingSettings
+{
+
+ /**
+ * WordPress Database Object
+ *
+ * @var $wpdb
+ * @access public
+ */
+ public $wpdb;
+ /**
+ * dbh Postgres database connection
+ *
+ * @var mixed
+ * @access public
+ */
+ public $dbh;
+ /**
+ * settings used for the schema and tablenames
+ *
+ * @var mixed
+ * @access public
+ */
+ public $settings = array();
+
+ public $ajaxSide = false;
+ /**
+ * Constructor
+ *
+ * This contructor performs the work for this model. This model returns
+ * an array containing the following.
+ *
+ * 'status'
+ *
+ * True if successfull and false if there was a fatal failure.
+ *
+ * 'view'
+ *
+ * A suggested view name that the contoller should use instead of the
+ * default view for this model or false to indicate that the default view
+ * should be used.
+ *
+ * 'data'
+ *
+ * Data that the model is returning for use in merging with the view to
+ * produce output.
+ *
+ * @wpdb object WordPress database object
+ *
+ * @return array Array containing status, suggested view, and any data
+ */
+ public function __construct ( $wpdb, $config )
+ {
+
+ // Save WordPress Database object
+ $this->wpdb = $wpdb;
+
+ // Save plugin configuration object
+ $this->config = $config;
+
+ // Run constructor for members data class
+ parent::__construct( $this->wpdb, $this->config );
+
+ }
+
+ /**
+ * modelAction
+ *
+ * @param bool $actionData
+ * @access public
+ * @return void
+ */
+ public function modelAction($actionData = false)
+ {
+
+ $option = false;
+ $settings_updated = false;
+ $settings_update_error = false;
+ $billing_settings = false;
+ $option2 = false;
+ $enable_members = $this->config['settings']['enable_members'];
+
+ if (isset($_REQUEST['option'])) {
+ $option = $_REQUEST['option'];
+ }
+
+ // Enqueue GLMA Foundation
+ wp_enqueue_style( 'Foundation6', GLM_MEMBERS_PLUGIN_URL . '/css/foundation-6.min.css' );
+ wp_enqueue_script( 'Foundation6', GLM_MEMBERS_PLUGIN_URL . '/js/foundation-6.min.js' );
+
+ switch ($option) {
+
+ case 'settings':
+
+ default:
+
+ // Make sure option is set if default
+ $option = 'settings';
+
+ // Determine if current user can edit configurations
+ if (!current_user_can('glm_members_members')) {
+ return array(
+ 'status' => false,
+ 'menuItemRedirect' => 'error',
+ 'modelRedirect' => 'index',
+ 'view' => 'admin/error/index.html',
+ 'data' => array(
+ 'reason' => 'User does not have rights to make configuration changes.'
+ )
+ );
+ }
+
+ // Check for submission option
+ $option2 = '';
+ if (isset($_REQUEST['option2'])) {
+ $option2 = $_REQUEST['option2'];
+ }
+
+ switch($option2) {
+
+ // Update the settings and redisplay the form
+ case 'submit':
+
+ $_REQUEST['member_types_requiring_billing'] = '';
+ // Combine the member types needing billing
+ if ( isset( $_REQUEST['member_types_requiring_billing_option'] ) ) {
+ $_REQUEST['member_types_requiring_billing'] = serialize( $_REQUEST['member_types_requiring_billing_option'] );
+ }
+ // Combine the member types that are free
+ $_REQUEST['member_types_free'] = '';
+ if ( isset( $_REQUEST['member_types_free_option'] ) ) {
+ $_REQUEST['member_types_free'] = serialize( $_REQUEST['member_types_free_option'] );
+ }
+
+ // Update the billing settings settings
+ $billing_settings = $this->updateEntry(1);
+ if ($billing_settings['status']) {
+ $settings_updated = true;
+ } else {
+ $settings_update_error = true;
+ }
+
+ break;
+
+ // Default is to get the current settings and display the form
+ default:
+
+ // Try to get the first (should be only) entry for general settings.
+ $billing_settings = $this->editEntry(1);
+ // echo '<pre>$billing_settings: ' . print_r( $billing_settings, true ) . '</pre>';
+
+ break;
+
+ }
+
+ break;
+
+ }
+
+ // Get list of member types
+ require_once GLM_MEMBERS_PLUGIN_CLASS_PATH.'/data/dataMemberTypes.php';
+ $memberTypeData = new GlmDataMemberTypes( $this->wpdb, $this->config );
+ $memberTypes = $memberTypeData->getList();
+
+ // Get the entry for member_types_requiring_billing
+ // Setup for the edit form
+ $member_types_requring_billing_selected = $billing_settings['fieldData']['member_types_requiring_billing'];
+ if ( $member_types_requring_billing_selected ) {
+ $member_types_requring_billing_selected = unserialize( $member_types_requring_billing_selected );
+ } else {
+ $member_types_requring_billing_selected = array();
+ }
+ $member_types_free_selected = $billing_settings['fieldData']['member_types_free'];
+ if ( $member_types_free_selected ) {
+ $member_types_free_selected = unserialize( $member_types_free_selected );
+ } else {
+ $member_types_free_selected = array();
+ }
+
+ $view = 'settings';
+
+ // Compile template data
+ $template_data = array(
+ 'action' => $_REQUEST['glm_action'],
+ 'enable_members' => $enable_members,
+ 'option' => $option,
+ 'settingsUpdated' => $settings_updated,
+ 'settingsUpdateError' => $settings_update_error,
+ 'billingSettings' => $billing_settings,
+ 'renewal_month_opts' => range( 1, 12, 1 ),
+ 'renewal_day_opts' => range( 1, 31, 1 ),
+ 'member_types' => $memberTypes,
+ 'selectedMTRB' => $member_types_requring_billing_selected,
+ 'selectedMTFREE' => $member_types_free_selected,
+ 'pluginAssetsUrl' => GLM_MEMBERS_BILLING_PLUGIN_URL . 'assets',
+ );
+
+ // Return status, suggested view, and data to controller
+ return array(
+ 'status' => true,
+ 'menuItemRedirect' => false,
+ 'modelRedirect' => false,
+ 'view' => 'admin/billing/' . $view . '.html',
+ 'data' => $template_data
+ );
+
+
+ }
+
+
+}
+
'reports' => GLM_MEMBERS_BILLING_PLUGIN_SLUG,
'logs' => GLM_MEMBERS_BILLING_PLUGIN_SLUG,
'contact' => GLM_MEMBERS_BILLING_PLUGIN_SLUG,
+ 'settings' => GLM_MEMBERS_BILLING_PLUGIN_SLUG,
),
'member' => array(
'billing' => GLM_MEMBERS_BILLING_PLUGIN_SLUG,
<a href="{$thisUrl}?page=glm-members-admin-menu-billing&glm_action=reports">Reports</a>
</li>
{/if}
- <li class="tabs-title"><a class="glmSettings">Settings</a></li>
+ <li class="tabs-title{if $thisAction==settings} is-active{/if}">
+ <a href="{$thisUrl}?page=glm-members-admin-menu-billing&glm_action=settings">Settings</a>
+ </li>
</ul>
<script>
--- /dev/null
+{* Billing Settings *}
+{include file='admin/billing/header.html'}
+
+<div class="callout large">
+
+ <h2 class="subheader">Settings</h2>
+
+ {if $settingsUpdated}
+ <div class="success callout" data-closable>
+ <button class="close-button" aria-label="Close alert" type="button" data-close>
+ <span aria-hidden="true">×</span>
+ </button>
+ <p><i class="fi-alert"></i> Settings Updated</p>
+ </div>
+ {/if}
+ {if $settingsUpdateError}
+ <div class="alert callout" data-closable>
+ <button class="close-button" aria-label="Close alert" type="button" data-close>
+ <span aria-hidden="true">×</span>
+ </button>
+ <p><i class="fi-alert"></i> Settings Update Error</p>
+ </div>
+ {/if}
+
+ <form data-abide novalidate id="billing-setting-form" action="{$thisUrl}?page={$thisPage}" method="post" enctype="multipart/form-data">
+ <input type="hidden" name="glm_action" value="settings">
+ <input type="hidden" name="option" value="settings">
+ <input type="hidden" name="option2" value="submit">
+
+ {include file='ui/f6/errorCallout.html'}
+
+ <div class="grid-x grid-margin-x">
+ <div class="cell small-12 medium-6">
+
+ <fieldset class="fieldset">
+ <legend>Invoice Information</legend>
+
+ {$data = $billingSettings}
+
+ {* Company Name *}
+ {$ui = [
+ 'value' => $data.fieldData.company_name,
+ 'field' => 'company_name',
+ 'label' => 'Company Name',
+ 'required' => $data.fieldRequired.company_name,
+ 'errorText' => 'Company Name is Required',
+ 'dataError' => $data.fieldFail.company_name
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Company Name 2 *}
+ {$ui = [
+ 'value' => $data.fieldData.company_name2,
+ 'field' => 'company_name2',
+ 'label' => 'Company Name 2',
+ 'required' => $data.fieldRequired.company_name2,
+ 'errorText' => 'Company Name 2 is Required',
+ 'dataError' => $data.fieldFail.company_name2
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Company Address 1 *}
+ {$ui = [
+ 'value' => $data.fieldData.company_addr1,
+ 'field' => 'company_addr1',
+ 'label' => 'Company Address 1',
+ 'required' => $data.fieldRequired.company_addr1,
+ 'errorText' => 'Company Address 1 is Required',
+ 'dataError' => $data.fieldFail.company_addr1
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Company Address 2 *}
+ {$ui = [
+ 'value' => $data.fieldData.company_addr2,
+ 'field' => 'company_addr2',
+ 'label' => 'Company Address 2',
+ 'required' => $data.fieldRequired.company_addr2,
+ 'errorText' => 'Company Address 2 is Required',
+ 'dataError' => $data.fieldFail.company_addr2
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Company City *}
+ {$ui = [
+ 'value' => $data.fieldData.company_city,
+ 'field' => 'company_city',
+ 'label' => 'Company City',
+ 'required' => $data.fieldRequired.company_city,
+ 'errorText' => 'Company City is Required',
+ 'dataError' => $data.fieldFail.company_city
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Company State *}
+ {$ui = [
+ 'value' => $data.fieldData.company_state.value,
+ 'field' => 'company_state',
+ 'label' => 'Company State',
+ 'list' => $data.fieldData.company_state.list,
+ 'l_label' => 'name',
+ 'l_value' => 'value',
+ 'l_blank' => true,
+ 'required' => $data.fieldRequired.company_state,
+ 'errorText' => 'Company State is Required',
+ 'dataError' => $data.fieldFail.company_state
+ ]}
+ {include file='ui/f6/select.html'}
+
+ {* Company Zip *}
+ {$ui = [
+ 'value' => $data.fieldData.company_zip,
+ 'field' => 'company_zip',
+ 'label' => 'Company Zip',
+ 'required' => $data.fieldRequired.company_zip,
+ 'errorText' => 'Company Zip is Required',
+ 'dataError' => $data.fieldFail.company_zip
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Company Phone *}
+ {$ui = [
+ 'value' => $data.fieldData.company_phone,
+ 'field' => 'company_phone',
+ 'label' => 'Company Phone',
+ 'required' => $data.fieldRequired.company_phone,
+ 'errorText' => 'Company Phone is Required',
+ 'dataError' => $data.fieldFail.company_phone
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Company Email *}
+ {$ui = [
+ 'value' => $data.fieldData.company_email,
+ 'field' => 'company_email',
+ 'label' => 'Company Email',
+ 'required' => $data.fieldRequired.company_email,
+ 'errorText' => 'Company Email is Required',
+ 'dataError' => $data.fieldFail.company_email
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Company URL *}
+ {$ui = [
+ 'value' => $data.fieldData.company_url,
+ 'field' => 'company_url',
+ 'label' => 'Company URL',
+ 'required' => $data.fieldRequired.company_url,
+ 'errorText' => 'Company URL is Required',
+ 'dataError' => $data.fieldFail.company_url
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Payment Terms *}
+ {$ui = [
+ 'value' => $data.fieldData.payment_terms,
+ 'field' => 'payment_terms',
+ 'label' => 'Payment Terms',
+ 'required' => $data.fieldRequired.payment_terms,
+ 'errorText' => 'Payment Terms is Required',
+ 'dataError' => $data.fieldFail.payment_terms
+ ]}
+ {include file='ui/f6/text.html'}
+
+
+
+ </fieldset>
+ </div>
+
+
+ <div class="cell small-12 medium-6">
+ <fieldset class="fieldset">
+ <legend>Invoice configurations</legend>
+
+ {* Company Logo *}
+ {$ui = [
+ 'value' => $data.fieldData.company_logo,
+ 'field' => 'company_logo',
+ 'label' => 'Company Logo',
+ 'required' => $data.fieldRequired.company_logo,
+ 'errorText' => 'Company Logo is Required',
+ 'dataError' => $data.fieldFail.company_logo
+ ]}
+ {include file='ui/f6/image.html'}
+
+ {* Company Logo Width *}
+ {$ui = [
+ 'value' => $data.fieldData.company_logo_width,
+ 'field' => 'company_logo_width',
+ 'label' => 'Company Logo Width',
+ 'pattern' => 'number',
+ 'required' => $data.fieldRequired.company_logo_width,
+ 'errorText' => 'Company Logo Width Must be numeric',
+ 'dataError' => $data.fieldFail.company_logo_width
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Receipt Text *}
+ {$ui = [
+ 'value' => $data.fieldData.receipt_text,
+ 'field' => 'receipt_text',
+ 'label' => 'Receipt Text',
+ 'height' => 100,
+ 'media' => false,
+ 'quicktags' => false,
+ 'required' => $data.fieldRequired.receipt_text,
+ 'errortext' => 'Receipt Text is Required',
+ 'dataError' => $data.fieldFail.receipt_text
+ ]}
+ {include file='ui/f6/editor.html'}
+
+ {* Member Types that require billing *}
+ {$ui = [
+ 'value' => $selectedMTRB,
+ 'field' => 'member_types_requiring_billing_option',
+ 'label' => 'Member Types that require billing',
+ 'list' => $member_types,
+ 'l_label' => 'name',
+ 'l_value' => 'id',
+ 'l_blank' => false,
+ 'l_size' => 5,
+ 'required' => false,
+ 'errorText' => 'Member Types that require billing is Required',
+ 'dataError' => $data.fieldFail.member_types_requiring_billing
+ ]}
+ {include file='ui/f6/multiselect.html'}
+
+ {* Member Types that are Free *}
+ {$ui = [
+ 'value' => $selectedMTFREE,
+ 'field' => 'member_types_free_option',
+ 'label' => 'Member Types that are Free',
+ 'list' => $member_types,
+ 'l_label' => 'name',
+ 'l_value' => 'id',
+ 'l_blank' => false,
+ 'l_size' => 5,
+ 'required' => false,
+ 'errorText' => 'Member Types that require billing is Required',
+ 'dataError' => $data.fieldFail.member_types_free
+ ]}
+ {include file='ui/f6/multiselect.html'}
+
+ {* Days Before Renewal Date *}
+ {$ui = [
+ 'value' => $data.fieldData.days_before_renewal,
+ 'field' => 'days_before_renewal',
+ 'label' => 'Days Before Renewal Date',
+ 'pattern' => 'number',
+ 'required' => $data.fieldRequired.days_before_renewal,
+ 'errorText' => 'Days Before Renewal Date is Required to be a number',
+ 'dataError' => $data.fieldFail.days_before_renewal
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Days After Renewal Date *}
+ {$ui = [
+ 'value' => $data.fieldData.days_after_expired,
+ 'field' => 'days_after_expired',
+ 'label' => 'Days After Renewal Date',
+ 'pattern' => 'number',
+ 'required' => $data.fieldRequired.days_after_expired,
+ 'errorText' => 'Days After Renewal Date is Required to be a number',
+ 'dataError' => $data.fieldFail.days_after_expired
+ ]}
+ {include file='ui/f6/text.html'}
+
+ {* Show Account # *}
+ {$ui = [
+ 'value' => $data.fieldData.invoice_show_account_number.value,
+ 'field' => 'invoice_show_account_number',
+ 'label' => 'Show Account #',
+ 'required' => $data.fieldRequired.invoice_show_account_number,
+ 'errortext' => 'Show Account # is Required',
+ 'dataError' => $data.fieldFail.invoice_show_account_number
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Show Invoice # *}
+ {$ui = [
+ 'value' => $data.fieldData.invoice_show_invoice_number.value,
+ 'field' => 'invoice_show_invoice_number',
+ 'label' => 'Show Invoice #',
+ 'required' => $data.fieldRequired.invoice_show_invoice_number,
+ 'errortext' => 'Show Invoice # is Required',
+ 'dataError' => $data.fieldFail.invoice_show_invoice_number
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Enable Account Number *}
+ {$ui = [
+ 'value' => $data.fieldData.account_number_enabled.value,
+ 'field' => 'account_number_enabled',
+ 'label' => 'Enable Account Number',
+ 'required' => $data.fieldRequired.account_number_enabled,
+ 'errortext' => 'Enable Account Number is Required',
+ 'dataError' => $data.fieldFail.account_number_enabled
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Require Account Number *}
+ {$ui = [
+ 'value' => $data.fieldData.account_number_required.value,
+ 'field' => 'account_number_required',
+ 'label' => 'Require Account Number',
+ 'required' => $data.fieldRequired.account_number_required,
+ 'errortext' => 'Require Account Number is Required',
+ 'dataError' => $data.fieldFail.account_number_required
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Allow Membership Choice When Renewing *}
+ {$ui = [
+ 'value' => $data.fieldData.allow_membership_choice.value,
+ 'field' => 'allow_membership_choice',
+ 'label' => 'Allow Membership Choice When Renewing',
+ 'required' => $data.fieldRequired.allow_membership_choice,
+ 'errortext' => 'Allow Membership Choice When Renewing is Required',
+ 'dataError' => $data.fieldFail.allow_membership_choice
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Allow Employees *}
+ {$ui = [
+ 'value' => $data.fieldData.allow_employees.value,
+ 'field' => 'allow_employees',
+ 'label' => 'Allow Employees',
+ 'required' => $data.fieldRequired.allow_employees,
+ 'errortext' => 'Allow Employees is Required',
+ 'dataError' => $data.fieldFail.allow_employees
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Use Member Types in Invoice Types *}
+ {$ui = [
+ 'value' => $data.fieldData.member_types_enabled.value,
+ 'field' => 'member_types_enabled',
+ 'label' => 'Use Member Types in Invoice Types',
+ 'required' => $data.fieldRequired.member_types_enabled,
+ 'errortext' => 'Use Member Types in Invoice Types is Required',
+ 'dataError' => $data.fieldFail.member_types_enabled
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Enable Quickbooks *}
+ {$ui = [
+ 'value' => $data.fieldData.quickbooks_enabled.value,
+ 'field' => 'quickbooks_enabled',
+ 'label' => 'Enable Quickbooks',
+ 'required' => $data.fieldRequired.quickbooks_enabled,
+ 'errortext' => 'Enable Quickbooks is Required',
+ 'dataError' => $data.fieldFail.quickbooks_enabled
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Enable Members Billing Tab *}
+ {$ui = [
+ 'value' => $data.fieldData.member_billing_enabled.value,
+ 'field' => 'member_billing_enabled',
+ 'label' => 'Enable Members Billing Tab',
+ 'required' => $data.fieldRequired.member_billing_enabled,
+ 'errortext' => 'Enable Members Billing Tab is Required',
+ 'dataError' => $data.fieldFail.member_billing_enabled
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Require Billing Fields *}
+ {$ui = [
+ 'value' => $data.fieldData.billing_fields_required.value,
+ 'field' => 'billing_fields_required',
+ 'label' => 'Require Billing Fields',
+ 'required' => $data.fieldRequired.billing_fields_required,
+ 'errortext' => 'Require Billing Fields is Required',
+ 'dataError' => $data.fieldFail.billing_fields_required
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Enable Invoice Methods *}
+ {$ui = [
+ 'value' => $data.fieldData.invoice_methods_enabled.value,
+ 'field' => 'invoice_methods_enabled',
+ 'label' => 'Enable Invoice Methods',
+ 'required' => $data.fieldRequired.invoice_methods_enabled,
+ 'errortext' => 'Enable Invoice Methods is Required',
+ 'dataError' => $data.fieldFail.invoice_methods_enabled
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Enable Billing Counties *}
+ {$ui = [
+ 'value' => $data.fieldData.billing_county_enabled.value,
+ 'field' => 'billing_county_enabled',
+ 'label' => 'Enable Billing Counties',
+ 'required' => $data.fieldRequired.billing_county_enabled,
+ 'errortext' => 'Enable Billing Counties is Required',
+ 'dataError' => $data.fieldFail.billing_county_enabled
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* Enable Billing Contact Name *}
+ {$ui = [
+ 'value' => $data.fieldData.billing_contact_name_enabled.value,
+ 'field' => 'billing_contact_name_enabled',
+ 'label' => 'Enable Billing Contact Name',
+ 'required' => $data.fieldRequired.billing_contact_name_enabled,
+ 'errortext' => 'Enable Billing Contact Name is Required',
+ 'dataError' => $data.fieldFail.billing_contact_name_enabled
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ {* All Members Renew same day each year *}
+ {$ui = [
+ 'value' => $data.fieldData.renewal_day_static.value,
+ 'field' => 'renewal_day_static',
+ 'label' => 'All Members Renew same day each year',
+ 'required' => $data.fieldRequired.renewal_day_static,
+ 'errortext' => 'All Members Renew same day each year is Required',
+ 'dataError' => $data.fieldFail.renewal_day_static
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+ <div class="grid-x grid-margin-x">
+ <div class="cell small-12">
+ <label>Renewal Day Each Year</label>
+ </div>
+ <div class="cell small-6">
+ {* Month *}
+ {$ui = [
+ 'value' => $data.fieldData.renewal_month,
+ 'field' => 'renewal_month',
+ 'label' => 'Month',
+ 'list' => $renewal_month_opts,
+ 'l_blank' => true,
+ 'required' => $data.fieldRequired.renewal_month,
+ 'errorText' => 'Month is Required',
+ 'dataError' => $data.fieldFail.renewal_month
+ ]}
+ {include file='ui/f6/select.html'}
+ </div>
+ <div class="cell small-6">
+ {* Day *}
+ {$ui = [
+ 'value' => $data.fieldData.renewal_day,
+ 'field' => 'renewal_day',
+ 'label' => 'Day',
+ 'list' => $renewal_day_opts,
+ 'l_blank' => true,
+ 'required' => $data.fieldRequired.renewal_day,
+ 'errorText' => 'Day is Required',
+ 'dataError' => $data.fieldFail.renewal_day
+ ]}
+ {include file='ui/f6/select.html'}
+ </div>
+ </div>
+
+ {* Create PDF Invoices *}
+ {$ui = [
+ 'value' => $data.fieldData.invoice_pdf_enabled.value,
+ 'field' => 'invoice_pdf_enabled',
+ 'label' => 'Create PDF Invoices',
+ 'required' => $data.fieldRequired.invoice_pdf_enabled,
+ 'errortext' => 'Create PDF Invoices is Required',
+ 'dataError' => $data.fieldFail.invoice_pdf_enabled
+ ]}
+ {include file='ui/f6/checkbox.html'}
+
+
+ </fieldset>
+ </div>
+
+ </div>
+
+ <input class="button button-primary" type="submit" style="margin-top: 0;" value="Save">
+
+ {include file='ui/f6/errorCallout.html'}
+
+ </form>
+
+ <div class="tabs-panel" id="panel2">
+ <p>Payment Types</p>
+ </div>
+ <div class="tabs-panel" id="panel3">
+ <p>Notifications</p>
+ </div>
+</div>
+
+<script>
+ jQuery(document).ready(function($){
+ $(document).foundation();
+
+ var settings = new Foundation.ResponsiveAccordionTabs( $('#glm-settings-tabs') );
+ });
+</script>
+{include file='admin/footer.html'}
{include file='admin/settings/subHeader.html'}
- <!-- Billing Settings -->
-
- <table id="glm-table-settings" class="glm-admin-table glm-settings-table{if $option!='settings'} glm-hidden{/if}">
- <tr>
- <td colspan="2">
- {if $settingsUpdated}<h2 class="glm-notice glm-flash-updated glm-right">Settings Updated</h2>{/if}
- {if $settingsUpdateError}<span class="glm-error glm-flash-updated glm-right">Settings Update Error</span>{/if}
- <h2>Billing Settings</h2>
- </td>
- </tr>
- <tr>
- <td>
- <form action="{$thisUrl}?page={$thisPage}" method="post" enctype="multipart/form-data">
- <input type="hidden" name="glm_action" value="billing">
- <input type="hidden" name="option" value="settings">
- <input type="hidden" name="option2" value="submit">
- <table class="glm-admin-table">
-
-
- <tr>
- <th colspan="2">Invoice Settings</th>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_logo} class="glm-required"}{/if}>Company Logo</th>
- <td {if $billingSettings.fieldFail.company_logo}class="glm-form-bad-input" data-tabid="glm-company-logo"{/if}>
- {if $billingSettings.fieldData.company_logo}
- <img src="{$glmPluginMediaUrl}/images/small/{$billingSettings.fieldData.company_logo}">
- <input type="checkbox" name="company_logo_delete" > Delete Image<br>
- {$billingSettings.fieldData.company_logo}<br>
- {/if}
- <b>New image:</b> <input type="file" name="company_logo_new">
- <div style="color: green;">Best logo size: No larger than (400px x 200px). Must be jpeg,gif or png.</div>
- {if $billingSettings.fieldFail.company_logo}<p>{$billingSettings.fieldFail.company_logo}{/if}
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_logo_width} class="glm-required"}{/if}>
- Width of PDF Logo<br>
- Must be a number
- </th>
- <td {if $billingSettings.fieldFail.company_logo_width}class="glm-form-bad-input" data-tabid="glm-company-name2"{/if}>
- <input
- type="text"
- name="company_logo_width"
- value="{$billingSettings.fieldData.company_logo_width}"
- class="glm-form-text-input-short"
- pattern="([0-9])*"
- />
- {if $billingSettings.fieldFail.company_logo_width}<p>{$billingSettings.fieldFail.company_logo_width}</p>{/if}<br>
- </td>
- </tr>
- <tr>
- <th colspan="2">Invoice Options</th>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_name} class="glm-required"}{/if}>Company Name</th>
- <td {if $billingSettings.fieldFail.company_name}class="glm-form-bad-input" data-tabid="glm-company-name"{/if}>
- <input type="text" name="company_name" value="{$billingSettings.fieldData.company_name}" class="glm-form-text-input-short">
- {if $billingSettings.fieldFail.company_name}<p>{$billingSettings.fieldFail.company_name}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_name2} class="glm-required"}{/if}>Company Name 2</th>
- <td {if $billingSettings.fieldFail.company_name2}class="glm-form-bad-input" data-tabid="glm-company-name2"{/if}>
- <input type="text" name="company_name2" value="{$billingSettings.fieldData.company_name2}" class="glm-form-text-input-short">
- {if $billingSettings.fieldFail.company_name2}<p>{$billingSettings.fieldFail.company_name2}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_addr1} class="glm-required"}{/if}>Company Address 1</th>
- <td {if $billingSettings.fieldFail.company_addr1}class="glm-form-bad-input" data-tabid="glm-company-addr1"{/if}>
- <input type="text" name="company_addr1" value="{$billingSettings.fieldData.company_addr1}" class="glm-form-text-input-short">
- {if $billingSettings.fieldFail.company_addr1}<p>{$billingSettings.fieldFail.company_addr1}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_addr2} class="glm-required"}{/if}>Company Address 2</th>
- <td {if $billingSettings.fieldFail.company_addr2}class="glm-form-bad-input" data-tabid="glm-company-addr2"{/if}>
- <input type="text" name="company_addr2" value="{$billingSettings.fieldData.company_addr2}" class="glm-form-text-input-short">
- {if $billingSettings.fieldFail.company_addr2}<p>{$billingSettings.fieldFail.company_addr2}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_city} class="glm-required"}{/if}>Company City</th>
- <td {if $billingSettings.fieldFail.company_city}class="glm-form-bad-input" data-tabid="glm-company-city"{/if}>
- <input type="text" name="company_city" value="{$billingSettings.fieldData.company_city}" class="glm-form-text-input-short">
- {if $billingSettings.fieldFail.company_city}<p>{$billingSettings.fieldFail.company_city}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_state} class="glm-required"}{/if}>Company State</th>
- <td {if $billingSettings.fieldFail.company_state}class="glm-form-bad-input" data-tabid="glm-company-state"{/if}>
- <select name="company_state">
- <option value=""></option>
- {foreach from=$billingSettings.fieldData.company_state.list item=v}
- <option value="{$v.value}"{if $v.default} selected="selected"{/if}>
- {$v.name}
- </option>
+{* Billing Settings *}
+
+<table id="glm-table-settings" class="glm-admin-table glm-settings-table{if $option!='settings'} glm-hidden{/if}">
+ <tr>
+ <td colspan="2">
+ {if $settingsUpdated}<h2 class="glm-notice glm-flash-updated glm-right">Settings Updated</h2>{/if}
+ {if $settingsUpdateError}<span class="glm-error glm-flash-updated glm-right">Settings Update Error</span>{/if}
+ <h2>Billing Settings</h2>
+ </td>
+ </tr>
+ <tr>
+ <td>
+ <form action="{$thisUrl}?page={$thisPage}" method="post" enctype="multipart/form-data">
+ <input type="hidden" name="glm_action" value="billing">
+ <input type="hidden" name="option" value="settings">
+ <input type="hidden" name="option2" value="submit">
+ <table class="glm-admin-table">
+
+
+ <tr>
+ <th colspan="2">Invoice Settings</th>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_logo} class="glm-required"}{/if}>Company Logo</th>
+ <td {if $billingSettings.fieldFail.company_logo}class="glm-form-bad-input" data-tabid="glm-company-logo"{/if}>
+ {if $billingSettings.fieldData.company_logo}
+ <img src="{$glmPluginMediaUrl}/images/small/{$billingSettings.fieldData.company_logo}">
+ <input type="checkbox" name="company_logo_delete" > Delete Image<br>
+ {$billingSettings.fieldData.company_logo}<br>
+ {/if}
+ <b>New image:</b> <input type="file" name="company_logo_new">
+ <div style="color: green;">Best logo size: No larger than (400px x 200px). Must be jpeg,gif or png.</div>
+ {if $billingSettings.fieldFail.company_logo}<p>{$billingSettings.fieldFail.company_logo}{/if}
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_logo_width} class="glm-required"}{/if}>
+ Width of PDF Logo<br>
+ Must be a number
+ </th>
+ <td {if $billingSettings.fieldFail.company_logo_width}class="glm-form-bad-input" data-tabid="glm-company-name2"{/if}>
+ <input
+ type="text"
+ name="company_logo_width"
+ value="{$billingSettings.fieldData.company_logo_width}"
+ class="glm-form-text-input-short"
+ pattern="([0-9])*"
+ />
+ {if $billingSettings.fieldFail.company_logo_width}<p>{$billingSettings.fieldFail.company_logo_width}</p>{/if}<br>
+ </td>
+ </tr>
+ <tr>
+ <th colspan="2">Invoice Options</th>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_name} class="glm-required"}{/if}>Company Name</th>
+ <td {if $billingSettings.fieldFail.company_name}class="glm-form-bad-input" data-tabid="glm-company-name"{/if}>
+ <input type="text" name="company_name" value="{$billingSettings.fieldData.company_name}" class="glm-form-text-input-short">
+ {if $billingSettings.fieldFail.company_name}<p>{$billingSettings.fieldFail.company_name}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_name2} class="glm-required"}{/if}>Company Name 2</th>
+ <td {if $billingSettings.fieldFail.company_name2}class="glm-form-bad-input" data-tabid="glm-company-name2"{/if}>
+ <input type="text" name="company_name2" value="{$billingSettings.fieldData.company_name2}" class="glm-form-text-input-short">
+ {if $billingSettings.fieldFail.company_name2}<p>{$billingSettings.fieldFail.company_name2}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_addr1} class="glm-required"}{/if}>Company Address 1</th>
+ <td {if $billingSettings.fieldFail.company_addr1}class="glm-form-bad-input" data-tabid="glm-company-addr1"{/if}>
+ <input type="text" name="company_addr1" value="{$billingSettings.fieldData.company_addr1}" class="glm-form-text-input-short">
+ {if $billingSettings.fieldFail.company_addr1}<p>{$billingSettings.fieldFail.company_addr1}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_addr2} class="glm-required"}{/if}>Company Address 2</th>
+ <td {if $billingSettings.fieldFail.company_addr2}class="glm-form-bad-input" data-tabid="glm-company-addr2"{/if}>
+ <input type="text" name="company_addr2" value="{$billingSettings.fieldData.company_addr2}" class="glm-form-text-input-short">
+ {if $billingSettings.fieldFail.company_addr2}<p>{$billingSettings.fieldFail.company_addr2}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_city} class="glm-required"}{/if}>Company City</th>
+ <td {if $billingSettings.fieldFail.company_city}class="glm-form-bad-input" data-tabid="glm-company-city"{/if}>
+ <input type="text" name="company_city" value="{$billingSettings.fieldData.company_city}" class="glm-form-text-input-short">
+ {if $billingSettings.fieldFail.company_city}<p>{$billingSettings.fieldFail.company_city}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_state} class="glm-required"}{/if}>Company State</th>
+ <td {if $billingSettings.fieldFail.company_state}class="glm-form-bad-input" data-tabid="glm-company-state"{/if}>
+ <select name="company_state">
+ <option value=""></option>
+ {foreach from=$billingSettings.fieldData.company_state.list item=v}
+ <option value="{$v.value}"{if $v.default} selected="selected"{/if}>
+ {$v.name}
+ </option>
+ {/foreach}
+ </select>
+ {if $billingSettings.fieldFail.company_state}<p>{$billingSettings.fieldFail.company_state}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_zip} class="glm-required"}{/if}>Company Zip</th>
+ <td {if $billingSettings.fieldFail.company_zip}class="glm-form-bad-input" data-tabid="glm-company-zip"{/if}>
+ <input type="text" name="company_zip" value="{$billingSettings.fieldData.company_zip}" class="glm-form-text-input-short">
+ {if $billingSettings.fieldFail.company_zip}<p>{$billingSettings.fieldFail.company_zip}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_phone} class="glm-required"}{/if}>Company Phone</th>
+ <td {if $billingSettings.fieldFail.company_phone}class="glm-form-bad-input" data-tabid="glm-company-phone"{/if}>
+ <input type="text" name="company_phone" value="{$billingSettings.fieldData.company_phone}" class="glm-form-text-input-short">
+ {if $billingSettings.fieldFail.company_phone}<p>{$billingSettings.fieldFail.company_phone}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_email} class="glm-required"}{/if}>Company Email</th>
+ <td {if $billingSettings.fieldFail.company_email}class="glm-form-bad-input" data-tabid="glm-company-email"{/if}>
+ <input type="text" name="company_email" value="{$billingSettings.fieldData.company_email}" class="glm-form-text-input-short">
+ {if $billingSettings.fieldFail.company_email}<p>{$billingSettings.fieldFail.company_email}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.company_url} class="glm-required"}{/if}>Company URL</th>
+ <td {if $billingSettings.fieldFail.company_url}class="glm-form-bad-input" data-tabid="glm-company-url"{/if}>
+ <input type="text" name="company_url" value="{$billingSettings.fieldData.company_url}" class="glm-form-text-input-medium">
+ {if $billingSettings.fieldFail.company_url}<p>{$billingSettings.fieldFail.company_url}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.payment_terms} class="glm-required"}{/if}>Payment Terms</th>
+ <td {if $billingSettings.fieldFail.payment_terms}class="glm-form-bad-input" data-tabid="glm-payment-terms"{/if}>
+ <input type="text" name="payment_terms" value="{$billingSettings.fieldData.payment_terms}" class="glm-form-text-input-medium">
+ {if $billingSettings.fieldFail.payment_terms}<p>{$billingSettings.fieldFail.payment_terms}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.receipt_text} class="glm-required"}{/if}>Receipt Text</th>
+ <td {if $billingSettings.fieldFail.receipt_text}class="glm-form-bad-input" data-tabid="glm-payment-terms"{/if}>
+ {wp_editor(
+ $billingSettings.fieldData.receipt_text|escape:quotes,
+ 'receipt_text',
+ json_decode('{
+ "media_buttons": false,
+ "quicktags": false,
+ "textarea_name": "receipt_text",
+ "editor_height": 200
+ }', true)
+ )}
+ {if $billingSettings.fieldFail.receipt_text}<p>{$billingSettings.fieldFail.receipt_text}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.invoice_show_account_number} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="invoice_show_account_number"{if $billingSettings.fieldData.invoice_show_account_number.value} checked="checked"{/if}>
+ Shown Account #
+ </td>
+ </tr>
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.invoice_show_invoice_number} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="invoice_show_invoice_number"{if $billingSettings.fieldData.invoice_show_invoice_number.value} checked="checked"{/if}>
+ Shown invoice #
+ </td>
+ </tr>
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.account_number_enabled} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="account_number_enabled"{if $billingSettings.fieldData.account_number_enabled.value} checked="checked"{/if}>
+ Enable Account Number
+ </td>
+ </tr>
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.account_number_required} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="account_number_required"{if $billingSettings.fieldData.account_number_required.value} checked="checked"{/if}>
+ Require Account Number
+ </td>
+ </tr>
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.account_number_unique} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="account_number_unique"{if $billingSettings.fieldData.account_number_unique.value} checked="checked"{/if}>
+ Require Unique Account Numbers
+ </td>
+ </tr>
+
+
+ <tr>
+ <th colspan="2">Billing Options</th>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.allow_membership_choice} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="allow_membership_choice"{if $billingSettings.fieldData.allow_membership_choice.value} checked="checked"{/if}>
+ Allow Membership Choice When renewing
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.allow_employees} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="allow_employees"{if $billingSettings.fieldData.allow_employees.value} checked="checked"{/if}>
+ Allow Employees
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.member_types_enabled} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="member_types_enabled"{if $billingSettings.fieldData.member_types_enabled.value} checked="checked"{/if}>
+ Use member types in Invoice Types
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.quickbooks_enabled} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="quickbooks_enabled"{if $billingSettings.fieldData.quickbooks_enabled.value} checked="checked"{/if}>
+ Enable Quickbooks
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.member_billing_enabled} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="member_billing_enabled"{if $billingSettings.fieldData.member_billing_enabled.value} checked="checked"{/if}>
+ Enable Members billing tab (for members)
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.billing_fields_required} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="billing_fields_required"{if $billingSettings.fieldData.billing_fields_required.value} checked="checked"{/if}>
+ Require Billing Fields
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.invoice_methods_enabled} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="invoice_methods_enabled"{if $billingSettings.fieldData.invoice_methods_enabled.value} checked="checked"{/if}>
+ Enable Invoice Methods
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.billing_county_enabled} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="billing_county_enabled"{if $billingSettings.fieldData.billing_county_enabled.value} checked="checked"{/if}>
+ Enable Billing Counties
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.billing_contact_name_enabled} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="billing_contact_name_enabled"{if $billingSettings.fieldData.billing_contact_name_enabled.value} checked="checked"{/if}>
+ Enable Billing Contact Name (Don't use for Square Payments)
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.renewal_day_static} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="renewal_day_static"{if $billingSettings.fieldData.renewal_day_static.value} checked="checked"{/if}>
+ All Members renewal same day each year
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.invoice_pdf_enabled} class="glm-required"}{/if}>
+ </th>
+ <td>
+ <input type="checkbox" name="invoice_pdf_enabled"{if $billingSettings.fieldData.invoice_pdf_enabled.value} checked="checked"{/if}>
+ Create PDF Invoices
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;">
+ Renewal Date Each Year
+ </th>
+ <td>
+ <div style="width: 60px; float: left;">
+ Month
+ <select name="renewal_month">
+ {foreach $renewal_month_opts as $opt}
+ <option value="{$opt}"{if $opt == $billingSettings.fieldData.renewal_month} selected{/if}>{if $opt > 0}{$opt}{else}{/if}</option>
{/foreach}
</select>
- {if $billingSettings.fieldFail.company_state}<p>{$billingSettings.fieldFail.company_state}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_zip} class="glm-required"}{/if}>Company Zip</th>
- <td {if $billingSettings.fieldFail.company_zip}class="glm-form-bad-input" data-tabid="glm-company-zip"{/if}>
- <input type="text" name="company_zip" value="{$billingSettings.fieldData.company_zip}" class="glm-form-text-input-short">
- {if $billingSettings.fieldFail.company_zip}<p>{$billingSettings.fieldFail.company_zip}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_phone} class="glm-required"}{/if}>Company Phone</th>
- <td {if $billingSettings.fieldFail.company_phone}class="glm-form-bad-input" data-tabid="glm-company-phone"{/if}>
- <input type="text" name="company_phone" value="{$billingSettings.fieldData.company_phone}" class="glm-form-text-input-short">
- {if $billingSettings.fieldFail.company_phone}<p>{$billingSettings.fieldFail.company_phone}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_email} class="glm-required"}{/if}>Company Email</th>
- <td {if $billingSettings.fieldFail.company_email}class="glm-form-bad-input" data-tabid="glm-company-email"{/if}>
- <input type="text" name="company_email" value="{$billingSettings.fieldData.company_email}" class="glm-form-text-input-short">
- {if $billingSettings.fieldFail.company_email}<p>{$billingSettings.fieldFail.company_email}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.company_url} class="glm-required"}{/if}>Company URL</th>
- <td {if $billingSettings.fieldFail.company_url}class="glm-form-bad-input" data-tabid="glm-company-url"{/if}>
- <input type="text" name="company_url" value="{$billingSettings.fieldData.company_url}" class="glm-form-text-input-medium">
- {if $billingSettings.fieldFail.company_url}<p>{$billingSettings.fieldFail.company_url}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.payment_terms} class="glm-required"}{/if}>Payment Terms</th>
- <td {if $billingSettings.fieldFail.payment_terms}class="glm-form-bad-input" data-tabid="glm-payment-terms"{/if}>
- <input type="text" name="payment_terms" value="{$billingSettings.fieldData.payment_terms}" class="glm-form-text-input-medium">
- {if $billingSettings.fieldFail.payment_terms}<p>{$billingSettings.fieldFail.payment_terms}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.receipt_text} class="glm-required"}{/if}>Receipt Text</th>
- <td {if $billingSettings.fieldFail.receipt_text}class="glm-form-bad-input" data-tabid="glm-payment-terms"{/if}>
- {wp_editor(
- $billingSettings.fieldData.receipt_text|escape:quotes,
- 'receipt_text',
- json_decode('{
- "media_buttons": false,
- "quicktags": false,
- "textarea_name": "receipt_text",
- "editor_height": 200
- }', true)
- )}
- {if $billingSettings.fieldFail.receipt_text}<p>{$billingSettings.fieldFail.receipt_text}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.invoice_show_account_number} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="invoice_show_account_number"{if $billingSettings.fieldData.invoice_show_account_number.value} checked="checked"{/if}>
- Shown Account #
- </td>
- </tr>
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.invoice_show_invoice_number} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="invoice_show_invoice_number"{if $billingSettings.fieldData.invoice_show_invoice_number.value} checked="checked"{/if}>
- Shown invoice #
- </td>
- </tr>
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.account_number_enabled} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="account_number_enabled"{if $billingSettings.fieldData.account_number_enabled.value} checked="checked"{/if}>
- Enable Account Number
- </td>
- </tr>
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.account_number_required} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="account_number_required"{if $billingSettings.fieldData.account_number_required.value} checked="checked"{/if}>
- Require Account Number
- </td>
- </tr>
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.account_number_unique} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="account_number_unique"{if $billingSettings.fieldData.account_number_unique.value} checked="checked"{/if}>
- Require Unique Account Numbers
- </td>
- </tr>
-
-
- <tr>
- <th colspan="2">Billing Options</th>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.allow_membership_choice} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="allow_membership_choice"{if $billingSettings.fieldData.allow_membership_choice.value} checked="checked"{/if}>
- Allow Membership Choice When renewing
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.allow_employees} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="allow_employees"{if $billingSettings.fieldData.allow_employees.value} checked="checked"{/if}>
- Allow Employees
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.member_types_enabled} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="member_types_enabled"{if $billingSettings.fieldData.member_types_enabled.value} checked="checked"{/if}>
- Use member types in Invoice Types
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.quickbooks_enabled} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="quickbooks_enabled"{if $billingSettings.fieldData.quickbooks_enabled.value} checked="checked"{/if}>
- Enable Quickbooks
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.member_billing_enabled} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="member_billing_enabled"{if $billingSettings.fieldData.member_billing_enabled.value} checked="checked"{/if}>
- Enable Members billing tab (for members)
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.billing_fields_required} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="billing_fields_required"{if $billingSettings.fieldData.billing_fields_required.value} checked="checked"{/if}>
- Require Billing Fields
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.invoice_methods_enabled} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="invoice_methods_enabled"{if $billingSettings.fieldData.invoice_methods_enabled.value} checked="checked"{/if}>
- Enable Invoice Methods
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.billing_county_enabled} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="billing_county_enabled"{if $billingSettings.fieldData.billing_county_enabled.value} checked="checked"{/if}>
- Enable Billing Counties
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.billing_contact_name_enabled} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="billing_contact_name_enabled"{if $billingSettings.fieldData.billing_contact_name_enabled.value} checked="checked"{/if}>
- Enable Billing Contact Name
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.renewal_day_static} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="renewal_day_static"{if $billingSettings.fieldData.renewal_day_static.value} checked="checked"{/if}>
- All Members renewal same day each year
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.invoice_pdf_enabled} class="glm-required"}{/if}>
- </th>
- <td>
- <input type="checkbox" name="invoice_pdf_enabled"{if $billingSettings.fieldData.invoice_pdf_enabled.value} checked="checked"{/if}>
- Create PDF Invoices
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;">
- Renewal Date Each Year
- </th>
- <td>
- <div style="width: 60px; float: left;">
- Month
- <select name="renewal_month">
- {foreach $renewal_month_opts as $opt}
- <option value="{$opt}"{if $opt == $billingSettings.fieldData.renewal_month} selected{/if}>{if $opt > 0}{$opt}{else}{/if}</option>
- {/foreach}
- </select>
- {if $billingSettings.fieldFail.renewal_month}<p>{$billingSettings.fieldFail.renewal_month}</p>{/if}
- </div>
- <div style="width: 60px; float: left;">
- Day
- <select name="renewal_day">
- {foreach $renewal_day_opts as $opt}
- <option value="{$opt}"{if $opt == $billingSettings.fieldData.renewal_day} selected{/if}>{if $opt > 0}{$opt}{else}{/if}</option>
- {/foreach}
- </select>
- {if $billingSettings.fieldFail.renewal_day}<p>{$billingSettings.fieldFail.renewal_day}</p>{/if}
- </div>
- </td>
- </tr>
- <tr>
- <th style="text-alighn: right;">
- Member Types that require Billing Account
- </th>
- <td>
- <select name="member_types_requiring_billing_option[]" multiple size="5">
- {foreach $member_types as $type}
- <option value="{$type.id}"{if in_array($type.id, $selectedMTRB)} selected{/if}>{$type.name}</option>
+ {if $billingSettings.fieldFail.renewal_month}<p>{$billingSettings.fieldFail.renewal_month}</p>{/if}
+ </div>
+ <div style="width: 60px; float: left;">
+ Day
+ <select name="renewal_day">
+ {foreach $renewal_day_opts as $opt}
+ <option value="{$opt}"{if $opt == $billingSettings.fieldData.renewal_day} selected{/if}>{if $opt > 0}{$opt}{else}{/if}</option>
{/foreach}
</select>
- </td>
- </tr>
- <tr>
- <th style="text-alighn: right;">
- Member Types that are Free
- </th>
- <td>
- <select name="member_types_free_option[]" multiple size="5">
- {foreach $member_types as $type}
- <option value="{$type.id}"{if in_array($type.id, $selectedMTFREE)} selected{/if}>{$type.name}</option>
- {/foreach}
- </select>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.days_before_renewal} class="glm-required"}{/if}>
- Days Before Renewal Date<br>
- to Allow Membership Renewal<br>
- Must be a number
- </th>
- <td {if $billingSettings.fieldFail.days_before_renewal}class="glm-form-bad-input" data-tabid="glm-company-name2"{/if}>
- <input
- type="text"
- name="days_before_renewal"
- value="{$billingSettings.fieldData.days_before_renewal}"
- class="glm-form-text-input-short"
- pattern="([0-9])*"
- />
- {if $billingSettings.fieldFail.days_before_renewal}<p>{$billingSettings.fieldFail.days_before_renewal}</p>{/if}<br>
- </td>
- </tr>
-
- <tr>
- <th style="text-align: right;" {if $billingSettings.fieldRequired.days_after_expired} class="glm-required"}{/if}>
- Days After Renewal Date<br>
- Membership Expires<br>
- Must be a number
- </th>
- <td {if $billingSettings.fieldFail.days_after_expired}class="glm-form-bad-input" data-tabid="glm-company-name2"{/if}>
- <input
- type="text"
- name="days_after_expired"
- value="{$billingSettings.fieldData.days_after_expired}"
- class="glm-form-text-input-short"
- pattern="([0-9])*"
- />
- {if $billingSettings.fieldFail.days_after_expired}<p>{$billingSettings.fieldFail.days_after_expired}</p>{/if}<br>
- </td>
- </tr>
-
- </table>
- <input type="submit" value="Update Settings" class="button-primary">
- </form>
- </td>
- </tr>
- </table>
-
- <script type="text/javascript">
-
- jQuery(document).ready(function($) {
-
- // Flash certain elements for a short time after display
- $(".glm-flash-updated").fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500);
-
- });
- </script>
+ {if $billingSettings.fieldFail.renewal_day}<p>{$billingSettings.fieldFail.renewal_day}</p>{/if}
+ </div>
+ </td>
+ </tr>
+ <tr>
+ <th style="text-alighn: right;">
+ Member Types that require Billing Account
+ </th>
+ <td>
+ <select name="member_types_requiring_billing_option[]" multiple size="5">
+ {foreach $member_types as $type}
+ <option value="{$type.id}"{if in_array($type.id, $selectedMTRB)} selected{/if}>{$type.name}</option>
+ {/foreach}
+ </select>
+ </td>
+ </tr>
+ <tr>
+ <th style="text-alighn: right;">
+ Member Types that are Free
+ </th>
+ <td>
+ <select name="member_types_free_option[]" multiple size="5">
+ {foreach $member_types as $type}
+ <option value="{$type.id}"{if in_array($type.id, $selectedMTFREE)} selected{/if}>{$type.name}</option>
+ {/foreach}
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.days_before_renewal} class="glm-required"}{/if}>
+ Days Before Renewal Date<br>
+ to Allow Membership Renewal<br>
+ Must be a number
+ </th>
+ <td {if $billingSettings.fieldFail.days_before_renewal}class="glm-form-bad-input" data-tabid="glm-company-name2"{/if}>
+ <input
+ type="text"
+ name="days_before_renewal"
+ value="{$billingSettings.fieldData.days_before_renewal}"
+ class="glm-form-text-input-short"
+ pattern="([0-9])*"
+ />
+ {if $billingSettings.fieldFail.days_before_renewal}<p>{$billingSettings.fieldFail.days_before_renewal}</p>{/if}<br>
+ </td>
+ </tr>
+
+ <tr>
+ <th style="text-align: right;" {if $billingSettings.fieldRequired.days_after_expired} class="glm-required"}{/if}>
+ Days After Renewal Date<br>
+ Membership Expires<br>
+ Must be a number
+ </th>
+ <td {if $billingSettings.fieldFail.days_after_expired}class="glm-form-bad-input" data-tabid="glm-company-name2"{/if}>
+ <input
+ type="text"
+ name="days_after_expired"
+ value="{$billingSettings.fieldData.days_after_expired}"
+ class="glm-form-text-input-short"
+ pattern="([0-9])*"
+ />
+ {if $billingSettings.fieldFail.days_after_expired}<p>{$billingSettings.fieldFail.days_after_expired}</p>{/if}<br>
+ </td>
+ </tr>
+
+ </table>
+ <input type="submit" value="Update Settings" class="button-primary">
+ </form>
+ </td>
+ </tr>
+</table>
+
+<script type="text/javascript">
+
+ jQuery(document).ready(function($) {
+
+ // Flash certain elements for a short time after display
+ $(".glm-flash-updated").fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500).fadeIn(500).fadeOut(500);
+
+ });
+
+</script>
+
{include file='admin/footer.html'}
+++ /dev/null
-<ul class="tabs" data-responsive-accordion-tabs="tabs" id="glm-settings-tabs">
- <li class="tabs-title is-active"><a href="#panel1" aria-selected="true">Main Settings</a></li>
- <li class="tabs-title"><a href="#panel2">Payment Types</a></li>
- <li class="tabs-title"><a href="#panel3">Notifications</a></li>
-</ul>
-
-<div class="tabs-content" data-tabs-content="glm-settings-tabs">
- <div class="tabs-panel is-active" id="panel1">
- <p>Main Settings</p>
-
- <div class="grid-x grid-margin-x">
- <div class="cell small-12 medium-4">
-
- <fieldset class="fieldset">
- <legend>Invoice Information</legend>
-
- {$data = $billingSettings}
-
- {* Company Name *}
- {$ui = [
- 'value' => $data.fieldData.company_name,
- 'field' => 'company_name',
- 'label' => 'Company Name',
- 'required' => $data.fieldRequired.company_name,
- 'errorText' => 'Company Name is Required',
- 'dataError' => '$data.fieldError.company_name'
- ]}
- {include file='ui/f6/text.html'}
-
- {* Company Name 2 *}
- {$ui = [
- 'value' => $data.fieldData.company_name2,
- 'field' => 'company_name2',
- 'label' => 'Company Name 2',
- 'required' => $data.fieldRequired.company_name2,
- 'errorText' => 'Company Name 2 is Required',
- 'dataError' => '$data.fieldError.company_name2'
- ]}
- {include file='ui/f6/text.html'}
-
- {* Company Address 1 *}
- {$ui = [
- 'value' => $data.fieldData.company_add1,
- 'field' => 'company_add1',
- 'label' => 'Company Address 1',
- 'required' => $data.fieldRequired.company_add1,
- 'errorText' => 'Company Address 1 is Required',
- 'dataError' => '$data.fieldError.company_add1'
- ]}
- {include file='ui/f6/text.html'}
-
- {* Company Address 2 *}
- {$ui = [
- 'value' => $data.fieldData.company_addr2,
- 'field' => 'company_addr2',
- 'label' => 'Company Address 2',
- 'required' => $data.fieldRequired.company_addr2,
- 'errorText' => 'Company Address 2 is Required',
- 'dataError' => '$data.fieldError.company_addr2'
- ]}
- {include file='ui/f6/text.html'}
-
- {* Company City *}
- {$ui = [
- 'value' => $data.fieldData.company_city,
- 'field' => 'company_city',
- 'label' => 'Company City',
- 'required' => $data.fieldRequired.company_city,
- 'errorText' => 'Company City is Required',
- 'dataError' => '$data.fieldError.company_city'
- ]}
- {include file='ui/f6/text.html'}
-
- {* Company State *}
- {$ui = [
- 'value' => $data.fieldData.company_state.value,
- 'field' => 'company_state',
- 'label' => 'Company State',
- 'list' => $data.fieldData.company_state.list,
- 'l_label' => 'name',
- 'l_value' => 'value',
- 'l_blank' => true,
- 'required' => $data.fieldRequired.company_state,
- 'errorText' => 'Company State is Required',
- 'dataError' => '$data.fieldError.company_state'
- ]}
- {include file='ui/f6/select.html'}
-
- {* Company Zip *}
- {$ui = [
- 'value' => $data.fieldData.company_zip,
- 'field' => 'company_zip',
- 'label' => 'Company Zip',
- 'required' => $data.fieldRequired.company_zip,
- 'errorText' => 'Company Zip is Required',
- 'dataError' => '$data.fieldError.company_zip'
- ]}
- {include file='ui/f6/text.html'}
-
- {* Company Phone *}
- {$ui = [
- 'value' => $data.fieldData.company_phone,
- 'field' => 'company_phone',
- 'label' => 'Company Phone',
- 'required' => $data.fieldRequired.company_phone,
- 'errorText' => 'Company Phone is Required',
- 'dataError' => '$data.fieldError.company_phone'
- ]}
- {include file='ui/f6/text.html'}
-
- {* Company Email *}
- {$ui = [
- 'value' => $data.fieldData.company_email,
- 'field' => 'company_email',
- 'label' => 'Company Email',
- 'required' => $data.fieldRequired.company_email,
- 'errorText' => 'Company Email is Required',
- 'dataError' => '$data.fieldError.company_email'
- ]}
- {include file='ui/f6/text.html'}
-
- {* Company URL *}
- {$ui = [
- 'value' => $data.fieldData.company_url,
- 'field' => 'company_url',
- 'label' => 'Company URL',
- 'required' => $data.fieldRequired.company_url,
- 'errorText' => 'Company URL is Required',
- 'dataError' => '$data.fieldError.company_url'
- ]}
- {include file='ui/f6/text.html'}
-
- </fieldset>
- </div>
- </div>
-
-
- </div>
- <div class="tabs-panel" id="panel2">
- <p>Payment Types</p>
- </div>
- <div class="tabs-panel" id="panel3">
- <p>Notifications</p>
- </div>
-</div>
-
-<script>
- jQuery(document).ready(function($){
- var settings = new Foundation.ResponsiveAccordionTabs( $('#glm-settings-tabs') );
- });
-</script>