$member_invoice = false;
$payable_types = false;
$account_status = false;
+ $accounts = false;
// For lockedToMember.
$lockedToMember = false;
// Get a list of this accounts employees. If they have any.
$employees = $BillingSupport->getListOfAccountEmployees( $this->memberID );
+ // Need to get the accounts
+ $Accounts = new GlmDataAccounts( $this->wpdb, $this->config );
+ $accounts = $Accounts->getSimpleAccountList( '', 'ref_name' );
// Need to see if there's an account for this member.
$accountID = $this->wpdb->get_var(
$account = $Accounts->editEntry( $accountID );
$haveAccount = true;
} else {
- $accountID = 0;
- $account = $Accounts->newEntry();
+ $accountID = 0;
+ $account = $Accounts->newEntry();
// Set the ref_name from memberData
$account['fieldData']['ref_name'] = $memberData['name'];
$haveAccount = false;
'member_invoice' => $member_invoice,
'payable_types' => $payable_types,
'account_status' => $account_status,
+ 'accounts' => $accounts,
);
// Return status, any suggested view, and any data to controller.
<strong>Associated Members/Employees</strong>
</div>
<div class="glm-billing-input">
- <select id="glm-billing-members">
- <option value="">Select Member to Add</option>
- </select>
- {if $employees}
- {foreach $employees as $employee}
- <div class="glm-billing-employee">
- {$employee.ref_name}
- <label><input type="checkbox" name="delete[]" value="{$employee.ref_dest}"> Remove </label>
- </div>
- {/foreach}
- {/if}
+ <input id="glm-billing-member-list" placeholder="Lookup Member">
+ <div id="glm-billing-employees">
+ {if $employees}
+ {foreach $employees as $employee}
+ <div class="glm-billing-employee">
+ {$employee.ref_name}
+ <a> Remove </a>
+ </div>
+ {/foreach}
+ {/if}
+ </div>
</div>
</div>
{/if}
<script>
jQuery(document).ready(function($){
+ var accounts = [ {foreach $accounts as $m} { label: "{$m.ref_name|unescape:'html'|replace:'"':''}", value: "{$m.ref_name|unescape:'html'|replace:'"':''}", id: '{$m.id}' }, {/foreach} ];
+
+ // Setup autocomplete for both inputs
+ $('#glm-billing-member-list').autocomplete({
+ source: accounts,
+ select: function( event, ui ){
+ console.log('selected: ', ui);
+ addEmployee( ui.item );
+ $('#glm-billing-member-list').val( '' );
+ return false;
+ },
+ change: function( event, ui) {
+ if( ui.item == null ) {
+ $('#glm-billing-member-list').val( '' );
+ return false;
+ }
+ },
+ });
+
+ function addEmployee( employee ) {
+ var html = '<div class="glm-billign-employee" data-id="' + employee.id + '">';
+ html += '<input type="hidden" name="employee[' + employee.id + ']" value="1">';
+ html += employee.label;
+ html += '<a class="glm-billing-employee-del">Remove</a>';
+ html += '</div>';
+ $('#glm-billing-employees').append(html);
+ }
+
// Setup the date picker for the input field with the name anniversary_date
$('input[name="anniversary_date"]').datepicker({
dateFormat: 'mm/dd/yy'