diff --git a/.env b/.env new file mode 100644 --- /dev/null +++ b/.env @@ -0,0 +1,7 @@ + +###> symfony/framework-bundle ### +APP_ENV=dev +APP_SECRET=87b885b76ea9992c5ef17c9eea8a8c65 +#TRUSTED_PROXIES=127.0.0.1,127.0.0.2 +#TRUSTED_HOSTS='^localhost|example\.com$' +###< symfony/framework-bundle ### diff --git a/.gitignore b/.gitignore --- a/.gitignore +++ b/.gitignore @@ -1 +1,29 @@ *.pyc +*.lock +vendor +bin +var +logs +public/stable5 +public/trunk5 +src/Data/ +config/services.php + +###> symfony/webpack-encore-bundle ### +/node_modules/ +/public/build/ +npm-debug.log +yarn-error.log +###< symfony/webpack-encore-bundle ### +###> symfony/framework-bundle ### +/.env.local +/.env.local.php +/.env.*.local +/public/bundles/ +/var/ +/vendor/ +###< symfony/framework-bundle ### + +###> symfony/web-server-bundle ### +/.web-server-pid +###< symfony/web-server-bundle ### diff --git a/404.php b/404.php deleted file mode 100644 --- a/404.php +++ /dev/null @@ -1,9 +0,0 @@ - diff --git a/assets/css/app.scss b/assets/css/app.scss new file mode 100644 --- /dev/null +++ b/assets/css/app.scss @@ -0,0 +1 @@ +@import './base'; diff --git a/assets/css/base.scss b/assets/css/base.scss new file mode 100644 --- /dev/null +++ b/assets/css/base.scss @@ -0,0 +1,601 @@ +@import "~bootstrap/scss/bootstrap"; +@import '~jquery-ui/themes/base/all.css'; + +body { + font-family:'Noto Sans', sans-serif +} +p { + line-height:2em +} +h1,h2,h3 { + line-height:1.5em +} +ul>li { + line-height:2em +} +.header { + position:sticky; + top:0; + display:block; + z-index:2; + background-color:rgba(255,255,255,0.95) +} +.header>* { + margin:auto; + max-width:1140px +} +.header::after { + content:""; + clear:both; + display:block; + background-size:100% 5px; + position:absolute; + height:5px; + width:100%; + left:0; + bottom:0; + background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAAAFCAYAAACzSkmrAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAACkSURBVDiN7dExDsIwDEbh9we1soXE6eCEbJyInQNwgKgxQ9WWFrIShr7ZkewvYm/V5fbwLj8NoKTec0lGzp66ZAzJS8jQ4EKG5KLY+FIeYBAOMoRHyFC4YJwpcqVixGYWnHHG1ebs700YHxBAHWM6DqoYHxBvswvGEegbnL1q/pAqxgQB1DE2EEAdY4aABeMEHH57+n+m8/UerZfYW0qtF9hb9wI2bU03vw4M8QAAAABJRU5ErkJggg=="); + z-index:-1 +} +#kHeaderNav { + padding:0; + position:relative +} +#kHeaderNav button { + outline:0 +} +#kHeaderNav .navbar-toggler { + position:relative +} +#kHeaderNav .navbar-toggler:before { + position:absolute; + top:0; + left:50%; + width:42px; + margin-left:-21px; + content:"="; + color:#4d4d4d; + font-family:"glyph"; + font-size:22px; + font-weight:normal; + text-indent:0px; + text-align:center; + line-height:50px; + display:inline-block; + text-decoration:none !important +} +#kHeaderNav a.nav-link,#kHeaderNav a.dropdown-item { + color:#334545; + height:50px; + line-height:50px; + padding:0 20px +} +#kHeaderNav a:hover { + color:#3daefd +} +#kHeaderNav a.nav-link.active { + color:#FFF +} +#kHeaderNav a.nav-link.active:hover { + color:#FFF +} +#kHeaderNav .dropdown-menu { + padding:0 +} +#kHeaderNav a.active:hover,#kHeaderNav .dropdown-menu.show a.nav-link { + color:#334545 +} +#kHeaderNav a:active,#kHeaderNav .active,#kHeaderNav a.dropdown-item:active,#kHeaderNav .navbar-brand-active,#kHeaderNav .dropdown-toggle.show a.nav-link { + background:#54a3d8; + color:#FFF +} +#kHeaderNav .dropdown-toggle.show { + position:relative +} +#kHeaderNav .dropdown-toggle::after { + content:"" !important; + display:none +} +#kHeaderNav .dropdown-toggle .nav-link::after { + display:inline-block; + width:0; + height:0; + margin-left:.5em; + vertical-align:.255em; + content:""; + border-top:.3em solid; + border-right:.3em solid transparent; + border-bottom:0; + border-left:.3em solid transparent +} +#kHeaderNav .dropdown-menu { + border-radius:0px; + border:1px solid #54a3d8; + border-top:none; + margin:0; + padding:0; + background-color:initial +} +@media (min-width: 575px) { + #kHeaderNav .dropdown-menu { + background-color:#fff + } +} +#kHeaderNav .dropdown-menu a { + display:block; + text-align:center; + text-decoration:none; + background-size:100%; + background-position:center; + background-repeat:no-repeat; + transition:background-size 0.4s; + position:relative +} +#kHeaderNav .dropdown-menu a::before { + content:''; + width:100%; + height:100%; + top:0; + left:0; + position:absolute; + background-repeat:no-repeat; + background-position:center; + background-size:101%; + z-index:-1; + transition:background-size 0.3s +} +#kHeaderNav .navbar-toggler { + order:2 +} +#KontactGlobalLogo { + margin:0; + margin-top:-3px; + text-align:center; + line-height:50px; + height:50px; + padding:0 10px; + order:1 +} +#KontactGlobalLogo>img { + width:70%; + margin-top:-3px +} +#kMainNavbar { + order:4 +} +@media (min-width: 768px) { + #kMainNavbar { + order:3 + } +} +#KMadeByKDE { + order:3; + padding-right:15px +} +#KMadeByKDE span { + display:none +} +@media (min-width: 768px) { + #KMadeByKDE span { + display:inline + } +} +@media (min-width: 768px) { + #KMadeByKDE { + order:4 + } +} +main.main, .contentBody { + margin:auto; + margin-bottom:50px; + width:100%; + max-width:1140px; + padding:0 30px +} +@media (min-width: 1140px) { + main.main, .contentBody { + padding-left:0; + padding-right:0 + } +} +main .block, .contentBody .block { + padding:30px 20px +} +main.navfix, .contentBody.navfix { + margin-top:50px +} +#kWelcome { + font-size:18px; + border-radius:2px; + border:solid 1px #abdaf9; + background-color:#e1f2ff; + color:#375a7d; + padding:10px 20px; + margin-top:60px; + margin-bottom:60px; + text-align:center +} +#kWelcome p { + padding:0; + margin:0 +} +#kFooter { + background-color:#eff1f1; + color:#7f8c8d; + position:relative; + padding-top:12px; + font-size:12px; + width:100%; + clear:both +} +#kFooter a { + text-decoration:none; + color:#2980b9 +} +#kFooter section { + width:100%; + max-width:1140px; + margin:auto; + padding:0 20px +} +#kFooter #KSiteDonateForm { + background-color:#abf9c7; + border:solid 1px #7ceca4; + border-radius:2px; + margin-top:10px; + padding-top:10px; + padding-bottom:10px +} +#kFooter #KSiteDonateForm h3 { + font-size:14px; + font-weight:bold; + color:#377d50; + padding:0 0 10px; + margin:0 +} +#kFooter #KSiteDonateForm h3 a { + font-width:normal; + margin-left:20px; + color:#2980b9 +} +#kFooter #KSiteDonateForm h3 a::before { + content:"( "; + color:#377d50 +} +#kFooter #KSiteDonateForm h3 a::after { + content:" )"; + color:#377d50 +} +#kFooter #KSiteDonateForm #otherWaysDonate { + display:inline-block; + font-size:14px; + margin-top:10px +} +#kFooter #KGlobalContributorLinks { + padding:0 20px; + box-sizing:border-box; + max-width:100%; + background-color:rgba(0,0,0,0.05); + position:relative; + margin:auto +} +#kFooter #KGlobalContributorLinks nav { + max-width:1100px; + padding:0; + line-height:50px; + margin:auto; + font-size:14px; + width:100%; + position:relative +} +#kFooter #KGlobalLegalInfo { + padding:20px +} +#kFooter #KGlobalLegalInfo small { + font-size:12px +} +#kFooter #KGlobalLegalInfo figure { + display:inline-block; + padding:0; + margin:0 +} +#kFooter #KGlobalLegalInfo small+small::before { + content:" | "; + color:#bdc3c7; + margin:0 10px +} +#kLinks { + padding:30px 20px 30px 0 +} +#kLinks nav { + width:20%; + display:inline-block; + box-sizing:border-box; + vertical-align:top; + font-size:12px; + padding:10px 0 10px 20px +} +#kLinks nav h3 { + font-size:14px; + color:#95a5a6; + margin:0 0 10px 0; + font-weight:bold +} +#kLinks a { + display:block; + line-height:150% +} +#kLinks a::after { + color:#7f8c8d; + position:relative; + content:">"; + font-family:"glyph"; + vertical-align:baseline; + top:.1em; + padding-left:10px +} +.konqi { + float:right; + width:250px; + margin-top:-50px; + margin-left:40px +} +.icon { + margin-left:20px +} +.icon::before { + content:""; + position:absolute; + display:block; + width:32px; + height:50px; + left:5px; + background-repeat:no-repeat; + background-size:24px; + background-position:center +} +.preview { + cursor:pointer +} +#kImagePreview { + text-align:center +} +#kImagePreview img { + margin:auto; + cursor:pointer; + max-width:100% +} +#kImagePreviewContainer { + width:100%; + height:100%; + display:flex; + flex-direction:column; + align-items:center; + pointer-events:none +} +.kSocialLinks { + line-height:50px +} +.kSocialLinks a:not(.no-glyph) { + display:inline-block; + color:#fafafa; + background:#27AE60; + position:relative; + text-indent:-9999px; + width:24px; + line-height:30px; + padding:0px 10px; + border-radius:3px; + transition:all .2s +} +.kSocialLinks a:after { + content:"@"; + font-family:'glyph'; + font-size:24px; + text-indent:0px; + color:#fafafa; + position:absolute; + top:0px; + left:0px; + right:0px; + text-align:center +} +.kSocialLinks a.shareFacebook { + background-color:#2980b9 +} +.kSocialLinks a.shareGoogle { + background-color:#d35400 +} +.kSocialLinks a.shareTwitter { + background-color:#3daefd +} +.kSocialLinks a.shareForum { + background-color:#0068c6 +} +.kSocialLinks a.shareTelegram { + background-color:#2ca5e0 +} +.kSocialLinks a.shareFacebook:hover { + background-color:#3498db +} +.kSocialLinks a.shareGoogle:hover { + background-color:#f67400 +} +.kSocialLinks a.shareTwitter:hover { + background-color:#70c3fe +} +.kSocialLinks a.shareForum:hover { + background-color:#1078d6 +} +.kSocialLinks a.shareTelegram:hover { + background-color:#2ca5e0 +} +.kSocialLinks a.shareFacebook:after { + content:"F" +} +.kSocialLinks a.shareGoogle:after { + content:"G" +} +.kSocialLinks a.shareTwitter:after { + content:"T" +} +.kSocialLinks a.shareForum:after { + content:"K" +} +.kSocialLinks a.shareMastodon:after { + content:"M" +} + +a#KDEGlobalLogo.navbar-brand { + padding-left: 5px; + padding-right: 5px; + img { + padding-left: 5px; + paddinf-right: 5px; + } + &:hover { + color: white; + } +} + +@include media-breakpoint-up(md) { + #languages-dropdown { + width: 350px; + } +} + +@include media-breakpoint-down(lg) { + .nav-item.form-inline { + margin-bottom: 5px; + padding-left: 20px; + } +} +@font-face { + font-family:'glyph'; + src:url("glyph/glyph.eot?d1eayo"); + src:url("glyph/glyph.eot?d1eayo#iefix") format("embedded-opentype"),url("glyph/glyph.ttf?d1eayo") format("truetype"),url("glyph/glyph.woff?d1eayo") format("woff"),url("glyph/glyph.svg?d1eayo#glyph") format("svg"); + font-weight:normal; + font-style:normal +} +[class^="glyph-"],[class*=" glyph-"] { + font-family:'glyph'; + speak:none; + font-style:normal; + font-weight:normal; + font-variant:normal; + text-transform:none; + line-height:1; + -webkit-font-smoothing:antialiased; + -moz-osx-font-smoothing:grayscale +} +.glyph-favorite:before { + content:"\e900" +} +.glyph-link:before { + content:"\6c" +} +.glyph-share-diaspora:before { + content:"\2a" +} +.glyph-share-facebook:before { + content:"\46" +} +.glyph-share-gplus:before { + content:"\47" +} +.glyph-share-reddit:before { + content:"\52" +} +.glyph-share-twitter:before { + content:"\54" +} +.glyph-share-ycombinator:before { + content:"\59" +} +.glyph-view-catalog:before { + content:"\e908" +} +.glyph-view-categories:before { + content:"\e909" +} +.glyph-view-fullscreen:before { + content:"\e90a" +} +.glyph-view-list-details:before { + content:"\e90b" +} +.glyph-view-list-icons:before { + content:"\e90c" +} +.glyph-view-list-text:before { + content:"\e90d" +} +.glyph-view-list-tree:before { + content:"\e90e" +} +.glyph-view-media-playlist:before { + content:"\e90f" +} +.glyph-window-new:before { + content:"\57" +} +.glyph-video:before { + content:"\56" +} +.glyph-cancel:before { + content:"\5c" +} +.glyph-check:before { + content:"\63" +} +.glyph-close:before { + content:"\58" +} +.glyph-logo-kde:before { + content:"\4b" +} +.glyph-logo-plasma:before { + content:"\50" +} +.glyph-logo-plasmamobile:before { + content:"\4d" +} +.glyph-clear:before { + content:"\78" +} +.glyph-go-down:before { + content:"\76" +} +.glyph-go-home:before { + content:"\48" +} +.glyph-go-next:before { + content:"\3e" +} +.glyph-go-previous:before { + content:"\3c" +} +.glyph-go-up:before { + content:"\5e" +} +.glyph-hamburger:before { + content:"\3d" +} +.glyph-info:before { + content:"\49" +} +.glyph-new-window:before { + content:"\77" +} +.glyph-search:before { + content:"\51" +} +.glyph-settings:before { + content:"\53" +} +.glyph-share:before { + content:"\73" +} +.glyph-share-telegram:before { + content:"\2197" +} \ No newline at end of file diff --git a/assets/css/doc.scss b/assets/css/doc.scss new file mode 100644 --- /dev/null +++ b/assets/css/doc.scss @@ -0,0 +1,451 @@ +@import "base"; + +/* Actual documentation styling */ +div.table table { + text-align: left; /* Disable justification */ + border: 1px solid black; + border-collapse: collapse; +} + +/* Give alternating row colors */ +div.table tr:nth-child(odd) { + background-color: #eee; +} + +div.table tr:nth-child(even) { + background-color: white; +} + +div.table th { + background-color: white; + font-weight: normal; + text-align: center; + vertical-align: middle; + border-bottom: 1px solid black; +} + +div.table td { + text-align: left; + padding: 4px; +} + + +// alert from bootstrap 4 + +$theme-colors: (note: #27ae60, tip: #3daee9, important: #f67400, warning: #da4453); + +@each $color, $value in $theme-colors { + div.#{$color} { + position: relative; + padding: $alert-padding-y $alert-padding-x; + margin-bottom: $alert-margin-bottom; + border: $alert-border-width solid transparent; + @include border-radius($alert-border-radius); + @include alert-variant(theme-color-level($color, $alert-bg-level), theme-color-level($color, $alert-border-level), theme-color-level($color, $alert-color-level)); + // Headings for larger alerts + .title { + // Specified to prevent conflicts of changing $headings-color + color: inherit; + } + a { + font-weight: $alert-link-font-weight; + } + } +} + +/* Make the content wrapping div have a nice margin. */ +body div.chapter, body div.sect1, body div.book, body div.article { + margin-left: 2em; + margin-right: 2em; +} + +div.sect2 { + width: 100%; +} + +.programlisting { + + /* This will work someday */ + border-radius: 7px; + + /* To support border radius on our OSS browser friends when + * viewing online */ + -webkit-border-radius: 7px; + -moz-border-radius: 7px; +} + +.programlisting { + border: 1px solid black; + background: white; +} + + +.guimenu, .guimenuitem, .guisubmenu, +.guilabel, .interface, .guibutton { + background-color: rgb(220, 220, 220); + color: black; + border: 1px solid rgb(190, 190, 190); + border-radius: 3px; +} + +.shortcut { + background-color: #DDF; + border: 1px dotted #BBF; + font-weight: normal; + border-radius: 2px; +} + +.keycap, .keysym { + background-color: #DFDFFF; + font-weight: bold; + border-radius: 2px; +} + +.informalexample { + margin: 0; + border: 0; + border-left: 1px dotted black; + padding: 0 0 0 4px; +} + +div.tip { + margin-bottom: 12pt; +} + +div.titlepage { + margin-left: 0; +} + +h3.title { + margin-left: 0; +} + +.screenshot, .informalfigure { + border: 1px solid gray; + background-color: rgb(240, 240, 240); +} + +/* We no longer render
s around s, but this hides them in case + * old generated HTML is displayed with the new style. + */ +.mediaobject hr, .mediaobjectco hr { + display: none; +} + +/* Used for the text and footer area at the bottom. */ +#footer { + width: 100%; +} + +/* + KDE-wide default CSS for HTML documentation (all media types). + Copyright (C) 2000 Frederik Fouvry + + 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 2 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, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + + Send comments, suggestions, etc. to Frederik Fouvry + . */ + +/* + Important note: these setting may be overridden by localised CSS. Do not + add here any localization-sensitive style declarations. + + Any updates should be validated, e.g. http://jigsaw.w3.org/css-validator/ */ + +/* Note: "should be inherit" means that in a proper browser inherit should work. + Somehow Netscape manages to interpret "inherit" as bright green. + Yuck. */ + +.legalnotice, .copyright { + padding: 0; + margin: 0; +} + +.abstract { + font-weight: bolder; + padding-right: 1em; +} + +.toc, .list-of-tables { + padding-left: 1em; +} + +.sect1, .chapter, .synopsis, .appendix, .preface, .article, .refsect1, .index, .glossary, .glossdiv, .gloss-article, .section { + padding-left: 1em; +} + +.gloss-article, .glossdiv { + padding-right: 1em; +} + +.toc .chapter { + padding: 0 0 0 1em; +} + +.author { + color: rgb(82, 80, 82); + font-weight: bolder; + padding: 0; + margin: 0; +} + +.othercredit { + line-height: 1em; +} + +.chapter .sect1, .chapter .titlepage, .sect1 .titlepage, .article .titlepage { + padding: 0em; +} + +.titlepage { + padding-left: 1em; + padding-right: 1em; +} + +/* Links in Navigation */ + +.navLeft a:link, .navCenter a:link, .navRight a:link, .header a:link, .header a:visited, .bottom-nav a:link, .bottom-nav a:visited { + color: #41597A; + font-weight: bold; +} + + +/* Nice link colors for the main text */ + +:link { + color: #41597A; +} + +:visited { + color: #597ba8; +} + +.navLeft { + position: absolute; + left: 20px; +} + +.navRight { + position: absolute; + right: 20px; +} + +.navCenter { + text-align: center; + align: center; +} + +.bannerBottomLeft { + position: absolute; + left: 0px; +} + +.bannerBottomRight { + position: absolute; + right: 0px; +} + +/* A little bit of padding makes the tables for keybindings etc much easier to read */ + +table { + padding: 5px; +} + +dl { + margin-top: 0em; + margin-bottom: 0.5em; + margin-left: 0.5em; +} + +dd { + margin-left: 1.5em; +} + +dt { + margin-top: 1em; +} + +div.toc dt { + margin-top: 0px; +} + +div.screenshot { + margin-bottom: 1em; + margin-top: 1em; +} + +div.informalexample { + border-style: dotted; + padding: 10px; +} + +/* But no padding for navigation elements */ + +.toplogo, .navbackground { + padding: 0px; +} + +table.programlisting +table.screen { + border-style: none; + background-color: rgb(224, 224, 224); + table-layout: auto; /* 100%? */ + color: rgb(0, 0, 0); /* should be inherit */ +} + +/* Same as previous block, but more general (previous is HTML only) + Not all browsers understand this yet. + TABLE[class~=programlisting] + TABLE[class~=screen] { border-style: none; + background-color: rgb(224,224,224); + table-layout: auto; + color: inherit; +} +*/ + +p { + text-align: justify; +} + +/* More specific settings */ +/* Temporary patch: browsers break on bad HTML */ +/* P, H1, H2, H3, H4, H5, TD, TH { font-family: Helvetica, Arial, sans-serif; + } */ + +p, h1, h2, h3, h4, h5, h6, td, th { + font-family: sans-serif; +} + +/* Visual cues for GUI elements etc in the text */ + +.guimenu, .guimenuitem, .guisubmenu { + background-color: rgb(220, 220, 220); + color: rgb(0, 0, 0); /* should be inherit */ +} + +.guilabel, .interface, .guibutton, .guiicon { + background-color: rgb(220, 220, 220); + color: rgb(0, 0, 0); /* should be inherit */ +} + +.shortcut { + background-color: rgb(220, 220, 220); + color: rgb(0, 0, 0); /* should be inherit */ +} + +.shortcut .keycap { + background-color: rgb(220, 220, 220); + color: rgb(0, 0, 0); /* should be inherit */ +} + +.question { + font-weight: bolder; +} + +.accel { + background-color: rgb(220, 220, 220); + color: rgb(0, 0, 0); + text-decoration: underline; +} + +.option, .command { + background-color: rgb(255, 255, 255); + color: rgb(0, 96, 160); + font-weight: bold; +} + +h1, h2, h3, h4, h5, h6 { + color: rgb(82, 80, 82); + background-color: transparent; +} + +.arg, .parameter, .replaceable { + background-color: rgb(255, 255, 255); + color: rgb(0, 128, 64); + font-style: italic; +} + +.screen, .programlisting { + background-color: rgb(220, 220, 220); + color: rgb(0, 0, 0); /* should be inherit */ + border-style: dotted; + border-color: rgb(0, 0, 0); + border-width: thin; + padding: 5px; +} + + +/* This one is set in inches because the admonitions are set in inches + and they're more difficult to change. We can live with it in here, + for the meantime, it gives consistent margins */ + +.example { + margin-left: 0.5in; + margin-right: 0.5in; +} + +div.mediaobject, div.mediaobjectco { + /* float: right; */ + /* might make it much nicer. although someone has to + understand the rules ;-) You also don't want it to be + surrounded by text it doesn't refer to ... But that + may be among others a question of writing style. */ + text-align: center; + /* a bit of a hack: it should + position _images_ */ + + img { + max-width: 100%; + } +} + +.caption { + margin: 0em 2em 0em 2em; + text-align: center; +} + +.inlinemediaobject { + vertical-align: baseline; + padding-right: 1em; + padding-left: 1em; +} + +/* An idea that could be nice: a search engine looking for specific +classes could display them in some conspicuous color. All that is +needed is an on the fly generated style element/style sheet. */ + +/* Only used in the hand-made HTML license texts */ +body.license { + background-color: rgb(255, 255, 255); + text-align: justify; + color: rgb(0, 0, 0); +} + +pre.license { + background-color: rgb(255, 255, 255); + font-family: monospace; + color: rgb(0, 0, 0); +} + +.pagination { + margin-left: auto; + margin-right: auto; +} + +.contentBody { + margin-left: 5%; + margin-right: 5%; + width: 90%; +} diff --git a/assets/glyph/glyph.eot b/assets/glyph/glyph.eot new file mode 100644 index 0000000000000000000000000000000000000000..733439ed3249ac3f40e4393ad07c8ec440540ab2 GIT binary patch literal 5712 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 literal 0 Hc$@ + + +Generated by IcoMoon + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/assets/glyph/glyph.ttf b/assets/glyph/glyph.ttf new file mode 100644 index 0000000000000000000000000000000000000000..6bca8bcc5fd89221bb20b652d8d06df54bb0b53e GIT binary patch literal 5556 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.2) +if (is_array($env = @include dirname(__DIR__).'/.env.local.php')) { + $_SERVER += $env; + $_ENV += $env; +} elseif (!class_exists(Dotenv::class)) { + throw new RuntimeException('Please run "composer require symfony/dotenv" to load the ".env" files configuring the application.'); +} else { + $path = dirname(__DIR__).'/.env'; + $dotenv = new Dotenv(); + + // load all the .env files + if (method_exists($dotenv, 'loadEnv')) { + $dotenv->loadEnv($path); + } else { + // fallback code in case your Dotenv component is not 4.2 or higher (when loadEnv() was added) + + if (file_exists($path) || !file_exists($p = "$path.dist")) { + $dotenv->load($path); + } else { + $dotenv->load($p); + } + + if (null === $env = $_SERVER['APP_ENV'] ?? $_ENV['APP_ENV'] ?? null) { + $dotenv->populate(array('APP_ENV' => $env = 'dev')); + } + + if ('test' !== $env && file_exists($p = "$path.local")) { + $dotenv->load($p); + $env = $_SERVER['APP_ENV'] ?? $_ENV['APP_ENV'] ?? $env; + } + + if (file_exists($p = "$path.$env")) { + $dotenv->load($p); + } + + if (file_exists($p = "$path.$env.local")) { + $dotenv->load($p); + } + } +} + +$_SERVER['APP_ENV'] = $_ENV['APP_ENV'] = ($_SERVER['APP_ENV'] ?? $_ENV['APP_ENV'] ?? null) ?: 'dev'; +$_SERVER['APP_DEBUG'] = $_SERVER['APP_DEBUG'] ?? $_ENV['APP_DEBUG'] ?? 'prod' !== $_SERVER['APP_ENV']; +$_SERVER['APP_DEBUG'] = $_ENV['APP_DEBUG'] = (int) $_SERVER['APP_DEBUG'] || filter_var($_SERVER['APP_DEBUG'], FILTER_VALIDATE_BOOLEAN) ? '1' : '0'; diff --git a/config/bundles.php b/config/bundles.php new file mode 100644 --- /dev/null +++ b/config/bundles.php @@ -0,0 +1,13 @@ + ['all' => true], + Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle::class => ['all' => true], + Symfony\Bundle\TwigBundle\TwigBundle::class => ['all' => true], + Symfony\Bundle\WebProfilerBundle\WebProfilerBundle::class => ['dev' => true, 'test' => true], + Symfony\Bundle\MonologBundle\MonologBundle::class => ['all' => true], + Symfony\Bundle\DebugBundle\DebugBundle::class => ['dev' => true, 'test' => true], + Symfony\Bundle\MakerBundle\MakerBundle::class => ['dev' => true], + Symfony\Bundle\WebServerBundle\WebServerBundle::class => ['dev' => true], + Symfony\WebpackEncoreBundle\WebpackEncoreBundle::class => ['all' => true], +]; diff --git a/config/packages/assets.yaml b/config/packages/assets.yaml new file mode 100644 --- /dev/null +++ b/config/packages/assets.yaml @@ -0,0 +1,3 @@ +framework: + assets: + json_manifest_path: '%kernel.project_dir%/public/build/manifest.json' diff --git a/config/packages/cache.yaml b/config/packages/cache.yaml new file mode 100644 --- /dev/null +++ b/config/packages/cache.yaml @@ -0,0 +1,19 @@ +framework: + cache: + # Put the unique name of your app here: the prefix seed + # is used to compute stable namespaces for cache keys. + #prefix_seed: your_vendor_name/app_name + + # The app cache caches to the filesystem by default. + # Other options include: + + # Redis + #app: cache.adapter.redis + #default_redis_provider: redis://localhost + + # APCu (not recommended with heavy random-write workloads as memory fragmentation can cause perf issues) + #app: cache.adapter.apcu + + # Namespaced pools use the above "app" backend by default + #pools: + #my.dedicated.cache: ~ diff --git a/config/packages/dev/debug.yaml b/config/packages/dev/debug.yaml new file mode 100644 --- /dev/null +++ b/config/packages/dev/debug.yaml @@ -0,0 +1,4 @@ +debug: + # Forwards VarDumper Data clones to a centralized server allowing to inspect dumps on CLI or in your browser. + # See the "server:dump" command to start a new server. + dump_destination: "tcp://%env(VAR_DUMPER_SERVER)%" diff --git a/config/packages/dev/easy_log_handler.yaml b/config/packages/dev/easy_log_handler.yaml new file mode 100644 --- /dev/null +++ b/config/packages/dev/easy_log_handler.yaml @@ -0,0 +1,16 @@ +services: + EasyCorp\EasyLog\EasyLogHandler: + public: false + arguments: ['%kernel.logs_dir%/%kernel.environment%.log'] + +#// FIXME: How to add this configuration automatically without messing up with the monolog configuration? +#monolog: +# handlers: +# buffered: +# type: buffer +# handler: easylog +# channels: ['!event'] +# level: debug +# easylog: +# type: service +# id: EasyCorp\EasyLog\EasyLogHandler diff --git a/config/packages/dev/monolog.yaml b/config/packages/dev/monolog.yaml new file mode 100644 --- /dev/null +++ b/config/packages/dev/monolog.yaml @@ -0,0 +1,19 @@ +monolog: + handlers: + main: + type: stream + path: "%kernel.logs_dir%/%kernel.environment%.log" + level: debug + channels: ["!event"] + # uncomment to get logging in your browser + # you may have to allow bigger header sizes in your Web server configuration + #firephp: + # type: firephp + # level: info + #chromephp: + # type: chromephp + # level: info + console: + type: console + process_psr_3_messages: false + channels: ["!event", "!doctrine", "!console"] diff --git a/config/packages/dev/routing.yaml b/config/packages/dev/routing.yaml new file mode 100644 --- /dev/null +++ b/config/packages/dev/routing.yaml @@ -0,0 +1,3 @@ +framework: + router: + strict_requirements: true diff --git a/config/packages/dev/web_profiler.yaml b/config/packages/dev/web_profiler.yaml new file mode 100644 --- /dev/null +++ b/config/packages/dev/web_profiler.yaml @@ -0,0 +1,6 @@ +web_profiler: + toolbar: true + intercept_redirects: false + +framework: + profiler: { only_exceptions: false } diff --git a/config/packages/framework.yaml b/config/packages/framework.yaml new file mode 100644 --- /dev/null +++ b/config/packages/framework.yaml @@ -0,0 +1,19 @@ +framework: + secret: '%env(APP_SECRET)%' + #default_locale: en + #csrf_protection: true + #http_method_override: true + + # Enables session support. Note that the session will ONLY be started if you read or write from it. + # Remove or comment this section to explicitly disable session support. + session: + handler_id: ~ + cookie_secure: auto + cookie_samesite: lax + + #esi: true + #fragments: true + php_errors: + log: true + assets: + json_manifest_path: '%kernel.project_dir%/public/build/manifest.json' diff --git a/config/packages/prod/monolog.yaml b/config/packages/prod/monolog.yaml new file mode 100644 --- /dev/null +++ b/config/packages/prod/monolog.yaml @@ -0,0 +1,25 @@ +monolog: + handlers: + main: + type: fingers_crossed + action_level: error + handler: nested + excluded_404s: + # regex: exclude all 404 errors from the logs + - ^/ + nested: + type: stream + path: "%kernel.logs_dir%/%kernel.environment%.log" + level: debug + console: + type: console + process_psr_3_messages: false + channels: ["!event", "!doctrine"] + deprecation: + type: stream + path: "%kernel.logs_dir%/%kernel.environment%.deprecations.log" + deprecation_filter: + type: filter + handler: deprecation + max_level: info + channels: ["php"] diff --git a/config/packages/routing.yaml b/config/packages/routing.yaml new file mode 100644 --- /dev/null +++ b/config/packages/routing.yaml @@ -0,0 +1,4 @@ +framework: + router: + strict_requirements: ~ + utf8: true diff --git a/config/packages/sensio_framework_extra.yaml b/config/packages/sensio_framework_extra.yaml new file mode 100644 --- /dev/null +++ b/config/packages/sensio_framework_extra.yaml @@ -0,0 +1,3 @@ +sensio_framework_extra: + router: + annotations: false diff --git a/config/packages/test/framework.yaml b/config/packages/test/framework.yaml new file mode 100644 --- /dev/null +++ b/config/packages/test/framework.yaml @@ -0,0 +1,4 @@ +framework: + test: true + session: + storage_id: session.storage.mock_file diff --git a/config/packages/test/monolog.yaml b/config/packages/test/monolog.yaml new file mode 100644 --- /dev/null +++ b/config/packages/test/monolog.yaml @@ -0,0 +1,7 @@ +monolog: + handlers: + main: + type: stream + path: "%kernel.logs_dir%/%kernel.environment%.log" + level: debug + channels: ["!event"] diff --git a/config/packages/test/routing.yaml b/config/packages/test/routing.yaml new file mode 100644 --- /dev/null +++ b/config/packages/test/routing.yaml @@ -0,0 +1,3 @@ +framework: + router: + strict_requirements: true diff --git a/config/packages/test/web_profiler.yaml b/config/packages/test/web_profiler.yaml new file mode 100644 --- /dev/null +++ b/config/packages/test/web_profiler.yaml @@ -0,0 +1,6 @@ +web_profiler: + toolbar: false + intercept_redirects: false + +framework: + profiler: { collect: false } diff --git a/config/packages/translation.yaml b/config/packages/translation.yaml new file mode 100644 --- /dev/null +++ b/config/packages/translation.yaml @@ -0,0 +1,6 @@ +framework: + default_locale: en + translator: + default_path: '%kernel.project_dir%/translations' + fallbacks: + - '%locale%' diff --git a/config/packages/twig.yaml b/config/packages/twig.yaml new file mode 100644 --- /dev/null +++ b/config/packages/twig.yaml @@ -0,0 +1,4 @@ +twig: + default_path: '%kernel.project_dir%/templates' + debug: '%kernel.debug%' + strict_variables: '%kernel.debug%' diff --git a/config/packages/webpack_encore.yaml b/config/packages/webpack_encore.yaml new file mode 100644 --- /dev/null +++ b/config/packages/webpack_encore.yaml @@ -0,0 +1,4 @@ +webpack_encore: + # The path where Encore is building the assets. + # This should match Encore.setOutputPath() in webpack.config.js. + output_path: '%kernel.project_dir%/public/build' diff --git a/config/routes.yaml b/config/routes.yaml new file mode 100644 --- /dev/null +++ b/config/routes.yaml @@ -0,0 +1,3 @@ +#index: +# path: / +# controller: App\Controller\DefaultController::index diff --git a/config/routes/annotations.yaml b/config/routes/annotations.yaml new file mode 100644 --- /dev/null +++ b/config/routes/annotations.yaml @@ -0,0 +1,3 @@ +controllers: + resource: ../../src/Controller/ + type: annotation diff --git a/config/routes/dev/twig.yaml b/config/routes/dev/twig.yaml new file mode 100644 --- /dev/null +++ b/config/routes/dev/twig.yaml @@ -0,0 +1,3 @@ +_errors: + resource: '@TwigBundle/Resources/config/routing/errors.xml' + prefix: /_error diff --git a/config/routes/dev/web_profiler.yaml b/config/routes/dev/web_profiler.yaml new file mode 100644 --- /dev/null +++ b/config/routes/dev/web_profiler.yaml @@ -0,0 +1,7 @@ +web_profiler_wdt: + resource: '@WebProfilerBundle/Resources/config/routing/wdt.xml' + prefix: /_wdt + +web_profiler_profiler: + resource: '@WebProfilerBundle/Resources/config/routing/profiler.xml' + prefix: /_profiler diff --git a/config/services.yaml b/config/services.yaml new file mode 100644 --- /dev/null +++ b/config/services.yaml @@ -0,0 +1,32 @@ +# This file is the entry point to configure your own services. +# Files in the packages/ subdirectory configure your dependencies. + +# Put parameters here that don't need to change on each machine where the app is deployed +# https://symfony.com/doc/current/best_practices/configuration.html#application-related-configuration + +imports: + - { resource: 'services.php' } + +parameters: + locale: 'en' + +services: + # default configuration for services in *this* file + _defaults: + autowire: true # Automatically injects dependencies in your services. + autoconfigure: true # Automatically registers your services as commands, event subscribers, etc. + + # makes classes in src/ available to be used as services + # this creates a service per class whose id is the fully-qualified class name + App\: + resource: '../src/*' + exclude: '../src/{DependencyInjection,Entity,Migrations,Tests,Kernel.php}' + + # controllers are imported separately to make sure services can be injected + # as action arguments even if you don't extend any base controller class + App\Controller\: + resource: '../src/Controller' + tags: ['controller.service_arguments'] + + # add more service definitions when explicit configuration is needed + # please note that last definitions always *replace* previous ones diff --git a/create_generated_used.php b/create_generated_used.php --- a/create_generated_used.php +++ b/create_generated_used.php @@ -37,19 +37,36 @@ # full length, without the prefix (with code), without the suffix (.json) $var_name_len = strlen($json_file) - (strlen(JSONFILE_PREFIX) + 3) - 5; $var_name = substr($json_file, strlen(JSONFILE_PREFIX)+3, $var_name_len); - echo "\$$var_name = $array_string;\n"; + echo "const $var_name = $array_string;\n"; + + if ($var_name == 'languagelist') { + // create special variable for routing parameter _locale in config/services.php + $string = ''; + foreach ($json_array as $lang) { + $string .= $lang . '|'; + } + $string = rtrim($string,"|"); + + // save content + $parameterFile = fopen("./config/services.php", "w"); + fwrite($parameterFile, "setParameter('app.locales', '$string');\n"); + fclose($parameterFile); + } } function convert_files($json_dir) { $all_files = scandir($json_dir); echo "\n"; + echo "}\n"; } $json_files_dir = "."; diff --git a/dblatex-cvs-install/bin/dblatex b/dblatex-cvs-install/bin/dblatex deleted file mode 100755 --- a/dblatex-cvs-install/bin/dblatex +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/sh -# -# This script is automatically created by -# ./configure --prefix=/home/phil/sources/dblatex-cvs-install --catalog=/home/phil/cvs-kde/share/apps/ksgmltools2/customization/catalog -# -#SGML_CATALOG_FILES is exported by generator - -DBLATEX_BASE_DIR=${DBLATEX_BASE_DIR:-/home/docs/docs} - -TEXINPUTS=:${DBLATEX_BASE_DIR}/dblatex-cvs-install/share/dblatex/latex//:$TEXINPUTS -export TEXINPUTS - -${DBLATEX_BASE_DIR}/dblatex-cvs-install/share/dblatex/scripts/dblatex $* diff --git a/docgen_conf.ini b/docgen_conf.ini --- a/docgen_conf.ini +++ b/docgen_conf.ini @@ -1,16 +1,16 @@ [common] -work_dir=/home/docs/docs/work -website_dir=/home/docs/website +work_dir=/home/carl/docs/work +website_dir=/home/carl/project/docs-kde-org/public # If the following options are not specified, languages and packages # are read from the files with the same name -#languages= -#packages= -branches=stable4,trunk4,stable5,trunk5 -static_files=404.php,docs.css,favicon.ico,images,include,index.php,intro.inc.html,robots.txt,styles +languages=en,ca,fr,uk +packages=calligra,frameworks,kde-workspace +branches=stable5,trunk5 +static_files= excluded_lang_pdf=es,ja [env.kdelibs4] -compile_dir=/home/docs/docs/kdelibs +compile_dir=/home/carl/project/docs-kde-org/kdelibs docbookxml_path=/usr/share/xml/docbook/schema/dtd/4.2/ docbookxsl_path=/usr/share/xml/docbook/stylesheet/docbook-xsl diff --git a/doclogconfig.ini b/doclogconfig.ini --- a/doclogconfig.ini +++ b/doclogconfig.ini @@ -21,7 +21,7 @@ class=FileHandler level=DEBUG formatter=formatter -args=('/home/docs/logs/%(logfilename)s.log',) +args=('/home/carl/project/docs-kde-org/logs/%(logfilename)s.log',) [formatter_formatter] format=%(asctime)s:%(levelname)s:%(name)s:%(message)s diff --git a/favicon.ico b/favicon.ico deleted file mode 100644 index 2c9dd50e4d961b11292cae22cc765d531f4d0d93..0000000000000000000000000000000000000000 GIT binary patch literal 0 Hc$@9M;W3ewrL>+bfYFHZNF`#kfUd;jO0d*=ME zM6yOa8#YM9+g1|)oJ8`nL?UqzQ<#M1U;DF0o`=;tMV`_-s=cpJ8EB6>_zlz{PE-Xu z@pGsHrQ!BmjBuhl%$XaJE;Pru(;V%}Zy{Unm3m8Ea$K#NemP)^a*qvi&lji+dX<|o z&U74eqxZNceJMUXO!lJVb2sXR{gPP!!TUwjL3R{-S-0hTtmQ(`CQAHYqWZ8McN1Lr z>*PL+dEpGU-ejOj!)jp^Mp*>~O+4F1YYbb=i;JtNJMr@|)BU{?e9JTD9 zottH5M9*lAil?;|%ns==7!8c;I?<)?=W47Iwb5Hp_)0k^^uNcvPED*mU8y@6zIK^u zy^j7b_t29TPJgN&gBbzzD|6`l>L8up#-Tal#*KJKlpokoxO+WyN9@tWZ$&FlVQzec zUS$?tU+iRQ!NkhS3Z03rXjA<$%}ipLdMdOoG$c4t=4V5Z*Yo0k3oTzqW1OF7acPmZ zBu}&{9xN{{u)4ZR%V#^7>}g|J__}*Gk=7(I`emVd5P}qLp=UIj3HT|(7%mBoIiipIvP{l=#zcOKz;& zFJbb_%OImY%%%bd7c zj9!(FwjheyWFHZGH=4-pl=w&+&HRcy8qNG(GV>c`=GRg1>xfG5s|dFf{5lGLw^9Ee Ve(S=Wo6Y>5Uh~YW;eUr&`wy;ov*`c; diff --git a/include/doc_footer.inc b/include/doc_footer.inc deleted file mode 100644 --- a/include/doc_footer.inc +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - - 0) { ?> - - - - - - show(); ?> - - - - - - - \n
\n"; - $hotspotstart = '\n"; - if (!isset($site_search) || ($site_search == true)) { - print $searchstart; - include_once("search.inc"); - print $end; - } - else if ($site_search == "custom") { - print $searchstart; - include_once("$site_root/includes/search.inc"); - print $end; - } - - if (isset($site_hotspot)) { - if ($site_hotspot === true) { - print $hotspotstart; - include_once("hotspot.inc"); - print $end; - } - else - if ($site_hotspot == "custom") { - print $hotspotstart; - include_once("$site_root/includes/hotspot.inc"); - print $end; - } - } - ?> - - - - - - - - - - - - - - - | - | - - - -$name
\n"; -else - $contact = i18n_var("Maintained by kde.org Webmaster
\n"); -?> - - -
- - - - - - - - diff --git a/include/docs.inc b/include/docs.inc deleted file mode 100644 --- a/include/docs.inc +++ /dev/null @@ -1,14 +0,0 @@ -push("Docs Default","/media/styles/standard.css;/docs.css"); - -?> diff --git a/include/docs_classes.inc b/include/docs_classes.inc deleted file mode 100644 --- a/include/docs_classes.inc +++ /dev/null @@ -1,54 +0,0 @@ -name=$name; - $this->items=explode(";",$group); - } - function show($alt) - { - if ( count($this->items) ) - { - $numitems = count( $this->items ); - for ($i=0; $i < $numitems; $i++) - { - echo '\n"; - } - } - } -} - -class StylesheetList -{ - var $items= array(); - function push($name,$group) - { - array_push($this->items,new StylesheetGroup($name,$group)); - } - function show() - { - if ( count($this->items) ) - { - $numitems = count( $this->items ); - for ($i=0; $i < $numitems; $i++) - { - $this->items[$i]->show($i>0); - } - } - } -} - - - -?> diff --git a/include/functions.inc b/include/functions.inc deleted file mode 100644 --- a/include/functions.inc +++ /dev/null @@ -1,304 +0,0 @@ -" . i18n_var("Latest News") . "\n"; - - $news = new RDF(); - $rdf_pieces = $news->openRDF($file); - - if(!$items) - { - $items = 5; // default - } - $rdf_items = count($rdf_pieces); - if ($rdf_items > $items) - { - $rdf_items = $items; - } - - //only open the file if it has something in it - if ($rdf_items > 0) - { - /* Don't display the last story twice - * if there is less than the requested number of stories - * in the RDF file */ - if ($rdf_items < $items) - { - $rdf_items = $rdf_items - 1; - } - - $alternate = false; - - print "\n"; - - if ($summaryonly) - print "\n\n"; - - $prevDate = ""; - for($x=1;$x<=$rdf_items;$x++) - { - $alternate = !$alternate; - if ($alternate) - { - $color = "newsbox1"; - } - else - { - $color = "newsbox2"; - } - ereg("(.*)", $rdf_pieces[$x], $title); - ereg("(.*)", $rdf_pieces[$x], $date); - ereg("(.*)", $rdf_pieces[$x], $fullstory); - print "\n"; - - $printDate = $date[1]; - - $title[1] = utf8_encode($title[1]); - - if ($summaryonly) - { - print "\n"; - print "\n"; - $prevDate = $printDate; - } - else - { - print "\n"; - print "\n"; - } - - print "\n"; - - } - print "
" . i18n_var("Date") . "" . i18n_var("Headline") . "
".(($printDate == $prevDate) ? " " : "$printDate")."$title[1]

$printDate: $title[1]

$fullstory[1]
\n"; - } -} - -function begin_under_construction() -{ - if ($_SERVER["QUERY_STRING"] != "test") - print("\n"); -} - -function startTranslation($dictionary) -{ - global $site_root; - global $site_external; - $topleveldir = explode("/", $_SERVER['REQUEST_URI']); - - if ($site_root == "./") // if the page is not under a sub-directory - { - if (($site_external && ($_SERVER['SERVER_NAME'] != "kde.org")) || !$site_external) // if the page is something like kde.org or konqueror.org - { - $dir_file = $site_root . "/media/includes/i18n/" . $dictionary . "/" . "root.inc"; - $media_file = $site_root . "/media/includes/i18n/" . $dictionary . "/" . "media.inc"; - } - else // something like kde.org/apps/konqueror or kde.org/areas/kde-ev - { - $dir_file = "../../" . $site_root . "/media/includes/i18n/" . $dictionary . "/" . "root.inc"; - $media_file = "../../" . $site_root . "/media/includes/i18n/" . $dictionary . "/" . "media.inc"; - } - } - else - { - if (($site_external && ($_SERVER['SERVER_NAME'] != "kde.org")) || !$site_external) // if the page is something like kde.org or konqueror.org - { - $dir_file = $site_root . "/media/includes/i18n/" . $dictionary . "/" . $topleveldir[1] . ".inc"; - $media_file = $site_root . "/media/includes/i18n/" . $dictionary . "/" . "media.inc"; - } - else // someting like kde.org/apps/konqueror - { - $dir_file = "../../" . $site_root . "/media/includes/i18n/" . $dictionary . "/" . $topleveldir[1] . ".inc"; - $media_file = "../../" . $site_root . "/media/includes/i18n/" . $dictionary . "/" . "media.inc"; - } - } - - if ($dictionary != "en") - { - global $text; //needed! - if (file_exists($media_file)) - { - include($media_file); - } - if (file_exists($dir_file)) - { - include($dir_file); - } - } -} - -function i18nDebug() -{ - global $text; - print "text contains " . count($text) . " items \n"; -} - -function i18n_var($translate) -{ - global $text; - global $site_locale; - if ($site_locale == "en") - { - return $translate; - } - else - { - $translated = $text[$translate]; - if ($translated == "") - { - return $translate; - } - else - { - return $translated; - } - } -} - -function i18n($translate) -{ - global $text; - global $site_locale; - if ($site_locale == "en") - { - print $translate; - } - else - { - $translated = $text[$translate]; - if ($translated == "") - { - print $translate; - } - else - { - print $translated; - } - } -} - -function niceFileSize($path) -{ - if (file_exists($path)) - { - $size = filesize($path); - if ($size > (1024 * 1024)) - { - echo "(" . round($size/(1024*1024)) . "MB)"; - } - else - if ($size > 1024) - { - echo "(" . round($size/1024) . "KB)"; - } - else - { - echo "(" . round($size) . "B)"; - } - } - else - { - echo "(File not available on this server, use printing.kde.org or koffice.org instead)"; - } -} - -function siteLogo($path, $width, $height) -{ - return "src=\"$path\" width=\"$width\" height=\"$height\""; -} - -?> diff --git a/include/header.inc b/include/header.inc deleted file mode 100644 --- a/include/header.inc +++ /dev/null @@ -1,294 +0,0 @@ -\n"; - print "\n"; -?> - - - - - <?php print $title; ?> - - - - - - - - - - - - - - -\n"; - if (isset($rss_feed2_link)) - print "\n"; -?> - -show(); - else - { - if (!$rtl) - echo ''; - else - echo ''; - } -?> - - - - -'; - else - echo ''; -?> - - - -" > - - - - - - - - - - - - -
-
- - - -
-
- - - 0) { ?> - - - -
0) print 'rowspan="2"'; ?> > -
- $page_title\n"; - ?> diff --git a/include/header_docs.inc b/include/header_docs.inc deleted file mode 100644 --- a/include/header_docs.inc +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - KDE Documentation - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
- Skip to main content :: - - \"Home\" - :: - \"\" - -
KDE Documentation
- - -
- -
- - Help :: - Contact Us - - :: Skip to Link Menu
- -   -
-
-
- - - - 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 literal 0 Hc$@i6Pw$_=#+^^5$#M|oG=kVLk^!WO2 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 U+Ku$>l>h($07*qoM6N<$g2Kow-2eap literal 0 Hc$@nRPQqTET zT@0?dnbPc-!}TuVMc4K_=YG_QpxbA0^rIP&z-qhX=BdS%we^k7%}t3!oXr-T^Q9uf zK2&y&iPqMKXTH(~EsAEszv%Wi=1Q)b?*}ZHl+Hl9~MT{@rs{gNm$I@}s_P9K0IK{5U+@H@;w#)O0z#F12CcVKz6taZoL!mfAHg zTomE6INITLW$mLgOQQI?&v(+;X{>=zYVXFzrcX&H*coSNCaSg{o6&kVz2)odw+h~v zeiWl;Y+fRfG<=@IX12DE%yI>@dXe>yiaXc?(<`g%u%POKwh{5xCU~>Lwh`2e`qSQ( zw^P|wontD`Xn$7rRCkXrtgN}_f6@s3@M(C~Ho3WwJHqUr;!iD_y<{0gGjN%$VbtFD z9iwkK!-)*OWkTbiaEbYO>PiHCY;JjZb=|+bD}~8F<5Lw;-IvoM@OsD73a@M83n%7R z?xnZ9VGlhn=G{nY;(eVniEFr(%FbvSY#ErIT3GQb>pbgQ^{A+W)-`S#&q`!`Nog2R zc~%`z-lZEs|2(-kAY3wvVS>N1zOmu(rfo>L)IYHhT+#ii{)_o5R!~JZ@m2Y52=l;>C0{rT#Iiojc@1}ne%?fyAVJV zi?<|VabD{%rJ&utuzhrHIf=oq(NmZqAFNj+O9WprlkP`l>%cR7Y;x02T~ta` z{soa(aQtcmuyT?vm9gt*(l>LNhyFj|F54>-?G~X2o>>J)0uzT+WwQGfzuzh+??m>;1hzaOnZ=rz z))dGKsQ=m&)=+F-*yr6cJG>v~2lYj+F!aM;U9gc4(o;RBj(Xnea8K#rHN)vAsIQ~v z8J$pB+oICyp*bl#@x$5B!rwnlD99Em-^zhh>}KAn!(<^Ev)h8BqQWYwe#PHr$yt{= zX?f}=sGQkpt&}(CQI7glW@YN#GkXJBZkXx)y0%cdabsrye&aSLYjM}lhw$&1^3u5) z!(+IPtUTqgqx%2UGUI4SrP6ih39iV*l>Ka^^z~F7x0l5hPZVt4c0hI0rjA|Zk8>Sg z9=!kB0Kz!pCgYed+#TmKxfq|{Q#3eF@=$0oI8PpU`|i;%fk(Z_!V%mokb8I6;9YHt zFUz7Bv{XiMeZm_>(Mi={emIk>H-CkqrVUR_3O{LeALeNUk@LFq$>Zb zV{)OM-6g+$seRMQhBNfCozW(%V!fEB>$+N9cW%wmXOJPbUYxofh~u89mb5<)V!`=T zpy=CC>@gHP0_Tbc9RP>IG?k$+Wf;sFrjAh6L|oK74}~J2(9}c(@4p02WP1|f@&6Z0 zHw2JDfx))GjZC0;VqEcnu@i=fH^mT1I7c}(6?GL2WlcG-f~qp~k}?b~X8}`_bD&UM z5D6>On|At6tB_rZUxH`Ag22)3iq;P9PFMs2O~$!9;hiZ6ggJ=10k9lNHRNy1 z_cIX)2Rw=BKmlNy@I!!W5Xc<)U&fYXPjT2rcm?uOAoA-Eh$+blPkHQu2flX&ad9SI zDZOF#w>qZQAO*lKsj9=_8k*{wCFwOZ5IOV%Vnup_2cRfaT&B)6n7Z*p%ErRIaB^16CnhQ2MI@Zc7y!qogp|pR1<@P!!cMG77xd&;V>5o8gM)mdkKn%!8Pnv YK!pm}Ul`f@?Dm5h>zkpAP!9tB4JygGdH?_b literal 0 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 literal 0 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

0xSSj;#jCVb{>zWD27m(b@IwW7d0~PA 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 literal 0 Hc$@EkTAFgch}%fkO0BmLvVMO1o)cs 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 literal 0 Hc$@Z7JXTRw&;rWT`vd$C_@wNnX8;P2 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 SL*$Pa%s|&f=b4ss)PDeal+pbF literal 0 Hc$@eRVWvO~@!?w2 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 literal 0 Hc$@4J9A^w5+lML`51pmanj7syYS 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 literal 0 Hc$@?v3uQjT$j} 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 + + + + + + + + + + + image/svg+xml + + + + + + + + + + diff --git a/public/browserconfig.xml b/public/browserconfig.xml new file mode 100644 --- /dev/null +++ b/public/browserconfig.xml @@ -0,0 +1,2 @@ + +#ffffff \ No newline at end of file diff --git a/docs.css b/public/docs.css rename from docs.css rename to public/docs.css diff --git a/public/favicon-16x16.png b/public/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..3da9f16ff2c7952683ae387d4f881b8f475121e1 GIT binary patch literal 1213 zc%17D@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJOS+@4BLl<6e(pbstUx|vage(c z!@6@aFM%9|WRD45bDP46hOx7_4S6Fo+k-*%fF5)E5xo z6XL4buv4{ehepFrjryJH^*an(_vEfP*SO`XL+=5#x*eIz&U#NdqTjsRvG3rcw_m>g z_!U0;gkJOR_2-}b`Sa)4o!7QK`%T;T22MYw)v)vN+b^HL{|uXbyk*<9U%!99`|=}e z**W$4oo(B$z5eul;j#NAYc78L`lD~p%@-fOb?v+nzu?r<_g`DLU3>WE^Z$Q;H(z{e z*s|NKWAC9`udDyUVU!dw#TS-Pu->~+pj#+Y1;MS>yPeTH(q}H_WRGD z-rYCvy!`b4|Nn)@?>qG${PgW-=&a*!K7UVMbXvD**W~@TH=KX+`P;&yM5ay& z{Sk8YN~);>+lGu&nVGLooO=1{rLnV)fq}`R2gYU>O--3+C*&orOh2lfnVX!Q&VTK| z!v`;pywG|1C`h-eFY1ef%L z<;2vinYOluspI?snb|8QE}1uH(yVEG8>eY1Pd3)pwVt4Qyod9ZX&PJqojo;dVrpzG z51zCbF|eGIi(h}!e=*RLswJ)wB`Jv|saDBFsX&Us$iUE2*T7KM&@jZ%+{(n#%Ggrd zz`)ADVD3z-%P1Oh^HVa@DsgLgbEGLBsKE`Sp*TOSq&%@GmBBMNF+J5cF+DRmTft1v zT+c$+QUPd!iLQaEuAz}aprM&UMoCG5mA-y?dAVLDNOdk)wO)Qv`kl77Km!>hKqiJ{ zl;$Q`S-IpVm*%GCl~`E?0F@Rq7%u<6TOUmg*iI{}jMU8Zj1mSzOCx@UqE?_9aZEMg znJFb1ASIXAC~^RmNFpim&CE?LsVqok0J}=RATQm1Q1}V40X~WR#d>n3QUiWR{$0oMvH^YLH}VkZNdTk)j9Gp$BwdSALBeD8M{j L{an^LB{Ts5M!yLs literal 0 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

0xSSj;#jCVb{>zWD27m(b@IwW7d0~PA zf|Vayng9sFzaZ+?K1dKZ9G>_|Y!6t{`qz@CnmowD+71c4K9{|No1LR2mxYOkwV9)X zE7$*gXD%}&x1fm`FRzIyk13MZ^o5xTp9PE;$!*HdjpX5lnR5aboIreNM?a>&A530G KMYp#Px&+E*4P=SScPjoh;0pOS;ErVN+XH|TD1H6^mBgmpxW5#!QacY^X9$z=9`)CNzy#J%E~1AT_hc! zFG&j}Nm7wfh$2dy4?XKypxE3oo?nhqX3#8U``bH(rh>6b#lGpnY7DklqW@t9Ow}tD zysBl&J0)_>S~YC??OgMPZVO^TKOzA)y6QJ`Zuga4u+*+EjzM)t4fTjjdf_(e;OoAD zWOx#ZZ~#7A6U8nup2yUX=UC7y;SW5jKsJ*^;@bpc*_-#m-n55(5lcp<;A%Sw!@0$O za4=|=FwfuzCtMFsqpNNMMmy^;__&h%jd*+S7{=_k;k8{S|0pcf>l}udmGjmCc&%6Q zx$gn(`737m)BI92|CWPF5lGpI0*%@lA;T fcWo!|>e_C?Tl>%NQS3xmUaLYcBK8}1=|9g;JYdlH literal 0 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 literal 5653 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 diff --git a/images/kde_gear_64.png b/public/images/kde_gear_64.png rename from images/kde_gear_64.png rename to public/images/kde_gear_64.png index dcfb4c14db353825aac188ec243f61a96e3ca4df..dcfb4c14db353825aac188ec243f61a96e3ca4df GIT binary patch literal 6357 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 +$response->send(); +$kernel->terminate($request, $response); diff --git a/public/kde-icon.zip b/public/kde-icon.zip new file mode 100644 index 0000000000000000000000000000000000000000..22cb89a640c2ce33df2040061f0630d932ce0159 GIT binary patch literal 145884 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ðg6+SCW?fPoWmhpLGPe3m(7`BXCVJ0U97) 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 z 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 literal 0 Hc$@tpPw+J6p}0q18R5d9x@C3#)H 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 KrD_Gs@c#oSgxSFW literal 0 Hc$@2}=YsyI>G)|NK1b(5ikk?c}K=7kSK=>SvfbaGKf+ zf+q(8!to~r1fgsM1R|IGE)5aj3lwuDIT?h1@PEaNy zchkn+*oqA-ij%M2zSM3M@_ia^d>@+5h({%{fOzZ7`UN2rS+zjuMqDju=<46eS4AF@ zghO02vTHSAYT~(inNNWr7~I zX7jc@QP`}GK<)1(|6f6sUjy7Uui=;3%_JCLNrPY*TX;)ZS`P0p=6p5=}No7T{ zQW*k5cbxBk8{~vVS#WW877R-G+fWhC3d$>Ixe1H31su! zCTYP6!M)o~E-PXmDN5Svu*kFe)hEW%8Wmx_wwn<_BQ9!kV97gZKXG7c(XZ*yuQ^|_ zb@TIq+Ke_uepi1p-29d1xU`R~S0wQKJL1j^_hAAen@fUuNOL+_T6{%)O>4u(NNYts zhl69p+m*#Q#V-BOtN&!Q#<;j~bWXD4)L=kq)Pt z7#T}-nrl*EKglS@*pcKnTKQgS=kTkh8!*~LSCr>^;?i&jY=tt$+F=G9lNT*QChXTO z+D^e+7uDXPYfhhuMmi+pNo9Qo<@lpxCoHlmhYeI#{`AQujpGv7hVL4Wka3%?Tq;I& z8wDDMB{OEC9#+}|Z=W0GubuWeJ-J!s5S=N=uXdo@rY@cPR{F*Y)x&X6JcyCW3{8>= zq&2>B7gzdn2y9tL>Ec_VQU+_;AR)V+|9-W?Ge#eiXiH1S{W9vKY5wjFzE!0glcN?{ z$I~sXBT-+<{i}3`^}BbvYZQ5#pY*xhT%a`(Drt^*+O|UW`s_B2Y|{ky51k~iO84^m zu}K!OOJB^QiRzQVB=g1w?}r~tgv_j2RIxbEyt9qf^s}_A-pLTtl3 ze$c(I0WBj@?W90aGZvhl1*F#DN(GKo%b^unlvQKSDK*th!0RJgv}#GIVwQ5Lku_Kh zoVx?S3x_lOe4PeoH4iSzvNoZR6`q*=Z~QZsabdWh@s+~>c?DDC`D*FCn^4KWf%j=3@|fgPi?cq6F*s&=lv08n*j&N0M%jieF}=kdsE zq*}7%Byywv?*7LuVG%3j$fqP%jEl3ml9f*-H6`sVb}jN#WA@>nD_&D^jmp$EFs4Q6 z@V!R-A&iv|HNdC)8&Mo{rDpYnH3nscMR1SriygPZKYEaS0A>-_4Z`w z(uR;3IexLAS?~!_P;T3uXOZSPdi2I96NM9uF!jY1!-T)%39whVkcl40kf-3Y@?Fg@=L) zw%36{-kxFN#&z?agE0+y{se30^R$^4#$S*`A{jH&o3WcH*e`B>zR$A0DrbF{lDTGk zvS9AsFV{{Q5KuK%&>-geBK0K>K=0C&k#Un`^(phC^&@}C&<%=z6_{{+%6;Lr{ zU_1_+$NhuV@j5x*GFW5Is?Gw4%ZF+S{s120!{e(qO0aI;Mr}H63eWXGohkveNIea*@Qk zmv_t7v3~PC4wlPH>0kl#AI_~vC8DG(?NXU}z)w`=8`LO44XUXjM-Alil4PMXVc(zc zR{87GJFV&dnN$WfP+u(}5p0(_#jTCc^bL%x)k)A)#CTN~rv>ln?i(J=1v1j z9f&_=bw*AM3MaLPKUY7xrpPNxpKmyZd^FA81rWh)gyK${KIM?=hqoU8{oakrv1k#8 zqIK_D*>}QqEj%R!0&a>sN8%UKw8CZSwEJS~%9^1TB+4+Yo}khpVVgST19D7hS~d)! zF4|>biX!$}%%ip&wk>LTz#Rx7RT7G$EA$bqAFKrmE6?PvdvMv~(+tv;}el^(wJ2_y@S{u0lqw#4TmfTrk6~<^}&&=^gs~)PMc1MC%1T%XYfa5}Tz zy`2dArCu+!yTU(n*+6kn8tiZ(vW6(}P0gVro^3VaF@4Xh>%&!oQ1I7v%Z5{G1ylE@ zw9*I=(Mshv0O6h4RIcK#w2bq|QXnej;YGl!1_?o#p-Rsa{0@MRe)C(l_yLW{zvmc> zFLiiw)y0xlA6x4Q4vM{-R@0C-P~cg>m7t|F;ot9GWczoz?%CLQH!Mob84f%bZ8Je;9;h+)L-}UyBjZG4c^D=27Eq`KGM>TmCI=czWzI2N2 zB3P9>!5rZ%M4{&Odywh4eveq~I(-H|zaOE>tnmig-(C_ZGARfW zGDN=X3-;@h60~68LK5owxV81`!g(8XKCBrxRVc1(OMX3jDsH$!F=+dHse1Rh*PVA- z1vV;_SzGd$;$ZqBlZnxQ570s<`j+HjEn2L7rcUmjy%W0Z{TvducOEZr7u>MFc5w_F zRlV14#$Ix1vQFg)r;0WQ)WA%ZA@C;jfWw*P$75;vhY&)b$<5lOKY+*?6zG~8$E~7XijN~|c&MRduo(t^z)WLoOF%YJoUu*sF^Cx-}CA*gL zI-1Nb$wmaOjO*mh4MlJ#cnrXHfag|HC&pt4Nnxzxd?E?$l!^_$d&WE~D%#yuE^Gz; z$}!?{6J#Cy;lT<8TndQ7Vm*sL{&hEhYw#7*9>b z3XB<&KGt25UHMJXy}!uW@p86+H8U4!@xo1}iImk*+PubisM9>RsHovGPifvbdn`q* zMyTyi*W8|2a&>ZZhd`Q5NxpSsHccMagLUUr@5tvRDyrymFO}eElRh3iKuohwzVQLH zA?y&HK(@&<6!*n0u~67&W(N~^#0EY#sKn-$0dshbM>zf;vk3}n9FNE$vzrL8=2gCM z$u?W!^tCD(k`f$To&bq;v<-iBas-4V9?_LA;ji0x{m4&3XXo3Z;)8(Sl}}o-3G#*a zC(!g6*j+8><<-hI!zg_*{*7X+SC{;GmiDyoWT@6!$5EzcEN4Y$ifaX_%NqgS@sX{q z6Fh5GceW>If4-yIXu>ON^d2$dqP9Z@dNCpiVfe?c*n?c<@ODd>f4B~V?l9KwW)IJc z2KhZw*P7SEdIPIi&*rB(82-qme1_LEuAJ!#*~F*D^uy(>%KL)|Ccs_CR#3g~GB=tE za;K{pD?k827toow>}DRHS~>DVPT82{%$53NfC8Z&tz>!sHV;DDJbQt+iO4z5bG9#H zNfx)9nDyX2qr&}B6({W_>K|n$g6#yGoq%ls{7e+R@l(2J`VRqwckAVzqbDLeU-E7Gp}J$Wh%+np~E7wb~Dar zaw*N-QCsGJ_}ZsWk7l`R5A$;G&|s;t1eqEzUM$t1!)z}1$(da zZ3CxM6ky202$_MI^k)#-v|61t>}vkOwe*uF+x4ugKAeqLW-4h+t!g*(MWhceCa?kO zypae`A!C-DHync+7!rHmsG9siV4_!R$cU^j^NXfAjg-MF#F%$x^xjKnX+7FyHd)Qu zuGhd!_w=Zjr$cb1XxSjvB%u(}%TvWX9B0tQfq7mbrM<@bND2XDmLRINqPZAW=?3u8 zA?qR8-!-@{&8Zcc?mid#DdMJ0S5*#q8`a)+-6gqTI^;-dAk-7tT=w|ZPUbN%=hs^U zvXp6}AFPb&x_zK>xGouA1s1*4N&A!=x@sPqMHt)T4;inq_agIFCIN?MWKIPC^-DJi$zEYQRx_kRS6kENO!t%G1G9cf6&l zt>eGsU1yT0#|4jnbC zGZwoWBmh~*ikuvq7u;M2eV}hI%lcE^KxR`j98Td|qe=?s>>J3=o-B0l5S!p_S@wEfU{J7Um~-ZOD@uq{ z+tX|MD#*^~^8tO<vSWnVr6h1`Xf|ffcpv^O3Qe%yssDblsgzhh%qN8gFg1V@08?k2J(aZiX3Dax zITwedqU_fvF9EM(z#Rb(N@>PQwe2I3`tB+nEB_0O`<}=q6aR05#;^vL$^yP;5yh>4?uFEg@!gahvo0-=DY^<%0qlYl)Y~ zkxz@7dHDW?STGgBBQ_!^AhdY0={ByC(g~8ATGE+wN*yHKyKuKS>Hg?av^XglTL)DKv*02RG z$HGvFA#Vda7XYQ3&0fI-Ba6N+aMRQ{wYHzy>HPTun3c=9fE2^6x545}(K|QGN2tc8 zpsS}kQXrn!t`sk|l9#YTK-G~h`c9nzog0U1epwBLRl6inzXpUb*T2xdrv?JH;?mBP z)|)Ls6RXPP0nRjUJB)rT^FBlSi!4$jk29ZV&-;?jcsiPw=;G7# z)^9C_H1T9Occ{TKN^j#ZxCMbWc7`8bWP-ipybI}^h+F1J&ZAE9o*zc&!>9%nA2(s2 zzc(J?P$9Q&CIfUH;OZS51yI%Em*?m1n#_NY1KIbjd!d>WDwZQI!Vqd7v&R0;9r?<1 z-cBt;is7TS&fYE9S5woyxM9MCzF%(5_&7C6Fo77@ zxGRoJkWGnaU8N13`Zedte{-JVDdfmIXwz^;P>CCdrgX11h{;>0|E3$4!{}R7z zpCH*E)lT}n?tQY*y(LMxR06O<3u4x%j+Rx}L({*azPHCeg6a!B**$IW8KX|9{Ifvjr&pd|fgZJK$0VL{`TnvsTJ)Snq&A zg)c9?UEe==pfP_zzazi!H*~6S<{*RbpPz4m+8M7M_KOXw5w4p&tJGw?9>!h3`2SrW zywB2GvyW*D%DE+Abrde%x_S6J>`bIi*Lo$ zqsyyiFJT6ZdE5@kNkEnT^$1L>J2A-(`%#Q@qFx$t`ie8W_)HFPx{E2rJV0Fv2xn-u zY0U_PisrH|{YKqbJqEZ~t>z!VaDxbvlqh-9B8Wx+M+asx4adoOmJC@4sY}h)Y@J$? z%-y$Q@T_Tx$;uJ^?b9m%7{(3#!;vb0ldC@_4hR8U<50B*pPI>GhJh!h5P=?^-*v0} zcEUot`92ybjj^suyhO3-aQ$#?nx+@Y{JR-qDABWhNgo+p?=8}&?|AW4=PA}V|EcYC zM-E&VCceYMhZ+#zAJ=V!gc1~Pb-eyP2w>N!@oWQ`q;3u^P#_ppx=nY;xqd|@K>?S; zBH(=I-@RkZM4d@);KB5f_0O>nRM9COo5?qgU9Wy(9{q*uXSCwI$mg38!iv_Z8vD#v z(C_ZCrC(3aw~7Vg#!WaMrWoc#Bk*UABE6l2W}4Vl=e-6m9z~}9CjUx#gBosz_AKuP z>Yd0^Vs&!9`RTjUhczvui!;@Ha+0Y+sG79owj^wS`v>ksoAyx< zqT>|4S0AWGE0lqtHtVWWGd<-uNfjNnz5MIVnz=tZCbccri$0T6z<>sOM-YN>o(DDB z2ajz2Wi>6|->XW;rFHa*Ak*d-1cEKDe(> z0g6@Rm-X2UtyG_P>)!;wgR#NccM4>`s(mxb0e~xt_i{i1Le2%L86hUWb|t5Q*9M2* zQmJ>#7tN{hgcqMg7;he3d;=(Y=Q^CC|NJyrLY?RM{yjr*T$w%x@W1cfc3iqYIn1E@CX)Psv1`v31m% z^Y~cmq{}_b!#+dgdu16h-^L!t1so9PPHFkm3PXLNo(P$%@M85udLB@jZY zsARc}JI z)q;7>g!d@yF8snp{8-oRfkGc+BKJs!}J001l+fPDRAm+`rTKJcHI^qD$w7kCTkD(+>E zaOXgp_2g@GMGLDf@24v4GIQBZOw>+mqOY->_-*4rL_?apD=0HFZ+x8i)WodJehq-g zSYr(wvG1)brVbYQ$k`XT7ro?{<2qUvVSB<@fKse8%X{Uqrv-tpc|E}#09r4*#;5&| zYz>9CC;#fLQQL@!xL!Y>ce~93Zs;M^kF;(Tpx*q^OZnC|2>t?(nZg9t0}$2hmv;0y z6D%t5z5Q{~niIz+Fe-M|pcIk|gE$t8qygViv#9|4d@=u7b8R=m;w2ypzhGKGTUKam zdn{@M;Y*l61SIVud%WCaio}&kfiJNf#7`+*ec(z|5VTMmq6afr5rk$lmHXKBjT%+G zzc-sq@WXjq#-2c4Y%)vE;THx_dYdXYfGb;SEhVO*MB)yC-w*xqsu(==E6S|P^gD9! zhB01fg2#>W0{@<_V>LE-M{O%_y=}w%2G)%H_%Z)5BVvwYA%!fY5EdTzo*XARe{qH0jVPz#iq~gqxGdq}|+r??Mu{^X^C`!mD3iIdgbLlC=cX{=6 zg#i*#QK>`>eU!Z?Ze@N9A2pl5bfg{*5L97>eaah2++r--=vSOL0OmY1k4=(*;czMw zS@!I%4FVuE2w;jW3uKIX;vt5g@=&-V2*kzp_81r@_BAWnQ2k!C4&R1XYj6|7Y=9}z z>UQwP8$UJzG3(j&o{(S93$@Avh;+4HM_LX_Ta`kGwkoX2BgT+reda+$Z0CD2{&+UK zSw&77^%CG?p=5ulQ^LVr{cO|wIn0$QU&{DnBwj`c2aTG$_fPpb3#4m)EO-hrL)+ju zT+hI6iQvhyzB0}p(~>uc$t|R&%a-EE@P?a>`TQ`3MPs8U{*6c>@7kL`uQB^MwAqX7 z&=l?B;sEi6UgIhPQ+O>^?H2A=WOPH(ASr?Sv-a|jd5;T2bVt|HPP-moNBg4q(csz} zyl9ItU_OKW%p&!OVhOkjE5Y3Z=YTkbtn7a$(Mmc_D1P7bGLeq4l2!3-p5{npa_{m5LHRZeKSRjQi7BmvoB ztR3(lP@}4g&69+hE8RJr^u@3`1p;qUB+)l_Z>fQ#ELc@xU}RijxX>k!bjE} z=YK3l;5p&Cde^CmM|)uH4#_Uf zZ5tDyXPTh3dRxvC*4ogwrBY%^rX=JvdfFi703xb^;)!x&mMBVy^=$U@VI^j9Ths|F z#5+Z{^$cFQe+cq|C=x3*I(x*JZ(8&e?Dux9udo^4iR-adFd;Lo)1GASlcgDt)4;MV z$#3+DyK*w>Rd`R-$JVsnuovsgPzWnoM{W==`#472Z0>v)%Ny*MGjoyny2bub4RCt; zTp4h#b@cs5f~Rcma?2yr9A1vCkNnO?fhyWxxcTEY&tBMeBED*{T_wU}b&OP(^yRJB zi2q6`F~V29PiBn)jH3N)tQ)h|Bq1Qd`4Xu)BKOK)-bINe=GNYo=4+vaq;mq)3?Sx@ zeH2O_>heqm4&Bec?F$0N&EKE>&>!pmCIhC0W%oeT&CB*&0baFu!*(iJodFsh!dOQ_ z{JR6Ya5=VJ;sa=3t)P{!PV>9CiIP-zz-lg~l~~(PIZqhx+yY*Yq6ROIUIHkgF7DlS z>e{kpfh*HB@#8Zt+M3ho@&pKAL-~zXf*Mn)ZBs)AAgOB00p`Kia$!`vr0wqCqj))$ zd%je#gr$R$xv=uh>LR z_Wo%kwX4*Bc~xTm3V?;H15EdqZx)JJD|1*Ys}IP~nc~u|K9Q9Ds_f@O&a}gH2>1=% zf{2Q^m+CjK-sn4FoevPZ4zYKISrXI&KKG3axvJKn^6LG3LAmShI~Hj={2wn2e&Jf;P;2^mAj zsK}CG$kxS??~c#+a%(r-YP{sBLMYUm1iq6b%C5X`su>g8u5v(Dn5T6Cai14_lcbuf zC{Bm(2qs4XlstI#>gU7kxie4NNcF)nAQd0dhdY0YyoD+|uIE{yTccy271qsNNFAFL z9ll=AN}kkXle`C{JuoFv-@sz|XeGO#JkcWN6BDt%%^%a&!96f;yCE>GgHex1{SZJU zjPu8|M9eSv0BZJ5Q?ZAm^h^#}BR)go?vU~I$a}V%EYiGmF2a^!o?(wmQ|=g&WW!1Q z9-n%NKXW{Ps7kx%1i5xASs{T^rRMxjxI0mtt^?@eNi><%M^CSd*dh0Tp7e%1UOzLY zyj(1UeA~;w{Msil%#87&@)CRLbxv1Z1c*{S;ViX}Xzr@)oqLuDru-{Y;;SjesDF>A zLUpYCDKX)%GtD?M+=O1I+B>Kp%1UG6Lnk{SwcY?=l_T zKH~!%OjV~vATwnJIoS^FFqUacSkIyk*0SbhcdPTy?ZwR_7*MzTv>Gh<{H#)C9FYwH z?fg&aT&$)dy0oCY$v2C~!{xoT_Q#FGfX4yQO-PCaU&mO)!LAUljQ|xTOAspz$p5x~ zh_jZ${jx%Q&YralNH6O+t#LY)A4=~vSoNC7*20yGrK??c zw^`aB0>Hxw31Uvkldsy!o=%iGhnb;DJ)T_yIW@mlghZ8r-pR%9l;#ZP`3pUxrIRj` zAqVuW?6ULoul{<7=`+b0`1C$&SC6RD7p9zHJTBtl%6A(38$WbM%36!8EAEgHZzR>> z#AGfLzIZ&``e7Q3C#Y&nqp*%bWOKF9O~KFq7|^{|B6tohn@>vwM*Sr(-7+7Rqjb@3 zId>N)=;j5$N8q|P?`DgmEL-GlGM+Luqm84^3%ACRpN53%JlGM{A@F*ysQUThr9Hu9 zp2|pTrlV(#PRX9i02~Qa27ZrfW2UtiIFMo*bY@d&*>W`iVXYjaB5PbKNwf-r)#6Pw zq&rI$-1T_2p}3(`@dl2V_ii=AuscJ?8zkj-IluGLlbaWHAH1ivA68dM9@0G-t=sM5 zKt;GO9Hl?yDfH~~CP|h0DL6Y`-w(D4Rm6W_vY_KqLbo4EvFopcD&42-10b@Eb5Uj) zmk0C}sm9B`0+iMYs%_97>r>@ffBj|6>)~EC%vo2c-cw{ipWZDCW_#?!WZ`Z`4}Bu4 z?BGa4mA^iZ9D4)VFVvzPjF`!k9N|+ikS%49v89kHmhEG2M}hCV+uRvm_j14;qLMm$ zy6PSXJ53bq8WV#0ktrRO|6b$&j78V>>phFoF119lK~$cn+RG-Gv$yzT#vCd#o*hXQ zyL0B9SI&}lr6uUb#EVE91BB<3>fs3o@}%wr#EyXnd2)OEW_*ft%XT|Iu*ZDAjdxGJ86>+hAFN;y`DhT?Pw>Lx{=UBcxYY{ax@l?#V^=CXYD1$Ry4zNv zJbaxzSvFnC0K?3dqWx_}sj|sh0Rn`E?^ysAe>}i-3bI#rhS1jshX%#VA05fQUk_&Y zQ8v%sbarjgWi^iq(MO~M?!aB3m$`Xl(UoleK8r@QxtOB)@b=O(4bP1!EiD7HB3{%h zBh7VY{uhCGygsP&d1sBDX?`CDt6lMGZrK4s%UMw!c=iJL%JKGDrq!5Ec4g>13C!py z3`P>KJo9(N99C82RcCiFTDSxR4nfN>K}$rdA4_GmB^g&@E%$@~y&#liIX}U)6?}r; zjVHoHXScqu&!j@}}tYU|z@XLFg+x?!(*^{S)U=@a_mZn~%PdxI#z>@4Uqq6Ks& zn$@R)*yN(T=P&Nf&t8U1Hea0DR%1&&F-+)G%0jUW>}pu`IMaNY zDDBPs$@aRqv{_iwQw7vtW;I9xk``xzr`nP{$lW!zsHo00h+b`pudqYbu9d~NGI>{< z7rH!g8grKUT|^X|e*FyJQUUD$FElGDMZqBXJ8@mQrV38s^u4U@GNz zuH_M+?$_<2#K%#bro^+v62!yxf)v~@qX0$%Q0#CEG1s4wWUBL`x{B^WLUK#s$X79A z-NZcpQ4+W#siZd)!>xw?S9q9&AXYb`5y0}SU^!vzR}V@+*d)I9k?Y%w&z`Sn>a9am-sS)G0%fF{x)x3OArva z;kfwToVK@!uK=)vZ)>mi5|Z;%C8mLzj3SG3TYUcw5PTI7|1izT;B?$b2!R&=?y-*@ zeB@Xpm${e@PENN3r2$MyRhx^LW;N`YM=jD0zJ~DVmo)R6_rbbCdL0WFKUXCHZ&%;^ zEebms^X2p^39QOJeQrqxG`l!(i!4tSO$*|;?EE?R)@f#Itb(b6e-z`uYSgv7sbSgqMbj52@T`)lx)^%=Qb)s;LSltw3;@F|diUzS zu7&U=ki@C!wEzIjRLRQ1>LeFBTi3I71EA4xRvhbZ&`nI_aFfC?ZYUrqfS~OQDw%ZT zOt4UujsAeKj&F_$oeyYVGOIYPE$_!pS5a(htIhNl5S(m0)LfD=M$WYfBO0oQh>G>i z!}IY(#f6Tf{oe1I`5ZiZB=W0f`dXC;{E89tN%ZK1s&a%E??o6JoLnv`cpHy^wUEE4 zPoD!4At6Y@0rwOAePe^K8z!|&Shm_3WK@_Ca12YwcVLrOQX6OWzI!q;K;ROlNC^6z zj%xHGb&}f;0j=bCeQAx28I&a}P8GdJ4qYuzpCr`kaV?z;U`nW1z9KiIpr{cgVdw*- zrght(TstWXuL5KzH*AQT%nnb9nj;S@Du!saR88 z@aQx+yV!7)%-Iq?XP{G`7BbErb8pT)xU`R2qM}mnXC$6V;gq{FKw>0f@9Y zlY!&ygI~>*l%TYr%^8^o|Z)=ho!JY6yPF_CVJSvB_wBGFskxYaEpB~=`SJc=QS z4`5~d@YN6r*h*utFOC4|-D@aY;JSc%p*8lISM$Cs(!Us&=#eeS(zF&?&hi`PZWfh& zWAaDsUOkNs&Zj`t{*`EGX(~Q*SmVlcNXnEEx%k)3=x&RDPf*vaMY(91Hwf~AjDyW% z6{q2e_seSOKvXtfKbpHMyLfJ%Z8?6ThR^WB2%!OVx2lSHWnkrsknS5}oS-&!O=hb1 z#%Djh&eWU6CRtxkktJa<2l4~I#6!C zG1)8#T>K2MpV8YK#w(S_8+l){6Tt~$x2zHTv1XX$Kx*Q&)|-;Uc`oHgNYi^WvxB<^=jlTUMOY~CBA_tyC3^y-BM+*jFqd6ziaps z^))%Qk8;*a`i2uNvIw;mmAYZaVjb(~;dL0*0FK48{BVe0kh~2p&A~VQE)ABNebAPW z!A`~ljn)GJ#10qd&Iyp7vv*Q`Ca2Y>$4>X3(J&At%OeYe+BSBtr+}%gX;xRoKXW5X zZk~>$qaEaY7x=L=89<9@#y2n&i8|N9&j?8vSjbia#Zp@2K0 z7#=Cb<99tkES|cz2{uuCrRQ*dzQ^b4E{)RH%r|t7FycTQ;X{>k&f=;Z7NH5>mFg5Q zB4$U@EMQWfTmg*#VmjwNFb{FVgc{dBrZHmBodHmJn7>i6MrW!OBwgp=7}_HbiF!Gj zWR7B5eOTd3eJUy63j=Ssb+-6^TmhiK3D<)7g~j@e0A@oF5I0^h(M?Pt26wkr5c1lf zmz@vebJsoy@@Kq@r2`Pl(JQcPYo9I9*XK>C5YgRN%Hh;T$~ls7o=35SAdaAo;|E79 zapzkkL#NM_Bhq@>iJLR}ilz5|Vec?(HCa|Q;x@Fmb~-y>hzlB6m!v*ybw=-HYmOZ1 z5mnh@S8?&9ena|aZD|Jb5EbiQ-rsdB1Xv};0nbl{m6q4e{;Z|MB!NZ#Q;5sU{>CO} zZti7JLnwKcMYyXnF_ZT;n7%v6somDhA00WgEfEU!&Na>-bFa*#1LdfBWCdo&Tey{` z?))#s@zKc<@BSjBFD1dOJD!(~BEv^gW+v{)hgy_f`*#WD?A5!2Y0QT3#wx{^DBu1- zLz;{Ww(cD=tl}&Lr|Us8%?X=ruO@qHN>J#X3u@0NFtjEK=T<83xBNaZW$5thDPOH! zaNUt0iFIv$YS;^$;fgg^C_B6QHpP0$lolN1ni*d}!hC>~xq80e5j1Me{;78_q1#+{ zodQseeo)fo+?$?gszm5gLy9`ll>)$62+$D8`S%YaYfpZ5P&n0pvqR_1y=-gmP&O%{vFezHvi8QE zzNg!a9q4|#{3|oE`77=E>U1z*$pw*tI-Ld2p&-v7eCxo|aE;7!W!4GtuRKsC zXzbk`vB>d1Ov)+@>?XGKd#5&~-jkLEP5#E&BO1=8GvT9Pc-*32HaS~ynH;+~3s{Xu#ASQD3p3ZlAr7YT< zSL;llb1<*!eUG~#t27_hh0LFnL_0v!UfkxOgZPVm>H2a0oc$4wv1~cH+G$_~B#$84 zksoy(DC;2eQQsb0->znvA@%?X_UB9Czk=e3Q>GlIN}nt32%@AnIZWlBtLjLSD$3Kr zz8Cr_Z4kM2tcPEwX(KN7XD#KFGMF!PvIS$`kXvC=S09oAP`kI;qNBR#X6d*Wlh?PW zZ=MqhM5UvLT4YP@zRUBopQx_^U%%Iw%u-^_G-5LfETW2yfzTOZQgd8~XP=csfU?l~ zn=z*s+@2qI32f{QFsW}Xu`?tLLIH1}Lhg_p;%5dKIte%i`|{0jQs~&yuXt|cT@|yG z{tO*t#-M}ev=hPN%DuBSwBNP8d`KUT_z6F~slq~+r6;uA(kx3y6{nJw(5N^4zHX3X8pS<#-U+CLtITCeu6nXUn#Y)q%X+BY)V)o z5$z^^=rc((S>TXnNk2*=NA<)$8*tTX<&9VQochH4+o=!)?5`}h#hb_dOo0n==Y)U_gpi=*QUJR1i=&84)e$D&M)&f%XmES1z~?{u_o7B%x4 z`qYRO$c=*(OZ9j4QCcE+;3v}nrvyyUr9Pj2%haPMN}jeeeYg&)RPQMQ;ERD{7wUqm zo6mQ`b$pr%H`2d@6Hxfk&c*yNfzQosOw?JLffW!d4zz_)O7@l25tga2_{wkq*?YYE z#>M+MCT3=q7;W+cz3;H7M}-LCQaM`oqYCfr0K~s__?B3St zR9`T|+;pc9CaPEn$KS&BQTHO7na9^zgDW4|Mw@Z?LV8O3jJD5{M+6`o(d|e-Z8x}u z#BLTAj9=u%&DXbyF0I>VnDG2!$QU#f8vJhZQY{qFom43TnPXQiFSkT=c4X+J`K*GR zV+UI-jbXZ~TI2c)ZhV5!A>2@Zti^ar9E^w?qaRTzZmqxc)F%b<>n-mWhna$c8b@++ z6&FP65;WfJkXU{CDy(5%b^-(rK$^#cQazQQ;VE_JgMVD(aPSRRD8iVKE8>UOZEAb` zD-}mLePi(|MXj_M1A>IqI6>~#?`MJ^tTW)rayZ&JCAttwSsE~ASWOQc^PcyvxZztO z6ICvSX1}h@xDv;@Z5)WD&Z8VWY2PEenF-CvF7G8R9|K9BUI6D zOT+-43EDE8f+6(QTZw6Ls3_mUwbVS-odpxIWtafK3qVuMAJx!1oEB~cs~`frXIc#g z-<&69nCNL%FU<#^wGWf`E3s7It*7ZM7V1sE*YklCN2)e@iOqaMLU$abE#iXbKi$nN`#dRUJZSnEUj!$!6sn(bY)^btCDUP78J&x2DV(y1Q&i$kANOGbc5>#+aj6vhCBgGQ8A*c#FDAHvAajnBRS7?&2ykS8kqu|G zVFSX=CmU1nJ-;6lH3@n!9SFWSAPmfkPkn!lVdl@-%M24X)m0o!3F46z5>h)5HOSTa z{e;rhhu?fC8(Z2&QyyG9Pqt=Hh~?o@jY*waC zvl&Y?g+^s8@gP^UP60^26!q?_T$&p%PATxFF3Mq@nzd7_fal!@-X%v3|61OncDGT~5rpUtJ|3vbj`- zk&{gf`3>wOr^$%?lK1(mA5utpIcy#$yImw;22ZyES$JfLb7#Qe8?Xl^E5|kwzL4ca zTzd?SaXwcTNj59D`t-v#d@HA=MU=AjJW-OsHYWR?NLESRjnS@{3ctN75O2k;2P^d9 zCmF2L4S-J9=3E`-Qx>GRl#VQ?c7=7g<9Pxm6PJf$=t$zbvb|NPG$H`_f{3M(l?-}% z)c0X9d*y?Io%+A~y{}}4q;()FVG(YT_!%q!Qn>;uxMi5IXxqWf+d-o2Y!90#{9Z$Z zjB88=J14zNJUo_J2%@mYCBIHT?;GVl=qka^P9O*(*M=*RLz+|i!a%2vrD6aLH7d9?l{CRYy{oX33PL4TBL44xD&DnzNl2L_(0qP&Odx_`SP=2VuuYT|?R?>t zlMu7gAVyhC(&Nsrw-(fyy4)}h89s#XTrAo4Zb_V?dq#2pfOOaHRj`Q^+$S_}{Ki9ATh!PjG{|VKE0Sx#a<+!>|E=% zV8Cc}8wF+>vgMiJuxmTj$_%%qS206_+q*SZ*RAg{IKnx%5IJHWDp(ikzNk-ED?aCl zz=xA)-jW=jTGonX_xo2bmw%DMYn?!IHf^UbqM%%XB#Av=K7eTth+f_4s_bhV)#uWnwK2<%dZ)$UbG!)mP6|Ik! z6domq{=2}Uc@e`FJHRk3*;>4q7tOX4(FqqHGb?|n%<(|oMb^`O#N}T#XKV8uM8Rw2 z$VA>Ky#>3iUWFIFdJY)D!X>udL_o2vjzPkud>&(F$w<~$*V0MrnX0XuU>Cig8hfMY z>$aC4;2UIt zdl8C9vgJ@`&VnozV-+V=hUz;t<%QRTY5l|IsM{@r8;YVp7K(O?_XlR zWQ(UWrE)*;cwmG9`e78 zZnP09r6i?sc6nKcaq#3vRv4~>#*>EZQ<_=#>a}eRIFfKV>2(6eA$=HaR>b6+`JUiL z+1@?yn%65F$*CPu;%OV`jxFx<)h79vH&mk-cv3+E1e{ib- zVj>$Ln$xY$ht2bp2A4`<))?B&e34AaoH1X73Wo)G7Gh{IE%^M!;3pw^)^?5!v+`~z zK>Yh_vPnjH_VWE|QG>YXOgilRW2+;x6jAomZxgMAQd8)EM5E_Pd?yJHaH~=n;q!HB zlvv{A%ob@^7@kEoC7!>~E|_a)CjaZ@kT!GHrtjFbSHI&8AgZ&6fjzeEHIk|>_ktUC zM61dO-|sVWQ7Jn7vMUCSw`)PTa}?nV-4yM7{_q0seS-B>00 z?kO!4mOQUzU@sUoi5$f$3teBJ!$>n)W+duFt*;gxv7{Xp=L{$V_~ z2YG-|seS3<{@OI{-&5Qh_z7-fle0NuWSI-w$>cT7ts5zLCWNt*yL*|M1MaTAy|dLg z59iSA>$VF)f>43Tsi1zK`+vVOpFC$dFWsMJz|&b*k5R)fzU&0A47^cN*iPyI0DoGy zND?0ckV9fFnqJj4*cqTF#Di#0=1n)Kk}P1o65z; zukUX7sHEhJej zPrK`|6930PR{WX+RM9{E*hIz6ab+EE1AbFbp6`NRxDQe+D!fhqlp89`{^KNr51xO=bhE3x{^w?Dbx^GHp)Oa=ddzz=2F$`Hd>Nqi1es`tb9auJH2{k+shr zJefZ--(t)A0tbz$2e1M>vDuf3A@k(eUx}-GC z-Fx;(3>e=xfKVrEwVtF-&$iZvCMzg2!@69zE|^^R$tFU*q}16ICXVa>P&3sdt%{3 zalFYmSR+Bke3tLb7tY6H(csTZBz5sL*+gS+@&LpYx^uyM_tM_Ry`Q88DODB(aj@K^$&IHd{q1;$A?>xYhxd<^zL7hq= zg1oMz2HJ(+(D5URGtth)TG7DiNr9G5gVw;Q6P^OpuE%%p)FADE`y=AQ!YH*ceKyZM zpE%>o>;=&IK4W`}oKS#~1JoG4>af|uTj_We@>&Ld0*saaN76F?!^xBi;FCYGSerRw zqs9YLjH zUFPLz90{Ov5X9pRoV%YNWD5XNbH_gE;tG-2daG)=S$20XAc#9s-)holXn%F%=C9v4 zYf*Prr$G3$GE~38977cO9wD)O73T})H|^=2o4o_G&(>TKSky@YKb5>Y5`2Cl@?nRpxSRIzp3`Z$XVhlFxc0waGA%V@i z{qbI7G7gHa?T-CcuHkVV!xewfG0+Cr&9h+waPe=@cAZkHL~ocirEcpN(NLh)zo(n` zCj3J@nA55-#&WN(8&(}8pY;bc=MU0^vBY|M;bF)~w5X7BlM>Gx0WJN*nwQSAE$$G$ zL4=Tf@JR>t3Ayu8Q0@0`Av7ghHxK)&X%&?dCk%@4HJ6zg!s-L^UC}QanAGQG(SRRb zt}~Mcc=*Ruo@!+}IibV+OrZNfIWQBwy%ENJ9b`8x-~^ zo79wL6wtXqVq{kq)0~!^i$kL@lVpn(fFc1v-KzONZFb z|KzdBt1SH~FVtO2(5;3+7*xiE$Q}tssm%byWZ8x=9PfKpAO@xF2=wvYdr;o=>IOBRXW%JgJfm7GLnMlf# zB7xFl(CF!uSQwRgXT`>RQ9esup2Zq{;vTfCs*>rbi<)xV?h#s7O*$vs9TZMcam%uktF;)snVC1)>=j^Etxa+)$(FOL1M|3TlZLAc z&_U2+Nu!p(Cj4B@Y{BJ-tQzlh9*P;6dwsff%gNOPyxiswS(8BVm~SQ_RAj1e?69FU zDwr=&f+h{u%Xm8|tCYi=UH=){b|ZddZR^xIYgr-tP7w}Yx^v{LkfPLdvuYUp8q___ z0N5QL%FwHxOl&+>$L>!AdkO^)@t) zhU@ZERY80bmgEdZ=Q8nk5@ggsfo|E-jh~4`mv`MNy6g5dm&_O+fan4URyb=@`^{r; z)=}HaXh$@MSQY^ysz&JE|Go6NB2#Ic>pUthgdxykA+1=ps?G!Hg#r(>1ts7J+jel{dLpV|~pQ96rYCBzL z%eArT@j>8I#HgLAn?EpG0Bo39v-&8>ea50>JY`xpKPMzsCH^c{o1=zo?Z z=NTM7g7lD*pH0Xwjia_mh@zoA(Ub|fo2^L)4M9B@4gWn?QQ&M~B z+>L08OKz*H{VH$5Z~a|j+AOG8P@wgT9fbnzB1t!(d=Da}m3|^%TM9&fvIKuX^(4z3 zf?uvFFI(2c@Bi1Q>Zjy~wNQ9A8^G&^IM?1RJ~JAw@FdB^*XjpCYmJ5^4Ob<(&=Ppt;h*IPtd}i%%PJva zT4|vBI+8!1hetk#i090^@uo!)@=d*aUH0e2Ao02+tD4g-5@8-&7}Xq@cM2a~-8PaF zBD)R5J$#v@qS>$QUrl55-HS)+nazZc(n=Lxz`JMJ>ac)izUCzFkBcWW)7WcYZuU;E z^-ONYgQ=Om6Bu2Q%-N9&zZr`k%x3Li*c!h!wYyDgw)8tT~bt@-X`o5O8to7bO2>F6dJOLz6xXG z9g_gY0gSdlf4K+|hOFFnBS{*>z%S=&=o3$wsNhYD176eOb?6ge-qWwl>JG_CP50v4 zyyIr$DQx&vw=6G0NM-7=Sox?6B@2Fke`8|b<#_Xa;cCmH7W!XJsRWL-qeq@6#2{k) zGxvVx%+yArt@f2`bRnPtVH_Sc85X)Q30BR{zS+G2kHmC~mb*AyWce{a=$>pZ)NP{T zBw^Q&WGW3lq(kAZlQ#)$U%wjK^zLa)t=(lk{7&hsDQMvICWYVTA=wMVAJJ^6nYS&( zWp&JD7{ImXThF**Q&P!_2mP9#Rtk~Xjp7UxFNH<;`KMV!;g<$S7ZS};AU|~}>0pXu zN`E5hnv`yVkE$0y_abXDWVu(5>Z||%zXAFGWu?S_l-qR{5Q^RTFa!hyI*$+f9+qYv zRzenTR=@`W7YC;xD+eblC#N)I}2wgclQ5toY^g`I0VfsxVX&BInAxO s%=s+LxUB`atT@bhIjlIj1T5Kr8f-xSVx0r%;RB}dK~<(v>Qm_d0Ur0CKmY&$ literal 0 Hc$@ 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 literal 0 Hc$@render('index.html.twig', [ + 'modules_programs' => GeneratedData::modules_programs, + 'lang' => $_locale, + 'search_form' => $this->createSearchForm()->createView(), + 'all_application_names' => $this->getAllApplicationsName($_locale, $translator), + 'languages' => GeneratedData::languagelist, + 'branch_descriptions' => GeneratedData::branch_description, + ]); + } + + /** + * @Route("/{_locale}/search", name="search", defaults={"_locale": "en"}, requirements={"_locale": "%app.locales%"}) + * @param string $_locale + * @param Request $request + * @param TranslatorInterface $translator + * @return Response + * @throws \Psr\Cache\InvalidArgumentException + */ + public function searchAction(string $_locale, Request $request, TranslatorInterface $translator): Response + { + // create search form + $search = new Search(); + $form = $this->createForm(SearchBarType::class, $search, [ + 'action' => $this->generateUrl('search'), + ]); + + $form->handleRequest($request); + + if ($form->isSubmitted() && $form->isValid()) { + // do the search with the provided search term + $searchTerm = $search->getSearchTerm(); + $cache = new FilesystemAdapter(); + $searchResult = []; + $searchTermSimple = str_replace('/', '-', $searchTerm); + $searchResultCache = $cache->getItem('search.' . $_locale . '.' . $searchTermSimple); + + if (!$searchResultCache->isHit()) { + foreach (GeneratedData::modules_programs as $module => $moduleContent) { + foreach ($moduleContent as $submodule) { + $array = explode('/', $submodule); + if (array_key_exists($_locale, GeneratedData::programs_docs[$submodule])) { + $branch_available = GeneratedData::programs_docs[$submodule][$_locale]; + + if (count($array) == 1 && strpos(($displayName = $translator->trans($submodule, [], "modules")), $searchTerm) !== false) { + $searchResult[$module][$submodule] = ["branch" => $branch_available]; + } elseif (count($array) == 2 + && strpos(($displayName = $translator->trans($array[1], [], "modules")), $searchTerm) !== false) { + $searchResult[$module][$array[0]][$array[1]] = ["branch" => $branch_available]; + } + } + } + } + $searchResultCache->set($searchResult); + $cache->save($searchResultCache); + } else { + $searchResult = $searchResultCache->get(); + } + + + return $this->render('search.html.twig', [ + 'lang' => $_locale, + 'search_term' => $search->getSearchTerm(), + 'search_result' => $searchResult, + 'branch_descriptions' => GeneratedData::branch_description, + 'all_application_names' => $this->getAllApplicationsName($_locale, $translator), + 'search_form' => $this->createSearchForm()->createView(), + 'languages' => GeneratedData::languagelist, + ]); + } + + // no search term provided + // create page with only search form + return $this->render('search.html.twig', [ + 'lang' => $_locale, + 'search_result' => null, + 'all_application_names' => $this->getAllApplicationsName($_locale, $translator), + 'search_form' => $this->createSearchForm()->createView(), + 'languages' => GeneratedData::languagelist, + 'branch_descriptions' => GeneratedData::branch_description, + ]); + + } + + /** + * @Route("/{_locale}/{module}", name="module", defaults={"_locale": "en"}, requirements={"_locale": "%app.locales%"}) + * @param string $_locale + * @param string $module + * @param TranslatorInterface $translator + * @return Response + * @throws \Exception + */ + public function moduleAction(string $_locale, string $module, TranslatorInterface $translator): Response + { + if (!array_key_exists($module, GeneratedData::modules_programs)) { + throw new \Exception("Module is unknown"); + } + + $submodules = []; + + foreach (GeneratedData::modules_programs[$module] as $submodule) { + $array = explode('/', $submodule); + if (array_key_exists($_locale, GeneratedData::programs_docs[$submodule])) { + $branch_available = GeneratedData::programs_docs[$submodule][$_locale]; + if (count($array) == 1) { + $submodules[$submodule] = ["branch" => $branch_available]; + } elseif (count($array) == 2) { + $submodules[$array[0]][$array[1]] = ["branch" => $branch_available]; + } + } + } + + return $this->render('module.html.twig', [ + 'lang' => $_locale, + 'module' => $module, + 'categories' => $submodules, + 'branch_descriptions' => GeneratedData::branch_description, + 'search_form' => $this->createSearchForm()->createView(), + 'all_application_names' => $this->getAllApplicationsName($_locale, $translator), + 'languages' => GeneratedData::languagelist, + ]); + } + + public function languageListDropdown() + { + return $this->render( + 'language_dropdown.html.twig', [ + 'languages' => GeneratedData::languagelist, + 'full_language_name' => StaticAppData::full_language_name, + ] + ); + } + + /** + * @return SearchBarType + */ + private function createSearchForm(): FormInterface + { + // create search form + $search = new Search(); + $form = $this->createForm(SearchBarType::class, $search, [ + 'action' => $this->generateUrl('search'), + ]); + return $form; + } + + private function getAllApplicationsName(string $_locale, TranslatorInterface $translator): string + { + $cache = new FilesystemAdapter(); + $applicationsNameCache = $cache->getItem('applicationsName.' . $_locale); + + if (!$applicationsNameCache->isHit()) { + $applicationsName = []; + foreach (GeneratedData::modules_programs as $module => $moduleContent) { + foreach ($moduleContent as $submodule) { + $array = explode('/', $submodule); + if (count($array) == 1) { + $applicationsName[] = $translator->trans($submodule, [], "modules"); + } elseif (count($array) == 2) { + $applicationsName[] = $translator->trans($array[1], [], "modules"); + } + } + } + $applicationsNameString = ''; + foreach ($applicationsName as $name) { + $applicationsNameString .= $name . ', '; + } + $applicationsNameCache->set($applicationsNameString); + $cache->save($applicationsNameCache); + return $applicationsNameString; + } else { + return $applicationsNameCache->get(); + } + } + + /** + * Compare branches (priority), used by usort()/uasort() + * @param string $b1 + * @param string $b2 + * @return string + */ + function cmp_branches(string $b1, string $b2): string + { + $base_array = array('trunk5' => 0, 'stable5' => 1, 'trunk4' => 2, 'stable4' => 3); + if (in_array($b1, $base_array) && in_array($b2, $base_array)) { + return $base_array[$b1] - $base_array[$b2]; + } + } + + + /** + * Return the proper package/namespace for the specified application and + * branch, using the knowledge generated by the documentation + * generator. + * @param string $application + * @param string $branch + * @return string + */ + function get_namespace(string $application, string $branch): string + { + if (array_key_exists($application, GeneratedData::programs_multiplemodules)) { + // multiple packages/namespaces: check in the special list of programs_docs + // with multiple modules if there is specific module for the current branch. + foreach (GeneratedData::programs_multiplemodules[$application] as $s_branch => $s_module) { + if ($s_branch == $branch) { + return $s_module; + } + } + } else { + global $modules_programs; + // single module for all branches, find it + foreach ($modules_programs as $module => $module_apps) { + if (in_array($application, $module_apps)) { + return $module; + } + } + } + } + + function build_url(string $application = '', string $package = '', string $lang = '', string $branch = '', string $html_path = ''): string + { + $params = array(); + if (strlen($branch) > 0) + $params[] = "branch=" . $branch; + if (strlen($lang) > 0) + $params[] = "language=" . $lang; + if (strlen($package) > 0) + $params[] = "package=" . $package; + if (strlen($application) > 0) + $params[] = "application=" . $application; + if (strlen($html_path) > 0) + $params[] = "path=" . $html_path; + return "/index.php?" . implode('&', $params); + } + + /** + * Get path to handbook + * @param string $branch + * @param string $lang + * @param string $application + * @param string $html_path + * @return string + */ + function build_path(string $branch = '', string $lang = '', string $application = '', string $html_path = ''): string + { + $package = $this->get_namespace($application, $branch); + return $branch . + "/" . $lang . + "/" . $package . + "/" . $application . + "/" . $html_path; + } + + /** + * Check if translation exist + * @param string $app + * @param string $lang + * @return bool + */ + function language_for_application_exist(string $app, string $lang): bool + { + return (array_key_exists($lang, $this->programs_docs[$app])); + } + + /** + * Check if text exist for the specified branch and language + * @param $app + * @param $lang + * @param $branch + * @return string the branch + */ + function branch_exist($app, $lang, $branch): string + { + // no translations for the specified application in the current language + if (!language_for_application_exist($app, $lang)) { + return ""; + } + // Handle old URL - compatibility with the old schema + $compatibility_branches = array( + "development" => array("trunk5", "trunk4"), + "stable" => array("stable5", "stable4"), + ); + // Search in compatibility branches first + if (array_key_exists($branch, $compatibility_branches)) { + foreach ($compatibility_branches[$branch] as $comp_branch) { + # echo "Looking for $comp_branch into ".var_dump($this->programs_docs[$app][$lang]); + if (in_array($comp_branch, $this->programs_docs[$app][$lang])) { + return $comp_branch; + } + } + } + // Normal branch + if (in_array($branch, $this->programs_docs[$app][$lang])) { + return $branch; + } + return ""; + } +} + diff --git a/src/Data/StaticAppData.php b/src/Data/StaticAppData.php new file mode 100644 --- /dev/null +++ b/src/Data/StaticAppData.php @@ -0,0 +1,90 @@ + "English", + "ca" => "Català", + "fr" => "Français", + "de" => "Deutsch", + "uk" => "українська", + ]; +} + +?> diff --git a/src/Entity/Search.php b/src/Entity/Search.php new file mode 100644 --- /dev/null +++ b/src/Entity/Search.php @@ -0,0 +1,24 @@ +searchTerm; + } + + /** + * @param string|null $search + */ + public function setSearchTerm(?string $search): void + { + $this->searchTerm = $search; + } +} \ No newline at end of file diff --git a/src/Form/SearchBarType.php b/src/Form/SearchBarType.php new file mode 100644 --- /dev/null +++ b/src/Form/SearchBarType.php @@ -0,0 +1,28 @@ +add('search_term', SearchType::class, [ + 'translation_domain' => 'app', + ]) + ->add('Search', SubmitType::class, [ + 'label' => 'Search', + 'translation_domain' => 'app' + ]); + } +} \ No newline at end of file diff --git a/src/Kernel.php b/src/Kernel.php new file mode 100644 --- /dev/null +++ b/src/Kernel.php @@ -0,0 +1,58 @@ +getProjectDir().'/var/cache/'.$this->environment; + } + + public function getLogDir() + { + return $this->getProjectDir().'/var/log'; + } + + public function registerBundles() + { + $contents = require $this->getProjectDir().'/config/bundles.php'; + foreach ($contents as $class => $envs) { + if ($envs[$this->environment] ?? $envs['all'] ?? false) { + yield new $class(); + } + } + } + + protected function configureContainer(ContainerBuilder $container, LoaderInterface $loader) + { + $container->addResource(new FileResource($this->getProjectDir().'/config/bundles.php')); + $container->setParameter('container.dumper.inline_class_loader', true); + $confDir = $this->getProjectDir().'/config'; + + $loader->load($confDir.'/{packages}/*'.self::CONFIG_EXTS, 'glob'); + $loader->load($confDir.'/{packages}/'.$this->environment.'/**/*'.self::CONFIG_EXTS, 'glob'); + $loader->load($confDir.'/{services}'.self::CONFIG_EXTS, 'glob'); + $loader->load($confDir.'/{services}_'.$this->environment.self::CONFIG_EXTS, 'glob'); + } + + protected function configureRoutes(RouteCollectionBuilder $routes) + { + $confDir = $this->getProjectDir().'/config'; + + $routes->import($confDir.'/{routes}/*'.self::CONFIG_EXTS, '/', 'glob'); + $routes->import($confDir.'/{routes}/'.$this->environment.'/**/*'.self::CONFIG_EXTS, '/', 'glob'); + $routes->import($confDir.'/{routes}'.self::CONFIG_EXTS, '/', 'glob'); + } +} diff --git a/styles/darkbackground.css b/styles/darkbackground.css deleted file mode 100644 --- a/styles/darkbackground.css +++ /dev/null @@ -1,273 +0,0 @@ -/** - * based on code by Sebastian Faubel - * modified by Christoph Cullmann and Olaf Schmidt - */ - -/* common (X)HTML formats */ - -body { -font-size: 100%; -line-height: 1.2em; /* Note: it is inherited as is, not recalculated! */ -background-color: #000022; -color: white; -font-family: sans-serif; -padding: 0; -margin: 0; -} - -table, td, th { -font-family: sans-serif; -padding: 0; -margin: 0; -text-align: left; -background-color: black; -} - -input, select { -font-size: 0.8em; -line-height: 1em; -} - -form { -margin: 0; -padding: 0; -} - -optgroup { -font-style: normal; -} - -a:link { -color: #CCCCFF; -text-decoration: underline; -} - -a:visited { -color: #FFCCFF; -text-decoration: underline; -} - -a:hover { -text-decoration: underline; -} - -/* navigation header, this is the combined area with logo and section links */ - -#nav_header_top { -text-align: right; -} - -#nav_header_bottom { -clear: left; -padding: 0.3em; -background-color: black; -text-align: left; -} - -#nav_header_logo, #nav_header_logo_right { -display: none; -} - -/* title text */ -#nav_header_title { -float: left; -font-size: 2em; -line-height: 1.4em; -padding-left: 0.2em; -} - -/* location combo */ -#nav_header_location { -} - -/* location URL */ -#nav_header_bottom_left { -vertical-align: middle; - -font-size: 0.8em; -line-height: 1.1em; -} - -/* place for the links to contact, sitemap, ... s*/ -#nav_header_bottom_right { -float: right; -vertical-align: middle; - -font-size: 0.8em; -line-height: 1.1em; -} - -/* main color definitions */ - -.menuheader { -height: 0; -line-height: 0; -margin: 0; -padding: 0; -font-size: 0; -} - -#leftmenu, #rightmenu { -width: 20%; -} - -#leftmenu h2, #rightmenu h2 { -font-size: 1em; -padding-left: 1em; -vertical-align: middle; -background-color: #000022; -color: white; -margin-top: 0; -} - -#rightmenu h3 { -padding: 0.3em 0.8em; -font-size: 1em; -} - -#leftmenu ul, #rightmenu ul { -margin: 0; -padding-left: 0.5em; -padding-bottom: 1em; -} - -#leftmenu ul { -list-style-type: none; -} - -#rightmenu ul { -list-style-type: none; -} - -#leftmenu li, #rightmenu li { -font-size: 0.8em; -} - -#leftmenu li { -margin-left: 1em; -} - -#rightmenu li { -margin-left: 1.5em; -} - -#leftmenu ul ul, #rightmenu ul ul { -margin: 0; -padding-left: 0; -} - -#leftmenu li li, #rightmenu li li{ -font-size: 0.8em; -margin-left: 2em; -list-style-type: square; -} - -/** - * page footer - */ - -/* background + border at top */ -#footer { -background-color: #000022; -} - -/* footer text stuff + image */ -#footer_text { -display: none; -} - -/* classes */ - -/* static IDs, ordered top to bottom */ - -#content { -border: 1px solid white; -padding: 0em 0.7em 1.5em 0.7em; -text-align: justify; -background-color: black; -} - -#content td, #content th { -font-family: sans-serif; -padding: 0.25em; -margin: 0; -text-align: left; -} - -#content h4, #content h3, #content h2, #content h1 { -text-align: left; -line-height: 1em; /* without this lines stick in each other for headings */ -} - -#quicklinks { -font-size: 1em; -text-align: center; -margin-top: 1em; -margin-left: 0.5em; -margin-bottom: 0.5em; -margin-right: 0.5em; -} - -.menu_box { -background-color: black; -} - -#search { -text-align: center; -padding: 0.2em 0.2em 0.2em 0.2em; -} - -#search label { -display: none; -} - -#search input, #search select { -width: 95%; -margin-bottom: 2px; -} - -#hotspot { -font-size: 0.8em; -line-height: 1em; -text-align: center; -padding: 0 0 0.8em 0; -} - -#rightmenu h3 { -margin-bottom: 0; -} - -.newsbox1 { -background-color: #000022; -margin-top: 1em; -margin-bottom: 0.5em; -} - -.newsbox2 { -background-color: black; -margin-top: 1em; -margin-bottom: 0.5em -} - -/* common style for tables used in the page */ -.table_box { -background-color: #000022; -border: 0; -padding: 0; -margin: 0; -border-spacing: 0; -} - -.table_box th { -background-color: #000022; -color: white; -} - -/* hidden stuff */ -.doNotDisplay { -display: none; -} - -@media aural { .doNotDisplay { -display: inline; -}} diff --git a/styles/print-rtl.css b/styles/print-rtl.css deleted file mode 100644 --- a/styles/print-rtl.css +++ /dev/null @@ -1,63 +0,0 @@ -/** - * based on code by Sebastian Faubel - * modified by Christoph Cullmann - */ - -/* common (X)HTML formats */ - -body { -background-color: white; -color: black; -font-family: sans-serif; -padding: 0; -margin: 0; -} - -table, td, th { -font-family: sans-serif; -line-height: 1em; -padding: 0; -margin: 0; -text-align: left; -} - -input, select, textarea { -font-family: sans-serif; -} - -optgroup { -font-style: normal; -} - -a:link { -color: #036; -} - -a:visited { -color: #555AAA; -} - -/* main color definitions */ - -.invisible, #nav_header_logo, #nav_header_location, #nav_header_bottom, #footer, .menuheader, #leftmenu, #rightmenu, #leftmenu h2, #leftmenu ul, #search { -display: none; -width: 0; -overflow: hidden; -} - -#content { -background-color: white; -text-align: justify; -line-height: 1.5em; -background-color: white; -padding-right: 2em; -} - -/* static IDs, ordered top to bottom */ - -/* div { border: 1px solid black; } */ - -/* hidden stuff */ -.doNotDisplay { - display: none; -} \ No newline at end of file diff --git a/styles/print.css b/styles/print.css deleted file mode 100644 --- a/styles/print.css +++ /dev/null @@ -1,63 +0,0 @@ -/** - * based on code by Sebastian Faubel - * modified by Christoph Cullmann - */ - -/* common (X)HTML formats */ - -body { -background-color: white; -color: black; -font-family: sans-serif; -padding: 0; -margin: 0; -} - -table, td, th { -font-family: sans-serif; -line-height: 1em; -padding: 0; -margin: 0; -text-align: left; -} - -input, select, textarea { -font-family: sans-serif; -} - -optgroup { -font-style: normal; -} - -a:link { -color: #036; -} - -a:visited { -color: #555AAA; -} - -/* main color definitions */ - -.invisible, #nav_header_logo, #nav_header_location, #nav_header_bottom, #footer, .menuheader, #leftmenu, #rightmenu, #leftmenu h2, #leftmenu ul, #search, #footer { -display: none; -width: 0; -overflow: hidden; -} - -#content { -background-color: white; -text-align: justify; -line-height: 1.5em; -background-color: white; -padding-right: 2em; -} - -/* static IDs, ordered top to bottom */ - -/* div { border: 1px solid black; } */ - -/* hidden stuff */ -.doNotDisplay { - display: none; -} \ No newline at end of file diff --git a/styles/standard-rtl.css b/styles/standard-rtl.css deleted file mode 100644 --- a/styles/standard-rtl.css +++ /dev/null @@ -1,360 +0,0 @@ -/** - * based on code by Sebastian Faubel - * modified by Christoph Cullmann and Olaf Schmidt - */ - -/* common (X)HTML formats */ - -body { -font-size: 100%; -line-height: 1.2em; /* Note: it is inherited as is, not recalculated! */ -background-color: white; -color: black; -font-family: sans-serif; -padding: 0; -margin: 0; -} - -table, td, th { -font-family: sans-serif; -padding: 0; -margin: 0; -} - -input, select { -font-size: 0.8em; -line-height: 1em; -} - -form { -margin: 0; -padding: 0; -} - -optgroup { -font-style: normal; -} - -a:link { -color: #0000C0; -text-decoration: none; -} - -a:visited { -color: #800080; -text-decoration: none; -} - -a:hover { -text-decoration: underline; -} - -/* navigation header, this is the combined area with logo and section links */ - -#nav_header_top { -height: 52px; -background-color: #418ade; -border-bottom: 1px solid #000000; -} - -#nav_header_bottom { -padding: 6px 6px 6px 84px; -background-color: #dfe7f3; -border-bottom: 1px solid #000000; -} - -#nav_header_logo { -float: left; -padding: 10px; -} - -#nav_header_logo a img { -width: 64px; -height: 64px; -} - -#nav_header_logo_right { -float: right; -padding: 10px; -} - -/* title text */ -#nav_header_title { -position: absolute; -top: 12px; -left: 86px; -border: 0px; -font-size: 32px; -font-weight: bold; -color: white; -white-space: nowrap; - -line-height: 36px; -} - -/* location combo */ -#nav_header_location { -position: absolute; -top: 12px; -right: 8px; -border: 0px; -color: #444; -vertical-align: middle; -white-space: nowrap; - -font-size: 14px; -} - -/* location URL */ -#nav_header_bottom_left { -vertical-align: middle; - -font-size: 0.8em; -line-height: 1.1em; -} - -/* place for the links to contact, sitemap, ... s*/ -#nav_header_bottom_right { -float: left; -vertical-align: middle; - -font-size: 0.8em; -line-height: 1.1em; -} - -/* main color definitions */ - -.menuheader { -height: 0; -line-height: 0; -margin: 0; -padding: 0; -font-size: 0; -} - -#leftmenu, #rightmenu { -width: 20%; -} - -#leftmenu h2, #rightmenu h2 { -font-size: 1em; -padding-right: 1em; -vertical-align: middle; -background-color: #418ade; -border-top: 0.3em solid #418ade; -border-bottom: 0.3em solid #418ade; -color: white; -margin-top: 0; -} - -#rightmenu h3 { -padding: 0.3em 0.8em; -font-size: 1em; -margin-bottom: 0; -} - -#leftmenu ul, #rightmenu ul { -margin: 0; -padding-right: 0.5em; -padding-bottom: 1em; -} - -#leftmenu ul { -list-style-type: none; -} - -#rightmenu ul { -list-style-type: none; -} - -#leftmenu li, #rightmenu li { -font-size: 0.8em; -} - -#leftmenu li { -margin-right: 1em; -} - -#rightmenu li { -margin-right: 1.5em; -} - -#leftmenu ul ul, #rightmenu ul ul { -margin: 0; -padding-right: 0; -} - -#leftmenu li li, #rightmenu li li { -font-size: 0.8em; -margin-right: 2em; -} - -li.here a:link, li.here a:visited, li.here li.here a:link, li.here li.here a:visited { -text-decoration: underline; -} - -li.here li a:link, li.here li a:visited { -text-decoration: none; -} - -li.here a:hover, li.here li a:hover, li.here li.here a:hover { -text-decoration: underline; -} - -/** - * page footer - */ - -/* background + border at top */ -#footer { -border-top: 1px solid #000000; -background-image: url(../images/footer_bg.png); -background-repeat: repeat-x; -background-position: bottom left; -width: 100%; -height: 100px; -} - -/* left footer, contains the text */ -#footer_text { -left: 0px; -text-align: right; -padding: 0em 1.5em 0em 1.5em; -clear: both; -background-image: url(../images/footer_left.png); -background-repeat: no-repeat; -background-position: bottom left; -width: 100%; -height: 100px; -bottom:0px; -} - -/* classes */ - -#main, #content { -clear: both; -} - -#content { -background-color: white; -padding: 0.5em 0.7em 1.5em 0.7em; -text-align: justify; -} - -#content td, #content th { -font-family: sans-serif; -padding: 0.25em; -margin: 0; -text-align: left; -} - -#content h4, #content h3, #content h2, #content h1 { -color: #418ade; -line-height: 1em; /* without this lines stick in each other for headings */ -} - -#quicklinks { -background-color: #E6F0F9; -font-size: 1em; -padding: 1em; -text-align: center; -margin-top: 1em; -margin-left: 0.5em; -margin-bottom: 0.5em; -margin-right: 0.5em; -} - -#leftmenu, #rightmenu { -background-color: white; -color: #036; -} - -.menu_box { -border-top: 8px solid white; -border-right: 8px solid white; -border-left: 8px solid white; - -background-color: #dfe7f3; -} - -#search { -text-align: center; -padding: 0.2em 0.2em 0.2em 0.2em; -} - -#search label { -display: none; -} - -#search input, #search select { -width: 95%; -margin-bottom: 2px; -} - -#hotspot { -font-size: 0.8em; -line-height: 1em; -text-align: center; -padding: 0 0 0.8em 0; -} - -.newsbox1 { -background-color: #E6F0F9; -margin-top: 1em; -margin-bottom: 0.5em; -} - -.newsbox2 { -background-color: white; -margin-top: 1em; -margin-bottom: 0.5em -} - -/* common style for tables used in the page */ -.table_box { -background-color: #dfe7f3; -border: 0; -padding: 0; -margin: 0; -border-spacing: 0; -} - -.table_box th { -background-color: #418ade; -color: white; -} - -/* needed for edu.kde.org */ -.contentheader, #content h4.contentheader { -font-size: 1em; -font-weight: bold; -line-height: 1.2em; -padding: 0.1em 0 0.2em 1em; -vertical-align: middle; -background-color: #418ade; -color: white; -margin: 0; -} - -/* Very common pattern on developer.kde.org: a list of links - to other pages with a brief italicized description below the link. - Can be created with
  • link

  • */ - -ul.linklist p { - font-size: small; - font-style: italic; -} - -ul.linklist p em { - font-style: normal; - font-weight: bold; -} - -/* hidden stuff */ -.doNotDisplay { -display: none; -} - -@media aural { .doNotDisplay { -display: inline; -}} diff --git a/styles/standard.css b/styles/standard.css deleted file mode 100644 --- a/styles/standard.css +++ /dev/null @@ -1,368 +0,0 @@ -/** - * based on code by Sebastian Faubel - * modified by Christoph Cullmann and Olaf Schmidt - */ - -/* common (X)HTML formats */ - -body { -font-size: 100%; -line-height: 1.2em; /* Note: it is inherited as is, not recalculated! */ -background-color: white; -color: black; -font-family: sans-serif; -padding: 0; -margin: 0; -} - -table, td, th { -font-family: sans-serif; -padding: 0; -margin: 0; -text-align: left; -} - -input, select { -font-size: 0.8em; -line-height: 1em; -} - -form { -margin: 0; -padding: 0; -} - -optgroup { -font-style: normal; -} - -a:link { -color: #0000C0; -text-decoration: none; -} - -a:visited { -color: #800080; -text-decoration: none; -} - -a:hover { -text-decoration: underline; -} - -/* navigation header, this is the combined area with logo and section links */ - -#nav_header_top { -height: 52px; - -text-align: right; - -background-color: #418ade; -border-bottom: 1px solid #000000; -} - -#nav_header_bottom { -padding: 6px 6px 6px 84px; -background-color: #dfe7f3; -border-bottom: 1px solid #000000; - -text-align: left; -} - -#nav_header_logo { -float: left; -padding: 10px; -} - -#nav_header_logo a img { -width: 64px; -height: 64px; -} - -#nav_header_logo_right { -float: right; -padding: 10px; -} - -/* title text */ -#nav_header_title { -position: absolute; -top: 12px; -left: 86px; -border: 0px; -font-size: 32px; -font-weight: bold; -color: white; -white-space: nowrap; - -line-height: 36px; -} - -/* location combo */ -#nav_header_location { -position: absolute; -top: 12px; -right: 8px; -border: 0px; -color: #444; -vertical-align: middle; -white-space: nowrap; - -font-size: 14px; -} - -/* location URL */ -#nav_header_bottom_left { -vertical-align: middle; - -font-size: 0.8em; -line-height: 1.1em; -} - -/* place for the links to contact, sitemap, ... s*/ -#nav_header_bottom_right { -float: right; -vertical-align: middle; - -font-size: 0.8em; -line-height: 1.1em; -} - -/* main color definitions */ - -.menuheader { -height: 0; -line-height: 0; -margin: 0; -padding: 0; -font-size: 0; -} - -#leftmenu, #rightmenu { -width: 20%; -} - -#leftmenu h2, #rightmenu h2 { -font-size: 1em; -padding-left: 1em; -vertical-align: middle; -background-color: #418ade; -border-top: 0.3em solid #418ade; -border-bottom: 0.3em solid #418ade; -color: white; -margin-top: 0; -} - -#rightmenu h3 { -padding: 0.3em 0.8em; -font-size: 1em; -margin-bottom: 0; -} - -#leftmenu ul, #rightmenu ul { -margin: 0; -padding-left: 0.5em; -padding-bottom: 1em; -} - -#leftmenu ul { -list-style-type: none; -} - -#rightmenu ul { -list-style-type: none; -} - -#leftmenu li, #rightmenu li { -font-size: 0.8em; -} - -#leftmenu li { -margin-left: 1em; -} - -#rightmenu li { -margin-left: 1.5em; -} - -#leftmenu ul ul, #rightmenu ul ul { -margin: 0; -padding-left: 0; -} - -#leftmenu li li, #rightmenu li li { -font-size: 0.8em; -margin-left: 2em; -} - -li.here a:link, li.here a:visited, li.here li.here a:link, li.here li.here a:visited { -text-decoration: underline; -} - -li.here li a:link, li.here li a:visited { -text-decoration: none; -} - -li.here a:hover, li.here li a:hover, li.here li.here a:hover { -text-decoration: underline; -} - -/** - * page footer - */ - -/* background + border at top */ -#footer { -border-top: 1px solid #000000; -background-image: url(../images/footer_bg.png); -background-repeat: repeat-x; -background-position: bottom left; -width: 100%; -height: 100px; -} - -/* left footer, contains the text */ -#footer_text { -left: 0px; -text-align: left; -padding: 0em 1.5em 0em 1.5em; -clear: both; -background-image: url(../images/footer_right.png); -background-repeat: no-repeat; -background-position: bottom right; -width: 100%; -height: 100px; -bottom:0px; -} - -/* classes */ - -#main, #content { -clear: both; -} - -#content { -background-color: white; -padding: 0.5em 0.7em 1.5em 0.7em; -text-align: justify; -} - -#content td, #content th { -font-family: sans-serif; -padding: 0.25em; -margin: 0; -text-align: left; -} - -#content h4, #content h3, #content h2, #content h1 { -color: #418ade; -text-align: left; -line-height: 1em; /* without this lines stick in each other for headings */ -} - -#quicklinks { -background-color: #E6F0F9; -font-size: 1em; -padding: 1em; -text-align: center; -margin-top: 1em; -margin-left: 0.5em; -margin-bottom: 0.5em; -margin-right: 0.5em; -} - -#leftmenu, #rightmenu { -background-color: white; -color: #036; -} - -.menu_box { -border-top: 8px solid white; - -border-right: 8px solid white; -border-left: 8px solid white; - -background-color: #dfe7f3; -} - -#search { -text-align: center; -padding: 0.2em 0.2em 0.2em 0.2em; -} - -#search label { -display: none; -} - -#search input, #search select { -width: 95%; -margin-bottom: 2px; -} - -#hotspot { -font-size: 0.8em; -line-height: 1em; -text-align: center; -padding: 0 0 0.8em 0; -} - -.newsbox1 { -background-color: #E6F0F9; -margin-top: 1em; -margin-bottom: 0.5em; -} - -.newsbox2 { -background-color: white; -margin-top: 1em; -margin-bottom: 0.5em -} - -/* common style for tables used in the page */ -.table_box { -background-color: #dfe7f3; -border: 0; -padding: 0; -margin: 0; -border-spacing: 0; -} - -.table_box th { -background-color: #418ade; -color: white; -} - -/* needed for edu.kde.org */ -.contentheader, #content h4.contentheader { -font-size: 1em; -font-weight: bold; -line-height: 1.2em; -padding: 0.1em 0 0.2em 1em; -vertical-align: middle; -background-color: #418ade; -color: white; -margin: 0; -} - -/* Very common pattern on developer.kde.org: a list of links - to other pages with a brief italicized description below the link. - Can be created with
  • link

  • */ - -ul.linklist p { - font-size: small; - font-style: italic; -} - -ul.linklist p em { - font-style: normal; - font-weight: bold; -} - -/* hidden stuff */ -.doNotDisplay { -display: none; -} - -@media aural { .doNotDisplay { -display: inline; -}} diff --git a/styles/yellowonblue.css b/styles/yellowonblue.css deleted file mode 100644 --- a/styles/yellowonblue.css +++ /dev/null @@ -1,273 +0,0 @@ -/** - * based on code by Sebastian Faubel - * modified by Christoph Cullmann and Olaf Schmidt - */ - -/* common (X)HTML formats */ - -body { -font-size: 100%; -line-height: 1.2em; /* Note: it is inherited as is, not recalculated! */ -background-color: #000099; -color: #ffff00; -font-family: sans-serif; -padding: 0; -margin: 0; -} - -table, td, th { -font-family: sans-serif; -padding: 0; -margin: 0; -text-align: left; -background-color: #000066; -} - -input, select { -font-size: 0.8em; -line-height: 1em; -} - -form { -margin: 0; -padding: 0; -} - -optgroup { -font-style: normal; -} - -a:link { -color: #99ff00; -text-decoration: underline; -} - -a:visited { -color: #ff9900; -text-decoration: underline; -} - -a:hover { -text-decoration: underline; -} - -/* navigation header, this is the combined area with logo and section links */ - -#nav_header_top { -text-align: right; -} - -#nav_header_bottom { -clear: left; -padding: 0.3em; -background-color: #000066; -text-align: left; -} - -#nav_header_logo, #nav_header_logo_right { -display: none; -} - -/* title text */ -#nav_header_title { -float: left; -font-size: 2em; -line-height: 1.4em; -padding-left: 0.2em; -} - -/* location combo */ -#nav_header_location { -text-align: right; -} - -/* location URL */ -#nav_header_bottom_left { -vertical-align: middle; - -font-size: 0.8em; -line-height: 1.1em; -} - -/* place for the links to contact, sitemap, ... s*/ -#nav_header_bottom_right { -float: right; -vertical-align: middle; - -font-size: 0.8em; -line-height: 1.1em; -} - -/* main color definitions */ - -.menuheader { -height: 0; -line-height: 0; -margin: 0; -padding: 0; -font-size: 0; -} - -#leftmenu, #rightmenu { -width: 20%; -} - -#leftmenu h2, #rightmenu h2 { -font-size: 1em; -padding-left: 1em; -vertical-align: middle; -background-color: #000099; -color: #ffff00; -margin-top: 0; -} - -#rightmenu h3 { -padding: 0.3em 0.8em; -font-size: 1em; -} - -#leftmenu ul, #rightmenu ul { -margin: 0; -padding-left: 0.5em; -padding-bottom: 1em; -} - -#leftmenu ul { -list-style-type: none; -} - -#rightmenu ul { -list-style-type: none; -} - -#leftmenu li, #rightmenu li { -font-size: 0.8em; -} - -#leftmenu li { -margin-left: 1em; -} - -#rightmenu li { -margin-left: 1.5em; -} - -#leftmenu ul ul, #rightmenu ul ul { -margin: 0; -padding-left: 0; -} - -#leftmenu li li, #rightmenu li li{ -font-size: 0.8em; -margin-left: 2em; -list-style-type: square; -} - -/** - * page footer - */ - -/* background + border at top */ -#footer { -background-color: #000099; -} - -/* footer text stuff + image */ -#footer_text { -display: none; -} - -/* classes */ - -/* static IDs, ordered top to bottom */ - -#content { -border: 1px solid #ffff00; -padding: 0em 0.7em 1.5em 0.7em; -text-align: justify; -background-color: #000066; -} - -#content td, #content th { -font-family: sans-serif; -padding: 0.25em; -margin: 0; -text-align: left; -} - -#content h4, #content h3, #content h2, #content h1 { -text-align: left; -line-height: 1em; /* without this lines stick in each other for headings */ -} - -#quicklinks { -font-size: 1em; -text-align: center; -margin-top: 1em; -margin-left: 0.5em; -margin-bottom: 0.5em; -margin-right: 0.5em; -} - -.menu_box { -background-color: #000066; -} - -#search { -text-align: center; -padding: 0.2em 0.2em 0.2em 0.2em; -} - -#search label { -display: none; -} - -#search input, #search select { -width: 95%; -margin-bottom: 2px; -} - -#hotspot { -font-size: 0.8em; -line-height: 1em; -text-align: center; -padding: 0 0 0.8em 0; -} - -#rightmenu h3 { -margin-bottom: 0; -} - -.newsbox1 { -background-color: #000099; -margin-top: 1em; -margin-bottom: 0.5em; -} - -.newsbox2 { -background-color: #000066; -margin-top: 1em; -margin-bottom: 0.5em -} - -/* common style for tables used in the page */ -.table_box { -background-color: #000099; -border: 0; -padding: 0; -margin: 0; -border-spacing: 0; -} - -.table_box th { -background-color: #000099; -color: #ffff00; -} -/* hidden stuff */ -.doNotDisplay { -display: none; -} - -@media aural { .doNotDisplay { -display: inline; -}} diff --git a/templates/base.html.twig b/templates/base.html.twig new file mode 100644 --- /dev/null +++ b/templates/base.html.twig @@ -0,0 +1,239 @@ +{% trans_default_domain 'app' %} + + + + + + + {% block title %}KDE Documentation:w + {% endblock %} + {% block stylesheets %} + {{ encore_entry_link_tags('app') }} + {% endblock %} + + + + + + + + + + + + + + + + + + + +
    + +
    +
    +
    + {# APPLICATIONS SEARCH #} + {{ form_start(search_form, {'attr': {'class': 'form-row', 'novalidate': 'novalidate'}}) }} +
    + {{ form_widget(search_form.search_term, {'attr': {'aria-label': 'Search', 'placeholder': 'Search', 'class': 'form-control mb-2', 'value': search_term is defined ? search_term : '', 'id': 'autocomplete'}} ) }} +
    +
    + {{ form_widget(search_form.Search, {'attr': {'id': 'autocomplete', 'class': 'btn btn-outline-success mb-2 col-md-12'}}) }} +
    + {{ form_end(search_form) }} + + {# MAIN CONTENT #} + {% block body %}{% endblock %} + + {# OMEGA SEARCH #} +

    Advanced search

    +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    + + + + +
    +
    + +{% block javascripts %} + {{ encore_entry_script_tags('app') }} +{% endblock %} + + diff --git a/templates/index.html.twig b/templates/index.html.twig new file mode 100644 --- /dev/null +++ b/templates/index.html.twig @@ -0,0 +1,21 @@ +{% extends 'base.html.twig' %} + +{% trans_default_domain 'app' %} + +{% block body %} +

    {% trans %}Welcome{% endtrans %}

    +

    {% trans %}Welcome to the KDE documentation site. This page holds the complete KDE User Documentation in over 25 + languages. Thanks to the enormous efforts by our documentation and translation teams you can access + thousands of pages of documentation.{% endtrans %}

    +

    {% trans %}Before you start searching the library or asking questions on the mailing lists, there is a good chance your + answer is already in the KDE UserBase or the KDE Community Forums.{% endtrans %}

    +

    {% trans %}If you are looking for developer documentation, the KDE + Techbase is the place where you get what you are looking for.{% endtrans %}

    +

    {% trans %}Categories{% endtrans %}

    + +{% endblock %} diff --git a/templates/language_dropdown.html.twig b/templates/language_dropdown.html.twig new file mode 100644 --- /dev/null +++ b/templates/language_dropdown.html.twig @@ -0,0 +1,12 @@ +
    + {% for language in languages %} + {% if loop.index0 % 3 == 0 and loop.index0 != 0 %} +
    +
    + {% endif %} + {# TODO there is probably a better way #} + {{ full_language_name[language] is defined ? full_language_name[language] : language }} + {% endfor %} +
    + diff --git a/templates/module.html.twig b/templates/module.html.twig new file mode 100644 --- /dev/null +++ b/templates/module.html.twig @@ -0,0 +1,43 @@ +{% extends 'base.html.twig' %} + +{% trans_default_domain 'app' %} + +{% block body %} +

    Module: {{ module }}

    + {% for category,submodules in categories %} +

    {{ category|trans({}, 'modules') }}

    + {% if submodules.branch is defined %} + + {% else %} +
    + {% for submodule,branchs in submodules %} + {% if loop.index0 % 2 == 0 and loop.index0 != 0 %} +
    +
    + {% endif %} +
    + {{ submodule|trans({}, 'modules') }} + +
    + {% endfor %} +
    + {% endif %} + {% endfor %} +{% endblock %} diff --git a/templates/search.html.twig b/templates/search.html.twig new file mode 100644 --- /dev/null +++ b/templates/search.html.twig @@ -0,0 +1,48 @@ +{% extends 'base.html.twig' %} + +{% trans_default_domain 'app' %} + +{% block body %} + {% if search_result is defined %} + {% for module, moduleContent in search_result %} + {% for category, submodules in moduleContent %} +

    {{ category|trans({}, 'modules') }}

    + {% if submodules.branch is defined %} + + {% else %} +
    + {% for submodule,branchs in submodules %} + {% if loop.index0 % 2 == 0 and loop.index0 != 0 %} +
    +
    + {% endif %} +
    + {{ submodule|trans({},'modules') }} + +
    + {% endfor %} +
    + {% endif %} + {% endfor %} + {% endfor %} + {% else %} + TODO ADD TEXT + {% endif %} +{% endblock %} diff --git a/translations/.gitignore b/translations/.gitignore new file mode 100644 diff --git a/translations/app.ca.yaml b/translations/app.ca.yaml new file mode 100644 --- /dev/null +++ b/translations/app.ca.yaml @@ -0,0 +1,2 @@ +navbar: + language: Català \ No newline at end of file diff --git a/translations/app.de.yaml b/translations/app.de.yaml new file mode 100644 --- /dev/null +++ b/translations/app.de.yaml @@ -0,0 +1,15 @@ +index.welcome: __index.welcome +index.content1: __index.content1 +index.content2: __index.content2 +index.content3: __index.content3 +index.categories: __index.categories +navbar.help: __navbar.help +navbar.contact: __navbar.contact +navbar.donate: __navbar.donate +navbar.language: __navbar.language +'Donate to KDE': '__Donate to KDE' +'Why Donate?': '__Why Donate?' +'Get Involved in KDE': '__Get Involved in KDE' +'KDE on Facebook': '__KDE on Facebook' +'KDE on Twitter': '__KDE on Twitter' +'KDE on Google+': '__KDE on Google+' diff --git a/translations/app.en.yaml b/translations/app.en.yaml new file mode 100644 --- /dev/null +++ b/translations/app.en.yaml @@ -0,0 +1,55 @@ +language: English +'KDE Documentation': 'KDE Documentation' +'Toggle navigation': 'Toggle navigation' +'Homepage of the KDE non-profit Organization': 'Homepage of the KDE non-profit Organization' +'Donate to KDE': 'Donate to KDE' +'Why donate?': 'Why donate?' +'Get Involved in KDE': 'Get Involved in KDE' +'and the': 'and the' +'logo (': 'logo (:' +'are registered trademarks of': 'are registered trademarks of:' +Legal: Legal +Search: Search +Help: Help +'Contact Us': 'Contact Us' +Donate: Donate +'''Your donation is smaller than 2€. This means that most of your donation\nwill end up in processing fees. Do you want to continue?': '''Your donation is smaller than 2€. This means that most of your donation\nwill end up in processing fees. Do you want to continue?' +'Donate via PayPal': 'Donate via PayPal' +'Other ways to donate': 'Other ways to donate' +Products: Products +Plasma: Plasma +'KDE Applications': 'KDE Applications' +'Plasma Mobile': 'Plasma Mobile' +'KDE neon': 'KDE neon' +WikiToLearn: WikiToLearn +Develop: Develop +'TechBase Wiki': 'TechBase Wiki' +'Api Documentation': 'Api Documentation' +'Qt Documentation': 'Qt Documentation' +'Inqlude Documentation': 'Inqlude Documentation' +'News & Press': 'News & Press' +Announcements: Announcements +Kde.news: Kde.news +'Planet KDE': 'Planet KDE' +Screenshots: Screenshots +'Press Contact': 'Press Contact' +Resources: Resources +'Community Wiki': 'Community Wiki' +'UserBase Wiki': 'UserBase Wiki' +'Miscellaneous Stuff': '>Miscellaneous Stuff' +Support: Support +'International Websites': 'International Websites' +'Download KDE Software': 'Download KDE Software' +Destinations: Destinations +'KDE Store': 'KDE Store' +'KDE Free Qt Foundation': 'KDE Free Qt Foundation' +'KDE Timeline': 'KDE Timeline' +'KDE on Facebook': 'KDE on Facebook' +'KDE on Google+': 'KDE on Google+' +'KDE on Twitter': 'KDE on Twitter' +') are registered trademarks of': ') are registered trademarks of' +Welcome: Welcome +Categories: Categories +"Welcome to the KDE documentation site. This page holds the complete KDE User Documentation in over 25\n languages. Thanks to the enormous efforts by our documentation and translation teams you can access\n thousands of pages of documentation.": "Welcome to the KDE documentation site. This page holds the complete KDE User Documentation in over 25\n languages. Thanks to the enormous efforts by our documentation and translation teams you can access\n thousands of pages of documentation." +"Before you start searching the library or asking questions on the mailing lists, there is a good chance your\n answer is already in the KDE UserBase or the KDE Community Forums.": "Before you start searching the library or asking questions on the mailing lists, there is a good chance your\n answer is already in the KDE UserBase or the KDE Community Forums." +"If you are looking for developer documentation, the KDE\n Techbase is the place where you get what you are looking for.": "If you are looking for developer documentation, the KDE\n Techbase is the place where you get what you are looking for." diff --git a/translations/app.fr.yaml b/translations/app.fr.yaml new file mode 100644 --- /dev/null +++ b/translations/app.fr.yaml @@ -0,0 +1,53 @@ +language: Français +'KDE Documentation': 'Documentation de KDE' +'Toggle navigation': 'Basculer la navigation' +Help: Aide +'Contact Us': 'Contacter nous' +Donate: Donation +'Donate to KDE': 'Faire un don à KDE' +'Why donate?': 'Pourquoi donner ?' +'''Your donation is smaller than 2€. This means that most of your donation\nwill end up in processing fees. Do you want to continue?': '__''Your donation is smaller than 2€. This means that most of your donation\nwill end up in processing fees. Do you want to continue?' +'Donate via PayPal': 'Donner via PayPal' +'Other ways to donate': 'Autre moyen de donner' +Products: Produits +Plasma: Plasma +'KDE Applications': 'KDE Applications' +'Plasma Mobile': 'Plasma Mobile' +'KDE neon': 'KDE neon' +WikiToLearn: WikiToLearn +Develop: Développer +'TechBase Wiki': 'TechBase Wiki' +'Api Documentation': "Documentation de l'Api" +'Qt Documentation': 'Documentation de Qt' +'Inqlude Documentation': 'Documentation de Inqlude' +'News & Press': 'Nouvelles et presse' +Announcements: Annonce +Kde.news: Kde.news +'Planet KDE': 'Planet KDE' +Screenshots: "Capture d'écran" +'Press Contact': 'Contact presse' +Resources: Ressources +'Community Wiki': 'Community Wiki' +'UserBase Wiki': 'UserBase Wiki' +'Miscellaneous Stuff': 'Autres' +Support: Support +'International Websites': '__International Websites' +'Download KDE Software': '__Download KDE Software' +Destinations: __Destinations +'KDE Store': '__KDE Store' +'KDE Free Qt Foundation': '__KDE Free Qt Foundation' +'KDE Timeline': '__KDE Timeline' +'Get Involved in KDE': '__Get Involved in KDE' +'KDE on Facebook': '__KDE on Facebook' +'KDE on Google+': '__KDE on Google+' +'KDE on Twitter': '__KDE on Twitter' +'and the': 'et le ' +'logo (': 'logo (' +') are registered trademarks of': ') sont des marques déposées de ' +'Homepage of the KDE non-profit Organization': "Page d'accueil de l'organisation non-lucrative de KDE' +Legal: Légal +Welcome: Bienvenue +"Bienvenue sur le site de la documenation de KDE. This page holds the complete KDE User Documentation in over 25\n languages. Thanks to the enormous efforts by our documentation and translation teams you can access\n thousands of pages of documentation.": "__Welcome to the KDE documentation site. This page holds the complete KDE User Documentation in over 25\n languages. Thanks to the enormous efforts by our documentation and translation teams you can access\n thousands of pages of documentation." +"Before you start searching the library or asking questions on the mailing lists, there is a good chance your\n answer is already in the KDE UserBase or the KDE Community Forums.": "__Before you start searching the library or asking questions on the mailing lists, there is a good chance your\n answer is already in the KDE UserBase or the KDE Community Forums." +"If you are looking for developer documentation, the KDE\n Techbase is the place where you get what you are looking for.": "__If you are looking for developer documentation, the KDE\n Techbase is the place where you get what you are looking for." +Categories: Catégories diff --git a/translations/app.uk.yaml b/translations/app.uk.yaml new file mode 100644 --- /dev/null +++ b/translations/app.uk.yaml @@ -0,0 +1,2 @@ +navbar: + language: українська \ No newline at end of file diff --git a/translations/modules.en.yaml b/translations/modules.en.yaml new file mode 100644 --- /dev/null +++ b/translations/modules.en.yaml @@ -0,0 +1,429 @@ +kcontrol: System Settings Modules +kcontrol5: System Settings Modules +kioslave: Kioslaves +kioslave5: Kioslaves + +#kdelibs +sonnet: Check Spelling +data: Data URLs +http: http/https +file: file +ftp: FTP +help: help +mailto: mailto +rlogin: rlogin +telnet: telnet +webdav: webdav/webdavs + +#kdepimlibs +kresources: KDE PIM Resources (deprecated) +imap: imap +ldap: ldap +mbox: mbox +nntp: nntp +pop3: pop3 +sieve: sieve +smtp: smtp + +#applications +kdepasswd: Password &, User Account # move to kcontrol, it is a kcm +kate: Kate +katepart: Kate Part +kfind: KFind +konsole: Konsole/ +konqueror: Konqueror +kwrite: KWrite +dolphin: Dolphin +keditbookmarks: Bookmark Editor + +#kde-runtime +kdebugdialog: KDebugDialog +kdebugdialog5: KDebugDialog +knetattach: KNetAttach +documentationnotfound: Documentation not found +onlinehelp: Online Help +khelpcenter: KHelpCenter +kdesu: KDE su +fundamentals: KDE Fundamentals + +#kde-runtime kcontrol +attica: Social Desktop +cache: Cache +componentchooser: Default Applications +cookies: Cookies +ebrowsing: Web Shortcuts +emoticons: Emoticons +filemanager: File Management +filetypes: File Associations +formats: Formats +history: History +icons: Icons +kcmcgi: CGI Script +kcmcss: Appearance +kcmlaunchfeedback: Launch Feedback +kcmnotify: System Notification +kcm_ssl: SSL Preferences +kded: Service Manager +khtml-adblock: AdBlocK Filters +khtml-behavior: Web Browsing +khtml-general: General Konqueror Behavior +khtml-java-js: Java and JavaScript +khtml-plugins: Browser Plugins +kwineffects: Desktop Effects +language: Country/Region & Language +nepomuk: Desktop Search +netpref: Connection Preferences +performance: Performance +phonon: Audio and Video Settings +proxy: Proxy +smb: Windows Shares +solid-device-automounter: Removable Devices +spellchecking: Spell Checker +translations: Translations +trash: Trash +useragent: Browser Identification + +#kde-runtime kioslaves +bookmarks: bookmarks +bzip2: bzip2 / bzip +cgi: cgi +finger: finger +fish: fish +floppy: Floppy +gzip: gzip +info: Info +man: Man +nepomuksearch: nepomuksearch +network: network +nfs: nfs +sftp: sftp +tar: tar +thumbnail: thumbnail +xz: xz / lzma + +#kde-workspace +plasma-desktop: Plasma Manual +plasma-pa: Audio Volume +systemsettings: System Settings +kfontview: Font Viewer +klipper: Klipper +kdm: KDM Login Manager +kinfocenter: KDE Info Center +kmenuedit: KDE Menu Editor +ksysguard: System Monitor +PolicyKit-kde: PolicyKit-kde +#kde-workspace kcontrol +autostart: Autostart +baloo: File Search Settings +bell: System Bell +clock: Date & Time +colors: Colors +cursortheme: Cursor Theme +desktop: Virtual Desktops +desktopthemedetails: Desktop Themes +fontinst: Font Management +fonts: Fonts +joystick: Joystick +kcmaccess: Accessibility +kcmsmserver: Session Management +kcmstyle: Style +keyboard: Keyboard +keys: Shortcuts +kgamma5: Monitor Gamma +khotkeys: Custom Shortcuts +kwincompositing: Desktop Effects +kwindecoration: Window Decorations +kwinscreenedges: Screen Edges +kwintabbox: Task Switcher +mouse: Mouse +paths: Paths +powerdevil: Power Management +screenlocker: Screen Locker +screensaver: Screen Locker +solid-actions: Device Actions +solid-hardware: Information Sources +splashscreen: Splash Screen +webshortcuts: Web Shortcuts +windowbehaviour: Window Behavior +windowspecific: Window Rules +workspaceoptions: Workspace + +#kdeaccessibility/ +jovie: Jovie +kmag: KMagnifier +kmousetool: KMouseTool +kmouth: KMouth + +#kdeadmin/ +kcron: Task Scheduler # move to kcontrol, it is a kcm +ksystemlog: KSystemLog +kuser: KUser + +#kdeedu +artikulate: Artikulate +blinken: Blinken +cantor: Cantor +kalgebra: KAlgebra +kalzium: Kalzium +kanagram: Kanagram +kbruch: KBruch +kgeography: KGeography +khangman: KHangMan +kig: Kig +kiten: Kiten +klettres: KLettres +kmplot: KmPlot +kstars: KStars +ktouch: KTouch +kturtle: KTurtle +kwordquiz: KWordQuiz +marble: Marble +minuet: Minuet +pairseditor: Pairs Editor +parley: Parley +rocs: Rocs +step: Step + +#kdegames +bomber: Bomber +bovo: Bovo +granatier: Granatier +kajongg: Kajongg +kapman: Kapman +katomic: KAtomic +knavalbattle: Naval Battle +kblackbox: KBlackbox +kblocks: KBlocks +kbounce: KBounce +kbreakout: KBreakout +kdiamond: KDiamond +kfourinline: KFourInLine +kgoldrunner: KGoldrunner +kigo: Kigo +killbots: Killbots +kiriki: Kiriki +kjumpingcube: KJumpingCube +klickety: Klickety +knights: Knights +klines: Kolor Lines +kmahjongg: KMahjongg +kmines: KMines +knetwalk: KNetwalk +kolf: Kolf +kollision: Kollision +konquest: Konquest +kpat: KPatience +kreversi: KReversi +kshisen: Shisen-Sho +ksirk: KSirk +kspaceduel: KSpaceDuel +ksquares: KSquares +ksudoku: KSudoku +ktron: KSnakeDuel +ktuberling: KTuberling +kubrick: Kubrick +lskat: LSkat +palapeli: Palapeli +picmi: Picmi + +#kdegraphics +gwenview: Gwenview +kolourpaint: KolourPaint +kruler: KRuler +ksnapshot: KSnapshot +okular: Okular +spectacle: Spectacle + +#kdegraphics kcontrol +kamera: Digital Camera +kgamma: Monitor Gamma + +#kdemultimedia +dragonplayer: Dragon Player +juk: JuK +kdenlive: Kdenlive +kmix: KMix +kwave: Kwave + +#kdemultimedia kcontrol +cddbretrieval: CDDB Retrieval +cddbretrieval5: CDDB Retrieval + +#kdemultimedia kioslave +audiocd: audiocd + +#kdenetwork +kget: KGet +kopete: Kopete +kppp: KPPP +krdc: KRDC +krfb: Desktop Sharing +recentdocuments: Recent Documents + +#kdepim +akonadi_archivemail_agent: Archive Mail Agent +akonadi_followupreminder_agent: Follow Up Reminder Agent +akonadi_folderarchive_agent: Folder Archive Agent +akonadi_notes_agent: Notes Agent +akonadi_sendlater_agent: Send Later Agent +akregator: Akregator +blogilo: Blogilo +contactthemeeditor: Contact Theme Editor +headerthemeeditor: Header Theme Editor +importwizard: Import Wizard +kabcclient: KABC-Client +kalarm: KAlarm +kjots: KJots +kleopatra: Kleopatra +kmail: KMail +kmail2: KMail +kmailcvt: KMailCVT +knode: KNode +knotes: KNotes +konsolekalendar: KonsoleKalendar +kontact: Kontact +kontact-admin: Kontact Administrator's Guide +korganizer: KOrganizer +ktimetracker: KTimeTracker +ktnef: KTnef +kwatchgnupg: KWatchGnuPG +pimsettingexporter: PIM Setting Exporter +sieveeditor: Sieve Script Editor + +#kdepim kioslave +news: news +#kdesdk + +cervisia: Cervisia +kapptemplate: KAppTemplate +kcachegrind: KCachegrind +kompare: Kompare +lokalize: Lokalize +okteta: Okteta +umbrello: Umbrello + +#kdetoys +amor: Amor +kteatime: KTeatime + +#kdeutils +ark: Ark +filelight: Filelight +kbackup: KBackup +kcalc: KCalc +kcharselect: KCharSelect +kdf: KDiskFree +kfloppy: KFloppy +kgpg: KGpg +ktimer: KTimer +kwallet: KWallet +kwallet5: KWallet +kwalletmanager: KWallet Manager +sweeper: Sweeper + +#kdeutils kcontrol +blockdevices: Block Devices +kremotecontrol: Remote Control + +#kdewebdev +kfilereplace: KFileReplace +kimagemapeditor: KImageMapEditor +klinkstatus: KLinkStatus + +#calligra +sheets: Calligra Sheets +calligra: Calligra +kexi: Kexi +stage: Calligra Stage + +#extragear-accessibility +afaras: Afaras +ssc: Sample Acquisition Tool +sscd: Sample Acquisition Tool Daemon +simond: Simon Daemon +simon: Simon Speech Recognition Tool +sam: Simon Accoustic Model Manager +ksimond: Simon Daemon Frontend + +#extragear-base kcontrol +wacomtablet: KCM Tablet + +#extragear-edu +gcompris: GCompris Administration +labplot2: LabPlot + +#extragear-games + +#extragear-graphics +digikam: digiKam +kcoloredit: KColorEdit +kgraphviewer: KGraphViewer +kiconedit: KIconEdit +kipi-plugins: Kipi Plugins +kphotoalbum: KPhotoAlbum +kpovmodeler: KPovModeler +kuickshow: KuickShow +kxstitch: KXStitch +showfoto: Showfoto +skanlite: Skanlite +SymbolEditor: SymbolEditor + +#extragear-kdevelop +kdevelop: KDevelop + +#extragear-multimedia +amarok: Amarok +k3b: K3b +kaffeine: Kaffeine +kamoso: Kamoso +kaudiocreator: KAudioCreator +kmid: KMid +kmplayer: KMPlayer +kplayer: KPlayer + +#extragear-network +choqok: Choqok +kopete-cryptography: Cryptography Plugin +rekonq: rekonq +konversation: Konversation +ktorrent: KTorrent +smb4k: Smb4K + +#extragear-network kioslave +gopher: gopher +gdrive: gdrive + +#extragear-office +kbibtex: KBibTeX +kile: Kile +kmymoney: KMyMoney +skrooge: Skrooge +tellico: Tellico + +#extragear-pim +ksig: KSig +trojita: Trojita + +#extragear-sdk +xsldbg: xsldbg +kxsldbg: KXSLDbg + +#extragear-sysadmin +partitionmanager: Partition Manager +kiosktool: KIOSK Admin Tool + +#extragear-utils +katimon: Katimon +kdesrc-build: kdesrc-build Script +keurocalc: KEuroCalc +kpager: KPager +krecipes: Krecipes +kronometer: Kronometer +krusader: Krusader +nepomukshell: Nepomuk Shell +rsibreak: RSIBreak +kdiff3: KDiff3 +kdots: KDots +kpeg: KPeg +rkward: RKWard +rkwardplugins: RKWard Plugins diff --git a/translations/modules.uk.yaml b/translations/modules.uk.yaml new file mode 100644 --- /dev/null +++ b/translations/modules.uk.yaml @@ -0,0 +1,429 @@ +kcontrol: System Settings Modules +kcontrol5: System Settings Modules +kioslave: Kioslaves +kioslave5: Kioslaves + +#kdelibs +sonnet: Check Spelling +data: Адреси даних +http: http / https +file: file +ftp: FTP +help: help +mailto: mailto +rlogin: rlogin +telnet: telnet +webdav: webdav / webdavs + +#kdepimlibs +kresources: KDE PIM Resources (deprecated) +imap: imap +ldap: ldap +mbox: mbox +nntp: nntp +pop3: pop3 +sieve: sieve +smtp: smtp + +#applications +kdepasswd: Password &, User Account # move to kcontrol, it is a kcm +kate: Kate +katepart: Kate Part +kfind: KFind +konsole: Konsole/ +konqueror: Konqueror +kwrite: KWrite +dolphin: Dolphin +keditbookmarks: Bookmark Editor + +#kde-runtime +kdebugdialog: KDebugDialog +kdebugdialog5: KDebugDialog +knetattach: KNetAttach +documentationnotfound: Documentation not found +onlinehelp: Online Help +khelpcenter: KHelpCenter +kdesu: Підручник KDE su +fundamentals: KDE Fundamentals + +#kde-runtime kcontrol +attica: Social Desktop +cache: Cache +componentchooser: Типові програми +cookies: Куки +ebrowsing: Web Shortcuts +emoticons: Емоційки +filemanager: File Management +filetypes: Прив’язка файлів +formats: Формати +history: History +icons: Піктограми +kcmcgi: CGI Script +kcmcss: Appearance +kcmlaunchfeedback: Показ запуску +kcmnotify: Параметри системних сповіщень +kcm_ssl: Версія і сертифікати SSL +kded: Фонові служби +khtml-adblock: AdBlocK Filters +khtml-behavior: Web Browsing +khtml-general: General Konqueror Behavior +khtml-java-js: Java and JavaScript +khtml-plugins: Browser Plugins +kwineffects: Ефекти стільниці +language: Country/Region & Language +nepomuk: Desktop Search +netpref: Connection Preferences +performance: Performance +phonon: Параметри звуку та відео +proxy: Проксі +smb: Спільні ресурси Windows +solid-device-automounter: Портативні пристрої +spellchecking: Перевірка правопису +translations: Мова +trash: Смітник +useragent: Ідентифікація навігатора + +#kde-runtime kioslaves +bookmarks: bookmarks +bzip2: bzip2 / bzip +cgi: cgi +finger: finger +fish: fish +floppy: Floppy +gzip: gzip +info: Info +man: Man +nepomuksearch: nepomuksearch +network: network +nfs: nfs +sftp: sftp +tar: tar +thumbnail: thumbnail +xz: xz / lzma + +#kde-workspace +plasma-desktop: Довідник з Плазми--output-format +plasma-pa: Гучність звуку +systemsettings: Системних параметрів +kfontview: Переглядач шрифтів +klipper: Klipper +kdm: KDM Login Manager +kinfocenter: Центр інформації +kmenuedit: Редактора меню KDE +ksysguard: System Monitor +PolicyKit-kde: PolicyKit-kde +#kde-workspace kcontrol +autostart: Автозапуск +baloo: Пошук у файлах +bell: System Bell +clock: Дата і час +colors: Кольори +cursortheme: Тема вказівника +desktop: Віртуальні стільниці +desktopthemedetails: Тема стільниці +fontinst: Керування шрифтами +fonts: Шрифти +joystick: Джойстик +kcmaccess: Доступність +kcmsmserver: Керування сеансами +kcmstyle: Стиль віджетів +keyboard: Клавіатура +keys: Скорочення +kgamma5: Гама монітора +khotkeys: Нетипові скорочення +kwincompositing: Ефекти стільниці +kwindecoration: Поведінка вікон +kwinscreenedges: Краї екрана +kwintabbox: Перемикання задач +mouse: Мишка +paths: Місця +powerdevil: Керування живленням +screenlocker: Блокування екрана +screensaver: Блокування екрана +solid-actions: Дії з пристроями +solid-hardware: Information Sources +splashscreen: Splash Screen +webshortcuts: Вебскорочення +windowbehaviour: Поведінка вікон +windowspecific: Правила вікон +workspaceoptions: Поведінка робочого простору + +#kdeaccessibility/ +jovie: Jovie +kmag: KMagnifier +kmousetool: KMouseTool +kmouth: KMouth + +#kdeadmin/ +kcron: Task Scheduler # move to kcontrol, it is a kcm +ksystemlog: KSystemLog +kuser: KUser + +#kdeedu +artikulate: Artikulate +blinken: Blinken +cantor: Cantor +kalgebra: KAlgebra +kalzium: Kalzium +kanagram: Kanagram +kbruch: KBruch +kgeography: KGeography +khangman: KHangMan +kig: Kig +kiten: Kiten +klettres: KLettres +kmplot: KmPlot +kstars: KStars +ktouch: KTouch +kturtle: KTurtle +kwordquiz: KWordQuiz +marble: Marble +minuet: Minuet +pairseditor: Pairs Editor +parley: Parley +rocs: Rocs +step: Step + +#kdegames +bomber: Bomber +bovo: Bovo +granatier: Granatier +kajongg: Kajongg +kapman: Kapman +katomic: KAtomic +knavalbattle: Naval Battle +kblackbox: KBlackbox +kblocks: KBlocks +kbounce: KBounce +kbreakout: KBreakout +kdiamond: KDiamond +kfourinline: KFourInLine +kgoldrunner: KGoldrunner +kigo: Kigo +killbots: Killbots +kiriki: Kiriki +kjumpingcube: KJumpingCube +klickety: Klickety +knights: Knights +klines: Kolor Lines +kmahjongg: KMahjongg +kmines: KMines +knetwalk: KNetwalk +kolf: Kolf +kollision: Kollision +konquest: Konquest +kpat: KPatience +kreversi: KReversi +kshisen: Shisen-Sho +ksirk: KSirk +kspaceduel: KSpaceDuel +ksquares: KSquares +ksudoku: KSudoku +ktron: KSnakeDuel +ktuberling: KTuberling +kubrick: Kubrick +lskat: LSkat +palapeli: Palapeli +picmi: Picmi + +#kdegraphics +gwenview: Gwenview +kolourpaint: KolourPaint +kruler: KRuler +ksnapshot: KSnapshot +okular: Okular +spectacle: Spectacle + +#kdegraphics kcontrol +kamera: Digital Camera +kgamma: Monitor Gamma + +#kdemultimedia +dragonplayer: Dragon Player +juk: JuK +kdenlive: Kdenlive +kmix: KMix +kwave: Kwave + +#kdemultimedia kcontrol +cddbretrieval: CDDB Retrieval +cddbretrieval5: CDDB Retrieval + +#kdemultimedia kioslave +audiocd: audiocd + +#kdenetwork +kget: KGet +kopete: Kopete +kppp: KPPP +krdc: KRDC +krfb: Desktop Sharing +recentdocuments: Recent Documents + +#kdepim +akonadi_archivemail_agent: Archive Mail Agent +akonadi_followupreminder_agent: Follow Up Reminder Agent +akonadi_folderarchive_agent: Folder Archive Agent +akonadi_notes_agent: Notes Agent +akonadi_sendlater_agent: Send Later Agent +akregator: Akregator +blogilo: Blogilo +contactthemeeditor: Contact Theme Editor +headerthemeeditor: Header Theme Editor +importwizard: Import Wizard +kabcclient: KABC-Client +kalarm: KAlarm +kjots: KJots +kleopatra: Kleopatra +kmail: KMail +kmail2: KMail +kmailcvt: KMailCVT +knode: KNode +knotes: KNotes +konsolekalendar: KonsoleKalendar +kontact: Kontact +kontact-admin: Kontact Administrator's Guide +korganizer: KOrganizer +ktimetracker: KTimeTracker +ktnef: KTnef +kwatchgnupg: KWatchGnuPG +pimsettingexporter: PIM Setting Exporter +sieveeditor: Sieve Script Editor + +#kdepim kioslave +news: news +#kdesdk + +cervisia: Cervisia +kapptemplate: KAppTemplate +kcachegrind: KCachegrind +kompare: Kompare +lokalize: Lokalize +okteta: Okteta +umbrello: Umbrello + +#kdetoys +amor: Amor +kteatime: KTeatime + +#kdeutils +ark: Ark +filelight: Filelight +kbackup: KBackup +kcalc: KCalc +kcharselect: KCharSelect +kdf: KDiskFree +kfloppy: KFloppy +kgpg: KGpg +ktimer: KTimer +kwallet: KWallet +kwallet5: KWallet +kwalletmanager: KWallet Manager +sweeper: Sweeper + +#kdeutils kcontrol +blockdevices: Block Devices +kremotecontrol: Remote Control + +#kdewebdev +kfilereplace: KFileReplace +kimagemapeditor: KImageMapEditor +klinkstatus: KLinkStatus + +#calligra +sheets: Calligra Sheets +calligra: Calligra +kexi: Kexi +stage: Calligra Stage + +#extragear-accessibility +afaras: Afaras +ssc: Sample Acquisition Tool +sscd: Sample Acquisition Tool Daemon +simond: Simon Daemon +simon: Simon Speech Recognition Tool +sam: Simon Accoustic Model Manager +ksimond: Simon Daemon Frontend + +#extragear-base kcontrol +wacomtablet: KCM Tablet + +#extragear-edu +gcompris: GCompris Administration +labplot2: LabPlot + +#extragear-games + +#extragear-graphics +digikam: digiKam +kcoloredit: KColorEdit +kgraphviewer: KGraphViewer +kiconedit: KIconEdit +kipi-plugins: Kipi Plugins +kphotoalbum: KPhotoAlbum +kpovmodeler: KPovModeler +kuickshow: KuickShow +kxstitch: KXStitch +showfoto: Showfoto +skanlite: Skanlite +SymbolEditor: SymbolEditor + +#extragear-kdevelop +kdevelop: KDevelop + +#extragear-multimedia +amarok: Amarok +k3b: K3b +kaffeine: Kaffeine +kamoso: Kamoso +kaudiocreator: KAudioCreator +kmid: KMid +kmplayer: KMPlayer +kplayer: KPlayer + +#extragear-network +choqok: Choqok +kopete-cryptography: Cryptography Plugin +rekonq: rekonq +konversation: Konversation +ktorrent: KTorrent +smb4k: Smb4K + +#extragear-network kioslave +gopher: gopher +gdrive: gdrive + +#extragear-office +kbibtex: KBibTeX +kile: Kile +kmymoney: KMyMoney +skrooge: Skrooge +tellico: Tellico + +#extragear-pim +ksig: KSig +trojita: Trojita + +#extragear-sdk +xsldbg: xsldbg +kxsldbg: KXSLDbg + +#extragear-sysadmin +partitionmanager: Partition Manager +kiosktool: KIOSK Admin Tool + +#extragear-utils +katimon: Katimon +kdesrc-build: kdesrc-build Script +keurocalc: KEuroCalc +kpager: KPager +krecipes: Krecipes +kronometer: Kronometer +krusader: Krusader +nepomukshell: Nepomuk Shell +rsibreak: RSIBreak +kdiff3: KDiff3 +kdots: KDots +kpeg: KPeg +rkward: RKWard +rkwardplugins: RKWard Plugins diff --git a/webpack.config.js b/webpack.config.js new file mode 100644 --- /dev/null +++ b/webpack.config.js @@ -0,0 +1,38 @@ +var Encore = require('@symfony/webpack-encore'); + +Encore + // directory where compiled assets will be stored + .setOutputPath('public/build/') + + // public path used by the web server to access the output path + .setPublicPath('/build') + + .addEntry('app', './assets/js/app.js') + .addStyleEntry('doc', './assets/css/doc.scss') + + // will require an extra script tag for runtime.js + // but, you probably want this, unless you're building a single-page app + .enableSingleRuntimeChunk() + + /* + * FEATURE CONFIG + * + * Enable & configure other features below. For a full + * list of features, see: + * https://symfony.com/doc/current/frontend.html#adding-more-features + */ + .cleanupOutputBeforeBuild() + .enableBuildNotifications() + .enableSourceMaps(!Encore.isProduction()) + + // enables Sass/SCSS support + .enableSassLoader() + + // uncomment if you use TypeScript + //.enableTypeScriptLoader() + + // uncomment if you're having problems with a jQuery plugin + .autoProvidejQuery() +; + +module.exports = Encore.getWebpackConfig();
    -
    - -"; -?> diff --git a/include/initialize.inc.php b/include/initialize.inc.php deleted file mode 100644 --- a/include/initialize.inc.php +++ /dev/null @@ -1,97 +0,0 @@ - diff --git a/include/produce_lists.inc.php b/include/produce_lists.inc.php deleted file mode 100644 --- a/include/produce_lists.inc.php +++ /dev/null @@ -1,61 +0,0 @@ - 0, - 'kdelibs' => 0, - 'calligra' => 5, - 'kdereview' => 10, - ); - if ( array_key_exists($p, $weights) ) { - $w = $weights[$p]; - } elseif ( strncmp($p, 'extragear-', strlen('extragear-')) == 0 ) { - $w = 7; - } else { - $w = 2; - } - return $w; -} - -/* - Compare packages, so that a certain order is enforced - (libraries first, then Applications, Extragear and Review) -*/ -function cmp_packages( $p1, $p2 ) -{ - $w1 = package_weight( $p1 ); - $w2 = package_weight( $p2 ); - $dw = $w1 - $w2; - if ( $dw == 0 ) { - /* same weight, so normal comparison */ - return strcmp( $p1, $p2 ); - } else { - return $dw; - } -} - -/* $packagelist: Complete list of all available packages */ -$packagelist = array_keys( $modules_programs ); -usort( $packagelist, 'cmp_packages' ); -/* Check if the requested package is a valid one */ -if ( $selected_package != "" and - (! in_array($selected_package, $packagelist) ) ) { - $selected_package_nonexist = $selected_package; - $show_intro = true; -} - -?> \ No newline at end of file diff --git a/include/staticappdata.inc.php b/include/staticappdata.inc.php deleted file mode 100644 --- a/include/staticappdata.inc.php +++ /dev/null @@ -1,466 +0,0 @@ - diff --git a/index.php b/index.php deleted file mode 100644 --- a/index.php +++ /dev/null @@ -1,546 +0,0 @@ - 0, 'stable5' => 1, 'trunk4' => 2, 'stable4' => 3); - if (in_array($b1, $base_array) && in_array($b2, $base_array)) { - return $base_array[$b1] - $base_array[$b2]; - } -} - -/* - Return the proper package/namespace for the specified application and - branch, using the knowledge generated by the documentation - generator. -*/ -function get_namespace($application, $branch) -{ - global $programs_multiplemodules; - if ( array_key_exists($application, $programs_multiplemodules) ) { - // multiple packages/namespaces: check in the special list of programs_docs - // with multiple modules if there is specific module for the current branch. - foreach ( $programs_multiplemodules[$application] as $s_branch => $s_module ) { - if ( $s_branch == $branch ) { - return $s_module; - } - } - } else { - global $modules_programs; - // single module for all branches, find it - foreach ( $modules_programs as $module => $module_apps ) { - if ( in_array($application, $module_apps) ) { - return $module; - } - } - } -} - -function build_url( $application='', $package='', $lang='', $branch='', $html_path='' ) -{ - $params = array(); - if ( strlen($branch) > 0 ) - $params[] = "branch=".$branch; - if ( strlen($lang) > 0 ) - $params[] = "language=".$lang; - if ( strlen($package) > 0 ) - $params[] = "package=".$package; - if ( strlen($application) > 0 ) - $params[] = "application=".$application; - if ( strlen($html_path) > 0 ) - $params[] = "path=".$html_path; - return "/index.php?" . implode('&', $params); -} - -function build_path( $branch='', $lang='', $application='', $html_path='' ) -{ - $package = get_namespace($application, $branch); - return $branch . - "/" . $lang . - "/" . $package . - "/" . $application . - "/" . $html_path; -} - -function language_for_application_exist( $app, $lang ) -{ - global $programs_docs; - return (array_key_exists($lang, $programs_docs[$app])); -} - -function branch_exist( $app, $lang, $branch ) -{ - global $programs_docs; - // no translations for the specified application in the current language - if ( !language_for_application_exist($app, $lang) ) { - return ""; - } - // Handle old URL - compatibility with the old schema - $compatibility_branches = array( - "development" => array("trunk5", "trunk4"), - "stable" => array("stable5", "stable4"), - ); - // Search in compatibility branches first - if ( array_key_exists($branch, $compatibility_branches) ) { - foreach ( $compatibility_branches[$branch] as $comp_branch ) { - # echo "Looking for $comp_branch into ".var_dump($programs_docs[$app][$lang]); - if ( in_array($comp_branch, $programs_docs[$app][$lang]) ) { - return $comp_branch; - } - } - } - // Normal branch - if ( in_array($branch, $programs_docs[$app][$lang]) ) { - return $branch; - } - return ""; -} - -if ( $selected_application != "" ) { - $apps = array($selected_application); - - // If branch is specified and correct, jump to the documentation - if ( $selected_branch != "" ) { - if (!language_for_application_exist( $selected_application, $selected_language )) { - $selected_language_nonexist = $selected_language; - $selected_language = "en"; - } - $looked_branch = branch_exist( $selected_application, $selected_language, $selected_branch ); - if ( $looked_branch != "" ) { - header( "Location: /".build_path( $looked_branch, $selected_language, $selected_application, $html_path ) ); - } else { - $selected_branch_nonexist = $selected_branch; - $selected_branch = ""; - } - } -} elseif ( $selected_package != "" ) { - $apps = $modules_programs[$selected_package]; -} else { - $show_intro = true; -} - -/* This is the actual start of the page as the media framework knows it */ - - -/* include('include/docs.inc'); */ - - $applications_list_json = json_encode(array_keys($programs_docs)); - include('include/functions.inc'); - include('include/header_docs.inc'); - -/* We are really printing HTML, WOW */ - -/* Build the menu */ - -echo ""; - -echo " -
    -"; -echo " - -"; - - - - -echo " -
    -
      -
    • -Language: - -
    • -
    • -Documentation branch: - -
    • -
    • -Match: - -
    • -
    • -Words: - -
    • -
    • - -
    • -
    - - -
    -"; - - -// end of search block - -echo " -

    This server contains the complete user documentation for KDE (except the playground module).

    -

    You can select the release and language of the documentation you are searching for. Not all languages have all documentation translated.

    -

    The API documentation is available at api.kde.org.

    - -

    "; - - -if (isset($name) && isset($url)) { - $contact = i18n_var("Maintained by ") . " $name
    \n"; -} else { - $contact = i18n_var("Maintained by kde.org Webmaster
    \n"); -} - -print $contact; - -echo "

    "; - i18n("KDE and K Desktop Environment are trademarks of"); -echo " "; - i18n("KDE e.V."); -echo " | "; - i18n("Legal"); -echo " -

    - -
    -"; - -echo ""; - -echo ""; // id=navigation - -/* - Check for packages/dirctories with subdirectories - Used to produce the i.e. kcontrol break out boxes. -*/ - -include 'include/staticappdata.inc.php'; - -/* Introduced because of the kocontrol/* */ -echo "
    "; - -if ($selected_application_nonexist != "") { -echo " -
    -

    The application $selected_application_from_user -could not be found. Please check if you entered the name correctly, or use the -navigation on the left to access the complete KDE User Documentation.

    -
    -"; -} - -if ($selected_branch_nonexist != "") { -echo " -
    -

    The branch $selected_branch_nonexist -is not available for the specified application/language.

    -
    -"; -} - -if ($selected_language_nonexist != "") { -echo " -
    -

    The requested language $selected_language_nonexist -could not be found. US English was used instead.

    -
    -"; -} - -if ($selected_package_nonexist != "") { -echo " -
    -

    The package $selected_package_nonexist -could not be found.

    -
    -"; -} - -if (isset($url_nonexist)) { -echo " -
    -

    The file $url_nonexist could not be found. -Please check if you entered the URL correctly, or use the navigation on the left -to access the complete KDE User Documentation.

    -

    If you reached this page from another part of the KDE Documentation website or from an other KDE website, -please notify the KDE Documentation -Team and report the page where you found the wrong link, so we can fix the problem.

    -
    -"; -} - - -if ( $show_intro ) { - - include ("intro.inc.html"); - -} else { - #kdepimlibs has no applications - if ( (in_array($selected_package, $package_no_application_array) ) == false ) { - echo "

    Module: $selected_package

    "; - echo "
      "; - } - foreach ( $apps as $application ) { - - /* If the check for a subdir is positive, the subdir is added to the - subdir_array which is handled below */ - foreach ( $check_array as $check_string ) { - $check = strpos( $application, $check_string ); - if ( $check === false ) { - $applicationname = $application; - $checktest = false; - } else { - $checktest = true; - $subdir_array[]=$application; - break; - } - } - - /* Identity is important here */ - if ( $checktest === true ) { - continue; - } - - /* Ignore the oddities defined above */ - foreach ( $ignore_array as $ignore_string ) { - $test_string = $selected_package . "/" . $application; - if ( $test_string == $ignore_string ) { - $breaktest = true; - break; - } else { - $breaktest = false; - } - } - - if ( $breaktest === true ) { - continue; - } - - if ( $application == "kcontrol" or $application == "kcontrol5") { - /* If there ever is a kcontrol docbook outside kdebase - file_exists must be used. - */ - continue; - } - /* - catch docs which are there but have no index.docbook - or are otherwise broken - */ - $total_branches = $programs_docs[$applicationname][$selected_language]; - if(isset($appdisplayname_array[$applicationname])) { - $appdisplayname = $appdisplayname_array[$applicationname]; - } else { - $appdisplayname = $applicationname; - } - if ( $total_branches > 0 ) { - $app_branches = $programs_docs[$applicationname][$selected_language]; - usort( $app_branches, 'cmp_branches' ); - echo "
    • $appdisplayname
        "; - foreach ( $app_branches as $available_branch ) { - $candidate_html = build_path( $available_branch, $selected_language, $application, 'index.html' ); - if ( file_exists( $candidate_html ) ) { - echo "
      • "; - - echo "".$branch_description[$available_branch].""; - - $candidate_pdf = build_path( $available_branch, $selected_language, $application, $application.".pdf" ); - if ( file_exists( $candidate_pdf ) ) { - echo " (PDF)\n"; - } - echo "
      • "; - } - } - echo "
    • \n"; - } else { - echo "
    • ".$appdisplayname."". - "
      No documentation available for this language
    • "; - } - } - #kdepimlibs has no applications - if ( (in_array($selected_package, $package_no_application_array) ) == false ) { - echo "
    "; - } - /* Needed for breaking up the subboxes (see kdebase)*/ - $previous_dir=""; - - /* Iterate over the subdir_array produced - above and break it into according boxes - */ - foreach ( $subdir_array as $application ) { - $current_dir = substr( $application, 0, strpos( $application, '/' ) ); - - if ( $current_dir != $previous_dir ) { - if ( $previous_dir != "" ) { - echo ""; - } - echo "

    ". $appdisplayname_array[$current_dir] ."

    "; - echo "
      "; - } - - $applicationname = str_replace( '/', '', strstr( $application, '/' ) ); - - $app_branches = $programs_docs[$application][$selected_language]; - usort( $app_branches, 'cmp_branches' ); - echo "
    • $appdisplayname_array[$applicationname]
        "; - foreach ( $app_branches as $available_branch ) { - $candidate_html = build_path( $available_branch, $selected_language, $application, 'index.html' ); - if ( file_exists( $candidate_html ) ) { - echo "
      • "; - - echo "". - "". $branch_description[$available_branch] ."".""; - $candidate_pdf = build_path( $available_branch, $selected_language, - $application, $applicationname.".pdf" ); - if ( file_exists( $candidate_pdf ) ) { - echo " (PDF)\n"; - } - echo "
      • "; - } - } - echo "
    • \n"; - - $previous_dir = $current_dir; - } - echo "
    "; -} - -/* END appswrapper */ -echo "
    "; -echo "" -?> - - diff --git a/intro.inc.html b/intro.inc.html deleted file mode 100644 --- a/intro.inc.html +++ /dev/null @@ -1,53 +0,0 @@ - -
    - -

    Welcome

    - -

    - Welcome to the KDE documentation site. This page holds the - complete KDE User Documentation in over 25 languages. Thanks - to the enormous efforts by our documentation and translation - teams you can access thousands of pages of documentation. -

    -

    - Before you start searching the library or asking - questions on the mailing lists, there is a good chance your - answer is already in the - KDE UserBase or the - KDE Community Forums. - They have a hotspot in the right menubar, where you have - fast access to them. -

    -

    - If you are looking for developer documentation, the - KDE Techbase - is the place where you get what you are looking for. -

    - -

    Navigation

    -

    - There are two menubars on the site. The left one allows you to navigate - through the available KDE packages, languages and versions. The right - menubar holds quicklinks to KDE UserBase and the KDE Community Forums, - and allows you to search the complete documentation in all languages. -

    -

    - Select the language, the version of KDE and the package, - the application you want is in. For now only the stable and - the development versions of the documentation are available. -

    - -

    Other Information

    -

    - The documentation for KDE Extragear applications is only available - in the development section. -

    -

    - System Settings (KControl) documentation gets separate boxes, since it - is very big and most users only want a small part of them. -

    - -

    - I hope you find what you are searching for. Have fun with KDE! -

    -
    diff --git a/kde-chunk-online.xsl b/kde-chunk-online.xsl --- a/kde-chunk-online.xsl +++ b/kde-chunk-online.xsl @@ -44,7 +44,7 @@ 0 0 /HEAD/common/ - + 1 @@ -65,6 +65,8 @@ + + diff --git a/kde-navig-online.xsl b/kde-navig-online.xsl --- a/kde-navig-online.xsl +++ b/kde-navig-online.xsl @@ -1,8 +1,8 @@ - - - + version="1.0"> + + + @@ -34,156 +34,157 @@ - - + + - +
    + +
    - +
    - + - - - - - + + + + + - - - - + + +
    diff --git a/package.json b/package.json new file mode 100644 --- /dev/null +++ b/package.json @@ -0,0 +1,20 @@ +{ + "devDependencies": { + "@symfony/webpack-encore": "^0.22.0", + "bootstrap": "^4.2.1", + "jquery": "^3.3.1", + "jquery-ui": "^1.12.1", + "node-sass": "^4.11.0", + "popper.js": "^1.14.6", + "sass-loader": "^7.1.0", + "webpack-notifier": "^1.6.0" + }, + "license": "UNLICENSED", + "private": true, + "scripts": { + "dev-server": "encore dev-server", + "dev": "encore dev", + "watch": "encore dev --watch", + "build": "encore production --progress" + } +} diff --git a/public/android-icon-144x144.png b/public/android-icon-144x144.png new file mode 100644 index 0000000000000000000000000000000000000000..74477edcd1f5e69bb42fcb5d5918ab2a74efc6c6 GIT binary patch literal 8567 zc$|%SWmFtX*X|rLcnA)`C3tY33BlbVI0-fkZo!>EkTAFgch}%fkO0BmLvVMO1o)cs z=X>va*InzbneJNMwX3>%%d?+d9jdA3(Zr5QuV5PEt(6ec>?O z!}+~-`nJe*+X8X1{Gax@kFEXst$i<|LAxU;bYqsXpTJ0gN6F95XNSID3?=VECc7`j zoOZTE8CWHrJ42Urvm|5#-h8xStcSh%%{I7@AFIK_R#$mELZy=L9%CzaDX$s1?-iNz zlcmk=*k}3r&;5~oi^=7+L0r6Q7i~6yCy4&nFDBfgz%*4_Rdh(UWEP&Ic&I4-Mj)QQ z{7-axq=aaEc`yqNV?3IMxbpuBc53YW^UEe0j}8x=S`0~Do`6P`P;Fv)3S=EQlyBKu%K?xd_o= z$+haDSLBdX?2vQ{Wz`U5bEhB@dcmU{hM3MX;$xm0VsWi`Sc3DMUfa8z8ythJD5-W6 zi8xy9O7pB)hi=DlVAnN zoa_tE7dnzCx@1H_^e0+Tv>0t>7X>`o9ED6TEv?CeI>Y?#4f4#<_EjfC)rQcs)2uvj z)Y4Gg8~yn)jYwK&%{|UicZ$t2YbI3cSj9;Z+*|>id@mvKW6Ai3P$nOIF51uw_&K*@ zS_7Rw`{&ja&ah_149VycG|KndqxaUWY%FH{Ix- zNNOWD0cn&kRxx|!hGf6hGT@3whs|rzMvMJK^~npgJv34=lW0ZZA!5=H3sm zWo4$}IhR3l?q1GYsY=z=-QS9d;1nX&vr^5h8M;X@~1iAgE0D-|oe?Hvy+<&n=j6f4-E3(M2=R4^zHb z{@qTIXs2tfC>zB^D_rIdfn7G-@ z7W*x@EuhGeh-OOQ=)G1#>u%vgf$cn%jkbPBsq}evB>e2}xLB;^@HYpUP*D_WZFD++ zrQuDXrd;HP;dtU{7ZdlC%!6Y%Z7esh7NBh0pPeXxw)}3Z;JjWG!KLg{Xu%AyzbEB( z&3(DSsCo)uZcx}#5d8kF;nH~57E#pdDh`biG;wYI^F8@q`jA3=yJQwQ*B?cq(-TeP zBYpiriTyp!;x32jgb`T-=<0exobUum@>e5!U^PZu{L%5>is!opTr?t4W>#`z(38Ah1|k4-Mih|_w|h_@fs~tn_2XD{QQ*R!AKGrU-)h>rPACFs zjf}VlqLz2_2dNCW&qQ%$sl!T6cET41Wt;{IBW89wIveT2@){rA8~P%-HIhf0#@N9(3$BC_O|YLaixha>*Zj+U)vySU5^@4>+_ zJ9{u&9}>gGd3mn{9uE86_m^7g0fSa+gNu4|zqMjeb4l34gKkeBD1!@O$TZjlqDXRC z1MtmL+hGmpFr+QP^D^H^;vIyI(3PLx%l&8!^mZM$%q$@iMIcjGd$hm|Tgl)Jao;QF z$RM@zZ!_A;61XS3(|kg$*_1U_WlOo{LTsPk8?5Z?v<(tN~nc)u&nrkjeYJ~m;{eKA_Lv561HrMCpHdggp7MXeGj&Ma; z^G_dt@0;6iH=dsBQe&7r3tF?xc*EOK0=>?$%GeUWB7JTBq3rJkV$k<%f5_>_p5dAd zz$W9c?cF8YTK9gOJHd|CWjiEKoyBud<_4~S?V=vDBWa`K}cFQjqb8e?>o18 zbvqt1yK6AaGUM&s;Og&wag|GM0-^ZREf107_s=&pBbddPkv9hkCg`Rb%e|f4$OcQ( zd*vxFNUy)D+_`UV$UYo4A?K`QhwthjwqIb4sToS=_SqF>N@u;HKrJ*O-+3`c_GROJ zs0Sfkk@!gy*5y>QZLb##@<9vEN+IeU8Y6dal!y#Lny5IM@^fU5+q|g4Bb)BBm#{Zz z*