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