From cd0fa062ebea4fd1c340a31e996e033754acd456 Mon Sep 17 00:00:00 2001 From: Jan-Christoph Borchardt Date: Fri, 22 May 2015 02:17:46 +0200 Subject: [PATCH] add example theme --- .gitignore | 3 +- themes/README | 22 +++-- themes/example/core/css/styles.css | 86 ++++++++++++++++++++ themes/example/core/img/favicon-touch.png | Bin 0 -> 2030 bytes themes/example/core/img/favicon-touch.svg | 2 + themes/example/core/img/favicon.png | Bin 0 -> 592 bytes themes/example/core/img/favicon.svg | 2 + themes/example/core/img/logo-icon.png | Bin 0 -> 701 bytes themes/example/core/img/logo-icon.svg | 2 + themes/example/core/img/logo-mail.gif | Bin 0 -> 1950 bytes themes/example/core/img/logo.png | Bin 0 -> 3971 bytes themes/example/core/img/logo.svg | 2 + themes/example/defaults.php | 95 ++++++++++++++++++++++ 13 files changed, 207 insertions(+), 7 deletions(-) create mode 100644 themes/example/core/css/styles.css create mode 100644 themes/example/core/img/favicon-touch.png create mode 100644 themes/example/core/img/favicon-touch.svg create mode 100644 themes/example/core/img/favicon.png create mode 100644 themes/example/core/img/favicon.svg create mode 100644 themes/example/core/img/logo-icon.png create mode 100644 themes/example/core/img/logo-icon.svg create mode 100644 themes/example/core/img/logo-mail.gif create mode 100644 themes/example/core/img/logo.png create mode 100644 themes/example/core/img/logo.svg create mode 100644 themes/example/defaults.php diff --git a/.gitignore b/.gitignore index 3395774d23..4a625fb858 100644 --- a/.gitignore +++ b/.gitignore @@ -29,8 +29,9 @@ -# ignore themes except the README +# ignore themes except the example and the README /themes/* +!/themes/example !/themes/README # just sane ignores diff --git a/themes/README b/themes/README index 4025bc8970..9c532b28aa 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 0000000000..a0aba8ae07 --- /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 + */ + + +/* 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 new file mode 100644 index 0000000000000000000000000000000000000000..e3a61ae58711a43c03f9242c9df09fa261ed31dd GIT binary patch literal 2030 zcmY+^dpy(o9|!OmqlHom9hDs^raGsPOBY2JD|J{=LN49bMa0M=)(UgUWzBsqkytJ% zl#V--%Vt{`4Ke02w{2K*-G1NBAHT;r-^cU&{=OgY_v`!l>-+dd+Fh_#-uT-_5D27< zw6Q_~Pu#D2gDgP;+I(Gr9zgSRZu56;$2hn9xzI4qZ5S6|Lc_SU`vVnNx%^uB zUv2+q-sbl!*#=Dh1&9IRcFfg(Dsaw!w*O87{jV^P{Qv8~`2nu9fNQiz05@77z@3iu zpg;Dc2VDnr1mEZgzS;2vaElRgn-Pj;gx+D`?l7O;W#aEKpWSCY^I|=JzzXwbMLhf( z;ro>U@av2OU^-*5-La3m5gV_mB*a;zQVhHc)O4i=J! ziZX_ZGr1*M+>&hWJHV^q(wyPG_VO_hA=XFm1s$!0*+|qLfnWA2n=-XFOKYMQQ+rkiMf!n_@G9cy+ibscj zjB$UAk1S5`7WshD#i{Y1QxiX@0sJMw^s;bfSv0#W5-iUNR_25&^P-i7xfSvJ>W_uh zMe*v-#kHlMfc532_0<)CWNlTlwkBBztV<*kDRB9RLoWg!;t34u!bK2R79y{psHD1W zyPEngEfce&&aQ5O*vCPH$mryh)U9!gd4fS($q90(HQmJ!|UBV@;stGKM z*X;CNgQolb)-`D`Hc+QM8I#?yXFxS6DfXKbWYVd;%K*Bv78SeQyrlXs{=ky5x`Y7k zx=eN;>G=>*It}({Jx}mX5^1?<(As*3rc5hbtXO?Oulq3p{v$F5HKc*Miwj2?7Qrhl zttkifK3?w?B=;3Gn#Q_uUUuN2lz=?@_c?ZbmR^vGt6oQH-R%j@>fI@7=)I27@>KlQ zyOc0bO{f#m(RfBu(sHtl#yRol4HHAgs2^k~m27r9>-Kz|GFk!Ma%Lg=k#vx9?AX|` zb6r~E7Uv!DyPZosv#jfa#kTjrV!F3+FlWDzpP+Eu%mLie#6%^?Q>|$#1-8^&Mbny1 z&_@b;HrluZz?vD4&TR3)D0ez$Z9d6O+_)_zziCsYT?8?d8Kx=9R7M2sqvK*^Zw7gX ztNVNb7q0P^e1smZCkKul56M;P5zss!)#wiq_s31KEYNikPsPK@wzzVO?cEArg z)N>lz+Ei%Xg{a-?HrqHoeF)4j6OV(r&-s z9^Qcj#u#hH8w?v;TMptwGtma_TOS}^JTFI7zBr=Jvd7aNt0Qf`N6=)8DL5sUq7b5i zT?B3VJfx_8uQjnYjD|9lnLJ@cBI;1?DJnB++!iJ}6_hGBBtwY-&{fmAP+vYw24R!} zB_F$-LKGo#5g{3ZyzNyjTNHNE|L)3`f?X;nZRTnP1U#XHrL@EsP2rqJogvZH+D>m41HpqP&hKh-o@*Pl+y!8P#p z+l^rgwN5A>Ww1#qs94V2kRnFzD{YV?<86{&pSPsm0Kb7{i<~m`Pg6a?YB16sBzD8B zflR1HfqC|!H0Y%ikgBI9oalpA^-QQsa|#Q6aHA`WH9}=DE2|e9bn7_i4nzS#=RP%rRB0WjoH& z4xN(7oPiviEBF&_T7z>eWy;4*K&;MIXS39{90?*-m9EpC%LlC(}QsFW}m(&CEoO(8BIR+FaJ#~72*F;>o6v^I% zRw$S4lbOXy(>_&glY0t^YV6$xw@_+s)LXSEApAc63L0J|^+MQtkm5RKomHdG^{G>5*^q{$F*A76#nHrw4px-tSEKyg)u_YQVd zxyHnzPcx@fgi(qoKA4&7ROISDINWG5S(K-cuaC%rr5k-YDj}4;ftP_?FB{es`s(|) RMgjjz5E600s>ISA|3CPPHADaa literal 0 HcmV?d00001 diff --git a/themes/example/core/img/favicon-touch.svg b/themes/example/core/img/favicon-touch.svg new file mode 100644 index 0000000000..efa79b4359 --- /dev/null +++ b/themes/example/core/img/favicon-touch.svg @@ -0,0 +1,2 @@ + + diff --git a/themes/example/core/img/favicon.png b/themes/example/core/img/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..4394e13514b51024b6b5af35074d07ddd62a1976 GIT binary patch literal 592 zcmV-W0%5+=FbXv-DTg!A?%5+@HbX&@FTgr4>$#h%FbX&@GT*`M} z%XnYQdSc9bW6XSH&4X;vh;q@0bJB@((us7^j(OCMdeo7A)slYIlYiEefYz0Q)|GW=)}6|$-nB#!RyPy>)h4x+}85l z*7Dug^4{3;-`Vrv+VkMs^Wog|<>2+@;q~a`_Uq^O?CALL?)moh{P*?z_xAkw_x$+x z{rUL)`uY9)`u_a;{{R2~i<7`u0000GbW%=J0833yP=tqyy}rM|@$&QZg#?hM0003C zNklAor0x}5L_wi0A}+X8vCw|+|322K#P``MM-_WeqN+VuCH{jJbS_?|v)8LmJw4dG!?)3PT5vFd@^<(; z*m(!SeyiDR4Z^tCGK2aE@ON3bK5%OW$3Q6OQiQ;f5nKX&Ry<(#*lYX@o`F49+W7Lc zF%P=KDFBBR2V%UI1m^(sU>%8`1YHQ@3GpDo5Q%{{r1+2^Kq7S2HzOn_S^(cwi_)IB z!Cd6E9cSN*0By)qWEnRk;IpiAwWyQp0H)wxt=i&$f+}0BP}v?7DQ^!Jhze}6M6p~c eV~%PuzW)iooq7%>qRkip0000 + diff --git a/themes/example/core/img/logo-icon.png b/themes/example/core/img/logo-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..4ed70603b25ae020ac54fe5ec8577d82063bbc43 GIT binary patch literal 701 zcmV;u0z&K%16<5H753YSQjsBnL5-;z#ZyD1YlYd>dyZS z*`vN~0A>GH1H{;~Sp3G|Vy+r0kALI_Jm8Hzx*sV{P>^GH3e z{xfJbRNJOc@*cRR!HMj4=sDbrPpIUO?|1}RZp6+-ZwJsDzln(zFAeR*R(OmmwGnC zq`w5vfek=aSJe}F1{L+9`apeeva{3LTLNg-Ol9ed+MN#WR_6-@Z!H0ITR~9OnKa~b z!N68lw5EZIS^@3@y9?%tx}$S+FtYz}1sDMiMFgFROj3qNKkCECX;@L)8znS3M?Xd8 z{8|AHN9O7P#u^0$ZUVa^V?_NKIXW%(t}mijn4Fi5=$Cpq0`f{VrV-siooq0;rWv)* z{O{2|^>LFq27@{Z+>4#Y3@wrTaek;icaePIcQxrd9YPokCg + diff --git a/themes/example/core/img/logo-mail.gif b/themes/example/core/img/logo-mail.gif new file mode 100644 index 0000000000000000000000000000000000000000..431db4e68ae2686abafe77a4378d14497fb39ecb GIT binary patch literal 1950 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 Zo~x?Ru@+=?Zu#`7T-l{dq|<;k{{uB+85RHl literal 0 HcmV?d00001 diff --git a/themes/example/core/img/logo.png b/themes/example/core/img/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..ac766e29cd896c6b9969ff64b7f385ca2b37de35 GIT binary patch literal 3971 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 t9NMU_H@~+FJnPT>81(Yrgf&xWt + diff --git a/themes/example/defaults.php b/themes/example/defaults.php new file mode 100644 index 0000000000..0dd0d46bd9 --- /dev/null +++ b/themes/example/defaults.php @@ -0,0 +1,95 @@ + + * @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 + */ + +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 '.$this->getEntity().''. + '
' . $this->getSlogan(); + + return $footer; + } + + public function getLongFooter() { + $footer = '© 2015 '.$this->getEntity().''. + '
' . $this->getSlogan(); + + return $footer; + } + + public function buildDocLinkToKey($key) { + return $this->getDocBaseUrl() . '/server/8.0/go.php?to=' . $key; + } + + public function getMailHeaderColor() { + return $this->themeMailHeaderColor; + } + +}