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

(-)a/koha-tmpl/opac-tmpl/prog/en/css/colors.css (+748 lines)
Line 0 Link Here
1
/* ================================
2
 * !Main
3
 * ================================*/
4
5
div.clear {
6
	clear: both;
7
}
8
9
body {
10
    min-width:1000px;
11
    font-family: "Lucida Grande", Arial;
12
    padding:0;
13
    background-color : #eaeae6;
14
}
15
16
#container {
17
    background: #fff;
18
    border:1px solid #d2d2cf;
19
    -webkit-border-radius: 8px;
20
	-moz-border-radius: 8px;
21
	border-radius: 8px; 
22
	margin:0 20px;
23
	padding: 10px;
24
    overflow: hidden;
25
}
26
27
a:link,
28
a:visited {
29
	color: #007fae;
30
}
31
	a:hover {
32
		color: #00a5e2;
33
	}
34
35
#container #ctn_lt {
36
    padding-left: 15px;
37
}
38
39
#opacnav {
40
	width:240px;
41
}
42
43
#opacmainuserblock, #news {
44
	margin-left:7em;
45
}
46
47
/* ================================
48
 * !Header
49
 * ================================*/
50
 
51
#header-wrapper {
52
	background: none;
53
}
54
55
#opac-main-search {
56
	background: none;
57
	border: none;
58
	display: table;
59
	margin: 40px 0 0 !important;
60
	padding: 0.7em 0 0 0.5em;
61
	width: 100%;
62
}
63
*:first-child+html #opac-main-search { 
64
	display: block;
65
}
66
	#opac-main-search a.logo {
67
		display: table-cell;
68
	    padding: 8px 0 0 13px;
69
	    vertical-align: top;
70
	    width: 145px;
71
	}
72
	
73
	#opac-main-search #fluid {
74
		display: table-cell;
75
		margin: 0;
76
		padding: 0;
77
		position: relative;
78
		vertical-align: top;
79
	}
80
	
81
	#opac-main-search div#libraryname {
82
		display: table-cell;
83
		float: none;
84
		vertical-align: top;
85
		overflow: hidden;
86
		text-align: center;
87
		padding: 0 11px 17px;
88
	    width: 128px;
89
	}
90
	
91
	/* IE 7 Hack */
92
	*:first-child+html #opac-main-search a.logo,
93
	*:first-child+html #opac-main-search #fluid,
94
	*:first-child+html #opac-main-search div#libraryname { 
95
		display: block;
96
		float: left;
97
		height: 100px;
98
	}
99
	*:first-child+html #opac-main-search #fluid { 
100
		width: 800px;
101
	}
102
		#opac-main-search div#libraryname h1 {
103
			background-repeat: no-repeat;
104
			background-position: 0 0;
105
			display: block;
106
			margin: 0;
107
			position: relative;
108
		}
109
			#opac-main-search div#libraryname h1 img {
110
				display: block;
111
				margin: 0 0 7px;
112
				max-height: 80px;
113
			}
114
		
115
			#opac-main-search div#libraryname span#official-website {
116
				background: url("../../images/arrow-right-grey-logo.png") no-repeat scroll 0 50%;
117
				font: 11px/14px Arial;
118
				padding: 0 0 0 10px;
119
			}	
120
				#opac-main-search div#libraryname span#official-website a {
121
					color: #696965;
122
					text-decoration: none;
123
				}
124
					#opac-main-search div#libraryname span#official-website a:hover {
125
						text-decoration: underline;
126
					}
127
128
129
/* search form */
130
131
form#searchform {
132
	background: #a7a7a2 url("../../images/bg-search-bar.png") repeat-x scroll 0 0;
133
	-webkit-border-radius: 8px;
134
	-moz-border-radius: 8px;
135
	border-radius: 8px; 
136
	display: block;
137
	padding: 12px 10px;
138
	position: relative;
139
}
140
141
	form#searchform label {
142
		display: none;
143
	}
144
	
145
	form.single-library .input-wrapper {
146
		margin: 0 237px 0 0;
147
	}
148
	form.multi-libraries .input-wrapper {
149
		margin: 0 416px 0 0;
150
	}
151
		form#searchform .input-wrapper input[type="text"] {
152
		background: #fff;
153
		border: 1px solid #A0A09A;
154
		-webkit-border-radius: 8px;
155
		-moz-border-radius: 8px;
156
		border-radius: 8px;
157
		color: #868684;
158
		font-size: 12px !important;
159
		padding: 8px 8px 9px;
160
		width: 100% !important;
161
	}
162
	
163
	form#searchform select {
164
		left: -9999em;
165
		position: absolute;
166
	}
167
	
168
	form.multi-libraries #filters .jqTransformSelectWrapper {
169
	    position: absolute;
170
	    right: 229px;
171
    	top: 12px;
172
	}
173
	
174
	form.single-library  #filters .jqTransformSelectWrapper,
175
	form.multi-libraries #libraries .jqTransformSelectWrapper {
176
		position: absolute;
177
		right: 50px;
178
		top: 12px;
179
	}
180
	
181
	form#searchform input[type="submit"] {
182
		background: #619bb5 url("../../images/btn-search-bar.png") no-repeat 50% 50%;
183
		border: 1px solid #adadaa;
184
    	-webkit-border-radius: 5px;
185
		-moz-border-radius: 5px;
186
		border-radius: 5px;
187
		color: #fff;
188
    	cursor: pointer;
189
    	font-size: 0;
190
	    font-weight: normal;
191
	    height: 33px;
192
	    margin-left: 4px;
193
	    margin-top: 0;
194
	    padding: 0;
195
	    position: absolute;
196
	    right: 10px;
197
	    top: 12px;
198
	    width: 34px;
199
	}
200
	
201
	#moresearches {
202
		margin: 7px 10px 0;
203
	}
204
		#moresearches a:link, 
205
		#moresearches a:visited {
206
			background: url("../../images/arrow-right-grey-11x6.png") no-repeat scroll left center transparent;
207
			color: #007fae;
208
		    font-size: 12px;
209
		    font-weight: normal;
210
		    margin-right: 12px;
211
		    padding-left: 12px;
212
		    text-decoration: none;
213
		}
214
			#moresearches a:hover {
215
				color: #00a5e2;
216
			}
217
			
218
		#moresearches span.pipe {
219
			display: none;
220
		}
221
222
.transparent {
223
	zoom: 1;
224
	filter: alpha(opacity=50);
225
	opacity: 0.5;
226
}
227
228
div#top-bar {
229
    z-index: 9999999;
230
    position: fixed;
231
    top:0;
232
    left:0;
233
    margin: 0;
234
    padding: 0;
235
    width: 100%;
236
    height: 29px;
237
    background: #454543 url("../../images/img_bg_header.png") repeat-x 0 0;
238
}
239
240
241
ul#menu-left {
242
    margin: 0 0 0 30px;
243
    padding: 0;
244
    display: block;
245
    float: left;
246
    width: auto;
247
    height: 29px;
248
}
249
    ul#menu-left li {
250
        margin: 0;
251
        padding: 0 8px 0 10px;
252
        float: left;
253
        height: 29px;
254
        list-style-type: none;
255
        background: url("../../images/img_sep_header.png") no-repeat left top;
256
    }
257
    ul#menu-left li#listsmenulink {
258
        padding: 1px 0 0 12px;
259
        border: none;
260
    }
261
        ul#menu-left #listsmenulink:hover {
262
            background: url("../../images/img_sep_header.png") no-repeat left top !important;
263
        }
264
        ul#menu-left li a#cartmenulink,
265
        ul#menu-left li#listsmenulink a {
266
            margin: 2px 0 0 0;
267
            color: #9EE1FF;
268
            font-family: Arial;
269
            font-size: 13px;
270
            font-weight: bold;
271
            text-decoration: none;
272
            border: none;
273
        }
274
            ul#menu-left li a#cartmenulink:hover,
275
            ul#menu-left li#listsmenulink a:hover {
276
                color: #9EE1FF;
277
            }
278
            
279
          ul#menu-left li#listsmenulink a {
280
          	padding: 2px 0 0;
281
          }
282
283
    ul#menu-left li a#cartmenulink span,
284
    ul#menu-left li#listsmenulink a span {
285
        margin: 0;
286
        padding: 0;
287
    }
288
    ul#menu-left li a#cartmenulink span#basketcount {
289
        margin: 0 0 0 5px;
290
        padding: 0;
291
        background: none;
292
    }
293
        ul#menu-left li a#cartmenulink span img,
294
        ul#menu-left li#listsmenulink a span img {
295
            display: none;
296
        }
297
298
    ul#menu-left li a#cartmenulink {
299
        padding: 0 0 0 30px;
300
        background: url("../../images/img_toolbar-button-cart.png") no-repeat left center;
301
    }
302
    ul#menu-left li#listsmenulink a {
303
        padding: 0 0 0 20px;
304
        background: url("../../images/img_toolbar-button-lists.png") no-repeat left center;
305
    }
306
307
div#cartDetails,
308
div#listsmenu {
309
    z-index: 9999999;
310
    top: 29px !important;
311
    margin: 0;
312
    padding: 10px !important;
313
    background: #649EB8;
314
    border-left: 1px solid #A0A09A !important;
315
    border-right: 1px solid #A0A09A !important;
316
    border-bottom: 1px solid #A0A09A !important;
317
    -webkit-border-radius: 0 0 7px 7px;
318
    -moz-border-radius: 0 0 7px 7px;
319
    border-radius: 0 0 7px 7px;
320
}
321
div#cartDetails {
322
    margin-left: -9px;
323
}
324
325
326
#members {
327
    background: none;
328
    margin: 0;
329
    padding: 0;
330
    float: right;
331
}
332
	#members ul {
333
		margin: 0;
334
	    margin-right: 20px;
335
	    float: right;
336
	}
337
	    #members li {
338
	        background: none;
339
	        margin:0;
340
	        float: left;
341
	        border-right: none;
342
	    }
343
			#members ul li a {
344
			    background: url("../../images/img_sep_header.png") no-repeat scroll right top transparent;
345
			    color: #9EE1FF;
346
			    display: block;
347
			    font-family: Arial;
348
			    font-size: 13px;
349
			    height: 22px;
350
			    padding: 7px 14px 0 3px;
351
			    text-decoration: none;
352
			}
353
	
354
	        #members li span.members {
355
	            color:#fff;
356
	            padding:7px 14px 0 9px;
357
	            float: left;
358
	            background: url(../../images/img_sep_header.png) no-repeat right top;
359
	            height: 22px;
360
	        }
361
	
362
	            #members li span.members a {
363
	                display:inline;
364
	                background: none;
365
	                padding: 0;
366
	            }
367
	
368
	        #members li a {
369
	            padding:7px 14px 0 9px;
370
	        }
371
	
372
	        #members li a.logout {
373
	            color:#ff825b;
374
	            font-weight: normal;
375
	            padding:7px 14px 0 9px;
376
	        }
377
378
div#listsmenu {
379
    margin-left: 1px;
380
}
381
    div#listsmenu h4 {
382
        margin: 0 !important;
383
        color: #fff;
384
    }
385
    div#listsmenu ul li {
386
        margin: 0 !important;
387
        padding: 0 !important;
388
        height: auto !important;
389
        background: none !important;
390
    }
391
        div#listsmenu ul li {
392
            float: none !important;
393
            margin: 0 !important;
394
            padding: 0 !important;
395
            list-style-type: none !important;
396
            background: none !important;
397
        }
398
    div#listsmenu a {
399
        margin: 0 !important;
400
        padding: 0 !important;
401
        color: #fff !important;
402
        font-weight: normal  !important;
403
        text-decoration: none;
404
        background: none !important;
405
    }
406
        div#listsmenu a:hover {
407
            text-decoration: underline;
408
        }
409
410
#cartDetails,#cartUpdate,#holdDetails,#listsDetails {
411
    background-color : #FFF;
412
    border: 1px solid #739acf;
413
    color : #fff;
414
    display : none;
415
    margin : 0;
416
    padding : 10px;
417
    text-align : center;
418
    width : 180px;
419
    box-shadow: 1px 1px 3px #666;
420
    -moz-box-shadow: 1px 1px 3px #666;
421
    -webkit-box-shadow: 1px 1px 3px #666;
422
423
}
424
425
#cartmenulink, #listsmenulink {
426
    display : block;
427
    position : relative;
428
    background : #aaa;
429
    padding : 5px;
430
    float : left;
431
    color : #333;
432
    text-decoration : none;
433
    cursor : pointer;
434
}
435
436
#cartmenulink {
437
    background : #98CB58;
438
    color : #336600;
439
    font-size : 105%;
440
}
441
442
#cartmenulink[class], #listsmenulink[class] {
443
    background-image : ;
444
    background-position : ;
445
}
446
447
#cartmenulink span, #listsmenulink span {
448
    padding : 0 0 5px 10px;
449
    background-position:;
450
    left:;
451
    margin-bottom:;
452
}
453
454
#cartmenulink *, #listsmenulink * {
455
    background-image : none;
456
}
457
458
#cartmenulink span#basketcount span {
459
    color:#fff;
460
    margin:0 0 0 5px;
461
    padding:0;
462
    background:none;
463
    font-size:15px;
464
    font-weight:bold;
465
}
466
467
468
/* ================================
469
 * !jQtransform
470
 * ================================*/
471
472
.jqTransformSelectWrapper {
473
	    background: none repeat scroll 0 0 #FFFFFF;
474
	    border: 1px solid #A0A09A;
475
	    border-radius: 8px 8px 8px 8px;
476
	    color: #252525;
477
	    font-family: Arial,Helvetica,sans-serif;
478
	    font-size: 13px;
479
	    float: left;
480
	    margin-left: 5px;
481
	    padding: 0;
482
	    position: relative;
483
	    width: 171px !important;
484
	}
485
		.jqTransformSelectWrapper div {
486
		    height: 19px;
487
		    padding: 9px 5px 4px;
488
		    text-indent: 4px;
489
		}
490
			.jqTransformSelectWrapper div span {
491
			    cursor: pointer;
492
			    float: left;
493
			}
494
			
495
			.jqTransformSelectWrapper div a {
496
			    background: url("../../images/img_select-puce.png") no-repeat scroll 0 50% transparent;
497
			    display: block;
498
			    height: 26px;
499
			    outline: medium none;
500
			    position: absolute;
501
			    right: 3px;
502
			    top: 3px;
503
			    width: 25px;
504
			}
505
			
506
	.jqTransformSelectWrapper ul {
507
	    background: none repeat scroll 0 0 #FFFFFF;
508
	    border: 1px solid #A0A09A;
509
	    -webkit-border-radius: 7px;
510
		-moz-border-radius: 7px;
511
		border-radius: 7px;
512
	    height: auto !important;
513
	    padding: 5px 0 !important;
514
	    position: absolute;
515
	    width: 100% !important;
516
	}
517
		.jqTransformSelectWrapper ul li {
518
		    background: none repeat scroll 0 0 transparent !important;
519
		    list-style: none outside none !important;
520
		    margin: 0 !important;
521
		    padding: 0 5px !important;
522
		}
523
			.jqTransformSelectWrapper ul li a {
524
			    color: #252525 !important;
525
			    display: block;
526
			    font-family: Arial,Helvetica,sans-serif;
527
			    font-size: 13px;
528
			    font-weight: normal;
529
			    padding-left: 5px;
530
			    text-decoration: none;
531
			}
532
				.jqTransformSelectWrapper ul li a:hover {
533
				    background: none repeat scroll 0 0 #F5F5F4;
534
				}
535
536
537
/* ================================
538
 * !Footer
539
 * ================================*/
540
541
#main_footer {
542
    padding:0 30px;
543
    font-family:"Lucida Grande", Arial;
544
    margin-bottom: 65px;
545
}
546
547
    #main_footer .colleft {
548
        float:left;
549
        margin-top:8px;
550
    }
551
552
        #main_footer .colleft ul {
553
            padding:0;
554
        }
555
556
            #main_footer .colleft li {
557
                display:inline;
558
                list-style:none;
559
            }
560
561
            #main_footer .colleft li.first {
562
                background:url(../../images/img_sep_footer.png) no-repeat right top;
563
                padding-right: 8px;
564
                margin-right: 10px;
565
            }
566
567
                #main_footer .colleft li a {
568
                    color:#4f91b0;
569
                    text-decoration:none;
570
                    font-size:14px;
571
                    font-weight: normal;
572
                }
573
	                #main_footer .colleft li a:hover {
574
	                    color:#00a5e2;
575
	                }
576
577
        #main_footer .colleft .copy {
578
            font-size:12px;
579
            color:#5f5f5f;
580
            margin-top:10px;
581
        }
582
583
    #main_footer .colright {
584
        float:right;
585
        width: auto;
586
    }
587
588
        #main_footer .colright .koha {
589
            float:left;
590
            background: url(../../images/img_logo_koha.jpg) no-repeat bottom right;
591
            width: 168px;
592
            height: 40px;
593
        }
594
            #main_footer .colright .koha a {
595
                display:block;
596
                padding:0;
597
                width: 168px;
598
                height: 40px;
599
                color:#5f5f5f;
600
                text-decoration: none;
601
                font-weight: normal;
602
            }
603
604
div#changelanguage {
605
    padding-bottom: 2em;
606
}
607
608
609
/* ================================
610
 * !Page : Search results
611
 * ================================*/
612
613
/* breacrumbs */
614
615
body#results #breadcrumbs {
616
	margin: -1px 0 17px 2px;
617
	padding: 0;
618
}
619
	body#results #breadcrumbs p {
620
		font: normal 11px/11px Arial;
621
		margin: 0;
622
		padding: 0;
623
	}
624
		body#results #breadcrumbs p a {
625
			color: #007fae;
626
			display: inline;
627
			text-decoration: none;
628
		}
629
			body#results #breadcrumbs p a:hover {
630
				color: #00a5e2;
631
			}
632
			
633
			body#results #breadcrumbs p a img {
634
				vertical-align: middle;
635
			}
636
		
637
		body#results #breadcrumbs p .rsaquo {
638
			color: #8d8d89;
639
			font-size: 20px;
640
			line-height: 11px;
641
    		vertical-align: sub;
642
		}
643
		
644
		/* IE7 Hack */
645
		*:first-child+html body#results #breadcrumbs p span {
646
			display: inline;
647
			font-size: 11px;
648
			font-weight: bold;
649
			vertical-align: top;
650
		}
651
		
652
		body#results #breadcrumbs p strong {
653
			color: #5f5f5f;
654
		}
655
656
.nb_results {
657
	font-weight: bold;
658
}
659
660
/* search-facets */
661
662
body#results #search-facets {
663
	border: none;
664
}
665
	body#results #search-facets h4 {
666
		background: none;
667
	    border-bottom: 1px solid #E8E8E8;
668
	    font-size: 90%;
669
		margin: 0 9px 10px 0;
670
	    padding: 13px 0 7px;
671
	    text-align: left;
672
	}
673
	
674
	body#results #search-facets a {
675
		color: #007fae;
676
	}
677
		body#results #search-facets a:hover {
678
			color: #00a5e2;
679
		}
680
	
681
682
/* userresults */
683
	
684
body#results div#userresults {
685
	border-left: 1px solid #c8c8c4;
686
	padding: 0 20px 0;
687
}
688
689
690
/* searchresults */
691
692
body#results tr {
693
	border: none;
694
}
695
	body#results tr td {
696
		background: #fff url("../../images/bg-result-light.png") repeat-x 0 0;
697
		border-top: 1px solid #c8c8c4;
698
		border-bottom: none;
699
		height: 115px;
700
	    padding-top: 15px;
701
	}
702
703
body#results .searchresults td.resultscontrol {
704
	background: #ddddda url("../../images/bg-results-control.png") repeat-x 0 100%;
705
	-moz-border-radius-topleft: 6px;
706
	-moz-border-radius-topright: 6px;
707
	-moz-border-radius-bottomright: 0px;
708
	-moz-border-radius-bottomleft: 0px;
709
	-webkit-border-radius: 6px 6px 0px 0px;
710
	border-radius: 6px 6px 0px 0px;
711
	border: none;
712
	border-bottom: 1px solid #b0b0ae;
713
	padding: 2px 7px 6px;
714
	height: auto;
715
}
716
717
718
/* Navigation */
719
720
body#results a.nav:link, div.pages a:link {
721
    background-color: #EEEEEE;
722
    border: 1px solid #CCCC99;
723
    color: #007FAE;
724
    font-weight: bold;
725
    padding: 1px 5px;
726
    text-decoration: none;
727
}
728
	body#results a.nav:hover, div.pages a:hover {
729
	    color: #00A5E2;
730
	}
731
	
732
	
733
	
734
/* ================================
735
 * !Page : Opac detail
736
 * ================================*/
737
738
body#opac-detail .nav_results ul.pg_menu {
739
	display: table;
740
	height: auto;
741
	overflow: hidden;
742
	padding: 0;
743
	width: 100%;
744
}
745
	body#opac-detail .nav_results ul.pg_menu li {
746
		display: table-cell;
747
		float: none;
748
	}
(-)a/koha-tmpl/opac-tmpl/prog/en/includes/doc-head-close.inc (-2 / +2 lines)
Lines 63-69 Link Here
63
    var MSG_ITEM_IN_CART = _("In your cart");
63
    var MSG_ITEM_IN_CART = _("In your cart");
64
    var MSG_IN_YOUR_CART = _("Items in your cart: ");
64
    var MSG_IN_YOUR_CART = _("Items in your cart: ");
65
    var MSG_ITEM_NOT_IN_CART = _("Add to your cart");
65
    var MSG_ITEM_NOT_IN_CART = _("Add to your cart");
66
	$("#cartDetails").ready(function(){ $("#cmspan").html("<a href=\"#\" id=\"cartmenulink\" class=\"\"><i><\/i><span><i><\/i><span><\/span><span id=\"carticon\"></span> "+_("Cart")+"<span id=\"basketcount\"><\/span><\/span><\/a>"); }); [% ELSE %][% IF ( virtualshelves ) %]
66
	$("#cartDetails").ready(function(){ $("#cmspan").html("<a href=\"#\" id=\"cartmenulink\" class=\"\"><span> "+_("Cart")+"<span id=\"basketcount\"><\/span><\/span><\/a>"); }); 
67
    [% ELSE %][% IF ( virtualshelves ) %]
67
    var MSG_NO_RECORD_SELECTED = _("No item was selected");[% END %][% END %]
68
    var MSG_NO_RECORD_SELECTED = _("No item was selected");[% END %][% END %]
68
    [% IF ( opacuserlogin ) %][% IF ( TagsEnabled ) %]var MSG_TAGS_DISABLED = _("Sorry, tags are not enabled on this system.");
69
    [% IF ( opacuserlogin ) %][% IF ( TagsEnabled ) %]var MSG_TAGS_DISABLED = _("Sorry, tags are not enabled on this system.");
69
    var MSG_TAG_ALL_BAD = _("Error! Your tag was entirely markup code.  It was NOT added.  Please try again with plain text.");
70
    var MSG_TAG_ALL_BAD = _("Error! Your tag was entirely markup code.  It was NOT added.  Please try again with plain text.");
Lines 84-90 Link Here
84
	[% IF ( SyndeticsCoverImages ) %]$(window).load(function() {
85
	[% IF ( SyndeticsCoverImages ) %]$(window).load(function() {
85
            verify_images();
86
            verify_images();
86
         });[% END %]
87
         });[% END %]
87
	[% IF ( opacuserjs ) %][% opacuserjs %][% END %]
88
	//]]>
88
	//]]>
89
[% IF ( opacbookbag ) %]</script><script type="text/javascript" language="javascript" src="[% themelang %]/js/basket.js">
89
[% IF ( opacbookbag ) %]</script><script type="text/javascript" language="javascript" src="[% themelang %]/js/basket.js">
90
[% ELSIF ( virtualshelves ) %]</script><script type="text/javascript" language="javascript" src="[% themelang %]/js/basket.js">
90
[% ELSIF ( virtualshelves ) %]</script><script type="text/javascript" language="javascript" src="[% themelang %]/js/basket.js">
(-)a/koha-tmpl/opac-tmpl/prog/en/includes/masthead.inc (-66 / +143 lines)
Lines 1-40 Link Here
1
<div id="header-wrapper"><div id="members">
1
<div id="header-wrapper">
2
  [% IF ( opacuserlogin ) %]
3
	<ul>
4
[% UNLESS ( loggedinusername ) %]
5
               <li><a href="/cgi-bin/koha/opac-user.pl">Log in to your account</a></li>[% END %]
6
            [% IF ( loggedinusername ) %]
7
                <li><span class="members">Welcome, <a href="/cgi-bin/koha/opac-user.pl"><span class="loggedinusername">[% FOREACH USER_INF IN USER_INFO %][% USER_INF.title %] [% USER_INF.firstname %] [% USER_INF.surname %][% END %]</span></a></span></li>
8
2
3
<div id="top-bar">
4
<ul id="menu-left">
5
6
    [% IF ( opacbookbag ) %]
7
        <li>
8
            <span id="cmspan"></span>
9
            <div id="cartDetails">Your cart is empty.</div>
10
        </li>
11
    [% END %]
12
13
    [% IF ( virtualshelves ) %]
14
15
    <li id="listsmenulink">
16
        <a href="/cgi-bin/koha/opac-shelves.pl"  class="">
17
            <span>Lists</span>
18
        </a>
19
    <div id="listsmenu" class="yuimenu" style="display: none">
20
        <h4>Public lists</h4>
21
            [% IF ( pubshelves ) %]
22
                <ul class="first-of-type">
23
                [% FOREACH pubshelvesloo IN pubshelvesloop %]
24
                <li class="yuimenuitem"><a href="/cgi-bin/koha/opac-shelves.pl?viewshelf=[% pubshelvesloo.shelfnumber %]&amp;sortfield=[% pubshelvesloo.sortfield %]">[% pubshelvesloo.shelfname |html %]</a></li>
25
                [% END %]
26
                <li class="yuimenuitem"><a class="yuimenuitemlabel" href="/cgi-bin/koha/opac-shelves.pl?display=publicshelves">[View All]</a></li>
27
            </ul>
28
            [% ELSE %]
29
            No public lists
9
            [% END %]
30
            [% END %]
10
            [% IF ( ShowOpacRecentSearchLink ) %]
31
      [% IF ( opacuserlogin ) %]
11
                <li><a href="/cgi-bin/koha/opac-search-history.pl" title="View your search history">Search history</a> [<a class="logout" href="/cgi-bin/koha/opac-search-history.pl?action=delete" title="Delete your search history" onclick="return confirm(_('Are you sure you want to delete your search history?'));">x</a>]</li>
32
        <h4>Your lists</h4>
33
        [% IF ( loggedinusername ) %]
34
            [% IF ( barshelves ) %]
35
                <ul class="first-of-type">
36
                [% FOREACH barshelvesloo IN barshelvesloop %]
37
                <li class="yuimenuitem"><a href="/cgi-bin/koha/opac-shelves.pl?viewshelf=[% barshelvesloo.shelfnumber %]&amp;sortfield=[% barshelvesloo.sortfield %]">[% barshelvesloo.shelfname |html %]</a></li>
38
                [% END %]
39
            <li class="yuimenuitem"><a class="yuimenuitemlabel" href="/cgi-bin/koha/opac-shelves.pl?display=privateshelves">[View all]</a></li>
40
            </ul>
41
            [% ELSE %]
42
                <ul class="first-of-type">
43
            <li>No private lists</li>
44
            <li class="yuimenuitem"><a class="yuimenuitemlabel" href="/cgi-bin/koha/opac-shelves.pl?display=privateshelves">[New list]</a></li></ul>
12
            [% END %]
45
            [% END %]
13
			[% IF ( loggedinusername ) %]<li><a class="logout" id="logout" href="/cgi-bin/koha/opac-main.pl?logout.x=1">Log Out</a></li>[% END %]
46
        [% ELSE %]
14
   	</ul>	
47
            <ul class="first-of-type"><li><a href="/cgi-bin/koha/opac-user.pl">Log in to create your own lists</a></li></ul>
15
  [% END %]
48
        [% END %]
49
      [% END %]
50
    </div><!-- /listmenu /virtualshelves -->
51
[% END %]
52
<div id="listsDetails"></div>
53
54
</li>
55
</ul>
56
57
    <div id="members">
58
      [% IF ( opacuserlogin ) %]
59
        <ul>
60
    [% UNLESS ( loggedinusername ) %]
61
                   <li><a href="/cgi-bin/koha/opac-user.pl">Log in to your account</a></li>[% END %]
62
                [% IF ( loggedinusername ) %]
63
                    <li><span class="members">Welcome, <a href="/cgi-bin/koha/opac-user.pl"><span class="loggedinusername">[% FOREACH USER_INF IN USER_INFO %][% USER_INF.title %] [% USER_INF.firstname %] [% USER_INF.surname %][% END %]</span></a></span></li>
64
65
                [% END %]
66
                [% IF ( ShowOpacRecentSearchLink ) %]
67
                    <li><a href="/cgi-bin/koha/opac-search-history.pl" title="View your search history">Search history</a></li>
68
                [% END %]
69
                [% IF ( loggedinusername ) %]<li><a class="logout" id="logout" href="/cgi-bin/koha/opac-main.pl?logout.x=1">Log Out</a></li>[% END %]
70
        </ul>	
71
      [% END %]
72
    </div>
73
74
    <div class="clear"></div>
75
16
</div>
76
</div>
17
  [% IF ( opacheader ) %]
77
  
18
	[% opacheader %]
19
  [% END %]
20
<div id="opac-main-search" class="yui-g">
78
<div id="opac-main-search" class="yui-g">
21
   [% IF ( opacsmallimage ) %]
79
22
   <h1 id="libraryname" style="background-image: url('[% opacsmallimage %]');">
80
<a class="logo" href="/cgi-bin/koha/opac-main.pl">
23
   [% ELSE %]
81
    <img src="/opac-tmpl/prog/images/logo-koha.png" alt="Koha Online Catalog" />
24
   <h1 id="libraryname">
82
</a>
25
   [% END %]<a href="/cgi-bin/koha/opac-main.pl">[% IF ( LibraryName ) %][% LibraryName %][% ELSE %]Koha Online Catalog[% END %]</a></h1>
26
83
27
<div id="fluid">
84
<div id="fluid">
28
85
29
[% IF ( OpacPublic ) %]
86
[% IF ( OpacPublic ) %]
30
<div id="fluid-offset">
87
<div id="fluid-offset">
31
[% UNLESS ( advsearch ) %]<form name="searchform" method="get" action="/cgi-bin/koha/opac-search.pl" id="searchform">
88
[% UNLESS ( advsearch ) %]<form name="searchform" method="get" action="/cgi-bin/koha/opac-search.pl" id="searchform" class="[% IF ( OpacAddMastheadLibraryPulldown ) %]multi-libraries[% ELSE %]single-library[% END %]">
32
    <label for="masthead_search" class="left"> Search 
89
    <label for="masthead_search" class="left"> Search 
33
	[% UNLESS ( OpacAddMastheadLibraryPulldown ) %]
90
	[% UNLESS ( OpacAddMastheadLibraryPulldown ) %]
34
            [% IF ( mylibraryfirst ) %] (in [% mylibraryfirst %] only)[% END %]
91
            [% IF ( mylibraryfirst ) %] (in [% mylibraryfirst %] only)[% END %]
35
	[% END %]
92
	[% END %]
36
    </label>
93
    </label>
37
94
95
    <div id="filters">
38
	<select name="idx" id="masthead_search" class="left">
96
	<select name="idx" id="masthead_search" class="left">
39
	[% IF ( ms_kw ) %]
97
	[% IF ( ms_kw ) %]
40
        <option selected="selected" value="">Library catalog</option>
98
        <option selected="selected" value="">Library catalog</option>
Lines 71-82 Link Here
71
		[% ELSE %]
129
		[% ELSE %]
72
        <option value="callnum">Call number</option>
130
        <option value="callnum">Call number</option>
73
		[% END %]</select>
131
		[% END %]</select>
132
    </div>
133
134
<div class="input-wrapper">
74
[% IF ( ms_value ) %]
135
[% IF ( ms_value ) %]
75
        <input type="text" id = "transl1" name="q" value="[% ms_value |html %]" class="left" style="width: 35%; font-size: 111%;"/><div id="translControl"></div>
136
        <input type="text" id = "transl1" name="q" value="[% ms_value |html %]" class="left" style="width: 35%; font-size: 111%;"/><div id="translControl"></div>
76
[% ELSE %]
137
[% ELSE %]
77
        <input type="text" id = "transl1" name="q" class="left" style="width: 35%; font-size: 111%;"/><div id="translControl"></div>
138
        <input type="text" id = "transl1" name="q" class="left" style="width: 35%; font-size: 111%;"/><div id="translControl"></div>
78
[% END %]
139
[% END %]
140
</div>
141
79
   [% IF ( OpacAddMastheadLibraryPulldown ) %]
142
   [% IF ( OpacAddMastheadLibraryPulldown ) %]
143
    <div id="libraries">
80
      <select name="limit" id="select_library" class="left">
144
      <select name="limit" id="select_library" class="left">
81
         <option value="">All libraries</option>
145
         <option value="">All libraries</option>
82
         [% FOREACH BranchesLoo IN BranchesLoop %]
146
         [% FOREACH BranchesLoo IN BranchesLoop %]
Lines 84-89 Link Here
84
            [% ELSE %]<option value="branch:[% BranchesLoo.value %]">[% BranchesLoo.branchname %]</option>[% END %]
148
            [% ELSE %]<option value="branch:[% BranchesLoo.value %]">[% BranchesLoo.branchname %]</option>[% END %]
85
         [% END %]
149
         [% END %]
86
      </select>
150
      </select>
151
    </div>
87
   [% ELSE %]
152
   [% ELSE %]
88
      [% IF ( opac_limit_override ) %]
153
      [% IF ( opac_limit_override ) %]
89
          [% IF ( opac_search_limit ) %]
154
          [% IF ( opac_search_limit ) %]
Lines 100-111 Link Here
100
    <input type="submit" value="Go" id="searchsubmit" class="left" />
165
    <input type="submit" value="Go" id="searchsubmit" class="left" />
101
[% IF ( opacbookbag ) %]<span id="cmspan"></span>[% END %]
166
[% IF ( opacbookbag ) %]<span id="cmspan"></span>[% END %]
102
167
103
[% IF ( virtualshelves ) %]<a href="/cgi-bin/koha/opac-shelves.pl" id="listsmenulink">Lists</a>[% END %]
168
    <div class="clear"></div>
169
104
    </form>
170
    </form>
105
[% ELSE %]
171
[% ELSE %] <!--advsearch -->
106
<div style="width:80%;*margin-bottom:-30px;">
172
<form name="searchform" method="get" action="/cgi-bin/koha/opac-search.pl" id="searchform" class="[% IF ( OpacAddMastheadLibraryPulldown ) %]multi-libraries[% ELSE %]single-library[% END %]">
107
[% IF ( virtualshelves ) %]<a href="/cgi-bin/koha/opac-shelves.pl" id="listsmenulink">Lists</a>[% END %][% IF ( opacbookbag ) %]<span id="cmspan"></span>[% END %]
173
    <label for="masthead_search" class="left"> Search
174
    [% UNLESS ( OpacAddMastheadLibraryPulldown ) %]
175
            [% IF ( mylibraryfirst ) %] (in [% mylibraryfirst %] only)[% END %]
176
    [% END %]
177
    </label>
178
179
    <div id="filters" class="transparent">
180
        <select name="idx" id="masthead_search" class="left" disabled="disabled">
181
            <option selected="selected" value="">Library Catalog</option>
182
        </select>
183
    </div>
184
185
<div class="input-wrapper">
186
    <input type="text" id = "transl1" name="q" class="left transparent" style="width: 35%; font-size: 111%;" disabled="disabled"/><div id="translControl"></div>
108
</div>
187
</div>
188
189
   [% IF ( OpacAddMastheadLibraryPulldown ) %]
190
        <div id="libraries">
191
          <select name="limit" id="select_library" class="left transparent">
192
             <option value="">All Libraries</option>
193
          </select>
194
        </div>
195
   [% END %]
196
197
198
    <input type="submit" value="Go" id="searchsubmit" class="left transparent" disabled="disabled" />
199
[% IF ( opacbookbag ) %]<span id="cmspan"></span>[% END %]
200
201
    <div class="clear"></div>
202
203
    </form>
109
[% END %]
204
[% END %]
110
205
111
<div id="moresearches">
206
<div id="moresearches">
Lines 125-176 Link Here
125
 </div>
220
 </div>
126
</div>
221
</div>
127
222
223
<div id="libraryname">
224
    [% IF ( opacheader ) %]
225
        <h1>
226
            [% opacheader %]
227
        </h1>
228
  [% END %]
229
</div>
230
128
[% END %]  <!-- OpacPublic --> 
231
[% END %]  <!-- OpacPublic --> 
129
232
130
[% IF ( opacbookbag ) %]<div id="cartDetails">Your cart is empty.</div>[% END %]
131
132
[% IF ( virtualshelves ) %]
133
<div id="listsmenu" class="yuimenu" style="display: none">
134
    <div class="bd">
135
    <h4>Public lists</h4>
136
		[% IF ( pubshelves ) %]
137
			<ul class="first-of-type">
138
			[% FOREACH pubshelvesloo IN pubshelvesloop %]
139
			<li class="yuimenuitem"><a href="/cgi-bin/koha/opac-shelves.pl?viewshelf=[% pubshelvesloo.shelfnumber %]&amp;sortfield=[% pubshelvesloo.sortfield %]">[% pubshelvesloo.shelfname |html %]</a></li>
140
			[% END %]
141
			<li class="yuimenuitem"><a class="yuimenuitemlabel" href="/cgi-bin/koha/opac-shelves.pl?display=publicshelves">[View All]</a></li>
142
        </ul>
143
		[% ELSE %]
144
        No public lists
145
		[% END %]
146
  [% IF ( opacuserlogin ) %]
147
    <h4>Your lists</h4>
148
	[% IF ( loggedinusername ) %]
149
		[% IF ( barshelves ) %]
150
			<ul class="first-of-type">
151
			[% FOREACH barshelvesloo IN barshelvesloop %]
152
			<li class="yuimenuitem"><a href="/cgi-bin/koha/opac-shelves.pl?viewshelf=[% barshelvesloo.shelfnumber %]&amp;sortfield=[% barshelvesloo.sortfield %]">[% barshelvesloo.shelfname |html %]</a></li>
153
			[% END %]
154
        <li class="yuimenuitem"><a class="yuimenuitemlabel" href="/cgi-bin/koha/opac-shelves.pl?display=privateshelves">[View all]</a></li>
155
        </ul>
156
		[% ELSE %]
157
			<ul class="first-of-type">
158
        <li>No private lists</li>
159
        <li class="yuimenuitem"><a class="yuimenuitemlabel" href="/cgi-bin/koha/opac-shelves.pl?display=privateshelves">[New list]</a></li></ul>
160
		[% END %]
161
	[% ELSE %]
162
        <ul class="first-of-type"><li><a href="/cgi-bin/koha/opac-user.pl">Log in to create your own lists</a></li></ul>
163
	[% END %]
164
  [% END %]
165
	  </div>
166
</div><!-- /listmenu /virtualshelves -->
167
[% END %]
168
<div id="listsDetails"></div>
169
</div>
233
</div>
170
</div>
234
</div>
235
236
<div id="container">
237
<div id="ctn_lt">
238
<div id="ctn_rt">
239
<div id="ctn_lb">
240
<div id="ctn_rb">
241
171
<div id="breadcrumbs" class="yui-g">
242
<div id="breadcrumbs" class="yui-g">
172
[% IF ( searchdesc ) %]<p>[% IF ( total ) %]<strong>Your search returned [% total |html %] results.</strong> [% IF ( related ) %] (related searches: [% FOREACH relate IN related %][% relate.related_search %][% END %]). [% END %]
243
<p><a href="/cgi-bin/koha/opac-main.pl" title="Accueil">Accueil</a>
173
<a href="[% OPACBaseURL %]/cgi-bin/koha/opac-search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;count=[% countrss |html %]&amp;sort_by=acqdate_dsc&amp;format=rss2" class="rsssearchlink"><img src="/opac-tmpl/prog/images/feed-icon-16x16.png" alt="Subscribe to this search" title="Subscribe to this search" border="0" class="rsssearchicon"/></a>
244
[% IF ( searchdesc ) %]<span class="rsaquo"> &rsaquo; </span><a href="/cgi-bin/koha/opac-search.pl" title="rechercher">Recherche</a><span class="rsaquo"> &rsaquo; </span>
245
[% IF ( total ) %]<strong>Your search returned [% total |html %] results.</strong> 
246
[% IF ( related ) %] (related searches: [% FOREACH relate IN related %][% relate.related_search %][% END %]). [% END %]
247
<a href="[% OPACBaseURL %]/cgi-bin/koha/opac-search.pl?[% query_cgi |html %][% limit_cgi |html %]&amp;count=[% countrss |html %]&amp;sort_by=acqdate_dsc&amp;format=rss2" class="rsssearchlink">
248
<img src="/opac-tmpl/prog/images/feed-icon-16x16.png" alt="Subscribe to this search" title="Subscribe to this search" border="0" class="rsssearchicon"/></a>
174
[% ELSE %]
249
[% ELSE %]
175
<strong>No results found!</strong>
250
<strong>No results found!</strong>
176
<p>
251
<p>
Lines 188-190 Link Here
188
263
189
</div>
264
</div>
190
[% END %]</p>[% END %]</div>
265
[% END %]</p>[% END %]</div>
266
267
<div class="ctn_in">
(-)a/koha-tmpl/opac-tmpl/prog/en/includes/navigation.inc (-1 / +1 lines)
Lines 1-6 Link Here
1
[% OpacNav %]
2
[% IF IsPatronPage %]
1
[% IF IsPatronPage %]
3
[% INCLUDE usermenu.inc %]
2
[% INCLUDE usermenu.inc %]
4
[% END %]
3
[% END %]
4
[% OpacNav %]
5
[% OpacNavBottom %]
5
[% OpacNavBottom %]
6
6
(-)a/koha-tmpl/opac-tmpl/prog/en/includes/opac-bottom.inc (-12 / +37 lines)
Lines 5-10 Link Here
5
[% END %]
5
[% END %]
6
</div>
6
</div>
7
7
8
<div class="clear"></div>
9
</div>
10
</div>
11
</div>
12
</div>
13
</div>
14
</div>
15
16
<div id="main_footer">
17
    <div class="colleft">
18
    </div>
19
    [% IF ( OpacKohaUrl ) %]
20
    <div class="colright">
21
        <div class="koha">
22
            [% IF template.name.match('opac-main.tt') %]
23
                <a class="koha_url" href="http://koha-community.org">Powered by</a>
24
            [% ELSE %]
25
                <a class="koha_url" rel="nofollow" href="http://koha-community.org">Powered by</a>
26
            [% END %]
27
        </div>
28
    </div>
29
    [% END %]
30
    <div class="clear"></div>
31
</div>
32
8
[% IF ( opaclanguagesdisplay || OpacKohaUrl ) %]
33
[% IF ( opaclanguagesdisplay || OpacKohaUrl ) %]
9
    [% IF ( languages_loop && opaclanguagesdisplay ) %]
34
    [% IF ( languages_loop && opaclanguagesdisplay ) %]
10
        [% UNLESS ( one_language_enabled ) %]
35
        [% UNLESS ( one_language_enabled ) %]
Lines 46-64 Link Here
46
        [% END %]
71
        [% END %]
47
    [% END %]
72
    [% END %]
48
73
49
    [% IF ( OpacKohaUrl ) %]
50
    <span class="koha_url">
51
        Powered by <strong>
52
        [% IF template.name.match('opac-main.tt') %]
53
            <a class="koha_url" href="http://koha-community.org">Koha</a>
54
        [% ELSE %]
55
            <a class="koha_url" rel="nofollow" href="http://koha-community.org">Koha</a>
56
        [% END %]
57
        </strong>&nbsp;&nbsp;
58
    </span>
59
    [% END %]
60
61
[% END %]
74
[% END %]
62
75
76
77
<script type="text/javascript" src="/opac-tmpl/prog/[% lang %]/lib/jquery/plugins/jquery.jqtransform_select.js"></script>
78
<script type="text/javascript">
79
$(function() {
80
    //find all form with class jqtransform and apply the plugin
81
    $("form#searchform").jqTransform();
82
});
83
84
[% IF ( opacuserjs ) %][% opacuserjs %][% END %]
85
86
</script>
87
63
</body>
88
</body>
64
</html>
89
</html>
(-)a/koha-tmpl/opac-tmpl/prog/en/js/basket.js (-12 / +28 lines)
Lines 452-473 function showCart(){ Link Here
452
		var menuWidth = 200;
452
		var menuWidth = 200;
453
		var buttonWidth = $("#cartmenulink").innerWidth();
453
		var buttonWidth = $("#cartmenulink").innerWidth();
454
		var buttonOffset = menuWidth - buttonWidth;
454
		var buttonOffset = menuWidth - buttonWidth;
455
		var left = position.left -  buttonOffset;
455
        var left = position.left;
456
		$("#cartDetails").css("position","absolute").css("top",top);
456
        $("#cartDetails").css("position","fixed").css("left",left);
457
		$("#cartDetails").css("position","absolute").css("left",left);
458
		$("#cartDetails").fadeIn("fast");
457
		$("#cartDetails").fadeIn("fast");
459
}
458
}
460
459
461
function showLists(){
460
function showLists(){
462
               var position = $("#listsmenulink").offset();
461
    var position = $("#listsmenulink").offset();
463
              var top = position.top + $("#listsmenulink").outerHeight();
462
    var top = position.top + $("#listsmenulink").outerHeight();
464
               var menuWidth = 200;
463
    var menuWidth = 200;
465
               var buttonWidth = $("#listsmenulink").innerWidth();
464
    var buttonWidth = $("#listsmenulink").innerWidth();
466
               var buttonOffset = menuWidth - buttonWidth;
465
    var buttonOffset = menuWidth - buttonWidth;
467
               var left = position.left -  buttonOffset;
466
    var left = position.left;
468
               $("#listsDetails").css("position","absolute").css("top",top);
467
    $("#listsDetails").css("position","fixed").css("top",top);
469
               $("#listsDetails").css("position","absolute").css("left",left);
468
    $("#listsDetails").css("position","fixed").css("left",left);
470
               $("#listsDetails").fadeIn("fast");
469
    $("#listsDetails").fadeIn("fast");
471
}
470
}
472
471
473
function hideCart(){
472
function hideCart(){
Lines 519-522 $("#cartDetails").ready(function(){ Link Here
519
	if(basketcount){ updateBasket(basketcount) }
518
	if(basketcount){ updateBasket(basketcount) }
520
});
519
});
521
520
521
$("#listsmenu").ready(function(){
522
	$("#listsmenulink").mouseenter(function(){ 
523
		var position = $("#listsmenulink").offset();
524
		var top = position.top + $("#listsmenulink").outerHeight();
525
		var menuWidth = 200;
526
		var buttonWidth = $("#listsmenulink").innerWidth();
527
		var buttonOffset = menuWidth - buttonWidth;
528
		var left = position.left;
529
		$("#listsmenu").css("position","fixed").css("top",top);
530
		$("#listsmenu").css("position","fixed").css("left",left);
531
		$("#listsmenu").fadeIn("fast");
532
	});
533
	$("#listsmenulink").mouseleave(function(){ 
534
		$("#listsmenu").fadeOut("fast");
535
	});
536
});
537
522
538
(-)a/koha-tmpl/opac-tmpl/prog/en/js/script.js (-1 / +3 lines)
Lines 79-85 YAHOO.util.Event.onContentReady("changelanguage", function () { Link Here
79
		
79
		
80
	});
80
	});
81
});
81
});
82
			
82
83
/*
83
// Build lists menu
84
// Build lists menu
84
YAHOO.util.Event.onContentReady("listsmenu", function () {
85
YAHOO.util.Event.onContentReady("listsmenu", function () {
85
	YAHOO.widget.Menu.prototype.onRender = function () { };
86
	YAHOO.widget.Menu.prototype.onRender = function () { };
Lines 97-102 YAHOO.util.Event.onContentReady("listsmenu", function () { Link Here
97
		YAHOO.util.Event.addListener("listsmenulink", "click", listMenu.show, null, listMenu);
98
		YAHOO.util.Event.addListener("listsmenulink", "click", listMenu.show, null, listMenu);
98
		YAHOO.widget.Overlay.windowResizeEvent.subscribe(positionlistMenu);
99
		YAHOO.widget.Overlay.windowResizeEvent.subscribe(positionlistMenu);
99
 });
100
 });
101
*/
100
102
101
jQuery.fn.preventDoubleFormSubmit = function() {
103
jQuery.fn.preventDoubleFormSubmit = function() {
102
    jQuery(this).submit(function() {
104
    jQuery(this).submit(function() {
(-)a/koha-tmpl/opac-tmpl/prog/en/lib/jquery/plugins/jquery.jqtransform_select.js (+368 lines)
Line 0 Link Here
1
/*
2
 *
3
 * jqTransform
4
 * by mathieu vilaplana mvilaplana@dfc-e.com
5
 * Designer ghyslain armand garmand@dfc-e.com
6
 *
7
 *
8
 * Version 1.0 25.09.08
9
 * Version 1.1 06.08.09
10
 * Add event click on Checkbox and Radio
11
 * Auto calculate the size of a select element
12
 * Can now, disabled the elements
13
 * Correct bug in ff if click on select (overflow=hidden)
14
 * No need any more preloading !!
15
 * 
16
 ******************************************** */
17
 
18
(function($){
19
	var defaultOptions = {preloadImg:true};
20
	var jqTransformImgPreloaded = false;
21
22
	var jqTransformPreloadHoverFocusImg = function(strImgUrl) {
23
		//guillemets to remove for ie
24
		strImgUrl = strImgUrl.replace(/^url\((.*)\)/,'$1').replace(/^\"(.*)\"$/,'$1');
25
		var imgHover = new Image();
26
		imgHover.src = strImgUrl.replace(/\.([a-zA-Z]*)$/,'-hover.$1');
27
		var imgFocus = new Image();
28
		imgFocus.src = strImgUrl.replace(/\.([a-zA-Z]*)$/,'-focus.$1');				
29
	};
30
31
	
32
	/***************************
33
	  Labels
34
	***************************/
35
	var jqTransformGetLabel = function(objfield){
36
		var selfForm = $(objfield.get(0).form);
37
		var oLabel = objfield.next();
38
		if(!oLabel.is('label')) {
39
			oLabel = objfield.prev();
40
			if(oLabel.is('label')){
41
				var inputname = objfield.attr('id');
42
				if(inputname){
43
					oLabel = selfForm.find('label[for="'+inputname+'"]');
44
				} 
45
			}
46
		}
47
		if(oLabel.is('label')){return oLabel.css('cursor','pointer');}
48
		return false;
49
	};
50
	
51
	/* Hide all open selects */
52
	var jqTransformHideSelect = function(oTarget){
53
		var ulVisible = $('.jqTransformSelectWrapper ul:visible');
54
		ulVisible.each(function(){
55
			var oSelect = $(this).parents(".jqTransformSelectWrapper:first").find("select").get(0);
56
			//do not hide if click on the label object associated to the select
57
			if( !(oTarget && oSelect.oLabel && oSelect.oLabel.get(0) == oTarget.get(0)) ){$(this).hide();}
58
		});
59
	};
60
	/* Check for an external click */
61
	var jqTransformCheckExternalClick = function(event) {
62
		if ($(event.target).parents('.jqTransformSelectWrapper').length === 0) { jqTransformHideSelect($(event.target)); }
63
	};
64
65
	/* Apply document listener */
66
	var jqTransformAddDocumentListener = function (){
67
		$(document).mousedown(jqTransformCheckExternalClick);
68
	};	
69
			
70
	/* Add a new handler for the reset action */
71
	var jqTransformReset = function(f){
72
		var sel;
73
		$('.jqTransformSelectWrapper select', f).each(function(){sel = (this.selectedIndex<0) ? 0 : this.selectedIndex; $('ul', $(this).parent()).each(function(){$('a:eq('+ sel +')', this).click();});});
74
		$('a.jqTransformCheckbox, a.jqTransformRadio', f).removeClass('jqTransformChecked');
75
		$('input:checkbox, input:radio', f).each(function(){if(this.checked){$('a', $(this).parent()).addClass('jqTransformChecked');}});
76
	};
77
78
	/***************************
79
	  Buttons
80
	 ***************************/
81
	$.fn.jqTransInputButton = function(){
82
		return this.each(function(){
83
			var newBtn = $('<button id="'+ this.id +'" name="'+ this.name +'" type="'+ this.type +'" class="'+ this.className +' jqTransformButton"><span><span>'+ $(this).attr('value') +'</span></span>')
84
				.hover(function(){newBtn.addClass('jqTransformButton_hover');},function(){newBtn.removeClass('jqTransformButton_hover')})
85
				.mousedown(function(){newBtn.addClass('jqTransformButton_click')})
86
				.mouseup(function(){newBtn.removeClass('jqTransformButton_click')})
87
			;
88
			$(this).replaceWith(newBtn);
89
		});
90
	};
91
	
92
	/***************************
93
	  Text Fields 
94
	 ***************************/
95
	$.fn.jqTransInputText = function(){
96
		return this.each(function(){
97
			var $input = $(this);
98
	
99
			if($input.hasClass('jqtranformdone') || !$input.is('input')) {return;}
100
			$input.addClass('jqtranformdone');
101
	
102
			var oLabel = jqTransformGetLabel($(this));
103
			oLabel && oLabel.bind('click',function(){$input.focus();});
104
	
105
			var inputSize=$input.width();
106
			if($input.attr('size')){
107
				inputSize = $input.attr('size')*10;
108
				$input.css('width',inputSize);
109
			}
110
			
111
			$input.addClass("jqTransformInput").wrap('<div class="jqTransformInputWrapper"><div class="jqTransformInputInner"><div></div></div></div>');
112
			var $wrapper = $input.parent().parent().parent();
113
			$wrapper.css("width", inputSize+10);
114
			$input
115
				.focus(function(){$wrapper.addClass("jqTransformInputWrapper_focus");})
116
				.blur(function(){$wrapper.removeClass("jqTransformInputWrapper_focus");})
117
				.hover(function(){$wrapper.addClass("jqTransformInputWrapper_hover");},function(){$wrapper.removeClass("jqTransformInputWrapper_hover");})
118
			;
119
	
120
			/* If this is safari we need to add an extra class */
121
			$.browser.safari && $wrapper.addClass('jqTransformSafari');
122
			$.browser.safari && $input.css('width',$wrapper.width()+16);
123
			this.wrapper = $wrapper;
124
			
125
		});
126
	};
127
	
128
	/***************************
129
	  Check Boxes 
130
	 ***************************/	
131
	$.fn.jqTransCheckBox = function(){
132
		return this.each(function(){
133
			if($(this).hasClass('jqTransformHidden')) {return;}
134
135
			var $input = $(this);
136
			var inputSelf = this;
137
138
			//set the click on the label
139
			var oLabel=jqTransformGetLabel($input);
140
			oLabel && oLabel.click(function(){aLink.trigger('click');});
141
			
142
			var aLink = $('<a href="#" class="jqTransformCheckbox"></a>');
143
			//wrap and add the link
144
			$input.addClass('jqTransformHidden').wrap('<span class="jqTransformCheckboxWrapper"></span>').parent().prepend(aLink);
145
			//on change, change the class of the link
146
			$input.change(function(){
147
				this.checked && aLink.addClass('jqTransformChecked') || aLink.removeClass('jqTransformChecked');
148
				return true;
149
			});
150
			// Click Handler, trigger the click and change event on the input
151
			aLink.click(function(){
152
				//do nothing if the original input is disabled
153
				if($input.attr('disabled')){return false;}
154
				//trigger the envents on the input object
155
				$input.trigger('click').trigger("change");	
156
				return false;
157
			});
158
159
			// set the default state
160
			this.checked && aLink.addClass('jqTransformChecked');		
161
		});
162
	};
163
	/***************************
164
	  Radio Buttons 
165
	 ***************************/	
166
	$.fn.jqTransRadio = function(){
167
		return this.each(function(){
168
			if($(this).hasClass('jqTransformHidden')) {return;}
169
170
			var $input = $(this);
171
			var inputSelf = this;
172
				
173
			oLabel = jqTransformGetLabel($input);
174
			oLabel && oLabel.click(function(){aLink.trigger('click');});
175
	
176
			var aLink = $('<a href="#" class="jqTransformRadio" rel="'+ this.name +'"></a>');
177
			$input.addClass('jqTransformHidden').wrap('<span class="jqTransformRadioWrapper"></span>').parent().prepend(aLink);
178
			
179
			$input.change(function(){
180
				inputSelf.checked && aLink.addClass('jqTransformChecked') || aLink.removeClass('jqTransformChecked');
181
				return true;
182
			});
183
			// Click Handler
184
			aLink.click(function(){
185
				if($input.attr('disabled')){return false;}
186
				$input.trigger('click').trigger('change');
187
	
188
				// uncheck all others of same name input radio elements
189
				$('input[name="'+$input.attr('name')+'"]',inputSelf.form).not($input).each(function(){
190
					$(this).attr('type')=='radio' && $(this).trigger('change');
191
				});
192
	
193
				return false;					
194
			});
195
			// set the default state
196
			inputSelf.checked && aLink.addClass('jqTransformChecked');
197
		});
198
	};
199
	
200
	/***************************
201
	  TextArea 
202
	 ***************************/	
203
	$.fn.jqTransTextarea = function(){
204
		return this.each(function(){
205
			var textarea = $(this);
206
	
207
			if(textarea.hasClass('jqtransformdone')) {return;}
208
			textarea.addClass('jqtransformdone');
209
	
210
			oLabel = jqTransformGetLabel(textarea);
211
			oLabel && oLabel.click(function(){textarea.focus();});
212
			
213
			var strTable = '<table cellspacing="0" cellpadding="0" border="0" class="jqTransformTextarea">';
214
			strTable +='<tr><td id="jqTransformTextarea-tl"></td><td id="jqTransformTextarea-tm"></td><td id="jqTransformTextarea-tr"></td></tr>';
215
			strTable +='<tr><td id="jqTransformTextarea-ml">&nbsp;</td><td id="jqTransformTextarea-mm"><div></div></td><td id="jqTransformTextarea-mr">&nbsp;</td></tr>';	
216
			strTable +='<tr><td id="jqTransformTextarea-bl"></td><td id="jqTransformTextarea-bm"></td><td id="jqTransformTextarea-br"></td></tr>';
217
			strTable +='</table>';					
218
			var oTable = $(strTable)
219
					.insertAfter(textarea)
220
					.hover(function(){
221
						!oTable.hasClass('jqTransformTextarea-focus') && oTable.addClass('jqTransformTextarea-hover');
222
					},function(){
223
						oTable.removeClass('jqTransformTextarea-hover');					
224
					})
225
				;
226
				
227
			textarea
228
				.focus(function(){oTable.removeClass('jqTransformTextarea-hover').addClass('jqTransformTextarea-focus');})
229
				.blur(function(){oTable.removeClass('jqTransformTextarea-focus');})
230
				.appendTo($('#jqTransformTextarea-mm div',oTable))
231
			;
232
			this.oTable = oTable;
233
			if($.browser.safari){
234
				$('#jqTransformTextarea-mm',oTable)
235
					.addClass('jqTransformSafariTextarea')
236
					.find('div')
237
						.css('height',textarea.height())
238
						.css('width',textarea.width())
239
				;
240
			}
241
		});
242
	};
243
	
244
	/***************************
245
	  Select 
246
	 ***************************/	
247
	$.fn.jqTransSelect = function(){
248
		return this.each(function(index){
249
			var $select = $(this);
250
251
			if($select.hasClass('jqTransformHidden')) {return;}
252
			if($select.attr('multiple')) {return;}
253
254
			var oLabel  =  jqTransformGetLabel($select);
255
			/* First thing we do is Wrap it */
256
			var $wrapper = $select
257
				.addClass('jqTransformHidden')
258
				.wrap('<div class="jqTransformSelectWrapper"></div>')
259
				.parent()
260
				.css({zIndex: 1000-index})
261
			;
262
			
263
			/* Now add the html for the select */
264
			$wrapper.prepend('<div><span></span><a href="#" class="jqTransformSelectOpen"></a></div><ul></ul>');
265
			var $ul = $('ul', $wrapper).css('width',$select.width()).hide();
266
			/* Now we add the options */
267
			$('option', this).each(function(i){
268
				var oLi = $('<li><a href="#" index="'+ i +'">'+ $(this).html() +'</a></li>');
269
				$ul.append(oLi);
270
			});
271
			
272
			/* Add click handler to the a */
273
			$ul.find('a').click(function(){
274
					$('a.selected', $wrapper).removeClass('selected');
275
					$(this).addClass('selected');	
276
					/* Fire the onchange event */
277
					if ($select[0].selectedIndex != $(this).attr('index') && $select[0].onchange) { $select[0].selectedIndex = $(this).attr('index'); $select[0].onchange(); }
278
					$select[0].selectedIndex = $(this).attr('index');
279
					$('span:eq(0)', $wrapper).html($(this).html());
280
					$ul.hide();
281
					return false;
282
			});
283
			/* Set the default */
284
			$('a:eq('+ this.selectedIndex +')', $ul).click();
285
			$('span:first', $wrapper).click(function(){$("a.jqTransformSelectOpen",$wrapper).trigger('click');});
286
			oLabel && oLabel.click(function(){$("a.jqTransformSelectOpen",$wrapper).trigger('click');});
287
			this.oLabel = oLabel;
288
			
289
			/* Apply the click handler to the Open */
290
			var oLinkOpen = $('a.jqTransformSelectOpen', $wrapper)
291
				.click(function(){
292
					//Check if box is already open to still allow toggle, but close all other selects
293
					if( $ul.css('display') == 'none' ) {jqTransformHideSelect();} 
294
					if($select.attr('disabled')){return false;}
295
296
					$ul.slideToggle('fast', function(){					
297
						var offSet = ($('a.selected', $ul).offset().top - $ul.offset().top);
298
						$ul.animate({scrollTop: offSet});
299
					});
300
					return false;
301
				})
302
			;
303
304
			// Set the new width
305
			var iSelectWidth = $select.outerWidth();
306
			var oSpan = $('span:first',$wrapper);
307
			var newWidth = (iSelectWidth > oSpan.innerWidth())?iSelectWidth+oLinkOpen.outerWidth():$wrapper.width();
308
			$wrapper.css('width',newWidth);
309
			$ul.css('width',newWidth-2);
310
			oSpan.css({width:iSelectWidth});
311
		
312
			// Calculate the height if necessary, less elements that the default height
313
			//show the ul to calculate the block, if ul is not displayed li height value is 0
314
			$ul.css({display:'block',visibility:'hidden'});
315
			var iSelectHeight = ($('li',$ul).length)*($('li:first',$ul).height());//+1 else bug ff
316
			(iSelectHeight < $ul.height()) && $ul.css({height:iSelectHeight,'overflow':'hidden'});//hidden else bug with ff
317
			$ul.css({display:'none',visibility:'visible'});
318
			
319
		});
320
	};
321
	$.fn.jqTransform = function(options){
322
		var opt = $.extend({},defaultOptions,options);
323
		
324
		/* each form */
325
		 return this.each(function(){
326
			var selfForm = $(this);
327
			if(selfForm.hasClass('jqtransformdone')) {return;}
328
			selfForm.addClass('jqtransformdone');
329
			
330
			//$('input:submit, input:reset, input[type="button"]', this).jqTransInputButton();			
331
			//$('input:text, input:password', this).jqTransInputText();			
332
			//$('input:checkbox', this).jqTransCheckBox();
333
			//$('input:radio', this).jqTransRadio();
334
			//$('textarea', this).jqTransTextarea();
335
			
336
			if( $('select', this).jqTransSelect().length > 0 ){jqTransformAddDocumentListener();}
337
			selfForm.bind('reset',function(){var action = function(){jqTransformReset(this);}; window.setTimeout(action, 10);});
338
			
339
			//preloading dont needed anymore since normal, focus and hover image are the same one
340
			/*if(opt.preloadImg && !jqTransformImgPreloaded){
341
				jqTransformImgPreloaded = true;
342
				var oInputText = $('input:text:first', selfForm);
343
				if(oInputText.length > 0){
344
					//pour ie on eleve les ""
345
					var strWrapperImgUrl = oInputText.get(0).wrapper.css('background-image');
346
					jqTransformPreloadHoverFocusImg(strWrapperImgUrl);					
347
					var strInnerImgUrl = $('div.jqTransformInputInner',$(oInputText.get(0).wrapper)).css('background-image');
348
					jqTransformPreloadHoverFocusImg(strInnerImgUrl);
349
				}
350
				
351
				var oTextarea = $('textarea',selfForm);
352
				if(oTextarea.length > 0){
353
					var oTable = oTextarea.get(0).oTable;
354
					$('td',oTable).each(function(){
355
						var strImgBack = $(this).css('background-image');
356
						jqTransformPreloadHoverFocusImg(strImgBack);
357
					});
358
				}
359
			}*/
360
			
361
			
362
		}); /* End Form each */
363
				
364
	};/* End the Plugin */
365
366
})(jQuery);
367
				   
368
(-)a/koha-tmpl/opac-tmpl/prog/en/modules/opac-results.tt (+1 lines)
Lines 267-272 $(document).ready(function(){ Link Here
267
    <div id="yui-main">
267
    <div id="yui-main">
268
    <div class="yui-b">
268
    <div class="yui-b">
269
    <div id="userresults" class="container">
269
    <div id="userresults" class="container">
270
    [% INCLUDE 'page-numbers.inc' %]<br />
270
  [% IF ( koha_spsuggest ) %]
271
  [% IF ( koha_spsuggest ) %]
271
    Did you mean:
272
    Did you mean:
272
    <ul style="list-style: none;">
273
    <ul style="list-style: none;">

Return to bug 8597