Compare commits
9 commits
Author | SHA1 | Date | |
---|---|---|---|
Tobias Reisinger | 28b6678c30 | ||
Tobias Reisinger | cf15530d0f | ||
Tobias Reisinger | 6f6c8981f9 | ||
Tobias Reisinger | 159963faa7 | ||
Tobias Reisinger | ca71386501 | ||
Tobias Reisinger | 97ee74f2df | ||
Tobias Reisinger | a7a06c6349 | ||
Tobias Reisinger | 7496a000cb | ||
Tobias Reisinger | b11ebc1d3b |
29
.forgejo/workflows/release.yaml
Normal file
29
.forgejo/workflows/release.yaml
Normal file
|
@ -0,0 +1,29 @@
|
|||
on:
|
||||
push:
|
||||
tags:
|
||||
- v**
|
||||
jobs:
|
||||
build-artifacts:
|
||||
runs-on: docker
|
||||
steps:
|
||||
- uses: https://code.forgejo.org/actions/checkout@v3
|
||||
- id: build
|
||||
run: |
|
||||
echo "@fontawesome:registry=https://git.serguzim.me/api/packages/fontawesome/npm/" > .npmrc
|
||||
echo "//git.serguzim.me/api/packages/fontawesome/npm/:_authToken=${{ secrets.FORGEJO_TOKEN }}" >> .npmrc
|
||||
mkdir /tmp/release-dir
|
||||
|
||||
npm install
|
||||
npm run production
|
||||
|
||||
git add -f dist/
|
||||
git stash
|
||||
|
||||
git config --global --add safe.directory ${{ github.workspace }}
|
||||
git archive --format=zip 'stash@{0}' -o /tmp/release-dir/reitanlage-oranienburg-${{ github.ref_name }}.zip --prefix=reitanlage-oranienburg/
|
||||
shell: bash
|
||||
- uses: https://code.forgejo.org/actions/forgejo-release@v1
|
||||
with:
|
||||
direction: upload
|
||||
release-dir: /tmp/release-dir
|
||||
token: ${{ github.token }}
|
6
.gitattributes
vendored
Normal file
6
.gitattributes
vendored
Normal file
|
@ -0,0 +1,6 @@
|
|||
* text=auto
|
||||
|
||||
*.html.twig diff=html
|
||||
|
||||
package-lock.json -diff
|
||||
composer.lock -diff
|
|
@ -1,40 +0,0 @@
|
|||
workspace:
|
||||
base: /src/
|
||||
path: reitanlage-oranienburg/
|
||||
|
||||
pipeline:
|
||||
build_npm:
|
||||
image: node:16.0.0
|
||||
secrets: [ fontawesome_token ]
|
||||
commands:
|
||||
- echo "@fortawesome:registry=https://npm.fontawesome.com/" > .npmrc
|
||||
- echo "//npm.fontawesome.com/:_authToken=$${FONTAWESOME_TOKEN}" >> .npmrc
|
||||
- npm install
|
||||
- npm run production
|
||||
when:
|
||||
event:
|
||||
- tag
|
||||
|
||||
prepare_zip:
|
||||
image: bitnami/git
|
||||
commands:
|
||||
- git config --global --add safe.directory /src/reitanlage-oranienburg
|
||||
- git archive --format=zip HEAD -o /src/reitanlage-oranienburg-${CI_COMMIT_TAG}.zip --prefix=reitanlage-oranienburg/
|
||||
when:
|
||||
event:
|
||||
- tag
|
||||
|
||||
release:
|
||||
image: plugins/gitea-release
|
||||
settings:
|
||||
api_key:
|
||||
from_secret: gitea_token
|
||||
base_url: https://git.serguzim.me
|
||||
files:
|
||||
- /src/reitanlage-oranienburg-${CI_COMMIT_TAG}.zip
|
||||
title: ${CI_COMMIT_TAG}
|
||||
when:
|
||||
event:
|
||||
- tag
|
||||
|
||||
branches: main
|
|
@ -1,5 +0,0 @@
|
|||
# v0.1.0
|
||||
## 12/21/2019
|
||||
|
||||
1. [](#new)
|
||||
* ChangeLog started...
|
|
@ -1,5 +1,5 @@
|
|||
name: Reitanlage Oranienburg
|
||||
version: 1.2.5
|
||||
version: 1.4.7
|
||||
description: Design der Reitanlage Oranienburg
|
||||
icon: rebel
|
||||
author:
|
||||
|
|
BIN
package-lock.json
generated
BIN
package-lock.json
generated
Binary file not shown.
66
package.json
66
package.json
|
@ -1,36 +1,34 @@
|
|||
{
|
||||
"name": "reitanlage-oranienburg",
|
||||
"version": "1.3.0",
|
||||
"description": "The Reitanlage Oranienburg Theme for Grav CMS.",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"dev": "npm run development",
|
||||
"development": "mix",
|
||||
"watch": "mix watch",
|
||||
"watch-poll": "mix watch -- --watch-options-poll=1000",
|
||||
"hot": "mix watch --hot",
|
||||
"prod": "npm run production",
|
||||
"production": "mix --production"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://git.serguzim.me/serguzim/reitanlage-oranienburg.git"
|
||||
},
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
"license": "Apache-2.0",
|
||||
"devDependencies": {
|
||||
"laravel-mix": "^6.0.25",
|
||||
"resolve-url-loader": "^4.0.0",
|
||||
"sass": "^1.35.1",
|
||||
"sass-loader": "^12.1.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@fortawesome/fontawesome-pro": "^6.0.0",
|
||||
"bootstrap": "^4.6.0",
|
||||
"cross-env": "^7.0.3",
|
||||
"jquery": "^3.6.0",
|
||||
"photoswipe": "^4.1.3",
|
||||
"popper.js": "^1.16.1"
|
||||
}
|
||||
"name": "reitanlage-oranienburg",
|
||||
"version": "1.4.6",
|
||||
"description": "The Reitanlage Oranienburg Theme for Grav CMS.",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"dev": "npm run development",
|
||||
"development": "mix",
|
||||
"watch": "mix watch",
|
||||
"watch-poll": "mix watch -- --watch-options-poll=1000",
|
||||
"hot": "mix watch --hot",
|
||||
"prod": "npm run production",
|
||||
"production": "mix --production"
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://git.serguzim.me/serguzim/reitanlage-oranienburg.git"
|
||||
},
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@fontawesome/fontawesome-pro": "^6.2",
|
||||
"@popperjs/core": "^2.11.6",
|
||||
"autoprefixer": "^10.0",
|
||||
"bootstrap": "^5.2",
|
||||
"cross-env": "^7.0",
|
||||
"laravel-mix": "^6.0",
|
||||
"photoswipe": "^4",
|
||||
"resolve-url-loader": "^5.0",
|
||||
"sass": "^1.56",
|
||||
"sass-loader": "^13.2"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
require('./bootstrap');
|
||||
let bootstrap = require('bootstrap')
|
||||
|
||||
import PhotoSwipe from 'photoswipe/dist/photoswipe'
|
||||
import PhotoSwipeDefaultUI from 'photoswipe/dist/photoswipe-ui-default'
|
||||
|
@ -6,7 +6,7 @@ import PhotoSwipeDefaultUI from 'photoswipe/dist/photoswipe-ui-default'
|
|||
window.PhotoSwipe = PhotoSwipe;
|
||||
window.PhotoSwipeDefaultUI = PhotoSwipeDefaultUI;
|
||||
|
||||
$("#menu-toggle").click(function(e) {
|
||||
document.querySelector("#menu-toggle").onclick = function(e) {
|
||||
e.preventDefault();
|
||||
$("#wrapper").toggleClass("toggled");
|
||||
});
|
||||
document.querySelector("#wrapper").classList.toggle("toggled");
|
||||
};
|
||||
|
|
14
src/js/bootstrap.js
vendored
14
src/js/bootstrap.js
vendored
|
@ -1,14 +0,0 @@
|
|||
window._ = require('lodash');
|
||||
|
||||
/**
|
||||
* We'll load jQuery and the Bootstrap jQuery plugin which provides support
|
||||
* for JavaScript based Bootstrap features such as modals and tabs. This
|
||||
* code may be modified to fit the specific needs of your application.
|
||||
*/
|
||||
|
||||
try {
|
||||
window.Popper = require('popper.js').default;
|
||||
window.$ = window.jQuery = require('jquery');
|
||||
|
||||
require('bootstrap');
|
||||
} catch (e) {}
|
|
@ -1,15 +1,126 @@
|
|||
// Bootstrap
|
||||
$theme-colors: (
|
||||
"primary": #2b3bb4,
|
||||
);
|
||||
$primary: #2b3bb4;
|
||||
@import '~bootstrap/scss/bootstrap';
|
||||
|
||||
// FontAwesome
|
||||
@import '~@fortawesome/fontawesome-pro/css/all.css';
|
||||
@import '~@fontawesome/fontawesome-pro/css/all.css';
|
||||
|
||||
// PhotoSwipe
|
||||
@import '~photoswipe/dist/photoswipe.css';
|
||||
@import '~photoswipe/dist/default-skin/default-skin.css';
|
||||
|
||||
@import './theme';
|
||||
@import '../css/sidebar.css';
|
||||
|
||||
body, #wrapper
|
||||
{
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.flex-fill
|
||||
{
|
||||
flex: 1 1 auto;
|
||||
}
|
||||
|
||||
.card-image img
|
||||
{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.card-columns img,video
|
||||
{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.card-columns
|
||||
{
|
||||
column-gap: 1em;
|
||||
column-count: 2;
|
||||
}
|
||||
|
||||
.card-columns.card
|
||||
{
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
@media (min-width: 768px)
|
||||
{
|
||||
.card-columns
|
||||
{
|
||||
column-count: 3;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 992px)
|
||||
{
|
||||
.card-columns
|
||||
{
|
||||
column-count: 4;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1200px)
|
||||
{
|
||||
.card-columns
|
||||
{
|
||||
column-count: 6;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-brand
|
||||
{
|
||||
font-size: 1em;
|
||||
}
|
||||
.navbar-brand img
|
||||
{
|
||||
height: 3em;
|
||||
}
|
||||
|
||||
header div.row-fixed-h,
|
||||
header img
|
||||
{
|
||||
height: 5rem;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.bg-ro
|
||||
{
|
||||
background-color: #2b3bb4 !important;
|
||||
}
|
||||
|
||||
footer.bg-ro a
|
||||
{
|
||||
color: #fff;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.btn-facebook
|
||||
{
|
||||
color: #fff;
|
||||
background-color: #3b5998;
|
||||
border-color: #3b5998;
|
||||
}
|
||||
|
||||
#home-carousel
|
||||
{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
height: 400px;
|
||||
}
|
||||
|
||||
#home-carousel img
|
||||
{
|
||||
max-width: 100%;
|
||||
max-height: 400px;
|
||||
}
|
||||
|
||||
table tbody tr:nth-of-type(2n+1)
|
||||
{
|
||||
background:
|
||||
#d0d6d3;
|
||||
}
|
||||
|
||||
table td,
|
||||
table th
|
||||
{
|
||||
padding: 0.6rem 0.4rem;
|
||||
}
|
||||
|
|
|
@ -1,113 +0,0 @@
|
|||
body, #wrapper
|
||||
{
|
||||
min-height: 100vh;
|
||||
}
|
||||
|
||||
.flex-fill
|
||||
{
|
||||
flex: 1 1 auto;
|
||||
}
|
||||
|
||||
.card-image img
|
||||
{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.card-columns img,video
|
||||
{
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.card-columns
|
||||
{
|
||||
column-gap: 1em;
|
||||
column-count: 2;
|
||||
}
|
||||
|
||||
.card-columns.card
|
||||
{
|
||||
margin-bottom: 1em;
|
||||
}
|
||||
|
||||
@media (min-width: 768px)
|
||||
{
|
||||
.card-columns
|
||||
{
|
||||
column-count: 3;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 992px)
|
||||
{
|
||||
.card-columns
|
||||
{
|
||||
column-count: 4;
|
||||
}
|
||||
}
|
||||
|
||||
@media (min-width: 1200px)
|
||||
{
|
||||
.card-columns
|
||||
{
|
||||
column-count: 6;
|
||||
}
|
||||
}
|
||||
|
||||
.navbar-brand
|
||||
{
|
||||
font-size: 1em;
|
||||
}
|
||||
.navbar-brand img
|
||||
{
|
||||
height: 3em;
|
||||
}
|
||||
|
||||
header div.row-fixed-h,
|
||||
header img
|
||||
{
|
||||
height: 5rem;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.bg-ro
|
||||
{
|
||||
background-color: #2b3bb4 !important;
|
||||
}
|
||||
|
||||
footer.bg-ro a
|
||||
{
|
||||
color: #fff;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
.btn-facebook
|
||||
{
|
||||
color: #fff;
|
||||
background-color: #3b5998;
|
||||
border-color: #3b5998;
|
||||
}
|
||||
|
||||
#home-carousel
|
||||
{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
height: 400px;
|
||||
}
|
||||
|
||||
#home-carousel img
|
||||
{
|
||||
max-width: 100%;
|
||||
max-height: 400px;
|
||||
}
|
||||
|
||||
table tbody tr:nth-of-type(2n+1)
|
||||
{
|
||||
background:
|
||||
#d0d6d3;
|
||||
}
|
||||
|
||||
table td,
|
||||
table th
|
||||
{
|
||||
padding: 0.6rem 0.4rem;
|
||||
}
|
|
@ -13,7 +13,7 @@ <h1 class="d-inline">
|
|||
{% include 'partials/osm.html.twig' %}
|
||||
</div>
|
||||
<div>
|
||||
<a role="button" class="btn btn-primary mr-1" href="/kontakt">Kontakt</a>
|
||||
<a role="button" class="btn btn-primary me-1" href="/kontakt">Kontakt</a>
|
||||
{% include 'partials/socialmedia.html.twig' %}
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -12,8 +12,10 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-12" style="height: 300px">
|
||||
{% include 'partials/osm.html.twig' %}
|
||||
<div class="col-12 h-100">
|
||||
<div class="w-100" style="min-height: 300px">
|
||||
{% include 'partials/osm.html.twig' %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
<header class="p-2 bg-ro text-white">
|
||||
<div class="container">
|
||||
<div class="row row-fixed-h mb-2">
|
||||
<a href="/" class="col-12">
|
||||
<a href="/" class="col-12" data-umami-event="Header-Logo button">
|
||||
{% include 'partials/logo.html.twig' with {style: 'filter: invert(100%); margin-right: 0.5rem;'} %}
|
||||
{% for media_item in header_page.media.images %}
|
||||
{% set aspect = media_item.width / media_item.height %}
|
||||
|
@ -68,7 +68,7 @@
|
|||
{% block footer %}
|
||||
<footer class="container-fluid text-light py-3">
|
||||
<div class="row">
|
||||
<p class="mx-auto">
|
||||
<p class="mx-auto w-auto">
|
||||
<a href="/impressum">Impressum</a>
|
||||
<span> | </span>
|
||||
<a href="/datenschutzerklaerung">Datenschutzerklärung</a>
|
||||
|
@ -77,10 +77,7 @@
|
|||
</p>
|
||||
</div>
|
||||
<div class="row">
|
||||
<p class="mx-auto">© Heike Tischler</p>
|
||||
</div>
|
||||
<div class="row">
|
||||
<p class="mx-auto">Diese Webseite nutzt <a target="_blank" rel="noopener" href="http://getgrav.org">Grav</a> von <a target="_blank" rel="noopener" href="http://www.rockettheme.com">RocketTheme</a>.</p>
|
||||
<p class="mx-auto w-auto">© Heike Tischler</p>
|
||||
</div>
|
||||
</footer>
|
||||
{% endblock %}
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<ul class="sidebar-nav">
|
||||
<li class="sidebar-spacer"></li>
|
||||
<li class="sidebar-brand">
|
||||
<a href="{{ home_url }}" class="navbar-brand mr-10">
|
||||
<a href="{{ home_url }}" class="navbar-brand mr-10" data-umami-event="Sidebar-Logo button">
|
||||
{% include 'partials/logo.html.twig' %}
|
||||
</a>
|
||||
</li>
|
||||
|
|
|
@ -1,11 +1,19 @@
|
|||
<div class="w-100 h-100 d-flex flex-column">
|
||||
<img class="flex-grow-1 w-100" alt="Diese Karte zeigt unseren Hof" src="{{ url('theme://images/map.webp') }}">
|
||||
<small class="py-2 row">
|
||||
<a class="py-2 py-md-0 col-12 col-md-6" target="_blank" rel="noopener" href="https://www.openstreetmap.org/?mlat=52.76605&mlon=13.18774#map=18/52.76605/13.18774">
|
||||
Auf OpenStreetMaps öffnen
|
||||
</a>
|
||||
<a class="py-2 py-md-0 col-12 col-md-6 text-md-right" target="_blank" rel="noopener" href="https://goo.gl/maps/WFYcPCQVA5u2vegy8">
|
||||
Auf Google Maps öffnen
|
||||
</a>
|
||||
</small>
|
||||
<div class="w-100 h-100 d-flex flex-column pb-2">
|
||||
<div class="flex-grow-1">
|
||||
<div class="position-relative w-100">
|
||||
<a target="_blank" rel="noopener" href="https://www.openstreetmap.org/way/203340031" data-umami-event="OSM button">
|
||||
<img class="w-100" alt="Diese Karte zeigt unseren Hof" src="{{ url('theme://images/map.webp') }}">
|
||||
</a>
|
||||
<small class="d-block position-absolute bottom-0 start-0">
|
||||
<a class="bg-white text-black p-1" target="_blank" rel="noopener" href="https://goo.gl/maps/WFYcPCQVA5u2vegy8" data-umami-event="Google-Maps button">
|
||||
Auf Google Maps öffnen
|
||||
</a>
|
||||
</small>
|
||||
<small class="d-block position-absolute bottom-0 end-0">
|
||||
<a class="bg-white text-black p-1" target="_blank" rel="noopener" href="https://www.openstreetmap.org/copyright" data-umami-event="OSM-copyright button">
|
||||
© OpenStreetMap contributors
|
||||
</a>
|
||||
</small>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<a role="button" class="btn btn-primary btn-facebook" target="_blank" rel="noopener" href="https://www.facebook.com/Reitanlage-Oranienburg-Heike-Tischler-456154271116487/">
|
||||
<a role="button" class="btn btn-primary btn-facebook" target="_blank" rel="noopener" href="https://www.facebook.com/Reitanlage-Oranienburg-Heike-Tischler-456154271116487/" data-umami-event="Facebook button">
|
||||
<i class="fab fa-facebook-f"></i>
|
||||
<span class="sr-only">zu unserer Facebook-Seite</span>
|
||||
</a>
|
||||
|
|
|
@ -2,8 +2,9 @@
|
|||
|
||||
let mix = require('laravel-mix');
|
||||
|
||||
mix.setPublicPath('dist');
|
||||
mix.setResourceRoot('/user/themes/reitanlage-oranienburg/dist/');
|
||||
|
||||
mix.js('src/js/app.js', 'dist');
|
||||
mix.sass('src/sass/app.scss', 'dist');
|
||||
mix.setPublicPath('dist')
|
||||
.setResourceRoot('/user/themes/reitanlage-oranienburg/dist/')
|
||||
.js('src/js/app.js', 'dist')
|
||||
.sass('src/sass/app.scss', 'dist')
|
||||
.sourceMaps(false)
|
||||
.version();
|
||||
|
|
Loading…
Reference in a new issue