Update member only menu
authorSteve Sutton <steve@gaslightmedia.com>
Fri, 16 Mar 2018 20:31:16 +0000 (16:31 -0400)
committerSteve Sutton <steve@gaslightmedia.com>
Fri, 16 Mar 2018 20:31:16 +0000 (16:31 -0400)
Add billing.
Don't allow editing of anniversary or renewal dates.

models/admin/member/billing.php
setup/adminMenus.php
views/admin/billing/editAccount.html
views/admin/billing/editInvoice.html
views/admin/management/billing.html

index d0dae7b..acc47ec 100644 (file)
@@ -129,6 +129,7 @@ class GlmMembersAdmin_member_billing // extends GlmDataBilling
         $lockedToMember = apply_filters('glm_members_locked_to_member_id', false);
         if ($lockedToMember) {
             $memberID       = $lockedToMember;
+            $this->memberID = $memberID;
             $lockedToMember = $memberID;
             $lockedWhereT   = 'T.ref_type = '.$this->config['ref_type_numb']['Member'].' AND T.ref_dest = '.$memberID;
             $lockedWhere    = 'ref_type = '.$this->config['ref_type_numb']['Member'].' AND ref_dest = '.$memberID;
index affa099..7a6ca6e 100644 (file)
  * is named the same as the "glm_action" parameter.
  *
  */
-if ( current_user_can( 'glm_members_members' ) ) {
+
+if (isset($this->config['loggedInUser']) && isset($this->config['loggedInUser']['contactUser']) && $this->config['loggedInUser']['contactUser']) {
+    add_submenu_page(
+        $mainMenuSlug,
+        'Billing',
+        'Billing',
+        'glm_members_edit_my_entity',
+        'glm-members-admin-menu-billing-index',
+        function() { $this->controller('member', 'billing'); }
+    );
+} else {
     add_submenu_page(
         'glm-members-admin-menu-members',
-        'Billing / Reports',
+        'Billing',
         'Billing',
         'glm_members_members',
         'glm-members-admin-menu-billing',
-        function() { $this->controller('billing', 'index'); }
+        function() { $this->controller('billing'); }
     );
 }
index ea7ad2e..f766b66 100644 (file)
 {if $accountAdded}<span class="glm-notice glm-flash-updated">Account Added</span>{/if}
 
 <form action="{$thisUrl}?page=glm-members-admin-menu-member" method="post">
-    <input type="hidden" name="page" value="glm-members-admin-menu-member">
-    <input type="hidden" name="glm_action" value="billing">
-    <input type="hidden" name="member" value="{$memberID}">
-    <input type="hidden" name="ref_dest" value="{$memberID}">
-    <input type="hidden" name="option" value="account">
+    <input type="hidden" name="page" value="glm-members-admin-menu-member" />
+    <input type="hidden" name="glm_action" value="billing" />
+    <input type="hidden" name="member" value="{$memberID}" />
+    <input type="hidden" name="ref_dest" value="{$memberID}" />
+    <input type="hidden" name="option" value="account" />
+    {if $lockedToMember}
+        <input type="hidden" name="anniversary_date" value="{$account.fieldData.anniversary_date.date}" />
+        <input type="hidden" name="renewal_date" value="{$account.fieldData.renewal_date.date}" />
+    {/if}
 
     {if $accountID}
         <input type="hidden" name="id" value="{$accountID}">
@@ -31,6 +35,7 @@
             </td>
         </tr>
 
+    {if !$lockedToMember}
         <tr>
             <th style="text-align: right;" {if $account.fieldRequired.anniversary_date} class="glm-required"{/if}>Anniversary Date</th>
             <td {if $account.fieldFail.anniversary_date}class="glm-form-bad-input" data-tabid="glm-anniversary-date"{/if}>
@@ -46,6 +51,7 @@
             {if $account.fieldFail.renewal_date}<p>{$account.fieldFail.renewal_date}</p>{/if}<br>
             </td>
         </tr>
+    {/if}
 
         <tr>
             <th style="text-align: right;" {if $account.fieldRequired.email} class="glm-required"{/if}>Billing Email</th>
 jQuery(document).ready(function($){
 
     // Setup the date picker for the input field with the name anniversary_date
-    $('input[name="anniversary_date"]').datepicker();
+    $('input[name="anniversary_date"]').datepicker({
+        dateFormat: 'mm/dd/yy'
+    });
     // Setup the date picker for the input field with the name renewal_date
-    $('input[name="renewal_date"]').datepicker();
+    $('input[name="renewal_date"]').datepicker({
+        dateFormat: 'mm/dd/yy'
+    });
 
     // 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);
index 8e09e4c..1c9c5f4 100644 (file)
@@ -623,7 +623,7 @@ jQuery(document).ready(function($){
      */
     dialog = $('#newLineItemDialog').dialog({
         autoOpen: false,
-        minWidth: 400,
+        minWidth: 550,
         dialogClass: 'glm-dialog-no-close',
         modal: true,
         buttons: {
@@ -645,7 +645,7 @@ jQuery(document).ready(function($){
      */
     customLineItemDialog = $('#newCustomLineItemDialog').dialog({
         autoOpen: false,
-        minWidth: 400,
+        minWidth: 550,
         dialogClass: 'glm-dialog-no-close',
         modal: true,
         buttons: {
@@ -815,7 +815,9 @@ jQuery(document).ready(function($){
     });
 
     // Setup the date picker for the input field with the name due_date
-    $('.datepicker').datepicker();
+    $('.datepicker').datepicker({
+        dateFormat: 'mm/dd/yy'
+    });
 
     /**
      * Change event listener for member account select.
index fd73eef..4a29629 100644 (file)
@@ -23,7 +23,7 @@
                         <td></td>
                         <th><p>Payment</p></th>
                     </tr>
-                    <tr class="glm-hidden">
+                    <tr>
                         <th class="glm-nowrap-left-align{if $regSettings.fieldRequired.payment_methods} glm­-required{/if}">Payment Methods:</th>
                         <td {if $regSettings.fieldFail.payment_methods}class="glm­form­bad­input" data­tabid="glm-reg-payment-methods"{/if}>
                       {foreach from=$regSettings.fieldData.payment_methods.bitmap item=v}