| 1 | efrain | 1 | {{!
 | 
        
           |  |  | 2 |     This file is part of Moodle - http://moodle.org/
 | 
        
           |  |  | 3 |   | 
        
           |  |  | 4 |     Moodle is free software: you can redistribute it and/or modify
 | 
        
           |  |  | 5 |     it under the terms of the GNU General Public License as published by
 | 
        
           |  |  | 6 |     the Free Software Foundation, either version 3 of the License, or
 | 
        
           |  |  | 7 |     (at your option) any later version.
 | 
        
           |  |  | 8 |   | 
        
           |  |  | 9 |     Moodle is distributed in the hope that it will be useful,
 | 
        
           |  |  | 10 |     but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
        
           |  |  | 11 |     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
        
           |  |  | 12 |     GNU General Public License for more details.
 | 
        
           |  |  | 13 |   | 
        
           |  |  | 14 |     You should have received a copy of the GNU General Public License
 | 
        
           |  |  | 15 |     along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
 | 
        
           |  |  | 16 | }}
 | 
        
           |  |  | 17 | {{!
 | 
        
           |  |  | 18 |     @template gradereport_grader/perpage
 | 
        
           |  |  | 19 |   | 
        
           |  |  | 20 |     The students per page dropdown element.
 | 
        
           |  |  | 21 |   | 
        
           |  |  | 22 |     Context variables required for this template:
 | 
        
           |  |  | 23 |     * baseurl - The base URL for the perpage action.
 | 
        
           |  |  | 24 |     * options - Choices
 | 
        
           |  |  | 25 |   | 
        
           |  |  | 26 |     Example context (json):
 | 
        
           |  |  | 27 |     {
 | 
        
           |  |  | 28 |         "baseurl": "http://example.com/grade/report/grader/index.php?id=2&report=grader",
 | 
        
           |  |  | 29 |         "options": [
 | 
        
           |  |  | 30 |             {"name": "20", "value": "20"},
 | 
        
           |  |  | 31 |             {"name": "100", "value": "100", "selected": true},
 | 
        
           |  |  | 32 |             {"name": "All", "value": "0"}
 | 
        
           |  |  | 33 |         ]
 | 
        
           |  |  | 34 |     }
 | 
        
           |  |  | 35 | }}
 | 
        
           |  |  | 36 | <div class="col-auto">
 | 
        
           |  |  | 37 |     <label>
 | 
        
           |  |  | 38 |         {{#str}}show{{/str}}
 | 
        
           | 1441 | ariadna | 39 |         <select name="perpage" class="mt-1 form-select ignoredirty" id="{{uniqid}}">
 | 
        
           | 1 | efrain | 40 |             {{#options}}
 | 
        
           |  |  | 41 |                 <option value="{{value}}" {{#selected}}selected{{/selected}}>{{name}}</option>
 | 
        
           |  |  | 42 |             {{/options}}
 | 
        
           |  |  | 43 |         </select>
 | 
        
           |  |  | 44 |     </label>
 | 
        
           |  |  | 45 | </div>
 | 
        
           |  |  | 46 | {{#pagingbar}}
 | 
        
           |  |  | 47 |     <div class="col">
 | 
        
           |  |  | 48 |         {{{pagingbar}}}
 | 
        
           |  |  | 49 |     </div>
 | 
        
           |  |  | 50 | {{/pagingbar}}
 | 
        
           |  |  | 51 | {{#js}}
 | 
        
           |  |  | 52 |     document.getElementById('{{uniqid}}').addEventListener('change', function(e) {
 | 
        
           |  |  | 53 |     var url = new URL('{{{baseurl}}}');
 | 
        
           |  |  | 54 |     url.searchParams.set('perpage', e.target.value);
 | 
        
           |  |  | 55 |   | 
        
           |  |  | 56 |     window.location.href = url;
 | 
        
           |  |  | 57 |     });
 | 
        
           |  |  | 58 | {{/js}}
 |