Added paging controls to the bottom of the web client patron
authorVictoria Lewis <vlewis@catalystitservices.com>
Thu, 5 Nov 2015 17:48:04 +0000 (09:48 -0800)
committerVictoria Lewis <vlewis@catalystitservices.com>
Thu, 5 Nov 2015 17:48:04 +0000 (09:48 -0800)
search screen. Moved button bar code from t_autogrid.tt2
to button_bar.tt2

Signed-off-by: Victoria Lewis <vlewis@catalystitservices.com>
new file:   Open-ILS/src/templates/staff/share/button_bar.tt2
modified:   Open-ILS/src/templates/staff/share/t_autogrid.tt2

Open-ILS/src/templates/staff/share/button_bar.tt2 [new file with mode: 0644]
Open-ILS/src/templates/staff/share/t_autogrid.tt2

diff --git a/Open-ILS/src/templates/staff/share/button_bar.tt2 b/Open-ILS/src/templates/staff/share/button_bar.tt2
new file mode 100644 (file)
index 0000000..be205f8
--- /dev/null
@@ -0,0 +1,164 @@
+
+<div class="eg-grid-row eg-grid-action-row">
+
+  <!-- putting a flex div here forces the remaining content to float right -->
+  <div class="flex-cell"></div>  
+  <!-- column picker, pager, etc. -->
+  <div class="btn-group column-picker">
+
+    <!-- first page -->
+    <button type="button" class="btn btn-default" 
+      ng-class="{disabled : onFirstPage()}" 
+      ng-click="offset(0);collect()"
+      title="[% l('Start') %]">
+        <span class="glyphicon glyphicon-fast-backward"></span>
+    </button>
+
+    <!-- previous page -->
+    <button type="button" class="btn btn-default" 
+      ng-class="{disabled : onFirstPage()}"
+      ng-click="decrementPage()"
+      title="[% l('Previous Page') %]">
+        <span class="glyphicon glyphicon-backward"></span>
+    </button>
+
+    <!-- next page -->
+    <!-- todo: paging needs a total count value to be fully functional -->
+    <button type="button" class="btn btn-default" 
+      ng-class="{disabled : !hasNextPage()}"
+      ng-click="incrementPage()"
+      title="[% l('Next Page') %]">
+        <span class="glyphicon glyphicon-forward"></span>
+    </button>
+
+    <!-- actions drop-down menu -->
+    <div class="btn-group" ng-if="actions.length" dropdown>                                                  
+      <button type="button" class="btn btn-default dropdown-toggle">
+        [% l('Actions') %] <span class="caret"></span>                       
+      </button>                                                              
+      <ul class="dropdown-menu pull-right grid-action-dropdown">                                  
+        <li ng-repeat="action in actions" ng-class="{divider: action.divider}" ng-hide="actionHide(action)">
+          <a ng-if="!action.divider" href
+            ng-click="actionLauncher(action)">{{action.label}}</a>
+        </li>
+      </ul>
+    </div>
+
+    [% IF top  %]
+        <div class="btn-group" dropdown is-open="gridRowCountIsOpenTop"> 
+    [% END %]
+        
+    [% IF bottom %]
+        <div class="btn-group" dropdown is-open="gridRowCountIsOpenBottom"> 
+    [% END %]
+      
+      <button type="button" title="[% ('Select Row Count') %]"
+        class="btn btn-default dropdown-toggle">
+        [% l('Rows [_1]', '{{limit()}}') %]
+        <span class="caret"></span>
+      </button>    
+
+      <ul class="dropdown-menu">
+       <li ng-repeat="t in [5,10,25,50,100]">
+         <a href ng-click='offset(0);limit(t);collect()'>
+            {{t}}
+          </a>
+        </li>
+      </ul> 
+    </div>
+
+    [% IF top %]
+         <div class="btn-group" dropdown is-open="gridPageSelectIsOpenTop">
+    [% END %]
+        
+    [% IF bottom %]
+         <div class="btn-group" dropdown is-open="gridPageSelectIsOpenBottom">
+    [% END %]
+
+      <button type="button" title="[% ('Select Page') %]"
+        class="btn btn-default dropdown-toggle">
+        [% l('Page [_1]', '{{page()}}') %]
+        <span class="caret"></span>
+      </button>
+      <ul class="dropdown-menu">
+        <li>
+          <div class="input-group">
+            <input type="text" class="form-control"
+              ng-model="pageFromUI"
+              ng-click="$event.stopPropagation()"/>
+            <span class="input-group-btn">
+              <button class="btn btn-default" type="button"
+                ng-click="goToPage(pageFromUI);pageFromUI='';">
+                [% l('Go To...') %]
+              </button>
+            </span>
+          </div>
+        </li>
+        <li role="presentation" class="divider"></li>
+        <li ng-repeat="t in [1,2,3,4,5,10,25,50,100]">
+          <a href ng-click='goToPage(t);gridPageSelectIsOpen=false;'>{{t}}</a>
+        </li>
+      </ul>
+    </div>
+    
+    [% IF top %]
+         <div class="btn-group" dropdown is-open="gridColumnPickerIsOpenTop">
+    [% END %]
+        
+    [% IF bottom %]
+        <div class="btn-group" dropdown is-open="gridColumnPickerIsOpenBottom">
+    [% END %]
+
+      <button type="button" 
+        class="btn btn-default dropdown-toggle">
+        <span class="caret"></span>
+      </button> 
+      <ul class="dropdown-menu pull-right eg-grid-column-picker">
+        <li><a href ng-click="toggleConfDisplay()">
+          <span class="glyphicon glyphicon-wrench"></span>
+          [% l('Configure Columns') %]
+        </a></li>
+        <li><a href ng-click="saveConfig()">
+          <span class="glyphicon glyphicon-floppy-save"></span>
+          [% l('Save Columns') %]
+        </a></li>
+        
+<!--   <li><a href ng-click="showAllColumns()">
+          <span class="glyphicon glyphicon-resize-full"></span>
+          [% l('Show All Columns') %]
+        </a></li>
+        <li><a href ng-click="hideAllColumns()">
+          <span class="glyphicon glyphicon-resize-small"></span>
+          [% l('Hide All Columns') %]
+        </a></li>  
+-->
+        <li><a href ng-click="resetColumns()">
+          <span class="glyphicon glyphicon-refresh"></span>
+          [% l('Reset Columns') %]
+        </a></li>
+        <li><a ng-click="generateCSVExportURL()" 
+          download="{{csvExportFileName}}.csv" ng-href="{{csvExportURL}}">
+          <span class="glyphicon glyphicon-download"></span>
+          [% l('Download CSV') %]
+        </a></li>
+        <li><a href ng-click="printCSV()">
+          <span class="glyphicon glyphicon-print"></span>
+          [% l('Print CSV') %]
+        </a></li>
+        <li role="presentation" class="divider"></li>
+        <li ng-repeat="col in columns">
+          <a href title="{{col.idlclass}}" ng-click="toggleColumnVisibility(col)">
+              <span ng-if="col.visible" 
+                class="label label-success">&#x2713;</span>
+              <span ng-if="!col.visible" 
+                class="label label-warning">&#x2717;</span>
+              <span>{{col.label}}</span>
+          </a>
+        </li>
+      </ul>
+    </div>
+  </div> 
+</div> 
+
+
+
index 03aa65e..c0a0c48 100644 (file)
 
   <!-- putting a flex div here forces the remaining content to float right -->
   <div class="flex-cell"></div>
-
-  <!-- column picker, pager, etc. -->
-  <div class="btn-group column-picker">
-
-    <!-- first page -->
-    <button type="button" class="btn btn-default" 
-      ng-class="{disabled : onFirstPage()}" 
-      ng-click="offset(0);collect()"
-      title="[% l('Start') %]">
-        <span class="glyphicon glyphicon-fast-backward"></span>
-    </button>
-
-    <!-- previous page -->
-    <button type="button" class="btn btn-default" 
-      ng-class="{disabled : onFirstPage()}"
-      ng-click="decrementPage()"
-      title="[% l('Previous Page') %]">
-        <span class="glyphicon glyphicon-backward"></span>
-    </button>
-
-    <!-- next page -->
-    <!-- todo: paging needs a total count value to be fully functional -->
-    <button type="button" class="btn btn-default" 
-      ng-class="{disabled : !hasNextPage()}"
-      ng-click="incrementPage()"
-      title="[% l('Next Page') %]">
-        <span class="glyphicon glyphicon-forward"></span>
-    </button>
-
-    <!-- actions drop-down menu -->
-    <div class="btn-group" ng-if="actions.length" dropdown>                                                  
-      <button type="button" class="btn btn-default dropdown-toggle">
-        [% l('Actions') %] <span class="caret"></span>                       
-      </button>                                                              
-      <ul class="dropdown-menu pull-right grid-action-dropdown">                                  
-        <li ng-repeat="action in actions" ng-class="{divider: action.divider}" ng-hide="actionHide(action)">
-          <a ng-if="!action.divider" href
-            ng-click="actionLauncher(action)">{{action.label}}</a>
-        </li>
-      </ul>
-    </div>
-
-    <div class="btn-group" dropdown is-open="gridRowCountIsOpen">
-      <button type="button" title="[% ('Select Row Count') %]"
-        class="btn btn-default dropdown-toggle">
-        [% l('Rows [_1]', '{{limit()}}') %]
-        <span class="caret"></span>
-      </button>
-      <ul class="dropdown-menu">
-        <li ng-repeat="t in [5,10,25,50,100]">
-          <a href ng-click='offset(0);limit(t);collect()'>
-            {{t}}
-          </a>
-        </li>
-      </ul>
+    <div>
+        [% INCLUDE "staff/share/button_bar.tt2" top=1 %]
     </div>
-
-    <div class="btn-group" dropdown is-open="gridPageSelectIsOpen">
-      <button type="button" title="[% ('Select Page') %]"
-        class="btn btn-default dropdown-toggle">
-        [% l('Page [_1]', '{{page()}}') %]
-        <span class="caret"></span>
-      </button>
-      <ul class="dropdown-menu">
-        <li>
-          <div class="input-group">
-            <input type="text" class="form-control"
-              ng-model="pageFromUI"
-              ng-click="$event.stopPropagation()"/>
-            <span class="input-group-btn">
-              <button class="btn btn-default" type="button"
-                ng-click="goToPage(pageFromUI);pageFromUI='';">
-                [% l('Go To...') %]
-              </button>
-            </span>
-          </div>
-        </li>
-        <li role="presentation" class="divider"></li>
-        <li ng-repeat="t in [1,2,3,4,5,10,25,50,100]">
-          <a href ng-click='goToPage(t);gridPageSelectIsOpen=false;'>{{t}}</a>
-        </li>
-      </ul>
-    </div>
-
-    <div class="btn-group" dropdown is-open="gridColumnPickerIsOpen">
-      <button type="button" 
-        class="btn btn-default dropdown-toggle">
-        <span class="caret"></span>
-      </button>
-      <ul class="dropdown-menu pull-right eg-grid-column-picker">
-        <li><a href ng-click="toggleConfDisplay()">
-          <span class="glyphicon glyphicon-wrench"></span>
-          [% l('Configure Columns') %]
-        </a></li>
-        <li><a href ng-click="saveConfig()">
-          <span class="glyphicon glyphicon-floppy-save"></span>
-          [% l('Save Columns') %]
-        </a></li>
-<!--
-        <li><a href ng-click="showAllColumns()">
-          <span class="glyphicon glyphicon-resize-full"></span>
-          [% l('Show All Columns') %]
-        </a></li>
-        <li><a href ng-click="hideAllColumns()">
-          <span class="glyphicon glyphicon-resize-small"></span>
-          [% l('Hide All Columns') %]
-        </a></li>
--->
-        <li><a href ng-click="resetColumns()">
-          <span class="glyphicon glyphicon-refresh"></span>
-          [% l('Reset Columns') %]
-        </a></li>
-        <li><a ng-click="generateCSVExportURL()" 
-          download="{{csvExportFileName}}.csv" ng-href="{{csvExportURL}}">
-          <span class="glyphicon glyphicon-download"></span>
-          [% l('Download CSV') %]
-        </a></li>
-        <li><a href ng-click="printCSV()">
-          <span class="glyphicon glyphicon-print"></span>
-          [% l('Print CSV') %]
-        </a></li>
-        <li role="presentation" class="divider"></li>
-        <li ng-repeat="col in columns">
-          <a href title="{{col.idlclass}}" ng-click="toggleColumnVisibility(col)">
-              <span ng-if="col.visible" 
-                class="label label-success">&#x2713;</span>
-              <span ng-if="!col.visible" 
-                class="label label-warning">&#x2717;</span>
-              <span>{{col.label}}</span>
-          </a>
-        </li>
-      </ul>
-    </div>
-  </div>
 </div>
 
 <!-- Grid -->
       </div>
     </div>
   </div>
-
-
+ <br>
+    [% INCLUDE "staff/share/button_bar.tt2" bottom=1 %]
 </div>
-