View | Details | Raw Unified | Return to bug 28816
Collapse All | Expand All

(-)a/koha-tmpl/intranet-tmpl/prog/css/src/holds.scss (+36 lines)
Line 0 Link Here
1
.hold_title {
2
    border: 1px solid #b9d8d9;
3
    border-bottom-color: darken( #b9d8d9, 15% );
4
    border-top-color: lighten( #b9d8d9, 10% );
5
    border-radius: 5px;
6
    margin: .5em 0;
7
    padding-bottom: 1em;
8
    padding: 1em;
9
}
10
11
.holds_table {
12
    margin-bottom: 1em;
13
    width: 100%;
14
}
15
16
.holds_by_library,
17
.holds_by_itemtype {
18
    margin-bottom: 1em;
19
    margin-left: 1em;
20
21
    &:last-child {
22
        .holds_table {
23
            margin-bottom: 0;
24
        }
25
    }
26
}
27
28
.holds_by_library {
29
    .itemtype_holds {
30
        color: #5D6A8A;
31
    }
32
33
    &:last-child {
34
        margin-bottom: 0;
35
    }
36
}
(-)a/koha-tmpl/intranet-tmpl/prog/css/src/staff-global.scss (+10 lines)
Lines 910-915 fieldset { Link Here
910
                    }
910
                    }
911
                }
911
                }
912
            }
912
            }
913
914
            table {
915
                display: inline-block;
916
                font-size: 105%;
917
                margin: 0;
918
            }
913
        }
919
        }
914
920
915
        p {
921
        p {
Lines 2438-2443 td { Link Here
2438
    font-size: 105%;
2444
    font-size: 105%;
2439
    line-height: 200%;
2445
    line-height: 200%;
2440
2446
2447
    h3 & {
2448
        font-size: 70%;
2449
    }
2450
2441
    a,
2451
    a,
2442
    span {
2452
    span {
2443
        background-color: #E4ECF5;
2453
        background-color: #E4ECF5;
(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/holds_table.inc (-4 / +10 lines)
Lines 1-7 Link Here
1
[% USE Koha %]
1
[% USE Koha %]
2
[% SET hold_cancellation = AuthorisedValues.GetAuthValueDropbox('HOLD_CANCELLATION') %]
2
[% SET hold_cancellation = AuthorisedValues.GetAuthValueDropbox('HOLD_CANCELLATION') %]
3
[% USE AuthorisedValues %]
3
[% USE AuthorisedValues %]
4
<table>
4
<table class="holds_table">
5
    <tr>
5
    <tr>
6
        [% IF ( CAN_user_reserveforothers_modify_holds_priority ) %]
6
        [% IF ( CAN_user_reserveforothers_modify_holds_priority ) %]
7
            <th>Priority</th>
7
            <th>Priority</th>
Lines 196-210 Link Here
196
            [% END %]
196
            [% END %]
197
197
198
            <td>
198
            <td>
199
                <a class="cancel-hold" title="Cancel hold" data-borrowernumber="[% hold.borrowernumber | html %]" data-biblionumber="[% hold.biblionumber | html %]" data-id="[% hold.reserve_id | html %]" href="request.pl?action=cancel&amp;borrowernumber=[% hold.borrowernumber | html %]&amp;biblionumber=[% hold.biblionumber | html %]&amp;reserve_id=[% hold.reserve_id | html %]&amp;date=[% hold.date | html %]">
199
                <a class="btn btn-default btn-xs cancel-hold" data-borrowernumber="[% hold.borrowernumber | html %]" data-biblionumber="[% hold.biblionumber | html %]" data-id="[% hold.reserve_id | html %]" href="request.pl?action=cancel&amp;borrowernumber=[% hold.borrowernumber | html %]&amp;biblionumber=[% hold.biblionumber | html %]&amp;reserve_id=[% hold.reserve_id | html %]&amp;date=[% hold.date | html %]">
200
                    <img src="[% interface | html %]/[% theme | html %]/img/x.png" alt="Cancel" />
200
                    <i class="fa fa-trash" aria-hidden="true"></i> Cancel
201
                </a>
201
                </a>
202
            </td>
202
            </td>
203
203
204
            <td>
204
            <td>
205
                [% IF Koha.Preference('SuspendHoldsIntranet') %]
205
                [% IF Koha.Preference('SuspendHoldsIntranet') %]
206
                    [% UNLESS ( hold.found ) %]
206
                    [% UNLESS ( hold.found ) %]
207
                        <input type="button" value="[% IF ( hold.suspend ) %]Unsuspend[% ELSE %]Suspend[% END %]" onclick="window.location.href='request.pl?action=toggleSuspend&amp;reserve_id=[% hold.reserve_id | html %]&amp;borrowernumber=[% hold.borrowernumber | html %]&amp;biblionumber=[% hold.biblionumber | html %]&amp;date=[% hold.date | html %]&amp;suspend_until=' + $('#suspend_until_[% hold.reserve_id | html %]').val()" />
207
                        <button class="btn btn-default btn-xs" onclick="window.location.href='request.pl?action=toggleSuspend&amp;reserve_id=[% hold.reserve_id | html %]&amp;borrowernumber=[% hold.borrowernumber | html %]&amp;biblionumber=[% hold.biblionumber | html %]&amp;date=[% hold.date | html %]&amp;suspend_until=' + $('#suspend_until_[% hold.reserve_id | html %]').val()">
208
                            [% IF ( hold.suspend ) %]
209
                                <i class="fa fa-play" aria-hidden="true"></i> Unsuspend
210
                            [% ELSE %]
211
                                <i class="fa fa-pause" aria-hidden="true"></i> Suspend
212
                            [% END %]
213
                        </button>
208
214
209
                        [% IF Koha.Preference('AutoResumeSuspendedHolds') %]
215
                        [% IF Koha.Preference('AutoResumeSuspendedHolds') %]
210
                            <label for="suspend_until_[% hold.reserve_id | html %]">[% IF ( hold.suspend ) %] on [% ELSE %] until [% END %]</label>
216
                            <label for="suspend_until_[% hold.reserve_id | html %]">[% IF ( hold.suspend ) %] on [% ELSE %] until [% END %]</label>
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt (-96 / +156 lines)
Lines 10-15 Link Here
10
[% USE AuthorisedValues %]
10
[% USE AuthorisedValues %]
11
[% USE Price %]
11
[% USE Price %]
12
[% USE TablesSettings %]
12
[% USE TablesSettings %]
13
[% PROCESS 'i18n.inc' %]
13
[% SET footerjs = 1 %]
14
[% SET footerjs = 1 %]
14
[% INCLUDE 'doc-head-open.inc' %]
15
[% INCLUDE 'doc-head-open.inc' %]
15
[% UNLESS ( multi_hold ) %]
16
[% UNLESS ( multi_hold ) %]
Lines 18-23 Link Here
18
    <title>Confirm holds &rsaquo; Holds &rsaquo; Circulation &rsaquo; Koha</title>
19
    <title>Confirm holds &rsaquo; Holds &rsaquo; Circulation &rsaquo; Koha</title>
19
[% END %]
20
[% END %]
20
[% INCLUDE 'doc-head-close.inc' %]
21
[% INCLUDE 'doc-head-close.inc' %]
22
[% Asset.css("css/holds.css") | $raw %]
21
</head>
23
</head>
22
24
23
<body id="circ_request" class="catalog">
25
<body id="circ_request" class="catalog">
Lines 54-62 Link Here
54
                <a href="/cgi-bin/koha/catalogue/search.pl">Catalog</a>
56
                <a href="/cgi-bin/koha/catalogue/search.pl">Catalog</a>
55
            </li>
57
            </li>
56
            <li>
58
            <li>
57
                <a href="#" aria-current="page">
59
                [% IF ( patron ) %]
58
                    Confirm holds
60
                    <a href="#" aria-current="page">
59
                </a>
61
                        Place holds
62
                    </a>
63
                [% ELSE %]
64
                    [% IF clubcount %]
65
                        <a href="#" aria-current="page">
66
                            Search patrons or clubs
67
                        </a>
68
                    [% ELSE %]
69
                        <a href="#" aria-current="page">
70
                            Search patrons
71
                        </a>
72
                    [% END %]
73
                [% END %]
60
            </li>
74
            </li>
61
        </ol>
75
        </ol>
62
    </nav>
76
    </nav>
Lines 96-102 Link Here
96
            [% UNLESS ( multi_hold ) %]
110
            [% UNLESS ( multi_hold ) %]
97
                <h1>Place a hold on [% INCLUDE 'biblio-title.inc' link = 1 %]</h1>
111
                <h1>Place a hold on [% INCLUDE 'biblio-title.inc' link = 1 %]</h1>
98
            [% ELSE %]
112
            [% ELSE %]
99
                <h1>Confirm holds</h1>
113
                <h1>
114
                    [% IF ( patron ) %]
115
                        Place holds
116
                    [% ELSE %]
117
                        [% IF clubcount %]
118
                            Search patrons or clubs
119
                        [% ELSE %]
120
                            Search patrons
121
                        [% END %]
122
                    [% END %]
123
                </h1>
100
            [% END %]
124
            [% END %]
101
125
102
            [% UNLESS club OR patron OR patron.borrowernumber OR noitems %]
126
            [% UNLESS club OR patron OR patron.borrowernumber OR noitems %]
Lines 114-123 Link Here
114
                    </div>
138
                    </div>
115
                [% END %]
139
                [% END %]
116
                <fieldset class="brief">
140
                <fieldset class="brief">
117
                    [% IF clubcount %]
141
                    [% UNLESS multi_hold %]
118
                        <label>Search patrons or clubs</label>
142
                        [% IF clubcount %]
119
                    [% ELSE %]
143
                            <label>Search patrons or clubs</label>
120
                        <label>Search patrons</label>
144
                        [% ELSE %]
145
                            <label>Search patrons</label>
146
                        [% END %]
121
                    [% END %]
147
                    [% END %]
122
                    <div id="circ_holds_select" class="toptabs">
148
                    <div id="circ_holds_select" class="toptabs">
123
                        <ul>
149
                        <ul>
Lines 239-245 Link Here
239
                                    [% END %]
265
                                    [% END %]
240
                                </li>
266
                                </li>
241
                            [% END %]
267
                            [% END %]
242
                        </ol>
243
                        [% UNLESS ( multi_hold ) %]
268
                        [% UNLESS ( multi_hold ) %]
244
                            <fieldset class="action">
269
                            <fieldset class="action">
245
                                <input type="submit" value="Place hold" />
270
                                <input type="submit" value="Place hold" />
Lines 893-1004 Link Here
893
918
894
                        [% FOREACH biblioloo IN biblioloop %]
919
                        [% FOREACH biblioloo IN biblioloop %]
895
                            [% IF ( biblioloo.reserveloop ) %]
920
                            [% IF ( biblioloo.reserveloop ) %]
896
                                [% IF ( multi_hold ) %]
921
                                <div class="hold_title" id="hold_title_[% biblioloo.biblionumber | html %]">
897
                                    <h3>
922
                                    [% IF ( multi_hold ) %]
898
                                        <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber | uri %]">
923
                                        <h3>
899
                                            [% biblioloo.title | html %]
924
                                            <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber | uri %]">
900
                                        </a>
925
                                                [% biblioloo.title | html %]
901
                                    </h3>
926
                                            </a> <span class="number_box"><span>[% biblioloo.reserveloop.size | html %] [% tn('Hold', 'Holds', biblioloo.reserveloop.size) | $raw %]</span></span>
902
                                [% END %]
927
                                        </h3>
928
                                    [% END %]
903
929
904
                                [% IF Koha.Preference('HoldsSplitQueue') == 'branch' %]
930
                                    [% IF Koha.Preference('HoldsSplitQueue') == 'branch' %]
905
                                    [% SET branchcodes = [] %]
906
931
907
                                    [% FOREACH h IN biblioloo.reserveloop %]
932
                                        [% SET branchcodes = [] %]
908
                                        [% branchcodes.push( h.branchcode ) %]
909
                                    [% END %]
910
                                    [% branchcodes = branchcodes.unique %]
911
933
912
                                    [% FOREACH b IN branchcodes.sort %]
913
                                        [% SET holds_by_branch = [] %]
914
                                        [% FOREACH h IN biblioloo.reserveloop %]
934
                                        [% FOREACH h IN biblioloo.reserveloop %]
915
                                            [% IF h.branchcode == b %]
935
                                            [% branchcodes.push( h.branchcode ) %]
916
                                                [% holds_by_branch.push( h ) %]
917
                                            [% END %]
918
                                        [% END %]
936
                                        [% END %]
919
                                        <fieldset>
937
                                        [% branchcodes = branchcodes.unique %]
920
                                            <legend>[% Branches.GetName( b ) | html %]</legend>
938
                                        [% IF ( branchcodes.empty ) %]
921
                                            [% INCLUDE holds_table.inc holds=holds_by_branch %]
939
                                            <div class="note">
922
                                        </fieldset>
940
                                                There are no holds on this title.
923
                                    [% END # /FOREACh b %]
941
                                            </div>
924
                                [% ELSIF Koha.Preference('HoldsSplitQueue') == 'itemtype' %]
942
                                        [% ELSE %]
925
                                    [% SET itemtypes = [] %]
943
926
944
                                            [% FOREACH b IN branchcodes.sort %]
927
                                    [% FOREACH h IN biblioloo.reserveloop %]
945
                                                [% SET holds_by_branch = [] %]
928
                                        [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %]
946
                                                [% FOREACH h IN biblioloo.reserveloop %]
929
                                        [% itemtypes.push( hold_itemtype ) %]
947
                                                    [% IF h.branchcode == b %]
930
                                    [% END %]
948
                                                        [% holds_by_branch.push( h ) %]
931
                                    [% itemtypes = itemtypes.unique %]
949
                                                    [% END %]
950
                                                [% END %]
951
                                                <div class="holds_by_library">
952
                                                    <h4>[% Branches.GetName( b ) | html %]</h4>
953
954
                                                    [% INCLUDE holds_table.inc holds=holds_by_branch %]
955
                                                </div>
956
                                            [% END # /FOREACh b %]
957
                                        [% END # /IF ( branchcodes.empty ) %]
958
959
                                    [% ELSIF Koha.Preference('HoldsSplitQueue') == 'itemtype' %]
960
961
                                        [% SET itemtypes = [] %]
932
962
933
                                    [% FOREACH i IN itemtypes.sort %]
934
                                        [% SET holds_by_itemtype = [] %]
935
                                        [% FOREACH h IN biblioloo.reserveloop %]
963
                                        [% FOREACH h IN biblioloo.reserveloop %]
936
                                            [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %]
964
                                            [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %]
937
                                            [% IF hold_itemtype == i %]
965
                                            [% itemtypes.push( hold_itemtype ) %]
938
                                                [% holds_by_itemtype.push( h ) %]
939
                                            [% END %]
940
                                        [% END %]
966
                                        [% END %]
941
967
                                        [% itemtypes = itemtypes.unique %]
942
                                        <fieldset>
968
                                        [% IF ( itemtypes.empty ) %]
943
                                            [% IF i %]
969
                                            <div class="note">
944
                                                <legend>[% ItemTypes.GetDescription( i ) | html %]</legend>
970
                                                There are no holds on this title.
945
                                            [% ELSE %]
971
                                            </div>
946
                                                <legend>Any item type</legend>
972
                                        [% ELSE %]
947
                                            [% END %]
948
                                            [% INCLUDE holds_table.inc holds=holds_by_itemtype %]
949
                                        </fieldset>
950
                                    [% END # /FOREACH i %]
951
                                [% ELSIF Koha.Preference('HoldsSplitQueue') == 'branch_itemtype' %]
952
                                    [% SET branchcodes = [] %]
953
954
                                    [% FOREACH h IN biblioloo.reserveloop %]
955
                                        [% branchcodes.push( h.branchcode ) %]
956
                                    [% END %]
957
                                    [% branchcodes = branchcodes.unique %]
958
959
                                    [% FOREACH b IN branchcodes.sort %]
960
                                        <fieldset>
961
                                            <legend>[% Branches.GetName( b ) | html %]</legend>
962
                                            [% SET holds_by_branch = [] %]
963
                                            [% FOREACH h IN biblioloo.reserveloop %]
964
                                                [% IF h.branchcode == b %]
965
                                                    [% holds_by_branch.push( h ) %]
966
                                                [% END %]
967
                                            [% END %]
968
969
                                            [% SET itemtypes = [] %]
970
                                            [% FOREACH h IN holds_by_branch %]
971
                                                [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %]
972
                                                [% itemtypes.push( hold_itemtype ) %]
973
                                            [% END %]
974
                                            [% itemtypes = itemtypes.unique %]
975
973
976
                                            [% FOREACH i IN itemtypes.sort %]
974
                                            [% FOREACH i IN itemtypes.sort %]
977
                                                [% IF i %]
978
                                                    <h3>[% ItemTypes.GetDescription( i ) | html %]</h3>
979
                                                [% ELSE %]
980
                                                    <h3>Any item type</h3>
981
                                                [% END %]
982
983
                                                [% SET holds_by_itemtype = [] %]
975
                                                [% SET holds_by_itemtype = [] %]
984
                                                [% FOREACH h IN holds_by_branch %]
976
                                                [% FOREACH h IN biblioloo.reserveloop %]
985
                                                    [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %]
977
                                                    [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %]
986
                                                    [% IF hold_itemtype == i %]
978
                                                    [% IF hold_itemtype == i %]
987
                                                        [% holds_by_itemtype.push( h ) %]
979
                                                        [% holds_by_itemtype.push( h ) %]
988
                                                    [% END %]
980
                                                    [% END %]
989
                                                [% END %]
981
                                                [% END %]
990
                                                [% INCLUDE holds_table.inc holds=holds_by_itemtype %]
991
                                            [% END %]
992
                                        </fieldset>
993
                                    [% END # /FOREACH b %]
994
                                [% ELSE %]
995
                                    [% INCLUDE holds_table.inc holds=biblioloo.reserveloop %]
996
                                [% END # /IF HoldsSplitQueue %]
997
982
983
                                                <div class="holds_by_itemtype">
984
                                                    [% IF i %]
985
                                                        <h4>[% ItemTypes.GetDescription( i ) | html %]</h4>
986
                                                    [% ELSE %]
987
                                                        <h4>Any item type</h4>
988
                                                    [% END %]
989
                                                    [% INCLUDE holds_table.inc holds=holds_by_itemtype %]
990
                                                </div>
991
                                            [% END # /FOREACH i %]
992
                                        [% END # /IF ( itemtypes.empty ) %]
993
994
                                    [% ELSIF Koha.Preference('HoldsSplitQueue') == 'branch_itemtype' %]
995
                                        [% SET branchcodes = [] %]
996
997
                                        [% FOREACH h IN biblioloo.reserveloop %]
998
                                            [% branchcodes.push( h.branchcode ) %]
999
                                        [% END %]
1000
                                        [% branchcodes = branchcodes.unique %]
1001
                                        [% IF ( branchcodes.empty ) %]
1002
                                            <div class="note">
1003
                                                There are no holds on this title.
1004
                                            </div>
1005
                                        [% ELSE %]
1006
1007
                                            [% FOREACH b IN branchcodes.sort %]
1008
                                                <div class="holds_by_library">
1009
                                                    <h4 class="library_holds">[% Branches.GetName( b ) | html %]</h4>
1010
                                                    [% SET holds_by_branch = [] %]
1011
                                                    [% FOREACH h IN biblioloo.reserveloop %]
1012
                                                        [% IF h.branchcode == b %]
1013
                                                            [% holds_by_branch.push( h ) %]
1014
                                                        [% END %]
1015
                                                    [% END %]
1016
1017
                                                    [% SET itemtypes = [] %]
1018
                                                    [% FOREACH h IN holds_by_branch %]
1019
                                                        [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %]
1020
                                                        [% itemtypes.push( hold_itemtype ) %]
1021
                                                    [% END %]
1022
                                                    [% itemtypes = itemtypes.unique %]
1023
1024
                                                    [% FOREACH i IN itemtypes.sort %]
1025
                                                        <div class="holds_by_itemtype">
1026
                                                            <h5 class="itemtype_holds">
1027
                                                                [% IF i %]
1028
                                                                    [% ItemTypes.GetDescription( i ) | html %]
1029
                                                                [% ELSE %]
1030
                                                                    Any item type
1031
                                                                [% END %]
1032
                                                            </h5>
1033
1034
                                                            [% SET holds_by_itemtype = [] %]
1035
                                                            [% FOREACH h IN holds_by_branch %]
1036
                                                                [% SET hold_itemtype = h.object.item.effective_itemtype || h.itemtype %]
1037
                                                                [% IF hold_itemtype == i %]
1038
                                                                    [% holds_by_itemtype.push( h ) %]
1039
                                                                [% END %]
1040
                                                            [% END %]
1041
                                                            [% INCLUDE holds_table.inc holds=holds_by_itemtype %]
1042
                                                        </div> <!-- /.holds_by_itemtype -->
1043
                                                    [% END %]
1044
                                                </div> <!-- /.holds_by_library -->
1045
                                            [% END # /FOREACH b %]
1046
                                        [% END # /IF ( branchcodes.empty ) %]
1047
1048
                                    [% ELSE %]
1049
1050
                                        [% IF ( biblioloo.reserveloop.size ) %]
1051
                                            [% INCLUDE holds_table.inc holds=biblioloo.reserveloop %]
1052
                                        [% ELSE %]
1053
                                            <div class="note">
1054
                                                There are no holds on this title.
1055
                                            </div>
1056
                                        [% END %]
1057
1058
                                    [% END # /IF HoldsSplitQueue %]
1059
                                </div> <!-- /hold_title -->
998
                            [% END # /IF biblioloo.reserveloop %]
1060
                            [% END # /IF biblioloo.reserveloop %]
999
                        [% END # FOREACH biblioloo %]
1061
                        [% END # FOREACH biblioloo %]
1000
                        </fieldset> <!-- /.rows -->
1062
                    </form> <!-- /#existing_holds -->
1001
                    </form> <!-- /name=TTime -->
1002
                [% END # IF reserveloop %]
1063
                [% END # IF reserveloop %]
1003
            [% END # UNLESS patron %]
1064
            [% END # UNLESS patron %]
1004
1065
1005
- 

Return to bug 28816