Tomas Cohen Arazi
9bf68c8c3e
This patch adds the SCI module, and adapts C4::Auth to know about it. The current behaviour is: - Requires admin user initialization/login - Uses the logged users' library - A form allows to scan multiple barcodes - A button sends the barcode list to the controller to batch perform the checkins - Successful and failed checkins are sent to the template - Results are displayed - Logout link To test: - Apply this patches - Make sure you upgrade: $ kshell k$ perl installer/data/mysql/updatedatabase.pl - Have 'SelfCheckInModule' disabled - Go to http://kohadev.myDNSname.org:8080/cgi-bin/koha/sci/sci-main.pl [1] => SUCCESS: You are rejected because the feature is disabled - Enable 'SelfCheckInModule' - Go to the previous URL => SUCCESS: You are required to login - Login with a user WITHOUT self_checkout permissions => SUCCESS: You are not allowed to log into the Self check-in module. - Login with a user WITH self_checkour permissions => SUCCESS: You gain access, and are presented the UI - Go through the several options => SUCCESS: All works as it should - Click the 'Help' link => SUCCESS: A help text is displayed on a modal - Sign off :-D - Bonus points: $ kshell k$ qa -c 2 -v 2 => SUCCESS: All tests green [1] Adjust to your dev's OPAC setup Signed-off-by: David Bourgault <david.bourgault@inlibro.com> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com> Signed-off-by: Josef Moravec <josef.moravec@gmail.com> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
208 lines
No EOL
6.3 KiB
CSS
208 lines
No EOL
6.3 KiB
CSS
body {
|
|
background-color: #EAEAE6;
|
|
}
|
|
|
|
a, a:visited,
|
|
.ui-widget-content a,
|
|
.ui-widget-content a:visited {
|
|
color: #0076B2;
|
|
}
|
|
|
|
a.title {
|
|
font-weight: bold;
|
|
}
|
|
|
|
h1 {
|
|
font-size : 140%;
|
|
line-height: 150%;
|
|
}
|
|
h2 {
|
|
|
|
font-size : 130%;
|
|
line-height: 150%;
|
|
}
|
|
h3 {
|
|
|
|
font-size : 120%;
|
|
line-height: 150%;
|
|
}
|
|
h4 {
|
|
|
|
font-size : 110%;
|
|
}
|
|
h5 {
|
|
|
|
font-size : 100%;
|
|
}
|
|
caption {
|
|
font-size: 120%;
|
|
font-weight: bold;
|
|
margin : .5em 0;
|
|
text-align: left;
|
|
}
|
|
|
|
input,
|
|
textarea {
|
|
width: auto;
|
|
}
|
|
|
|
legend {
|
|
font-size: 110%;
|
|
font-weight: bold;
|
|
}
|
|
th {
|
|
background-color: #ECEDE6;
|
|
}
|
|
.main {
|
|
background-color: #FFF;
|
|
border: 1px solid #D2D2CF;
|
|
border-radius: 8px 8px 8px 8px;
|
|
margin: 0.5em 20px;
|
|
padding: 0.8em 0;
|
|
-webkit-box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, .2);
|
|
box-shadow: 0px 1px 1px 0px rgba(0, 0, 0, .2);
|
|
}
|
|
.navbar-inverse .brand, .navbar-inverse .nav > li > a {
|
|
color: #9FE1FF;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.table-striped tbody > tr:nth-child(odd) > td,
|
|
.table-striped tbody > tr:nth-child(odd) > th {
|
|
background-color: #F4F4F4;
|
|
}
|
|
/* Redefine a new style for Bootstrap's class "close" since we use that already */
|
|
/* Use <a class="closebtn" href="#">×</a> */
|
|
.alert .closebtn{position:relative;top:-2px;right:-21px;line-height:20px;}
|
|
.modal-header .closebtn{margin-top:2px;}
|
|
.closebtn{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000000;text-shadow:0 1px 0 #ffffff;opacity:0.2;filter:alpha(opacity=20);}.closebtn:hover{color:#000000;text-decoration:none;cursor:pointer;opacity:0.4;filter:alpha(opacity=40);}
|
|
button.closebtn{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none;}
|
|
.btn-group label,
|
|
.btn-group select {
|
|
font-size: 13px;
|
|
}
|
|
|
|
/* Override Bootstrap alert */
|
|
.alert {
|
|
background: #fffbe5; /* Old browsers */
|
|
background: -moz-linear-gradient(top, #fffbe5 0%, #fff0b2 9%, #fff1a8 89%, #f7e665 100%); /* FF3.6+ */
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fffbe5), color-stop(9%,#fff0b2), color-stop(89%,#fff1a8), color-stop(100%,#f7e665)); /* Chrome,Safari4+ */
|
|
background: -webkit-linear-gradient(top, #fffbe5 0%,#fff0b2 9%,#fff1a8 89%,#f7e665 100%); /* Chrome10+,Safari5.1+ */
|
|
background: -o-linear-gradient(top, #fffbe5 0%,#fff0b2 9%,#fff1a8 89%,#f7e665 100%); /* Opera 11.10+ */
|
|
background: -ms-linear-gradient(top, #fffbe5 0%,#fff0b2 9%,#fff1a8 89%,#f7e665 100%); /* IE10+ */
|
|
background: linear-gradient(to bottom, #fffbe5 0%,#fff0b2 9%,#fff1a8 89%,#f7e665 100%); /* W3C */
|
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fffbe5', endColorstr='#f7e665',GradientType=0 ); /* IE6-9 */
|
|
border-color : #D6C43B;
|
|
color: #333;
|
|
}
|
|
|
|
/* Override Bootstrap alert.alert-info */
|
|
.alert-info {
|
|
background: #f4f6fa; /* Old browsers */
|
|
background: -moz-linear-gradient(top, #f4f6fa 0%, #eaeef5 4%, #e8edf6 96%, #cddbf2 100%); /* FF3.6+ */
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f4f6fa), color-stop(4%,#eaeef5), color-stop(96%,#e8edf6), color-stop(100%,#cddbf2)); /* Chrome,Safari4+ */
|
|
background: -webkit-linear-gradient(top, #f4f6fa 0%,#eaeef5 4%,#e8edf6 96%,#cddbf2 100%); /* Chrome10+,Safari5.1+ */
|
|
background: -o-linear-gradient(top, #f4f6fa 0%,#eaeef5 4%,#e8edf6 96%,#cddbf2 100%); /* Opera 11.10+ */
|
|
background: -ms-linear-gradient(top, #f4f6fa 0%,#eaeef5 4%,#e8edf6 96%,#cddbf2 100%); /* IE10+ */
|
|
background: linear-gradient(to bottom, #f4f6fa 0%,#eaeef5 4%,#e8edf6 96%,#cddbf2 100%); /* W3C */
|
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f6fa', endColorstr='#cddbf2',GradientType=0 ); /* IE6-9 */
|
|
border-color : #C5D1E5;
|
|
color: #333;
|
|
}
|
|
|
|
/* Override Bootstrap alert.alert-success */
|
|
.alert-success {
|
|
background: #f8ffe8; /* Old browsers */
|
|
background: -moz-linear-gradient(top, #f8ffe8 0%, #e3f5ab 4%, #dcf48d 98%, #9ebf28 100%); /* FF3.6+ */
|
|
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#f8ffe8), color-stop(4%,#e3f5ab), color-stop(98%,#dcf48d), color-stop(100%,#9ebf28)); /* Chrome,Safari4+ */
|
|
background: -webkit-linear-gradient(top, #f8ffe8 0%,#e3f5ab 4%,#dcf48d 98%,#9ebf28 100%); /* Chrome10+,Safari5.1+ */
|
|
background: -o-linear-gradient(top, #f8ffe8 0%,#e3f5ab 4%,#dcf48d 98%,#9ebf28 100%); /* Opera 11.10+ */
|
|
background: -ms-linear-gradient(top, #f8ffe8 0%,#e3f5ab 4%,#dcf48d 98%,#9ebf28 100%); /* IE10+ */
|
|
background: linear-gradient(to bottom, #f8ffe8 0%,#e3f5ab 4%,#dcf48d 98%,#9ebf28 100%); /* W3C */
|
|
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f8ffe8', endColorstr='#9ebf28',GradientType=0 ); /* IE6-9 */
|
|
border-color : #9FBA35;
|
|
color: #333;
|
|
}
|
|
#members p {
|
|
color : #EEE;
|
|
}
|
|
|
|
#members a {
|
|
color: #A6D8ED;
|
|
font-weight: bold;
|
|
}
|
|
|
|
#members a.logout {
|
|
color : #E8583C;
|
|
padding : 0 .3em 0 .3em;
|
|
}
|
|
|
|
.inline {
|
|
display: inline;
|
|
}
|
|
|
|
i.icon {
|
|
background-repeat: no-repeat;
|
|
display: inline-block;
|
|
height: 16px;
|
|
line-height: 16px;
|
|
margin-right: 3px;
|
|
vertical-align: text-top;
|
|
width: 16px;
|
|
}
|
|
|
|
i.back {
|
|
background : transparent url("../lib/famfamfam/silk/arrow_left.png") no-repeat 0 0;
|
|
}
|
|
|
|
i.return {
|
|
background : transparent url("../lib/famfamfam/silk/book_previous.png") no-repeat 0 0;
|
|
}
|
|
|
|
i.renew {
|
|
background : transparent url("../lib/famfamfam/silk/arrow_refresh.png") no-repeat 0 0;
|
|
}
|
|
|
|
i.cancel {
|
|
background : transparent url("../lib/famfamfam/silk/cancel.png") no-repeat 0 0;
|
|
}
|
|
|
|
i.finish {
|
|
background : transparent url("../lib/famfamfam/silk/stop.png") no-repeat 0 0;
|
|
}
|
|
|
|
i.help {
|
|
background : transparent url("../lib/famfamfam/silk/help.png") no-repeat 0 0;
|
|
}
|
|
|
|
.table .sorting_asc {
|
|
padding-right: 19px;
|
|
background: url("../images/asc.gif") no-repeat scroll right center #EEEEEE;
|
|
}
|
|
.table .sorting_desc {
|
|
padding-right: 19px;
|
|
background: url("../images/desc.gif") no-repeat scroll right center #EEEEEE;
|
|
}
|
|
.table .sorting {
|
|
padding-right: 19px;
|
|
background: url("../images/ascdesc.gif") no-repeat scroll right center #EEEEEE;
|
|
}
|
|
.table .nosort,
|
|
.table .nosort.sorting_asc,
|
|
.table .nosort.sorting_desc,
|
|
.table .nosort.sorting {
|
|
padding-right: 19px;
|
|
background: #EEEEEE none;
|
|
}
|
|
|
|
#sci_logout {
|
|
color: #E8583C;
|
|
}
|
|
|
|
#sci_checkin_button, #sci_refresh_button, #sci_append_button {
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
#sci_refresh_button {
|
|
color: rgb(51, 51, 51);
|
|
} |