diff --git a/CHANGELOG.txt b/CHANGELOG.txt index 66bb402..f99323e 100644 --- a/CHANGELOG.txt +++ b/CHANGELOG.txt @@ -8,5 +8,5 @@ * Adding manpage. * Adding current symlink. * Adding ad-hominem makefile. - * Adding ad-hominem 2024-10-07 (3a49926). + * Adding ad-hominem version 2024-10-07 (3a49926). * Adding todo file. diff --git a/templates/55/ad-hominem/README.md b/templates/55/ad-hominem/README.md index dcf2f64..aa06770 100644 --- a/templates/55/ad-hominem/README.md +++ b/templates/55/ad-hominem/README.md @@ -1,6 +1,6 @@ # DokuWiki Template Ad-Hominem -A clean and lightweight HTML5 template for DokuWiki. +A clean and lightweight HTML5 template for [DokuWiki](https://github.com/dokuwiki/dokuwiki). ## Features diff --git a/templates/55/ad-hominem/css/_admin.less b/templates/55/ad-hominem/css/_admin.less index 8971e1b..0f7f830 100644 --- a/templates/55/ad-hominem/css/_admin.less +++ b/templates/55/ad-hominem/css/_admin.less @@ -1,99 +1,155 @@ -.dokuwiki div.ui-admin { + +/* indicate special modes by using a different background and border */ +body.mode_admin { + main { + & { + background-color: @ini_background_alt; + border: @ini_text_alt solid 2px; + color: @ini_text_alt; + } + #toc { + background-color: @ini_background_alt; + } + #navYouAreHere { + background-color: @ini_background; + padding: .25em .25em 0 .25em; + border-radius: .25em; + border: @ini_text_alt solid 2px; + } + table th { + background-color: @ini_background_neu; + } + } + div.ui-admin { - & { - display: grid; - grid-template-columns: 1fr 1fr; + & { + display: grid; + grid-template-columns: 1fr 1fr; + } + + h1.first-child, + div.level1 { + grid-column: 1 / span 2; + margin-bottom: 1em; + } + + /* main task grouped in two columns */ + ul.admin_tasks { + grid-column: 2; + list-style-type: none; + font-size: 1.125em; + margin: 0; + } + ul.admin_tasks:first-of-type { + grid-row: 3 / span 4; + grid-column: 1; + } + ul.admin_plugins { + grid-row: 6; + grid-column: 2; + } + + /* general menu item styling */ + ul { + padding: 0; + li { + margin: 0 0 1em 0; + font-weight: bold; + list-style-type: none; + white-space: nowrap; + + a { + display: flex; + span { + display: inline-block; + + &.icon { + width: 1.5em; + min-height: 1.5em; + margin: 0 0.5em; + vertical-align: top; + + svg { + width: 1.5em; + height: 1.5em; + fill: @ini_link; + display: inline-block; + path { + fill: @ini_link; + } + } + } + + &.prompt { + white-space: normal; + } + } + } + } + } + + /* Security Warning */ + #security__check { + clear: both; + grid-row: 7; + grid-column: 1 / span 2; + } + + /* DokuWiki version */ + #admin__version { + display: block; + box-sizing: border-box; + width: 100%; + max-height: 7em; + overflow: auto; + color: @ini_text_neu; + background: @ini_background_neu url('images/info.svg') .25em .5em no-repeat; + background-size: 1em; + padding: .25em 0 .25em 1.75em; + border: @ini_border 1px solid; + border-radius: .25em; + box-shadow: inset .5pt .5pt 1pt #0008; + grid-row: 9; + grid-column: 1 / span 2; + } } - h1.first-child, - div.level1 { - grid-column: 1 / span 2; - margin-bottom: 1em; - } - - /* main task grouped in two columns */ - ul.admin_tasks { - grid-column: 2; - list-style-type: none; - font-size: 1.125em; - margin: 0; - } - ul.admin_tasks:first-of-type { - grid-row: 3 / span 4; - grid-column: 1; - } - ul.admin_plugins { - grid-row: 6; - grid-column: 2; - } - - /* general menu item styling */ - ul { - padding: 0; - li { - margin: 0 0 1em 0; - font-weight: bold; - list-style-type: none; - white-space: nowrap; - - a { - display: flex; - span { - display: inline-block; - - &.icon { - width: 1.5em; - min-height: 1.5em; - margin: 0 0.5em; - vertical-align: top; - - svg { - width: 1.5em; - height: 1.5em; - fill: @ini_link; - display: inline-block; - path { - fill: @ini_link; - } - } - } - - &.prompt { - white-space: normal; - } - } - } - } - } - - /* Security Warning */ - #security__check { - clear: both; - grid-row: 7; - grid-column: 1 / span 2; - } - - /* DokuWiki version */ - #admin__version { - display: block; - box-sizing: border-box; - width: 100%; - max-height: 7em; - overflow: auto; - color: @ini_text_neu; - background: @ini_background_alt url('images/info.svg') .25em .5em no-repeat; - background-size: 1em; - padding: .25em 0 .25em 1.75em; - border: @ini_border 1px solid; - border-radius: .25em; - box-shadow: inset .5pt .5pt 1pt #0008; - grid-row: 9; - grid-column: 1 / span 2; + /* user manager: */ + #user__manager { + button { + & { + background-color: @ini_background; + border: @ini_text solid 1px; + border-radius: .25em; + padding: .25em .5em; + cursor: pointer; + } + &#usrmgr__del { + background-color: #fcd; + color: @ini_text; + } + &[name="fn[add]"] { + background-color: #cdf; + color: @ini_text; + } + &[name="fn[start]"] { + border-radius: .5em 0 0 .5em; + } + &[name="fn[prev]"], + &[name="fn[next]"] { + border-radius: 0; + border-left-width: 0; + } + &[name="fn[last]"] { + border-radius: 0 .5em .5em 0; + border-left-width: 0; + } + } } } /* style the extension manager items: */ -.dokuwiki #extension__manager { +body.dokuwiki #extension__manager { form.install { box-sizing: border-box; width: 100%; padding: 1em 2em; background-color: #EEE; } form.install .block { text-align: left; width: 100% } form.install input[name=installurl] { @@ -123,16 +179,44 @@ /* dark mode overrides */ @media (prefers-color-scheme: dark) { - body.darkmode.dokuwiki #extension__manager form.install { background-color: #39393D; } - body.darkmode.dokuwiki #extension__manager form.install button[type=submit] { + body.darkmode.mode_admin { + main { + & { + background-color: @ini_background_alt_dark; + border-color: @ini_text_alt_dark; + color: @ini_text_alt_dark; + } + #toc { + background-color: @ini_background_alt_dark; + border-left: @ini_text_alt_dark solid .5pt;; + } + #navYouAreHere { + background-color: @ini_background_dark; + border-color: @ini_text_alt_dark; + } + } + } + + body.darkmode #extension__manager form.install { background-color: #39393D; } + body.darkmode #extension__manager form.install button[type=submit] { color: #CDF; background-color: #346; border-color: #90909B; } - body.darkmode.dokuwiki #extension__manager form.install button[type=submit]::before { filter: invert(.9); } - body.darkmode.dokuwiki div.ui-admin #admin__version { color: @ini_text_alt_dark; background-color: @ini_background_alt_dark; } + body.darkmode #extension__manager form.install button[type=submit]::before { filter: invert(.9); } + body.darkmode div.ui-admin #admin__version { + color: @ini_text_neu_dark; + background-color: @ini_background_neu_dark; + } + + body.darkmode div.ui-admin ul li a span.icon { + svg { + & { fill: @ini_link_dark; } + path { fill: @ini_link_dark; } + } + } } /* below tablet size */ @media (max-width: @ini_tablet_width) { - .dokuwiki div.ui-admin { display: block; } + body.dokuwiki div.ui-admin { display: block; } } \ No newline at end of file diff --git a/templates/55/ad-hominem/css/_cookies.css b/templates/55/ad-hominem/css/_cookies.css index ac5090c..b9c197a 100644 --- a/templates/55/ad-hominem/css/_cookies.css +++ b/templates/55/ad-hominem/css/_cookies.css @@ -32,11 +32,12 @@ float: left; width: 64px; height: 64px; - background: transparent url('images/cookie.svg') no-repeat center; - background-size: 64px; margin: 8px 16px 8px 2px; } - +#cookiebanner .cb_icon svg { + width: 100%; + height: 100%; +} #cookiebanner .cb_action { margin-top: 6pt; display: grid; diff --git a/templates/55/ad-hominem/css/_diff.css b/templates/55/ad-hominem/css/_diff.css index a494cde..47ab478 100644 --- a/templates/55/ad-hominem/css/_diff.css +++ b/templates/55/ad-hominem/css/_diff.css @@ -4,77 +4,77 @@ */ .mode_diff table.diff { - width: 100%; - border-width: 0; + width: 100%; + border-width: 0; } .mode_diff table.diff th, .mode_diff table.diff td { - vertical-align: top; - padding: 0; - border-width: 0; - /* no style.ini colours because deleted and added lines have a fixed background colour */ - background-color: #fff; - color: #333; + vertical-align: top; + padding: 0; + border-width: 0; + /* no style.ini colours because deleted and added lines have a fixed background colour */ + background-color: #fff; + color: #333; } /* table header */ .mode_diff table.diff th { - border-bottom: 1px solid @ini_border; - font-size: 110%; - font-weight: normal; + border-bottom: 1px solid @ini_border; + font-size: 110%; + font-weight: normal; } .mode_diff table.diff th a { - font-weight: bold; + font-weight: bold; } .mode_diff table.diff th span.user { - font-size: .9em; + font-size: .9em; } .mode_diff table.diff th span.sum { - font-size: .9em; - font-weight: bold; + font-size: .9em; + font-weight: bold; } .mode_diff table.diff th.minor { - color: #999; + color: #999; } .mode_diff table.diff_sidebyside th { - width: 50%; + width: 50%; } /* table body */ .mode_diff table.diff .diff-lineheader { - width: .7em; - text-align: right; + width: .7em; + text-align: right; } [dir=rtl] .mode_diff table.diff .diff-lineheader { - text-align: left; + text-align: left; } .mode_diff table.diff .diff-lineheader, .mode_diff table.diff td { - font-family: @ini_mono_fonts; + font-family: @ini_mono_fonts; background-color: #F6F8FA; } .mode_diff table.diff td.diff-blockheader { - font-weight: bold; + font-weight: bold; } .mode_diff table.diff .diff-addedline { - background-color: #E4FFEE; - color: inherit; + background-color: #E4FFEE; + color: inherit; } .mode_diff table.diff .diff-deletedline { - background-color: #FFEEF0; - color: inherit; + background-color: #FFEEF0; + color: inherit; } .mode_diff table.diff td.diff-context { - background-color: #FFF; - color: inherit; + background-color: #FFF; + color: inherit; } .mode_diff table.diff td.diff-addedline strong { - color: #23292E; + color: #23292E; background-color: #A5F2C1; font-weight: normal; } .mode_diff table.diff td.diff-deletedline strong { - color: #23292E; + color: #23292E; background-color: #FFB7BF; font-weight: normal; } @@ -82,63 +82,63 @@ /* diff options */ .mode_diff .diffoptions form { - float: left; + float: left; } .mode_diff .diffoptions p { - float: right; + float: right; } /* diff nav */ .mode_diff table.diff_sidebyside td.diffnav { - padding-bottom: .7em; + padding-bottom: .7em; } .mode_diff .diffnav a { - display: inline-block; - vertical-align: middle; + display: inline-block; + vertical-align: middle; } .mode_diff .diffnav a span { - display: none; + display: none; } .mode_diff .diffnav a:hover, .mode_diff .diffnav a:active, .mode_diff .diffnav a:focus { - background-color: @ini_background_alt; - text-decoration: none; + background-color: @ini_background_alt; + text-decoration: none; } .mode_diff .diffnav a:before { - display: inline-block; - line-height: 1; - padding: .2em .4em; - border: 1px solid @ini_border; - border-radius: 2px; - color: @ini_text; + display: inline-block; + line-height: 1; + padding: .2em .4em; + border: 1px solid @ini_border; + border-radius: 2px; + color: @ini_text; } .mode_diff .diffnav a.diffprevrev:before { - content: '\25C0'; /* left triangle */ + content: '\25C0'; /* left triangle */ } .mode_diff .diffnav a.diffnextrev:before, .mode_diff .diffnav a.difflastrev:before { - content: '\25B6'; /* right triangle */ + content: '\25B6'; /* right triangle */ } .mode_diff .diffnav a.diffbothprevrev:before { - content: '\25C0\25C0'; + content: '\25C0\25C0'; } .mode_diff .diffnav a.diffbothnextrev:before { - content: '\25B6\25B6'; + content: '\25B6\25B6'; } .mode_diff .diffnav select { - width: 60%; - min-width: 9em; - height: 1.5em; /* height is necessary for longer options in Webkit */ + width: 60%; + min-width: 9em; + height: 1.5em; /* height is necessary for longer options in Webkit */ } .mode_diff .diffnav select option[selected] { - font-weight: bold; + font-weight: bold; } /* dark mode overrides */ diff --git a/templates/55/ad-hominem/css/_edit.css b/templates/55/ad-hominem/css/_edit.css index 32889e4..171f7e9 100644 --- a/templates/55/ad-hominem/css/_edit.css +++ b/templates/55/ad-hominem/css/_edit.css @@ -10,30 +10,30 @@ } .mode_edit div.editBox button { - border: #666 solid 1px; - border-radius: 1px; - padding: 3pt 6pt; - margin: 0 2px; - cursor: pointer; + border: #666 solid 1px; + border-radius: 1px; + padding: 3pt 6pt; + margin: 0 2px; + cursor: pointer; } .mode_edit div.editButtons button:hover { text-decoration: underline; } .mode_edit div.editBox button:focus { - outline: @ini_focus_color solid 2px; - background-color: @ini_background; + outline: @ini_focus_color solid 2px; + background-color: @ini_background; } /*____________ toolbar ____________*/ .mode_edit .editBox > .toolbar, .mode_preview .editBox > .toolbar { - display: block; + display: block; position: -webkit-sticky; position: sticky; top: 0; - background-color: @ini_background; + background-color: fadeout(@ini_background, 20%); padding-bottom: 2px; z-index: 9; } @@ -41,33 +41,32 @@ .mode_edit div.toolbar, .mode_preview div.toolbar { - display: inline-block; + display: inline-block; } #draft__status { - font-size: small; - color: @ini_text_alt; - background-color: inherit; + font-size: small; + color: @ini_text_alt; + background-color: inherit; } [dir=rtl] #draft__status { - /* float: left; */ + /* float: left; */ } #tool__bar { - float: left; + float: left; } [dir=rtl] #tool__bar { - float: right; -} - -/* hide the hard-coded button images */ -#tool__bar button>img { - visibility: hidden; + float: right; } #tool__bar button { - background: #E9E9ED url('images/editor/default.svg') center no-repeat; + background: @ini_background_alt none center no-repeat; background-size: 20px; - padding: 3pt 6pt; + padding: 3pt 5pt 1pt 5pt; border: @ini_border solid 1px; + margin-right: 2pt; +} +#tool__bar button:hover { + background-color: @ini_background_neu; } #tool__bar button[aria-haspopup=true]:after, #tool__bar button:nth-child(10):after, @@ -83,67 +82,42 @@ background-size: 13px; } -#tool__bar button[aria-haspopup=true]:after { - background-image: url('images/editor/overlay-menu.svg'); -} -#tool__bar button:nth-child(10):after, -#tool__bar button:nth-child(15):after { - background-image: url('images/editor/overlay-popup.svg'); -} - -/* import the new icons */ -#tool__bar button[accesskey="b"] { background-image: url('images/editor/format-bold.svg'); margin-left: 1.5pt; } -#tool__bar button[accesskey="i"] { background-image: url('images/editor/format-italic.svg'); } -#tool__bar button[accesskey="u"] { background-image: url('images/editor/format-underline.svg'); } -#tool__bar button[accesskey="m"] { background-image: url('images/editor/format-monospace.svg'); } -#tool__bar button[accesskey="d"] { background-image: url('images/editor/format-strikethrough.svg'); } -#tool__bar button[accesskey="8"] { background-image: url('images/editor/format-header-equal.svg'); margin-left: 4pt; } -#tool__bar button[accesskey="9"] { background-image: url('images/editor/format-header-decrease.svg'); } -#tool__bar button[accesskey="0"] { background-image: url('images/editor/format-header-increase.svg'); } -#tool__bar button:nth-child(9) { background-image: url('images/editor/format-header-menu.svg'); } -#tool__bar button[accesskey="l"] { background-image: url('images/editor/insert-link.svg');margin-left:4pt; } -#tool__bar button:nth-child(11) { background-image: url('images/editor/insert-external-link.svg'); } -#tool__bar button[accesskey="-"] { background-image: url('images/editor/format-list-numbered.svg'); margin-left:4pt;} -#tool__bar button[accesskey="."] { background-image: url('images/editor/format-list-bulleted.svg'); } -#tool__bar button:nth-child(14) { background-image: url('images/editor/insert-hr.svg');margin-left:4pt;} -#tool__bar button:nth-child(15) { background-image: url('images/editor/insert-media.svg');margin-left:4pt; } -#tool__bar button:nth-child(16) { background-image: url('images/editor/insert-emoticon.svg');margin-left:4pt; } -#tool__bar button:nth-child(17) { background-image: url('images/editor/insert-symbol.svg'); } -#tool__bar button[accesskey="y"] { background-image: url('images/editor/insert-signature.svg');margin-left:4pt; } - -/* set icons for known plugins: */ -#tool__bar #tbbtn_adhoctagsInline { background-image: url('../../plugins/adhoctags/images/code-tags.svg');margin-left:4pt; } -#tool__bar #tbbtn_adhoctagsBlocks { background-image: url('../../plugins/adhoctags/images/code-brackets.svg'); } - /* buttons inside of toolbar */ .mode_edit div.toolbar button.toolbutton { margin: 0; } /* picker popups (outside of .dokuwiki) */ div.picker { - width: 300px; - border: 1px solid #CCC; - background-color: #EEE; - color: inherit; + width: 300px; + border: 1px solid #CCC; + background-color: #EEE; + color: inherit; } /* picker for headlines */ div.picker.pk_hl { - width: auto; + width: auto; } /* buttons inside of picker */ -div.picker button.pickerbutton, -div.picker button.toolbutton { - padding: .1em .35em; - border-width: 0; +body.dokuwiki div.picker { + button { + &:hover { + background-color: @ini_background_neu; + } + &.pickerbutton, + &.toolbutton { + padding: .1em .35em; + border-width: 0; + } + } } /*____________ edit textarea ____________*/ .dokuwiki textarea.edit { - width: 100%; + width: 100%; padding: 1px 0 0 2px; - margin-bottom: .5em; + margin-bottom: .5em; min-height: 52pt; background-color: #EEE; font-family: 'Source Code Pro',Menlo,Consolas,'Courier New',Courier,monospace; @@ -175,20 +149,20 @@ div.picker button.toolbutton { /*____________ below the textarea ____________*/ .dokuwiki div.editBar { - display: grid; + display: grid; grid-template-columns: 320px minmax(500px, 1fr) auto; align-items: start; - margin-bottom: .5em; + margin-bottom: .5em; } /* size and wrap controls */ #size__ctl { grid-row: 1; - grid-column: 3; + grid-column: 3; min-width: 64px; } #size__ctl img { - cursor: pointer; + cursor: pointer; } /* edit buttons */ @@ -199,8 +173,8 @@ div.picker button.toolbutton { grid-template-columns: 1fr 1fr 1fr; } [dir=rtl] .dokuwiki .editBar .editButtons { - margin-right: 0; - margin-left: 1em; + margin-right: 0; + margin-left: 1em; } .dokuwiki .editBar .editButtons button { border: #CCC solid 1.5pt; @@ -242,7 +216,7 @@ div.picker button.toolbutton { .dokuwiki .editBar .summary { grid-row: 1; grid-column: 2; - display: grid; + display: grid; grid-template-columns: 1fr auto; line-height: 1em; padding-top: 2pt; @@ -259,7 +233,7 @@ div.picker button.toolbutton { } .dokuwiki .editBar .summary label { - white-space: nowrap; + white-space: nowrap; } .dokuwiki .editBar .summary label:last-child { padding: 2pt 0 2pt 4pt; @@ -271,15 +245,15 @@ div.picker button.toolbutton { padding: 2pt 5pt 0 0; } .dokuwiki .editBar .summary label span { - font-size: small; + font-size: small; margin: 0 1pt 0 3pt; } .dokuwiki .editBar .summary input { } /* change background colour if summary is missing */ .dokuwiki .editBar .summary input.missing { - color: @ini_text; - background-color: #ffcccc; + color: @ini_text; + background-color: #ffcccc; } /* toolbar popups */ @@ -322,10 +296,10 @@ div.picker button.toolbutton { ********************************************************************/ .dokuwiki div.preview { - border: dotted #CCC; - border-width: .2em 0; - padding: 1.4em 0; - margin-bottom: 1.4em; + border: dotted #CCC; + border-width: .2em 0; + padding: 1.4em 0; + margin-bottom: 1.4em; } /* narrow screen overrides: */ @@ -370,7 +344,7 @@ div.picker button.toolbutton { @media (prefers-color-scheme: dark) { body.darkmode .editBox > .toolbar { - background-color: @ini_background_dark; + background-color: fadeout(@ini_background_dark, 20%); } body.darkmode textarea.edit { background-color: @ini_background_alt_dark; @@ -400,7 +374,7 @@ div.picker button.toolbutton { } body.mode_edit.darkmode .editBar .editButtons button::before, body.mode_preview.darkmode .editBar .editButtons button::before { - filter: invert(.9); + filter: invert(1) opacity(.67); } body.darkmode .editBar .editButtons button#edbtn__save { background-color: #334466; @@ -417,13 +391,21 @@ div.picker button.toolbutton { body.mode_edit.darkmode #tool__bar button, body.mode_preview.darkmode #tool__bar button { + background-color: #8C8C8C; border-color: @ini_border_dark; - filter: invert(.8); + } + body.mode_edit.darkmode #tool__bar button:hover, + body.mode_preview.darkmode #tool__bar button:hover { + background-color: @ini_text_dark; } body.mode_edit.darkmode .editBar .editButtons button, body.mode_preview.darkmode .editBar .editButtons button { border-color: @ini_border_dark; } + body.mode_edit.darkmode #tool__bar button img, + body.mode_preview.darkmode #tool__bar button img { + filter: brightness(90%); + } body.mode_edit.darkmode .editBar .summary #edit__summary, body.mode_preview.darkmode .editBar .summary #edit__summary { @@ -432,6 +414,11 @@ div.picker button.toolbutton { color: @ini_text_dark; } + body.darkmode #draft__status { + color: @ini_text_alt_dark; + } + + body.darkmode div.picker { & { background-color: @ini_background_dark; @@ -439,8 +426,8 @@ div.picker button.toolbutton { } button { & { - color: @ini_text_dark; - background-color: @ini_background_alt_dark; + color: @ini_text; + background-color: #8C8C8C; border-color: @ini_border_dark; } &:hover { diff --git a/templates/55/ad-hominem/css/_fileuploader.css b/templates/55/ad-hominem/css/_fileuploader.css index 5b89a37..c829d59 100644 --- a/templates/55/ad-hominem/css/_fileuploader.css +++ b/templates/55/ad-hominem/css/_fileuploader.css @@ -4,114 +4,160 @@ */ .qq-uploader { - position: relative; - width: 100%; + position: relative; + width: 100%; +} +#mediamanager__page .qq-upload-list li { + display: grid; + grid-template-columns: 1.25rem auto 1rem; + grid-gap: 5px; + align-items: center; +} +#mediamanager__page .qq-upload-list li::before { + content: '\1F5CE'; + color: @ini_text; + font-size: 1.25rem; + display: inline-block; + width: 1.25rem; + height:1.5rem; + text-align: right; +} + +#mediamanager__page .qq-upload-list li input[type="text"] { + font-family: @ini_mono_fonts; + font-size: @ini_alt_font_size; + background-color: transparent; + border: 1px solid transparent; + padding: .25em; + border-radius: 1.5pt; +} +#mediamanager__page .qq-upload-list li input[type="text"]:focus { + border-color: @ini_border; } .qq-uploader .error { - color: #f00; - background-color: #fff; + color: #f00; + background-color: #fff; } /* select file button */ -.qq-upload-button { - display: inline-block; - text-decoration: none; - font-size: 100%; - cursor: pointer; - margin: 1px 1px 5px; - background-color: #15395B; +.qq-upload-button, +#mediamanager__upload_button { + display: inline-block; + text-decoration: none; + font-size: 1rem; + cursor: pointer; + margin: 1px 1px 5px; padding: 2pt 20pt; + border: none 0; color: #FFF; cursor: pointer; } +.qq-upload-button { + background-color: #15395B; +} #mediamanager__upload_button { - padding: 3pt 6pt; - border: #666 solid 1px; + background-color: #B71C1C; + padding: .4rem 2.5rem; } + .qq-upload-button-focus { - outline: 1px dotted; + outline: 1px dotted; } /* drop area */ .qq-upload-drop-area { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - min-height: 70px; - z-index: 2; - background: @ini_background_neu; - color: @ini_text; - text-align: center; + background: @ini_background_neu; + color: @ini_text_neu; + text-align: center; } .qq-upload-drop-area span { - display: block; - position: absolute; - top: 50%; - width: 100%; - margin-top: -8px; - font-size: 120%; + padding: 2em .5em; } .qq-upload-drop-area-active { - background: @ini_background_alt; + position: fixed; + top: 0; left: 0; + width: 100vw; + height: 100vh; + min-height: 70px; + background: fadeout(@ini_background_alt, 10%);; + z-index: 99; +} +.qq-upload-drop-area-active span { + display: block; + position: absolute; + top: 50%; + width: 100%; + margin-top: -8px; + font-size: 120%; + color: #15395B; } - /* list of files to upload */ div.qq-uploader ul { - margin: 0; - padding: 0; - list-style: none; + margin: 0; + padding: 0; + list-style: none; } .qq-uploader li { - margin: 0 0 5px; - color: @ini_text; + margin: 0 0 5px; + color: @ini_text; } .qq-uploader li span, .qq-uploader li input, .qq-uploader li a { - margin-right: 5px; + margin-right: 5px; } .qq-upload-file { - display: block; - font-weight: bold; + display: block; + font-weight: bold; } .qq-upload-spinner { - display: inline-block; - background: url("../../images/throbber.gif"); - width: 15px; - height: 15px; - vertical-align: text-bottom; + display: inline-block; + background: url("../../images/throbber.gif"); + width: 15px; + height: 15px; + vertical-align: text-bottom; } -.qq-upload-size, -.qq-upload-cancel { - font-size: 85%; +.qq-upload-size { + font-size: 85%; } +.qq-upload-cancel { + font-size: 1rem; + line-height: 1.25; + width: 1em; height: 1.5em; + overflow: hidden; +} +.qq-upload-cancel::before { + content: '\1F5D9'; + display: inline-block; + width: 1em; + height: 1.5em; +} + .qq-upload-failed-text { - display: none; + display: none; } .qq-upload-fail .qq-upload-failed-text { - display: inline; + display: inline; } .qq-action-container * { - vertical-align: middle; + vertical-align: middle; } .qq-overwrite-check input { - margin-left: 10px; + margin-left: 10px; } /* media tree overrides */ @@ -120,4 +166,39 @@ div.qq-uploader ul { } #mediamanager__page .ui-resizable-e { background-color: #EEE; +} + +/* dark mode overrides */ +@media (prefers-color-scheme: dark) { + + body.darkmode { + .qq-upload-button { + background-color: #1976D2; + } + + .qq-upload-drop-area { + background: @ini_background_neu_dark; + color: @ini_text_neu_dark; + } + + .qq-upload-drop-area-active { + background: fadeout(@ini_background_alt_dark, 10%);; + } + .qq-upload-drop-area-active span { + color: #1976D2; + } + + #mediamanager__page .qq-upload-list { + li::before { + color: @ini_text_dark; + } + li input[type="text"] { + color: @ini_text_dark; + } + li input[type="text"]:focus { + border-color: @ini_border_dark; + } + + } + } } \ No newline at end of file diff --git a/templates/55/ad-hominem/css/_footnotes.css b/templates/55/ad-hominem/css/_footnotes.css index a57dfb9..a1526d5 100644 --- a/templates/55/ad-hominem/css/_footnotes.css +++ b/templates/55/ad-hominem/css/_footnotes.css @@ -2,30 +2,98 @@ * This file provides styles for footnotes. */ +/* pre-defined custom footnote styles */ + +@counter-style: ~"@counter-style"; +@{counter-style} super-decimal { + system: numeric; + symbols: '\2070' '\B9' '\B2' '\B3' '\2074' '\2075' '\2076' '\2077' '\2078' '\2079'; + /* symbols: '⁰' '¹' '²' '³' '⁴' '⁵' '⁶' '⁷' '⁸' '⁹'; */ +} + +/* create a custom counter for the footnotes: */ +body, div.footnotes { + counter-reset: footnotes; +} + /*____________ footnotes inside the text ____________*/ /* link to footnote inside the text */ + + /* .dokuwiki sup, .dokuwiki sub {ignore subscript and superscript tags! + vertical-align: baseline; + font-size: inherit; +} */ .dokuwiki sup a.fn_top { + + & { + vertical-align: baseline; + font-size: inherit; + padding: 0 .5pt; + font-size: 0;text-decoration: none; + } + &::after { + content: counter(footnotes, super-decimal); + counter-increment: footnotes; + font-size: 1.1667rem; + font-weight: bold; + vertical-align: -.2em; + } } + /* JSpopup */ div.insitu-footnote { - max-width: 40%; - min-width: 5em; + max-width: 40%; + min-width: 5em; } /*____________ footnotes at the bottom of the page ____________*/ .dokuwiki div.footnotes { - border-top: 1px solid @ini_border; - padding: .5em 0 0 0; - margin: 1em 0 0 0; - clear: both; + & { + border-top: 1px solid @ini_border; + padding: .5em 0 0 0; + margin: 1em 0 0 0; + clear: both; + } + > .fn { + & { + margin: 0 0 0 2.5rem !important; + white-space-collapse: discard; + text-indent: ~"calc(-2.5rem - .3em)"; /* compensate for the whitespace character! */ + } + sup { /* ignore superscript tags! */ + vertical-align: baseline; + font-size: 1em; + } + .fn_bot { + & { + display: inline-block; + text-align: right; + margin: 0 .5rem 0 0; + width: 2rem; height: .972rem; + font-variant-numeric: oldstyle-nums; + font-size: 0; + } + &::after { + content: counter(footnotes, decimal) '.'; + counter-increment: footnotes; + font-variant-numeric: oldstyle-nums; + display: inline-block; + font-size: .972rem; + width: 2rem; + } + } + & > .content { + display: inline; + } + } } -.dokuwiki div.footnotes div.fn { -} -.dokuwiki div.footnotes div.fn div.content { - display: inline; -} -.dokuwiki div.footnotes div.fn sup a.fn_bot { - font-weight: bold; + +[dir=rtl] .dokuwiki div.footnotes > .fn { + margin: 0 2.5em 0 0; } +[dir=rtl] .dokuwiki div.footnotes > .fn .fn_bot { + text-align: left; + margin: 0 0 0 .5em; +} \ No newline at end of file diff --git a/templates/55/ad-hominem/css/_forms.css b/templates/55/ad-hominem/css/_forms.css index c3fcdfc..6582738 100644 --- a/templates/55/ad-hominem/css/_forms.css +++ b/templates/55/ad-hominem/css/_forms.css @@ -3,11 +3,11 @@ /** * This file provides styles for forms in general and specifically * for ?do= - * - login - * - resendpwd - * - register - * - profile - * - subscribe + * - login + * - resendpwd + * - register + * - profile + * - subscribe */ /* ---------------- forms ------------------------ */ @@ -23,7 +23,7 @@ font-weight: bold; } [dir=rtl] .dokuwiki label.block { - text-align: left; + text-align: left; } .dokuwiki label.simple { @@ -32,7 +32,7 @@ font-weight: normal; } [dir=rtl] .dokuwiki label.simple { - text-align: right; + text-align: right; } .dokuwiki label.block select, @@ -41,7 +41,7 @@ } .dokuwiki label span { - vertical-align: middle; + vertical-align: middle; } .dokuwiki fieldset { @@ -62,7 +62,7 @@ } .dokuwiki button { - vertical-align: middle; + vertical-align: middle; } .dokuwiki input:focus, .dokuwiki select:focus, @@ -76,7 +76,7 @@ #dw__resendpwd fieldset, #dw__register fieldset { max-width: calc(100% - 1em); - padding-bottom: 0.7em; + padding-bottom: 0.7em; } #dw__login fieldset label.block, @@ -86,12 +86,12 @@ max-width: 320px; } #dw__login label[for="remember__me"] { - margin: 0 10% 1.4em; + margin: 0 10% 1.4em; } #dw__profiledelete { - display: block; - margin-top: 2.8em; + display: block; + margin-top: 2.8em; } /** @@ -99,20 +99,20 @@ */ #subscribe__form { - display: block; - width: 400px; - text-align: center; + display: block; + width: 400px; + text-align: center; } #subscribe__form fieldset { - text-align: left; - margin: 0.5em 0; + text-align: left; + margin: 0.5em 0; } [dir=rtl] #subscribe__form fieldset { - text-align: right; + text-align: right; } #subscribe__form label { - display: block; - margin: 0 0.5em 0.5em; + display: block; + margin: 0 0.5em 0.5em; } diff --git a/templates/55/ad-hominem/css/_imgdetail.css b/templates/55/ad-hominem/css/_imgdetail.css index a074000..50a350b 100644 --- a/templates/55/ad-hominem/css/_imgdetail.css +++ b/templates/55/ad-hominem/css/_imgdetail.css @@ -3,25 +3,25 @@ */ #dokuwiki__detail { - padding: 1em; + padding: 1em; } #dokuwiki__detail h1 { } #dokuwiki__detail img { - float: left; - margin: 0 1.5em .5em 0; + float: left; + margin: 0 1.5em .5em 0; } [dir=rtl] #dokuwiki__detail div.content img { - float: right; - margin-right: 0; - margin-left: 1.5em; + float: right; + margin-right: 0; + margin-left: 1.5em; } #dokuwiki__detail div.img_detail { - float: left; + float: left; } [dir=rtl] #dokuwiki__detail div.content div.img_detail { - float: right + float: right } #dokuwiki__detail div.img_detail h2 { @@ -34,5 +34,5 @@ } #dokuwiki__detail p.back { - clear: both; + clear: both; } diff --git a/templates/55/ad-hominem/css/_languages.less b/templates/55/ad-hominem/css/_languages.less index 651c237..8b6e78b 100644 --- a/templates/55/ad-hominem/css/_languages.less +++ b/templates/55/ad-hominem/css/_languages.less @@ -163,7 +163,7 @@ ul li a { &::before { border-color: @ini_text_dark; color: @ini_text_dark; } &.wikilink1 { color: @ini_link_dark; } - &.wikilink2 bdi { color: @ini_missing_dark; } + &.wikilink2 bdi { color: @ini_link_dark; } } } diff --git a/templates/55/ad-hominem/css/_links.css b/templates/55/ad-hominem/css/_links.css index f9ee5de..c2c5c52 100644 --- a/templates/55/ad-hominem/css/_links.css +++ b/templates/55/ad-hominem/css/_links.css @@ -9,26 +9,26 @@ a.wikilink1 { } /* not existing wikipage */ a.wikilink2 { - text-decoration: none; + text-decoration: none; } a.wikilink2:link, a.wikilink2:visited { - border-bottom: 1px dashed; + border-bottom: 1px dashed; } a.wikilink2:hover, a.wikilink2:active, a.wikilink2:focus { - border-bottom-width: 0; + border-bottom-width: 0; } /* any link to current page */ span.curid a { - font-weight: bold; + font-weight: bold; } /* Wikipedia Links */ a.iw_wp, a.iw_wpfr, a.iw_wpde, a.iw_wpes, a.iw_wppl, a.iw_wpjp, a.iw_wpmeta { - background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMTAwJTI1JyBoZWlnaHQ9JzEwMCUyNScgdmlld0JveD0nMCAwIDUxMiA1MTInIHZlcnNpb249JzEuMScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48Y2lyY2xlIGN4PScyNTYnIGN5PScyNTYnIHI9JzI1MCcgc3R5bGU9J2ZpbGw6I2ViZWJlYjtzdHJva2U6IzMzMztzdHJva2Utd2lkdGg6MTBweDsnLz48cGF0aCBkPSdNNjUsMTUybDAsOGMwLDIgMSwzIDQsM2MyMCwxIDIwLDUgMjgsMjNsOTAsMTk2YzcsMTQgMTYsMTYgMjUsLTFsNDUsLTg4bDQyLDg4YzgsMTUgMTYsMTYgMjQsMGw4NiwtMTk0YzgsLTE3IDE5LC0yNCAzNiwtMjRjMiwwIDIsLTEgMiwtM2wwLC04bC04MCwwbC0xLDFsMCw3YzAsMiAyLDMgNCwzYzEwLDAgMjksMiAyMSwxOWwtNzAsMTY2bC0zLC0xbC00MywtODhsMzcsLTcyYzgsLTE1IDEwLC0yNCAyNSwtMjRjMiwwIDQsLTEgNCwtM2wwLC03bC0xLC0xbC02NCwwbC0xLDFsMCw3YzAsMyA0LDMgNywzYzE4LDEgMTYsOCAxMCwxOWwtMjcsNTZsLTI1LC01MmMtOSwtMTYgLTExLC0yMSAyLC0yMmMzLC0xIDgsLTEgOCwtNGwwLC03bC0xLC0xbC02OSwwbC0xLDFsMCw4YzAsMiAyLDIgNSwyYzEyLDIgMTIsMyAyMywyNmw0MCw4NGwtMzcsNzVsLTMsLTFsLTc2LC0xNjdjLTgsLTE3IDIsLTE2IDE4LC0xN2MzLDAgMywtMSAzLC0zbDAsLTdsLTEsLTFsLTg2LDBaJyBzdHlsZT0nZmlsbDojMzMzOycvPjwvc3ZnPg=="); + background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMTAwJTI1JyBoZWlnaHQ9JzEwMCUyNScgdmlld0JveD0nMCAwIDUxMiA1MTInIHZlcnNpb249JzEuMScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48Y2lyY2xlIGN4PScyNTYnIGN5PScyNTYnIHI9JzI1MCcgc3R5bGU9J2ZpbGw6I2ViZWJlYjtzdHJva2U6IzMzMztzdHJva2Utd2lkdGg6MTBweDsnLz48cGF0aCBkPSdNNjUsMTUybDAsOGMwLDIgMSwzIDQsM2MyMCwxIDIwLDUgMjgsMjNsOTAsMTk2YzcsMTQgMTYsMTYgMjUsLTFsNDUsLTg4bDQyLDg4YzgsMTUgMTYsMTYgMjQsMGw4NiwtMTk0YzgsLTE3IDE5LC0yNCAzNiwtMjRjMiwwIDIsLTEgMiwtM2wwLC04bC04MCwwbC0xLDFsMCw3YzAsMiAyLDMgNCwzYzEwLDAgMjksMiAyMSwxOWwtNzAsMTY2bC0zLC0xbC00MywtODhsMzcsLTcyYzgsLTE1IDEwLC0yNCAyNSwtMjRjMiwwIDQsLTEgNCwtM2wwLC03bC0xLC0xbC02NCwwbC0xLDFsMCw3YzAsMyA0LDMgNywzYzE4LDEgMTYsOCAxMCwxOWwtMjcsNTZsLTI1LC01MmMtOSwtMTYgLTExLC0yMSAyLC0yMmMzLC0xIDgsLTEgOCwtNGwwLC03bC0xLC0xbC02OSwwbC0xLDFsMCw4YzAsMiAyLDIgNSwyYzEyLDIgMTIsMyAyMywyNmw0MCw4NGwtMzcsNzVsLTMsLTFsLTc2LC0xNjdjLTgsLTE3IDIsLTE2IDE4LC0xN2MzLDAgMywtMSAzLC0zbDAsLTdsLTEsLTFsLTg2LDBaJyBzdHlsZT0nZmlsbDojMzMzOycvPjwvc3ZnPg=="); } a.iw_google_de { @@ -46,22 +46,22 @@ a.windows, a.mail, a.mediafile, a.interwiki { - background-repeat: no-repeat; - background-position: 0 center; + background-repeat: no-repeat; + background-position: 0 center; background-size: 1.1em; - padding: 0 0 0 1.25em; + padding: 0 0 0 1.25em; } /* external link */ a.urlextern { - background-image: url(../../images/external-link.png); + background-image: url(../../images/external-link.png); } /* windows share */ a.windows { - background-image: url(../../images/unc.png); + background-image: url(../../images/unc.png); } /* email link */ a.mail { - background-image: url(../../images/email.png); + background-image: url(../../images/email.png); } /* icons of the following are set by dokuwiki in lib/exe/css.php */ @@ -78,8 +78,8 @@ a.interwiki { [dir=rtl] a.mail, [dir=rtl] a.interwiki, [dir=rtl] a.mediafile { - background-position: right center; - padding: 0 18px 0 0; + background-position: right center; + padding: 0 18px 0 0; } @@ -89,5 +89,4 @@ a.interwiki { body.darkmode a.iw_wp, body.darkmode a.iw_wpfr, body.darkmode a.iw_wpde, body.darkmode a.iw_wpes, body.darkmode a.iw_wppl, body.darkmode a.iw_wpjp, body.darkmode a.iw_wpmeta { background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMTAwJScgaGVpZ2h0PScxMDAlJyB2aWV3Qm94PScwIDAgNTEyIDUxMicgdmVyc2lvbj0nMS4xJyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnPjxjaXJjbGUgY3g9JzI1NicgY3k9JzI1Nicgcj0nMjUwJyBzdHlsZT0nZmlsbDojMzMzO3N0cm9rZTojZWJlYmViO3N0cm9rZS13aWR0aDoxMHB4OycvPjxwYXRoIGQ9J002NSwxNTJsMCw4YzAsMiAxLDMgNCwzYzIwLDEgMjAsNSAyOCwyM2w5MCwxOTZjNywxNCAxNiwxNiAyNSwtMWw0NSwtODhsNDIsODhjOCwxNSAxNiwxNiAyNCwwbDg2LC0xOTRjOCwtMTcgMTksLTI0IDM2LC0yNGMyLDAgMiwtMSAyLC0zbDAsLThsLTgwLDBsLTEsMWwwLDdjMCwyIDIsMyA0LDNjMTAsMCAyOSwyIDIxLDE5bC03MCwxNjZsLTMsLTFsLTQzLC04OGwzNywtNzJjOCwtMTUgMTAsLTI0IDI1LC0yNGMyLDAgNCwtMSA0LC0zbDAsLTdsLTEsLTFsLTY0LDBsLTEsMWwwLDdjMCwzIDQsMyA3LDNjMTgsMSAxNiw4IDEwLDE5bC0yNyw1NmwtMjUsLTUyYy05LC0xNiAtMTEsLTIxIDIsLTIyYzMsLTEgOCwtMSA4LC00bDAsLTdsLTEsLTFsLTY5LDBsLTEsMWwwLDhjMCwyIDIsMiA1LDJjMTIsMiAxMiwzIDIzLDI2bDQwLDg0bC0zNyw3NWwtMywtMWwtNzYsLTE2N2MtOCwtMTcgMiwtMTYgMTgsLTE3YzMsMCAzLC0xIDMsLTNsMCwtN2wtMSwtMWwtODYsMFonIHN0eWxlPSdmaWxsOiNlYmViZWI7Jy8+PC9zdmc+"); } - } \ No newline at end of file diff --git a/templates/55/ad-hominem/css/_media_fullscreen.css b/templates/55/ad-hominem/css/_media_fullscreen.css index dd703a2..78809cb 100644 --- a/templates/55/ad-hominem/css/_media_fullscreen.css +++ b/templates/55/ad-hominem/css/_media_fullscreen.css @@ -10,161 +10,170 @@ /*____________ structure ____________*/ #mediamanager__page h1 { - margin-bottom: .5em; + margin-bottom: .5em; } #mediamanager__page { - /* min-width must be summary of all 3 panels' min-widths */ - min-width: 50em; /* @change */ - width: 100%; - text-align: left; + /* min-width must be summary of all 3 panels' min-widths */ + min-width: 50em; /* @change */ + width: 100%; + text-align: left; } [dir=rtl] #mediamanager__page { - text-align: right; + text-align: right; } #mediamanager__page .panel { - float: left; + float: left; } [dir=rtl] #mediamanager__page .panel { - float: right; + float: right; } #mediamanager__page .namespaces { - width: 20%; - min-width: 10em; /* @change */ - left:0 !important; /* overrules jQuery UI resizable in rtl */ + width: 20%; + min-width: 10em; /* @change */ + left:0 !important; /* overrules jQuery UI resizable in rtl */ } #mediamanager__page .filelist { - width: 50%; - min-width: 25em; /* @change */ - left:0 !important; /* overrules jQuery UI resizable in rtl */ + width: 50%; + min-width: 25em; /* @change */ + left:0 !important; /* overrules jQuery UI resizable in rtl */ } #mediamanager__page .file { - width: 30%; - min-width: 15em; /* @change */ + width: 30%; + min-width: 15em; /* @change */ } #mediamanager__page .tabs li { - white-space: nowrap; + white-space: nowrap; } #mediamanager__page .panelHeader { - background-color: @ini_background_alt; - margin: 0 10px 10px 0; - padding: 10px 10px 8px; - text-align: left; - min-height: 20px; - overflow: hidden; + background-color: @ini_background_alt; + margin: 0 10px 10px 0; + padding: 10px 10px 8px; + text-align: left; + min-height: 20px; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } [dir=rtl] #mediamanager__page .panelHeader { - text-align: right; - margin: 0 0 10px 10px; + text-align: right; + margin: 0 0 10px 10px; } #mediamanager__page .panelContent { - overflow-y: auto; - overflow-x: hidden; - padding: 3px 0 0 0; - margin: 0 10px 10px 0; - position: relative; + overflow-y: auto; + overflow-x: hidden; + padding: 3px 0 0 0; + margin: 0 10px 10px 0; + position: relative; } [dir=rtl] #mediamanager__page .panelContent { - text-align: right; - margin: 0 0 10px 10px; + text-align: right; + margin: 0 0 10px 10px; } #mediamanager__page .file .panelHeader, #mediamanager__page .file .panelContent { - margin-right: 0; + margin-right: 0; } [dir=rtl] #mediamanager__page .file .panelHeader, [dir=rtl] #mediamanager__page .file .panelContent { - margin-left: 0; + margin-left: 0; } -#mediamanager__page .ui-resizable-e, -[dir=rtl] #mediamanager__page .ui-resizable-w { - width: 6px; - right: 2px; - background: transparent url(../../images/resizecol.png) center center no-repeat; +#mediamanager__page .ui-resizable-handle.ui-resizable-e, +[dir=rtl] #mediamanager__page .ui-resizable-handle.ui-resizable-w { + width: 6px; + right: 2px; + background: @ini_background_neu url(../../images/resizecol.png) center center no-repeat; } #mediamanager__page .ui-resizable-e:hover, [dir=rtl] #mediamanager__page .ui-resizable-w:hover { - background-color: @ini_background_alt; + background-color: @ini_background; } #mediamanager__page dd { - margin: 0; + margin: 0; } #mediamanager__page .panelHeader h3 { - float: left; - font-weight: normal; - font-size: 1em; - padding: 0; - margin: 0 0 3px; + float: left; + font-weight: normal; + font-size: 1em; + padding: 0; + margin: 0 0 3px; } [dir=rtl] #mediamanager__page .panelHeader h3 { - float : right + float : right } /*____________ namespaces panel ____________*/ [dir=rtl] #mediamanager__page .namespaces { - text-align: right; + text-align: right; } /* make it look like a tab (as in _tabs.css) */ #mediamanager__page .namespaces h2 { - font-size: 1em; - display: inline-block; - padding: .3em .8em; - margin: 0 0 0 .3em; - border-radius: .5em .5em 0 0; - font-weight: normal; - background-color: @ini_background_alt; - color: @ini_text; - border: 1px solid @ini_border; - border-bottom-color: @ini_background_alt; - line-height: 1.4em; - position: relative; - bottom: -1px; - z-index: 2; + font-size: 1em; + display: inline-block; + padding: .3em .8em; + margin: 0 0 0 .3em; + border-radius: .5em .5em 0 0; + font-weight: normal; + background-color: @ini_background_alt; + color: @ini_text; + border: 1px solid @ini_border; + border-bottom-color: @ini_background_alt; + line-height: 1.4em; + position: relative; + bottom: -1px; + z-index: 2; } [dir=rtl] #mediamanager__page .namespaces h2 { - margin: 0 .3em 0 0; - position: relative; - right: 10px; + margin: 0 .3em 0 0; + position: relative; + right: 10px; } #mediamanager__page .namespaces .panelHeader { - border-top: 1px solid @ini_border; - z-index: 1; + border-top: 1px solid @ini_border; + z-index: 1; } #mediamanager__page .namespaces ul { - margin-left: .2em; - margin-bottom: 0; - padding: 0; - list-style: none; + margin: 0 2px 0 0; + padding: 0; + list-style: none; } [dir=rtl] #mediamanager__page .namespaces ul { - margin-left: 0; - margin-right: .2em; + margin: 0 0 0 2px; } #mediamanager__page .namespaces ul ul { - margin-left: 1em; + margin-left: 1em; } [dir=rtl] #mediamanager__page .namespaces ul ul { - margin-left: 0; - margin-right: 1em; + margin-left: 0; + margin-right: 1em; } #mediamanager__page .namespaces ul ul li { - margin: 0; + margin: 0; +} +#mediamanager__page .namespaces ul a { + display: block; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} +#mediamanager__page .namespaces ul li::before { + content: none !important; } #mediamanager__page .namespaces ul .selected { - background-color: __highlight__; - font-weight: bold; + background-color: __highlight__; + font-weight: bold; } @@ -173,387 +182,404 @@ /* file list header */ #mediamanager__page .panelHeader form.options { - float: right; - margin-top: -3px; + float: right; + margin-top: .25rem; } [dir=rtl] #mediamanager__page .panelHeader form.options { - float : left + float : left } #mediamanager__page .panelHeader ul { - list-style: none; - margin: 0; - padding: 0; + list-style: none; + margin: 0; + padding: 0; } #mediamanager__page .panelHeader ul li { - color: @ini_text; - float: left; - line-height: 1; - padding-left: 3px; + color: @ini_text; + float: left; + line-height: 1; + padding-left: 3px; } [dir=rtl] #mediamanager__page .panelHeader ul li { - padding-right: 3px; - padding-left: 0; - float: right; + padding-right: 3px; + padding-left: 0; + float: right; } #mediamanager__page .panelHeader ul li.ui-controlgroup-horizontal { - padding-left: 2px; - margin: 0 0 0 5px; + padding-left: 2px; + margin: 0 0 0 5px; } /* #mediamanager__page .panelHeader ul li.listType { - background: url('../../images/icon-list.png') 3px 1px no-repeat; + background: url('../../images/icon-list.png') 3px 1px no-repeat; } #mediamanager__page .panelHeader ul li.sortBy { - background: url('../../images/icon-sort.png') 3px 1px no-repeat; + background: url('../../images/icon-sort.png') 3px 1px no-repeat; } */ [dir=rtl] #mediamanager__page .panelHeader ul li.ui-controlgroup-horizontal { - padding-left: 0; - padding-right: 2px; - margin: 0 5px 0 0; - background-position: right 1px; + padding-left: 0; + padding-right: 2px; + margin: 0 5px 0 0; + background-position: right 1px; } #mediamanager__page .panelHeader form.options .ui-controlgroup-horizontal label{ - font-size: 90%; - margin-right: -0.4em; - padding: .3em .5em; - line-height: 1; + font-size: 90%; + margin-right: -0.4em; + padding: .3em .5em; + line-height: 1; } /* file list content */ #mediamanager__page .filelist ul { - padding: 0; - margin: 0 10px 0 0; + padding: 0; + margin: 0 10px 0 0; } [dir=rtl] #mediamanager__page .filelist ul { - margin: 0 0 0 10px; + margin: 0 0 0 10px; } #mediamanager__page .filelist ul.rows { - margin: 0; + margin: 0; } #mediamanager__page .filelist .panelContent ul li:hover { - background-color: @ini_background_alt; + background-color: @ini_background_alt; } #mediamanager__page .filelist li dt a { - vertical-align: middle; - display: table-cell; - overflow: hidden; + vertical-align: middle; + display: table-cell; + overflow: hidden; +} +#mediamanager__page .filelist ul dl dt { + display: block; + border-radius: 2px; + box-shadow: inset 1px 1px 2px 1px #00000066; + background: @ini_background_alt url("data:image/gif;base64,R0lGODlhEAAQAHAAACwAAAAAEAAQAIHd3d3u7u4AAAAAAAACH4RvoauIzNyBSyYaLMDZcv15HAaSIlWiJ5Sya/RWVgEAOw==") center; +} +#mediamanager__page .filelist ul dl dt img { + -webkit-filter: drop-shadow(2px 2px 2px #00000066); + filter: drop-shadow(2px 2px 2px #00000066); } - /* file list as thumbs */ #mediamanager__page .filelist .thumbs li { - width: 100px; - min-height: 130px; - display: inline-block; - /* the right margin should visually be 10px, but because of its inline-block nature the whitespace inbetween is about 4px more */ - margin: 0 6px 10px 0; - background-color: @ini_background_neu; - color: @ini_text; - padding: 5px; - vertical-align: top; - text-align: center; - position: relative; - line-height: 1.2; + width: 114px; + min-height: 132px; + display: inline-block; + /* the right margin should visually be 10px, but because of its inline-block nature the whitespace inbetween is about 4px more */ + margin: 0 6px 10px 0; + background-color: @ini_background_neu; + color: @ini_text; + padding: 5px; + vertical-align: top; + text-align: center; + position: relative; + line-height: 1.2; } [dir=rtl] #mediamanager__page .filelist .thumbs li { - margin-right: 0; - margin-left: 6px; + margin-right: 0; + margin-left: 6px; } #mediamanager__page .filelist .thumbs li dt a { - width: 100px; - height: 90px; + width: 110px; + height: 110px; } #mediamanager__page .filelist .thumbs li dt a img { - max-width: 90px; - max-height: 90px; + display: block; + max-width: 150px; + max-height: 150px; + padding: 5px; + margin: auto; } #mediamanager__page .filelist .thumbs li .name, #mediamanager__page .filelist .thumbs li .size, #mediamanager__page .filelist .thumbs li .filesize, #mediamanager__page .filelist .thumbs li .date { - display: block; - overflow: hidden; - text-overflow: ellipsis; - width: 90px; - white-space: nowrap; + display: block; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; font-size: 10pt; } #mediamanager__page .filelist .thumbs li .name { - padding: 5px 0; - font-weight: bold; + padding: 5px 0; + font-weight: bold; } #mediamanager__page .filelist .thumbs li .date { - font-style: italic; - white-space: normal; + font-style: italic; + white-space: normal; } /* file list as rows */ #mediamanager__page .filelist .rows li { - list-style: none; - display: block; - position: relative; - max-height: 50px; - margin: 0 0 3px 0; - background-color: @ini_background; - color: @ini_text; - overflow: hidden; + list-style: none; + display: block; + position: relative; + max-height: 50px; + margin: 0 0 3px 0; + background-color: @ini_background; + color: @ini_text; + overflow: hidden; } #mediamanager__page .filelist .rows li:nth-child(2n+1) { - background-color: @ini_background_neu; + background-color: @ini_background_neu; } #mediamanager__page .filelist .rows li dt { - float: left; - width: 10%; - height: 40px; - text-align: center; + float: left; + width: 10%; + height: 40px; + text-align: center; } [dir=rtl] #mediamanager__page .filelist .rows li dt { - float: right; + float: right; } #mediamanager__page .filelist .rows li dt a { - width: 100px; - height: 40px; + width: 100px; + height: 40px; } #mediamanager__page .filelist .rows li dt a img { - max-width: 40px; - max-height: 40px; + max-width: 40px; + max-height: 40px; } #mediamanager__page .filelist .rows li .name, #mediamanager__page .filelist .rows li .size, #mediamanager__page .filelist .rows li .filesize, #mediamanager__page .filelist .rows li .date { - overflow: hidden; - text-overflow: ellipsis; - float: left; - margin-left: 1%; - white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + float: left; + margin-left: 1%; + white-space: nowrap; } [dir=rtl] #mediamanager__page .filelist .rows li .name, [dir=rtl] #mediamanager__page .filelist .rows li .size, [dir=rtl] #mediamanager__page .filelist .rows li .filesize, [dir=rtl] #mediamanager__page .filelist .rows li .date { - float: right; - margin-left: 0; - margin-right: 1%; + float: right; + margin-left: 0; + margin-right: 1%; } #mediamanager__page .filelist .rows li .name { - width: 30%; - font-weight: bold; + width: 30%; + font-weight: bold; } #mediamanager__page .filelist .rows li .size, #mediamanager__page .filelist .rows li .filesize { - width: 15%; + width: 15%; } #mediamanager__page .filelist .rows li .date { - width: 20%; - font-style: italic; - white-space: normal; + width: 20%; + font-style: italic; + white-space: normal; } /* upload form */ #mediamanager__page div.upload { - padding-bottom: 0.5em; + padding-bottom: 0.5em; } /*____________ file panel ____________*/ #mediamanager__page .file ul.actions { - text-align: center; - margin: 0 0 5px; - padding: 0; - list-style: none; + text-align: center; + margin: 0 0 5px; + padding: 0; + list-style: none; } #mediamanager__page .file ul.actions li { - display: inline; - margin: 0; + display: inline; + margin: 0; } #mediamanager__page .file div.image { - margin-bottom: 5px; - text-align: center; + margin-bottom: 5px; + text-align: center; } #mediamanager__page .file div.image img { - width: 100%; + width: 100%; } #mediamanager__page .file dl { - margin-bottom: 0; + margin-bottom: 0; } #mediamanager__page .file dl dt { - font-weight: bold; - display: block; - background-color: @ini_background_alt; + font-weight: bold; + display: block; + background-color: @ini_background_alt; padding-left: .25em; } #mediamanager__page .file dl dd { - display: block; - background-color: @ini_background_neu; + display: block; + background-color: @ini_background_neu; padding-left: 1em; } /* file meta data edit form */ #mediamanager__page form.meta div.row { - margin-bottom: 5px; + margin-bottom: 5px; } #mediamanager__page form.meta label span { - display: block; + display: block; } #mediamanager__page form.meta input { - width: 50%; + width: 50%; } #mediamanager__page form.meta button { - width: auto; + width: auto; } #mediamanager__page form.meta textarea.edit { - height: 6em; - width: 95%; - min-width: 95%; - max-width: 95%; + height: 6em; + width: 95%; + min-width: 95%; + max-width: 95%; } /* file revisions form */ #mediamanager__page form.changes ul { - margin-left: 10px; - padding: 0; - list-style-type: none; + margin-left: 10px; + padding: 0; + list-style-type: none; } [dir=rtl] #mediamanager__page form.changes ul { - margin-left: 0; - margin-right: 10px; + margin-left: 0; + margin-right: 10px; } #mediamanager__page form.changes ul li div.li div { - font-size: 90%; - color: @ini_text_neu; - padding-left: 18px; + font-size: 90%; + color: @ini_text_neu; + padding-left: 18px; } [dir=rtl] #mediamanager__page form.changes ul li div.li div { - padding-left: 0; - padding-right: 18px; + padding-left: 0; + padding-right: 18px; } #mediamanager__page form.changes ul li div.li input { - position: relative; - top: 1px; + position: relative; + top: 1px; } /* file diff view */ #mediamanager__diff table { - table-layout: fixed; - border-width: 0; + table-layout: fixed; + border-width: 0; } #mediamanager__diff td, #mediamanager__diff th { - width: 48%; - margin: 0 5px 10px 0; - padding: 0; - vertical-align: top; - text-align: left; - border-color: @ini_background; + width: 48%; + margin: 0 5px 10px 0; + padding: 0; + vertical-align: top; + text-align: left; + border-color: @ini_background; } [dir=rtl] #mediamanager__diff td, [dir=rtl] #mediamanager__diff th { - margin: 0 0 10px 5px; - text-align: right; + margin: 0 0 10px 5px; + text-align: right; } #mediamanager__diff th { - font-weight: normal; - background-color: @ini_background; - line-height: 1.2; + font-weight: normal; + background-color: @ini_background; + line-height: 1.2; } #mediamanager__diff th a { - font-weight: bold; + font-weight: bold; } #mediamanager__diff th span { - font-size: 90%; + font-size: 90%; } #mediamanager__diff dl dd strong{ - background-color: __highlight__; - color: @ini_text; - font-weight: normal; + background-color: __highlight__; + color: @ini_text; + font-weight: normal; } /* image diff views */ #mediamanager__page .file form.diffView { - margin-bottom: 10px; - display: block; + margin-bottom: 10px; + display: block; } #mediamanager__diff div.slider { - margin: 10px; - width: 95%; + margin: 10px; + width: 95%; } #mediamanager__diff .imageDiff { - position: relative; + position: relative; } #mediamanager__diff .imageDiff .image2 { - position: absolute; - top: 0; - left: 0; + position: absolute; + top: 0; + left: 0; } #mediamanager__diff .imageDiff.opacity .image2 { - opacity: 0.5; + opacity: 0.5; } #mediamanager__diff .imageDiff.portions .image2 { - border-right: 1px solid red; - overflow: hidden; + border-right: 1px solid red; + overflow: hidden; } #mediamanager__diff .imageDiff.portions img { - float: left; + float: left; } #mediamanager__diff .imageDiff img { - width: 100%; - max-width: none; + width: 100%; + max-width: none; } /* dark mode overrides */ @media (prefers-color-scheme: dark) { body.darkmode #mediamanager__page .panelHeader, + body.darkmode ul.tabs li strong { + background-color: transparent; + border-color: @ini_text_alt_dark; + color: @ini_text_alt_dark; + font-weight: bold; + border-bottom-color: @ini_background_alt_dark; + } body.darkmode .tabs > ul li a, - body.darkmode ul.tabs li strong, body.darkmode ul.tabs li a { - background-color: transparent; - border-color: @ini_text_dark; - color: @ini_text_dark; + background-color: transparent; + border-color: @ini_text_dark; + color: @ini_text_dark; } body.darkmode #mediamanager__page .namespaces h2 { - background-color: @ini_background_dark; + background-color: @ini_background_alt_dark; border-color: @ini_text_dark; - border-bottom-color: @ini_background_dark; + border-bottom-color: @ini_background_alt_dark; color: @ini_headlines_dark; } body.darkmode #mediamanager__page .filelist .thumbs li { - background-color: @ini_background_alt_dark; + background-color: @ini_background_neu_dark; color: @ini_text_dark; } body.darkmode #mediamanager__page .filelist .panelContent ul li:hover { @@ -568,9 +594,18 @@ background-color: @ini_background_alt_dark; } - body.darkmode #mediamanager__page .ui-resizable-e { background-color: @ini_background_dark; } + #mediamanager__page .filelist ul dl dt { + background: @ini_background_alt_dark url("data:image/gif;base64,R0lGODlhEAAQAHAAACwAAAAAEAAQAIFeXmJISEwAAAAAAAACH4RvoauIzNyBSyYaLMDZcv15HAaSIlWiJ5Sya/RWVgEAOw==") center; + } + + + body.darkmode #mediamanager__page .ui-resizable-e { + background-color: @ini_background_dark; + } body.darkmode #mediamanager__page .ui-resizable-e:hover, - body.darkmode [dir=rtl] #mediamanager__page .ui-resizable-w:hover { background-color: @ini_background_alt_dark; } + body.darkmode [dir=rtl] #mediamanager__page .ui-resizable-w:hover { + background-color: @ini_background_neu_dark; + } body.darkmode #mediamanager__page .file dl dt { background-color: rgba(0,0,0,.5); } body.darkmode #mediamanager__page .file dl dd { background-color: rgba(0,0,0,.2); } body.darkmode #mediamanager__page .namespaces ul .selected { background-color: @ini_background_alt_dark; } diff --git a/templates/55/ad-hominem/css/_media_popup.css b/templates/55/ad-hominem/css/_media_popup.css index b75893b..6c8dba0 100644 --- a/templates/55/ad-hominem/css/_media_popup.css +++ b/templates/55/ad-hominem/css/_media_popup.css @@ -6,53 +6,53 @@ /*____________ structure ____________*/ html.popup { - overflow: auto; + overflow: auto; } #media__manager { - height: 100%; - overflow: hidden; + height: 100%; + overflow: hidden; } #mediamgr__aside { - width: 30%; - height: 100%; - overflow: auto; - position: absolute; - left: 0; - border-right: 1px solid @ini_border; + width: 30%; + height: 100%; + overflow: auto; + position: absolute; + left: 0; + border-right: 1px solid @ini_border; } [dir=rtl] #mediamgr__aside { - left: auto; - right: 0; - border-right-width: 0; - border-left: 1px solid @ini_border; + left: auto; + right: 0; + border-right-width: 0; + border-left: 1px solid @ini_border; } #mediamgr__aside .pad { - padding: .5em; + padding: .5em; } #mediamgr__content { - width: 69.7%; - height: 100%; - overflow: auto; - position: absolute; - right: 0; + width: 69.7%; + height: 100%; + overflow: auto; + position: absolute; + right: 0; } [dir=rtl] #mediamgr__content { - right: auto; - left: 0; + right: auto; + left: 0; } #mediamgr__content .pad { - padding: .5em; + padding: .5em; } #media__manager h1, #media__manager h2 { - font-size: 1.5em; - margin-bottom: .5em; - padding-bottom: .2em; - border-bottom: 1px solid @ini_border; + font-size: 1.5em; + margin-bottom: .5em; + padding-bottom: .2em; + border-bottom: 1px solid @ini_border; } /* left side @@ -61,15 +61,15 @@ html.popup { /*____________ options ____________*/ #media__opts { - margin-bottom: .5em; + margin-bottom: .5em; } #media__opts input { - margin-right: .3em; + margin-right: .3em; } [dir=rtl] #media__opts input { - margin-right: 0; - margin-left: .3em; + margin-right: 0; + margin-left: .3em; } #media__opts label { } @@ -77,39 +77,39 @@ html.popup { /*____________ tree ____________*/ #media__tree ul { - padding-left: .2em; + padding-left: .2em; } [dir=rtl] #media__tree ul { - padding-left: 0; - padding-right: .2em; + padding-left: 0; + padding-right: .2em; } #media__tree ul li { - clear: left; - list-style-type: none; - list-style-image: none; - margin-left: 0; + clear: left; + list-style-type: none; + list-style-image: none; + margin-left: 0; } [dir=rtl] #media__tree ul li { - clear: right; - margin-right: 0; + clear: right; + margin-right: 0; } #media__tree ul li img { - float: left; - padding: .5em .3em 0 0; + float: left; + padding: .5em .3em 0 0; } [dir=rtl] #media__tree ul li img { - float: right; - padding: .5em 0 0 .3em; + float: right; + padding: .5em 0 0 .3em; } #media__tree ul li div.li { - display: inline; + display: inline; } #media__tree ul li li { - margin-left: 1.5em; + margin-left: 1.5em; } [dir=rtl] #media__tree ul li li { - margin-left: 0; - margin-right: 1.5em; + margin-left: 0; + margin-right: 1.5em; } /* right side @@ -119,76 +119,76 @@ html.popup { /* upload info */ #media__content div.upload { - font-size: .9em; - margin-bottom: .5em; + font-size: .9em; + margin-bottom: .5em; } #mediamanager__uploader { - margin-bottom: 1em; + margin-bottom: 1em; } #mediamanager__uploader p { - margin-bottom: .5em; + margin-bottom: .5em; } /*____________ file list ____________*/ #media__content img.load { - margin: 1em auto; + margin: 1em auto; } #media__content .odd, #media__content .even { - padding: .5em; + padding: .5em; } #media__content .odd { - background-color: @ini_background_alt; + background-color: @ini_background_alt; } #media__content .even { } /* highlight newly uploaded or edited file */ #media__content #scroll__here { - border: 1px dashed @ini_border; + border: 1px dashed @ini_border; } /* link which inserts media file */ #media__content a.mediafile { - margin-right: 1.5em; - font-weight: bold; - cursor: pointer; + margin-right: 1.5em; + font-weight: bold; + cursor: pointer; } [dir=rtl] #media__content a.mediafile { - margin-right: 0; - margin-left: 1.5em; + margin-right: 0; + margin-left: 1.5em; } #media__content span.info { } #media__content img.btn { - vertical-align: text-bottom; + vertical-align: text-bottom; } /* info how to insert media, if JS disabled */ #media__content div.example { - color: @ini_text_neu; - margin-left: 1em; + color: @ini_text_neu; + margin-left: 1em; } #media__content div.detail { - padding: .2em 0; + padding: .2em 0; } #media__content div.detail div.thumb { - float: left; - margin: 0 .5em 0 18px; + float: left; + margin: 0 .5em 0 18px; } [dir=rtl] #media__content div.detail div.thumb { - float: right; - margin: 0 18px 0 .5em; + float: right; + margin: 0 18px 0 .5em; } #media__content div.detail div.thumb a { - display: block; - cursor: pointer; + display: block; + cursor: pointer; } #media__content div.detail p { - margin-bottom: 0; + margin-bottom: 0; } @@ -199,18 +199,42 @@ html.popup { #dw__mediasearch p { } #dw__mediasearch label { + width: 100%; } #dw__mediasearch label span { + display: block; } -#dw__mediasearch input.edit { +#dw__mediasearch input[type="text"] { + background-color: @ini_background; + color: @ini_text; + border: @ini_border solid 1px; + font-family: @ini_mono_fonts; + font-size: @ini_alt_font_size; + padding: .15em; margin: 0 .25rem; + width: ~"calc(100% - 1.25rem)"; } #dw__mediasearch button { + background-color: #004D40; + color: #FFF; + padding: .25rem 1rem; + border: transparent none 0; + cursor: pointer; + font-size: 1rem; + margin-top: .5em; } /* dark mode overrides */ @media (prefers-color-scheme: dark) { - body.darkmode #media__content .odd { - background-color: @ini_background_dark; + body.darkmode { + #media__content .odd { + background-color: @ini_background_dark; + } + + #dw__mediasearch input[type="text"] { + background-color: @ini_background_site_dark; + color: @ini_text_dark; + border-color: @ini_border_dark; + } } } \ No newline at end of file diff --git a/templates/55/ad-hominem/css/_modal.css b/templates/55/ad-hominem/css/_modal.css index 5ce1a69..aa2514e 100644 --- a/templates/55/ad-hominem/css/_modal.css +++ b/templates/55/ad-hominem/css/_modal.css @@ -3,11 +3,73 @@ */ .dokuwiki .ui-widget { - font-size: 100%; + font-size: 100%; /*min-width: 290px; min-height: 285px; */ } +element { +} +@media screen { + #mediamanager__page .panelHeader form.options .ui-controlgroup-horizontal label { + font-size: 90%; + margin-right: -0.4em; + padding: .3em .5em; + line-height: 1; + } +} +@media screen { + .dokuwiki .ui-widget { + font-size: 100%; + min-width: 290px; + min-height: 285px; + } +} +@media screen { + .ui-controlgroup > .ui-controlgroup-item { + float: left; + margin-left: 0; + margin-right: 0; + } +} +@media screen { + .ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { + border-bottom-right-radius: 4px; + } +} +@media screen { + .ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { + border-top-right-radius: 4px; + } +} +@media screen { + .ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited, a.ui-button, a:link.ui-button, a:visited.ui-button, .ui-button { + color: #555555; + text-decoration: none; + } +} +.ui-state-default, +.ui-widget-content .ui-state-default, +.ui-widget-header .ui-state-default, +.ui-button, +html .ui-button.ui-state-disabled:hover, +html .ui-button.ui-state-disabled:active { + border: 1px solid @ini_border; + background: @ini_background_neu none; + color: @ini_text_neu; +} + +.dokuwiki .ui-state-active, +.dokuwiki .ui-widget-content .ui-state-active, +.dokuwiki .ui-widget-header .ui-state-active, +.dokuwiki a.ui-button:active, +.dokuwiki .ui-button:active, +.dokuwiki .ui-button.ui-state-active:hover { + border: 1px solid @ini_border; + background: @ini_background_alt none; + color: @ini_text_alt; +} + /* link wizard (opens from the link button in the edit toolbar) ********************************************************************/ @@ -22,7 +84,7 @@ } [dir=rtl] #link__wiz_close { - float: left; + float: left; } #link__wiz .ui-dialog-content { @@ -55,62 +117,62 @@ } #link__wiz_result { - background-color: @ini_background; - width: ~"calc(100% - 2px)"; - height: ~"calc(100% - 68px)"; - overflow: auto; - border: 1px solid @ini_border; - margin: 3px auto; - text-align: left; + background-color: @ini_background; + width: ~"calc(100% - 2px)"; + height: ~"calc(100% - 68px)"; + overflow: auto; + border: 1px solid @ini_border; + margin: 3px auto; + text-align: left; font-size: medium; - line-height: 1em; + line-height: 1em; } [dir=rtl] #link__wiz_result { - text-align: right; + text-align: right; } #link__wiz_result div { - padding: 3px 3px 3px 0; + padding: 3px 3px 3px 0; } #link__wiz_result div a { - display: block; - padding-left: 1.3em; - min-height: 16px; - background: transparent 3px center no-repeat; + display: block; + padding-left: 1.3em; + min-height: 16px; + background: transparent 3px center no-repeat; background-size: 1em; } [dir=rtl] #link__wiz_result div a { - padding: 3px 22px 3px 3px; - background-position: 257px 3px; + padding: 3px 22px 3px 3px; + background-position: 257px 3px; } #link__wiz_result div.type_u a:link, #link__wiz_result div.type_u a:visited { - background-image: url(./images/editor/browse-parent.svg); + background-image: url(./images/editor/browse-parent.svg); color: @ini_link; } #link__wiz_result div.type_f a { - background-image: url(./images/editor/browse-link.svg); + background-image: url(./images/editor/browse-link.svg); } #link__wiz_result div.type_d a:link, #link__wiz_result div.type_d a:visited { - background-image: url(./images/editor/browse-folder.svg); + background-image: url(./images/editor/browse-folder.svg); color: @ini_link; } #link__wiz_result div.even { - background-color: @ini_background_neu; + background-color: @ini_background_neu; } #link__wiz_result div.selected { - background-color: @ini_background_alt; + background-color: @ini_background_alt; } #link__wiz_result span { - display: block; - color: @ini_text_neu; - margin-left: 22px; + display: block; + color: @ini_text_neu; + margin-left: 22px; } #link__wiz .ui-button { @@ -127,61 +189,85 @@ ********************************************************************/ #media__popup { - /* for backwards compatibility (not needed since Rincewind) */ - display: none; + /* for backwards compatibility (not needed since Rincewind) */ + display: none; } #media__popup_content p { - margin: 0 0 .5em; + margin: 0 0 .5em; } #media__popup_content label { - margin-right: .5em; - cursor: default; + margin-right: .5em; + cursor: default; } #media__popup_content button { - margin-right: 1px; - cursor: pointer; + margin-right: 1px; + cursor: pointer; } /* dark mode overrides */ @media (prefers-color-scheme: dark) { + body.darkmode { - body.darkmode #link__wiz { - background-color: @ini_background_dark; - border-color: @ini_border_dark; - } - body.darkmode #link__wiz .ui-widget-header { - background: @ini_background_alt_dark none; - border-color: @ini_border_dark; - } - body.darkmode #link__wiz .ui-widget-header .ui-dialog-title { - color: @ini_headlines_dark; - } - body.darkmode #link__wiz #link__wiz_entry { - border-color: @ini_border_dark; - background-color: @ini_background_alt_dark; - color: @ini_text_dark; - } - body.darkmode #link__wiz_result div.type_u a:link, - body.darkmode #link__wiz_result div.type_u a:visited, - body.darkmode #link__wiz_result div.type_u a:link, - body.darkmode #link__wiz_result div.type_u a:visited { - color: @ini_link_dark; - } - body.darkmode #link__wiz button.ui-dialog-titlebar-close { - border-color: @ini_border_dark; - } - body.darkmode #link__wiz .ui-icon-closethick { - background-color: @ini_background_dark; - } + .ui-state-default, + .ui-widget-content .ui-state-default, + .ui-widget-header .ui-state-default, + .ui-button, + html .ui-button.ui-state-disabled:hover, + html .ui-button.ui-state-disabled:active { + border-color: @ini_text_alt_dark; + background: @ini_background_dark; + color: @ini_text_dark; + } - body.darkmode #link__wiz_result { - background-color: rgba(0,0,0,.2); - border-color: @ini_border_dark; - } - body.darkmode #link__wiz_result div.even { - background-color: @ini_background_dark; + .ui-state-active, + .ui-widget-content .ui-state-active, + .ui-widget-header .ui-state-active, + a.ui-button:active, + .ui-button:active, + .ui-button.ui-state-active:hover { + border-color: @ini_text_alt_dark; + background-color: @ini_background_alt_dark; + color: @ini_text_alt_dark; + } + + #link__wiz { + background-color: @ini_background_dark; + border-color: @ini_border_dark; + } + #link__wiz .ui-widget-header { + background: @ini_background_alt_dark none; + border-color: @ini_border_dark; + } + #link__wiz .ui-widget-header .ui-dialog-title { + color: @ini_headlines_dark; + } + #link__wiz #link__wiz_entry { + border-color: @ini_border_dark; + background-color: @ini_background_alt_dark; + color: @ini_text_dark; + } + #link__wiz_result div.type_u a:link, + #link__wiz_result div.type_u a:visited, + #link__wiz_result div.type_u a:link, + #link__wiz_result div.type_u a:visited { + color: @ini_link_dark; + } + #link__wiz button.ui-dialog-titlebar-close { + border-color: @ini_border_dark; + } + #link__wiz .ui-icon-closethick { + background-color: @ini_background_dark; + } + + #link__wiz_result { + background-color: rgba(0,0,0,.2); + border-color: @ini_border_dark; + } + #link__wiz_result div.even { + background-color: @ini_background_dark; + } } } \ No newline at end of file diff --git a/templates/55/ad-hominem/css/_recent.css b/templates/55/ad-hominem/css/_recent.css index 9035a43..78d200d 100644 --- a/templates/55/ad-hominem/css/_recent.css +++ b/templates/55/ad-hominem/css/_recent.css @@ -9,40 +9,40 @@ /* select type of revisions (media/pages) */ .dokuwiki .changeType { - margin-bottom: .5em; + margin-bottom: .5em; } .dokuwiki form.changes ul li { - list-style: none; - margin-left: 0; + list-style: none; + margin-left: 0; } [dir=rtl] .dokuwiki form.changes ul li { - margin-right: 0; + margin-right: 0; } .dokuwiki form.changes ul li span, .dokuwiki form.changes ul li a { - vertical-align: middle; + vertical-align: middle; } .dokuwiki form.changes ul li span.user a { - vertical-align: bottom; + vertical-align: bottom; } .dokuwiki form.changes ul li.minor { - opacity: .7; + opacity: .7; } .dokuwiki form.changes li span.date { } .dokuwiki form.changes li a.diff_link { - vertical-align: baseline; + vertical-align: baseline; } .dokuwiki form.changes li a.revisions_link { - vertical-align: baseline; + vertical-align: baseline; } .dokuwiki form.changes li a.wikilink1, .dokuwiki form.changes li a.wikilink2 { } .dokuwiki form.changes li span.sum { - font-weight: bold; + font-weight: bold; } .dokuwiki form.changes li span.user { } @@ -50,30 +50,30 @@ /*____________ size differences ____________*/ .dokuwiki form.changes li .sizechange { - font-size: 80%; - border-radius: .2em; - padding: .1em .2em; - /* cannot use non-guaranteed style.ini colour placeholders, dark templates need to overwrite */ - background-color: #ddd; + font-size: 80%; + border-radius: .2em; + padding: .1em .2em; + /* cannot use non-guaranteed style.ini colour placeholders, dark templates need to overwrite */ + background-color: #ddd; } .dokuwiki form.changes li .sizechange.positive { - background-color: #cfc;; + background-color: #cfc;; } .dokuwiki form.changes li .sizechange.negative { - background-color: #fdd; + background-color: #fdd; } /*____________ page navigator ____________*/ .dokuwiki div.pagenav { - text-align: center; - margin: 1.4em 0; + text-align: center; + margin: 1.4em 0; } .dokuwiki div.pagenav-prev, .dokuwiki div.pagenav-next { - display: inline; - margin: 0 .5em; + display: inline; + margin: 0 .5em; } /* dark mode overrides */ diff --git a/templates/55/ad-hominem/css/_search.less b/templates/55/ad-hominem/css/_search.less index fbd8291..a174097 100644 --- a/templates/55/ad-hominem/css/_search.less +++ b/templates/55/ad-hominem/css/_search.less @@ -8,13 +8,13 @@ /* search hit in normal text */ .dokuwiki .search_hit { - color: @ini_text; - background-color: __highlight__; + color: @ini_text; + background-color: __highlight__; } /* "nothing found" at search + media */ .dokuwiki div.nothing { - margin-bottom: 1.4em; + margin-bottom: 1.4em; } /* search results page @@ -22,182 +22,182 @@ /*____________ advanced search form ____________*/ .dokuwiki .search-results-form fieldset.search-form { - width: 100%; - margin: 1em 0; + width: 100%; + margin: 1em 0; - input[name="q"] { - width: 50%; - } + input[name="q"] { + width: 50%; + } - button.toggleAssistant { - float: right; - } + button.toggleAssistant { + float: right; + } - .advancedOptions { - padding: 1em 0; + .advancedOptions { + padding: 1em 0; - > div { - display: inline-block; - position: relative; - margin: 0 0.5em; - } + > div { + display: inline-block; + position: relative; + margin: 0 0.5em; + } - div.toggle { - // default closed toggle state - div.current { - cursor: pointer; - max-width: 10em; - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; + div.toggle { + // default closed toggle state + div.current { + cursor: pointer; + max-width: 10em; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; - &::after { - content: '▼'; - font-size: smaller; - color: @ini_text_alt; - } - } - div.changed { - font-weight: bold; - } - ul { - display: none; - position: absolute; - border: 1px solid @ini_border; - background-color: @ini_background; - padding: 0.25em 0.5em; - text-align: left; - min-width: 10em; - max-width: 15em; - max-height: 50vh; - overflow: auto; - z-index: 100; - li { - margin: 0.25em 0; - list-style: none; + &::after { + content: '▼'; + font-size: smaller; + color: @ini_text_alt; + } + } + div.changed { + font-weight: bold; + } + ul { + display: none; + position: absolute; + border: 1px solid @ini_border; + background-color: @ini_background; + padding: 0.25em 0.5em; + text-align: left; + min-width: 10em; + max-width: 15em; + max-height: 50vh; + overflow: auto; + z-index: 100; + li { + margin: 0.25em 0; + list-style: none; - a { - display: block; - } - } - } + a { + display: block; + } + } + } - // open toggle state - &.open { - div.current::after { - content: '▲'; - } + // open toggle state + &.open { + div.current::after { + content: '▲'; + } - ul { - display: block; - } - } - } - } + ul { + display: block; + } + } + } + } } [dir=rtl] .search-results-form fieldset.search-form .advancedOptions { - div.toggle ul { - text-align: right; - } + div.toggle ul { + text-align: right; + } } /*____________ matching pagenames ____________*/ .dokuwiki div.search_quickresult { - margin-bottom: 1.4em; + margin-bottom: 1.4em; - ul { - padding: 0; + ul { + padding: 0; - li { - float: left; - width: 12em; - margin: 0 1.5em; - } - } + li { + float: left; + width: 12em; + margin: 0 1.5em; + } + } } [dir=rtl] .dokuwiki div.search_quickresult ul li { - float: right; + float: right; } /*____________ search results ____________*/ .dokuwiki dl.search_results { - margin-bottom: 1.2em; + margin-bottom: 1.2em; - /* search heading */ - dt { - font-weight: normal; - margin-bottom: .2em; - } + /* search heading */ + dt { + font-weight: normal; + margin-bottom: .2em; + } - /* last modified line */ - dd.meta { - margin: 0 0 .2em 0; - } + /* last modified line */ + dd.meta { + margin: 0 0 .2em 0; + } - /* search snippet */ - dd.snippet { - color: @ini_text_alt; - background-color: inherit; - margin: 0 0 1.2em 0; + /* search snippet */ + dd.snippet { + color: @ini_text_alt; + background-color: inherit; + margin: 0 0 1.2em 0; - /* search hit in search results */ - strong.search_hit { - font-weight: normal; - /* color is set in general */ - } + /* search hit in search results */ + strong.search_hit { + font-weight: normal; + /* color is set in general */ + } - /* ellipsis separating snippets */ - .search_sep { - color: @ini_text; - background-color: inherit; - } - } + /* ellipsis separating snippets */ + .search_sep { + color: @ini_text; + background-color: inherit; + } + } } /* AJAX quicksearch popup ********************************************************************/ .dokuwiki form.search { - div.no { - position: relative; - } + div.no { + position: relative; + } - /* .JSpopup */ - div.ajax_qsearch { - position: absolute; - top: 0; - left: -13.5em; /* -( width of #qsearch__in + padding of .ajax_qsearch + a bit more ) */ - width: 12em; - padding: 0.5em; - font-size: .9em; - z-index: 20; - text-align: left; - display: none; + /* .JSpopup */ + div.ajax_qsearch { + position: absolute; + top: 0; + left: -13.5em; /* -( width of #qsearch__in + padding of .ajax_qsearch + a bit more ) */ + width: 12em; + padding: 0.5em; + font-size: .9em; + z-index: 20; + text-align: left; + display: none; - strong { - display: block; - margin-bottom: .3em; - } + strong { + display: block; + margin-bottom: .3em; + } - ul { - margin: 0 !important; - padding: 0 !important; + ul { + margin: 0 !important; + padding: 0 !important; - li { - margin: 0; - padding: 0; - display: block !important; - } - } - } + li { + margin: 0; + padding: 0; + display: block !important; + } + } + } } [dir=rtl] .dokuwiki form.search div.ajax_qsearch { - left: auto; - /*right: -13.5em;*/ - text-align: right; -} + left: auto; + /*right: -13.5em;*/ + text-align: right; +} \ No newline at end of file diff --git a/templates/55/ad-hominem/css/_tabs.css b/templates/55/ad-hominem/css/_tabs.css index 507f49e..6f1f433 100644 --- a/templates/55/ad-hominem/css/_tabs.css +++ b/templates/55/ad-hominem/css/_tabs.css @@ -4,55 +4,55 @@ .dokuwiki .tabs > ul, .dokuwiki ul.tabs { - padding: 0; - margin: 0; - overflow: hidden; - position: relative; + padding: 0; + margin: 0; + overflow: hidden; + position: relative; } /* border underneath */ .dokuwiki .tabs > ul:after, .dokuwiki ul.tabs:after { - position: absolute; - content: ""; - width: 100%; - bottom: 0; - left: 0; - border-bottom: 1px solid @ini_border; + position: absolute; + content: ""; + width: 100%; + bottom: 0; + left: 0; + border-bottom: 1px solid @ini_border; } .dokuwiki .tabs > ul li, .dokuwiki ul.tabs li { - float: left; - padding: 0; - margin: 0; - list-style: none; + float: left; + padding: 0; + margin: 0; + list-style: none; } [dir=rtl] .dokuwiki .tabs > ul li, [dir=rtl] .dokuwiki ul.tabs li { - float: right; + float: right; } .dokuwiki .tabs > ul li a, .dokuwiki ul.tabs li strong, .dokuwiki ul.tabs li a { - display: inline-block; - padding: .3em .8em; - margin: 0 0 0 .3em; - background-color: @ini_background_neu; - color: @ini_text; - border: 1px solid @ini_border; - border-radius: .5em .5em 0 0; - position: relative; - z-index: 0; + display: inline-block; + padding: .3em .8em; + margin: 0 0 0 .3em; + background-color: @ini_background_neu; + color: @ini_text; + border: 1px solid @ini_border; + border-radius: .5em .5em 0 0; + position: relative; + z-index: 0; } [dir=rtl] .dokuwiki .tabs > ul li a, [dir=rtl] .dokuwiki ul.tabs li strong, [dir=rtl] .dokuwiki ul.tabs li a { - margin: 0 .3em 0 0; + margin: 0 .3em 0 0; } .dokuwiki ul.tabs li strong { - font-weight: normal; + font-weight: normal; } .dokuwiki ul.tabs li a:link, @@ -68,10 +68,10 @@ .dokuwiki ul.tabs li a:focus, .dokuwiki ul.tabs li.active a, .dokuwiki ul.tabs li strong { - background-color: @ini_background_alt; - color: @ini_text; - text-decoration: none; - font-weight: normal; + background-color: @ini_background_alt; + color: @ini_text; + text-decoration: none; + font-weight: normal; } .dokuwiki .tabs > ul li .curid a, @@ -79,6 +79,6 @@ .dokuwiki .tabs > ul li .active a, .dokuwiki ul.tabs li.active a, .dokuwiki ul.tabs li strong { - z-index: 2; - border-bottom-color: @ini_background_alt; + z-index: 2; + border-bottom-color: @ini_background_alt; } diff --git a/templates/55/ad-hominem/css/_toc.css b/templates/55/ad-hominem/css/_toc.css index 469e927..651a806 100644 --- a/templates/55/ad-hominem/css/_toc.css +++ b/templates/55/ad-hominem/css/_toc.css @@ -8,56 +8,56 @@ /* toc container */ #dw__toc { - float: right; - margin: 0 0 1.4em 1.4em; - width: 12em; - background-color: @ini_background_alt; - color: inherit; + float: right; + margin: 0 0 1.4em 1.4em; + width: 12em; + background-color: @ini_background_alt; + color: inherit; } [dir=rtl] #dw__toc { - float: left; - margin: 0 1.4em 1.4em 0; + float: left; + margin: 0 1.4em 1.4em 0; } /*____________ toc header ____________*/ .dokuwiki h3.toggle { - padding: .2em .5em; - font-weight: bold; + padding: .2em .5em; + font-weight: bold; } .dokuwiki .toggle strong { - float: right; - margin: 0 .2em; + float: right; + margin: 0 .2em; } [dir=rtl] .dokuwiki .toggle strong { - float: left; + float: left; } /*____________ toc list ____________*/ #dw__toc > div { - padding: .2em .5em; + padding: .2em .5em; } #dw__toc ul { - padding: 0; - margin: 0; + padding: 0; + margin: 0; } #dw__toc ul li { - list-style: none; - padding: 0; - margin: 0; - line-height: 1.1; + list-style: none; + padding: 0; + margin: 0; + line-height: 1.1; } #dw__toc ul li div.li { - padding: .15em 0; + padding: .15em 0; } #dw__toc ul ul { - padding-left: 1em; + padding-left: 1em; } [dir=rtl] #dw__toc ul ul { - padding-left: 0; - padding-right: 1em; + padding-left: 0; + padding-right: 1em; } #dw__toc ul ul li { } @@ -74,20 +74,20 @@ ********************************************************************/ .dokuwiki ul.idx { - padding-left: 0; + padding-left: 0; } [dir=rtl] .dokuwiki ul.idx { - padding-right: 0; + padding-right: 0; } .dokuwiki ul.idx li { - list-style-image: url(../../images/bullet.png); + list-style-image: url(../../images/bullet.png); } .dokuwiki ul.idx li.open { - list-style-image: url(../../images/open.png); + list-style-image: url(../../images/open.png); } .dokuwiki ul.idx li.closed { - list-style-image: url(../../images/closed.png); + list-style-image: url(../../images/closed.png); } [dir=rtl] .dokuwiki ul.idx li.closed { - list-style-image: url(../../images/closed-rtl.png); + list-style-image: url(../../images/closed-rtl.png); } diff --git a/templates/55/ad-hominem/css/content.less b/templates/55/ad-hominem/css/content.less index 5c9b0de..9fc03ac 100644 --- a/templates/55/ad-hominem/css/content.less +++ b/templates/55/ad-hominem/css/content.less @@ -62,6 +62,20 @@ body { text-decoration: line-through rgba(255,0,0,.5) solid .1em; } + /* subscript and superscript */ + sup, sub { + line-height: 1; + font-size: .6em; + font-weight: 600; + margin: 0 .1em; + } + sup { + vertical-align: .5em; + } + sub { + vertical-align: -.15em; + } + /* lists: */ ul, ol { margin: 0 2em 1em 1em; @@ -122,6 +136,7 @@ body { border-radius: 2px; box-shadow: inset 0 0 .5em @ini_border; padding: .3em; + font-variant-numeric: slashed-zero; } /* overwrite pre styling for CodeMirror plugin: */ diff --git a/templates/55/ad-hominem/css/design.less b/templates/55/ad-hominem/css/design.less index be7a190..937fff1 100644 --- a/templates/55/ad-hominem/css/design.less +++ b/templates/55/ad-hominem/css/design.less @@ -8,63 +8,63 @@ */ .dokuwiki.export { - background-color: @ini_background; + background-color: @ini_background; } /* header ********************************************************************/ #dokuwiki__header { - padding: 2em 0 1.5em; + padding: 2em 0 1.5em; - .headings, - .tools { - margin-bottom: 1.5em; - width: 49%; - } - .tools { - margin-top: .2em; - } + .headings, + .tools { + margin-bottom: 1.5em; + width: 49%; + } + .tools { + margin-top: .2em; + } - .logo { - margin: 0; - font-size: 1.5em; - font-weight: normal; - line-height: 1.2; + .logo { + margin: 0; + font-size: 1.5em; + font-weight: normal; + line-height: 1.2; - img { - float: left; - margin-right: .5em; - } + img { + float: left; + margin-right: .5em; + } - span { - display: block; - padding-top: 10px; - } + span { + display: block; + padding-top: 10px; + } - a { - text-decoration: none; - color: @ini_text; - background-color: inherit; - } - } + a { + text-decoration: none; + color: @ini_text; + background-color: inherit; + } + } - p.claim { - margin-bottom: 0; - font-size: 0.875em; - } + p.claim { + margin-bottom: 0; + font-size: 0.875em; + } - /* make all links in header (including breadcrumb and interwiki) same colour as the rest */ - a { - color: @ini_link; - background-color: inherit; - } + /* make all links in header (including breadcrumb and interwiki) same colour as the rest */ + a { + color: @ini_link; + background-color: inherit; + } } [dir=rtl] #dokuwiki__header .logo img { - float: right; - margin-left: .5em; - margin-right: 0; + float: right; + margin-left: .5em; + margin-right: 0; } /* tools @@ -81,294 +81,294 @@ .mode_revisions .action.revs a, .mode_backlink .action.backlink a, .mode_subscribe .action.subscribe a { - font-weight: bold; + font-weight: bold; } #dokuwiki__header .tools { - ul { - padding-left: 0; - margin-bottom: 0; - } + ul { + padding-left: 0; + margin-bottom: 0; + } - li { - font-size: 0.875em; - margin-left: 1em; - list-style: none; - display: inline; - } + li { + font-size: 0.875em; + margin-left: 1em; + list-style: none; + display: inline; + } - form.search div.ajax_qsearch li { - font-size: 1em; - margin-left: 0; - display: block; - overflow: hidden; - text-overflow: ellipsis; - } + form.search div.ajax_qsearch li { + font-size: 1em; + margin-left: 0; + display: block; + overflow: hidden; + text-overflow: ellipsis; + } } [dir=rtl] #dokuwiki__header .tools li { - margin-right: 1em; - margin-left: 0; + margin-right: 1em; + margin-left: 0; } #dokuwiki__header .mobileTools { - display: none; /* hide mobile tools dropdown to only show in mobile view */ + display: none; /* hide mobile tools dropdown to only show in mobile view */ } /*____________ site tools ____________*/ #dokuwiki__sitetools { - & { + & { text-align: right; } - form.search { - font-size: 0.875em; - } + form.search { + font-size: 0.875em; + } } [dir=rtl] #dokuwiki__sitetools { - text-align: left; + text-align: left; } form.search { - display: block; - position: relative; - margin-bottom: 0.5em; + display: block; + position: relative; + margin-bottom: 0.5em; - input { - /* width: 18em; */ - padding: .35em 22px .35em .1em; - } + input { + /* width: 18em; */ + padding: .35em 22px .35em .1em; + } - button { - background: transparent url(images/search.png) no-repeat 0 0; + button { + background: transparent url(images/search.png) no-repeat 0 0; background-size: 16px; - border-width: 0; - width: 16px; - height: 16px; - text-indent: -99999px; - margin-left: -28px; - box-shadow: none; - padding: 0; - } + border-width: 0; + width: 16px; + height: 16px; + text-indent: -99999px; + margin-left: -28px; + box-shadow: none; + padding: 0; + } } [dir=rtl] form.search { - input { - padding: .35em .1em .35em 22px; - } + input { + padding: .35em .1em .35em 22px; + } - button { - background-position: 5px 0; - margin-left: 0; - margin-right: -20px; - position: relative; - } + button { + background-position: 5px 0; + margin-left: 0; + margin-right: -20px; + position: relative; + } } /*____________ breadcrumbs ____________*/ .dokuwiki div.breadcrumbs { - border-top: 1px solid @ini_border; - border-bottom: 1px solid @ini_background; - margin-bottom: .5em; - font-size: 0.875em; - clear: both; + border-top: 1px solid @ini_border; + border-bottom: 1px solid @ini_background; + margin-bottom: .5em; + font-size: 0.875em; + clear: both; - div { - padding: .1em .35em; - } + div { + padding: .1em .35em; + } - div:only-child { - border-top: 1px solid @ini_background; - border-bottom: 1px solid @ini_border; - } + div:only-child { + border-top: 1px solid @ini_background; + border-bottom: 1px solid @ini_border; + } - div:first-child { - border-top: 1px solid @ini_background; - } + div:first-child { + border-top: 1px solid @ini_background; + } - div:last-child { - border-bottom: 1px solid @ini_border; - } + div:last-child { + border-bottom: 1px solid @ini_border; + } - .bcsep { - font-size: 0.75em; - } + .bcsep { + font-size: 0.75em; + } } /* sidebar ********************************************************************/ .dokuwiki .aside { - font-size: 0.875em; - overflow: hidden; - word-wrap: break-word; + font-size: 0.875em; + overflow: hidden; + word-wrap: break-word; - /* make sidebar more condensed */ + /* make sidebar more condensed */ - h1 { - font-size: 1.714em; - margin-bottom: .292em; - } + h1 { + font-size: 1.714em; + margin-bottom: .292em; + } - h2 { - margin-bottom: .333em; - } + h2 { + margin-bottom: .333em; + } - h3 { - margin-bottom: .444em; - } + h3 { + margin-bottom: .444em; + } - h4 { - margin-bottom: .5em; - } + h4 { + margin-bottom: .5em; + } - h5 { - margin-bottom: .5714em; - } + h5 { + margin-bottom: .5714em; + } - p, - ul, - ol, - dl, - pre, - table, - fieldset, - hr, - blockquote, - address { - margin-bottom: .7em; - } + p, + ul, + ol, + dl, + pre, + table, + fieldset, + hr, + blockquote, + address { + margin-bottom: .7em; + } - ul, - ol { - padding-left: .5em; - } + ul, + ol { + padding-left: .5em; + } - li ul, - li ol { - margin-bottom: 0; - padding: 0; - } + li ul, + li ol { + margin-bottom: 0; + padding: 0; + } - a:link, - a:visited { - color: @ini_link; - background-color: inherit; - } + a:link, + a:visited { + color: @ini_link; + background-color: inherit; + } } [dir=rtl] .dokuwiki .aside ul, [dir=rtl] .dokuwiki .aside ol { - padding-right: .5em; + padding-right: .5em; } /* content ********************************************************************/ .dokuwiki .pageId { - float: right; - margin-right: -1em; - margin-bottom: -1px; - margin-top: -1.5em; - overflow: hidden; - padding: 0.5em 1em 0; + float: right; + margin-right: -1em; + margin-bottom: -1px; + margin-top: -1.5em; + overflow: hidden; + padding: 0.5em 1em 0; - span { - font-size: 0.875em; - border: solid @ini_background_alt; - border-width: 1px 1px 0; - background-color: @ini_background; - color: @ini_text_alt; - padding: .1em .35em; - border-top-left-radius: 2px; - border-top-right-radius: 2px; - box-shadow: 0 0 .5em @ini_text_alt; - display: block; - } + span { + font-size: 0.875em; + border: solid @ini_background_alt; + border-width: 1px 1px 0; + background-color: @ini_background; + color: @ini_text_alt; + padding: .1em .35em; + border-top-left-radius: 2px; + border-top-right-radius: 2px; + box-shadow: 0 0 .5em @ini_text_alt; + display: block; + } } .dokuwiki div.page { - clear: both; - background: @ini_background; - color: inherit; - border: 1px solid @ini_background_alt; - box-shadow: 0 0 .5em @ini_text_alt; - border-radius: 2px; - padding: 1.556em 2em 2em; - margin-bottom: .5em; - overflow: hidden; - word-wrap: break-word; + clear: both; + background: @ini_background; + color: inherit; + border: 1px solid @ini_background_alt; + box-shadow: 0 0 .5em @ini_text_alt; + border-radius: 2px; + padding: 1.556em 2em 2em; + margin-bottom: .5em; + overflow: hidden; + word-wrap: break-word; } .dokuwiki .docInfo { - font-size: 0.875em; - text-align: right; - overflow-wrap: break-word; + font-size: 0.875em; + text-align: right; + overflow-wrap: break-word; } /* license note under edit window */ .dokuwiki div.license { - font-size: small; - line-height: 1.5em; - padding: 3pt; - background-color: @ini_background_alt; - border: @ini_border solid 1px; + font-size: small; + line-height: 1.5em; + padding: 3pt; + background-color: @ini_background_alt; + border: @ini_border solid 1px; } [dir=rtl] .dokuwiki .docInfo { - text-align: left; + text-align: left; } [dir=rtl] .dokuwiki .pageId { - float: left; - margin-left: -1em; - margin-right: 0; + float: left; + margin-left: -1em; + margin-right: 0; } /* footer ********************************************************************/ .dokuwiki .wrapper { - margin-bottom: 1.4em; + margin-bottom: 1.4em; } #dokuwiki__footer { - margin-bottom: 1em; - text-align: center; + margin-bottom: 1em; + text-align: center; - > .pad { - font-size: 0.875em; - } + > .pad { + font-size: 0.875em; + } - div.license { - margin-bottom: 0.5em; - font-size: 100%; - } + div.license { + margin-bottom: 0.5em; + font-size: 100%; + } - div.buttons a { - img { - opacity: 0.5; - } + div.buttons a { + img { + opacity: 0.5; + } - &:hover img, - &:active img, - &:focus img { - opacity: 1; - } - } + &:hover img, + &:active img, + &:focus img { + opacity: 1; + } + } } [dir=rtl] #dokuwiki__footer .license img { - margin: 0 0 0 .5em; + margin: 0 0 0 .5em; } /* dark mode overrides */ @media (prefers-color-scheme: dark) { - body.darkmode div.license { - background-color: @ini_background_alt_dark; - border-color: @ini_border_dark; - } + body.darkmode div.license { + background-color: @ini_background_alt_dark; + border-color: @ini_border_dark; + } } \ No newline at end of file diff --git a/templates/55/ad-hominem/css/geshi.less b/templates/55/ad-hominem/css/geshi.less new file mode 100644 index 0000000..2edccfc --- /dev/null +++ b/templates/55/ad-hominem/css/geshi.less @@ -0,0 +1,76 @@ +/** + * This file overrides syntax highlighting colours + * + * @author Sascha Leib +**/ + +main .code { + .co0 { color: #545454 } + .co4 { color: #AD0000 } + .es5 { color: #005C8A } + .es6 { color: #006120 } + .kw2 { color: #000000 } /* no change */ + .kw5 { color: #006600 } + .kw6 { color: #A8005A } + .me0 { color: #004000 } /* no change */ + .nu0 { color: #8A2E8A } + .re0 { color: #0000ff } + .re3 { color: #AD0000 } + .re4 { color: #006161 } + .re5 { color: #660033 } /* no change */ + .re7 { color: #991111 } /* no change */ + .re8 { color: #005200 } + .sc-2 { color: #404040 } /* no change */ + .sy3 { color: #000040 } /* no change */ + .br0, .sy0 { color: #216321; } + .co1, .coMULTI, .sc-1 { color: #545454 } + .co2, .sy1 { color: #216321 } + .co3, .sy4 { color: #006161 } + .es0, .es1, .esHARD { color: #000099 } /* no change */ + .es2, .es3, .es4 { color: #660099 } /* no change */ + .kw1, .kw8 { color: #855c0d } + .kw10, .kw11, .kw12, .kw9 { color: #003399 } + .kw13, .kw14, .kw15, .kw16, .me1, .me2 { color: #006600 } /* no change */ + .kw3, .kw7, .sy2 { color: #000066 } /* no change */ + .kw4, .re2 { color: #993333 } /* no change */ + .re1, .st0, .st_h { color: #E60000 } + .ln-xtra { background-color: @ini_highlight } +} + +/* dark mode overrides */ +@media (prefers-color-scheme: dark) { + + body.darkmode main .code { + + .co0 { color: #A6A6A6 } + .co4 { color: #FF8080 } + .es5 { color: #0FAFFF } + .es6 { color: #00C241 } + .kw2 { color: #EEEEEE } + .kw5 { color: #52FF52 } + .kw6 { color: #FF99CC } + .me0 { color: #00C200 } + .nu0 { color: #D98CD9 } + .re0 { color: #9E9EFF } + .re3 { color: #FF8080 } + .re4 { color: #00CCCC } + .re5 { color: #FF7ABD } + .re7 { color: #F28888 } + .re8 { color: #38FF38 } + .sc-2 { color: #A6A6A6 } + .sy3 { color: #9E9EFF } + .br0, .sy0 { color: #66cc66 } /* no change */ + .co1, .coMULTI, .sc-1 { color: #DDDDDD } + .co2, .sy1 { color: #94DB94 } + .co3, .sy4 { color: #00EBEB } + .es0, .es1, .esHARD { color: #A8A8FF } + .es2, .es3, .es4 { color: #D685FF } + .kw1, .kw8 { color: #D6D600 } + .kw10, .kw11, .kw12, .kw9 { color: #B8CEFF } + .kw13, .kw14, .kw15, .kw16, .me1, .me2 { color: #00FF00 } + .kw3, .kw7, .sy2 { color: #CCCCFF } + .kw4, .re2 { color: #ECC5C5 } + .re1, .st0, .st_h { color: #FF8080 } + .ln-xtra { background-color: @ini_highlight_dark } + } +} \ No newline at end of file diff --git a/templates/55/ad-hominem/css/layout.less b/templates/55/ad-hominem/css/layout.less index f034095..65a18c3 100644 --- a/templates/55/ad-hominem/css/layout.less +++ b/templates/55/ad-hominem/css/layout.less @@ -418,7 +418,7 @@ div.no { margin: 1em .25em 0 1em; } #navBreadCrumbs { - margin-left: .5em; + margin: 1em .25em 0 1em; } #navBreadCrumbs ol { list-style: decimal outside; @@ -521,7 +521,7 @@ body.home #navYouAreHere ol li:last-child { line-height: 1.5em; text-align: left; max-width: @ini_toc_width; - background-color: transparent; + background-color: @ini_background; border: transparent none 0; border-left: @ini_border solid 1pt; } @@ -929,6 +929,11 @@ body.mediadetail { body.darkmode { + #toc { + background-color: @ini_background_dark; + border-left: @ini_border_dark solid 1pt; + } + & { background-color: @ini_background_site_dark; color: @ini_text_dark; } #skip-link a { background-color: @ini_background_dark;color: @ini_link_dark;} #navYouAreHere ol { @@ -1033,7 +1038,7 @@ body.mediadetail { #header-layout > header { margin: 0; grid-template-columns: e("repeat(2, auto)"); - grid-template-rows: e("repeat(4, auto)"); + grid-template-rows: e("repeat(4, auto)"); } #header-layout > header #siteLogo { grid-column: 1; @@ -1044,11 +1049,11 @@ body.mediadetail { grid-column: 2; } #header-layout>header #globalTools ul li { - display: block; - margin-bottom: .5em; + display: block; + margin-bottom: .5em; } #header-layout>header #globalTools ul li:before { - content: ''; + content: ''; } #header-layout>header #phSearch { grid-row: 2; @@ -1192,7 +1197,7 @@ body.mediadetail { display: initial; } .toggle.auto .tg_content { - display: none; + display: none; } #toc.hide h3::after, @@ -1220,22 +1225,22 @@ body.mediadetail { body.darkmode #sidebar { .tg_content { & { - background-color: @ini_background_dark; - border-color: @ini_border_dark; - -moz-box-shadow: 3px 3px 3px @ini_background_site_dark; - -webkit-box-shadow: 3px 3px 3px @ini_background_site_dark; - box-shadow: 3px 3px 3px @ini_background_site_dark; + background-color: @ini_background_dark; + border-color: @ini_border_dark; + -moz-box-shadow: 3px 3px 3px @ini_background_site_dark; + -webkit-box-shadow: 3px 3px 3px @ini_background_site_dark; + box-shadow: 3px 3px 3px @ini_background_site_dark; } &::before { - border-bottom-color: @ini_border_dark; + border-bottom-color: @ini_border_dark; } &::after { - border-bottom-color: @ini_background_dark; + border-bottom-color: @ini_background_dark; } } hr { - background: @ini_link_dark; - background-image: linear-gradient(to right, @ini_background_dark, @ini_headlines_dark, @ini_background_dark); + background: @ini_link_dark; + background-image: linear-gradient(to right, @ini_background_dark, @ini_headlines_dark, @ini_background_dark); } } } @@ -1297,12 +1302,12 @@ body.mediadetail { } main blockquote { - margin-left: .15em; - margin-right: 0; + margin-left: .15em; + margin-right: 0; } main ul, main ol { - margin-left: .5em; - margin-right: 0; - padding-left: .75em; + margin-left: .5em; + margin-right: 0; + padding-left: .75em; } } \ No newline at end of file diff --git a/templates/55/ad-hominem/css/links.less b/templates/55/ad-hominem/css/links.less index f97f7ca..dfc207b 100644 --- a/templates/55/ad-hominem/css/links.less +++ b/templates/55/ad-hominem/css/links.less @@ -2,7 +2,7 @@ * This contains the content styling * @author Sascha Leib */ - + /* general link styles */ a:link { color: @ini_link; @@ -30,7 +30,7 @@ a.wikilink2:visited { a.media:link, a.media:visited { display: block; - line-height: 0; + line-height: initial; } /* in-page links */ @@ -56,4 +56,4 @@ footer #ftInclude a.wikilink1:visited { body.darkmode a.wikilink2:link, body.darkmode a.wikilink2:visited { color: @ini_missing_dark; } body.darkmode #ftInclude a.wikilink1:link, body.darkmode #ftInclude a.wikilink1:visited { color: @ini_link_dark; } body.darkmode a[href^='#'].wikilink1:link, body.darkmode a[href^='#'].wikilink1:visited { color: @ini_inpage_dark; } -} \ No newline at end of file +} diff --git a/templates/55/ad-hominem/css/pagetools.less b/templates/55/ad-hominem/css/pagetools.less index 5473594..5e05fd9 100644 --- a/templates/55/ad-hominem/css/pagetools.less +++ b/templates/55/ad-hominem/css/pagetools.less @@ -7,118 +7,118 @@ */ #dokuwiki__site > .site { - /* give space to the right so the tools won't disappear on smaller screens */ - /* it's 40px because the 30px wide icons will have 5px more spacing to the left and right */ - padding-right: 40px; - /* give the same space to the left to balance it out */ - padding-left: 40px; + /* give space to the right so the tools won't disappear on smaller screens */ + /* it's 40px because the 30px wide icons will have 5px more spacing to the left and right */ + padding-right: 40px; + /* give the same space to the left to balance it out */ + padding-left: 40px; } .dokuwiki div.page { - height: 190px; - min-height: 190px; /* 30 (= height of icons) x 6 (= maximum number of possible tools) + 2x5 */ - height: auto; + height: 190px; + min-height: 190px; /* 30 (= height of icons) x 6 (= maximum number of possible tools) + 2x5 */ + height: auto; } #dokuwiki__pagetools { - @ico-width: 28px; - @ico-margin: 8px; - @item-width: (@ico-width + @ico-margin + @ico-margin); - @item-height: (@ico-width + @ico-margin); + @ico-width: 28px; + @ico-margin: 8px; + @item-width: (@ico-width + @ico-margin + @ico-margin); + @item-height: (@ico-width + @ico-margin); - position: absolute; - right: (-1 * @item-width); - /* on same vertical level as first headline, because .page has 2em padding */ - top: 2em; - width: @item-width; + position: absolute; + right: (-1 * @item-width); + /* on same vertical level as first headline, because .page has 2em padding */ + top: 2em; + width: @item-width; - div.tools { - position: fixed; - width: @item-width; + div.tools { + position: fixed; + width: @item-width; - ul { - position: absolute; - right: 0; - text-align: right; - margin: 0; - padding: 0; - /* add transparent border to prevent jumping when proper border is added on hover */ - border: 1px solid transparent; - z-index: 10; + ul { + position: absolute; + right: 0; + text-align: right; + margin: 0; + padding: 0; + /* add transparent border to prevent jumping when proper border is added on hover */ + border: 1px solid transparent; + z-index: 10; - li { - padding: 0; - margin: 0; - list-style: none; - font-size: 0.875em; + li { + padding: 0; + margin: 0; + list-style: none; + font-size: 0.875em; - a { + a { - display: block; - /* add transparent border to prevent jumping when proper border is added on focus */ - border: 1px solid transparent; - white-space: nowrap; - line-height: @item-height; - vertical-align: middle; - height: @item-height; + display: block; + /* add transparent border to prevent jumping when proper border is added on focus */ + border: 1px solid transparent; + white-space: nowrap; + line-height: @item-height; + vertical-align: middle; + height: @item-height; - span { - display: none; // hide label until hover - margin: 0 @ico-margin; - } + span { + display: none; // hide label until hover + margin: 0 @ico-margin; + } - svg { - width: @ico-width; - height: @ico-width; - margin: 0 @ico-margin; - display: inline-block; - vertical-align: middle; - fill: @ini_border; - } - } + svg { + width: @ico-width; + height: @ico-width; + margin: 0 @ico-margin; + display: inline-block; + vertical-align: middle; + fill: @ini_border; + } + } - // on interaction show the full item - a:active, - a:focus, - a:hover { - background-color: @ini_background_alt; + // on interaction show the full item + a:active, + a:focus, + a:hover { + background-color: @ini_background_alt; - span { - display: inline-block; - } + span { + display: inline-block; + } - svg { - fill: @ini_link; - } - } - } - } - } + svg { + fill: @ini_link; + } + } + } + } + } - [dir=rtl] & { - right: auto; - left: (-1 * @item-width); + [dir=rtl] & { + right: auto; + left: (-1 * @item-width); - div.tools { - ul { - right: auto; - left: 0; - text-align: left; - } - } - } + div.tools { + ul { + right: auto; + left: 0; + text-align: left; + } + } + } } // on hover or focus show all items #dokuwiki__pagetools:hover, #dokuwiki__pagetools:focus-within { - div.tools ul { - background-color: @ini_background; - border-color: @ini_border; - border-radius: 2px; - box-shadow: 2px 2px 2px @ini_text_alt; + div.tools ul { + background-color: @ini_background; + border-color: @ini_border; + border-radius: 2px; + box-shadow: 2px 2px 2px @ini_text_alt; - li a span { - display: inline-block; - } - } + li a span { + display: inline-block; + } + } } diff --git a/templates/55/ad-hominem/css/plugins.less b/templates/55/ad-hominem/css/plugins.less index f2f379c..a8bdb53 100644 --- a/templates/55/ad-hominem/css/plugins.less +++ b/templates/55/ad-hominem/css/plugins.less @@ -25,4 +25,67 @@ padding: .25em .5em; cursor: pointer; } +} + +/* redirect plugin (dark mode override): */ + +@media (prefers-color-scheme: dark) { + + body.darkmode div.noteredirect { + background-color: #2A4456; + } +} + +/* move plugin: */ + +main #plugin_move__progress #plugin_move__preview span { + color: @ini_link; +} + +@media (prefers-color-scheme: dark) { + + body.darkmode #plugin_move__progress #plugin_move__preview span { + color: @ini_link_dark; + } + body.darkmode #plugin_move__tree ul.tree_list li div:hover { + background-color: @ini_background_alt_dark; + } + + body.darkmode .ui-widget-content { + border-color: @ini_border_dark; + background-color: @ini_background_site_dark; + color: @ini_text_alt_dark; + } + + body.darkmode .ui-widget.ui-widget-content { + border-color: @ini_border_dark; + } + body.darkmode .ui-widget-header { + color: @ini_text_dark; + background: @ini_background_alt_dark none 50% 50% repeat-x; + } +} + +/* searchIndex Manager plugin (dark mode overrides): */ + +@media (prefers-color-scheme: dark) { + body.darkmode #plugin__searchindex_msg { + background-color: @ini_background_site_dark; + color: @ini_text_alt_dark; + border-color: @ini_border_dark; + } +} + +/* Translations plugin: */ + +table#outdated_translations { + td.missing { background-color: #fdd; } + td.current { background-color: #dfd; } +} + +@media (prefers-color-scheme: dark) { + body.darkmode table#outdated_translations { + td.missing { background-color: #300; } + td.current { background-color: #030; } + } } \ No newline at end of file diff --git a/templates/55/ad-hominem/css/print.less b/templates/55/ad-hominem/css/print.less index 63944ab..a1282a6 100644 --- a/templates/55/ad-hominem/css/print.less +++ b/templates/55/ad-hominem/css/print.less @@ -108,6 +108,7 @@ main { -moz-box-shadow: 0 0 0 0 transparent; -webkit-box-shadow: 0 0 0 0 transparent; box-shadow: 0 0 0 0 transparent; + font-variant-ligatures: common-ligatures discretionary-ligatures; } /* headlines */ @@ -376,27 +377,35 @@ main img { } /* footnotes */ -main div.footnotes { - margin-top: 1.5em; +.dokuwiki div.footnotes { + border-top: transparent 0 none; font-size: smaller; } -main div.footnotes div.fn { - display: grid; - grid-template-columns: 1.5em auto; - grid-gap: .25em; + +.dokuwiki sup a.fn_top { + color: #000; } -main div.footnotes div.fn > sup { - vertical-align: baseline; - font-size: smaller; - text-align: right; +.dokuwiki sup a.fn_top::after { + font-size: 1.0rem; + font-weight: normal; +} + #main-content h1 + div > p:first-child sup a.fn_top::after { + font-weight: bold; + } + +.dokuwiki div.footnotes > .fn .fn_bot { + color: #000; +} +.dokuwiki div.footnotes > .fn .fn_bot::after { + font-size: .833rem; } main div.footnotes:before { content: ' '; display: block; - width: 33%; + width: 50%; min-width: 5em; - border-top: @ini_text solid .5pt; + border-top: #000 solid .5pt; height: .5em; } diff --git a/templates/55/ad-hominem/css/structure.less b/templates/55/ad-hominem/css/structure.less index 3ea2f83..ee4adc0 100644 --- a/templates/55/ad-hominem/css/structure.less +++ b/templates/55/ad-hominem/css/structure.less @@ -4,86 +4,86 @@ * @author Anika Henke */ body { - margin: 0 auto; + margin: 0 auto; } #dokuwiki__site { - margin: 0 auto; - max-width: @ini_site_width; + margin: 0 auto; + max-width: @ini_site_width; } #dokuwiki__site > .site { - padding: 0 .5em; + padding: 0 .5em; } #dokuwiki__header { - width: 100%; + width: 100%; - .headings { - float: left; - } + .headings { + float: left; + } - .tools { - float: right; - text-align: right; - } + .tools { + float: right; + text-align: right; + } } [dir=rtl] #dokuwiki__header { - .headings { - float: right; - text-align: right; - } + .headings { + float: right; + text-align: right; + } - .tools { - float: left; - text-align: left; - } + .tools { + float: left; + text-align: left; + } } #dokuwiki__site .wrapper { - position: relative; + position: relative; } #dokuwiki__aside { - width: @ini_sidebar_width; - float: left; - position: relative; - display: block; + width: @ini_sidebar_width; + float: left; + position: relative; + display: block; - > .pad { - margin: 0 1.5em 0 0; - } + > .pad { + margin: 0 1.5em 0 0; + } } [dir=rtl] #dokuwiki__aside { - float: right; - > .pad { - margin: 0 0 0 1.5em; - } + float: right; + > .pad { + margin: 0 0 0 1.5em; + } } .showSidebar #dokuwiki__content { - float: right; - margin-left: (-1 * @ini_sidebar_width); - width: 100%; + float: right; + margin-left: (-1 * @ini_sidebar_width); + width: 100%; - > .pad { - margin-left: @ini_sidebar_width; - } + > .pad { + margin-left: @ini_sidebar_width; + } } [dir=rtl] .showSidebar #dokuwiki__content { - float: left; - margin-left: 0; - margin-right: (-1 * @ini_sidebar_width); + float: left; + margin-left: 0; + margin-right: (-1 * @ini_sidebar_width); - > .pad { - margin-left: 0; - margin-right: @ini_sidebar_width; - } + > .pad { + margin-left: 0; + margin-right: @ini_sidebar_width; + } } #dokuwiki__footer { - clear: both; + clear: both; } diff --git a/templates/55/ad-hominem/css/usertools.less b/templates/55/ad-hominem/css/usertools.less index efdf16c..ffe253b 100644 --- a/templates/55/ad-hominem/css/usertools.less +++ b/templates/55/ad-hominem/css/usertools.less @@ -1,50 +1,50 @@ #dokuwiki__usertools { - position: absolute; - top: .5em; - right: 40px; // pagetool width - text-align: right; - width: 100%; + position: absolute; + top: .5em; + right: 40px; // pagetool width + text-align: right; + width: 100%; - ul { - margin: 0 auto; - padding: 0; - max-width: @ini_site_width; - } + ul { + margin: 0 auto; + padding: 0; + max-width: @ini_site_width; + } - li.action a { - display: inline-flex; - flex-direction: row-reverse; - flex-wrap: nowrap; + li.action a { + display: inline-flex; + flex-direction: row-reverse; + flex-wrap: nowrap; - svg { - height: 1.4em; - width: 1.4em; - vertical-align: middle; - fill: @ini_border; - margin-right: 0.2em; - } - } + svg { + height: 1.4em; + width: 1.4em; + vertical-align: middle; + fill: @ini_border; + margin-right: 0.2em; + } + } - li.action a:hover, - li.action a:active { - svg { - fill: @ini_link; - } - } + li.action a:hover, + li.action a:active { + svg { + fill: @ini_link; + } + } } [dir=rtl] #dokuwiki__usertools { - text-align: left; - left: 40px; // pagetool width - right: auto; + text-align: left; + left: 40px; // pagetool width + right: auto; - li.action a { + li.action a { - svg { - margin-right: 0; - margin-left: 0.2em; - } - } + svg { + margin-right: 0; + margin-left: 0.2em; + } + } } diff --git a/templates/55/ad-hominem/detail.php b/templates/55/ad-hominem/detail.php index 6e2ba89..f2747ab 100644 --- a/templates/55/ad-hominem/detail.php +++ b/templates/55/ad-hominem/detail.php @@ -2,11 +2,11 @@ /** * Ad Hominem Template * - * @link https://ad.hominem.info/ - * @author Sascha Leib - * @author Anika Henke - * @author Clarence Lee - * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @link https://ad.hominem.info/ + * @author Sascha Leib + * @author Anika Henke + * @author Clarence Lee + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) */ ini_set('display_errors', 0); @@ -56,7 +56,7 @@ $htmlLang = ' lang="' . $conf['lang'] . ( $lang['direction'] != 'ltr' ? '" dir="
-
+
- +
-
+
-
- +
- +
@@ -124,7 +124,7 @@ $htmlLang = ' lang="' . $conf['lang'] . ( $lang['direction'] != 'ltr' ? '" dir="
- +
diff --git a/templates/55/ad-hominem/my_template.php b/templates/55/ad-hominem/my_template.php index b64eca1..10953fb 100644 --- a/templates/55/ad-hominem/my_template.php +++ b/templates/55/ad-hominem/my_template.php @@ -2,9 +2,9 @@ /** * Overwriting DokuWiki template functions * - * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * @author Sascha Leib - * @author Andreas Gohr + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + * @author Sascha Leib + * @author Andreas Gohr */ use dokuwiki\Extension\Event; @@ -19,31 +19,31 @@ use dokuwiki\File\PageResolver; * @author Andreas Gohr * * @triggers TPL_METAHEADER_OUTPUT - * @param bool $alt Should feeds and alternative format links be added? - * @return bool + * @param bool $alt Should feeds and alternative format links be added? + * @return bool */ function my_metaheaders($alt = true) { - global $ID; - global $REV; - global $INFO; - global $JSINFO; - global $ACT; - global $QUERY; - global $lang; - global $conf; - global $updateVersion; - /** @var Input $INPUT */ - global $INPUT; + global $ID; + global $REV; + global $INFO; + global $JSINFO; + global $ACT; + global $QUERY; + global $lang; + global $conf; + global $updateVersion; + /** @var Input $INPUT */ + global $INPUT; - // prepare the head array - $head = array(); + // prepare the head array + $head = array(); - // prepare seed for js and css - $tseed = $updateVersion; - $depends = getConfigFiles('main'); - $depends[] = DOKU_CONF."tpl/".$conf['template']."/style.ini"; - foreach($depends as $f) $tseed .= @filemtime($f); - $tseed = md5($tseed); + // prepare seed for js and css + $tseed = $updateVersion; + $depends = getConfigFiles('main'); + $depends[] = DOKU_CONF."tpl/".$conf['template']."/style.ini"; + foreach($depends as $f) $tseed .= @filemtime($f); + $tseed = md5($tseed); // Open Graph information $meta = p_get_metadata($ID); @@ -55,7 +55,7 @@ function my_metaheaders($alt = true) { if (array_key_exists('description', $meta) && is_array($meta['description'])) { if (array_key_exists('abstract', $meta['description'])) { - $parts = explode("\n", $meta['description']['abstract']); + $parts = explode(NL, $meta['description']['abstract']); if (is_array($parts) && array_key_exists(2, $parts)) { $head['meta'][] = array('property' => 'og:description', 'content' => $parts[2]); @@ -67,153 +67,153 @@ function my_metaheaders($alt = true) { } } - // the usual stuff - $head['meta'][] = array('name'=> 'generator', 'content'=> 'DokuWiki'); - if(actionOK('search')) { - $head['link'][] = array( - 'rel' => 'search', 'type'=> 'application/opensearchdescription+xml', - 'href'=> DOKU_BASE.'lib/exe/opensearch.php', 'title'=> $conf['title'] - ); - } + // the usual stuff + $head['meta'][] = array('name'=> 'generator', 'content'=> 'DokuWiki'); + if(actionOK('search')) { + $head['link'][] = array( + 'rel' => 'search', 'type'=> 'application/opensearchdescription+xml', + 'href'=> DOKU_BASE.'lib/exe/opensearch.php', 'title'=> $conf['title'] + ); + } - $head['link'][] = array('rel'=> 'start', 'href'=> DOKU_BASE); - if(actionOK('index')) { - $head['link'][] = array( - 'rel' => 'contents', 'href'=> wl($ID, 'do=index', false, '&'), - 'title'=> $lang['btn_index'] - ); - } + $head['link'][] = array('rel'=> 'start', 'href'=> DOKU_BASE); + if(actionOK('index')) { + $head['link'][] = array( + 'rel' => 'contents', 'href'=> wl($ID, 'do=index', false, '&'), + 'title'=> $lang['btn_index'] + ); + } - if (actionOK('manifest')) { - $head['link'][] = array('rel'=> 'manifest', 'href'=> DOKU_BASE.'lib/exe/manifest.php'); - } + if (actionOK('manifest')) { + $head['link'][] = array('rel'=> 'manifest', 'href'=> DOKU_BASE.'lib/exe/manifest.php'); + } - $styleUtil = new \dokuwiki\StyleUtils(); - $styleIni = $styleUtil->cssStyleini(); - $replacements = $styleIni['replacements']; - if (!empty($replacements['__theme_color__'])) { - $head['meta'][] = array( + $styleUtil = new \dokuwiki\StyleUtils(); + $styleIni = $styleUtil->cssStyleini(); + $replacements = $styleIni['replacements']; + if (!empty($replacements['__theme_color__'])) { + $head['meta'][] = array( 'name' => 'theme-color', 'content' => $replacements['__theme_color__'] ); - } + } - if($alt) { - if(actionOK('rss')) { - $head['link'][] = array( - 'rel' => 'alternate', 'type'=> 'application/rss+xml', - 'title'=> $lang['btn_recent'], 'href'=> DOKU_BASE.'feed.php' - ); - $head['link'][] = array( - 'rel' => 'alternate', 'type'=> 'application/rss+xml', - 'title'=> $lang['currentns'], - 'href' => DOKU_BASE.'feed.php?mode=list&ns='.(isset($INFO) ? $INFO['namespace'] : '') - ); - } - if(($ACT == 'show' || $ACT == 'search') && $INFO['writable']) { - $head['link'][] = array( - 'rel' => 'edit', - 'title'=> $lang['btn_edit'], - 'href' => wl($ID, 'do=edit', false, '&') - ); - } + if($alt) { + if(actionOK('rss')) { + $head['link'][] = array( + 'rel' => 'alternate', 'type'=> 'application/rss+xml', + 'title'=> $lang['btn_recent'], 'href'=> DOKU_BASE.'feed.php' + ); + $head['link'][] = array( + 'rel' => 'alternate', 'type'=> 'application/rss+xml', + 'title'=> $lang['currentns'], + 'href' => DOKU_BASE.'feed.php?mode=list&ns='.(isset($INFO) ? $INFO['namespace'] : '') + ); + } + if(($ACT == 'show' || $ACT == 'search') && $INFO['writable']) { + $head['link'][] = array( + 'rel' => 'edit', + 'title'=> $lang['btn_edit'], + 'href' => wl($ID, 'do=edit', false, '&') + ); + } - if(actionOK('rss') && $ACT == 'search') { - $head['link'][] = array( - 'rel' => 'alternate', 'type'=> 'application/rss+xml', - 'title'=> $lang['searchresult'], - 'href' => DOKU_BASE.'feed.php?mode=search&q='.$QUERY - ); - } + if(actionOK('rss') && $ACT == 'search') { + $head['link'][] = array( + 'rel' => 'alternate', 'type'=> 'application/rss+xml', + 'title'=> $lang['searchresult'], + 'href' => DOKU_BASE.'feed.php?mode=search&q='.$QUERY + ); + } - if(actionOK('export_xhtml')) { - $head['link'][] = array( - 'rel' => 'alternate', 'type'=> 'text/html', 'title'=> $lang['plainhtml'], - 'href'=> exportlink($ID, 'xhtml', '', false, '&') - ); - } + if(actionOK('export_xhtml')) { + $head['link'][] = array( + 'rel' => 'alternate', 'type'=> 'text/html', 'title'=> $lang['plainhtml'], + 'href'=> exportlink($ID, 'xhtml', '', false, '&') + ); + } - if(actionOK('export_raw')) { - $head['link'][] = array( - 'rel' => 'alternate', 'type'=> 'text/plain', 'title'=> $lang['wikimarkup'], - 'href'=> exportlink($ID, 'raw', '', false, '&') - ); - } - } + if(actionOK('export_raw')) { + $head['link'][] = array( + 'rel' => 'alternate', 'type'=> 'text/plain', 'title'=> $lang['wikimarkup'], + 'href'=> exportlink($ID, 'raw', '', false, '&') + ); + } + } - // setup robot tags apropriate for different modes - if(($ACT == 'show' || $ACT == 'export_xhtml') && !$REV) { - if($INFO['exists']) { - //delay indexing: - if((time() - $INFO['lastmod']) >= $conf['indexdelay'] && !isHiddenPage($ID) ) { - $head['meta'][] = array('name'=> 'robots', 'content'=> 'index,follow'); - } else { - $head['meta'][] = array('name'=> 'robots', 'content'=> 'noindex,nofollow'); - } - $canonicalUrl = wl($ID, '', true, '&'); - if ($ID == $conf['start']) { - $canonicalUrl = DOKU_URL; - } - $head['link'][] = array('rel'=> 'canonical', 'href'=> $canonicalUrl); - } else { - $head['meta'][] = array('name'=> 'robots', 'content'=> 'noindex,follow'); - } - } elseif(defined('DOKU_MEDIADETAIL')) { - $head['meta'][] = array('name'=> 'robots', 'content'=> 'index,follow'); - } else { - $head['meta'][] = array('name'=> 'robots', 'content'=> 'noindex,nofollow'); - } + // setup robot tags apropriate for different modes + if(($ACT == 'show' || $ACT == 'export_xhtml') && !$REV) { + if($INFO['exists']) { + //delay indexing: + if((time() - $INFO['lastmod']) >= $conf['indexdelay'] && !isHiddenPage($ID) ) { + $head['meta'][] = array('name'=> 'robots', 'content'=> 'index,follow'); + } else { + $head['meta'][] = array('name'=> 'robots', 'content'=> 'noindex,nofollow'); + } + $canonicalUrl = wl($ID, '', true, '&'); + if ($ID == $conf['start']) { + $canonicalUrl = DOKU_URL; + } + $head['link'][] = array('rel'=> 'canonical', 'href'=> $canonicalUrl); + } else { + $head['meta'][] = array('name'=> 'robots', 'content'=> 'noindex,follow'); + } + } elseif(defined('DOKU_MEDIADETAIL')) { + $head['meta'][] = array('name'=> 'robots', 'content'=> 'index,follow'); + } else { + $head['meta'][] = array('name'=> 'robots', 'content'=> 'noindex,nofollow'); + } - // set metadata - if($ACT == 'show' || $ACT == 'export_xhtml') { - // keywords (explicit or implicit) - if(!empty($INFO['meta']['subject'])) { - $head['meta'][] = array('name'=> 'keywords', 'content'=> join(',', $INFO['meta']['subject'])); - } else { - $head['meta'][] = array('name'=> 'keywords', 'content'=> str_replace(':', ',', $ID)); - } - } + // set metadata + if($ACT == 'show' || $ACT == 'export_xhtml') { + // keywords (explicit or implicit) + if(!empty($INFO['meta']['subject'])) { + $head['meta'][] = array('name'=> 'keywords', 'content'=> join(',', $INFO['meta']['subject'])); + } else { + $head['meta'][] = array('name'=> 'keywords', 'content'=> str_replace(':', ',', $ID)); + } + } - // load stylesheets - $head['link'][] = array( - 'rel' => 'stylesheet', - 'href'=> DOKU_BASE . 'lib/exe/css.php?t='.rawurlencode($conf['template']).'&tseed='.$tseed, + // load stylesheets + $head['link'][] = array( + 'rel' => 'stylesheet', + 'href'=> DOKU_BASE . 'lib/exe/css.php?t='.rawurlencode($conf['template']).'&tseed='.$tseed, 'defer' => 'defer' - ); + ); - $script = "var NS='".(isset($INFO)?$INFO['namespace']:'')."';\n\t\t"; - if($conf['useacl'] && $INPUT->server->str('REMOTE_USER')) { - $script .= "var SIG=".toolbar_signature().";\n\t\t"; - } + $script = "var NS='".(isset($INFO)?$INFO['namespace']:'')."';".DOKU_LF.DOKU_TAB.DOKU_TAB; + if($conf['useacl'] && $INPUT->server->str('REMOTE_USER')) { + $script .= "var SIG=".toolbar_signature().";".DOKU_LF.DOKU_TAB.DOKU_TAB; + } - if($conf['basedir']) { - $script .= 'var BASEDIR="'.$conf['basedir']."\";\n\t\t"; - } + if($conf['basedir']) { + $script .= 'var BASEDIR="'.$conf['basedir']."\";".DOKU_LF.DOKU_TAB.DOKU_TAB; + } - jsinfo(); - $script .= 'var JSINFO = ' . json_encode($JSINFO).';'; - $head['script'][] = array('_data'=> $script); + jsinfo(); + $script .= 'var JSINFO = ' . json_encode($JSINFO).';'; + $head['script'][] = array('_data'=> $script); - // load jquery - $jquery = getCdnUrls(); - foreach($jquery as $src) { - $head['script'][] = array( - /* 'charset' => 'utf-8', -- obsolete */ - '_data' => '', - 'src' => $src, - ) + ($conf['defer_js'] ? [ 'defer' => 'defer'] : []); - } + // load jquery + $jquery = getCdnUrls(); + foreach($jquery as $src) { + $head['script'][] = array( + /* 'charset' => 'utf-8', -- obsolete */ + '_data' => '', + 'src' => $src, + ) + ($conf['defer_js'] ? [ 'defer' => 'defer'] : []); + } - // load our javascript dispatcher - $head['script'][] = array( - /* 'charset'=> 'utf-8', -- obsolete */ + // load our javascript dispatcher + $head['script'][] = array( + /* 'charset'=> 'utf-8', -- obsolete */ '_data'=> '', - 'src' => DOKU_BASE . 'lib/exe/js.php'.'?t='.rawurlencode($conf['template']).'&tseed='.$tseed, - ) + ($conf['defer_js'] ? [ 'defer' => 'defer'] : []); + 'src' => DOKU_BASE . 'lib/exe/js.php'.'?t='.rawurlencode($conf['template']).'&tseed='.$tseed, + ) + ($conf['defer_js'] ? [ 'defer' => 'defer'] : []); - // trigger event here - Event::createAndTrigger('TPL_METAHEADER_OUTPUT', $head, '_my_metaheaders_action', true); - return true; + // trigger event here + Event::createAndTrigger('TPL_METAHEADER_OUTPUT', $head, '_my_metaheaders_action', true); + return true; } /** @@ -227,23 +227,23 @@ function my_metaheaders($alt = true) { * @param array $data */ function _my_metaheaders_action($data) { - foreach($data as $tag => $inst) { - foreach($inst as $attr) { - if ( empty($attr) ) { continue; } - echo "\t<", $tag, ' ', buildAttributes($attr); - if(isset($attr['_data']) || $tag == 'script') { - if($tag == 'script' && $attr['_data']) - $attr['_data'] = "/**/"; + foreach($data as $tag => $inst) { + foreach($inst as $attr) { + if ( empty($attr) ) { continue; } + echo DOKU_TAB . '<', $tag, ' ', buildAttributes($attr); + if(isset($attr['_data']) || $tag == 'script') { + if($tag == 'script' && $attr['_data']) + $attr['_data'] = "/**/'; - echo '>', $attr['_data'], ''; - } else { - echo '/>'; - } - echo "\n"; - } - } + echo '>', $attr['_data'], ''; + } else { + echo '/>'; + } + echo DOKU_LF; + } + } } /** @@ -256,7 +256,7 @@ function _my_metaheaders_action($data) { * @returns string (link) */ function my_homelink() { - global $conf; + global $conf; $hl = trim(tpl_getConf('homelink')); @@ -280,27 +280,27 @@ function my_homelink() { * @return void */ function my_breadcrumbs($prefix = '') { - global $lang; - global $conf; + global $lang; + global $conf; - //check if enabled - if(!$conf['breadcrumbs']) return false; + //check if enabled + if(!$conf['breadcrumbs']) return false; - $crumbs = breadcrumbs(); //setup crumb trace + $crumbs = breadcrumbs(); //setup crumb trace /* begin listing */ - echo $prefix . "'.NL; } /** @@ -318,58 +318,58 @@ function my_breadcrumbs($prefix = '') { * */ function my_youarehere($prefix = '') { - global $conf; - global $ID; - global $lang; + global $conf; + global $ID; + global $lang; - // check if enabled - if(!$conf['youarehere']) return false; + // check if enabled + if(!$conf['youarehere']) return false; - $parts = explode(':', $ID); - $count = count($parts); + $parts = explode(':', $ID); + $count = count($parts); $isdir = ( $parts[$count-1] == $conf['start']); $hl = trim(tpl_getConf('homelink')); - echo $prefix . "'.NL; } /** @@ -383,8 +383,8 @@ function my_youarehere($prefix = '') { * @return void */ function my_userinfo($prefix = '') { - global $lang; - global $INPUT; + global $lang; + global $INPUT; // add login/logout button: $items = (new \dokuwiki\Menu\UserMenu())->getItems(); @@ -395,13 +395,13 @@ function my_userinfo($prefix = '') { echo $prefix . '
  • ' . $lang['loggedinas'] . ' ' . - userlink() . "
  • \n"; + userlink() . "".NL; } else { - echo $prefix . "
  • getLink()) . + echo $prefix . "
  • " . '' . ($typ === 'profile'? userlink() : $it->getLabel() ) . - "
  • \n"; + ''.NL; } } } @@ -419,43 +419,44 @@ function my_userinfo($prefix = '') { * @return void */ function my_toc($prefix = '') { - global $TOC; - global $ACT; - global $ID; - global $REV; - global $INFO; - global $conf; - global $lang; - $toc = array(); + global $TOC; + global $ACT; + global $ID; + global $REV; + global $INFO; + global $conf; + global $lang; + $toc = array(); - if(is_array($TOC)) { - // if a TOC was prepared in global scope, always use it - $toc = $TOC; - } elseif(($ACT == 'show' || substr($ACT, 0, 6) == 'export') && !$REV && $INFO['exists']) { - // get TOC from metadata, render if neccessary - $meta = p_get_metadata($ID, '', METADATA_RENDER_USING_CACHE); - if(isset($meta['internal']['toc'])) { - $tocok = $meta['internal']['toc']; - } else { - $tocok = true; - } - $toc = isset($meta['description']['tableofcontents']) ? $meta['description']['tableofcontents'] : null; - if(!$tocok || !is_array($toc) || !$conf['tocminheads'] || count($toc) < $conf['tocminheads']) { - $toc = array(); - } - } elseif($ACT == 'admin') { - // try to load admin plugin TOC - /** @var $plugin AdminPlugin */ - if ($plugin = plugin_getRequestAdminPlugin()) { - $toc = $plugin->getTOC(); - $TOC = $toc; // avoid later rebuild - } - } + if(is_array($TOC)) { + // if a TOC was prepared in global scope, always use it + $toc = $TOC; + } elseif(($ACT == 'show' || substr($ACT, 0, 6) == 'export') && !$REV && $INFO['exists']) { + // get TOC from metadata, render if neccessary + $meta = p_get_metadata($ID, '', METADATA_RENDER_USING_CACHE); + if(isset($meta['internal']['toc'])) { + $tocok = $meta['internal']['toc']; + } else { + $tocok = true; + } + $toc = isset($meta['description']['tableofcontents']) ? $meta['description']['tableofcontents'] : null; + if(!$tocok || !is_array($toc) || !$conf['tocminheads'] || count($toc) < $conf['tocminheads']) { + $toc = array(); + } + } elseif($ACT == 'admin') { + // try to load admin plugin TOC + /** @var $plugin AdminPlugin */ + if ($plugin = plugin_getRequestAdminPlugin()) { + $toc = $plugin->getTOC(); + $TOC = $toc; // avoid later rebuild + } + } /* Build the hierarchical list of headline links: */ if (count($toc) >= intval($conf['tocminheads'])) { - echo $prefix . "\n"; + echo ''.NL; + echo $prefix . DOKU_TAB . DOKU_TAB . ''.NL; + echo $prefix . DOKU_TAB . ''.NL; + echo $prefix . ''.NL; } } @@ -501,9 +507,9 @@ function my_toc($prefix = '') { */ function my_lastchange($prefix = '') { - global $lang; - global $INFO; - global $conf; + global $lang; + global $INFO; + global $conf; $lastmod = $INFO['lastmod']; @@ -511,14 +517,14 @@ function my_lastchange($prefix = '') { $longDate = htmlentities(dformat($lastmod)); - echo $prefix . "

    \n"; - echo $prefix . "\t" . $lang['lastmod'] . "\n"; - echo $prefix . "\t\n"; - echo $prefix . "

    \n"; + echo $prefix . '

    '.NL; + echo $prefix . DOKU_TAB . '' . $lang['lastmod'] . ''.NL; + echo $prefix . DOKU_TAB . '".NL; + echo $prefix . '

    '.NL; } /* user name for last change (is this really interesting to the visitor?) */ - /* echo $prefix .'' . $lang['by'] . ' ' . editorinfo($INFO['editor']) . "\n"; */ + /* echo $prefix .'' . $lang['by'] . ' ' . editorinfo($INFO['editor']) . ''.NL; */ } /** @@ -527,24 +533,24 @@ function my_lastchange($prefix = '') { * @return string html of description list */ function my_img_meta($prefix = '') { - global $lang; + global $lang; $format = '%Y-%m-%dT%T%z'; /* e.g. 2021-21-05T16:45:12+02:00 */ - $tags = tpl_get_img_meta(); + $tags = tpl_get_img_meta(); - foreach($tags as $tag) { - $label = $lang[$tag['langkey']]; - if(!$label) $label = $tag['langkey'] . ':'; + foreach($tags as $tag) { + $label = $lang[$tag['langkey']]; + if(!$label) $label = $tag['langkey'] . ':'; - echo $prefix . ''.$label.''; - if ($tag['type'] == 'date') { - echo ''; - } else { - echo hsc($tag['value']); - } - echo "\n"; - } + echo $prefix . "{$label}"; + if ($tag['type'] == 'date') { + echo ''; + } else { + echo hsc($tag['value']); + } + echo ''.NL; + } } /** @@ -552,13 +558,13 @@ function my_img_meta($prefix = '') { * */ function my_sitelogo() { - global $conf; + global $conf; // get logo either out of the template images folder or data/media folder $logoSize = array(); $logo = tpl_getMediaFile(array(':logo.svg', ':wiki:logo.svg', ':logo.png', ':wiki:logo.png', 'images/sitelogo.svg'), false, $logoSize); tpl_link( my_homelink(), - '' . htmlentities($conf['title']) . '', 'accesskey="h" title="[H]" class="logo"'); + "' . htmlentities($conf['title']) . '', 'accesskey="h" title="[H]" class="logo"'); } /** @@ -583,16 +589,16 @@ function my_favicons($color = null) { if ($color== null) { $color = '#2b73b7'; } } - echo "\t\n"; */ + echo DOKU_TAB . "".NL; */ // get the favicon: $link = tpl_getMediaFile(array(':favicon.ico', ':favicon.png', ':favicon.svg', ':wiki:favicon.ico', ':wiki:favicon.png', ':wiki:favicon.svg'), false, $logoSize); - echo "\t\n"; + echo DOKU_TAB . "".NL; // Apple Touch Icon $logoSize = array(); $link = tpl_getMediaFile(array(':apple-touch-icon.png', ':wiki:apple-touch-icon.png', 'images/apple-touch-icon.png'), false, $logoSize); - echo "\t\n"; + echo DOKU_TAB . "".NL; } @@ -614,20 +620,25 @@ function my_cookiebanner($prefix = '') { return; } + // define the cookie icon: + $svg = ''; + // output the HTML code: - echo $prefix . "
    \n"; - echo $prefix . "\t

    \n"; - echo $prefix . "\t\t". $msg . "\r"; - echo $prefix . "\t

    \n"; - echo $prefix . "\t

    \n"; - echo $prefix . "\t\t\n"; - echo $prefix . "\t\t"; + echo $prefix . "

    ".NL; + echo $prefix . DOKU_TAB . '

    '.NL; + echo $prefix . DOKU_TAB . DOKU_TAB . "{$svg}".NL; + echo $prefix . DOKU_TAB . DOKU_TAB . "{$msg}".NL; + echo $prefix . DOKU_TAB . '

    '.NL; + echo $prefix . DOKU_TAB . '

    '.NL; + echo $prefix . DOKU_TAB . DOKU_TAB . ''.NL; + echo $prefix . DOKU_TAB . DOKU_TAB; if ( substr($link, 0, 7) == 'http://' || substr($link, 0, 8) == 'https://') { - echo '' . hsc(tpl_getLang('cookie_linktext')) . ''; + echo "" . hsc(tpl_getLang('cookie_linktext')) . ''; } else { tpl_pagelink($link, tpl_getLang('cookie_linktext')); } - echo $prefix . "\n\t

    \n" . $prefix . "
    \n"; + echo $prefix . DOKU_LF . DOKU_TAB.'

    '.NL; + echo $prefix . '
    '.NL; } @@ -671,7 +682,7 @@ function my_langmenu($prefix, $place, $checkage = true) { $asMenu = ($place == 'tb'); // display as menu only in toolbar! - $out .= "{$prefix}
    \n"; + $out .= $prefix . "
    ".NL; // create the header item @@ -684,9 +695,10 @@ function my_langmenu($prefix, $place, $checkage = true) { $svg = "{$langName}{$lang}"; // prepare the menu button: - $out .= "{$prefix}\t\n"; + $out .= $prefix . DOKU_TAB . ''.NL; } else { // show as list (sidebar) @@ -709,13 +721,13 @@ function my_langmenu($prefix, $place, $checkage = true) { $headline = html_wikilink($about, $headline); } /* complete the headline */ - $out .= "{$prefix}\t

    " . $headline . "

    \n"; + $out .= $prefix . DOKU_TAB . "

    {$headline}

    ".NL; } } /* build the menu content */ - $out .= "{$prefix}\t\n"; + $out .= $prefix . DOKU_TAB . DOKU_TAB . ''.NL + . $prefix . DOKU_TAB . '
    '.NL + . $prefix . '
    '.NL; } echo $out; // done. } diff --git a/templates/55/ad-hominem/rest/pageinfo.php b/templates/55/ad-hominem/rest/pageinfo.php index 2280181..168e623 100644 --- a/templates/55/ad-hominem/rest/pageinfo.php +++ b/templates/55/ad-hominem/rest/pageinfo.php @@ -3,13 +3,14 @@ * DokuWiki Information about a page in JSON format * * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) - * @author Sascha Leib + * @author Sascha Leib */ header('Content-Type: application/json'); header('Access-Control-Allow-Origin: *'); -//ini_set('display_errors', '1'); +// Turn off all error reporting +//error_reporting(0); /* connect to DokuWiki: */ if(!defined('NOSESSION')) define('NOSESSION',true); // we do not use a session or authentication here (better caching) @@ -17,7 +18,7 @@ if (!defined('DOKU_INC')) { define('DOKU_INC', __DIR__ . '/../../../../'); } require_once(DOKU_INC . 'inc/init.php'); /* get the output style (can be 'preview' or 'all') */ -$style = strtolower($_GET['v']); +$style = ( array_key_exists('v', $_GET) ? strtolower($_GET['v']) : 'all' ); if ($style !== 'preview') { $style = 'all'; } /* initialize the storage: */ @@ -33,7 +34,7 @@ if ($id !== null) { /* get all metadata; */ $meta = p_get_metadata($id); - if ($meta['title'] && $meta['title'] !== null) { + if (array_key_exists('title', $meta) && $meta['title'] !== null) { if ($style == 'preview') { $result['type'] = 'preview'; @@ -69,15 +70,14 @@ if ($id !== null) { /* extract the first paragraph:*/ $parts = explode("\n", $meta['description']['abstract']); - $result['extract'] = $parts[2]; - $result['extract_html'] = '

    '.$parts[2].'

    '; + $result['extract'] = ( count($parts) > 2 ? $parts[2] : '' ); + $result['extract_html'] = '

    '. ( count($parts) > 2 ? $parts[2] : '' ) .'

    '; } else { + /* page does not exist */ $result['extract'] = 'Error: page does not exist.'; $result['extract_html'] = '

    ' . $result['extract'] . '

    '; } - // $result['conf'] = $conf; /* WARNING: this may expose your configuration to the Internet. Use only for debugging! */ - // $result['meta'] = $meta; /* uncomment if you need additional meta information */ } /* output the result: */ diff --git a/templates/55/ad-hominem/script.js b/templates/55/ad-hominem/script.js index 46a2e5d..d91f1d6 100644 --- a/templates/55/ad-hominem/script.js +++ b/templates/55/ad-hominem/script.js @@ -16,13 +16,19 @@ $p = { $p.search.init(); $p.togglers.init(); $p.langMenu.init(); - }, /* link information */ linkinfo: { init: function() { + // write a warning to the console for wrong BASEDIR settings: + if (typeof BASEDIR !== 'string') { + console.warn("Ad-Hominem Template: BASEDIR not set, assuming '/'!"); + } else if (BASEDIR.substring(0,1) !== '/') { + console.warn("Ad-Hominem Template: BASEDIR does not start with a slash, this may cause problems."); + } + /* find all links in the main section */ var main = document.getElementById("main-layout"); var al = main.getElementsByTagName("a"); @@ -100,7 +106,7 @@ $p = { /* TODO: mechanism to dynamically add sites by site admin */ /* callback for the onhover event of links: */ - _linkHoverCallback: function() { + _linkHoverCallback: function(evt) { var a = jQuery(this); var hi = jQuery.data(this, 'has-info'); @@ -124,7 +130,9 @@ $p = { break; } }; - } catch (e) {} + } catch (err) { + console.error(err); + } /* get the ID to request: */ switch(type) { @@ -153,7 +161,7 @@ $p = { dataType: 'json', crossDomain: true, error: function(xhr, msg, e) { - console.error(msg); + console.error("Ajax Error:", msg); }, success: function(data, msg, xhr) { // build the new title for the element: diff --git a/templates/55/ad-hominem/style.ini b/templates/55/ad-hominem/style.ini index 06b120f..464a999 100644 --- a/templates/55/ad-hominem/style.ini +++ b/templates/55/ad-hominem/style.ini @@ -25,7 +25,7 @@ css/_media_fullscreen.css = screen css/_fileuploader.css = screen css/_tabs.css = screen css/_links.css = screen -css/_footnotes.css = screen +css/_footnotes.css = all css/_search.less = screen css/_recent.css = screen css/_diff.css = screen @@ -41,6 +41,8 @@ css/pagetools.less = screen css/content.less = screen css/plugins.less = screen +css/geshi.less = all + css/print.less = print @@ -63,7 +65,7 @@ __background__ = "#FFF" ; @ini_background __text_alt__ = "#333" ; @ini_text_alt __background_alt__ = "#EEE" ; @ini_background_alt ; neutral text and background colors -__text_neu__ = "#666" ; @ini_text_neu +__text_neu__ = "#616161" ; @ini_text_neu __background_neu__ = "#DDD" ; @ini_background_neu ; border color __border__ = "#CCC" ; @ini_border @@ -76,7 +78,7 @@ __highlight__ = "#fcffaa" ; @ini_highlight ; default link color __link__ = "#1F53A8" ; @ini_link -; border color +; separator color __separator__ = "#666" ; @ini_separator ;-------------------------------------------------------------------------- @@ -106,16 +108,18 @@ __focus_color__ = "rgba(255,136,0,.75)" ; @ini_focus_color: focus colour (Acces __background_site_dark__ = "#0C0C0D" ; @ini_background_site_dark __background_dark__ = "#232327" ; @ini_background_dark __background_alt_dark__ = "#39393D" ; @ini_background_alt_dark +__background_neu_dark__ = "#4C4C4E" ; @ini_background_neu_dark __headlines_dark__ = "#ADADB3" ; @ini_headlines_dark __text_dark__ = "#CCC" ; @ini_text_dark __text_alt_dark__ = "#AEAEAE" ; @ini_text_alt_dark +__text_neu_dark__ = "#BDBDBD" ; @ini_text_neu_dark __link_dark__ = "#76B0FD" ; @ini_link_dark __existing_dark__ = "#00CA1B" ; @ini_existing_dark __missing_dark__ = "#FF9233" ; @ini_missing_dark __inpage_dark__ = "#A7AEA6" ; @ini_inpage_dark __border_dark__ = "#38383D" ; @ini_border_dark __blockquote_dark__ = "#3b3b42" ; @ini_blockquote_dark - +__highlight_dark__ = "#3c3c36" ; @ini_highlight_dark ;----------------------------------------------- Font families ---- diff --git a/templates/55/ad-hominem/template.info.txt b/templates/55/ad-hominem/template.info.txt index 75d65e9..3c71772 100644 --- a/templates/55/ad-hominem/template.info.txt +++ b/templates/55/ad-hominem/template.info.txt @@ -1,7 +1,7 @@ base ad-hominem author Sascha Leib email ad@hominem.info -date 2024-10-07 +date 2025-03-18 name Ad Hominem Template -desc A flexible, lightweight and modernised revision of the DokuWIki default template, optimized for DokuWiki "Kaos" +desc A flexible, lightweight and modernised revision of the DokuWIki default template url https://www.dokuwiki.org/template:ad-hominem diff --git a/templates/55/bulma.mk b/templates/55/bulma.mk new file mode 100644 index 0000000..8293765 --- /dev/null +++ b/templates/55/bulma.mk @@ -0,0 +1,61 @@ +# Progress Linux: dokuwiki-templates-extra + +# Copyright (C) 2024 Daniel Baumann +# +# SPDX-License-Identifier: GPL-3.0+ +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Build-Depends: +# none + +SHELL := sh -e + +TEMPLATE := bulma + +all: + +test: + +build: + +install: + mkdir -p $(DESTDIR)/usr/share/dokuwiki/templates-extra + cp -a $(TEMPLATE) $(DESTDIR)/usr/share/dokuwiki/templates-extra + + # removing unused files + rm -f $(DESTDIR)/usr/share/dokuwiki/templates-extra/$(TEMPLATE)/LICENSE* + rm -f $(DESTDIR)/usr/share/dokuwiki/templates-extra/$(TEMPLATE)/README* + rm -rf $(DESTDIR)/usr/share/dokuwiki/templates-extra/$(TEMPLATE)/.git* + + rm -f $(DESTDIR)/usr/share/dokuwiki/templates-extra/$(TEMPLATE)/composer.json + +uninstall: + rm -rf $(DESTDIR)/usr/share/dokuwiki/templates-extra/$(TEMPLATE) + rmdir --ignore-fail-on-non-empty --parents $(DESTDIR) || true + +clean: + +distclean: + +reinstall: uninstall install + +upstream: + rm -rf $(TEMPLATE) + git clone https://github.com/KSU-Linux/dokuwiki-template-bulma $(TEMPLATE) + + # removing embedded copies + rm -f $(TEMPLATE)/css/bulma.min.css + + rm -rf $(TEMPLATE)/.git diff --git a/templates/55/bulma/LICENSE b/templates/55/bulma/LICENSE new file mode 100644 index 0000000..4523de6 --- /dev/null +++ b/templates/55/bulma/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2022 Kennesaw State University - Linux Server Team + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/templates/55/bulma/README.md b/templates/55/bulma/README.md new file mode 100644 index 0000000..d0c7e0c --- /dev/null +++ b/templates/55/bulma/README.md @@ -0,0 +1,9 @@ +# DokuWiki Template Bulma + +DokuWiki template based on the Bulma CSS framework. + +![preview](preview.png) + +# Installation + +Download or clone this repository to `lib/tpl/bulma`. diff --git a/templates/55/bulma/css/basic.css b/templates/55/bulma/css/basic.css new file mode 100644 index 0000000..2dd3c9a --- /dev/null +++ b/templates/55/bulma/css/basic.css @@ -0,0 +1,459 @@ +/** + * This file provides the most basic styles. + * + * If you integrate DokuWiki into another project, you might either + * want to integrate this file into the other project as well, or use + * the other project's basic CSS for DokuWiki instead of this one. + * + * @author Anika Henke + */ + +html { + overflow-x: auto; + overflow-y: scroll; +} +html, +body { + background-color: __background__; + color: __text__; + margin: 0; + padding: 0; +} +body { + font: normal 100%/1.4 Frutiger, Calibri, "Myriad Pro", Myriad, "Nimbus Sans L", Geneva, "Helvetica Neue", Helvetica, Arial, sans-serif; + /* default font size: 100% => 16px; 93.75% => 15px; 87.5% => 14px; 81.25% => 13px; 75% => 12px */ + -webkit-text-size-adjust: 100%; +} + + +/*____________ headers ____________*/ + +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: Constantia, Utopia, Lucidabright, Lucida, Georgia, "Nimbus Roman No9 L", serif; + font-weight: bold; + color: __text_neu__; + background-color: inherit; + padding: 0; + line-height: 1.2; + clear: left; /* ideally 'both', but problems with toc */ +} +[dir=rtl] h1, +[dir=rtl] h2, +[dir=rtl] h3, +[dir=rtl] h4, +[dir=rtl] h5, +[dir=rtl] h6 { + clear: right; +} + +h1 { + font-size: 2.25em; + margin: 0 0 0.444em; +} +h2 { + font-size: 1.5em; + margin: 0 0 0.666em; +} +h3 { + font-size: 1.125em; + margin: 0 0 0.888em; +} +h4 { + font-size: 1em; + margin: 0 0 1.0em; +} +h5 { + font-size: .875em; + margin: 0 0 1.1428em; +} +h6 { + font-size: .75em; + margin: 0 0 1.333em; +} +/* bottom margin = 1 / font-size */ + +caption, +figcaption, +summary, +legend { + font-style: italic; + font-weight: normal; + line-height: 1.2; + padding: 0; + margin: 0 0 .35em; +} + + +/*____________ basic margins and paddings ____________*/ + +p, +ul, +ol, +dl, +pre, +table, +hr, +blockquote, +figure, +details, +fieldset, +address { + margin: 0 0 1.4em 0; /* bottom margin = line-height */ + padding: 0; +} + +div { + margin: 0; + padding: 0; +} + + +/*____________ lists ____________*/ + +ul, +ol { + padding: 0 0 0 1.5em; +} +[dir=rtl] ul, +[dir=rtl] ol { + padding: 0 1.5em 0 0; +} + +li, +dd { + padding: 0; + margin: 0 0 0 1.5em; +} +[dir=rtl] li, +[dir=rtl] dd { + margin: 0 1.5em 0 0; +} + +dt { + font-weight: bold; + margin: 0; + padding: 0; +} + +li ul, +li ol, +li dl, +dl ul, +dl ol, +dl dl { + margin-bottom: 0; + padding: 0; +} +li li { + font-size: 100%; +} + +ul { + list-style: disc outside; +} +ol { + list-style: decimal outside; +} +ol ol { + list-style-type: lower-alpha; +} +ol ol ol { + list-style-type: upper-roman; +} +ol ol ol ol { + list-style-type: upper-alpha; +} +ol ol ol ol ol { + list-style-type: lower-roman; +} + + +/*____________ tables ____________*/ + +table { + border-collapse: collapse; + empty-cells: show; + border-spacing: 0; + border: 1px solid __border__; +} + +caption { + caption-side: top; + text-align: left; +} +[dir=rtl] caption { + text-align: right; +} + +th, +td { + padding: .3em .5em; + margin: 0; + vertical-align: top; + border: 1px solid __border__; +} +th { + font-weight: bold; + background-color: __background_alt__; + color: inherit; + text-align: left; +} +[dir=rtl] th { + text-align: right; +} + + +/*____________ links ____________*/ + +a { +} +a:link, +a:visited { + text-decoration: none; + color: __link__; +} +a:link:hover, +a:visited:hover, +a:link:focus, +a:visited:focus, +a:link:active, +a:visited:active { + text-decoration: underline; +} +a:link:focus, +a:visited:focus { + outline: 1px dotted; +} +a:link:active, +a:visited:active { + color: #c00; +} + + +/*____________ misc ____________*/ + +img { + border-width: 0; + vertical-align: middle; + color: #666; + background-color: transparent; + font-style: italic; +} + +img, +object, +embed, +iframe, +video, +audio { + max-width: 100%; +} + +img, +video { + height: auto; +} + +iframe { + border-width: 0; + background-color: inherit; +} + +button img { + max-width: none; +} + +hr { + border-style: solid; + border-width: 1px 0 0; + text-align: center; + height: 0; + width: 100%; + clear: both; +} + +acronym, +abbr { + font-style: normal; +} +acronym[title], +abbr[title] { + cursor: help; + border-bottom: 1px dotted; + text-decoration: none; +} +em acronym, +em abbr { + font-style: italic; +} + +mark { + background: __highlight__; + color: inherit; +} + +pre, +code, +samp, +kbd { + font-family: Consolas, "Andale Mono WT", "Andale Mono", "Bitstream Vera Sans Mono", "Nimbus Mono L", Monaco, "Courier New", monospace; + /* same font stack should be used for ".dokuwiki table.diff td" in _diff.css */ + font-size: 1em; + background-color: __background_alt__; + color: __text__; + direction: ltr; + text-align: left; +} +pre { + border: 1px solid __border__; + padding: 0 .2em; + overflow: auto; + word-wrap: normal; +} + +blockquote { + padding: 0 .5em; + border: solid __border__; + border-width: 0 0 0 .25em; +} +[dir=rtl] blockquote { + border-width: 0 .25em 0 0; +} +q:before, +q:after { + content: ''; +} + +sub, +sup { + font-size: .8em; + line-height: 1; +} +sub { + vertical-align: sub; +} +sup { + vertical-align: super; +} + +small { + font-size: .8em; +} + +wbr { + display: inline-block; +} + +/*____________ forms ____________*/ + +form { + display: inline; + margin: 0; + padding: 0; +} + +fieldset { + padding: .7em 1em 0; + padding: .7rem 1rem; /* for those browsers understanding :last-child */ + border: 1px solid #999; +} +fieldset > :last-child { + margin-bottom: 0; +} +legend { + padding: 0 .1em; +} + +label { + vertical-align: middle; + cursor: pointer; +} + +input, +textarea, +button, +select, +optgroup, +option, +keygen, +output, +meter, +progress { + font: inherit; + color: inherit; + /* background-color destroys button look */ + line-height: normal; + margin: 0; + vertical-align: middle; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + box-sizing: content-box; +} + +input, +button, +select, +keygen, +textarea { + padding: .1em; +} +input[type=radio], +input[type=checkbox], +input[type=image], +input.check { + padding: 0; +} + +input[type=submit], +input[type=button], +input[type=reset], +input.button, +button { + cursor: pointer; + overflow: visible; + padding: .1em .4em; +} + +input[disabled], +button[disabled], +select[disabled], +textarea[disabled], +option[disabled], +input[readonly], +button[readonly], +select[readonly], +textarea[readonly] { + cursor: auto; + opacity: .5; +} + +input:focus, +button:focus, +select:focus, +keygen:focus, +textarea:focus { + box-shadow: 0 0 5px #999; + outline: 0; +} +input::-moz-focus-inner, +button::-moz-focus-inner { + border: 0; + padding: 0; +} + +select { + max-width: 100%; +} +optgroup { + font-style: italic; + font-weight: bold; +} +option { + font-style: normal; + font-weight: normal; +} diff --git a/templates/55/bulma/css/content.css b/templates/55/bulma/css/content.css new file mode 100644 index 0000000..edd8fab --- /dev/null +++ b/templates/55/bulma/css/content.css @@ -0,0 +1,169 @@ +/** + * This file provides the main design styles for the page content. + * + * @author Anika Henke + * @author Andreas Gohr + */ + + +/*____________ section indenting ____________ + +.dokuwiki .page h1 {margin-left: 0;} +.dokuwiki .page h2 {margin-left: .666em;} +.dokuwiki .page h3 {margin-left: 1.776em;} +.dokuwiki .page h4 {margin-left: 3em;} +.dokuwiki .page h5 {margin-left: 4.5712em;} +.dokuwiki .page div.level1 {margin-left: 0;} +.dokuwiki .page div.level2 {margin-left: 1em;} +.dokuwiki .page div.level3 {margin-left: 2em;} +.dokuwiki .page div.level4 {margin-left: 3em;} +.dokuwiki .page div.level5 {margin-left: 4em;} + +[dir=rtl] .dokuwiki .page h1 {margin-left: 0; margin-right: 0;} +[dir=rtl] .dokuwiki .page h2 {margin-left: 0; margin-right: .666em;} +[dir=rtl] .dokuwiki .page h3 {margin-left: 0; margin-right: 1.776em;} +[dir=rtl] .dokuwiki .page h4 {margin-left: 0; margin-right: 3em;} +[dir=rtl] .dokuwiki .page h5 {margin-left: 0; margin-right: 4.5712em;} +[dir=rtl] .dokuwiki .page div.level1 {margin-left: 0; margin-right: 0;} +[dir=rtl] .dokuwiki .page div.level2 {margin-left: 0; margin-right: 1em;} +[dir=rtl] .dokuwiki .page div.level3 {margin-left: 0; margin-right: 2em;} +[dir=rtl] .dokuwiki .page div.level4 {margin-left: 0; margin-right: 3em;} +[dir=rtl] .dokuwiki .page div.level5 {margin-left: 0; margin-right: 4em;} +*/ +/* hx margin-left = (1 / font-size) * .levelx-margin */ + + +/*____________ links to wiki pages (addition to _links) ____________*/ + +/* existing wikipage */ +.dokuwiki a.wikilink1 { + color: __existing__; + background-color: inherit; +} +/* not existing wikipage */ +.dokuwiki a.wikilink2 { + color: __missing__; + background-color: inherit; +} + + +/*____________ images ____________*/ + +/* embedded images (styles are already partly set in DokuWiki's lib/styles/all.css) */ +.dokuwiki img.media { + margin: .2em 0; +} +.dokuwiki img.medialeft { + margin: .2em 1.5em .2em 0; +} +.dokuwiki img.mediaright { + margin: .2em 0 .2em 1.5em; +} +.dokuwiki img.mediacenter { + margin: .2em auto; +} + + +/*____________ tables ____________*/ + +/* div before each table */ +.dokuwiki div.table { +} + +.dokuwiki table.inline { + min-width: 50%; +} +.dokuwiki table.inline tr:hover td { + background-color: __background_alt__; +} +.dokuwiki table.inline tr:hover th { + background-color: __border__; +} + + +/*____________ code ____________*/ + +/* fix if background-color hides underlining */ +.dokuwiki em.u code { + text-decoration: underline; +} + +/* filenames for downloadable file and code blocks */ +.dokuwiki dl.code, +.dokuwiki dl.file { +} + +.dokuwiki dl.code dt, +.dokuwiki dl.file dt { + background-color: __background_alt__; + border: solid __border__; + border-width: 1px 1px 0; + color: inherit; + display: inline; + padding: .1em .5em .2em; + margin-left: 1em; +} +[dir=rtl] .dokuwiki dl.code dt, +[dir=rtl] .dokuwiki dl.file dt { + margin-left: 0; + margin-right: 1em; +} +.dokuwiki dl.code dt a, +.dokuwiki dl.file dt a { +} + +.dokuwiki dl.code dd, +.dokuwiki dl.file dd { + margin: 0; +} + +/* for code in */ +.dokuwiki pre.file, +.dokuwiki dl.file pre, +.dokuwiki dl.file dt { + border-color: __text_neu__; +} + + +/*____________ media manager ____________*/ + +/* some headings in the media manager should not look like headings */ +#mediamanager__page h2, +#mediamanager__page h3 { + font-family: Frutiger, Calibri, Myriad, "Nimbus Sans L", Geneva, "Helvetica Neue", Helvetica, Arial, sans-serif; + color: __text__; +} + +/* to style button-like div in _fileuploader.css to look like other buttons, + please add '.qq-upload-button' to the according styles (which don't really exist in this template) */ +.qq-upload-button { + border: 1px solid __border__; + background-color: __background_alt__; + padding: 0.125em 0.4em; +} + +/*____________ styling plugin ____________*/ + +#plugin__styling.ispopup { + padding: 1em; +} + + +/*____________ JS popup ____________*/ + +.JSpopup { + background-color: __background__; + color: __text__; + border: 1px solid __border__; + line-height: 1.2; + padding: 0 .2em; +} + +.JSpopup ul, +.JSpopup ol { + padding-left: 0; +} +[dir=rtl] .JSpopup ul, +[dir=rtl] .JSpopup ol { + padding-right: 0; +} diff --git a/templates/55/bulma/css/custom.css b/templates/55/bulma/css/custom.css new file mode 100644 index 0000000..1d4a80f --- /dev/null +++ b/templates/55/bulma/css/custom.css @@ -0,0 +1,215 @@ +/* Sidebar */ +.sidebar .content h1, +.sidebar .content h2, +.sidebar .content h3, +.sidebar .content h4, +.sidebar .content h5, +.sidebar .content h6 { + padding-top: 0.8em; +} + +.sidebar hr { + background-color: #ffffff; +} + +/* Main content */ +.dw__toc { + float: right; + padding-left: 1rem; +} + +.editbutton_section > .btn_secedit { + border: 0; + float: right; +} + +.editbutton_table > .btn_secedit { + background-color: transparent; + border: 0; + margin-top: -0.4rem; +} + +.section_highlight { +/** Old settings that show highlighted area: + * margin-left: -1.20em; + * margin-right: -1.20em; + * margin-top: 2rem; + * padding-left: .5em; + * padding-right: .5em; + * border: solid #f5f5f5; + * border-width: 0 1em; + */ + margin-top: 2rem; +} + +.section_highlight:first-child { + margin-top: 0; +} + +.secedit:last-child { + padding-bottom: 1rem; +} + +.section_highlight > .table { + padding-bottom: 1.5rem; +} + +.mediafile { + background: transparent url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAAAwElEQVR4AW3PPUoDURQF4O/OBHsb0yi4ByG4TUELl+Q2bMQ0Roz5IfPedRgIg+Gd037cw40U3Frq/c/ae1YkPBw2pzLk3EM+P7nXJQmrU9nm79Tv/MrPkXzky0QIrIbc5zH3Y39yk+sR7HKbryMJIUfwVkCVBkfXgMXjAqAT6BS9KxvV4AZnIEDoQUwQM4CZTMttQExz87QWode1LiRIoTKDFuraIKQALkCKMzGnyi4TtexVl6llp0QK7iyb/xTrP+DMapMFm/pGAAAAAElFTkSuQmCC) 4px 4px no-repeat; + padding-left: 26px; + padding-bottom: 4px; + vertical-align: bottom; + padding-top: 2px; + padding-right: 4px; + background-color: #f5f5f5; + border-top-left-radius: 4px; + border-top-right-radius: 4px; +} + +.content em:not(.u) { + font-style: italic; +} + +.content li ol { + margin-top: .25em; +} + +.content sup { + vertical-align: super; + padding-left: 0.1rem; +} + +.content table { + width: inherit; +} + +a.wikilink2 { + color: #ff3860; +} + +a.urlextern { + background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAQAAAC1+jfqAAABdklEQVR4AWMgAVRo1zY3rGk41rC+rqvCBCJWBpPM4WoomLHtdtuv/t9Lfk263TtrQ0t7Oj9cbzZDc/W6s/8T7khD+P+F/8bv29PZlswJVVBu0vPuVZyNYHFZbmAqE1SR0cbjXR6pjGBO58am962Ta3e3ftqy6B5LCcMasOj7gInrm9jBzI4vTX+bfjT/7/4/p/w/zFXybUmt71u4wJzGfxP/t/xvA+KaP2XnQSKVFpWPav/U/6+HKJjz++OVJUDp1n9N/+r+19QyMCz1mPC/8X/X/26Igrn3GiUeL5n/v+F/8//6/9NOMTC0hDUDefP/L4MoOL6ickVeSQ1QqAGooPdBJE/lnloge/fhixBHftFd9bLkR83/+n/1QAXVP8qX1Pyv/L/s/12f/4xQNz8s3Pa/6X/Vvzqgour/5f/r/q//f2fmLy54WP7lfJN74eMSoKIyoNFz/5/+9ar+Px9aZL3Xfjvz7aO3/96+eLvsnSVE7CPhOAYA9nvIX0UoNU8AAAAASUVORK5CYII=); + background-repeat: no-repeat; + background-position: 0 center; + padding: 0 0 0 18px; +} + +code { + border-radius: 4px; +} + +.code dd { + margin-left: 0; +} + +.file { + display: block; +} + +.footnotes { + border-top: 1px solid #dbdbdb; + padding: .5em 0 0 0; + margin: 1em 0 0 0; + clear: both; +} + +.fn .content { + padding-left: 1em; +} + +.fn sup { + vertical-align: bottom; + position: relative; + top: 1.5em; +} + +.fn { + margin-top: -1em; +} + +/*.input, .textarea { + width: unset; +}*/ + +#dw__pagetools { + position: absolute; + right: 55px; + width: 1px; + top: 4em; +} + +#dw__pagetools .buttons { + position: fixed; +} + +#dw__pagetools .buttons .control .button a:is(:active, :focus, :hover) svg { + fill: #485fc7; +} + +/* TOC and pagetools */ +.toc .button { + text-align: left; + min-height: 27px; + white-space: unset; + height: auto; + flex-direction: column; +} + +/* Config */ +#config__manager fieldset { + background-color: transparent; +} + +#config__manager .table td { + border: none; +} + +/* User manager */ +/*input.user-search { + height: 24px; + width: 24px; +}*/ + +/* Edit tables */ +button.toolbutton { + border-radius: 2px; + + font-size: .75rem; + + background-color: #fff; + color: #363636; + cursor: pointer; + justify-content: center; + padding-bottom: calc(-0.5em); + padding-left: 1em; + padding-right: 1em; + padding-top: calc(-0.5em); + text-align: center; + white-space: nowrap; + + user-select: none; + + -webkit-appearance: none; + align-items: center; + border: 1px solid #dbdbdb; + box-shadow: none; + display: inline-flex; + height: 2.5em; + line-height: 1.5; + position: relative; + vertical-align: top; + + font-family: BlinkMacSystemFont,-apple-system,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Fira Sans","Droid Sans","Helvetica Neue",Helvetica,Arial,sans-serif; + + margin: 0; +} + +button.toolbutton:hover { + border-color: #b5b5b5; + color: #363636; +} + +.content table.htCore td, .content table th { + padding: unset; + vertical-align: top; +} diff --git a/templates/55/bulma/css/design.css b/templates/55/bulma/css/design.css new file mode 100644 index 0000000..1286370 --- /dev/null +++ b/templates/55/bulma/css/design.css @@ -0,0 +1,274 @@ +/** + * This file provides the main design styles for the + * bits that surround the content. + * + * @author Anika Henke + * @author Andreas Gohr + */ + + +/* header +********************************************************************/ + +#dokuwiki__header { + margin: 1em 0 0; +} + +#dokuwiki__header .headings { + margin-bottom: 2.1em; +} +#dokuwiki__header h1 { + margin-bottom: 0; + font-size: 1.5em; +} +#dokuwiki__header h1 a { + text-decoration: none; + color: __link__; + background-color: inherit; +} +#dokuwiki__header p.claim { + margin-bottom: 0; +} +#dokuwiki__header h2 { + margin-bottom: 0; + font-size: 1.125em; +} + +#dokuwiki__header .tools { + margin-bottom: 2.1em; +} +#dokuwiki__header .tools ul { + margin-bottom: 0; +} +#dokuwiki__header .tools ul li { + display: inline; +} + +#dokuwiki__header form.search { + margin: .5em 0 0; + display: block; +} +#dokuwiki__header form.search #qsearch__in { + width: 12em; + margin-right: .5em; +} +[dir=rtl] #dokuwiki__header form.search #qsearch__in { + margin-right: 0; + margin-left: .5em; +} + +#dokuwiki__header div.breadcrumbs { + margin-bottom: .3em; +} +#dokuwiki__header div.breadcrumbs a { + color: __existing__; + background-color: inherit; +} + + +/* tools +********************************************************************/ + +/* make wiki links look the same as tool links in tool bars */ +#dokuwiki__usertools a.wikilink1, +#dokuwiki__pagetools a.wikilink1, +#dokuwiki__usertools a.wikilink2, +#dokuwiki__pagetools a.wikilink2 { + color: __link__; + border-bottom-width: 0; +} +#dokuwiki__usertools a.wikilink2:hover, +#dokuwiki__pagetools a.wikilink2:hover, +#dokuwiki__usertools a.wikilink2:active, +#dokuwiki__pagetools a.wikilink2:active, +#dokuwiki__usertools a.wikilink2:focus, +#dokuwiki__pagetools a.wikilink2:focus { + text-decoration: underline; +} + +/* highlight selected tool */ +/* before Greebo: */ +.mode_admin a.action.admin, +.mode_login a.action.login, +.mode_register a.action.register, +.mode_profile a.action.profile, +.mode_recent a.action.recent, +.mode_index a.action.index, +.mode_media a.action.media, +.mode_revisions a.action.revs, +.mode_backlink a.action.backlink, +.mode_subscribe a.action.subscribe, +/* since Greebo: */ +.mode_admin .action.admin a, +.mode_login .action.login a, +.mode_register .action.register a, +.mode_profile .action.profile a, +.mode_recent .action.recent a, +.mode_index .action.index a, +.mode_media .action.media a, +.mode_revisions .action.revs a, +.mode_backlink .action.backlink a, +.mode_subscribe .action.subscribe a { + font-weight: bold; +} + +/*____________ user tools ____________*/ + +#dokuwiki__usertools { + position: absolute; + top: 0; + right: 0; + border-bottom: 1px solid __border__; + background-color: __background_alt__; + width: 100%; +} +#dokuwiki__usertools ul, +#dokuwiki__pagetools ul { + /* imitate #dokuwiki__site */ + margin: 0 auto; + max-width: __site_width__; + padding: 0 1em; +} +#dokuwiki__usertools ul li.user { + float: left; + margin-left: 0; +} +[dir=rtl] #dokuwiki__usertools ul li.user { + float: right; + margin-right: 0; +} + +/*____________ page tools ____________*/ + +#dokuwiki__pagetools { + position: fixed; + bottom: 0; + left: 0; + border-top: 1px solid __border__; + background-color: __background_alt__; + width: 100%; + z-index: 10; +} +#dokuwiki__pagetools ul li { + display: inline; + margin: 0 1.5em 0 0; +} +/* before Greebo: */ +#dokuwiki__pagetools ul li a.action.top, +/* since Greebo: */ +#dokuwiki__pagetools ul li.action.top a { + float: right; +} +/* before Greebo: */ +[dir=rtl] #dokuwiki__pagetools ul li a.action.top, +/* since Greebo: */ +[dir=rtl] #dokuwiki__pagetools ul li.action.top a { + float: left; +} + +/* hide background images from menu items inserted via plugins */ +#dokuwiki__pagetools ul li a { + background-image: none !important; +} +#dokuwiki__pagetools ul li a::before { + content: none !important; +} + + +/* sidebar +********************************************************************/ + +#dokuwiki__aside { + padding-top: .4em; +} + +.dokuwiki .aside { + overflow: hidden; + word-wrap: break-word; + line-height: 1.2; +} + +/* make sidebar more condensed */ + +.dokuwiki .aside h1 { + margin-bottom: .222em; +} +.dokuwiki .aside h2 { + margin-bottom: .333em; +} +.dokuwiki .aside h3 { + margin-bottom: .444em; +} +.dokuwiki .aside h4 { + margin-bottom: .5em; +} +.dokuwiki .aside h5 { + margin-bottom: .5714em; +} + +.dokuwiki .aside p, +.dokuwiki .aside ul, +.dokuwiki .aside ol, +.dokuwiki .aside dl, +.dokuwiki .aside pre, +.dokuwiki .aside table, +.dokuwiki .aside fieldset, +.dokuwiki .aside hr, +.dokuwiki .aside blockquote, +.dokuwiki .aside address { + margin-bottom: .7em; +} + +.dokuwiki .aside ul, +.dokuwiki .aside ol { + padding-left: .5em; +} +[dir=rtl] .dokuwiki .aside ul, +[dir=rtl] .dokuwiki .aside ol { + padding-right: .5em; +} +.dokuwiki .aside li ul, +.dokuwiki .aside li ol { + margin-bottom: 0; + padding: 0; +} + + +/* content +********************************************************************/ + +.dokuwiki .page { + word-wrap: break-word; +} + +/* license note in footer and under edit window */ +.dokuwiki div.license { + font-size: 93.75%; +} + + +/* footer +********************************************************************/ + +.dokuwiki .wrapper { + margin-bottom: 2.8em; +} + +#dokuwiki__footer { + margin-bottom: 1em; +} + +#dokuwiki__footer .doc { + float: left; +} +#dokuwiki__footer .top { + float: right; +} + +#dokuwiki__footer .license { + clear: both; +} +#dokuwiki__footer .license img { + margin: 0 .5em 0 0; + float: none; +} diff --git a/templates/55/bulma/css/includes.css b/templates/55/bulma/css/includes.css new file mode 100644 index 0000000..bc18996 --- /dev/null +++ b/templates/55/bulma/css/includes.css @@ -0,0 +1,4 @@ +/** + * This file provides styles for included seperate html files + * (added through "include hooks"). + */ diff --git a/templates/55/bulma/css/media.css b/templates/55/bulma/css/media.css new file mode 100644 index 0000000..667d5b8 --- /dev/null +++ b/templates/55/bulma/css/media.css @@ -0,0 +1,962 @@ +/** + * This file provides the styles for the file uploader + * used in the media manager (both fullscreen and popup). + */ + +.qq-uploader { + position: relative; + width: 100%; +} + +.qq-uploader .error { + color: #f00; + background-color: #fff; +} + +/* select file button */ + +.qq-upload-button { + display: inline-block; + text-decoration: none; + font-size: 100%; + cursor: pointer; + margin: 1px 1px 5px; +} + +.qq-upload-button { + color: #333; + background-color: #eee; + background-image: url(data:image/svg+xml;base64, PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAxIDEiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPgo8bGluZWFyR3JhZGllbnQgaWQ9Imc4MjQiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMCUiIHkxPSIwJSIgeDI9IjAlIiB5Mj0iMTAwJSI+CjxzdG9wIHN0b3AtY29sb3I9IiNGRkZGRkYiIG9mZnNldD0iMCIvPjxzdG9wIHN0b3AtY29sb3I9IiNGNEY0RjQiIG9mZnNldD0iMC4zIi8+ PHN0b3Agc3RvcC1jb2xvcj0iI0VFRUVFRSIgb2Zmc2V0PSIwLjk5Ii8+ PHN0b3Agc3RvcC1jb2xvcj0iI0NDQ0NDQyIgb2Zmc2V0PSIuOTkiLz4KPC9saW5lYXJHcmFkaWVudD4KPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNnODI0KSIgLz4KPC9zdmc+); + background-image: linear-gradient(to bottom, #ffffff 0%, #f4f4f4 30%, #eeeeee 99%, #cccccc 99%); + border: 1px solid #ccc; + border-radius: 2px; + padding: .1em .5em; + cursor: pointer; +} + +.qq-upload-button:hover { + border-color: #999; + background-color: #ddd; + background-image:url(data:image/svg+xml;base64, PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIHZpZXdCb3g9IjAgMCAxIDEiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPgo8bGluZWFyR3JhZGllbnQgaWQ9Imc2NzAiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMCUiIHkxPSIwJSIgeDI9IjAlIiB5Mj0iMTAwJSI+CjxzdG9wIHN0b3AtY29sb3I9IiNGRkZGRkYiIG9mZnNldD0iMCIvPjxzdG9wIHN0b3AtY29sb3I9IiNGNEY0RjQiIG9mZnNldD0iMC4zIi8+ PHN0b3Agc3RvcC1jb2xvcj0iI0RERERERCIgb2Zmc2V0PSIwLjk5Ii8+ PHN0b3Agc3RvcC1jb2xvcj0iI0JCQkJCQiIgb2Zmc2V0PSIuOTkiLz4KPC9saW5lYXJHcmFkaWVudD4KPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNnNjcwKSIgLz4KPC9zdmc+); + background-image: linear-gradient(to bottom, #ffffff 0%, #f4f4f4 30%, #dddddd 99%, #bbbbbb 99%); +} + +.qq-upload-button-focus { + outline: 1px dotted; +} + +/* drop area */ + +.qq-upload-drop-area { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + min-height: 70px; + z-index: 2; + background: @ini_background_neu; + color: @ini_text; + text-align: center; +} + +.qq-upload-drop-area span { + display: block; + position: absolute; + top: 50%; + width: 100%; + margin-top: -8px; + font-size: 120%; +} + +.qq-upload-drop-area-active { + background: @ini_background_alt; +} + +/* list of files to upload */ + +div.qq-uploader ul { + margin: 0; + padding: 0; + list-style: none; +} + +.qq-uploader li { + margin: 0 0 5px; + color: @ini_text; +} + +.qq-uploader li span, +.qq-uploader li input, +.qq-uploader li a { + margin-right: 5px; +} + +.qq-upload-file { + display: block; + font-weight: bold; +} + +.qq-upload-spinner { + display: inline-block; + background: url("../../images/throbber.gif"); + width: 15px; + height: 15px; + vertical-align: text-bottom; +} + +.qq-upload-size, +.qq-upload-cancel { + font-size: 85%; +} + +.qq-upload-failed-text { + display: none; +} +.qq-upload-fail .qq-upload-failed-text { + display: inline; +} + +.qq-action-container * { + vertical-align: middle; +} +.qq-overwrite-check input { + margin-left: 10px; +} + +/** + * This file provides the styles for the fullscreen media manager + * (?do=media). + * + * What most templates would probably need to change (depending on + * their site width) are the 4 min-width's (search for @change). + */ + + +/*____________ structure ____________*/ + +#mediamanager__page h1 { + margin-bottom: .5em; +} + +#mediamanager__page { + /* min-width must be summary of all 3 panels' min-widths */ + min-width: 50em; /* @change */ + width: 100%; + text-align: left; +} +[dir=rtl] #mediamanager__page { + text-align: right; +} +#mediamanager__page .panel { + float: left; +} +[dir=rtl] #mediamanager__page .panel { + float: right; +} + +#mediamanager__page .namespaces { + width: 20%; + min-width: 10em; /* @change */ + left:0 !important; /* overrules jQuery UI resizable in rtl */ +} +#mediamanager__page .filelist { + width: 50%; + min-width: 25em; /* @change */ + left:0 !important; /* overrules jQuery UI resizable in rtl */ +} +#mediamanager__page .file { + width: 30%; + min-width: 15em; /* @change */ +} + +#mediamanager__page .tabs li { + white-space: nowrap; +} + +#mediamanager__page .panelHeader { + background-color: #eee; + margin: 0 10px 10px 0; + padding: 10px 10px 8px; + text-align: left; + min-height: 20px; + overflow: hidden; +} +[dir=rtl] #mediamanager__page .panelHeader { + text-align: right; + margin: 0 0 10px 10px; +} +#mediamanager__page .panelContent { + overflow-y: auto; + overflow-x: hidden; + padding: 0; + margin: 0 10px 10px 0; + position: relative; +} +[dir=rtl] #mediamanager__page .panelContent { + text-align: right; + margin: 0 0 10px 10px; +} + +#mediamanager__page .file .panelHeader, +#mediamanager__page .file .panelContent { + margin-right: 0; +} +[dir=rtl] #mediamanager__page .file .panelHeader, +[dir=rtl] #mediamanager__page .file .panelContent { + margin-left: 0; +} + +#mediamanager__page .ui-resizable-e { + width: 6px; + right: 2px; + background: transparent url(../../images/resizecol.png) center center no-repeat; +} +#mediamanager__page .ui-resizable-e:hover { + background-color: #eee; +} +[dir=rtl] #mediamanager__page .ui-resizable-w { + width: 6px; + left: 2px; + background: transparent url(../../images/resizecol.png) center center no-repeat; +} +[dir=rtl] #mediamanager__page .ui-resizable-w:hover { + background-color: #eee; +} + + +#mediamanager__page dd { + margin: 0; +} + +#mediamanager__page .panelHeader h3 { + float: left; + font-weight: normal; + font-size: 1em; + padding: 0; + margin: 0 0 3px; +} +[dir=rtl] #mediamanager__page .panelHeader h3 { + float : right +} + + +/*____________ namespaces panel ____________*/ + +[dir=rtl] #mediamanager__page .namespaces { + text-align: right; +} + +/* make it look like a tab (as in _tabs.css) */ +#mediamanager__page .namespaces h2 { + font-size: 1em; + display: inline-block; + padding: .3em .8em; + margin: 0 0 0 .3em; + border-radius: .5em .5em 0 0; + font-weight: normal; + background-color: #eee; + color: #333; + border: 1px solid #ccc; + border-bottom-color: #eee; + line-height: 1.4em; + position: relative; + bottom: -1px; + z-index: 2; +} +[dir=rtl] #mediamanager__page .namespaces h2 { + margin: 0 .3em 0 0; + position: relative; + right: 10px; +} +#mediamanager__page .namespaces .panelHeader { + border-top: 1px solid #ccc; + z-index: 1; +} + +#mediamanager__page .namespaces ul { + margin-left: .2em; + margin-bottom: 0; + padding: 0; + list-style: none; +} +[dir=rtl] #mediamanager__page .namespaces ul { + margin-left: 0; + margin-right: .2em; +} +#mediamanager__page .namespaces ul ul { + margin-left: 1em; +} +[dir=rtl] #mediamanager__page .namespaces ul ul { + margin-left: 0; + margin-right: 1em; +} +#mediamanager__page .namespaces ul ul li { + margin: 0; +} + +#mediamanager__page .namespaces ul .selected { + background-color: #ff9; + font-weight: bold; +} + + +/*____________ file list panel ____________*/ + +/* file list header */ + +#mediamanager__page .panelHeader form.options { + float: right; + margin-top: -3px; +} +[dir=rtl] #mediamanager__page .panelHeader form.options { + float : left +} +#mediamanager__page .panelHeader ul { + list-style: none; + margin: 0; + padding: 0; +} +#mediamanager__page .panelHeader ul li { + color: #333; + float: left; + line-height: 1; + padding-left: 3px; +} +[dir=rtl] #mediamanager__page .panelHeader ul li { + padding-right: 3px; + padding-left: 0; + float: right; +} + +#mediamanager__page .panelHeader ul li.ui-controlgroup-horizontal { + padding-left: 30px; + margin: 0 0 0 5px; +} +#mediamanager__page .panelHeader ul li.listType { + background: url('../../images/icon-list.png') 3px 1px no-repeat; +} +#mediamanager__page .panelHeader ul li.sortBy { + background: url('../../images/icon-sort.png') 3px 1px no-repeat; +} +[dir=rtl] #mediamanager__page .panelHeader ul li.ui-controlgroup-horizontal { + padding-left: 0; + padding-right: 30px; + margin: 0 5px 0 0; + background-position: right 1px; +} + +#mediamanager__page .panelHeader form.options .ui-controlgroup-horizontal label{ + font-size: 90%; + margin-right: -0.4em; + padding: .3em .5em; + line-height: 1; +} + +/* file list content */ + +#mediamanager__page .filelist ul { + padding: 0; + margin: 0 10px 0 0; +} +[dir=rtl] #mediamanager__page .filelist ul { + margin: 0 0 0 10px; +} +#mediamanager__page .filelist ul.rows { + margin: 0; +} +#mediamanager__page .filelist .panelContent ul li:hover { + background-color: #eee; +} + +#mediamanager__page .filelist li dt a { + vertical-align: middle; + display: table-cell; + overflow: hidden; +} + +/* file list as thumbs */ + +#mediamanager__page .filelist .thumbs li { + width: 100px; + min-height: 130px; + display: inline-block; + /* the right margin should visually be 10px, but because of its inline-block nature the whitespace inbetween is about 4px more */ + margin: 0 6px 10px 0; + background-color: #fff_neu; + color: #333; + padding: 5px; + vertical-align: top; + text-align: center; + position: relative; + line-height: 1.2; +} +[dir=rtl] #mediamanager__page .filelist .thumbs li { + margin-right: 0; + margin-left: 6px; +} + +#mediamanager__page .filelist .thumbs li dt a { + width: 100px; + height: 90px; +} + +#mediamanager__page .filelist .thumbs li dt a img { + max-width: 90px; + max-height: 90px; +} + +#mediamanager__page .filelist .thumbs li .name, +#mediamanager__page .filelist .thumbs li .size, +#mediamanager__page .filelist .thumbs li .filesize, +#mediamanager__page .filelist .thumbs li .date { + display: block; + overflow: hidden; + text-overflow: ellipsis; + width: 90px; + white-space: nowrap; +} +#mediamanager__page .filelist .thumbs li .name { + padding: 5px 0; + font-weight: bold; +} +#mediamanager__page .filelist .thumbs li .date { + font-style: italic; + white-space: normal; +} + +/* file list as rows */ + +#mediamanager__page .filelist .rows li { + list-style: none; + display: block; + position: relative; + max-height: 50px; + margin: 0 0 3px 0; + background-color: #fff; + color: #333; + overflow: hidden; +} + +#mediamanager__page .filelist .rows li:nth-child(2n+1) { + background-color: #fff_neu; +} + +#mediamanager__page .filelist .rows li dt { + float: left; + width: 10%; + height: 40px; + text-align: center; +} +[dir=rtl] #mediamanager__page .filelist .rows li dt { + float: right; +} +#mediamanager__page .filelist .rows li dt a { + width: 100px; + height: 40px; +} + +#mediamanager__page .filelist .rows li dt a img { + max-width: 40px; + max-height: 40px; +} + +#mediamanager__page .filelist .rows li .name, +#mediamanager__page .filelist .rows li .size, +#mediamanager__page .filelist .rows li .filesize, +#mediamanager__page .filelist .rows li .date { + overflow: hidden; + text-overflow: ellipsis; + float: left; + margin-left: 1%; + white-space: nowrap; +} +[dir=rtl] #mediamanager__page .filelist .rows li .name, +[dir=rtl] #mediamanager__page .filelist .rows li .size, +[dir=rtl] #mediamanager__page .filelist .rows li .filesize, +[dir=rtl] #mediamanager__page .filelist .rows li .date { + float: right; + margin-left: 0; + margin-right: 1%; +} + +#mediamanager__page .filelist .rows li .name { + width: 30%; + font-weight: bold; +} +#mediamanager__page .filelist .rows li .size, +#mediamanager__page .filelist .rows li .filesize { + width: 15%; +} +#mediamanager__page .filelist .rows li .date { + width: 20%; + font-style: italic; + white-space: normal; +} + +/* upload form */ + +#mediamanager__page div.upload { + padding-bottom: 0.5em; +} + +/*____________ file panel ____________*/ + +#mediamanager__page .file ul.actions { + text-align: center; + margin: 0 0 5px; + padding: 0; + list-style: none; +} +#mediamanager__page .file ul.actions li { + display: inline; + margin: 0; +} + +#mediamanager__page .file div.image { + margin-bottom: 5px; + text-align: center; +} + +#mediamanager__page .file div.image img { + width: 100%; +} + +#mediamanager__page .file dl { + margin-bottom: 0; +} +#mediamanager__page .file dl dt { + font-weight: bold; + display: block; + background-color: #eee; +} +#mediamanager__page .file dl dd { + display: block; + background-color: #fff_neu; +} + + +/* file meta data edit form */ + +#mediamanager__page form.meta div.row { + margin-bottom: 5px; +} + +#mediamanager__page form.meta label span { + display: block; +} + +#mediamanager__page form.meta input { + width: 50%; +} + +#mediamanager__page form.meta button { + width: auto; +} + +#mediamanager__page form.meta textarea.edit { + height: 6em; + width: 95%; + min-width: 95%; + max-width: 95%; +} + +/* file revisions form */ + +#mediamanager__page form.changes ul { + margin-left: 10px; + padding: 0; + list-style-type: none; +} +[dir=rtl] #mediamanager__page form.changes ul { + margin-left: 0; + margin-right: 10px; +} + +#mediamanager__page form.changes ul li div.li div { + font-size: 90%; + color: #666; + padding-left: 18px; +} +[dir=rtl] #mediamanager__page form.changes ul li div.li div { + padding-left: 0; + padding-right: 18px; +} +#mediamanager__page form.changes ul li div.li input { + position: relative; + top: 1px; +} + +/* file diff view */ + +#mediamanager__diff table { + table-layout: fixed; + border-width: 0; +} + +#mediamanager__diff td, +#mediamanager__diff th { + width: 48%; + margin: 0 5px 10px 0; + padding: 0; + vertical-align: top; + text-align: left; + border-color: #fff; +} +[dir=rtl] #mediamanager__diff td, +[dir=rtl] #mediamanager__diff th { + margin: 0 0 10px 5px; + text-align: right; +} + +#mediamanager__diff th { + font-weight: normal; + background-color: #fff; + line-height: 1.2; +} +#mediamanager__diff th a { + font-weight: bold; +} +#mediamanager__diff th span { + font-size: 90%; +} + +#mediamanager__diff dl dd strong{ + background-color: #ff9; + color: #333; + font-weight: normal; +} + +/* image diff views */ + +#mediamanager__page .file form.diffView { + margin-bottom: 10px; + display: block; +} + +#mediamanager__diff div.slider { + margin: 10px; + width: 95%; +} + +#mediamanager__diff .imageDiff { + position: relative; +} +#mediamanager__diff .imageDiff .image2 { + position: absolute; + top: 0; + left: 0; +} + +#mediamanager__diff .imageDiff.opacity .image2 { + opacity: 0.5; +} + +#mediamanager__diff .imageDiff.portions .image2 { + border-right: 1px solid red; + overflow: hidden; +} + +#mediamanager__diff .imageDiff.portions img { + float: left; +} + +#mediamanager__diff .imageDiff img { + width: 100%; + max-width: none; +} + +/** + * This file provides styles for the media manager popup + * (mediamanager.php). + */ + +/*____________ structure ____________*/ + +html.popup { + overflow: auto; +} + +#media__manager { + height: 100%; + overflow: hidden; +} + +#mediamgr__aside { + width: 30%; + height: 100%; + overflow: auto; + position: absolute; + left: 0; + border-right: 1px solid #ccc; +} +[dir=rtl] #mediamgr__aside { + left: auto; + right: 0; + border-right-width: 0; + border-left: 1px solid #ccc; +} +#mediamgr__aside .pad { + padding: .5em; +} + +#mediamgr__content { + width: 69.7%; + height: 100%; + overflow: auto; + position: absolute; + right: 0; +} +[dir=rtl] #mediamgr__content { + right: auto; + left: 0; +} +#mediamgr__content .pad { + padding: .5em; +} + +#media__manager h1, +#media__manager h2 { + font-size: 1.5em; + margin-bottom: .5em; + padding-bottom: .2em; + border-bottom: 1px solid #ccc; +} + +/* left side +********************************************************************/ + +/*____________ options ____________*/ + +#media__opts { + margin-bottom: .5em; +} + +#media__opts input { + margin-right: .3em; +} +[dir=rtl] #media__opts input { + margin-right: 0; + margin-left: .3em; +} +#media__opts label { +} + +/*____________ tree ____________*/ + +#media__tree ul { + padding-left: .2em; +} +[dir=rtl] #media__tree ul { + padding-left: 0; + padding-right: .2em; +} +#media__tree ul li { + clear: left; + list-style-type: none; + list-style-image: none; + margin-left: 0; +} +[dir=rtl] #media__tree ul li { + clear: right; + margin-right: 0; +} +#media__tree ul li img { + float: left; + padding: .5em .3em 0 0; +} +[dir=rtl] #media__tree ul li img { + float: right; + padding: .5em 0 0 .3em; +} +#media__tree ul li div.li { + display: inline; +} +#media__tree ul li li { + margin-left: 1.5em; +} +[dir=rtl] #media__tree ul li li { + margin-left: 0; + margin-right: 1.5em; +} + +/* right side +********************************************************************/ + +/*____________ upload form ____________*/ + +/* upload info */ +#media__content div.upload { + font-size: .9em; + margin-bottom: .5em; +} + +#mediamanager__uploader { + margin-bottom: 1em; +} +#mediamanager__uploader p { + margin-bottom: .5em; +} + +/*____________ file list ____________*/ + +#media__content img.load { + margin: 1em auto; +} + +#media__content .odd, +#media__content .even { + padding: .5em; +} +#media__content .odd { + background-color: #eee; +} +#media__content .even { +} +/* highlight newly uploaded or edited file */ +#media__content #scroll__here { + border: 1px dashed #ccc; +} + +/* link which inserts media file */ +#media__content a.mediafile { + margin-right: 1.5em; + font-weight: bold; + cursor: pointer; +} +[dir=rtl] #media__content a.mediafile { + margin-right: 0; + margin-left: 1.5em; +} +#media__content span.info { +} +#media__content img.btn { + vertical-align: text-bottom; +} + +/* info how to insert media, if JS disabled */ +#media__content div.example { + color: #666; + margin-left: 1em; +} + +#media__content div.detail { + padding: .2em 0; +} +#media__content div.detail div.thumb { + float: left; + margin: 0 .5em 0 18px; +} +[dir=rtl] #media__content div.detail div.thumb { + float: right; + margin: 0 18px 0 .5em; +} +#media__content div.detail div.thumb a { + display: block; + cursor: pointer; +} +#media__content div.detail p { + margin-bottom: 0; +} + + +/*____________ media search ____________*/ + +#dw__mediasearch { +} +#dw__mediasearch p { +} +#dw__mediasearch label { +} +#dw__mediasearch label span { +} +#dw__mediasearch input.edit { +} +#dw__mediasearch button { +} + + +/** + * This file provides the styles for general tabs. + */ + +.dokuwiki .tabs > ul, +.dokuwiki ul.tabs { + padding: 0; + margin: 0; + overflow: hidden; + position: relative; +} +/* border underneath */ +.dokuwiki .tabs > ul:after, +.dokuwiki ul.tabs:after { + position: absolute; + content: ""; + width: 100%; + bottom: 0; + left: 0; + border-bottom: 1px solid @ini_border; +} + +.dokuwiki .tabs > ul li, +.dokuwiki ul.tabs li { + float: left; + padding: 0; + margin: 0; + list-style: none; +} +[dir=rtl] .dokuwiki .tabs > ul li, +[dir=rtl] .dokuwiki ul.tabs li { + float: right; +} + +.dokuwiki .tabs > ul li a, +.dokuwiki ul.tabs li strong, +.dokuwiki ul.tabs li a { + display: inline-block; + padding: .3em .8em; + margin: 0 0 0 .3em; + background-color: @ini_background_neu; + color: @ini_text; + border: 1px solid @ini_border; + border-radius: .5em .5em 0 0; + position: relative; + z-index: 0; +} +[dir=rtl] .dokuwiki .tabs > ul li a, +[dir=rtl] .dokuwiki ul.tabs li strong, +[dir=rtl] .dokuwiki ul.tabs li a { + margin: 0 .3em 0 0; +} + +.dokuwiki ul.tabs li strong { + font-weight: normal; +} + +.dokuwiki ul.tabs li a:link, +.dokuwiki ul.tabs li a:visited { +} +.dokuwiki .tabs > ul li a:hover, +.dokuwiki .tabs > ul li a:active, +.dokuwiki .tabs > ul li a:focus, +.dokuwiki .tabs > ul li .curid a, +.dokuwiki .tabs > ul .active a, +.dokuwiki ul.tabs li a:hover, +.dokuwiki ul.tabs li a:active, +.dokuwiki ul.tabs li a:focus, +.dokuwiki ul.tabs li.active a, +.dokuwiki ul.tabs li strong { + background-color: @ini_background_alt; + color: @ini_text; + text-decoration: none; + font-weight: normal; +} + +.dokuwiki .tabs > ul li .curid a, +.dokuwiki .tabs > ul li .active a, +.dokuwiki .tabs > ul li .active a, +.dokuwiki ul.tabs li.active a, +.dokuwiki ul.tabs li strong { + z-index: 2; + border-bottom-color: @ini_background_alt; +} diff --git a/templates/55/bulma/css/mobile.css b/templates/55/bulma/css/mobile.css new file mode 100644 index 0000000..e337f31 --- /dev/null +++ b/templates/55/bulma/css/mobile.css @@ -0,0 +1,85 @@ +/** + * This file provides style changes for small screens. + * + * @author Anika Henke + */ + +@media only screen and (max-width: 42em) { + +#dokuwiki__aside { + width: 100%; + float: none; + margin-bottom: 1.4em; +} +#dokuwiki__aside > .pad { + margin: 0; +} + +.hasSidebar #dokuwiki__content { + float: none; + margin-left: 0; + margin-right: 0; +} +.hasSidebar #dokuwiki__content > .pad { + margin-left: 0; +} +[dir=rtl] .hasSidebar #dokuwiki__content > .pad { + margin-right: 0; +} + +#dokuwiki__header .headings { + margin: 2.1em 0 0; +} + +#dokuwiki__header .tools { + margin-bottom: .7em; +} + +#dokuwiki__header .headings, +#dokuwiki__header .tools, +#dokuwiki__header .tools li { + float: none; + text-align: left; +} +[dir=rtl] #dokuwiki__header .tools, +[dir=rtl] #dokuwiki__header .tools li { + float: none; + text-align: right; +} +[dir=rtl] #dokuwiki__header .headings { + float: none; + text-align: right; +} + +#dokuwiki__sitetools ul { + padding: 0; +} +#dokuwiki__sitetools li { + margin: 0 1.5em 0 0; +} +[dir=rtl] #dokuwiki__sitetools li { + margin: 0 0 0 1.5em; +} + +#dokuwiki__header div.breadcrumbs { + margin-bottom: .7em; +} + + +#dokuwiki__header ul.a11y.skip { + left: auto !important; + right: 1em !important; + top: 3.1em !important; + width: auto !important; + height: auto !important; + list-style: none; + padding: 0; + margin: 0; +} +[dir=rtl] #dokuwiki__header ul.a11y.skip { + right: auto !important; + left: 1em !important; +} + + +} /* /@media */ \ No newline at end of file diff --git a/templates/55/bulma/css/print.css b/templates/55/bulma/css/print.css new file mode 100644 index 0000000..5a7be03 --- /dev/null +++ b/templates/55/bulma/css/print.css @@ -0,0 +1,154 @@ +/** + * This file provides the styles for printing. + * + * @todo: improve and finish + */ + +body { + font: normal 87.5%/1.3 Garamond, Baskerville, "Hoefler Text", "Nimbus Roman No9 L", serif; + background-color: #fff; + color: #000; +} + +/* hide certain sections */ +audio, +video, +#dokuwiki__header .tools, +#dokuwiki__aside, +.dokuwiki .breadcrumbs, +.dokuwiki .toc, +#dw__toc, +#dokuwiki__pagetools, +#dokuwiki__footer { + display: none; +} + +h1, +h2, +h3, +h4, +h5, +caption, +legend { + clear: both; +} + +ul { + list-style: disc outside; +} +ol { + list-style: decimal outside; +} +ol ol { + list-style-type: lower-alpha; +} +ol ol ol { + list-style-type: upper-roman; +} +ol ol ol ol { + list-style-type: upper-alpha; +} +ol ol ol ol ol { + list-style-type: lower-roman; +} + +/* undo icons */ +a:link, +a:visited { + text-decoration: none; + border-bottom: 1pt dotted; + color: #333; + background-color: inherit; + background-image: none; + padding: 0; +} + +/* display href after link */ +a.urlextern:after, +a.interwiki:after, +a.mail:after { + content: " [" attr(href) "]"; + font-size: 90%; +} + +/* code blocks */ +pre { + font-family: monospace; +} +dl.code dt, +dl.file dt { + font-weight: bold; +} + +/* images */ +img { + border-width: 0; + vertical-align: middle; +} +img.media { + margin: .2em 0; +} +img.medialeft { + margin: .2em 1.5em .2em 0; +} +img.mediaright { + margin: .2em 0 .2em 1.5em; +} +img.mediacenter { + margin: .2em auto; +} + +mark { + font-weight: bold; +} + +blockquote { + padding: 0 10pt; + margin: 0; + border: solid #ccc; + border-width: 0 0 0 2pt; +} +[dir=rtl] blockquote { + border-width: 0 2pt 0 0; +} + +/* tables */ +table { + border-collapse: collapse; + empty-cells: show; + border-spacing: 0; + border: 1pt solid #ccc; +} +th, +td { + padding: 3pt 5pt; + margin: 0; + vertical-align: top; + border: 1pt solid #666; + text-align: left; +} +[dir=rtl] th, +[dir=rtl] td { + text-align: right; +} +th { + font-weight: bold; +} + + +/*____________ a bit of layout ____________*/ + +#dokuwiki__header { + border-bottom: 2pt solid #ccc; +} +#dokuwiki__header h1 { + font-size: 1.5em; +} +#dokuwiki__header h1 a { + text-decoration: none; +} +.dokuwiki div.footnotes { + clear: both; + border-top: 1pt solid #000; + margin-top: 10pt; +} diff --git a/templates/55/bulma/css/reset.css b/templates/55/bulma/css/reset.css new file mode 100644 index 0000000..e29c0f5 --- /dev/null +++ b/templates/55/bulma/css/reset.css @@ -0,0 +1,48 @@ +/* http://meyerweb.com/eric/tools/css/reset/ + v2.0 | 20110126 + License: none (public domain) +*/ + +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, hgroup, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; +} +/* HTML5 display-role reset for older browsers */ +article, aside, details, figcaption, figure, +footer, header, hgroup, menu, nav, section { + display: block; +} +body { + line-height: 1; +} +ol, ul { + list-style: none; +} +blockquote, q { + quotes: none; +} +blockquote:before, blockquote:after, +q:before, q:after { + content: ''; + content: none; +} +table { + border-collapse: collapse; + border-spacing: 0; +} diff --git a/templates/55/bulma/css/structure.css b/templates/55/bulma/css/structure.css new file mode 100644 index 0000000..f82bb6e --- /dev/null +++ b/templates/55/bulma/css/structure.css @@ -0,0 +1,81 @@ +/** + * This file provides styles for the general layout structure. + * + * @author Anika Henke + */ + +body { + margin: 0 auto; +} +#dokuwiki__site { + margin: 0 auto; + max-width: __site_width__; + padding: 1.4em 1em; +} +#dokuwiki__site > .site { +} + +#dokuwiki__header { +} +#dokuwiki__header > .pad { +} + #dokuwiki__header .headings { + float: left; + } + [dir=rtl] #dokuwiki__header .headings { + float: right; + } + + #dokuwiki__header .tools { + float: right; + text-align: right; + } + [dir=rtl] #dokuwiki__header .tools { + float: left; + text-align: left; + } + +#dokuwiki__site .wrapper { + position: relative; +} + + #dokuwiki__aside { + width: __sidebar_width__; + float: left; + position: relative; + display: block; + } + [dir=rtl] #dokuwiki__aside { + float: right; + } + #dokuwiki__aside > .pad { + margin: 0 1.5em 0 0; + } + [dir=rtl] #dokuwiki__aside > .pad { + margin: 0 0 0 1.5em; + } + + /* make content wider when there's no sidebar */ + .hasSidebar #dokuwiki__content { + float: right; + margin-left: -__sidebar_width__; + width: 100%; + } + [dir=rtl] .hasSidebar #dokuwiki__content { + float: left; + margin-left: 0; + margin-right: -__sidebar_width__; + } + .hasSidebar #dokuwiki__content > .pad { + margin-left: __sidebar_width__; + } + [dir=rtl] .hasSidebar #dokuwiki__content > .pad { + margin-left: 0; + margin-right: __sidebar_width__; + } + +#dokuwiki__footer { + clear: both; +} +#dokuwiki__footer > .pad { +} diff --git a/templates/55/bulma/detail.php b/templates/55/bulma/detail.php new file mode 100644 index 0000000..aa94b9b --- /dev/null +++ b/templates/55/bulma/detail.php @@ -0,0 +1,97 @@ + + * @author Anika Henke + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + */ + +// must be run from within DokuWiki +if (!defined('DOKU_INC')) die(); +@require_once(dirname(__FILE__).'/tpl_functions.php'); /* include hook for template functions */ + +?> + + + + + <?php echo hsc(tpl_img_getTag('IPTC.Headline',$IMG))?> + [<?php echo strip_tags($conf['title'])?>] + + + + + + + + + +
    + + + + + +
    + +

    + + + +
    +

    + + + + +
    + $tag){ + $t = array(); + if (!empty($tag[0])) { + $t = array($tag[0]); + } + if(is_array($tag[3])) { + $t = array_merge($t,$tag[3]); + } + $value = tpl_img_getTag($t); + if ($value) { + echo '
    '.$lang[$tag[1]].':
    '; + if ($tag[2] == 'date') { + echo dformat($value); + } else { + echo hsc($value); + } + echo '
    '; + } + } + ?> +
    + + +
    +
    + + + + +
    + + diff --git a/templates/55/bulma/images/logo.svg b/templates/55/bulma/images/logo.svg new file mode 100644 index 0000000..e99d8b1 --- /dev/null +++ b/templates/55/bulma/images/logo.svg @@ -0,0 +1,140 @@ + + + + DokuWiki Logo + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + DokuWiki Logo + + + Esther Brunner + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/templates/55/bulma/inc/functions.php b/templates/55/bulma/inc/functions.php new file mode 100644 index 0000000..2660ff9 --- /dev/null +++ b/templates/55/bulma/inc/functions.php @@ -0,0 +1,23 @@ +function bulma_breadcrumbs() { + $out=''; + $out .= ''; + print $out; +} diff --git a/templates/55/bulma/lang/de/settings.php b/templates/55/bulma/lang/de/settings.php new file mode 100644 index 0000000..6eb3c99 --- /dev/null +++ b/templates/55/bulma/lang/de/settings.php @@ -0,0 +1,7 @@ + +*/ + +$lang['__existing__'] = '既存ページへのリンク色'; +$lang['__missing__'] = '存在しないページへのリンク色'; +$lang['__site_width__'] = 'サイトの全体幅(任意の長さの単位を使用可能: % px em 他)'; +$lang['__sidebar_width__'] = 'サイドバーがある場合、サイドバーの幅(任意の長さの単位を使用可能: % px em 他)'; diff --git a/templates/55/bulma/lang/ja/settings.php b/templates/55/bulma/lang/ja/settings.php new file mode 100644 index 0000000..89534db --- /dev/null +++ b/templates/55/bulma/lang/ja/settings.php @@ -0,0 +1,8 @@ + +*/ + +$lang['hideTools'] = 'ログインしていない場合、ツールを隠す'; diff --git a/templates/55/bulma/lang/ja/style.txt b/templates/55/bulma/lang/ja/style.txt new file mode 100644 index 0000000..bf5801f --- /dev/null +++ b/templates/55/bulma/lang/ja/style.txt @@ -0,0 +1,4 @@ +ファビコンを変更したい場合、メディア管理を利用して ''wiki'' またはルート名前空間に ''favicon.ico'' をアップロードして下さい。 +自動的にその画像を使用します。 +アクセス制限のある wiki を使用している場合、アクセスコントロール管理で ''wiki''(またはルート)名前空間を全員読取可に設定して下さい。 +そうでないとログインしていないユーザーにファビコンが表示されません。 diff --git a/templates/55/bulma/lang/ko/lang.php b/templates/55/bulma/lang/ko/lang.php new file mode 100644 index 0000000..0929d3b --- /dev/null +++ b/templates/55/bulma/lang/ko/lang.php @@ -0,0 +1,10 @@ + + */ + +$lang['hideTools'] = 'Скрывать инструменты гостям?'; diff --git a/templates/55/bulma/main.php b/templates/55/bulma/main.php new file mode 100644 index 0000000..71187fa --- /dev/null +++ b/templates/55/bulma/main.php @@ -0,0 +1,109 @@ + + * @license GPL 2 (http://www.gnu.org/licenses/gpl.html) + */ + +if (!defined('DOKU_INC')) die(); /* must be run from within DokuWiki */ +@require_once(dirname(__FILE__).'/tpl_functions.php'); /* include hook for template functions */ + +$_toc = tpl_toc(true); +$showToc = !empty($_toc) ? true : false; +$showTools = !tpl_getConf('hideTools') || ( tpl_getConf('hideTools') && !empty($_SERVER['REMOTE_USER']) ); +$showSidebar = page_findnearest($conf['sidebar']) && ($ACT=='show'); +$sidebarElement = tpl_getConf('sidebarIsNav') ? 'nav' : 'aside'; +?> + + + + <?php tpl_pagetitle() ?> [<?php echo strip_tags($conf['title']) ?>] + + + + + + + + + + +
    + + + +
    + +
    + + + + + +
    + + + + + + + +
    + +
    +
    + +
    + + +
    +

    Page tools

    + +
    +
    + +
    +
    + +
    + +
    +
    + + diff --git a/templates/55/bulma/mediamanager.php b/templates/55/bulma/mediamanager.php new file mode 100644 index 0000000..c923952 --- /dev/null +++ b/templates/55/bulma/mediamanager.php @@ -0,0 +1,44 @@ + + * @license MIT (https://opensource.org/license/MIT) + */ + +if (!defined('DOKU_INC')) die(); /* must be run from within DokuWiki */ +@require_once(dirname(__FILE__).'/tpl_functions.php'); /* include hook for template functions */ +?> + + + + + <?php echo hsc($lang['mediaselect'])?> + [<?php echo strip_tags($conf['title'])?>] + + + + + + + + + +
    + + +
    + +
    +
    + + diff --git a/templates/55/bulma/preview.png b/templates/55/bulma/preview.png new file mode 100644 index 0000000..74814ae Binary files /dev/null and b/templates/55/bulma/preview.png differ diff --git a/templates/55/bulma/script.js b/templates/55/bulma/script.js new file mode 100644 index 0000000..0bf33e4 --- /dev/null +++ b/templates/55/bulma/script.js @@ -0,0 +1,63 @@ +// template-related scripts go here... + +// The following code is based off a toggle menu by @Bradcomp +// source: https://gist.github.com/Bradcomp/a9ef2ef322a8e8017443b626208999c1 +/*(function() { + var burger = document.querySelector('.burger'); + var menu = document.querySelector('#'+burger.dataset.target); + burger.addEventListener('click', function() { + burger.classList.toggle('is-active'); + menu.classList.toggle('is-active'); + }); +})();*/ + + +var bulma = { + init: function() { + // TOC changes + //var $dw__toc = jQuery('#dw__toc'); + //$dw__toc.addClass('menu'); + //$dw__toc.find('h3').addClass('menu-label'); + //$dw__toc.find('ul').addClass('menu-list'); + + // Content changes + var $dokuwiki__content = jQuery('#dokuwiki__content'); + //$bulma-content.find('submit, button, reset').addClass('button is-small'); + //$bulma-content.find('table').not('.htCore').addClass('table is-bordered is-striped is-narrow is-hoverable'); + //$bulma-content.find('table thead tr').addClass('has-background-white-ter'); + $dokuwiki__content.find('div.section_highlight_wrapper').addClass('section_highlight_nowrapper').removeClass('section_highlight_wrapper'); + + // ACL changes + //var $acl__user = jQuery('#acl__user'); + //$acl__user.find('select').addClass('input select is-inline is-small').removeClass('edit'); + //$acl__user.find('input').addClass('input is-inline is-small').removeClass('edit'); + + // Config changes + //var $config__manager = jQuery('#config__manager'); + //$config__manager.find('input, select, textarea').removeClass('edit input'); + //$config__manager.find('input') + // .not('[type=submit], [type=reset], [type=button], [type=hidden], [type=image], [type=checkbox], [type=radio]') + // .addClass('input is-small'); + //$config__manager.find('tr.default input, tr.default select, tr.default textarea, .selectiondefault') + // .addClass('is-info').css('background-color','inherit'); + //$config__manager.find('textarea').addClass('input'); + //$config__manager.find('select').addClass('is-small'); + //$config__manager.find('select').closest('.input').addClass('select is-small').removeClass('input'); + //$config__manager.find('div.input').removeClass('input'); + + // Plugin changes + //var $extension__manager = jQuery('#extension__manager'); + //$extension__manager.find('ul.tabs').wrap('
    '); + //$extension__manager.find('ul.tabs').removeClass('tabs'); + //$extension__manager.find('li.active').addClass('is-active').removeClass('active'); + //$extension__manager.find('.panelHeader').addClass('box').removeClass('panelHeader'); + //$extension__manager.find('input').addClass('input is-inline is-small').removeClass('edit'); + + //// User manager + //var $user__manager = jQuery('#user__manager'); + //$user__manager.find('input.edit').addClass('input is-inline is-small').removeClass('edit'); + //$user__manager.find('input.button').addClass('user-search').removeClass('button'); + }, +}; + +jQuery(bulma.init); diff --git a/templates/55/bulma/style.ini b/templates/55/bulma/style.ini new file mode 100644 index 0000000..17005ab --- /dev/null +++ b/templates/55/bulma/style.ini @@ -0,0 +1,101 @@ +; Please see https://www.php.net/manual/en/function.parse-ini-file.php +; for limitations of the ini format used here + +; To extend this file or make changes to it, it is recommended to create +; a local conf/tpl//style.ini file to prevent losing +; any changes after an upgrade. +; Please don't forget to copy the section your changes should be under +; (i.e. [stylesheets] or [replacements]) into that file as well. + +; Define the stylesheets your template uses here. The second value +; defines for which output media the style should be loaded. Currently +; print, screen and all are supported. +; You can reference CSS and LESS files here. Files referenced here will +; be checked for updates when considering a cache rebuild while files +; included through LESS' @import statements are not + +[stylesheets] + +;css/basic.css = screen + +; load styles from the default 'dokuwiki' template +; some of these have been renamed from *.css to *.less +; but .css still loads the same file and is backwards compatible +;../dokuwiki/css/_imgdetail.css = screen +;../dokuwiki/css/_media_popup.css = screen +;../dokuwiki/css/_media_fullscreen.css = screen +;../dokuwiki/css/_fileuploader.css = screen +;../dokuwiki/css/_tabs.css = screen +;../dokuwiki/css/_links.css = screen +;../dokuwiki/css/_toc.css = screen +;../dokuwiki/css/_footnotes.css = screen +;../dokuwiki/css/_search.css = screen +;../dokuwiki/css/_recent.css = screen +;../dokuwiki/css/_diff.css = screen +;../dokuwiki/css/_edit.css = screen +;../dokuwiki/css/_modal.css = screen +;../dokuwiki/css/_forms.css = screen +;../dokuwiki/css/_admin.css = screen + +; load the rest of the styles +;css/structure.css = screen +;css/design.css = screen +;css/content.css = screen +;css/includes.css = screen + +;css/mobile.css = all +;css/print.css = print + +; reset css +css/reset.css = all + +; load media +css/media.css = all + +; load bulma +css/bulma.min.css = all + +; my custom +css/custom.css = all + +; This section is used to configure some placeholder values used in +; the stylesheets. Changing this file is the simplest method to +; give your wiki a new look. +; Placeholders defined here will also be made available as LESS variables +; (with surrounding underscores removed, and the prefix @ini_ added) + +[replacements] + +;-------------------------------------------------------------------------- +;------ guaranteed dokuwiki color placeholders that every plugin can use + +; main text and background colors +;__text__ = "#333" ; @ini_text +;__background__ = "#fff" ; @ini_background +;; alternative text and background colors +;__text_alt__ = "#999" ; @ini_text_alt +;__background_alt__ = "#eee" ; @ini_background_alt +;; neutral text and background colors +;__text_neu__ = "#666" ; @ini_text_neu +;__background_neu__ = "#ddd" ; @ini_background_neu +;; border color +;__border__ = "#ccc" ; @ini_border +; +;; highlighted text (e.g. search snippets) +;__highlight__ = "#ff9" ; @ini_highlight +; +;; link color +;__link__ = "#00c" ; @ini_link +; +;;-------------------------------------------------------------------------- +; +;; these are used for other links +;__existing__ = "#090" ; @ini_existing +;__missing__ = "#f30" ; @ini_missing +; +;; widths +;__site_width__ = "64em" ; @ini_site_width +;__sidebar_width__ = "16em" ; @ini_sidebar_width +; +;; color of the web app (used by the core, not by the template) +;__theme_color__ = "#eee" ; @ini_theme_color diff --git a/templates/55/bulma/template.info.txt b/templates/55/bulma/template.info.txt new file mode 100644 index 0000000..2738aad --- /dev/null +++ b/templates/55/bulma/template.info.txt @@ -0,0 +1,7 @@ +base bulma +author Gilberto Miralla-Flores +email miralgj ~at~ gmail.com +date 2024-09-20 +name Bulma +desc Template based on Bulma CSS framework +url https://github.com/KSU-Linux/dokuwiki-template-bulma diff --git a/templates/55/bulma/tpl_functions.php b/templates/55/bulma/tpl_functions.php new file mode 100644 index 0000000..816cf80 --- /dev/null +++ b/templates/55/bulma/tpl_functions.php @@ -0,0 +1,333 @@ +'; + $out .= '
      '; + $out .= '
    • Trace
    • '; + $crumbs = breadcrumbs(); //setup crumb trace + + //render crumbs, highlight the last one + $last = count($crumbs); + $i = 0; + foreach($crumbs as $id => $name) { + $i++; + if($i == $last) { + $out .= '
    • '; + } else { + $out .= '
    • '; + } + $out .= tpl_link(wl($id), hsc($name), 'aria-current="page" title="'.$id.'"', true); + $out .= '
    • '; + } + $out .= '
    '; + $out .= ''; + echo $out; +} + +/** + * Modified version of tpl_content() that adds Bulma classes to basic + * elements + */ +function _tpl_content($prependTOC = false) { + global $ACT; + global $INFO; + $INFO['prependTOC'] = $prependTOC; + + ob_start(); + Event::createAndTrigger('TPL_ACT_RENDER', $ACT, 'tpl_content_core'); + $html_output = ob_get_clean(); + $libxml_errors = libxml_use_internal_errors(true); + $dom = new DOMDocument(); + //$dom->loadHTML($html_output); + $dom->loadHTML(mb_convert_encoding($html_output, 'HTML-ENTITIES', 'UTF-8')); + libxml_clear_errors(); + libxml_use_internal_errors($libxml_errors); + // add button class to buttons, reset, and submit + foreach ($dom->getElementsByTagName('button') as $ele) { + $ele->setAttribute('class', 'button is-small'); + } + foreach ($dom->getElementsByTagName('reset') as $ele) { + $ele->setAttribute('class', 'button is-small'); + } + foreach ($dom->getElementsByTagName('submit') as $ele) { + $ele->setAttribute('class', 'button is-small'); + } + // add select class to selects + foreach ($dom->getElementsByTagName('select') as $ele) { + // skip a select on the acl page because it looks weird + $name = $ele->getAttribute('name'); + if ($name == 'acl_t') continue; + $ele->parentNode->setAttribute('class', 'select is-small'); + } + // add checkbox, radio, and input classes + foreach ($dom->getElementsByTagName('input') as $ele) { + $type = $ele->getAttribute('type'); + switch ($type) { + case 'checkbox': + $label = $ele->parentNode; + $label->setAttribute('class', $label->getAttribute('class') . ' checkbox'); + break; + case 'radio': + $label = $ele->parentNode; + $label->setAttribute('class', $label->getAttribute('class') . ' radio'); + break; + default: + $ele->setAttribute('class', $ele->getAttribute('class') . ' input is-small'); + break; + } + //if ($type != 'checkbox') { + // $ele->setAttribute('class', $ele->getAttribute('class') . ' input is-small'); + //} else { + // $label = $ele->parentNode; + // $label->setAttribute('class', $label->getAttribute('class') . ' checkbox'); + //} + } + // add proper classes to odered lists + foreach ($dom->getElementsByTagName('ol') as $ele) { + foreach ($ele->childNodes as $i) { + // skip non DOMNode elements + if ($i->nodeType != 1) continue; + // skip non li elements + if ($i->nodeName != 'li') continue; + // apply proper class to ordered list based on what level# the + // first li element is + switch (substr($i->getAttribute('class'), 5, 1)) { + case '1': + break; + case '2': + $ele->setAttribute('class', 'is-lower-alpha'); + break; + case '3': + $ele->setAttribute('class', 'is-upper-roman'); + break; + case '4': + $ele->setAttribute('class', 'is-upper-alpha'); + break; + default: + $ele->setAttribute('class', 'is-lower-roman'); + break; + } + // break because we only need to evaluate the very first one + // to get the level + break; + } + } + // add table class to tables + foreach ($dom->getElementsByTagName('table') as $ele) { + $ele->setAttribute('class', 'table inline is-bordered is-striped is-narrow is-hoverable'); + // get parent div and add table-container class + $div = $ele->parentNode; + $classes = $div->getAttribute('class'); + $div->setAttribute('class', $classes . ' table-container'); + } + // fix centered table data + foreach ($dom->getElementsByTagName('td') as $ele) { + $classes = $ele->getAttribute('class'); + $classes = str_replace('centeralign', 'has-text-centered', $classes); + $classes = str_replace('leftalign', 'has-text-left', $classes); + $classes = str_replace('rightalign', 'has-text-right', $classes); + $ele->setAttribute('class', $classes); + } + // fix centered table data and make table headers nicer + foreach ($dom->getElementsByTagName('th') as $ele) { + $classes = $ele->getAttribute('class'); + $classes = $classes . ' has-background-white-ter has-text-weight-bold'; + $classes = str_replace('centeralign', 'has-text-centered', $classes); + $classes = str_replace('leftalign', 'has-text-left', $classes); + $classes = str_replace('rightalign', 'has-text-right', $classes); + $ele->setAttribute('class', $classes); + } + foreach ($dom->getElementsByTagName('thead') as $ele) { + $ele->setAttribute('class', 'has-background-white-ter has-text-weight-bold'); + } + // add textarea class to textareas + foreach ($dom->getElementsByTagName('textarea') as $ele) { + $ele->setAttribute('class', $ele->getAttribute('class') .' textarea'); + } + $html_output = $dom->saveHTML($dom->documentElement); + Event::createAndTrigger('TPL_CONTENT_DISPLAY', $html_output, 'ptln'); + + return !empty($html_output); +} + +/** + * Modified version of tpl_page_tools() that adds Bulma classes and custom formatting + */ +function _tpl_page_tools() { + $items = (new \dokuwiki\Menu\PageMenu())->getItems(); + $out = ''; + $out .= ''; + echo $out; +} + +/** + * Custom search form that excludes the button. + */ +function _tpl_searchform($ajax = true, $autocomplete = true) { + global $lang; + global $ACT; + global $QUERY; + global $ID; + + // don't print the search form if search action has been disabled + if(!actionOK('search')) return false; + + $searchForm = new dokuwiki\Form\Form([ + 'action' => wl(), + 'method' => 'get', + 'role' => 'search', + 'class' => 'field has-addons is-horizontal pb-2 search', + 'id' => 'dokuwiki__search', + ], true); + $searchForm->setHiddenField('do', 'search'); + $searchForm->setHiddenField('id', $ID); + $searchForm->addTextInput('q') + ->addClass('edit input is-small') + ->attrs([ + 'title' => '[F]', + 'accesskey' => 'f', + 'placeholder' => $lang['btn_search'], + 'autocomplete' => $autocomplete ? 'on' : 'off', + ]) + ->id('qsearch__in') + ->val($ACT === 'search' ? $QUERY : '') + ->useInput(false) + ; + if ($ajax) { + $searchForm->addTagOpen('div')->id('qsearch__out')->addClass('ajax_qsearch JSpopup'); + $searchForm->addTagClose('div'); + } + Event::createAndTrigger('FORM_QUICKSEARCH_OUTPUT', $searchForm); + + echo $searchForm->toHTML(); + + return true; +} + +/** + * Modified version of tpl_sidebar() that adds Bulma classes and custom formatting + */ +function _tpl_sidebar() { + $sb = strval(tpl_include_page($conf['sidebar'], false, true)); + $dom = new DOMDocument(); + //$dom->loadHTML($sb); + $dom->loadHTML(mb_convert_encoding($sb, 'HTML-ENTITIES', 'UTF-8')); + $uls = $dom->getElementsByTagName('ul'); + foreach ($uls as $ul) { + $ul->setAttribute('class', 'menu-list'); + } + echo $dom->saveHTML($dom->documentElement); +} + +/** + * Modified version of tpl_toc() that adds Bulma classes and custom formatting + */ +function _tpl_toc() { + $t = strval(tpl_toc(true)); + $dom = new DOMDocument(); + //$dom->loadHTML($t); + $dom->loadHTML(mb_convert_encoding($t, 'HTML-ENTITIES', 'UTF-8')); + $dw__toc = $dom->getElementById('dw__toc'); + $dw__toc->setAttribute('id', 'bulma-toc'); + $dw__toc->setAttribute('class', 'is-size-7'); + $h3s = $dom->getElementsByTagName('h3'); + foreach ($h3s as $h3) { + $h3->setAttribute('class', 'has-text-grey-light'); + $h3->nodeValue = 'On this page'; + } + $lis = $dom->getElementsByTagName('li'); + foreach ($lis as $li) { + if ($li->getAttribute('class') == 'level2') { + $li->setAttribute('class', 'level2 pl-2'); + } + if ($li->getAttribute('class') == 'level3') { + $li->setAttribute('class', 'level2 pl-4'); + } + } + $as = $dom->getElementsByTagName('a'); + foreach ($as as $a) { + $a->setAttribute('class', 'button is-light is-small'); + } + echo $dom->saveHTML($dom->documentElement); +} + +/** + * Modified version of tpl_tools_menu() that adds Bulma classes and custom formatting + */ +function _tpl_tools_menu() { + $out = ''; + if (!empty($_SERVER['REMOTE_USER'])) { + $out .= ''; + } + echo $out; +} + +/** + * Modified version of tpl_user_menu() that adds Bulma classes and custom formatting + */ +function _tpl_user_menu() { + $out = ''; + if (!empty($_SERVER['REMOTE_USER'])) { + $out .= ''; + } + else { + $out .= (new \dokuwiki\Menu\Item\Login())->asHtmlLink('navbar-item ', false); + } + echo $out; +}