diff --git a/api/src/Image.php b/api/src/Image.php index b8f7a21526..ae348cc2b1 100644 --- a/api/src/Image.php +++ b/api/src/Image.php @@ -43,6 +43,7 @@ class Image 'arrow_left' => 'caret-left-fill', 'arrow_right' => 'caret-right-fill', 'arrow_up' => 'caret-up-fill', + 'attach' => 'paperclip', 'back' => 'arrow-bar-left', 'bullet' => 'record', 'cake' => 'cake2', @@ -190,7 +191,7 @@ class Image 'planner' => 'people', 'planner_category' => 'tags', 'plus' => 'plus-lg', - 'portrait' => 'tablet', + 'portrail' => 'tablet', 'preferences' => 'gear', 'previous' => 'arrow-bar-left', 'print' => 'printer', diff --git a/api/templates/default/css/default.css b/api/templates/default/css/default.css index 7e5c13a660..466132dab5 100644 --- a/api/templates/default/css/default.css +++ b/api/templates/default/css/default.css @@ -99,7 +99,7 @@ } #sideresize { - background-image:url(../images/resize-transparent.png); + background-image:url(../../../../node_modules/bootstrap-icons/icons/); } .th { diff --git a/api/templates/default/css/flags.css b/api/templates/default/css/flags.css index f524b05d93..383e0a95fa 100644 --- a/api/templates/default/css/flags.css +++ b/api/templates/default/css/flags.css @@ -10,7 +10,7 @@ et2-select-country:not([open])::part(prefix), et2-select-country::part(flag) { } /* No country selected*/ et2-select-country:not(.hasValue)::part(prefix), et2-select-country::part(emptyLabel) { - background-image: url(../images/internet.svg); + background-image: url(../../../../node_modules/bootstrap-icons/icons/globe2.svg); background-position: center; background-size: 20px; background-repeat: no-repeat; diff --git a/api/templates/default/etemplate2.css b/api/templates/default/etemplate2.css index b33989c7ab..cd058abcda 100644 --- a/api/templates/default/etemplate2.css +++ b/api/templates/default/etemplate2.css @@ -305,15 +305,15 @@ a.et2_url { } a.et2_url.email { - background-image: url(images/email.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/envelope.svg); } a.et2_url.phone { - background-image: url(images/phone.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/telephone.svg); } a.et2_url.url { - background-image: url(images/url.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/globe2.svg); } .et2_url_email_contactPlus > img { @@ -742,7 +742,7 @@ span.et2_date_duration span { margin-left: 3px; text-indent: 20px; background-size: contain; - background-image: url(images/datepopup.svg); + background-image: url(../../../node_modules/bootstrap-icons/icons/calendar3.svg); } .ui-datepicker .ui-datepicker-prev .ui-icon, .ui-datepicker .ui-datepicker-next .ui-icon { @@ -821,7 +821,7 @@ td.et2_customfield_header et2-label { /* Custom field list inside nextmatch rows gets an icon for each row */ .et2_nextmatch .egwGridView_grid .et2_customfield_list > tbody > tr { - background-image: url('images/dialog_info.svg'); + background-image: url('../../../node_modules/bootstrap-icons/icons/info-circle.svg'); background-repeat: no-repeat; background-size: 1em; } @@ -844,11 +844,11 @@ Nextmatch print dialog } #nm_print_dialog et2-switch#_orientation .label .on { - background-image: url('images/portrait.svg'); + background-image: url('../../../node_modules/bootstrap-icons/icons/tablet.svg'); } #nm_print_dialog et2-switch#_orientation .label .off { - background-image: url('images/landscape.svg'); + background-image: url('../../../node_modules/bootstrap-icons/icons/tablet-landscape.svg'); } /* @@ -1006,7 +1006,7 @@ div.et2_file { height: 16px; float: right; display: block; - background-image: url("images/close.png"); + background-image: url("../../../node_modules/bootstrap-icons/icons/x-lg.svg"); background-position: center; background-repeat: no-repeat; background-size: 16px; @@ -1028,7 +1028,7 @@ div.et2_file { span.et2_file_span { display: inline-block; background-position: 2px; - background-image: url(images/attach.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/paperclip.svg); background-repeat: no-repeat; background-size: 16px; cursor: pointer; @@ -1202,11 +1202,11 @@ div.et2_link_entry input.ui-autocomplete-input { } .et2_link_to span.status.success { - background-image: url(images/tick.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/check-lg.svg); } .et2_link_to span.status.error { - background-image: url(images/error.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/exclamation-circle.svg); } .et2_link_to .progress { @@ -1323,7 +1323,7 @@ et2-link-string et2-link::part(base) { .et2_link_list td div.delete, .et2_vfs td div.delete { visibility: hidden; - background-image: url("images/close.png"); + background-image: url("../../../node_modules/bootstrap-icons/icons/x-lg.svg"); background-position: center; background-repeat: no-repeat; padding: 0px; @@ -1400,7 +1400,7 @@ div.et2_vfsPath li { } div.et2_vfsPath ul.scrollable li { - cursor: url(images/mouse_scroll_lr.svg) 20 1, pointer; + cursor: url(../../../node_modules/bootstrap-icons/icons/arrows.svg) 20 1, pointer; } li.vfsPath.et2_clickable:first-child { @@ -1428,7 +1428,7 @@ li.vfsPath.et2_clickable:not(:first-child):after { } .et2_vfsPath input.et2_textbox.et2_vfs { - background-image: url(images/edit.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/pencil-square.svg); background-repeat: no-repeat; background-size: 16px; background-position: center; @@ -1698,7 +1698,7 @@ et2-tab-panel { .et2_taglist .mailinglist { width: 100%; - background-image: url(images/email.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/envelope.svg); padding-right: 20px; background-position: right; background-repeat: no-repeat; @@ -1758,219 +1758,6 @@ table.egwGridView_grid img.et2_avatar { height: auto; } -/* Toggle single / multiple */ -.et2_taglist_toggle { - position: relative; - overflow: visible !important; -} - -.et2_taglist_toggle > div.ms-ctn { - display: inline-block; - width: calc(100% - 10px); - padding-right: 2px; -} - -.et2_taglist_toggle.ui-state-hover, -.et2_taglist_toggle.ui-state-active { - z-index: 1; -} - -.et2_taglist_toggle:not(.et2_taglist_single) .ms-ctn { - /* height: 100%;*/ -} - -.et2_taglist_toggle > div.toggle { - top: 1px; - width: 23px; - height: 23px; - position: absolute; - right: 0px; - z-index: 5; - background-color: white; - background-repeat: no-repeat; - background-position: center center; - background-image: url("images/foldertree_nolines_minus.gif"); -} - -.et2_taglist_toggle div.ms-ctn { - padding: 0; - padding-left: 10px; -} - -.et2_taglist_toggle.et2_taglist_single:not(.expanded) > div.toggle { - display: none; -} - -.et2_taglist_toggle.et2_taglist_single.expanded > div.toggle { - background-image: url("images/foldertree_nolines_plus.gif"); - display: block; -} - -.et2_taglist_toggle:not(.et2_taglist_single) .ms-trigger { - display: none; -} - -/* Single select */ -.et2_taglist_single .ms-ctn { - padding: 0px 7px; - min-width: 50px; -} - -.et2_taglist_single div.ms-ctn .ms-sel-item + input { - display: none; -} - -.et2_taglist_single .ms-ctn .ms-trigger .ms-trigger-ico { - margin-top: 9px; -} - -div .et2_taglist_single div.ms-sel-ctn div.ms-sel-item { - border: none; - background: inherit; - margin-bottom: 0px; - - white-space: nowrap; - overflow: hidden; -} - -div .et2_taglist_single:not(.et2_taglist_small) div.ms-sel-ctn div.ms-sel-item { - width: calc(100% - 30px); -} - -.et2_taglist_single div.ms-sel-item > span:not(.ms-close-btn):not(.ms-edit-btn) { - max-width: 100%; - width: 100%; - display: inline-block; - overflow: hidden; - text-overflow: ellipsis; -} - -.et2_taglist_single .ms-edit-btn { - display: none; -} - -.et2_taglist_toggle.et2_taglist_small.et2_taglist_single::before { - display: none; -} - -.et2_taglist_single div.ms-sel-ctn .ms-close-btn { - position: relative; - top: 0px; - right: 20px; - float: none; - display: inline-block; -} - -.et2_taglist_toggle .ms-ctn-focus { - box-shadow: none; -} - -.et2_taglist.et2_taglist_toggle div.ms-ctn input { - border: none; -} - -.et2_taglist.et2_taglist_single .ms-ctn.form-control { - -} - -.et2_taglist_single.et2_taglist_category .ms-sel-item > span:first-child { - padding: 0; -} - -/* Taglist that is limited in size - does not grow */ -.et2_taglist.et2_taglist_small .ms-ctn, -.et2_taglist.et2_taglist_small .ms-res-ctn { - min-width: auto; -} - -.et2_taglist_small { - position: relative; - max-height: 3em; - overflow: hidden; -} - -.et2_taglist_small::before { - content: attr(data-content) ''; - text-align: right; - position: absolute; - z-index: 10; - bottom: 0px; - right: 0; - padding-top: 1em; - padding-bottom: 3px; - padding-right: 1em; - padding-left: 2em; - min-height: 1.2em; - min-width: 25%; - background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1) 25%); -} - -.et2_taglist_small:not(.et2_taglist_single) { - border-bottom: 1px solid silver; - border-right: 1px solid silver; -} - -div .et2_taglist_small.et2_taglist_single div.ms-sel-ctn div.ms-sel-item { - max-width: calc(100% - 43px); - width: 100%; -} - -.et2_taglist_toggle.et2_taglist_small::before { -} - -.et2_taglist_small.ui-state-hover, -.et2_taglist_small.ui-state-active { - max-height: none; - min-width: 10em; - background: white; - z-index: 5; - margin-top: 0px; - transition-duration: 0s; - font-weight: normal; - overflow: visible; -} - -.et2_taglist_small.ui-state-hover::before, -.et2_taglist_small.ui-state-active::before { - display: none; -} - -.et2_taglist_small div.ms-sel-item { - white-space: nowrap; - overflow: hidden; -} - -.et2_taglist.et2_taglist_single.nm_filterheader_taglist div.ms-ctn input { - min-width: calc(100% - 30px); -} - -/* Taglist category */ -.et2_taglist_category span[class*="cat_"]:not([class*="cat_level"]) { - height: 1.7em; - width: 6px; - margin: -3px -5px; - float: left; -} - -.et2_taglist_category.et2_taglist_single span[class*="cat_"]:not([class*="cat_level"]) { - height: 2em; - margin-bottom: -6px; - position: absolute; - margin-left: -8px; - margin-top: -2px; - border-top-left-radius: 3px; - border-bottom-left-radius: 3px; -} - -.et2_taglist_category .ms-res-item > span { - margin-left: 3px; -} - -.et2_taglist_category .ms-sel-item > span:first-child { - padding-left: 5px; -} - - /** * VFS widget(s) */ @@ -2168,7 +1955,7 @@ egw-validation-feedback[type] { background-color: #e5f3d0; color: #98a930; border-color: #9ea930; - background-image: url(images/tick.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/check-lg.svg); background-repeat: no-repeat; background-size: contain; padding-left: 20px; @@ -2180,7 +1967,7 @@ egw-validation-feedback[type] { background-color: #d9e2ed; border-color: #56729a; color: #56729a; - background-image: url(images/hint.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/info-circle.svg); background-repeat: no-repeat; padding-left: 20px; } @@ -2340,7 +2127,7 @@ egw-validation-feedback[type] { display: inline-block; padding: 0px 4px; margin: -2px 5px; - background-image: url(images/fav_filter.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/star.svg); background-size: 9px 9px; } @@ -2399,12 +2186,12 @@ ul[id$='favorites_popup_state'] span.filter_value { .nextmatch_sortheader.asc { font-weight: bold; - background-image: url(images/up.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/caret-up-fill.svg); } .nextmatch_sortheader.desc { font-weight: bold; - background-image: url(images/down.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/caret-down-fill.svg); } .nextmatch_resize_helper { @@ -2797,7 +2584,7 @@ table.egwGridView_outer thead tr th.noResize:hover { padding: 0px 0px 0px 2em; background-repeat: no-repeat; background-size: 1em; - background-image: url(images/check.svg); + background-image: url(../../../node_modules/bootstrap-icons/icons/check-lg.svg); } .long_task .message.error { @@ -2837,7 +2624,7 @@ div.et2_toolbar.ui-widget-header { background: none; } .et2_toolbar_more summary.ui-toolbar-menulistHeader.list_header-short { - background-image: url(images/dots.svg); + background-image: url(../../../node_modules/bootstrap-icons/icons/three-dots-vertical.svg); background-size: 16px; height: 32px; width: 20px; @@ -2864,7 +2651,7 @@ div.et2_toolbar.ui-widget-header { background-position: left; } .et2_toolbar .et2_toolbar_more summary .toolbar-admin-pref { - background-image: url(images/setup.svg); + background-image: url(../../../node_modules/bootstrap-icons/icons/gear.svg); background-repeat: no-repeat; background-size: 20px; width: 20px; @@ -2896,7 +2683,7 @@ div.et2_toolbar.ui-widget-header { background-color: transparent; } .et2_toolbar details[open].et2_toolbar_more .ui-toolbar-menulistHeader.list_header-short { - background-image: url(images/arrow_down.svg); + background-image: url(../../../node_modules/bootstrap-icons/icons/caret-down-fill.svg); background-size: 12px; background-position: center; background-repeat: no-repeat; @@ -3652,7 +3439,7 @@ div.blueimp-gallery-playing > .play-pause { position: absolute; right: 120px; top: 20px; - background: url(images/apply.svg) 0 0 no-repeat; + background: url(../../../node_modules/bootstrap-icons/icons/floppy.svg) 0 0 no-repeat; background-size: 24px; height: 24px; width: 24px; @@ -3888,7 +3675,7 @@ div.eml { } div.eml div.emlEdit { - background-image: url(images/edit.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/pencil-square.svg); background-position: center; width: 100%; height: 50%; @@ -3899,7 +3686,7 @@ div.eml div.emlEdit { } div.eml div.emlDelete { - background-image: url(images/delete.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/trash3.svg); background-position: center; width: 100%; height: 50%; @@ -3934,7 +3721,7 @@ div.eml div.emlDelete:hover, div.eml div.emlEdit:hover { height: 22px !important; padding: 0; background-position-x: 3px !important; - background-image: url(images/add.png); + background-image: url(../../../node_modules/bootstrap-icons/icons/plus-circle.svg); overflow: hidden !important; text-indent: 100px !important; } @@ -4029,7 +3816,7 @@ tr.disableIfNoEPL { } .et2_editable { - cursor: url(images/cursor_editable.svg), pointer; + cursor: url(../../../node_modules/bootstrap-icons/icons/copy.svg), pointer; } .dragover { @@ -4048,7 +3835,7 @@ tr.disableIfNoEPL { font-size: 20pt; font-weight: bold; text-align: center; - background-image: url(images/drop.svg); + background-image: url(../../../node_modules/bootstrap-icons/icons/paperclip.svg); background-position: center; background-size: 20%; background-repeat: no-repeat; diff --git a/api/templates/default/images/flags.png b/api/templates/default/images/flags.png new file mode 100644 index 0000000000..0ffa81a6f8 Binary files /dev/null and b/api/templates/default/images/flags.png differ diff --git a/api/templates/default/images/gradient01.png b/api/templates/default/images/gradient01.png new file mode 100755 index 0000000000..111cd7fbf3 Binary files /dev/null and b/api/templates/default/images/gradient01.png differ diff --git a/api/templates/default/images/gradient02.png b/api/templates/default/images/gradient02.png new file mode 100755 index 0000000000..8ea5aed2d1 Binary files /dev/null and b/api/templates/default/images/gradient02.png differ diff --git a/api/templates/default/images/gradient22.png b/api/templates/default/images/gradient22.png new file mode 100644 index 0000000000..b70fabaf8c Binary files /dev/null and b/api/templates/default/images/gradient22.png differ diff --git a/api/templates/default/images/photo.png b/api/templates/default/images/photo.png new file mode 100755 index 0000000000..394b0d0498 Binary files /dev/null and b/api/templates/default/images/photo.png differ diff --git a/api/templates/default/images/resize-transparent.png b/api/templates/default/images/resize-transparent.png new file mode 100644 index 0000000000..cc97f5c3ca Binary files /dev/null and b/api/templates/default/images/resize-transparent.png differ diff --git a/api/templates/default/images/selectcols.svg b/api/templates/default/images/selectcols.svg new file mode 100644 index 0000000000..01bda2fdc2 --- /dev/null +++ b/api/templates/default/images/selectcols.svg @@ -0,0 +1,4 @@ + + + + diff --git a/api/templates/default/images/tab_header_bg.png b/api/templates/default/images/tab_header_bg.png new file mode 100644 index 0000000000..5d09c856b0 Binary files /dev/null and b/api/templates/default/images/tab_header_bg.png differ diff --git a/calendar/templates/mobile/app.css b/calendar/templates/mobile/app.css index 30c5797660..83c47d2d7b 100644 --- a/calendar/templates/mobile/app.css +++ b/calendar/templates/mobile/app.css @@ -1329,8 +1329,12 @@ Hide subsequent headers in week view with non-consolidated owners } /** * Calendar Drag and Drop - * Class for div to show forbiden drop */ +.calendar_d-n-d_helper { + position: absolute; + z-index: initial; +} +/* Class for div to show forbiden drop */ .calendar_d-n-d_timeCounter > span { position: absolute; background-color: #808080; @@ -2681,7 +2685,7 @@ div#calendar-container div.calendar table tbody tr.rowhilite td { width: calc(100% - 58px); } #calendar-toolbar_toolbar et2-switch .label.on span.off { - filter: invert(1); + filter: opacity(0.4); } #calendar-toolbar_toolbar et2-switch .label.on span.on { filter: none !important; @@ -2692,7 +2696,7 @@ div#calendar-container div.calendar table tbody tr.rowhilite td { background-position: center; height: 28px; top: 0; - filter: invert(1); + filter: opacity(0.4); } #calendar-toolbar_toolbar et2-switch .label span.off { background-size: 18px 18px; @@ -2708,11 +2712,11 @@ div#calendar-container div.calendar table tbody tr.rowhilite td { background: none; } #calendar-toolbar_toolbar #calendar-toolbar_toolbar-weekend .label span.on { - background-image: url(../../../api/templates/default/images/7_day_view.svg); + background-image: url(../../../node_modules/bootstrap-icons/icons/7-square.svg); width: 50%; } #calendar-toolbar_toolbar #calendar-toolbar_toolbar-weekend .label span.off { - background-image: url(../../../api/templates/default/images/5_day_view.svg); + background-image: url(../../../node_modules/bootstrap-icons/icons/5-square.svg); width: 50%; } /* ######################################################################################## diff --git a/infolog/templates/default/app.css b/infolog/templates/default/app.css index 1b1393a372..f4b3a81e06 100644 --- a/infolog/templates/default/app.css +++ b/infolog/templates/default/app.css @@ -34,7 +34,7 @@ table.infolog_fullWidth { width: 100%; } } tr.infolog_rowHasParent > td:first-child { - background-image: url(../../../api/templates/default/images/arrow_up.svg); + background-image: url(../../../node_modules/bootstrap-icons/icons/caret-up-fill.svg); background-repeat: no-repeat; background-size: 10px; background-position: 6px 6px; diff --git a/pixelegg/css/fancy.css b/pixelegg/css/fancy.css index f84f107b22..0afabefbb9 100644 --- a/pixelegg/css/fancy.css +++ b/pixelegg/css/fancy.css @@ -5250,7 +5250,7 @@ body.scrollVertical { height: 35px; top: 0px; border-bottom: 1px solid silver; - background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg.svg); + background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg); background-position: center; background-repeat: no-repeat; background-position-y: 5px; diff --git a/pixelegg/css/mobile.css b/pixelegg/css/mobile.css index 070294d901..dd4123cbb3 100644 --- a/pixelegg/css/mobile.css +++ b/pixelegg/css/mobile.css @@ -5253,7 +5253,7 @@ body.scrollVertical { height: 35px; top: 0px; border-bottom: 1px solid silver; - background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg.svg); + background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg); background-position: center; background-repeat: no-repeat; background-position-y: 5px; diff --git a/pixelegg/css/monochrome.css b/pixelegg/css/monochrome.css index 1234d9bcd3..2cf4455595 100644 --- a/pixelegg/css/monochrome.css +++ b/pixelegg/css/monochrome.css @@ -5232,7 +5232,7 @@ body.scrollVertical { height: 35px; top: 0px; border-bottom: 1px solid silver; - background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg.svg); + background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg); background-position: center; background-repeat: no-repeat; background-position-y: 5px; diff --git a/pixelegg/css/pixelegg.css b/pixelegg/css/pixelegg.css index b363e615e0..fd78191cf8 100644 --- a/pixelegg/css/pixelegg.css +++ b/pixelegg/css/pixelegg.css @@ -5243,7 +5243,7 @@ body.scrollVertical { height: 35px; top: 0px; border-bottom: 1px solid silver; - background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg.svg); + background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg); background-position: center; background-repeat: no-repeat; background-position-y: 5px; diff --git a/pixelegg/less/layout_raster_scrollarea.less b/pixelegg/less/layout_raster_scrollarea.less index 13683c8513..0078ca1a23 100644 --- a/pixelegg/less/layout_raster_scrollarea.less +++ b/pixelegg/less/layout_raster_scrollarea.less @@ -74,7 +74,7 @@ height: 35px; top: 0px; border-bottom: 1px solid silver; - background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg.svg); + background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg); background-position: center; background-repeat: no-repeat; background-position-y: 5px; diff --git a/pixelegg/mobile/fw_mobile.css b/pixelegg/mobile/fw_mobile.css index 5b0f5010e3..7f2dedd559 100644 --- a/pixelegg/mobile/fw_mobile.css +++ b/pixelegg/mobile/fw_mobile.css @@ -5264,7 +5264,7 @@ body.scrollVertical { height: 35px; top: 0px; border-bottom: 1px solid silver; - background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg.svg); + background-image: url(../../node_modules/bootstrap-icons/icons/arrow-bar-up.svg); background-position: center; background-repeat: no-repeat; background-position-y: 5px; diff --git a/preferences/templates/mobile/app.css b/preferences/templates/mobile/app.css index fd72e2a422..a1535f65fb 100644 --- a/preferences/templates/mobile/app.css +++ b/preferences/templates/mobile/app.css @@ -130,6 +130,16 @@ img.qrCode { table.prefTable tbody tr.prefRow .prefHelpColumn { border-bottom: none; } +/** + * Application passwords / tokens + */ +tr.revoked > td * { + color: grey !important; + font-style: italic; +} +td.token { + border: 3px solid red; +} .prefHelp { width: 100%; height: 60px;