Bug 13618: Add html filters to all the variables
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / course_reserves / course-details.tt
1 [% USE raw %]
2 [% USE Asset %]
3 [% USE AuthorisedValues %]
4 [% USE ItemTypes %]
5 [% USE Branches %]
6 [% SET footerjs = 1 %]
7 [% INCLUDE 'doc-head-open.inc' %]
8 <title>Koha &rsaquo; Course reserves &rsaquo; Course details for [% course.course_name | html %]</title>
9 [% INCLUDE 'doc-head-close.inc' %]
10
11 [% Asset.css("css/datatables.css") | $raw %]
12 </head>
13
14 <body id="courses_course_details" class="course">
15
16 [% INCLUDE 'header.inc' %]
17 [% INCLUDE 'cat-search.inc' %]
18
19 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/course_reserves/course-reserves.pl">Course reserves</a> &rsaquo; Course details for <i>[% course.course_name | html %]</i></div>
20
21     <div class="main container-fluid">
22         <div class="row">
23             <div class="col-md-8 col-md-offset-2">
24
25             [% IF CAN_user_coursereserves_add_reserves OR CAN_user_coursereserves_manage_courses OR CAN_user_coursereserves_manage_courses %]
26             <div id="toolbar">
27                 [% IF CAN_user_coursereserves_add_reserves %]
28                     <a class="btn btn-default btn-sm" id="add_items" href="/cgi-bin/koha/course_reserves/add_items.pl?course_id=[% course.course_id | html %]"><i class="fa fa-plus"></i> Add reserves</a>
29                     <a class="btn btn-default btn-sm" id="add_items" href="/cgi-bin/koha/course_reserves/batch_add_items.pl?course_id=[% course.course_id | html %]"><i class="fa fa-plus"></i> Batch add reserves</a>
30                 [% END %]
31                 [% IF ( CAN_user_coursereserves_manage_courses ) %]
32                     <a class="btn btn-default btn-sm" id="edit_course" href="/cgi-bin/koha/course_reserves/course.pl?course_id=[% course.course_id | html %]"><i class="fa fa-pencil"></i> Edit course</a>
33                 [% END %]
34                 [% IF ( CAN_user_coursereserves_manage_courses ) %]
35                     <a class="btn btn-default btn-sm" id="delete_course" href="/cgi-bin/koha/course_reserves/mod_course.pl?course_id=[% course.course_id | html %]&amp;action=del"><i class="fa fa-trash"></i> Delete course</a>
36                 [% END %]
37             </div><!-- /toolbar -->
38             [% END %]
39
40             <div class="rows">
41               <ol>
42                 <li><span class="label">Course name</span> [% course.course_name | html %]</li>
43                 <li><span class="label">Term</span> [% AuthorisedValues.GetByCode( 'TERM', course.term ) | html %]</li>
44                 <li><span class="label">Department</span> [% AuthorisedValues.GetByCode( 'DEPARTMENT', course.department ) | html %]</li>
45                 <li><span class="label">Course number</span> [% course.course_number | html %]</li>
46                 <li><span class="label">Section</span> [% course.section | html %]</li>
47                 <li><span class="label">Instructors</span> [% FOREACH i IN course.instructors %]<div class="instructor"><a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% i.borrowernumber | html %]">[% i.firstname | html %] [% i.surname | html %]</a></div>[% END %]</li>
48                 <li><span class="label">Staff note</span> [% course.staff_note | html %]</li>
49                 <li><span class="label">Public note</span> [% course.public_note | html %]</li>
50                 <li><span class="label">Student count</span> [% course.students_count | html %]</li>
51                 <li><span class="label">Status</span> [% IF course.enabled == 'yes' %]Active[% ELSE %]Inactive[% END %]</li>
52               </ol>
53             </div>
54
55             [% IF course_reserves %]
56             <table id="course_reserves_table">
57                 <caption>Reserves</caption>
58                 <thead>
59                     <tr>
60                         <th class="antithe">Title</th>
61                         <th>Author</th>
62                         <th>Barcode</th>
63                         <th>Call number</th>
64                         [% IF item_level_itypes %]<th>Item type</th>[% END %]
65                         <th>Collection</th>
66                         <th>Location</th>
67                         <th>Library</th>
68                         <th>Staff note</th>
69                         <th>Public note</th>
70                         <th>Link</th>
71                         <th class="NoSort">Other course reserves</th>
72                         [% IF CAN_user_coursereserves_add_reserves || CAN_user_coursereserves_delete_reserves %]
73                             <th class="NoSort">Actions</th>
74                         [% END %]
75                     </tr>
76                 </thead>
77
78                 <tbody>
79                     [% FOREACH cr IN course_reserves %]
80                         <tr>
81                             <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% cr.biblio.biblionumber | html %]">[% cr.biblio.title | html %]</a></td>
82                             <td>[% cr.biblio.author | html %]</td>
83                             <td><a href="/cgi-bin/koha/catalogue/moredetail.pl?itemnumber=[% cr.item.itemnumber | html %]&amp;biblionumber=[% cr.biblio.biblionumber | html %]&amp;bi=[% cr.biblioitem.biblioitemnumber | html %]">[% cr.item.barcode | html %]</a></td>
84                             <td>[% cr.item.itemcallnumber | html %]</td>
85                             [% IF item_level_itypes %]
86                             <td>
87                                 [% IF cr.course_item.itype %]
88                                     [% IF cr.course_item.enabled == 'yes' %]
89                                         [% ItemTypes.GetDescription( cr.item.itype ) | html %]
90                                     [% ELSE %]
91                                         [% ItemTypes.GetDescription( cr.course_item.itype ) | html %]
92                                     [% END %]
93                                 [% ELSE %]
94                                      <i>Unchanged</i>
95                                      [% IF cr.item.itype %]
96                                          ([% ItemTypes.GetDescription( cr.item.itype ) | html %])
97                                      [% END %]
98                                 [% END %]
99                             </td>
100                             [% END %]
101                             <td>
102                                  [% IF cr.course_item.ccode %]
103                                      [% IF cr.course_item.enabled == 'yes' %]
104                                           [% AuthorisedValues.GetByCode( 'CCODE', cr.item.ccode ) | html %]
105                                      [% ELSE %]
106                                          [% AuthorisedValues.GetByCode( 'CCODE', cr.course_item.ccode ) | html %]
107                                      [% END %]
108                                  [% ELSE %]
109                                      <i>Unchanged</i>
110                                      [% IF cr.item.ccode %]
111                                          ([% AuthorisedValues.GetByCode( 'CCODE', cr.item.ccode ) | html %])
112                                      [% END %]
113                                  [% END %]
114                             </td>
115                             <td>
116                                 [% IF cr.course_item.location %]
117                                      [% IF cr.course_item.enabled == 'yes' %]
118                                          [% AuthorisedValues.GetByCode( 'LOC', cr.item.location ) | html %]
119                                     [% ELSE %]
120                                         [% AuthorisedValues.GetByCode( 'LOC', cr.course_item.location ) | html %]
121                                     [% END %]
122                                 [% ELSE %]
123                                     <i>Unchanged</i>
124                                     [% IF cr.item.location %]
125                                         ([% AuthorisedValues.GetByCode( 'LOC', cr.item.location ) | html %])
126                                     [% END %]
127                                 [% END %]
128                             </td>
129                             <td>
130                                 [% IF cr.course_item.holdingbranch %]
131                                     [% IF cr.course_item.enabled == 'yes' %]
132                                         [% Branches.GetName( cr.item.holdingbranch ) | html %]
133                                     [% ELSE %]
134                                         [% Branches.GetName( cr.course_item.holdingbranch ) | html %]
135                                     [% END %]
136                                 [% ELSE %]
137                                     <i>Unchanged</i>
138                                     [% IF cr.item.holdingbranch %]
139                                         ([% Branches.GetName( cr.item.holdingbranch ) | html %])
140                                     [% END %]
141                                 [% END %]
142                             </td>
143                             <td>[% IF (cr.staff_note) %]
144                                     [% cr.staff_note | html %]
145                                 [% ELSIF (cr.item.itemnotes_nonpublic) %]
146                                     [% cr.item.itemnotes_nonpublic | html %]
147                                 [% END %]
148                             </td>
149                             <td>[% IF (cr.public_note) %]
150                                     [% cr.public_note | html %]
151                                 [% ELSIF (cr.item.itemnotes) %]
152                                     [% cr.item.itemnotes | html %]
153                                 [% END %]
154                             </td>
155
156                             <td>
157                                 [% IF (cr.item.uri) %]
158                                     <a href="[% cr.item.uri | html %]">Item URI</a>
159                                 [% ELSIF (cr.biblioitem.url) %]
160                                     <a href="[% cr.biblioitem.url | html %]">Record URL</a>
161                                 [% END %]
162                             </td>
163
164                             <td>
165                                 [% FOREACH c IN cr.courses %]
166                                     [% UNLESS cr.course_id == c.course_id %]
167                                         <p>
168                                             <a href="course-details.pl?course_id=[% c.course_id | html %]">
169                                                 [% c.course_name | html %]
170                                                 [% IF c.section %] [% c.section | html %] [% END %]
171                                                 [% IF c.term %] [% AuthorisedValues.GetByCode( 'TERM', c.term ) | html %] [% END %]
172                                             </a>
173                                         </p>
174                                     [% END %]
175                                 [% END %]
176                             </td>
177
178                             [% IF CAN_user_coursereserves_add_reserves || CAN_user_coursereserves_delete_reserves %]
179                                 <td class="actions">
180                                     [% IF CAN_user_coursereserves_add_reserves %]
181                                         <a class="btn btn-default btn-xs" href="add_items.pl?course_id=[% course.course_id | html %]&amp;itemnumber=[% cr.item.itemnumber | html %]&amp;action=lookup&amp;return=[% course.course_id | html %]"><i class="fa fa-pencil"></i> Edit</a>
182                                     [% END %]
183
184                                     [% IF CAN_user_coursereserves_delete_reserves %]
185                                         [% IF cr.item.onloan %]
186                                             <a class="btn btn-default btn-xs disabled checkedout delete_item" href="#" data-toggle="tooltip" data-placement="left" title="This item is checked out">
187                                         [% ELSE %]
188                                             <a class="btn btn-default btn-xs delete_item" href="course-details.pl?course_id=[% course.course_id | html %]&amp;action=del_reserve&amp;cr_id=[% cr.cr_id | html %]">
189                                         [% END %]
190                                         <i class="fa fa-trash"></i> Remove</a>
191                                     [% END %]
192                                 </td>
193                             [% END %]
194
195                         </tr>
196                     [% END %]
197                 </tbody>
198             </table>
199             [% END %]
200         </div>
201     </div>
202
203 [% MACRO jsinclude BLOCK %]
204     [% INCLUDE 'datatables.inc' %]
205     <script type="text/javascript">
206         $(document).ready(function(){
207             $("#course_reserves_table").dataTable($.extend(true, {}, dataTablesDefaults, {
208                 "sPaginationType": "four_button",
209                 "aoColumnDefs": [
210                     { 'bSortable': false, 'aTargets': [ 'NoSort' ] },
211                     { 'sType': "anti-the", 'aTargets' : [ 'antithe'] }
212                 ]
213             }));
214
215             $(".delete_item").click(function(){
216                 return confirmDelete(_("Are you sure you want to remove this item from the course?"));
217             });
218
219             $("#delete_course").click(function(){
220                 [% SET count = course_reserves.size || 0 %]
221                 [% IF count == 1 %]
222                     return confirmDelete(_("Are you sure you want to delete this course? There is %s attached item.").format([% count | html %]) );
223                 [% ELSIF count > 1 %]
224                     return confirmDelete(_("Are you sure you want to delete this course? There are %s attached items.").format([% count | html %]) );
225                 [% ELSE %]
226                     return confirmDelete(_("Are you sure you want to delete this course?"));
227                 [% END %]
228             });
229             $(".disabled").tooltip().on("click", function(e){
230                 e.preventDefault();
231                 if( $(this).hasClass("checkedout") ){
232                     alert(_("This item cannot be removed. It is checked out"));
233                 }
234             });
235         });
236     </script>
237 [% END %]
238
239 [% INCLUDE 'intranet-bottom.inc' %]