1 // File Picker and File Manager
10 .file-picker a:hover {
12 text-decoration: none;
14 .filemanager input[type="text"],
15 .file-picker input[type="text"] {
22 vertical-align: middle;
27 // Dialogue (File Picker and File Manager)
31 #filesskin .yui3-panel-content {
35 border: 1px solid #fff;
36 display: inline-block;
38 .box-shadow(5px 5px 20px 0 #666);
40 #filesskin .yui3-widget-hd {
41 .border-radius(10px 10px 0 0);
42 border-bottom: 1px solid #BBBBBB;
48 text-shadow: 1px 1px 1px #fff;
49 filter: dropshadow(color=#FFFFFF, offx=1, offy=1);
50 #gradient > .vertical (#fff, #ccc);
54 padding: 3px 20px 2px 20px;
58 display: inline-block;
60 .box-shadow(2px 2px 3px .1px #999);
63 #filesskin .file-picker.fp-generallayout {
67 border: 1px solid #CCCCCC;
70 .file-picker .fp-repo-area {
73 display: inline-block;
75 border-right: 1px solid #BBBBBB;
80 .dir-rtl .file-picker .fp-repo-area {
81 border-left: 1px solid #BBBBBB;
84 .file-picker .fp-repo-items {
86 display: inline-block;
90 .file-picker .fp-navbar {
93 border-bottom: 1px solid #BBBBBB;
96 .file-picker .fp-content {
102 margin-bottom: -14px;
104 .dir-rtl .file-picker .fp-repo-items {
107 .file-picker .fp-content-loading {
113 .file-picker .fp-content .fp-object-container {
117 .dir-rtl .file-picker .fp-list {
120 .dir-rtl .file-picker .fp-toolbar {
123 .dir-rtl .file-picker .fp-list {
126 .dir-rtl .file-picker .fp-repo-name {
129 .dir-rtl .file-picker .fp-pathbar {
134 .dir-rtl .file-picker div.bd {
137 .dir-rtl #filemenu .yuimenuitemlabel {
140 .dir-rtl .filepicker .yui-layout-unit-left {
143 .dir-rtl .filepicker .yui-layout-unit-center {
147 .dir-rtl .filemanager-toolbar a {
150 // Repositories on fp-repo-area (File Picker only)
151 .file-picker .fp-list {
152 list-style-type: none;
158 .dir-rtl .file-picker .fp-list {
162 .file-picker .fp-list .fp-repo a {
166 .file-picker .fp-list .fp-repo.active {
169 .file-picker .fp-list .fp-repo-icon {
170 padding: 0 7px 0 5px;
172 // Tools, Path & View on fp-navbar (File Picker and File Manager)
178 .dir-rtl .fp-toolbar {
184 .fp-toolbar .disabled {
188 display: inline-block;
193 .dir-rtl .fp-toolbar div {
197 vertical-align: -15%;
200 .fp-toolbar .fp-tb-search {
204 .fp-toolbar .fp-tb-search input {
205 background: #FFFFFF url('[[pix:a/search]]') no-repeat 3px 3px;
206 padding: 2px 6px 1px 20px;
209 border: 1px solid #BBBBBB;
217 .dir-rtl .fp-toolbar img {
218 vertical-align: -35%;
220 .dir-rtl .fp-viewbar {
225 background: url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0;
228 display: inline-block;
231 .dir-rtl .fp-vb-icons {
232 background: url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0;
237 .fp-vb-icons.checked {
238 background: url('[[pix:theme|fp/view_icon_selected]]');
240 .dir-rtl .fp-vb-icons.checked {
241 background: url('[[pix:theme|fp/view_icon_selected]]');
246 .fp-viewbar.disabled .fp-vb-icons {
247 background: url('[[pix:theme|fp/view_icon_inactive]]');
250 background: url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0;
253 display: inline-block;
257 .dir-rtl .fp-vb-details {
258 background: url('[[pix:theme|fp/view_list_active]]') no-repeat 0 0;
263 .fp-vb-details.checked {
264 background: url('[[pix:theme|fp/view_list_selected]]');
266 .dir-rtl .fp-vb-details.checked {
267 background: url('[[pix:theme|fp/view_list_selected]]');
272 .fp-viewbar.disabled .fp-vb-details {
273 background: url('[[pix:theme|fp/view_list_inactive]]');
276 background: url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0;
279 display: inline-block;
283 .dir-rtl .fp-vb-tree {
284 background: url('[[pix:theme|fp/view_tree_active]]') no-repeat 0 0;
289 .fp-vb-tree.checked {
290 background: url('[[pix:theme|fp/view_tree_selected]]');
292 .dir-rtl .fp-vb-tree.checked {
293 background: url('[[pix:theme|fp/view_tree_selected]]');
298 .fp-viewbar.disabled .fp-vb-tree {
299 background: url('[[pix:theme|fp/view_tree_inactive]]');
301 .file-picker .fp-clear-left {
304 // over ride hover rule from core.css
305 .dir-rtl .filemanager-toolbar .fp-vb-icons a:hover {
306 background: url('[[pix:theme|fp/view_icon_selected]]');
308 .dir-rtl .filemanager-toolbar .fp-vb-icons.checked a:hover {
309 background: url('[[pix:theme|fp/view_icon_active]]') no-repeat 0 0;
311 .dir-rtl .fp-vb-details a:hover {
313 border: 20px solid black;
315 .dir-rtl .fp-vb-details.checked a:hover {
317 border: 40px solid black;
319 .dir-rtl .fp-vb-tree a:hover {
321 border: 30px solid black;
323 .dir-rtl .fp-vb-tree.checked a:hover {
325 border: 50px solid black;
327 .file-picker .fp-pathbar {
333 .fp-pathbar .fp-path-folder {
334 background: url('[[pix:theme|fp/path_folder]]') no-repeat 0 0;
339 .dir-rtl .fp-pathbar .fp-path-folder {
340 background: url('[[pix:theme|fp/path_folder_rtl]]') no-repeat right top;
345 .dir-rtl .fp-pathbar span {
346 display: inline-block;
351 .fp-pathbar .fp-path-folder-name {
355 .dir-rtl .fp-pathbar .fp-path-folder-name {
359 // Icon view (File Picker and File Manager)
360 .fp-iconview .fp-file {
364 margin: 10px 10px 35px;
366 .fp-iconview .fp-thumbnail {
371 border: 1px solid #FFFFFF;
374 .fp-iconview .fp-thumbnail img {
375 border: 1px solid #ddd;
377 vertical-align: middle;
378 .box-shadow(1px 1px 2px 0 #ccc);
380 .fp-iconview .fp-thumbnail:hover {
382 border: 1px solid #ddd;
383 .box-shadow(inset 0 0 10px 0px #ccc);
385 .fp-iconview .fp-filename-field {
387 word-wrap: break-word;
391 .fp-iconview .fp-filename-field:hover {
395 .fp-iconview .fp-filename-field .fp-filename {
398 padding-bottom: 12px;
401 .dir-rtl .fp-iconview .fp-file {
404 // Table view (File Picker only)
405 .file-picker .yui3-datatable table {
406 border: 0 solid #BBBBBB;
409 #filesskin .file-picker .yui3-datatable-header {
411 border-bottom: 1px solid #CCCCCC;
412 border-left: 0 solid #FFFFFF;
415 #filesskin .file-picker .yui3-datatable-odd .yui3-datatable-cell {
416 background-color: #F6F6F6;
417 border-left: 0 solid #F6F6F6;
419 #filesskin .file-picker .yui3-datatable-even .yui3-datatable-cell {
420 background-color: #FFFFFF;
421 border-left: 0 solid #FFFFFF;
423 .dir-rtl .file-picker .yui3-datatable-header {
426 // Tree view (File Manager only)
428 // first or middle sibling, no children
429 .file-picker .ygtvtn,
430 .filemanager .ygtvtn {
431 background: url('[[pix:moodle|y/tn]]') 0 0 no-repeat;
435 .dir-rtl .file-picker .ygtvtn {
436 background: url('[[pix:moodle|y/tn_rtl]]') 0 0 no-repeat;
440 // first or middle sibling, collapsable
441 .file-picker .ygtvtm,
442 .filemanager .ygtvtm {
443 background: url('[[pix:moodle|y/tm]]') 0 10px no-repeat;
448 // first or middle sibling, collapsable, hover
449 .file-picker .ygtvtmh,
450 .filemanager .ygtvtmh {
451 background: url('[[pix:moodle|y/tm]]') 0 10px no-repeat;
456 // first or middle sibling, expandable
457 .file-picker .ygtvtp,
458 .filemanager .ygtvtp {
459 background: url('[[pix:moodle|y/tp]]') 0 10px no-repeat;
464 .dir-rtl .file-picker .ygtvtp,
465 .dir-rtl .filemanager .ygtvtp {
466 background: url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat;
468 // first or middle sibling, expandable, hover
469 .file-picker .ygtvtph,
470 .filemanager .ygtvtph {
471 background: url('[[pix:moodle|y/tp]]') 0 10px no-repeat;
476 .dir-rtl .file-picker .ygtvtph,
477 .dir-rtl .filemanager .ygtvtph {
478 background: url('[[pix:moodle|y/tp_rtl]]') 0 10px no-repeat;
480 // last sibling, no children
481 .file-picker .ygtvln,
482 .filemanager .ygtvln {
483 background: url('[[pix:moodle|y/ln]]') 0 0 no-repeat;
487 .dir-rtl .file-picker .ygtvln,
488 .dir-rtl .filemanager .ygtvln {
489 background: url('[[pix:moodle|y/ln_rtl]]') 0 0 no-repeat;
491 // Last sibling, collapsable
492 .file-picker .ygtvlm,
493 .filemanager .ygtvlm {
494 background: url('[[pix:moodle|y/lm]]') 0 10px no-repeat;
499 // Last sibling, collapsable, hover
500 .file-picker .ygtvlmh,
501 .filemanager .ygtvlmh {
502 background: url('[[pix:moodle|y/lm]]') 0 10px no-repeat;
507 // Last sibling, expandable
508 .file-picker .ygtvlp,
509 .filemanager .ygtvlp {
510 background: url('[[pix:moodle|y/lp]]') 0 10px no-repeat;
515 .dir-rtl .file-picker .ygtvlp,
516 .dir-rtl .filemanager .ygtvlp {
517 background: url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat;
519 // Last sibling, expandable, hover
520 .file-picker .ygtvlph,
521 .filemanager .ygtvlph {
522 background: url('[[pix:moodle|y/lp]]') 0 10px no-repeat;
527 .dir-rtl .file-picker .ygtvlph,
528 .dir-rtl .filemanager .ygtvlph {
529 background: url('[[pix:moodle|y/lp_rtl]]') 0 10px no-repeat;
532 .file-picker .ygtvloading,
533 .filemanager .ygtvloading {
534 background: transparent url('[[pix:moodle|y/loading]]') 0 0 no-repeat;
538 // the style for the empty cells that are used for rendering the depth of the node
539 .file-picker .ygtvdepthcell,
540 .filemanager .ygtvdepthcell {
541 background: url('[[pix:moodle|y/vline]]') 0 0 no-repeat;
545 .file-picker .ygtvblankdepthcell,
546 .filemanager .ygtvblankdepthcell {
552 text-decoration: none;
558 background-color: transparent;
561 text-decoration: none;
563 .file-picker .ygtvfocus,
564 .filemanager .ygtvfocus {
565 background-color: #EEEEEE;
589 vertical-align: middle;
594 .dir-rtl .fp-filename {
598 // Repositories Login on fp-content (File Picker only)
600 .file-picker .fp-login-form {
605 .file-picker .fp-login-form table {
608 .file-picker .fp-login-form p {
612 .file-picker .fp-login-form .fp-login-input label {
616 .file-picker .fp-login-form .fp-login-input .input {
619 .file-picker .fp-login-form input[type="checkbox"]{
623 // Upload on fp-content (File Picker only)
624 .file-picker .fp-upload-form {
629 .file-picker .fp-upload-form table {
632 // File exists dialogue on Upload (File Picker only)
633 .file-picker.fp-dlg {
636 .file-picker.fp-dlg .fp-dlg-text {
637 padding: 30px 20px 10px;
640 .file-picker.fp-dlg .fp-dlg-buttons {
643 // Error dialogue on Upload (File Picker only)
644 .file-picker.fp-msg {
647 .file-picker.fp-msg .fp-msg-text {
648 padding: 40px 20px 10px 20px;
655 .file-picker.fp-msg.fp-msg-error .fp-msg-text {
656 padding: 40px 20px 10px 20px;
659 // Error on fp-content (File Picker only)
660 .file-picker .fp-content-error {
666 .file-picker .fp-content-error .fp-error {
670 vertical-align: middle;
671 padding: 40px 20px 10px 20px;
674 // Lazy loading on fp-content (File Picker only)
675 .file-picker .fp-nextpage {
678 .file-picker .fp-nextpage .fp-nextpage-loading {
681 .file-picker .fp-nextpage.loading .fp-nextpage-link {
684 .file-picker .fp-nextpage.loading .fp-nextpage-loading {
690 // Select Dialogue (File Picker and File Manager)
691 .file-picker.fp-select {
695 padding: 20px 20px 0;
697 .fp-select .fp-select-loading {
704 background-color: #FFFFFF;
705 border-bottom: 1px solid #BBBBBB;
712 .fp-select table .mdl-right {
715 .fp-select .fp-reflist .mdl-right {
718 .fp-select .fp-select-buttons {
721 .fp-select .fp-info {
726 .fp-select .fp-thumbnail {
732 margin: 10px 20px 0 0;
734 border: 1px solid #ddd;
735 .box-shadow(inset 0 0 10px 0 #ccc);
737 .fp-select .fp-thumbnail img {
738 border: 1px solid #DDDDDD;
740 vertical-align: middle;
743 .fp-select .fp-fileinfo {
744 display: inline-block;
748 .file-picker.fp-select .fp-fileinfo {
751 .fp-select .fp-fileinfo div {
754 .file-picker.fp-select .uneditable {
757 .file-picker.fp-select .fp-select-loading {
760 .file-picker.fp-select.loading .fp-select-loading {
763 .file-picker.fp-select.loading form {
766 .fp-select .fp-dimensions.fp-unknown {
770 .filemanager-loading{
773 .jsenabled .filemanager-loading{
777 .filemanager.fm-loading .filemanager-toolbar,
778 .filemanager.fm-loading .fp-pathbar,
779 .filemanager.fm-loading .filemanager-container,
780 .filemanager.fm-loaded .filemanager-loading,
781 .filemanager.fm-maxfiles .fp-btn-add,
782 .filemanager.fm-maxfiles .dndupload-message,
783 .filemanager.fm-noitems .fp-btn-download,
784 .filemanager .fm-empty-container,
785 .filemanager.fm-noitems .filemanager-container .fp-content {
788 .filemanager .filemanager-updating {
792 .filemanager.fm-updating .filemanager-updating {
796 .filemanager.fm-updating .fm-content-wrapper,
797 .filemanager.fm-nomkdir .fp-btn-mkdir,
798 .fitem.disabled .filemanager .filemanager-toolbar,
799 .fitem.disabled .filemanager .fp-pathbar,
800 .fitem.disabled .filemanager .fp-restrictions,
801 .fitem.disabled .filemanager .fm-content-wrapper {
804 // File Manager layout
808 .filemanager .fp-navbar {
810 border: 1px solid #BBBBBB;
813 .filemanager-toolbar{
818 border-top: 1px solid #BBBBBB;
819 padding: 5px 8px 1px;
822 .filemanager .fp-pathbar.empty {
825 .filepicker-filelist,
826 .filemanager-container {
830 border: 1px solid #BBBBBB;
834 .filemanager .fp-content{
839 .filemanager-container,
840 .filepicker-filelist {
843 .fitem.disabled .filepicker-filelist,
844 .fitem.disabled .filemanager-container {
845 background-color: #EBEBE4;
847 .fitem.disabled .fp-btn-choose {
850 .fitem.disabled .filepicker-filelist .filepicker-filename {
853 // Icon view (File Manager only)
854 .fp-iconview .fp-reficons1 {
862 .fp-iconview .fp-reficons2 {
870 .fp-iconview .fp-file.fp-hasreferences .fp-reficons1 {
871 background: url('[[pix:theme|fp/link]]') no-repeat;
872 background-position: bottom right;
874 .fp-iconview .fp-file.fp-isreference .fp-reficons2 {
875 background: url('[[pix:theme|fp/alias]]') no-repeat;
876 background-position: bottom left;
878 .filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail img {
881 .filemanager .fp-iconview .fp-file.fp-originalmissing .fp-thumbnail {
882 background: url([[pix:s/dead]]) no-repeat;
883 background-position: center center;
885 // Table view (File Manager only)
886 .filemanager .yui3-datatable table {
887 border: 0 solid #BBBBBB;
890 .filemanager .yui3-datatable-header {
891 background: #FFFFFF!important;
892 border-bottom: 1px solid #CCCCCC!important;
893 border-left: 0 solid #FFFFFF!important;
894 color: #555555!important;
896 .filemanager .yui3-datatable-odd .yui3-datatable-cell {
897 background-color: #F6F6F6!important;
898 border-left: 0 solid #F6F6F6;
900 .filemanager .yui3-datatable-even .yui3-datatable-cell {
901 background-color: #FFFFFF!important;
902 border-left: 0 solid #FFFFFF;
904 .filemanager .fp-filename-icon.fp-hasreferences .fp-reficons1{
905 background: url('[[pix:theme|fp/link_sm]]') no-repeat 0 0;
913 .filemanager .fp-filename-icon.fp-isreference .fp-reficons2 {
914 background: url('[[pix:theme|fp/alias_sm]]') no-repeat 0 0;
922 // Folder Context Menu (File Manager only)
923 .filemanager .fp-contextmenu {
926 .filemanager .fp-iconview .fp-folder.fp-hascontextmenu .fp-contextmenu {
933 .filemanager .fp-treeview .fp-folder.fp-hascontextmenu .fp-contextmenu,
934 .filemanager .fp-tableview .fp-folder.fp-hascontextmenu .fp-contextmenu {
941 // Drag and drop support (filemanager and filepicker form elements)
942 .filepicker-filelist .filepicker-container,
943 .filemanager.fm-noitems .fm-empty-container {
950 border: 2px dashed #BBBBBB;
955 .filepicker-filelist .dndupload-target,
956 .filemanager-container .dndupload-target {
963 border: 2px dashed #fb7979;
967 .box-shadow(0px 0 0 10px #fff);
969 .filepicker-filelist.dndupload-over .dndupload-target,
970 .filemanager-container.dndupload-over .dndupload-target {
977 border: 2px dashed #6c8cd3;
985 .dndsupported .dndupload-message {
988 .dnduploadnotsupported-message {
991 .dndnotsupported .dnduploadnotsupported-message {
997 .dndsupported .dndupload-ready .dndupload-target {
1000 .dndupload-uploadinprogress {
1004 .dndupload-uploading .dndupload-uploadinprogress {
1008 background: url([[pix:theme|fp/dnd_arrow]]) center no-repeat;
1015 .fitem.disabled .filepicker-container,
1016 .fitem.disabled .fm-empty-container {
1019 .dndupload-progressbars {
1023 .dndupload-inprogress .dndupload-progressbars {
1026 .dndupload-inprogress .fp-content {
1029 .filemanager.fm-noitems .dndupload-inprogress .fm-empty-container {
1032 .filepicker-filelist.dndupload-inprogress .filepicker-container {
1035 .filepicker-filelist.dndupload-inprogress a {
1038 // Select Dialogue (File Manager only)
1039 .filemanager.fp-select .fp-select-loading {
1042 .filemanager.fp-select.loading .fp-select-loading {
1045 .filemanager.fp-select.loading form {
1048 .filemanager.fp-select.fp-folder .fp-license,
1049 .filemanager.fp-select.fp-folder .fp-author,
1050 .filemanager.fp-select.fp-file .fp-file-unzip,
1051 .filemanager.fp-select.fp-folder .fp-file-unzip,
1052 .filemanager.fp-select.fp-file .fp-file-zip,
1053 .filemanager.fp-select.fp-zip .fp-file-zip {
1056 .filemanager.fp-select .fp-file-setmain {
1059 .filemanager.fp-select.fp-cansetmain .fp-file-setmain {
1060 display: inline-block;
1061 .ie7-inline-block();
1063 .filemanager .fp-mainfile .fp-filename {
1066 .filemanager.fp-select.fp-folder .fp-file-download {
1069 // to be implemented
1073 .filemanager.fp-select .fp-original.fp-unknown,
1074 .filemanager.fp-select .fp-original .fp-originloading {
1077 .filemanager.fp-select .fp-original.fp-loading .fp-originloading {
1080 .filemanager.fp-select .fp-reflist.fp-unknown,
1081 .filemanager.fp-select .fp-reflist .fp-reflistloading {
1084 .filemanager.fp-select .fp-refcount {
1087 .filemanager.fp-select .fp-reflist.fp-loading .fp-reflistloading {
1090 .filemanager.fp-select .fp-reflist .fp-value {
1091 background: #F9F9F9;
1092 border: 1px solid #BBBBBB;
1099 .filemanager.fp-select .fp-reflist .fp-value li {
1100 padding-bottom: 7px;
1102 // Create folder dialogue (File Manager only)
1103 .filemanager.fp-mkdir-dlg {
1106 .filemanager.fp-mkdir-dlg .fp-mkdir-dlg-text {
1110 .dir-rtl .filemanager .fp-mkdir-dlg p {
1113 // Confirm dialogue for delete (File Manager only)
1114 .filemanager.fp-dlg {
1117 .filemanager.fp-dlg .fp-dlg-text {
1124 margin: 40px 20px 20px;
1127 // file picker search dialog
1128 .file-picker div.bd {
1132 .dir-rtl .file-picker div.bd,
1133 .dir-rtl .file-picker .fp-pathbar,
1134 .dir-rtl .file-picker .fp-list,
1135 .dir-rtl #filemenu .yuimenuitemlabel,
1136 .dir-rtl .filemanager-container .yui3-skin-sam .yui3-datatable-header {
1139 .dir-rtl .filepicker .yui-layout-unit-left {
1142 .dir-rtl .filepicker .yui-layout-unit-center {