diff options
Diffstat (limited to 'themes')
-rw-r--r-- | themes/README | 22 | ||||
-rw-r--r-- | themes/example/core/css/styles.css | 86 | ||||
-rw-r--r-- | themes/example/core/img/favicon-touch.png | bin | 0 -> 2030 bytes | |||
-rw-r--r-- | themes/example/core/img/favicon-touch.svg | 2 | ||||
-rw-r--r-- | themes/example/core/img/favicon.png | bin | 0 -> 592 bytes | |||
-rw-r--r-- | themes/example/core/img/favicon.svg | 2 | ||||
-rw-r--r-- | themes/example/core/img/logo-icon.png | bin | 0 -> 701 bytes | |||
-rw-r--r-- | themes/example/core/img/logo-icon.svg | 2 | ||||
-rw-r--r-- | themes/example/core/img/logo-mail.gif | bin | 0 -> 1950 bytes | |||
-rw-r--r-- | themes/example/core/img/logo.png | bin | 0 -> 3971 bytes | |||
-rw-r--r-- | themes/example/core/img/logo.svg | 2 | ||||
-rw-r--r-- | themes/example/defaults.php | 95 |
12 files changed, 205 insertions, 6 deletions
diff --git a/themes/README b/themes/README index 4025bc8970e..9c532b28aae 100644 --- a/themes/README +++ b/themes/README @@ -1,7 +1,17 @@ -This is the themes folder. Themes can be used to customize the look and feel of ownCloud without the need to patch the source code. -Themes can be placed in this folder with the name of the theme as foldername. The theme can be activated by putting -"theme" => 'themename', into the config.php file. -The folder structure of a theme is exactly the same as the main ownCloud structure. You can override js files and templates with own versions. css files are loaded additionaly to the default files so you can override css properties. -Themes should be developed here: https://github.com/owncloud/themes -You can also find a super simple example there +Themes can be used to customize the look and feel of ownCloud without the need to patch the source code. This makes it very easy to: +* Use your own logo (in the top left, in log in and in emails) +* Customize the text strings to replace »ownCloud« etc. with your name of choice +* Change the main color (used in header and as log in background) +* And more … + + +The process is simple: + +1. Put a folder here with the name of the theme as foldername +2. Activate it by putting 'theme' => 'themename', into the config.php file + + +The folder structure of a theme is exactly the same as the main ownCloud structure. CSS files are loaded additionally to the default files so you can override properties. Images are replaced. You can also override JS files and PHP templates but we do not recommend that because you will need to adjust them after every update. + +You can also find a basic example here which you can build upon. diff --git a/themes/example/core/css/styles.css b/themes/example/core/css/styles.css new file mode 100644 index 00000000000..a0aba8ae07a --- /dev/null +++ b/themes/example/core/css/styles.css @@ -0,0 +1,86 @@ +/** + * @author Jan-Christoph Borchardt, http://jancborchardt.net + * @copyright Copyright (c) 2015, ownCloud, Inc. + * @license AGPL-3.0 + * + * This code is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License, version 3, + * as published by the Free Software Foundation. + * + * 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License, version 3, + * along with this program. If not, see <http://www.gnu.org/licenses/> + */ + + +/* header color */ +/* this is the main brand color */ +#body-user #header, +#body-settings #header, +#body-public #header { + background-color: #745bca; +} + +/* log in screen background color */ +/* gradient of the header color and a brighter shade */ +/* can also be a flat color or an image */ +#body-login { + background: #745bca; /* Old browsers */ + background: -moz-linear-gradient(top, #947bea 0%, #745bca 100%); /* FF3.6+ */ + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#947bea), color-stop(100%,#745bca)); /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #947bea 0%,#745bca 100%); /* Chrome10+,Safari5.1+ */ + background: -o-linear-gradient(top, #947bea 0%,#745bca 100%); /* Opera11.10+ */ + background: -ms-linear-gradient(top, #947bea 0%,#745bca 100%); /* IE10+ */ + background: linear-gradient(top, #947bea 0%,#745bca 100%); /* W3C */ + filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#947bea', endColorstr='#745bca',GradientType=0 ); /* IE6-9 */ +} + +/* primary action button, use sparingly */ +/* header color as border, brighter shade again, here as background */ +.primary, +input[type="submit"].primary, +input[type="button"].primary, +button.primary, +.button.primary, +.primary:active, +input[type="submit"].primary:active, +input[type="button"].primary:active, +button.primary:active, +.button.primary:active { + border-color: #745bca; + background-color: #947bea; +} +.primary:hover, +input[type="submit"].primary:hover, +input[type="button"].primary:hover, +button.primary:hover, +.button.primary:hover, +.primary:focus, +input[type="submit"].primary:focus, +input[type="button"].primary:focus, +button.primary:focus, +.button.primary:focus { + background-color: #8b75e4; +} +.primary:active, input[type="submit"].primary:active, input[type="button"].primary:active, button.primary:active, .button.primary:active, +.primary:disabled, input[type="submit"].primary:disabled, input[type="button"].primary:disabled, button.primary:disabled, .button.primary:disabled, +.primary:disabled:hover, input[type="submit"].primary:disabled:hover, input[type="button"].primary:disabled:hover, button.primary:disabled:hover, .button.primary:disabled:hover, +.primary:disabled:focus, input[type="submit"].primary:disabled:focus, input[type="button"].primary:disabled:focus, button.primary:disabled:focus, .button.primary:disabled:focus { + background-color: #745bca; +} + +/* use logos from theme */ +#header .logo { + background-image: url('../img/logo.svg'); + width: 250px; + height: 121px; +} +#header .logo-icon { + background-image: url('../img/logo-icon.svg'); + width: 62px; + height: 34px; +} diff --git a/themes/example/core/img/favicon-touch.png b/themes/example/core/img/favicon-touch.png Binary files differnew file mode 100644 index 00000000000..e3a61ae5871 --- /dev/null +++ b/themes/example/core/img/favicon-touch.png diff --git a/themes/example/core/img/favicon-touch.svg b/themes/example/core/img/favicon-touch.svg new file mode 100644 index 00000000000..efa79b4359f --- /dev/null +++ b/themes/example/core/img/favicon-touch.svg @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" version="1.1" xml:space="preserve" height="128" width="128" enable-background="new 0 0 595.275 311.111" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 128 127.99999"><rect rx="20" ry="20" height="128" width="128" y="-.0000015" x="0" fill="#745bca"/><path d="m64 24a36 36 0 0 0 -35.758 32.016 20 20 0 0 0 -0.2422 -0.0156 20 20 0 0 0 -20 20 20 20 0 0 0 20 20h36 32a24 24 0 0 0 24 -24 24 24 0 0 0 -22.07 -23.906 36 36 0 0 0 -33.93 -24.094zm0 12a24 24 0 0 1 24 24 24 24 0 0 1 -24 24 24 24 0 0 1 -24 -24 24 24 0 0 1 24 -24z" fill="#fff"/></svg> diff --git a/themes/example/core/img/favicon.png b/themes/example/core/img/favicon.png Binary files differnew file mode 100644 index 00000000000..4394e13514b --- /dev/null +++ b/themes/example/core/img/favicon.png diff --git a/themes/example/core/img/favicon.svg b/themes/example/core/img/favicon.svg new file mode 100644 index 00000000000..a41137db754 --- /dev/null +++ b/themes/example/core/img/favicon.svg @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" version="1.1" xml:space="preserve" height="32" width="32" enable-background="new 0 0 595.275 311.111" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 32 31.999997"><rect rx="5" ry="5" height="32" width="32" y="-.0000052588" x="0" fill="#745bca"/><path d="m16 6a9 9 0 0 0 -8.9395 8.004 5 5 0 0 0 -0.0605 -0.004 5 5 0 0 0 -5 5 5 5 0 0 0 5 5h9 8a6 6 0 0 0 6 -6 6 6 0 0 0 -5.518 -5.977 9 9 0 0 0 -8.482 -6.023zm0 3a6 6 0 0 1 6 6 6 6 0 0 1 -6 6 6 6 0 0 1 -6 -6 6 6 0 0 1 6 -6z" transform="translate(0 -.0000019073)" fill="#fff"/></svg> diff --git a/themes/example/core/img/logo-icon.png b/themes/example/core/img/logo-icon.png Binary files differnew file mode 100644 index 00000000000..4ed70603b25 --- /dev/null +++ b/themes/example/core/img/logo-icon.png diff --git a/themes/example/core/img/logo-icon.svg b/themes/example/core/img/logo-icon.svg new file mode 100644 index 00000000000..925152145fe --- /dev/null +++ b/themes/example/core/img/logo-icon.svg @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" enable-background="new 0 0 595.275 311.111" xml:space="preserve" height="34" width="62" version="1.1" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" viewBox="0 0 62.001102 34"><path d="m31.001 2.9997a13.5 13.5 0 0 0 -13.409 12.006 7.5001 7.5001 0 0 0 -0.09082 -0.0058 7.5001 7.5001 0 0 0 -7.5001 7.5001 7.5001 7.5001 0 0 0 7.5001 7.5001h13.5 12a9.0002 9.0002 0 0 0 9 -9 9.0002 9.0002 0 0 0 -8.277 -8.965 13.5 13.5 0 0 0 -12.723 -9.0353zm0 4.5001a9.0002 9.0002 0 0 1 9.0002 9.0002 9.0002 9.0002 0 0 1 -9.0002 9.0002 9.0002 9.0002 0 0 1 -9.0002 -9.0002 9.0002 9.0002 0 0 1 9.0002 -9.0002z" fill="#fff"/></svg> diff --git a/themes/example/core/img/logo-mail.gif b/themes/example/core/img/logo-mail.gif Binary files differnew file mode 100644 index 00000000000..431db4e68ae --- /dev/null +++ b/themes/example/core/img/logo-mail.gif diff --git a/themes/example/core/img/logo.png b/themes/example/core/img/logo.png Binary files differnew file mode 100644 index 00000000000..ac766e29cd8 --- /dev/null +++ b/themes/example/core/img/logo.png diff --git a/themes/example/core/img/logo.svg b/themes/example/core/img/logo.svg new file mode 100644 index 00000000000..349c7ea19bb --- /dev/null +++ b/themes/example/core/img/logo.svg @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://www.w3.org/2000/svg" xml:space="preserve" height="120" viewBox="0 0 252.00001 119.99799" width="252" version="1.1" y="0px" x="0px" xmlns:cc="http://creativecommons.org/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" enable-background="new 0 0 595.275 311.111"><path d="m178.27 82.457v30.393h3.24v-30.393h-3.24zm67.22 0v8.711l0.08 1.504 0.14 1.543h-0.26c-1.55-2.11-3.77-3.164-6.68-3.164-2.78 0-4.96 0.976-6.52 2.929-1.56 1.954-2.35 4.694-2.35 8.22 0 3.53 0.78 6.25 2.33 8.17 1.56 1.91 3.74 2.87 6.54 2.87 2.98 0 5.22-1.09 6.72-3.26h0.18l0.43 2.87h2.63v-30.393h-3.24zm-227.69 1.426c-2.722 0-5.098 0.599-7.129 1.797-2.0184 1.185-3.5679 2.897-4.6486 5.136-1.0807 2.227-1.6211 4.825-1.6211 7.793 0 4.711 1.1003 8.331 3.3008 10.861 2.2005 2.51 5.3779 3.77 9.5309 3.77 2.891 0 5.508-0.49 7.852-1.47v-5.07c-2.852 1-5.28 1.5-7.285 1.5-4.779 0-7.168-3.18-7.168-9.552 0-3.059 0.625-5.442 1.875-7.148 1.25-1.719 3.014-2.578 5.293-2.578 1.041 0 2.103 0.189 3.183 0.566 1.081 0.378 2.155 0.821 3.223 1.328l1.953-4.921c-2.799-1.342-5.586-2.012-8.359-2.012zm149.99 0c-2.82 0-5.26 0.599-7.35 1.797-2.07 1.198-3.66 2.903-4.76 5.117-1.1 2.213-1.64 4.792-1.64 7.734 0 4.699 1.14 8.329 3.42 10.879 2.29 2.55 5.54 3.83 9.74 3.83 2.9 0 5.35-0.37 7.33-1.12v-2.91c-2.56 0.72-4.83 1.08-6.82 1.08-3.24 0-5.74-1.02-7.5-3.05-1.75-2.04-2.62-4.93-2.62-8.67 0-3.632 0.91-6.491 2.72-8.574 1.82-2.096 4.3-3.144 7.44-3.144 2.16 0 4.32 0.507 6.48 1.523l1.41-2.852c-2.24-1.093-4.86-1.64-7.85-1.64zm-94.073 2.48l-1.719 4.61-3.281 1.992v2.519h2.851v10.526c0 2.41 0.541 4.22 1.621 5.43 1.094 1.2 2.832 1.8 5.215 1.8 2.162 0 3.985-0.33 5.469-1v-4.43c-1.458 0.45-2.708 0.68-3.75 0.68-0.781 0-1.413-0.2-1.894-0.6-0.469-0.41-0.704-1.03-0.704-1.88v-10.526h6.114v-4.472h-6.114v-4.649h-3.808zm-13.391 4.239c-2.76 0-4.896 0.533-6.406 1.601-1.497 1.055-2.246 2.552-2.246 4.492 0 1.133 0.176 2.09 0.527 2.871 0.365 0.764 0.938 1.454 1.719 2.054 0.794 0.6 2.031 1.25 3.711 1.95 1.172 0.5 2.109 0.93 2.812 1.31 0.703 0.36 1.198 0.7 1.485 1 0.286 0.28 0.429 0.66 0.429 1.13 0 1.25-1.08 1.87-3.242 1.87-1.054 0-2.278-0.17-3.672-0.52-1.38-0.36-2.623-0.79-3.73-1.31v4.92c0.976 0.42 2.025 0.73 3.144 0.94 1.12 0.22 2.474 0.33 4.063 0.33 3.099 0 5.423-0.59 6.973-1.76 1.562-1.17 2.343-2.88 2.343-5.12 0-1.08-0.188-2.01-0.566-2.79s-0.964-1.47-1.758-2.07-2.044-1.24-3.75-1.934c-1.914-0.768-3.157-1.347-3.73-1.738-0.56-0.39-0.84-0.853-0.84-1.387 0-0.95 0.879-1.425 2.637-1.425 0.989 0 1.959 0.149 2.91 0.449 0.95 0.299 1.972 0.683 3.066 1.152l1.797-4.297c-2.487-1.146-5.046-1.718-7.676-1.718zm35.258 0c-3.372 0-5.99 0.989-7.852 2.968s-2.793 4.753-2.793 8.32c0 2.29 0.43 4.3 1.29 6.02 0.859 1.71 2.089 3.04 3.691 3.96 1.601 0.91 3.45 1.37 5.547 1.37 3.346 0 5.953-1 7.833-3.01 1.87-2 2.81-4.78 2.81-8.34 0-2.291-0.43-4.29-1.29-5.995-0.86-1.706-2.09-3.015-3.69-3.926-1.601-0.912-3.45-1.367-5.546-1.367zm25.476 0c-1.43 0-2.7 0.286-3.8 0.859-1.11 0.56-1.96 1.341-2.54 2.344h-0.34l-0.8-2.793h-4.55v21.838h5.96v-10.28c0-2.56 0.35-4.403 1.04-5.523s1.79-1.68 3.32-1.68c1.13 0 1.96 0.397 2.48 1.192 0.53 0.781 0.8 1.959 0.8 3.531v12.76h5.95v-10.96c0-2.265 0.36-3.919 1.08-4.96 0.73-1.042 1.82-1.563 3.28-1.563 1.13 0 1.96 0.397 2.48 1.192 0.53 0.781 0.8 1.959 0.8 3.531v12.76h5.98v-14.241c0-2.799-0.64-4.83-1.92-6.093-1.26-1.276-3.13-1.914-5.6-1.914-1.43 0-2.72 0.28-3.87 0.839-1.13 0.56-1.99 1.348-2.58 2.364h-0.52c-1.16-2.136-3.38-3.203-6.65-3.203zm-92.503 0.41v14.238c0 2.58 0.651 4.56 1.953 5.94 1.302 1.36 3.235 2.05 5.801 2.05 1.497 0 2.832-0.28 4.003-0.82 1.172-0.56 2.077-1.35 2.715-2.37h0.313l0.801 2.8h4.57v-21.838h-5.957v10.278c0 2.57-0.371 4.42-1.113 5.54-0.743 1.11-1.947 1.66-3.614 1.66-1.224 0-2.116-0.39-2.675-1.17-0.56-0.79-0.84-1.98-0.84-3.55v-12.758h-5.957zm166.56 0.039c-3.1 0-5.53 0.976-7.27 2.929-1.75 1.941-2.62 4.655-2.62 8.14 0 2.26 0.41 4.22 1.21 5.9 0.81 1.68 1.96 2.97 3.44 3.87 1.49 0.9 3.18 1.35 5.1 1.35 3.1 0 5.53-0.98 7.28-2.93 1.76-1.97 2.64-4.7 2.64-8.19 0-3.393-0.89-6.089-2.66-8.081-1.75-1.992-4.13-2.988-7.12-2.988zm13.21 0.39v14.009c0 2.72 0.64 4.7 1.93 5.93 1.31 1.24 3.26 1.86 5.86 1.86 1.51 0 2.85-0.28 4.03-0.84s2.11-1.37 2.77-2.42h0.18l0.46 2.87h2.68v-21.409h-3.24v11.249c0 2.77-0.52 4.77-1.56 6-1.03 1.22-2.67 1.83-4.91 1.83-1.69 0-2.93-0.43-3.73-1.29-0.79-0.85-1.19-2.16-1.19-3.9v-13.889h-3.28zm30.81 2.325c2.22 0 3.82 0.651 4.83 1.953 1.01 1.289 1.52 3.45 1.52 6.481v0.69c0 2.68-0.5 4.63-1.5 5.84-0.99 1.19-2.59 1.79-4.81 1.79-1.94 0-3.41-0.69-4.41-2.09-1.01-1.39-1.51-3.45-1.51-6.19 0-2.693 0.5-4.776 1.51-6.248 1.01-1.484 2.47-2.226 4.37-2.226zm-44.12 0.039c2.15 0 3.77 0.709 4.86 2.129 1.11 1.406 1.66 3.47 1.66 6.186 0 2.75-0.55 4.84-1.66 6.27-1.09 1.42-2.7 2.13-4.82 2.13-2.13 0-3.73-0.71-4.83-2.14-1.09-1.44-1.64-3.52-1.64-6.26 0-2.755 0.54-4.832 1.62-6.225 1.08-1.394 2.69-2.09 4.81-2.09zm-99.514 1.601c1.601 0 2.754 0.541 3.457 1.621 0.703 1.081 1.057 2.702 1.057 4.863 0 2.18-0.354 3.82-1.057 4.92-0.69 1.1-1.83 1.64-3.418 1.64-1.602 0-2.76-0.55-3.477-1.66-0.703-1.1-1.054-2.74-1.054-4.9 0-2.174 0.351-3.795 1.054-4.863 0.703-1.08 1.849-1.621 3.438-1.621z" transform="translate(0 -.0010071)" fill="#fff"/><path d="m135.84 10.41a32.143 32.143 0 0 0 -31.927 28.585 17.857 17.857 0 0 0 -0.21625 -0.01393 17.857 17.857 0 0 0 -17.857 17.857 17.857 17.857 0 0 0 17.857 17.857h32.143 28.571a21.429 21.429 0 0 0 21.43 -21.428 21.429 21.429 0 0 0 -19.71 -21.344 32.143 32.143 0 0 0 -30.29 -21.513zm0 10.714a21.429 21.429 0 0 1 21.429 21.429 21.429 21.429 0 0 1 -21.429 21.429 21.429 21.429 0 0 1 -21.429 -21.429 21.429 21.429 0 0 1 21.429 -21.429z" fill="#fff"/></svg> diff --git a/themes/example/defaults.php b/themes/example/defaults.php new file mode 100644 index 00000000000..0dd0d46bd9c --- /dev/null +++ b/themes/example/defaults.php @@ -0,0 +1,95 @@ +<?php +/** + * @author Björn Schießle <schiessle@owncloud.com> + * @author Jan-Christoph Borchardt, http://jancborchardt.net + * @copyright Copyright (c) 2015, ownCloud, Inc. + * @license AGPL-3.0 + * + * This code is free software: you can redistribute it and/or modify + * it under the terms of the GNU Affero General Public License, version 3, + * as published by the Free Software Foundation. + * + * 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 Affero General Public License for more details. + * + * You should have received a copy of the GNU Affero General Public License, version 3, + * along with this program. If not, see <http://www.gnu.org/licenses/> + */ + +class OC_Theme { + + private $themeEntity; + private $themeName; + private $themeTitle; + private $themeBaseUrl; + private $themeDocBaseUrl; + private $themeSyncClientUrl; + private $themeSlogan; + private $themeMailHeaderColor; + + /* put your custom text in these variables */ + function __construct() { + $this->themeEntity = 'Custom Cloud Co.'; + $this->themeName = 'Custom Cloud'; + $this->themeTitle = 'Custom Cloud'; + $this->themeBaseUrl = 'https://owncloud.org'; + $this->themeDocBaseUrl = 'https://doc.owncloud.org'; + $this->themeSyncClientUrl = 'https://owncloud.org/install'; + $this->themeSlogan = 'Your custom cloud, personalized for you!'; + $this->themeMailHeaderColor = '#745bca'; + } + /* nothing after this needs to be adjusted */ + + public function getBaseUrl() { + return $this->themeBaseUrl; + } + + public function getSyncClientUrl() { + return $this->themeSyncClientUrl; + } + + public function getDocBaseUrl() { + return $this->themeDocBaseUrl; + } + + public function getTitle() { + return $this->themeTitle; + } + + public function getName() { + return $this->themeName; + } + + public function getEntity() { + return $this->themeEntity; + } + + public function getSlogan() { + return $this->themeSlogan; + } + + public function getShortFooter() { + $footer = '© 2015 <a href="'.$this->getBaseUrl().'" target="_blank\">'.$this->getEntity().'</a>'. + '<br/>' . $this->getSlogan(); + + return $footer; + } + + public function getLongFooter() { + $footer = '© 2015 <a href="'.$this->getBaseUrl().'" target="_blank\">'.$this->getEntity().'</a>'. + '<br/>' . $this->getSlogan(); + + return $footer; + } + + public function buildDocLinkToKey($key) { + return $this->getDocBaseUrl() . '/server/8.0/go.php?to=' . $key; + } + + public function getMailHeaderColor() { + return $this->themeMailHeaderColor; + } + +} |