diff --git a/assets/calendar.css b/assets/calendar.css new file mode 100644 index 0000000..9524ac5 --- /dev/null +++ b/assets/calendar.css @@ -0,0 +1,52 @@ +.bdp_cal_outer { + background-color: #ffffff; + width: 85%; + margin: auto; + padding: 10px; + border-style: solid; border-color: #d0d0d0; border-radius: 10px; padding: 15px; border-width: 1px; + box-shadow: 2px 2px 5px #c0c0c0; +} + +.bdp_cal_inner { + border-style: solid; border-color: #d0d0d0; border-radius: 10px; padding: 15px; border-width: 1px; + box-shadow: 2px 2px 5px #c0c0c0; + width: 80%; + margin: 0 auto 40px; +} + +.bdp_cal_inner legend { + background-color: #ffcb04; + background: linear-gradient(#ffffff 5%, #ffcb04); + color: #3163bd; + width: 150px; + padding: 5px 0 5px 25px; + font-weight: bold; + border-style: solid; + border-width: 1px; + border-color: #d0d0d0; + border-radius: 10px; + box-shadow: 2px 2px 5px #c0c0c0; +} + +.bdp_cal_inner table { + width: 100%; +} + +.bdp_cal_inner table tr td:first-child { + width: 100px; + font-weight: bold; +} + +.bdp_cal_inner table tr td:nth-child(2) { + padding:5px 10px; +} + +.bdp_cal_inner table tr td:last-child { + width: 100%; + font-weight: bold; +} + + +.long_text { + width: 80%; +} \ No newline at end of file diff --git a/assets/dashboard.style.css.tpl b/assets/dashboard.style.css.tpl new file mode 100644 index 0000000..f0018b7 --- /dev/null +++ b/assets/dashboard.style.css.tpl @@ -0,0 +1,36 @@ + \ No newline at end of file diff --git a/assets/security.css b/assets/security.css new file mode 100644 index 0000000..be7bfbb --- /dev/null +++ b/assets/security.css @@ -0,0 +1,55 @@ +.bdp_security_outer { + background-color: #ffffff; + width: 85%; + margin: auto; + padding: 10px; + border-style: solid; border-color: #d0d0d0; border-radius: 10px; padding: 15px; border-width: 1px; + box-shadow: 2px 2px 5px #c0c0c0; +} + +.bdp_security_inner { + border-style: solid; border-color: #d0d0d0; border-radius: 10px; padding: 15px; border-width: 1px; + box-shadow: 2px 2px 5px #c0c0c0; + width: 80%; + margin: 0 auto 40px; +} + +.bdp_security_inner legend { + background-color: #ffcb04; + background: linear-gradient(#ffffff 5%, #ffcb04); + color: #3163bd; + width: 150px; + padding: 5px 0 5px 25px; + font-weight: bold; + border-style: solid; + border-width: 1px; + border-color: #d0d0d0; + border-radius: 10px; + box-shadow: 2px 2px 5px #c0c0c0; +} + +.bdp_security_inner table { + width: 100%; +} + +.bdp_security_inner table tr td:first-child { + width: 75px; + vertical-align: top; + font-weight: bold; + padding-top: 10px; +} + +.bdp_security_inner table tr td:nth-child(2) { + vertical-align: top; + padding:5px 10px; +} + +.bdp_security_inner table tr td:last-child { + + font-weight: bold; +} + + +.long_text { + width: 80%; +} \ No newline at end of file diff --git a/assets/wordpress-bdp.css b/assets/wordpress-bdp.css new file mode 100644 index 0000000..1e137fe --- /dev/null +++ b/assets/wordpress-bdp.css @@ -0,0 +1,87 @@ +#adminmenu, +#wpadminbar, +#adminmenuwrap, +#adminmenuback { + background-color: #ffcb04 !important; +} + +#toplevel_page_limit-login-attempts, +#wp-admin-bar-llar-root { + display: none; +} + +.wp-submenu-wrap, +.wp-submenu-head { + color: #FFFFFF !important; +} + +.wp-has-submenu, +.wp-not-current-submenu, +.menu-top, + +#collapse-button, +#wp-submenu ul, +#wp-admin-bar-site-name, +.ab-item +{ + color: #46484d !important; + font-weight: bold !important; +} +.wp-menu-open , +.wp-has-current-submenu li, +#adminmenu ul +{ + background-color: #3163bd !important; + color: #FFFFFF !important; +} + +.wp-not-current-submenu:hover, +#wpadminbar .ab-item:hover +{ + background-color: #3163bd !important; + color: #FFFFFF !important; + +} + +.ab-submenu { + background-color: #ffcb04 !important; +} + +#wp-admin-bar-updates, +#wp-admin-bar-comments, +#wp-admin-bar-new-content, +#wp-admin-bar-wp-logo +{ + display: none; +} + +.bdp_submit:hover { + color: #ffffff; + background-color: #3163bd; + cursor: pointer; + border-radius: 5px; +} + +.bdp_submit { + background-color: #ffffff; + padding: 5px 25px; + border-style: solid; + border-width: 1px; + border-color: #769be7; + cursor: pointer; + border-radius: 5px; + box-shadow: 2px 2px 2px #d0d0d0; +} + +#bdp_success { + background-color: #ffffff; + border-color: #c3c4c7; + border-left-color: #00a32a; + padding: 10px 12px; + margin: 5px 0 15px; + border-width: 1px; + border-style: solid; + border-left-width: 4px; + width: 97%; + +} \ No newline at end of file diff --git a/bdp-kompass.php b/bdp-kompass.php new file mode 100644 index 0000000..aa29d97 --- /dev/null +++ b/bdp-kompass.php @@ -0,0 +1,201 @@ +plugin_slug = 'bdp-kompass'; + $this->updateUrl = $plugin_data['UpdateURI'] . '/info.json'; + $this->version = $plugin_data['Version']; + $this->cache_key = 'bdp_kompass_upd'; + $this->cache_allowed = true; + + add_filter('plugins_api', array($this, 'info'), 20, 3); + add_filter('site_transient_update_plugins', array($this, 'update')); + add_action('upgrader_process_complete', array($this, 'purge'), 10, 2); + } + + public function request() + { + $remote = get_transient($this->cache_key); + + if (false === $remote || !$this->cache_allowed) { + + $remote = wp_remote_get( + $this->updateUrl + , + array( + 'timeout' => 10, + 'headers' => array( + 'Accept' => 'application/json' + ) + ) + ); + + if ( + is_wp_error($remote) + || 200 !== wp_remote_retrieve_response_code($remote) + || empty(wp_remote_retrieve_body($remote)) + ) { + return false; + } + + set_transient($this->cache_key, $remote, 3600); + } + + $remote = json_decode(wp_remote_retrieve_body($remote)); + return $remote; + + } + + + function info($res = '', $action = '', $args = '') + { + if (!isset($args->slug) || $args->slug !== $this->plugin_slug) { + return $res; + } + + // get updates + $remote = $this->request(); + if (!$remote) { + return $res; + } + + $res = new stdClass(); + + $res->name = $remote->name; + $res->slug = $remote->slug; + $res->version = $remote->version; + $res->tested = $remote->tested; + $res->requires = $remote->requires; + $res->author = $remote->author; + $res->author_profile = $remote->author_profile; + $res->download_link = $remote->download_url; + $res->trunk = $remote->download_url; + $res->requires_php = $remote->requires_php; + $res->last_updated = $remote->last_updated; + + $res->sections = array( + 'description' => $remote->sections->description, + 'installation' => $remote->sections->installation, + 'changelog' => $remote->sections->changelog + ); + + if (!empty($remote->banners)) { + $res->banners = array( + 'low' => $remote->banners->low, + 'high' => $remote->banners->high + ); + } + + return $res; + } + + public function update($transient) + { + if (empty($transient->checked)) { + return $transient; + } + + $remote = $this->request(); + if( + $remote + && version_compare( $this->version, $remote->version, '<' ) + && version_compare( $remote->requires, get_bloginfo( 'version' ), '<=' ) + && version_compare( $remote->requires_php, PHP_VERSION, '<' ) + ) { + $res = new stdClass(); + $res->slug = $this->plugin_slug; + $res->plugin = plugin_basename( __FILE__ ); + $res->new_version = $remote->version; + $res->tested = $remote->tested; + $res->package = $remote->download_url; + + $transient->response[ $res->plugin ] = $res; + + } else { + $res = new stdClass(); + $res->slug = $this->plugin_slug; + $res->plugin = plugin_basename( __FILE__ ); + $transient->no_update[ $res->plugin ] = $res; + } + + return $transient; + } + + public function purge($upgrader, $options) + { + if ( + $this->cache_allowed + && 'update' === $options['action'] + && 'plugin' === $options['type'] + ) { + delete_transient($this->cache_key); + } + } +} +$class = new BdpVersionChecker(); + +add_filter( 'plugins_api', array( $class, 'info' ), 20, 3 ); diff --git a/buena/404.php b/buena/404.php new file mode 100644 index 0000000..543055f --- /dev/null +++ b/buena/404.php @@ -0,0 +1,96 @@ + + + + +> + + + + + + + + + + + +> +
+ +
+ 'primary', 'depth' => 2, 'container' => 'nav', 'container_class' => 'nav-menu' ] ); ?> + + + +
+
+ + + '' ] ); ?> + + + +
+

+
+ + + +
+

+
+ +
+
+
+ + + + + +
+ +
+ +
+ + +
+
+ + + + + + diff --git a/buena/comments.php b/buena/comments.php new file mode 100644 index 0000000..3669590 --- /dev/null +++ b/buena/comments.php @@ -0,0 +1,27 @@ +%s

', __( 'Kommentare werden erst angezeigt, wenn das Kennwort eingegeben wurde.', 'buena-theme' ) ); + return; +} + +// FIXME: Hier sollten die Social-Media-Knöpfe auftauchen… + +?> +
+ +

+ + + + + + +

+ +
diff --git a/buena/content.php b/buena/content.php new file mode 100644 index 0000000..54689ca --- /dev/null +++ b/buena/content.php @@ -0,0 +1,17 @@ +
> + + +

+ '' ) ); ?> + + + '' ] ); ?> + +
+

+
+ +
+ + +
diff --git a/buena/editor-style.css b/buena/editor-style.css new file mode 100644 index 0000000..9547505 --- /dev/null +++ b/buena/editor-style.css @@ -0,0 +1,104 @@ +@charset "UTF-8"; + +@import url("font/ihs.css"); + +html, body { border: 0 none; padding: 0; margin: 0; min-height: 100%; position: static; } +html { font-family: Sans-Serif; background: url("img/holz.jpg") #dbb97b; position: relative; } +body { margin: 1em; padding: 1em; max-width: 710px; background: #fff; font-size: 81.3% !important; } +body.post-type-gallery { background: transparent; } +header, hgroup, nav, footer, article { display: block; } +.h, h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { margin: 0; font-family: IHS, Serif; font-size: 1em; font-weight: normal; font-style: normal; } +button, input, select, optgroup, option { margin: 0; font: inherit; color: inherit; } +button, input[type="button"], input[type="submit"], input[type="reset"] { cursor: pointer; } +p, ul, ol, dt { line-height: 1.5; } +abbr { border-bottom: 1px dotted; } +a { color: #1d4899; } +figure, .wp-caption { margin: 0; max-width: 100%; } +figcaption, .wp-caption-text { font-style: italic; padding: 0.5em 0; } +.screen-reader-text { display: none; } +.aligncenter { margin: 0 auto; } +.alignleft { float: left; margin: 0 1em 0 0; } +.alignright { float: right; margin: 0 0 0 1em; } + +::-moz-selection { background: #1d4899; color: #ffcb04; text-shadow: none; outline: 2px solid #1d4899; } + ::selection { background: #1d4899; color: #ffcb04; text-shadow: none; outline: 2px solid #1d4899; } + +/* Media object */ +.media { margin: 1em 0; } +.media, .bd { overflow: hidden; _overflow: visible; } +/*.media img { display: block; }*/ +/* Clearfix */ +.clearfix::after, +.clearfix::before, +.media::after, +.media::before { content: " "; display: table; } +.clearfix::after, +.media::after { clear: both; } + +/* Überschriften mit Bild darunter */ +.h-box { position: relative; display: block; margin-bottom: 1em; text-decoration: none; } +.h-box > img { position: absolute; top: 0; left: 0; height: 100%; width: 100%; } +.h-box > .wrap { position: absolute; max-width: 100%; left: 0; } +.h-box > .wrap > * { display: inline; -o-box-decoration-break: clone; -webkit-box-decoration-break: clone; box-decoration-break: clone; } + +.h-box-teaser { box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3); margin-left: -240px; line-height: 1; display: inline-block; width: 1300px; max-width: 100%; } +.h-box-teaser > img { position: static; } +.h-box-teaser > .wrap { bottom: 1em; padding-left: 240px; } +.h-box-teaser > .wrap > * { background: rgba(56, 46, 35, 0.7); color: #ffcb04; padding: 2px 13px 4px; font-size: 52px; line-height: 78px; } +@media (max-width: 720px) { + .h-box-teaser { margin-top: 1em; margin-left: 0; } + .h-box-teaser > .wrap { padding-left: 1em; } + .h-box-teaser > .wrap > * { font-size: 2em; line-height: 39px; } +} + +.h-box-blaugelb { padding-top: 47.1428571%; } +.h-box-blaugelb > .wrap { bottom: 0; font-size: 18px; } +.h-box-blaugelb > .wrap > * { color: #1d4899; background: #ffcb04; padding: 3px 5px; line-height: 26px; } + +.h-box-blaugelb-bildlos { padding: 0; } +.h-box-blaugelb-bildlos > .wrap { position: static; } +/**/ + +.container { max-width: 1020px; } +.page .container, +.single-post:not(.single-format-gallery) .container { max-width: 710px; } + +.content-singular .format-gallery { background: transparent; padding: 0; margin: 0; position: relative; } +.content-singular .format-gallery .gallery { display: flex; flex-wrap: wrap; align-content: space-between; align-items: flex-start; } +.content-singular .format-gallery .gallery-item { background: #fff; padding: 1em; margin: 0 1em 1em 0; } +.gallery-columns-1 .gallery-item { flex: 1 0 50%; } +.gallery-columns-2 .gallery-item { flex: 1 0 34%; } +.gallery-columns-3 .gallery-item { flex: 1 0 25%; } +.gallery-columns-4 .gallery-item { flex: 1 0 20%; } + +.content-gallery { display: flex; position: relative; z-index: 10; flex-wrap: wrap; overflow: hidden; } +.content-gallery > article { flex: 1 1 25%; } +body > :first-child { margin-top: 0; } +body > :last-child { margin-bottom: 0; } +.content-singular > article:not(.format-gallery), +.content-gallery > article, +.commentlist article, +.comment-form { min-width: 20em; background: #fff; box-shadow: 0 5px 5px rgba(0, 0, 0, 0.1); } +.content-gallery > article { max-width: calc(33.333% - 1em); } +@media (max-width: 800px) { .content-gallery > article { max-width: 100%; } } + +/* WordPress-Wünsche */ +.sticky {} + +img { max-width: 100%; height: auto; border: 0 none; vertical-align: middle; } +ul, ol { padding-left: 2em; } +dl, ul, ol, h1, h2, h3, h4, h5, h6, blockquote, p, table { margin: 0.5em 0; } +dd, li > ol, li > ul { margin: 0; } +dt { font-weight: bold; } +blockquote, dd { padding-left: 2em; } +body > p:empty:last-child { margin: -0.5em 0 0.5em; } +h3, .h3, h4, .h4, h5, .h5, h6, .h6 { display: inline-block; background: #ffcb04; color: #1d4899; margin-bottom: 0; padding: 2px 4px; } +h3, .h3 { font-size: 18px; padding: 3px 5px; } +h4, .h4 { font-size: 16px; } +h5, .h5 { font-size: 14px; } +.gallery-caption {} +.bypostauthor {} +.twitter-tweet {} + +h1, .h1, h2, .h2 { font-size: 20px; } +h1::after, h2::after { color: red; background: black; display: block; padding: 5px; content: "Bitte Überschriften ab 3. Ordnung benutzen."; } diff --git a/buena/font/ihs.css b/buena/font/ihs.css new file mode 100644 index 0000000..c37b7d3 --- /dev/null +++ b/buena/font/ihs.css @@ -0,0 +1,11 @@ +@font-face { + font-family: IHS; + src: url('ihs.eot'); + src: url('ihs.eot?#iefix') format('embedded-opentype'), + url('ihs.woff2') format('woff2'), + url('ihs.woff') format('woff'), + url('ihs.ttf') format('truetype'), + url('ihs.svg#immenhausenregular') format('svg'); + font-weight: normal; + font-style: normal; +} diff --git a/buena/font/ihs.eot b/buena/font/ihs.eot new file mode 100644 index 0000000..2428aea Binary files /dev/null and b/buena/font/ihs.eot differ diff --git a/buena/font/ihs.svg b/buena/font/ihs.svg new file mode 100644 index 0000000..bd41055 --- /dev/null +++ b/buena/font/ihs.svg @@ -0,0 +1,1825 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/buena/font/ihs.ttf b/buena/font/ihs.ttf new file mode 100644 index 0000000..c580f0b Binary files /dev/null and b/buena/font/ihs.ttf differ diff --git a/buena/font/ihs.woff b/buena/font/ihs.woff new file mode 100644 index 0000000..b4b0926 Binary files /dev/null and b/buena/font/ihs.woff differ diff --git a/buena/font/ihs.woff2 b/buena/font/ihs.woff2 new file mode 100644 index 0000000..d56121d Binary files /dev/null and b/buena/font/ihs.woff2 differ diff --git a/buena/functions.php b/buena/functions.php new file mode 100644 index 0000000..b50f667 --- /dev/null +++ b/buena/functions.php @@ -0,0 +1,89 @@ += 50400 ) { + // Register autoloader if updater plugin missing + if ( ! class_exists( 'Shy\WordPress\Theme' ) ) { + if ( ! include_once __DIR__ . '/use/shy-wordpress/src/autoloader.php' ) { + trigger_pfadfinden_plugin_error( + __( 'Das Theme ist unvollständig und konnte nicht geladen werden. Neuinstallation müsste helfen.', 'buena-theme' ), + E_USER_ERROR + ); + return; + } + } + + // Register our autoloader + if ( ! include_once __DIR__ . '/src/autoloader.php' ) { + trigger_pfadfinden_plugin_error( + __( 'Das Theme ist unvollständig und konnte nicht geladen werden. Neuinstallation müsste helfen.', 'buena-theme' ), + E_USER_ERROR + ); + return; + } + + /** + * @return \Pfadfinden\WordPress\BuenaTheme + */ + function buena_get_theme() + { + static $theme = null; + if (!$theme) { + $theme = new ReflectionClass( 'Pfadfinden\WordPress\BuenaTheme' ); + $theme = $theme->newInstance(); + } + + return $theme; + } + + /** + * @param string $method + * @return callable + */ + function buena_get_callback( $method ) + { + return array( buena_get_theme(), (string) $method ); + } + + return buena_get_theme(); +} + + +// Display error message +trigger_pfadfinden_plugin_error( + sprintf( + __( 'You need at least PHP 5.4 to use the Buena theme. Your are using %s.', 'buena-theme' ), + PHP_VERSION + ), + E_USER_ERROR +); diff --git a/buena/img/BDP001_Icon_Empfehlen.png b/buena/img/BDP001_Icon_Empfehlen.png new file mode 100644 index 0000000..34bdc3a Binary files /dev/null and b/buena/img/BDP001_Icon_Empfehlen.png differ diff --git a/buena/img/bleistift.png b/buena/img/bleistift.png new file mode 100644 index 0000000..6340713 Binary files /dev/null and b/buena/img/bleistift.png differ diff --git a/buena/img/briefumschlag.png b/buena/img/briefumschlag.png new file mode 100644 index 0000000..92111a0 Binary files /dev/null and b/buena/img/briefumschlag.png differ diff --git a/buena/img/bundeszeichen.png b/buena/img/bundeszeichen.png new file mode 100644 index 0000000..1d159fb Binary files /dev/null and b/buena/img/bundeszeichen.png differ diff --git a/buena/img/bundeszeichen@2x.png b/buena/img/bundeszeichen@2x.png new file mode 100644 index 0000000..6e3b20c Binary files /dev/null and b/buena/img/bundeszeichen@2x.png differ diff --git a/buena/img/deutschlandkarte.png b/buena/img/deutschlandkarte.png new file mode 100644 index 0000000..e0e8502 Binary files /dev/null and b/buena/img/deutschlandkarte.png differ diff --git a/buena/img/favicon.ico b/buena/img/favicon.ico new file mode 100644 index 0000000..40e98c6 Binary files /dev/null and b/buena/img/favicon.ico differ diff --git a/buena/img/hamburger.png b/buena/img/hamburger.png new file mode 100644 index 0000000..07348d7 Binary files /dev/null and b/buena/img/hamburger.png differ diff --git a/buena/img/holz.jpg b/buena/img/holz.jpg new file mode 100644 index 0000000..f06cfa2 Binary files /dev/null and b/buena/img/holz.jpg differ diff --git a/buena/img/icon-drucken.png b/buena/img/icon-drucken.png new file mode 100644 index 0000000..2ba0cc9 Binary files /dev/null and b/buena/img/icon-drucken.png differ diff --git a/buena/img/icon-favoriten.png b/buena/img/icon-favoriten.png new file mode 100644 index 0000000..b4b3f05 Binary files /dev/null and b/buena/img/icon-favoriten.png differ diff --git a/buena/img/icon-impressum.png b/buena/img/icon-impressum.png new file mode 100644 index 0000000..89d2aeb Binary files /dev/null and b/buena/img/icon-impressum.png differ diff --git a/buena/img/icon-kontakt.png b/buena/img/icon-kontakt.png new file mode 100644 index 0000000..508a803 Binary files /dev/null and b/buena/img/icon-kontakt.png differ diff --git a/buena/img/klufthemd.png b/buena/img/klufthemd.png new file mode 100644 index 0000000..fd39951 Binary files /dev/null and b/buena/img/klufthemd.png differ diff --git a/buena/img/leitbild_Kontakt_low.jpg b/buena/img/leitbild_Kontakt_low.jpg new file mode 100644 index 0000000..77da787 Binary files /dev/null and b/buena/img/leitbild_Kontakt_low.jpg differ diff --git a/buena/img/leitbild_Kontakt_low_klein.jpg b/buena/img/leitbild_Kontakt_low_klein.jpg new file mode 100644 index 0000000..e1b8aa8 Binary files /dev/null and b/buena/img/leitbild_Kontakt_low_klein.jpg differ diff --git a/buena/img/leitbild_aktionen_low.jpg b/buena/img/leitbild_aktionen_low.jpg new file mode 100644 index 0000000..e454a9b Binary files /dev/null and b/buena/img/leitbild_aktionen_low.jpg differ diff --git a/buena/img/leitbild_aktionen_low_klein.jpg b/buena/img/leitbild_aktionen_low_klein.jpg new file mode 100644 index 0000000..af4ca8c Binary files /dev/null and b/buena/img/leitbild_aktionen_low_klein.jpg differ diff --git a/buena/img/leitbild_bund.jpg b/buena/img/leitbild_bund.jpg new file mode 100644 index 0000000..936de34 Binary files /dev/null and b/buena/img/leitbild_bund.jpg differ diff --git a/buena/img/leitbild_bund_crop.jpg b/buena/img/leitbild_bund_crop.jpg new file mode 100644 index 0000000..ff48638 Binary files /dev/null and b/buena/img/leitbild_bund_crop.jpg differ diff --git a/buena/img/leitbild_bund_crop_klein.jpg b/buena/img/leitbild_bund_crop_klein.jpg new file mode 100644 index 0000000..cd93f93 Binary files /dev/null and b/buena/img/leitbild_bund_crop_klein.jpg differ diff --git a/buena/img/leitbild_ihs.jpg b/buena/img/leitbild_ihs.jpg new file mode 100644 index 0000000..d1c40ae Binary files /dev/null and b/buena/img/leitbild_ihs.jpg differ diff --git a/buena/img/leitbild_ihs_klein.jpg b/buena/img/leitbild_ihs_klein.jpg new file mode 100644 index 0000000..0a61331 Binary files /dev/null and b/buena/img/leitbild_ihs_klein.jpg differ diff --git a/buena/img/leitbild_int2_low.jpg b/buena/img/leitbild_int2_low.jpg new file mode 100644 index 0000000..8fc12c1 Binary files /dev/null and b/buena/img/leitbild_int2_low.jpg differ diff --git a/buena/img/leitbild_int2_low_klein.jpg b/buena/img/leitbild_int2_low_klein.jpg new file mode 100644 index 0000000..019f674 Binary files /dev/null and b/buena/img/leitbild_int2_low_klein.jpg differ diff --git a/buena/img/leitbild_pfadfinden_low.jpg b/buena/img/leitbild_pfadfinden_low.jpg new file mode 100644 index 0000000..9edcf2c Binary files /dev/null and b/buena/img/leitbild_pfadfinden_low.jpg differ diff --git a/buena/img/leitbild_pfadfinden_low_klein.jpg b/buena/img/leitbild_pfadfinden_low_klein.jpg new file mode 100644 index 0000000..4029fba Binary files /dev/null and b/buena/img/leitbild_pfadfinden_low_klein.jpg differ diff --git a/buena/img/loeffel-topf.png b/buena/img/loeffel-topf.png new file mode 100644 index 0000000..34e0e87 Binary files /dev/null and b/buena/img/loeffel-topf.png differ diff --git a/buena/img/lupe.svg b/buena/img/lupe.svg new file mode 100644 index 0000000..2bb647f --- /dev/null +++ b/buena/img/lupe.svg @@ -0,0 +1 @@ + diff --git a/buena/img/schatten.svg b/buena/img/schatten.svg new file mode 100644 index 0000000..ad84ff5 --- /dev/null +++ b/buena/img/schatten.svg @@ -0,0 +1 @@ + diff --git a/buena/img/streichholzschachtel.png b/buena/img/streichholzschachtel.png new file mode 100644 index 0000000..84dbef7 Binary files /dev/null and b/buena/img/streichholzschachtel.png differ diff --git a/buena/index.php b/buena/index.php new file mode 100644 index 0000000..c823787 --- /dev/null +++ b/buena/index.php @@ -0,0 +1,106 @@ + + + + +> + + + + + + + + + + + + + +> +
+ +
+ 'primary', 'depth' => 2, 'container' => 'nav', 'container_class' => 'nav-menu nav-menu-primary' ] ); ?> + + + +
+ getTeaserImage() ): ?> +
+ +
+

printTitle(); ?>

+
+
+ +
+

printTitle(); ?>

+
+ +
+
+ + + + + +
+ +
+ +
+ + +
+
+ + + + + diff --git a/buena/readme.txt b/buena/readme.txt new file mode 100644 index 0000000..57bc7bb --- /dev/null +++ b/buena/readme.txt @@ -0,0 +1,103 @@ + Buena +======= + +Das WordPress-Theme zum neuen Corporate Design des BdP. + +Änderungswünsche? Kritik? +philipp.cordes@pfadfinden.de + + + Anderthalb Hinweise zur Benutzung +----------------------------------- + +Das Theme ist noch nicht ganz fertig, an einigen Stellen wird noch gehobelt. + +In Beiträgen mögt ihr bitte erst Überschriften ab 3. Ordnung verwenden, +die erster Ordnung sind für den Header und die zweiter Ordnung sind für +die Titel der Beiträge. Es gibt dafür auch fette Hinweise beim Bearbeiten. + + + Eine kleine Änderungshistorie +------------------------------- + +v1.0 - TODO + - Das Abschalten des Posterbilds für ist Seiten und Beiträge ohne Bild möglich. + - Beitragsarten und deren unterschiedliche Darstellung ist auch für Seiten verfügbar. + - Schmale Beitragsbilder (<1300px Breite) zerlegen das Layout nicht mehr. + - Login-Formular im Widgetbereich unterstützen. + +v0.99.7 - 21.09.2015 + - Safari bricht jetzt Artikelauflistungen richtig um. Die anderen machen es auch etwas besser. + - Safari zeigt jetzt Suchfelder richtig an. + - Safari malt die Trennline in der Navigation nicht mehr zu dick. + - Wenn das Ajax-Login-Formular benutzt wird, verschwindet das Hamburgermenü nicht mehr. + +v0.99.6 - 19.09.2015 + - Weitere Blau- und Gelbtöne einheitlich umgesetzt, v.a. im Editor. + - Update für Milu: Zusatz „Kategorie“ wird im Titel auf abendlager.pfadfinden.de nicht mehr angezeigt. + - Der linke Rand wird jetzt immer eingehalten, egal wie lang der Navigationsbereich ist. + - Anpassung an WordPress 4.3: Favicon kommt nur aus dem Theme, wenn kein eigenes gesetzt ist. + - Der Hinweis, dass Kommentare nicht möglich sind, wird standardmäßig ausgeblendet. + - Links in der Navigation färben sich jetzt anhand der Hierarchie im Menü ein, nicht derer der Seiten. + +v0.99.5 - 19.08.2015 + - Seitentitel beschreiben jetzt besser, was tatsächlich angezeigt wird. + - Farben aus dem Handbuch einheitlich umgesetzt. + +v0.99.4 - 13.08.2015 + - Das Menü wird automatisch wieder eingeblendet, wenn die Fensterbreite über 720px steigt. + - Fehlerkorrektur: Es werden keine Urls mehr unter dem Editorfeld ausgegeben. + - Das Theme ist nicht mehr auf das Plugin angewiesen. Die benötigte Bilbiothek shy-wordpress wird direkt mitgeliefert. + +v0.99.3 - 01.08.2015 + - Der Editor sollte jetzt in den meisten Fällen eine realistische Vorschau bieten. + - Überschriften sind jetzt blau auf gelb. + Überschriften erster und zweiter Ordnung in Beiträgen und Seiten werden durch Überschriften dritter Ordnung ersetzt. + - Schrift „Immenhausen“ durch verbesserte Variante ausgetauscht. + - Kleinere Korrekturen an Abständen. + +v0.99.2 - 27.07.2015 + - Kleinere Textanpassungen. + +v0.99.1 - 27.07.2015 + - Auf großen Displays wird das Beitragsbild nicht mehr verzerrt. + +v0.99 - 26.07.2015 + - Erster Kandidat zur Veröffentlichung als Version 1.0. + - Die Überschriften erstrahlen in vollem Glanz. + - Kommentare sehen besser aus. + - Das Theme ist responsive bis runter auf 300px. + - Fußleiste überarbeitet und zweigeteilt. + +v0.9.1 - 07.07.2015 + - Fehlerkorrektur: Der Titel wird nicht mehr doppelt angezeigt. + +v0.9 - 03.07.2015 + - Kommentare werden jetzt angezeigt. + - Etwas mehr responsive: Mindestbreite 700px für ordentliche Anzeige. + +v0.8 - 21.06.2015 + - Standardwidgets sehen jetzt in der Leiste gut aus. + - Die Fußzeile sitzt jetzt fester an ihrem Platz. + +v0.7 - 18.06.2015 + - Große Posterbilder hinzugefügt, die auch auf der Bundeswebseite zu sehen sind. + - Erhebliche Verbesserungen der Darstellung. + +v0.6 - 16.06.2015 + - Mehr Unterstützung für HTML5. + +v0.5 - 16.06.2015 + - Fehler behoben, der die WordPress-Installation unbrauchbar machen könnte. + +v0.4 - 11.06.2015 + - Navigation überarbeitet. + +v0.3 - 10.06.2015 + - Webfont Immenhausen für Überschriften. + +v0.2 - 04.06.2015 + - Grafiken eingebaut. + +v0.1 - 20.04.2015 + - Erste Veröffentlichung. diff --git a/buena/screenshot.png b/buena/screenshot.png new file mode 100644 index 0000000..7909288 Binary files /dev/null and b/buena/screenshot.png differ diff --git a/buena/searchform.php b/buena/searchform.php new file mode 100644 index 0000000..16ba18d --- /dev/null +++ b/buena/searchform.php @@ -0,0 +1,11 @@ + diff --git a/buena/src/Pfadfinden/WordPress/BuenaSettings.php b/buena/src/Pfadfinden/WordPress/BuenaSettings.php new file mode 100644 index 0000000..e7ad629 --- /dev/null +++ b/buena/src/Pfadfinden/WordPress/BuenaSettings.php @@ -0,0 +1,23 @@ + false, + 'always_show_poster' => true, + ]; + } +} diff --git a/buena/src/Pfadfinden/WordPress/BuenaSettingsPage.php b/buena/src/Pfadfinden/WordPress/BuenaSettingsPage.php new file mode 100644 index 0000000..fb3532b --- /dev/null +++ b/buena/src/Pfadfinden/WordPress/BuenaSettingsPage.php @@ -0,0 +1,32 @@ +addSection( '', 'buena' ); + + return array( + 'use_cdn' => new CheckboxField(), + 'always_show_poster' => new CheckboxField(), + ); + } + + + public function getParentSlug() + { + return 'themes.php'; + } + + public function getTitle() + { + return __( 'Buena-Einstellungen', 'buena-theme' ); + } +} diff --git a/buena/src/Pfadfinden/WordPress/BuenaTheme.php b/buena/src/Pfadfinden/WordPress/BuenaTheme.php new file mode 100644 index 0000000..1dcd516 --- /dev/null +++ b/buena/src/Pfadfinden/WordPress/BuenaTheme.php @@ -0,0 +1,317 @@ +settings = new BuenaSettings(); + + $this->addHookMethod( 'after_setup_theme', 'afterSetupTheme' ); + $this->addHookMethod( 'wp_enqueue_scripts', 'enqueueScriptsStyles' ); + + $this->addHookMethod( 'buena_search_form', 'printSearchForm' ); + + $this->addHookMethod( 'admin_init', 'initAdministration' ); + $this->addHookMethod( 'mce_css', 'filterEditorStylesheets' ); + + $this->addHookMethod( 'wp_page_menu', 'filterPageMenu' ); + $this->addHookMethod( 'widgets_init', 'registerSidebars' ); + + $this->addHookMethod( 'the_content', 'filterContent' ); + + $this->addHookMethod( 'image_size_names_choose', 'filterImageSizeNames' ); + $this->addHookMethod( 'media_upload_tabs', 'filterMediaTabs' ); + $this->addHookMethod( 'media_view_settings', 'filterMediaViewSettings' ); + $this->addHookMethod( 'media_view_strings', 'filterMediaViewSettings' ); + $this->addHookMethod( 'print_media_templates', 'printMediaTemplates' ); + } + + + public function afterSetupTheme() + { + add_theme_support( 'title-tag' ); + add_theme_support( 'automatic-feed-links' ); + + register_nav_menu( 'primary', __( 'Hauptmenü', 'buena-theme' ) ); + register_nav_menu( 'footer', __( 'Fußzeile', 'buena-theme' ) ); + + add_theme_support( 'html5', [ + 'comment-list', 'comment-form', 'search-form', 'gallery', 'caption', + ] ); + + add_theme_support( 'post-thumbnails' ); + $custom_header = [ + 'width' => apply_filters( 'buena_header_image_width', 1300 ), + 'height' => apply_filters( 'buena_header_image_height', 635 ), + 'flex-width' => true, + 'flex-height' => true, + 'default-image' => get_template_directory_uri() . '/img/leitbild_aktionen_low.jpg', + 'uploads' => true, + 'header-text' => false, + ]; + add_theme_support( 'custom-header', $custom_header ); + set_post_thumbnail_size( $custom_header['width'], $custom_header['height'], true ); + + add_image_size( 'gallery-thumb', 350, 165, true ); + + register_default_headers( [ + 'aktionen' => [ + 'url' => '%s/img/leitbild_aktionen_low.jpg', + 'thumbnail_url' => '%s/img/leitbild_aktionen_low_klein.jpg', + 'description' => __( 'Leitbild Aktionen', 'buena-theme' ), + ], + 'bund' => [ + 'url' => '%s/img/leitbild_bund_crop.jpg', + 'thumbnail_url' => '%s/img/leitbild_bund_crop_klein.jpg', + 'description' => __( 'Leitbild Bund', 'buena-theme' ), + ], + 'ihs' => [ + 'url' => '%s/img/leitbild_ihs.jpg', + 'thumbnail_url' => '%s/img/leitbild_ihs_klein.jpg', + 'description' => __( 'Leitbild Immenhausen', 'buena-theme' ), + ], + 'international' => [ + 'url' => '%s/img/leitbild_int2_low.jpg', + 'thumbnail_url' => '%s/img/leitbild_int2_low_klein.jpg', + 'description' => __( 'Leitbild International', 'buena-theme' ), + ], + 'kontakt' => [ + 'url' => '%s/img/leitbild_Kontakt_low.jpg', + 'thumbnail_url' => '%s/img/leitbild_Kontakt_low_klein.jpg', + 'description' => __( 'Leitbild Kontakt', 'buena-theme' ), + ], + 'pfadfinden' => [ + 'url' => '%s/img/leitbild_pfadfinden_low.jpg', + 'thumbnail_url' => '%s/img/leitbild_pfadfinden_low_klein.jpg', + 'description' => __( 'Leitbild Pfadfinden', 'buena-theme' ), + ], + ] ); + } + + public function getTeaserImage() + { + if ( is_page() || have_posts() && is_single() ) { // FIXME: is_singular()? + the_post(); + $thumb = get_the_post_thumbnail( null, 'post-thumbnail', [ 'alt' => '' ] ); + rewind_posts(); + + if ( $thumb ) { + return $thumb; + } + } + + if ( is_home() || $this->settings['always_show_poster'] ) { + return sprintf( + '', + get_header_image(), + get_custom_header()->height, + get_custom_header()->width + ); + } + + return ''; + } + + /** + * Gibt einen Titel für die aktuelle Seite aus. + */ + public function printTitle() + { + if ( is_singular() ) { + the_title(); + } elseif ( is_category() && strpos( $_SERVER['HTTP_HOST'], 'abendlager.pfadfinden.de' ) !== false ) { + // FIXME: Workaround mit 1.0 entfernen. + single_cat_title( '', true ); + } elseif ( is_archive() ) { + the_archive_title(); + } elseif ( is_search() ) { + esc_html_e( sprintf( + __( 'Suche nach „%s“', 'buena-theme' ), + get_search_query( false ) + ) ); + } else { + bloginfo( 'description' ); + } + } + + public function enqueueScriptsStyles() + { + wp_enqueue_style( 'immenhausen-font', get_template_directory_uri() . '/font/ihs.css' ); + wp_enqueue_style( 'buena-style', get_stylesheet_uri() ); + } + + /** + * Gibt das Suchformular aus. Nötig, damit im Kopf anderer Code stehen kann als anderswo. + */ + public function printSearchForm() + { + get_search_form( true ); + } + + /** + * Tut, was dransteht. + */ + public function registerSidebars() + { + register_sidebar( [ + 'id' => 'below-navigation', + 'name' => __( 'Unter Navigation', 'buena-theme' ), + 'description' => __( 'Ziemlich schmal.', 'buena-theme' ), + 'before_title' => '

', + 'after_title' => '

', + ] ); + register_sidebar( [ + 'id' => 'footer', + 'name' => __( 'Fußleiste', 'buena-theme' ), + 'description' => __( 'Rechte Spalte des Briefumschlags. Recht flach. Füllt die ganze Breite aus, wenn kein Navigationsmenü zugewiesen ist.', 'buena-theme' ), + 'before_title' => '

', + 'after_title' => '

', + ] ); + } + + /** + * Ausgabe von wp_page_menu() filtern, dass sie wie wp_nav_menu() aussieht. + * + * @param string $menu + * @param array $args + * @return string + */ + public function filterPageMenu( $menu, array $args ) + { + if ( ! isset( $args['fallback_cb'] ) || $args['fallback_cb'] !== 'wp_page_menu' ) { + return $menu; + } + + $vorher = '
'; + + $danach = '<' . $args['container']; + if ( $args['container_class'] ) { + // In diesem Fall doch optional… + $danach .= ' class="' . esc_attr( $args['container_class'] ) . '"'; + } + if ( $args['container_id'] ) { + $danach .= ' id="' . esc_attr( $args['container_id'] ) . '"'; + } + $danach .= '>'; + + if ( strpos( $menu, '