2 <!-- TODO: inputs need sr-only labels
3 <label class="sr-only" for="input-id">label</label>
6 <div class="row" id="patron-search-form-row">
7 <div class="col-md-11">
8 <form ng-submit="search(searchArgs)" id="patron-search-form"
9 role="form" class="form-horizontal">
11 <div class="form-group">
13 <div class="col-md-2">
14 <input type="text" class="form-control"
15 aria-label="[% l('Last Name') %]"
17 ng-model="searchArgs.family_name" placeholder="[% l('Last Name') %]"/>
20 <div class="col-md-2">
21 <input type="text" class="form-control"
22 aria-label="[% l('First Name') %]"
23 ng-model="searchArgs.first_given_name" placeholder="[% l('First Name') %]"/>
26 <div class="col-md-2">
27 <input type="text" class="form-control"
28 aria-label="[% l('Middle Name') %]"
29 ng-model="searchArgs.second_given_name" placeholder="[% l('Middle Name') %]"/>
32 <div class="col-md-2">
33 <input type="text" class="form-control" ng-model="searchArgs.name"
34 aria-label="[% l('Name Keywords') %]"
35 placeholder="[% l('Name Keywords') %]" title="[% l('Name Keywords') %]"/>
38 <div class="col-md-2" ng-mouseover="setLastFormElement()">
39 <input type="submit" class="btn btn-primary" value="[% l('Search') %]"
40 aria-label="[% l('Search') %]"/>
44 <div class="col-md-2">
45 <button class="btn btn-default" ng-click="applyShowExtras($event, true)"
46 ng-mouseover="setLastFormElement()" aria-label="[% l('Show More Fields') %]"
47 title="[% l('Show More Fields') %]" ng-show="!showExtras">
48 <span class="glyphicon glyphicon-circle-arrow-down"></span>
50 <button class="btn btn-default" ng-click="applyShowExtras($event, false)"
51 ng-mouseover="setLastFormElement()" aria-label="[% l('Show Fewer Fields') %]"
52 title="[% l('Show Fewer Fields') %]" ng-show="showExtras">
53 <span class="glyphicon glyphicon-circle-arrow-up"></span>
58 <div class="form-group" ng-show="showExtras">
59 <div class="col-md-2">
60 <input type="text" class="form-control" aria-label="[% l('Barcode') %]"
61 ng-model="searchArgs.card"
62 placeholder="[% l('Barcode') %]"/>
64 <div class="col-md-2">
65 <input type="text" class="form-control" aria-label="[% l('Alias') %]"
66 ng-model="searchArgs.alias" placeholder="[% l('Alias') %]"/>
68 <div class="col-md-2">
69 <input type="text" class="form-control" aria-label="[% l('Username') %]"
70 ng-model="searchArgs.usrname" placeholder="[% l('Username') %]"/>
72 <div class="col-md-2">
73 <input type="text" class="form-control" aria-label="[% l('Email') %]"
74 ng-model="searchArgs.email" placeholder="[% l('Email') %]"/>
76 <div class="col-md-2" ng-mouseover="setLastFormElement()">
77 <input type="reset" class="btn btn-primary" ng-click="clearForm()"
78 aria-label="[% l('Clear Form') %]" value="[% l('Clear Form') %]"/>
82 <div class="form-group" ng-show="showExtras">
83 <div class="col-md-2">
84 <input type="text" class="form-control" aria-label="[% l('Identification') %]"
85 ng-model="searchArgs.ident" placeholder="[% l('Identification') %]"/>
88 <div class="col-md-2">
89 <input type="text" class="form-control" aria-label="[% l('Phone') %]"
90 ng-model="searchArgs.phone" placeholder="[% l('Phone') %]"/>
92 <div class="col-md-2">
93 <input type="text" class="form-control" aria-label="[% l('Street 1') %]"
94 ng-model="searchArgs.street1" placeholder="[% l('Street 1') %]"/>
96 <div class="col-md-2">
97 <input type="text" class="form-control" aria-label="[% l('Street 2') %]"
98 ng-model="searchArgs.street2" placeholder="[% l('Street 2') %]"/>
100 <div class="col-md-2">
101 <input type="text" class="form-control" aria-label="[% l('City') %]"
102 ng-model="searchArgs.city" placeholder="[% l('City') %]"/>
106 <div class="form-group" ng-show="showExtras">
107 <div class="col-md-2">
108 <input type="text" class="form-control" ng-model="searchArgs.state"
109 aria-label="[% l('State') %]"
110 placeholder="[% l('State') %]" title="[% l('State') %]"/>
113 <div class="col-md-2">
114 <input type="text" class="form-control" ng-model="searchArgs.post_code"
115 aria-label="[% l('Post Code') %]"
116 placeholder="[% l('Post Code') %]" title="[% l('Post Code') %]"/>
119 <div class="col-md-2">
121 <input type="text" class="form-control"
122 placeholder="[% l('Profile Group') %]"
123 ng-model="searchArgs.profile"
124 typeahead="grp as grp.name for grp in profiles | filter:$viewValue"
125 typeahead-editable="false" />
128 <div class="btn-group patron-search-selector" uib-dropdown>
129 <button type="button" class="btn btn-default" uib-dropdown-toggle>
130 <span style="padding-right: 5px;">{{searchArgs.profile.name() || "[% l('Profile Group') %]"}}</span>
131 <span class="caret"></span>
133 <ul class="scrollable-menu" uib-dropdown-menu>
134 <li ng-repeat="grp in profiles">
136 style="padding-left: {{pgt_depth(grp) * 10 + 5}}px"
137 ng-click="searchArgs.profile = grp">{{grp.name()}}</a>
143 <div class="col-md-2">
144 <eg-org-selector label="[% l('Home Library') %]" org-aria="[% l('Home Library') %]"
145 selected="searchArgs.home_ou" sticky-setting="eg.circ.patron.search.ou">
149 <div class="col-md-2">
150 <input type="text" class="form-control" aria-label="[% l('Parent/Guardian') %]"
151 ng-model="searchArgs.guardian" placeholder="[% l('Parent/Guardian') %]"/>
154 <div class="form-group" ng-show="showExtras">
155 <div class="col-md-2">
156 <input type="text" class="form-control" ng-model="searchArgs.dob_year"
157 aria-label="[% l('DOB Year') %]"
158 placeholder="[% l('DOB Year') %]" title="[% l('DOB Year') %]"/>
160 <div class="col-md-2">
161 <input type="text" class="form-control" ng-model="searchArgs.dob_month"
162 aria-label="[% l('DOB Month') %]"
163 placeholder="[% l('DOB Month') %]" title="[% l('DOB Month') %]"/>
165 <div class="col-md-2">
166 <input type="text" class="form-control" ng-model="searchArgs.dob_day"
167 aria-label="[% l('DOB Day') %]"
168 placeholder="[% l('DOB Day') %]" title="[% l('DOB Day') %]"/>
170 <div class="col-md-2">
171 <input type="text" class="form-control" aria-label="[% l('Database ID') %]"
172 ng-model="searchArgs.id" placeholder="[% l('Database ID') %]"/>
174 <div class="col-md-2">
175 <div class="checkbox">
176 <label id="includeInactive">
177 <input type="checkbox" aria-labelledby="includeInactive"
178 ng-model="searchArgs.inactive" ng-change="onSearchInactiveChanged()"/>
179 [% l('Include Inactive?') %]