switch to grav

This commit is contained in:
Matthias Larisch 2017-12-20 23:10:41 +01:00
parent 8c942e21b8
commit ef30ba97a8
652 changed files with 47100 additions and 3964 deletions

34
.dependencies Normal file
View file

@ -0,0 +1,34 @@
git:
problems:
url: https://github.com/getgrav/grav-plugin-problems
path: user/plugins/problems
branch: master
error:
url: https://github.com/getgrav/grav-plugin-error
path: user/plugins/error
branch: master
markdown-notices:
url: https://github.com/getgrav/grav-plugin-markdown-notices
path: user/plugins/markdown-notices
branch: master
antimatter:
url: https://github.com/getgrav/grav-theme-antimatter
path: user/themes/antimatter
branch: master
links:
problems:
src: grav-plugin-problems
path: user/plugins/problems
scm: github
error:
src: grav-plugin-error
path: user/plugins/error
scm: github
markdown-notices:
src: grav-plugin-markdown-notices
path: user/plugins/markdown-notices
scm: github
antimatter:
src: grav-theme-antimatter
path: user/themes/antimatter
scm: github

18
.editorconfig Normal file
View file

@ -0,0 +1,18 @@
# EditorConfig is awesome: http://EditorConfig.org
# top-most EditorConfig file
root = true
# Unix-style newlines with a newline ending every file
[*]
charset = utf-8
end_of_line = lf
trim_trailing_whitespace = true
insert_final_newline = true
indent_style = space
indent_size = 4
# 2 space indentation
[*.yaml, *.yml]
indent_style = space
indent_size = 2

47
.gitignore vendored
View file

@ -1,2 +1,45 @@
public/
.DS_Store
# Composer
.composer
vendor/*
!*/vendor/*
# Sass
.sass-cache
# Grav Specific
backup/*
!backup/.*
cache/*
!cache/.*
assets/*
!assets/.*
logs/*
!logs/.*
images/*
!images/.*
user/accounts/*
!user/accounts/.*
user/data/*
!user/data/.*
user/plugins/*
!user/plugins/.*
user/themes/*
!user/themes/.*
user/localhost/config/security.yaml
user/config/security.yaml
# OS Generated
.DS_Store*
ehthumbs.db
Icon?
Thumbs.db
*.swp
# phpstorm
.idea/*
user/config/security.yaml
tests/_output/*
tests/_support/_generated/*
tests/cache/*
tests/error.log

75
.htaccess Normal file
View file

@ -0,0 +1,75 @@
<IfModule mod_rewrite.c>
RewriteEngine On
## Begin RewriteBase
# If you are getting 500 or 404 errors on subpages, you may have to uncomment the RewriteBase entry
# You should change the '/' to your appropriate subfolder. For example if you have
# your Grav install at the root of your site '/' should work, else it might be something
# along the lines of: RewriteBase /<your_sub_folder>
##
# RewriteBase /
## End - RewriteBase
## Begin - X-Forwarded-Proto
# In some hosted or load balanced environments, SSL negotiation happens upstream.
# In order for Grav to recognize the connection as secure, you need to uncomment
# the following lines.
#
# RewriteCond %{HTTP:X-Forwarded-Proto} https
# RewriteRule .* - [E=HTTPS:on]
#
## End - X-Forwarded-Proto
## Begin - Exploits
# If you experience problems on your site block out the operations listed below
# This attempts to block the most common type of exploit `attempts` to Grav
#
# Block out any script trying to base64_encode data within the URL.
RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
# Block out any script that includes a <script> tag in URL.
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL.
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL.
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Return 403 Forbidden header and show the content of the root homepage
RewriteRule .* index.php [F]
#
## End - Exploits
## Begin - Index
# If the requested path and file is not /index.php and the request
# has not already been internally rewritten to the index.php script
RewriteCond %{REQUEST_URI} !^/index\.php
# and the requested path and file doesn't directly match a physical file
RewriteCond %{REQUEST_FILENAME} !-f
# and the requested path and file doesn't directly match a physical folder
RewriteCond %{REQUEST_FILENAME} !-d
# internally rewrite the request to the index.php script
RewriteRule .* index.php [L]
## End - Index
## Begin - Security
# Block all direct access for these folders
RewriteRule ^(\.git|cache|bin|logs|backup|webserver-configs|tests)/(.*) error [F]
# Block access to specific file types for these system folders
RewriteRule ^(system|vendor)/(.*)\.(txt|xml|md|html|yaml|yml|php|pl|py|cgi|twig|sh|bat)$ error [F]
# Block access to specific file types for these user folders
RewriteRule ^(user)/(.*)\.(txt|md|yaml|yml|php|pl|py|cgi|twig|sh|bat)$ error [F]
# Block all direct access to .md files:
RewriteRule \.md$ error [F]
# Block all direct access to files and folders beginning with a dot
RewriteRule (^|/)\.(?!well-known) - [F]
# Block access to specific files in the root folder
RewriteRule ^(LICENSE\.txt|composer\.lock|composer\.json|\.htaccess)$ error [F]
## End - Security
</IfModule>
# Begin - Prevent Browsing and Set Default Resources
Options -Indexes
DirectoryIndex index.php index.html index.htm
# End - Prevent Browsing and Set Default Resources

104
.travis.yml Normal file
View file

@ -0,0 +1,104 @@
language: php
php:
- '5.5'
- '5.6'
- '7.0.21'
- '7.1'
branches:
only:
- develop
- master
- build_test
notifications:
email:
on_success: never
on_failure: always
hipchat:
# hipchat_api@grav
rooms:
- secure: "bqO0wM1B7bJnQw2fuhquSXEqI9gw6WmFytIh9sEWXzbYTzTUP5t0PcKOd3FT2BNMRaDxPJLVl+vG/oqmqDUBkEmOGcG504IQjeNzZqnMz0tXQMIcCc22Las9tFfc4Jf6RVi/qGomFtHGE9Wgii+TAN4zqZaufbNjwd8SyjO0+W8="
template:
- '%{repository}#%{build_number} (%{branch}): Travis Job Finished [%{duration}] (<a href="%{build_url}">Details</a>)'
format: html
slack:
secure: dowksPsxxCxGKT6nis5hUgkp6+ZDAhoqzQHF9rJnx4hx0iEygPhVBs7pKl9yL2jubYJoLs+EXwE7z1dYgDAEJh4BnfrCokCMLpFGcxVxQC/HeAUdSQ2/RtdBYR5PRT75ScaFpqM/SfXXZVtnwVXAw9Z+JC6BjQ9vmn23m51Jw4k=
env:
global:
# Colors!
- TEXTRESET=$(tput sgr0) # reset the foreground colour
- RED=$(tput setaf 1)
- GREEN=$(tput setaf 2)
- YELLOW=$(tput setaf 3)
- BLUE=$(tput setaf 4)
- BOLD=$(tput bold)
# User
- GH_USER="getgrav"
# Paths
- RT_DEVTOOLS=$HOME/devtools
- GOPATH="$HOME/go"
- PATH="$GOPATH/bin:$PATH"
# GH_TOKEN [API Key]
- secure: "NR9pV7YteY9OoPmjDTQG0fDfocVu+tCeiDH1F2GFhXCu71UOIvqWXpOxp0RHkG5GIXdCFHx59yu+ZO275lbaHkbF8+4lVSVrV4RcGn+pIncvxr6iZCVW05dbAxV3H8alK+xYJRGmbyfQl5wIM49WvmuGHZjcmIloS4t/omQ3N+I="
# BB_TOKEN value => "user:pass@"
- secure: "einUtSEkUWy2IrqLXyVjwUU+mwaaoiOXRRVdLBpA3Zye6bZx8cm5h/5AplkPWhM/NmCJoW/MwNZHHkFhlr3mDRov5iOxVmTTYfnXB+I5lxYTSgduOLLErS7mU8hfADpVDU8bHNU44fNGD3UEiG1PD4qQBX4DMlqIFmR20mjs81k="
# GH_API_USER [for curl]
- secure: "AQGcX1B2NrI8ajflY4AimZDNcK2kBA3F6mbtEFQ78NkDoWhMipsQHayWXiSTzRc0YJKvQl2Y16MTwQF4VHzjTAiiZFATgA8J88vQUjIPabi/kKjqSmcLFoaAOAxStQbW6e0z2GiQ6KBMcNF1y5iUuI63xVrBvtKrYX/w5y+ako8="
before_install:
- export TZ=Pacific/Honolulu
- echo $TRAVIS_PHP_VERSION
- echo $TRAVIS_BRANCH
- echo $TRAVIS_PULL_REQUEST
- composer self-update
- if [ $TRAVIS_BRANCH == 'develop' ] || [ $TRAVIS_PULL_REQUEST != 'false' ]; then
composer install --dev --prefer-dist;
fi
- if [ $TRAVIS_BRANCH != 'develop' ] && [ $TRAVIS_PHP_VERSION == "5.6" ] && [ $TRAVIS_PULL_REQUEST == "false" ]; then
export TRAVIS_TAG=$(curl --fail --user "${GH_API_USER}" -s https://api.github.com/repos/getgrav/grav/releases/latest | grep tag_name | head -n 1 | cut -d '"' -f 4);
eval "$(curl -sL https://raw.githubusercontent.com/travis-ci/gimme/master/gimme | GIMME_GO_VERSION=1.8 bash)";
go get github.com/aktau/github-release;
git clone --quiet --depth=50 --branch=master https://${BB_TOKEN}bitbucket.org/rockettheme/grav-devtools.git $RT_DEVTOOLS &>/dev/null;
if [ ! -z "$TRAVIS_TAG" ]; then
cd ${RT_DEVTOOLS};
./build-grav.sh skeletons.txt;
fi;
fi
before_script:
- if [ $TRAVIS_PHP_VERSION != 'hhvm' ]; then phpenv config-rm xdebug.ini; fi
script:
- if [ $TRAVIS_BRANCH == 'develop' ] || [ $TRAVIS_PULL_REQUEST != 'false' ]; then
vendor/bin/codecept run;
fi
- echo "Latest Release Tag - ${TRAVIS_TAG}"
- if [ ! -z "$TRAVIS_TAG" ] && [ $TRAVIS_BRANCH != 'develop' ] && [ $TRAVIS_PHP_VERSION == "5.6" ] && [ $TRAVIS_PULL_REQUEST == "false" ]; then
FILES="$RT_DEVTOOLS/grav-dist/*.zip";
for file in ${FILES[@]}; do
NAME=${file##*/};
if [[ "$NAME" == *"-rc"* ]]; then
REPO="$(echo ${NAME} | rev | cut -f 3- -d "-" | rev)";
else
REPO="$(echo ${NAME} | rev | cut -f 2- -d "-" | rev)";
fi;
if [[ $REPO == 'grav' || $REPO == 'grav-admin' || $REPO == 'grav-update' ]]; then
REPO="grav";
fi;
API="$(curl --fail --user "${GH_API_USER}" -s https://api.github.com/repos/${GH_USER}/${REPO}/releases/latest)";
ASSETS="$(echo "${API}" | node gh-assets.js)";
TAG="$(echo "${API}" | grep tag_name | head -n 1 | cut -d '"' -f 4)";
if [ $REPO == "grav" ]; then
TAG="$TRAVIS_TAG";
fi;
if [ ! -z "$ASSETS" ]; then
for asset in ${ASSETS[@]}; do
asset_id=$(echo ${asset} | cut -d ':' -f 1);
asset_name=$(echo ${asset} | cut -d ':' -f 2);
if [ "${NAME}" == "${asset_name}" ]; then
echo -e "\nAsset ${BOLD}${BLUE}${NAME}${TEXTRESET} already exists in ${YELLOW}${REPO}${TEXTRESET}@${BOLD}${YELLOW}${TAG}${TEXTRESET}... deleting id ${BOLD}${RED}${asset_id}${TEXTRESET}...";
curl -X DELETE --fail --user "${GH_API_USER}" "https://api.github.com/repos/${GH_USER}/${REPO}/releases/assets/${asset_id}";
fi;
done;
fi;
echo "Uploading package ${BOLD}${BLUE}${NAME}${TEXTRESET} to ${YELLOW}${REPO}${TEXTRESET}@${YELLOW}${TAG}${TEXTRESET}";
github-release upload --security-token $GH_TOKEN --user ${GH_USER} --repo $REPO --tag "$TAG" --name "$NAME" --file "$file";
done;
fi

1917
CHANGELOG.md Normal file

File diff suppressed because it is too large Load diff

46
CODE_OF_CONDUCT.md Normal file
View file

@ -0,0 +1,46 @@
# Contributor Covenant Code of Conduct
## Our Pledge
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
## Our Standards
Examples of behavior that contributes to creating a positive environment include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual attention or advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
## Scope
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at contact@getgrav.org. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
[homepage]: http://contributor-covenant.org
[version]: http://contributor-covenant.org/version/1/4/

137
CONTRIBUTING.md Normal file
View file

@ -0,0 +1,137 @@
# Contributing to Grav
:+1::tada: First, thanks for getting involved with Grav! :tada::+1:
Please take a moment to review this document in order to make the contribution
process easy and effective for everyone involved.
Following these guidelines helps to communicate that you respect the time of
the developers managing and developing this open source project. In return,
they should reciprocate that respect in addressing your issue or assessing
patches and features.
## Grav, Plugins, Themes and Skeletons
Grav is a large open source project — it's made up of over 100 repositories. When you initially consider contributing to Grav, you might be unsure about which of those 200 repositories implements the functionality you want to change or report a bug for.
[https://github.com/getgrav/grav](https://github.com/getgrav/grav) is the main Grav repository. The core of Grav is provided by this repo.
[https://github.com/getgrav/grav-plugin-admin](https://github.com/getgrav/grav-plugin-admin) is the Admin Plugin repository.
Every Plugin and Theme has its own repository. If you have a problem you think is specific to a Theme or Plugin, please report it in its corresponding repository. Please read the Plugin or Theme documentation to ensure the problem is not addressed there already.
Every Skeleton also has its own repository, so if an issue is not specific to a theme or plugin but rather to its usage in the skeleton, report it in the skeleton repository.
## Using the issue tracker
The issue tracker is the preferred channel for [bug reports](#bugs),
[features requests](#features) and [submitting pull
requests](#pull-requests), but please respect the following restrictions:
* Please **do not** use the issue tracker for support requests. Use
[the Forum](http://getgrav.org/forum) or [the Gitter chat](https://gitter.im/getgrav/grav).
<a name="bugs"></a>
## Bug reports
A bug is a _demonstrable problem_ that is caused by the code in the repository.
Good bug reports are extremely helpful - thank you!
Guidelines for bug reports:
1. **Check you satisfy the Grav requirements** &mdash; [http://learn.getgrav.org/basics/requirements](http://learn.getgrav.org/basics/requirements)
2. **Check this happens on a clean Grav install** &mdash; check if the issue happens on any Grav site, or just with a specific configuration of plugins / theme
3. **Use the GitHub issue search** &mdash; check if the issue has already been
reported.
4. **Check if the issue is already being solved in a PR** &mdash; check the open Pull Requests to see if one already solves the problem you're having
5. **Check if the issue has been fixed** &mdash; try to reproduce it using the
latest `develop` branch in the repository.
6. **Isolate the problem** &mdash; create a [reduced test
case](http://css-tricks.com/reduced-test-cases/) and provide a step-by-step instruction set on how to recreate the problem. Include code samples, page snippets or yaml configurations if needed.
7. **Check the problem on Grav 1.1** &mdash; if you're using Grav 1.0, latest stable release, please also check if you can replicate the issue on Grav 1.1 RC as many bugs are already solved in the next Grav release.
A good bug report shouldn't leave others needing to chase you up for more
information. Please try to be as detailed as possible in your report.
- What is your environment? Is it localhost, OSX, Linux, on a remote server? Same happening locally and or the server, or just locally or just on Linux?
- What steps will reproduce the issue? What browser(s) and OS experience the problem?
- What would you expect to be the outcome?
- Did the problem start happening recently (e.g. after updating to a new version of Grav) or was this always a problem?
- If the problem started happening recently, can you reproduce the problem in an older version of Grav? What's the most recent version in which the problem doesn't happen? You can download older versions of Grav from the releases page on Github.
- Can you reliably reproduce the issue? If not, provide details about how often the problem happens and under which conditions it normally happens.
All these details will help contributors to fix any potential bugs.
Important: [include Code Samples in triple backticks](https://help.github.com/articles/github-flavored-markdown/#fenced-code-blocks) so that Github will provide a proper indentation. [Add the language name after the backticks](https://help.github.com/articles/github-flavored-markdown/#syntax-highlighting) to add syntax highlighting to the code snippets.
Example:
> Short and descriptive example bug report title
>
> A summary of the issue and the browser/OS environment in which it occurs. If
> suitable, include the steps required to reproduce the bug.
>
> 1. This is the first step
> 2. This is the second step
> 3. Further steps, etc.
>>
> Any other information you want to share that is relevant to the issue being
> reported. This might include the lines of code that you have identified as
> causing the bug, and potential solutions (and your opinions on their
> merits).
<a name="features"></a>
## Feature requests
Feature requests are welcome. But take a moment to find out whether your idea
fits with the scope and aims of the project. It's up to *you* to make a strong
case to convince the project's developers of the merits of this feature. Please
provide as much detail and context as possible.
<a name="pull-requests"></a>
## Pull requests
Good pull requests - patches, improvements, new features - are a fantastic
help. They should remain focused in scope and avoid containing unrelated
commits.
**Please ask first** in [Slack](https://getgrav.org/slack) or in the Forum before embarking on any significant pull request (e.g.
implementing features, refactoring code..),
otherwise you risk spending a lot of time working on something that the
project's developers might not want to merge into the project.
Please adhere to the coding conventions used throughout the project (indentation,
accurate comments, etc.) and any other requirements.
See [Using Pull Request](https://help.github.com/articles/using-pull-requests/) and [Fork a Repo](https://help.github.com/articles/fork-a-repo/) if you're not familiar with Pull Requests.
Any pull request should be based on the `develop` branch. We will not consider pull requests made to master.
**IMPORTANT**: By submitting a patch, you agree to allow the project owner to
license your work under the same license as that used by the project.
<a name="translations"></a>
### Translations
Translations for Grav core and the Admin plugin are managed through Crowdin:
- Admin: https://crowdin.com/project/grav-admin
- Core: https://crowdin.com/project/grav-core
Please do not post translations PRs for core or admin translations on GitHub, with the exception of fixes for the english language.
All other plugins and themes translations are handled directly in their GitHub repository, and the string are usually found in the `languages.yaml` file at the root of each project.

21
LICENSE.txt Normal file
View file

@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2017 Grav
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

235
README.md
View file

@ -1,80 +1,189 @@
# Kanthaus
# ![](https://avatars1.githubusercontent.com/u/8237355?v=2&s=50) Grav
Informative website for the Kanthaus Project, all documents and meeting notes are also stored here in the contents folder.
[![SensioLabsInsight](https://insight.sensiolabs.com/projects/cfd20465-d0f8-4a0a-8444-467f5b5f16ad/mini.png)](https://insight.sensiolabs.com/projects/cfd20465-d0f8-4a0a-8444-467f5b5f16ad) [![Slack](https://grav-chat.now.sh/badge.svg)](https://chat.getgrav.org) [![Build Status](https://travis-ci.org/getgrav/grav.svg?branch=develop)](https://travis-ci.org/getgrav/grav) [![OpenCollective](https://opencollective.com/grav/backers/badge.svg)](#backers) [![OpenCollective](https://opencollective.com/grav/sponsors/badge.svg)](#sponsors)
## Technology
This website was created using [Hugo](https://gohugo.io/).
Grav is a **Fast**, **Simple**, and **Flexible**, file-based Web-platform. There is **Zero** installation required. Just extract the ZIP archive, and you are already up and running. It follows similar principles to other flat-file CMS platforms, but has a different design philosophy than most. Grav comes with a powerful **Package Management System** to allow for simple installation and upgrading of plugins and themes, as well as simple updating of Grav itself.
## How to add new documents
To add new documents to this repo (repository) you will need a gitlab account with the correct permissions to add files to this repository
The underlying architecture of Grav is designed to use well-established and _best-in-class_ technologies to ensure that Grav is simple to use and easy to extend. Some of these key technologies include:
There are two easy options to add documents.
For either option you will need to have the correct access to this repo.
* [Twig Templating](http://twig.sensiolabs.org/): for powerful control of the user interface
* [Markdown](http://en.wikipedia.org/wiki/Markdown): for easy content creation
* [YAML](http://yaml.org): for simple configuration
* [Parsedown](http://parsedown.org/): for fast Markdown and Markdown Extra support
* [Doctrine Cache](http://doctrine-orm.readthedocs.io/projects/doctrine-orm/en/latest/reference/caching.html): layer for performance
* [Pimple Dependency Injection Container](http://pimple.sensiolabs.org/): for extensibility and maintainability
* [Symfony Event Dispatcher](http://symfony.com/doc/current/components/event_dispatcher/introduction.html): for plugin event handling
* [Symfony Console](http://symfony.com/doc/current/components/console/introduction.html): for CLI interface
* [Gregwar Image Library](https://github.com/Gregwar/Image): for dynamic image manipulation
1>
- Clone this repo:
```
git clone https://gitlab.com/kanthaus/kanthaus.gitlab.io.git
```
- edit the markdown (.md) files in the content folder
- git add . (add all changes)
- git commit -m "your changes eg. added new meeting notes"
- git push (you will be asked for your login details)
# Requirements
2>
- login to an account which has access to this repository
- view the source files
- enter the contents folder
- use gitlab's online code editor to change the content
- PHP 5.5.9 or higher. Check the [required modules list](https://learn.getgrav.org/basics/requirements#php-requirements)
- Check the [Apache](https://learn.getgrav.org/basics/requirements#apache-requirements) or [IIS](https://learn.getgrav.org/basics/requirements#iis-requirements) requirements
## Multilingual
# QuickStart
We use crowdin for the translations, original language is English, and we translate to German.
These are the options to get Grav:
This means you should write documents first in English, and without a language prefix, e.g.:
`about.md` (not `about.en.md`).
### Downloading a Grav Package
Then go to [crowdin.com/project/kanthausonline/de](https://crowdin.com/project/kanthausonline/de)
to translate to German.
You can download a **ready-built** package from the [Downloads page on https://getgrav.org](https://getgrav.org/downloads)
It will then create a [merge request](https://gitlab.com/kanthaus/kanthaus.gitlab.io/merge_requests)
for you with the changes.
### With Composer
## Webserver config
You can create a new project with the latest **stable** Grav release with the following command:
We use this config:
```nginx
location = /sitemap.xml {
}
location ~ ^/(en|de|css|pics)/ {
try_files $uri $uri/ =404;
}
location / {
set_by_lua_block $default_lang {
if ngx.var.http_accept_language ~= nil then
for lang in (ngx.var.http_accept_language .. ","):gmatch("([^,]*),") do
if string.sub(lang, 0, 2) == "en" then
return "en"
end
if string.sub(lang, 0, 2) == "de" then
return "de"
end
end
end
return "de"
}
return 302 /$default_lang$request_uri;
}
```
$ composer create-project getgrav/grav ~/webroot/grav
```
It allows you to share links without a language code in them, and the user
will be redirected to the correct language depending on their browser settings.
### From GitHub
E.g.
1. Clone the Grav repository from [https://github.com/getgrav/grav]() to a folder in the webroot of your server, e.g. `~/webroot/grav`. Launch a **terminal** or **console** and navigate to the webroot folder:
```
$ cd ~/webroot
$ git clone https://github.com/getgrav/grav.git
```
* link to share https://kanthaus.online/about/
* German redirects to https://kanthaus.online/de/about/
* English redirects to https://kanthaus.online/en/about/
2. Install the **plugin** and **theme dependencies** by using the [Grav CLI application](https://learn.getgrav.org/advanced/grav-cli) `bin/grav`:
```
$ cd ~/webroot/grav
$ bin/grav install
```
Check out the [install procedures](https://learn.getgrav.org/basics/installation) for more information.
# Adding Functionality
You can download [plugins](https://getgrav.org/downloads/plugins) or [themes](https://getgrav.org/downloads/themes) manually from the appropriate tab on the [Downloads page on https://getgrav.org](https://getgrav.org/downloads), but the preferred solution is to use the [Grav Package Manager](https://learn.getgrav.org/advanced/grav-gpm) or `GPM`:
```
$ bin/gpm index
```
This will display all the available plugins and then you can install one or more with:
```
$ bin/gpm install <plugin/theme>
```
# Updating
To update Grav you should use the [Grav Package Manager](https://learn.getgrav.org/advanced/grav-gpm) or `GPM`:
```
$ bin/gpm selfupgrade
```
To update plugins and themes:
```
$ bin/gpm update
```
# Contributing
We appreciate any contribution to Grav, whether it is related to bugs, grammar, or simply a suggestion or improvement! Please refer to the [Contributing guide](CONTRIBUTING.md) for more guidance on this topic.
## Security issues
If you discover a possible security issue related to Grav or one of its plugins, please email the core team at contact@getgrav.org and we'll address it as soon as possible.
# Getting Started
* [What is Grav?](https://learn.getgrav.org/basics/what-is-grav)
* [Install](https://learn.getgrav.org/basics/installation) Grav in few seconds
* Understand the [Configuration](https://learn.getgrav.org/basics/grav-configuration)
* Take a peek at our available free [Skeletons](https://getgrav.org/downloads/skeletons)
* If you have questions, jump on our [Slack Room](https://getgrav.org/slack)!
* Have fun!
# Exploring More
* Have a look at our [Basic Tutorial](https://learn.getgrav.org/basics/basic-tutorial)
* Dive into more [advanced](https://learn.getgrav.org/advanced) functions
* Learn about the [Grav CLI](https://learn.getgrav.org/cli-console/grav-cli)
* Review examples in the [Grav Cookbook](https://learn.getgrav.org/cookbook)
# Backers
Support Grav with a monthly donation to help us continue development. [[Become a backer](https://opencollective.com/grav#backer)]
<a href="https://opencollective.com/grav/backer/0/website" target="_blank"><img src="https://opencollective.com/grav/backer/0/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/1/website" target="_blank"><img src="https://opencollective.com/grav/backer/1/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/2/website" target="_blank"><img src="https://opencollective.com/grav/backer/2/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/3/website" target="_blank"><img src="https://opencollective.com/grav/backer/3/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/4/website" target="_blank"><img src="https://opencollective.com/grav/backer/4/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/5/website" target="_blank"><img src="https://opencollective.com/grav/backer/5/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/6/website" target="_blank"><img src="https://opencollective.com/grav/backer/6/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/7/website" target="_blank"><img src="https://opencollective.com/grav/backer/7/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/8/website" target="_blank"><img src="https://opencollective.com/grav/backer/8/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/9/website" target="_blank"><img src="https://opencollective.com/grav/backer/9/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/10/website" target="_blank"><img src="https://opencollective.com/grav/backer/10/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/11/website" target="_blank"><img src="https://opencollective.com/grav/backer/11/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/12/website" target="_blank"><img src="https://opencollective.com/grav/backer/12/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/13/website" target="_blank"><img src="https://opencollective.com/grav/backer/13/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/14/website" target="_blank"><img src="https://opencollective.com/grav/backer/14/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/15/website" target="_blank"><img src="https://opencollective.com/grav/backer/15/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/16/website" target="_blank"><img src="https://opencollective.com/grav/backer/16/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/17/website" target="_blank"><img src="https://opencollective.com/grav/backer/17/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/18/website" target="_blank"><img src="https://opencollective.com/grav/backer/18/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/19/website" target="_blank"><img src="https://opencollective.com/grav/backer/19/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/20/website" target="_blank"><img src="https://opencollective.com/grav/backer/20/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/21/website" target="_blank"><img src="https://opencollective.com/grav/backer/21/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/22/website" target="_blank"><img src="https://opencollective.com/grav/backer/22/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/23/website" target="_blank"><img src="https://opencollective.com/grav/backer/23/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/24/website" target="_blank"><img src="https://opencollective.com/grav/backer/24/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/25/website" target="_blank"><img src="https://opencollective.com/grav/backer/25/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/26/website" target="_blank"><img src="https://opencollective.com/grav/backer/26/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/27/website" target="_blank"><img src="https://opencollective.com/grav/backer/27/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/28/website" target="_blank"><img src="https://opencollective.com/grav/backer/28/avatar.svg"></a>
<a href="https://opencollective.com/grav/backer/29/website" target="_blank"><img src="https://opencollective.com/grav/backer/29/avatar.svg"></a>
# Sponsors
Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/grav#sponsor)]
<a href="https://opencollective.com/grav/sponsor/0/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/0/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/1/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/1/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/2/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/2/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/3/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/3/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/4/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/4/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/5/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/5/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/6/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/6/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/7/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/7/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/8/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/8/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/9/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/9/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/10/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/10/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/11/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/11/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/12/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/12/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/13/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/13/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/14/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/14/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/15/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/15/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/16/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/16/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/17/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/17/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/18/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/18/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/19/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/19/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/20/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/20/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/21/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/21/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/22/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/22/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/23/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/23/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/24/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/24/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/25/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/25/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/26/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/26/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/27/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/27/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/28/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/28/avatar.svg"></a>
<a href="https://opencollective.com/grav/sponsor/29/website" target="_blank"><img src="https://opencollective.com/grav/sponsor/29/avatar.svg"></a>
# License
See [LICENSE](LICENSE.txt)
[gitflow-model]: http://nvie.com/posts/a-successful-git-branching-model/
[gitflow-extensions]: https://github.com/nvie/gitflow
# Running Tests
First install the dev dependencies by running `composer update` from the Grav root.
Then `composer test` will run the Unit Tests, which should be always executed successfully on any site.
You can also run a single unit test file, e.g. `composer test tests/unit/Grav/Common/AssetsTest.php`

0
assets/.gitkeep Normal file
View file

0
backup/.gitkeep Normal file
View file

BIN
bin/composer.phar Executable file

Binary file not shown.

73
bin/gpm Executable file
View file

@ -0,0 +1,73 @@
#!/usr/bin/env php
<?php
define('GRAV_CLI', true);
if (!file_exists(__DIR__ . '/../vendor')){
require_once __DIR__ . '/../system/src/Grav/Common/Composer.php';
}
use Grav\Common\Composer;
use Grav\Common\Config\Setup;
if (!file_exists(__DIR__ . '/../vendor')){
// Before we can even start, we need to run composer first
$composer = Composer::getComposerExecutor();
echo "Preparing to install vendor dependencies...\n\n";
echo system($composer.' --working-dir="'.__DIR__.'/../" --no-interaction --no-dev --prefer-dist -o install');
echo "\n\n";
}
use Symfony\Component\Console\Application;
use Grav\Common\Grav;
$autoload = require_once(__DIR__ . '/../vendor/autoload.php');
if (version_compare($ver = PHP_VERSION, $req = GRAV_PHP_MIN, '<')) {
exit(sprintf("You are running PHP %s, but Grav needs at least PHP %s to run.\n", $ver, $req));
}
if (!ini_get('date.timezone')) {
date_default_timezone_set('UTC');
}
if (!file_exists(ROOT_DIR . 'index.php')) {
exit('FATAL: Must be run from ROOT directory of Grav!');
}
if (!function_exists('curl_version')) {
exit('FATAL: GPM requires PHP Curl module to be installed');
}
$climate = new League\CLImate\CLImate;
$climate->arguments->add([
'environment' => [
'prefix' => 'e',
'longPrefix' => 'env',
'description' => 'Configuration Environment',
'defaultValue' => 'localhost'
]
]);
$climate->arguments->parse();
$environment = $climate->arguments->get('environment');
// Set up environment based on params.
Setup::$environment = $environment;
$grav = Grav::instance(array('loader' => $autoload));
$grav['uri']->init();
$grav['config']->init();
$grav['streams'];
$app = new Application('Grav Package Manager', GRAV_VERSION);
$app->addCommands(array(
new \Grav\Console\Gpm\IndexCommand(),
new \Grav\Console\Gpm\VersionCommand(),
new \Grav\Console\Gpm\InfoCommand(),
new \Grav\Console\Gpm\InstallCommand(),
new \Grav\Console\Gpm\UninstallCommand(),
new \Grav\Console\Gpm\UpdateCommand(),
new \Grav\Console\Gpm\SelfupgradeCommand(),
new \Grav\Console\Gpm\DirectInstallCommand(),
));
$app->run();

45
bin/grav Executable file
View file

@ -0,0 +1,45 @@
#!/usr/bin/env php
<?php
define('GRAV_CLI', true);
if (!file_exists(__DIR__ . '/../vendor')){
require_once __DIR__ . '/../system/src/Grav/Common/Composer.php';
}
use Grav\Common\Composer;
if (!file_exists(__DIR__ . '/../vendor')){
// Before we can even start, we need to run composer first
$composer = Composer::getComposerExecutor();
echo "Preparing to install vendor dependencies...\n\n";
echo system($composer.' --working-dir="'.__DIR__.'/../" --no-interaction --no-dev --prefer-dist -o install');
echo "\n\n";
}
use Symfony\Component\Console\Application;
require_once __DIR__ . '/../vendor/autoload.php';
if (version_compare($ver = PHP_VERSION, $req = GRAV_PHP_MIN, '<')) {
exit(sprintf("You are running PHP %s, but Grav needs at least PHP %s to run.\n", $ver, $req));
}
if (!ini_get('date.timezone')) {
date_default_timezone_set('UTC');
}
if (!file_exists(ROOT_DIR . 'index.php')) {
exit('FATAL: Must be run from ROOT directory of Grav!');
}
$app = new Application('Grav CLI Application', GRAV_VERSION);
$app->addCommands(array(
new \Grav\Console\Cli\InstallCommand(),
new \Grav\Console\Cli\ComposerCommand(),
new \Grav\Console\Cli\SandboxCommand(),
new \Grav\Console\Cli\CleanCommand(),
new \Grav\Console\Cli\ClearCacheCommand(),
new \Grav\Console\Cli\BackupCommand(),
new \Grav\Console\Cli\NewProjectCommand(),
));
$app->run();

137
bin/plugin Executable file
View file

@ -0,0 +1,137 @@
#!/usr/bin/env php
<?php
define('GRAV_CLI', true);
if (!file_exists(__DIR__ . '/../vendor')) {
require_once __DIR__ . '/../system/src/Grav/Common/Composer.php';
}
use Grav\Common\Composer;
if (!file_exists(__DIR__ . '/../vendor')) {
// Before we can even start, we need to run composer first
$composer = Composer::getComposerExecutor();
echo "Preparing to install vendor dependencies...\n\n";
echo system($composer . ' --working-dir="' . __DIR__ . '/../" --no-interaction --no-dev --prefer-dist -o install');
echo "\n\n";
}
use Symfony\Component\Console\Application;
use Symfony\Component\Console\Input\ArgvInput;
use Symfony\Component\Console\Output\ConsoleOutput;
use Symfony\Component\Console\Formatter\OutputFormatterStyle;
use Grav\Common\Grav;
use Grav\Common\Config\Setup;
use Grav\Common\Filesystem\Folder;
$autoload = require_once(__DIR__ . '/../vendor/autoload.php');
if (version_compare($ver = PHP_VERSION, $req = GRAV_PHP_MIN, '<')) {
exit(sprintf("You are running PHP %s, but Grav needs at least PHP %s to run.\n", $ver, $req));
}
if (!ini_get('date.timezone')) {
date_default_timezone_set('UTC');
}
if (!file_exists(ROOT_DIR . 'index.php')) {
exit('FATAL: Must be run from ROOT directory of Grav!');
}
$climate = new League\CLImate\CLImate;
$climate->arguments->add([
'environment' => [
'prefix' => 'e',
'longPrefix' => 'env',
'description' => 'Configuration Environment',
'defaultValue' => 'localhost'
]
]);
$climate->arguments->parse();
$environment = $climate->arguments->get('environment');
// Set up environment based on params.
Setup::$environment = $environment;
$grav = Grav::instance(array('loader' => $autoload));
$grav['uri']->init();
$grav['config']->init();
$grav['streams'];
$grav['plugins']->init();
$grav['themes']->init();
$app = new Application('Grav Plugins Commands', GRAV_VERSION);
$pattern = '([A-Z]\w+Command\.php)';
// get arguments and strip the application name
if (null === $argv) {
$argv = $_SERVER['argv'];
}
$bin = array_shift($argv);
$name = array_shift($argv);
$argv = array_merge([$bin], $argv);
$input = new ArgvInput($argv);
$plugin = $grav['plugins']->get($name);
$output = new ConsoleOutput();
$output->getFormatter()->setStyle('red', new OutputFormatterStyle('red', null, array('bold')));
$output->getFormatter()->setStyle('white', new OutputFormatterStyle('white', null, array('bold')));
if (!$name) {
$output->writeln('');
$output->writeln("<red>Usage:</red>");
$output->writeln(" {$bin} [slug] [command] [arguments]");
$output->writeln('');
$output->writeln("<red>Example:</red>");
$output->writeln(" {$bin} error log -l 1 --trace");
$list = Folder::all('plugins://', ['compare' => 'Pathname', 'pattern' => '/\/cli\/' . $pattern . '$/usm', 'levels' => 2]);
if (count($list)) {
$available = [];
$output->writeln('');
$output->writeln('<red>Plugins with CLI available:</red>');
foreach ($list as $index => $entry) {
$split = explode('/', $entry);
$entry = array_shift($split);
$index = str_pad($index++ + 1, 2, '0', STR_PAD_LEFT);
if (in_array($entry, $available)) {
continue;
}
$available[] = $entry;
$output->writeln(' ' . $index . ". <red>" . str_pad($entry, 15) . "</red> <white>${bin} ${entry} list</white>");
}
}
exit;
}
if ($plugin === null) {
$output->writeln("<red>Grav Plugin <white>'{$name}'</white> is not installed</red>");
exit;
}
$path = 'plugins://' . $name . '/cli';
try {
$commands = Folder::all($path, ['compare' => 'Filename', 'pattern' => '/' . $pattern . '$/usm', 'levels' => 1]);
} catch (\RuntimeException $e) {
$output->writeln("<red>No Console Commands for <white>'{$name}'</white> where found in <white>'{$path}'</white></red>");
exit;
}
foreach ($commands as $command_path) {
$full_path = $grav['locator']->findResource("plugins://{$name}/cli/{$command_path}");
require_once $full_path;
$command_class = 'Grav\Plugin\Console\\' . preg_replace('/.php$/', '', $command_path);
$command = new $command_class();
$app->add($command);
}
$app->run($input);

0
cache/.gitkeep vendored Normal file
View file

16
codeception.yml Normal file
View file

@ -0,0 +1,16 @@
actor: Tester
paths:
tests: tests
log: tests/_output
data: tests/_data
support: tests/_support
envs: tests/_envs
settings:
bootstrap: _bootstrap.php
colors: true
memory_limit: 1024M
extensions:
enabled:
- Codeception\Extension\RunFailed
modules:
config:

68
composer.json Normal file
View file

@ -0,0 +1,68 @@
{
"name": "getgrav/grav",
"type": "project",
"description": "Modern, Crazy Fast, Ridiculously Easy and Amazingly Powerful Flat-File CMS",
"keywords": ["cms","flat-file cms","flat cms","flatfile cms","php"],
"homepage": "http://getgrav.org",
"license": "MIT",
"require": {
"php": ">=5.5.9",
"twig/twig": "~1.24",
"erusev/parsedown": "~1.6",
"erusev/parsedown-extra": "~0.7",
"symfony/yaml": "~2.8",
"symfony/console": "~2.8",
"symfony/event-dispatcher": "~2.8",
"symfony/var-dumper": "~2.8",
"symfony/polyfill-iconv": "~1.0",
"doctrine/cache": "1.6.*",
"doctrine/collections": "1.3",
"filp/whoops": "~2.0",
"matthiasmullie/minify": "^1.3",
"monolog/monolog": "~1.0",
"gregwar/image": "2.*",
"donatj/phpuseragentparser": "~0.3",
"pimple/pimple": "~3.0",
"rockettheme/toolbox": "~1.0",
"maximebf/debugbar": "~1.10",
"ext-mbstring": "*",
"ext-openssl": "*",
"ext-curl": "*",
"ext-zip": "*",
"league/climate": "^3.2",
"antoligy/dom-string-iterators": "^1.0",
"miljar/php-exif": "^0.6.3",
"composer/ca-bundle": "^1.0"
},
"require-dev": {
"codeception/codeception": "^2.1",
"phpunit/php-code-coverage": "~2.0",
"fzaninotto/faker": "^1.5",
"victorjonsson/markdowndocs": "dev-master"
},
"repositories": [
{
"type": "vcs",
"url": "https://github.com/trilbymedia/PHP-Markdown-Documentation-Generator"
}
],
"autoload": {
"psr-4": {
"Grav\\": "system/src/Grav"
},
"files": ["system/defines.php"]
},
"archive": {
"exclude": ["VERSION"]
},
"scripts": {
"post-create-project-cmd": "bin/grav install",
"test": "vendor/bin/codecept run unit",
"test-windows": "vendor\\bin\\codecept run unit"
},
"extra": {
"branch-alias": {
"dev-develop": "1.x-dev"
}
}
}

3536
composer.lock generated Normal file

File diff suppressed because it is too large Load diff

View file

@ -1,53 +0,0 @@
baseURL = "https://kanthaus.online/"
defaultContentLanguage = "en"
defaultContentLanguageInSubdir = true
title = "Kanthaus"
theme = "minimal"
[params]
author = "kanthaus"
accent = "green"
showBorder = false
backgroundColor = "white"
font = "Raleway" # should match the name on Google Fonts!
highlight = true
highlightStyle = "solarized-dark"
highlightLanguages = ["go", "haskell", "kotlin", "scala", "swift"]
publicGitURL = "https://gitlab.com/kanthaus/kanthaus.gitlab.io"
[Languages]
[Languages.en]
copyright = "<a href='https://creativecommons.org/publicdomain/zero/1.0/'> CC0; no rights reserved </a>"
[Languages.de]
copyright = "<a href='https://creativecommons.org/publicdomain/zero/1.0/'> CC0; keine Rechte vorbehalten </a>"
# Social icons to be shown on the right-hand side of the navigation bar
# The "name" field should match the name of the icon to be used
# The list of available icons can be found at http://fontawesome.io/icons/
[[Languages.en.menu.icon]]
url = "mailto:hello@kanthaus.online"
name = "envelope-o"
weight = 1
[[Languages.en.menu.icon]]
url = "https://gitlab.com/kanthaus/"
name = "gitlab"
weight = 2
[[Languages.en.menu.icon]]
url = "/index.xml"
name = "rss"
weight = 3
[[Languages.de.menu.icon]]
url = "mailto:hello@kanthaus.online"
name = "envelope-o"
weight = 1
[[Languages.de.menu.icon]]
url = "https://gitlab.com/kanthaus/"
name = "gitlab"
weight = 2
[[Languages.de.menu.icon]]
url = "/index.xml"
name = "rss"
weight = 3

View file

@ -1,9 +0,0 @@
---
description: Selbstbestimmung, Gleichwertigkeit und Akzeptanz leben
more: Mehr über dieses Projekt
menu:
main:
name: Home
weight: 1
---
</br>

View file

@ -1,10 +0,0 @@
---
description: "promoting sharing—preventing waste"
more: "Learn more..."
menu:
main:
name: "Home"
weight: 1
---
</br>
This document should be empty.

View file

@ -1,6 +0,0 @@
---
menu:
main:
name: Dokumente
weight: 2
---

View file

@ -1,8 +0,0 @@
---
menu:
main:
name: "Documents"
weight: 2
---
</br>
This is empty.

View file

@ -1,32 +0,0 @@
---
title: Coordination Meeting
date: 2017-08-07
---
- Anwesende: Matthias, Laurina, Doug.
- Facilitator: Doug.
- Notary: Doug.
- New Members: Matthias, Laurina, Doug, Janina. (All founding Members.)
- New Volunteers: None.
- Incoming Visitors:
- Bodhi, Anna and *unkonwn* come today. Bodhi and Anna will stay.
- Adam planning on coming at some point this week.
- Laurinas parents will arrive on Saturday afternoon and leave early Sunday.
- Daiyi may come on the weekend.
- Axel planning on coming on Sunday at some point.
- Changes to Constitution: None. (Just adopted.)
- Changes to Collective Agreements: None. (Just adopted)
- Information/tasks/intentions/proposals:
- Henrik knows an electrician in Leipzig and will contact Matthias regarding that soon.
- Other worker contacts from Arjan to come soon.
- From next week there will be a flat rate phone line to German landlines and mobiles.
- Spülraum now in place, k20-0-1. To be used preferentially for washing things (not people.)
- Meeting with the bank to open an account tomorrow at 10:00
- Laurina will pick up some beans.
- Item pickup from Annike today.
- Tomorrow, roof fixing and Leipzig pickup.
- Janishausen pickup on Wednesday
- Matthias to pickup cheap printer soon (an epson wf3620dwf)
- Laurina will visit Mirek from NDK for funding advice
- Matthias wishes to set up material storage area in existing rooms using shelves.
- General intention to have short, daily coordination meeting at the best time for everyone
- Next facilitator: Matthias.

View file

@ -1,19 +0,0 @@
---
title: General Meeting
date: 2017-08-10
---
Present: Doug, Matthias, Laurina.
- Roof
- A lot of rain last night and still considerable quantities of water coming in 20 & 22.
- We need to fix this as soon as possible, as cheaply (time, energy, material and money) as possible until next Summer (i.e. 1 year.)
- Options:
- Keep applying bitumen mixture over cracks.
- Apply bitumen-latex mixture over cracks.
- Apply silicon mixture over cracks.
- Stick bitumen strips over cracks with 'cold' bitumen.
- Stick bitumen strips over cracks by melting on.
- Request: keep fly-food in fly-proof containers (i.e. fruit/compost/reskip.) Paint tubs may need rims cleaned.
- Request: AC soon, especially for clothes washing and vacuuming.
- Remind Micael, Arjan and Henrik for contacts.
- Then contact the contacts.

View file

@ -1,28 +0,0 @@
---
title: Coordination Meeting
date: 2017-08-14
---
- Present: Laurina, Doug, Christian, Matthias
- Facilitator: Matthias
- Notary: Matthias
- New Members:
- New Volunteers:
- Incoming Visitors: Maybe Axel, maybe Silja
- Changes to Constitution: -
- Changes to Collective Agreements: -
- Information/tasks/intentions/proposals:
- Bike workshop may be started in coordination with Arjen beginning of september. Might apply for another funding for that.
- No visitors can be welcomed between 16.08.-25.8.
- AC power update: got new contacts to electricians, a post in a facebook group was made (contact: Matthias). Proposal to get more batteries/solar panels after estimating how long it will still take.
- Proposal to change Constitutional Principle of 'Autonomy' to 'Self-determination'. Will collect proposals until 4.9. and then do a combined change requests. No resistance against this change request.
- Digital organization, minimal viable set-up. Wish to a common organizational platform (currently: Using github, wiki, nextcloud)
- Process of finding a name is going on until this Friday
- Roof is still not properly sealed, trying a second, bitumen latex product now, second application happens today. Expect heavy rain on tuesday evening so results may be seen
- Our landline phone has a german landline/mobile flat from today on.
- Laurina will write a mail to the mayor/officials about a meeting beginning of september
- We will start setting up foodsharing in beginning of september
- We collect a printer in Leipzig on Wednesday.
- A list will be made to collect things that will be requested from Harzgerode on Tuesday/tomorrow
- Next facilitator: Doug

View file

@ -1,35 +0,0 @@
---
title: Coordination Meeting
date: 2017-08-28
---
- Present: Doug, Cille, Mona, Wolfi, Kaja, Adam
- Facilitator: Doug
- Notary: Doug
- New Members: none
- New Volunteers: none
- Incoming Visitors:
- Matthias and Max arrive this evening
- Cille and Kaja stay until tomorrow
- Daiyi may come... Laurina is in contact
- Max and Mona off on 30th
- Changes to Constitution: none
- Changes to Collective Agreements: none
- Information/tasks/intentions/proposals:
- AC power update: Alex has come, talked to Matthias, seems positive
- Info: a [document](https://github.com/kanthaus/kanthaus/blob/master/visiting.md) outlining basic info for incoming visitors has been prepared. Request: feedback. (Doug)
- Question: what do people think of the idea of an auerworld creative-team meeting (for chillout and get together purposes) for a weekend towards the end of the year in Wurzen? (Laurina)
- Cille is positive, was involved in the decoration action. (Auerworld is a small but great festival.)
- Silvan, an Auerworld organizer, is interested to help set up a cross-festival decoration team.
- Generally positive.
- Info: pretty much all camping gas cookers leak a bit during cannister connection. Request: please connect all camping gas cannisters outside the building. (Doug)
- Question: how to generally guide the use of items which require special attention in a flowing group of people? (Doug)
- Proposal: set up large gas cannisters with existing cookers.
- Proposal: more cookingoutside with barbecue.
- Request: for clarification on what is meant by ['All residents ... should attend.'](https://github.com/kanthaus/kanthaus/blob/master/collectiveAgreements.md) and re-phrasing if appropriate. (Wolfi, Cille, Doug)
- Proposal: action group via email.
- Open meeting:
- Mona would like greater understanding of what can and can't be done. She would be motivated to accomplish something with others over the coming days.
- Cille suggests that a general plan for the future. Will display her ideas soon. Suggests tagging rooms with names/description.
- Adam echoes that he'd like clear tasks he can pick up.
- Doug motivated to triage tasks better.
- Next facilitator: Adam

View file

@ -1,48 +0,0 @@
---
title: Coordination Meeting
date: 2017-09-04
---
- Present: Adam, Matthias, Janina, Laurina, Doug, Wolfy, Luke
- Facilitator: Adam
- Notary: Adam
- New Members: none
- New Volunteers: none
- Incoming Visitors this week:
- Bodhi & Anna come later in the week
- Flo and Alexander come today (friends of Laurina)
- Maybe Laurie & Bryony (friends of Doug)
- Changes to Constitution: none
- Changes to Collective Agreements: none
- Announcements:
- Laurina will host a discussion regarding Money (Individual and group expenditure) tomorrow at 11am
- Info > questions/tasks/proposals:
- AC power update [recurring]: Alex has declined to help us install electricity in the buildings. However Matthias is very optimistic about another source (Mario.) Matthias will negotiate a suitable date with Mario later in the week.
- Proposal: keep sinks in a clean and clear state by default [Doug].
- This is happening successfully. New drainage facility has been added.
- Proposal: clean, squeeze and air-dry cloths/sponges after use. [Matthias]
- Matthias reminds that sponges will last longer when treated this way.
- Question: opinions regarding a weekly, deep-clean power-hour sound? [Doug]
- Group votes in favour to test this proposal this coming Thursday (7th) at 10:00.
- Question: opinions regarding an open-desk policy? [Doug]
- Keep top surfaces clear to allow for others to use the desks. Will become more important as the group becomes larger.
- No resistance from the group re: the idea, however first we need to create adequate storage space. Going forward, we should install shelves in the work spaces for storing personal things
- Come up with visitors policy [Laurina]
- Doug and Laurina will be working on a policy this week
- Paragraphs about awareness and ressources [Laurina]
- After a recent conversation with Luke and Matthias, Laurina was inspired to write the following: *"Awareness: we want to regulate only where needed and promote a culture of awareness. For us this means thinking, watching and/or asking before acting and considering the effects of our actions carefully. Be aware of the effect of your behaviour (might) have also on the other individualsin the house and what the need. Resources (e.g. food, toiletries): Countless amounts of ressources in Germany go to waste. At least a third of all food in Gemany gets thrown away. We want to prevent waste and wasteful behavior and therefore try to work mostly with ressources that otherwise would have been thrown away. For example our food, toiletries, alcohol and furniture are saved. Please be aware of how much there is and that other people also want to enjoy the ressources. Food is dumpsterdived or from foodsharing. Most of the rest is saved at festivals or from individuals."*
- Matthias feels that the correct place for something like this would be in an FAQ section.
- After feedback, Laurina will revise and come up with a proposal for next meeting
- How to make sure that visitors know about collective agreements/constituion? [Matthias]
- All visitors should be hyperlinked to the Constitution and Collective Agreements before arriving.
- Setting goals for volunteers/members to self manage? [Matthias]
- Matthias seeks feedback on idea of declaring perosnal goals to the group, for improved accountability
- Group responds with a positive shrug, other tasks are having priority this week
- Focus more on vision/house than on individual projects in the first time? [Matthias]
- Sharing 'the vision' important for auto-engagement ('seeing tasks')
- Wolfy is willing to help but seeks guidance and task-based direction, thus requiring management
- Recognition that this will be an ongoing issue
- Create a silent work space [Adam]
- Adam will create a silent workspace in K22 1st floor
- This co-ordination meeting was too long, a proposal for meeting twice-weekly? (Matthias)
- Strong resistance from Doug, who offers to come up with a structural solution to the long meetings
- Next facilitator: Wolfy

View file

@ -1,51 +0,0 @@
---
title: Coordination Meeting
date: 2017-09-11
---
<!-- Hello facilitator/notary! Thank you for your services. Here is some advice for facilitating coordination meetings:
- Notify people 10 minutes before the meeting starts. (Watching the clock is not super fun, people will be grateful if you do it for them.)
- Start at 10:00 sharp, or earlier if everyone is there. (Waiting is time-wasting, be a time-saver!)
- Go through the ordered points in order, even if nothing has changed. (They are arranged to try and get the most relevant information to most people.)
- Feel welcome to moderate conversation if it goes off-topic/too detailed. (Are listeners interested? Are speakers satisfied? Can you identify a sub-group?)
- Stop the meeting at 11:00 latest. (There is always more to talk about and the important stuff will not be forgotten.)
- Leave the room once the meeting has ended. (This sends a clear signal to everyone else that they can also leave and get on with their day.)
- Upload the notes as soon as possible. (People can then be reminded of what happened and what they said they would do.)
- Have fun!
-->
- Facilitator: Wolfi
- Notary: Wolfi
- Present: Bodhi, Doug, Matthias, Wolfi
1. People coming:
- Matthias parents (friday, 09-15 just for afternoon)
- Laurina (friday or Saturday)
2. People leaving:
- Matthias (friday afternoon til sunday)
- Wolfi (Maybe Wednesday)
3. New Volunteers: Wolfi
4. New Members: none
5. Changes to Constitution: none
6. Changes to Collective Agreements: none
7. Information/announcements:
- A mirror broke in the upstairs bathroom. [Doug]
- Facilitation advice added to CoMe template, only viewable raw. [Doug]
- In two months the average temperature will be [5 C.](https://weatherspark.com/y/73665/Average-Weather-in-Wurzen-Germany-Year-Round) [Doug]
- You can add points to next weeks coordination meeting and arrange sub-group meetings. [Doug]
8. Questions/opinions/proposals:
- Proposal: Matthias proposes to keep most windows closed, but still would like to have proper ventilation three times a day.
- Proposal: we do the power hour again this Thursday, 10:00. Doug revise the plan to make it more efficient. [Doug]
- Proposal: improve Unanimous Acceptance method by: 1) clarifying the proposal and answering outstanding questions as best possible 2) asking for anyone who opposes to raise their hand (giving ~5 seconds to respond) 3) if no one opposes, ask for anyone who accepts to raise their hand (giving a further ~5 seconds to respond.) [Doug]
- Proposal: generally try to keep planned, work-like events between Monday to Thursday (inclusive.) [Doug]
- Question: How to progress with the Offline taskboard? Get rid of it as anyway not working? [Matthias]
- Opinions: Keep and offline taskboard for guests, but create and online task list for other tasks.
- Task: make a good offline weekly calendar
- Task: Rearrange storage rooms [Bodhi, Matthias]
- ProposaL 15 min after this meeting have another meeting about organzing things
- Doug: there are currently two draft money policies
- Bodhi: sleeping situation is not ideal, Bodhi does not like the big bed in the common sleeping area
- Task: Matthias would like to pick get a ping pong table from the neighborurs
- Doug: We should make it more clear that there is an expectation when someone has agreed for something and the default position should be not to feel this expectation
- Proposal: I find this CoMe template abit confusing to me, maybe something needs to be fixed.
- Rearrange storage rooms [Bodhi, Matthias]
9. Next facilitator: Doug

View file

@ -1,42 +0,0 @@
---
title: Coordination Meeting
date: 2017-09-18
---
- Facilitator: Doug
- Notary: Doug
- Present: Doug, Matthias, Laurina, Bodhi, Lise
1. People coming:
- Steffen and Anna? [Bodhi]
- Jörg Wunderlich on Weds [Laurina]
2. People leaving:
- Lise on Weds?
- Bodhi?
3. New Volunteers: none
4. New Members: none
5. Changes to Constitution: none
6. Changes to Collective Agreements: none
7. Information (e.g. announcements, events, etc)
- Waste collection: Tuesday (tomorrow) - Restmüll
- Food pickups:
- Wednesday: Elke's Markstand, Landgut Nemt
- Friday: Gesundheitshaus Kräuterfee, Landgut Nemt
- Downstairs kitchen (k20-0-2) now usable. [Bodhi]
8. Discussion (e.g. questions, proposals, etc):
- Doug will fill and put out restmüll.
- Jörg from the radio will come on Wednesday. He wants to do a food pick up and generally investigate Kanthaus. [Laurina]
- Proposal: include power-hour in Collective Agreements. [Doug] Accepted, Doug to draft.
- Crisps had to be thrown away because of moths, a similar thing had happened regarding chocolate earlier. [Matthias] Request for more thoughfulness when collecting food. Proposal to store all unsorted/dirty/questionable foodin Spülraum until confirmed OK. Accepted.
- Roof: Matthias, Bodhi, Doug to meet at some point.
- Compost team: Bodhi, Matthias to meet at some point.
- Breakthrough chat group: Matthias, Bodhi to meet at some point.
- Contacting 18: Laurina interested, Matthias wants to draft.
- Money & Visitors policy: Laurina and Doug will meet some time this week.
- Könnern plants need to be repotted. [Matthias]
- Bike workshop: Laurina has found some interesting info regarding open workshops. She wants to arrange a meeting with Arjen and other interested parties at some point.
- Gas: Matthias sent an email to the Projekt Verteiler, but has received no suitable reply yet.
- Electricity: in progress. [Matthias]
- Proposal: get safety glasses. [Bodhi]
- Idea: Bike tour to collect apples and go gleaning. [Laurina]
- Proposal: group goes to Communetreff in Leipzig, this Wednesday at 19:00. A group ticket on the train is quite cheap for 4/5 people.
9. Next facilitator: Laurina

View file

@ -1,54 +0,0 @@
---
title: Room Assignment Meeting
date: 2017-09-22
---
Date: 2017-09-22
Present: Bodhi, Matthias, Doug, Laurina
Notary: Doug
The was a lot of discussion... The following outcomes were unanimously accepted.
# Room assignment until Spring 2018 (2018-03-01)
## k20
* k20-0
* k20-0-1: Spülraum
* k20-0-2: Silent desk room (new)
* k20-1
* k20-1-1: Bathroom
* k20-1-2: Kitchen
* k20-1-3: Living room
* k20-1-4: Office
* k20-1-5: Tool room
* k20-1#: Toilet
* k20-2
* k20-2-1: Bathroom
* k20-2-2: Dorm (new) [DDT treatment required]
* k20-2-3: Communal sleeping
* k20-2-4: Personal storage
* k20-2-5: Private sleeping
## k22
* k22-0
* k22-0-1: Materials storage
* k22-0-3: Furniture storage
* k22-0-4: Item storage
* k22-0-5: Storage
* k22-2
* k22-2-3: Private sleeping (new)
Additionally, k20-0-3 and k20-0-4 were clearly not intended for storage, but rather for groups/seminars/yoga/sharing-circles/etc. However, the precise details were not agreed upon. Please discuss with others before changing assigned rooms. Please ensure unassigned rooms are clean before experimenting.
Additionally, it was agreed to put off break-throughs, floor replacements and other large de/construction until Spring.
# Other
## Design principles
The following two principles emerged: * **Periphery permits privacy.** Rooms which are higher and outer naturally have less flow. * **Certainty is proportional** to complexity, distance into future, number of stages, etc.
## Sleeping space intentions
It came up that making sleeping space intentions clearer is important, specifically reducing discomfort and distraction for people wanting to sleep. Whether this is done by signs/induction remains to be seen.

View file

@ -1,63 +0,0 @@
---
title: Coordination Meeting
date: 2017-09-25
---
<!-- Hello facilitator/notary! Thank you for your services. Here is some advice for facilitating coordination meetings:
- Notify people 10 minutes before the meeting starts. (Watching the clock is not super fun, people will be grateful if you do it for them.)
- Start at 10:00 sharp, or earlier if everyone is there. (Waiting is time-wasting, be a time-saver!)
- Go through the ordered points in order, even if nothing has changed. (They are arranged to try and get the most relevant information to most people.)
- Feel welcome to moderate conversation if off-topic or too detailed. (Are listeners interested? Are speakers satisfied? Can you identify a sub-group?)
- Try to finish the meeting before 11:00. (There is always more to talk about and it's important for people to know that CoMes don't take forever.)
- Leave the room once the meeting has ended. (This sends a clear signal to everyone else that they can also leave and get on with their day.)
- Have fun!
-->
Coordination Meeting Monday 25th of September - Facilitator: Laurina - Notary: Laurina - Present: Jnaina, Tilmann, Doug, Wolfi, Matthias, Bodhi, Laurina
1. People coming:
- Max & Mona on Tuesday
- Ollie maybe on sunday
2. People leaving:
- Bodhi on wednesday
- Tilman and Janina on thursday
- Matthias and Laurina and Friday until Monday
- Doug and Wolfi leave for the Könnern party on Friday maybe until Saturday
3. New Volunteers: none
4. New Members: none
5. Changes to Constitution: none
6. Changes to Collective Agreements: none
7. Points of information (e.g. announcements, events, etc)
- next CoMe on tuesday 10am
- please notice the new room plans. Storage is in K22 now
- pull the tap in the bathroom k20-1 while turning to avoid uncontrolled increasing of water
- Waste collection: yellow sack on friday, bring out during cleaning party
- Food pickups: (see https://foodsaving.world/#!/group-info/28)
- "Dear all, My name is Ollie Nathan and I am interested in your housing project. I will be joining you on Sunday or Monday next week. I wish to carry out a little bit of research with you. I hope to carry out 1:1 interviews followed by potentially 1 group interview. *each running for 15/20 minutes). I am interested in learning more about alternative housing and exposing the narratives of individuals involved. My experience thus far is mostly with co-ops. I hope that this work can contribute towards a spring board built up to inspire and strengthen others to start up similar projects like yours. The vision is to accelerate a movement towards equity and sharing. Info shared can be kept anonymous and I will be happy to talk in person about how the information will be shard and used. Feel free to take part, not take part, ask questions etc ;-) Thanks and see you soon, Ollie Nathan."
- Foodsharing introduction meetup
- Matthias spent 2 days cleaning K22, keep that in mind
- Bodhi meeting around 12:30h today
- Digital Infrastructure Improvement Meeting, Tuesday 14:00 in the living room K20 [Laurina]
1. Points for discussion (e.g. questions, proposals, etc):
- Question: how to synchronize confidential information? [Doug] In meetings with special notice not to wrote down, or in sharing rounds,etc.
- Proposal for Collective agreements changes:
- **Power Hour** "We meet every Thursday at 10:00 to roughly prioritize and allocate communal cleaning tasks and then work on those tasks for the next hour. This is an addition to ordinary cleaning, not a replacement!" [Doug, Matthias]
- **Coordination Meeting** "We meet every Monday at 10:00 (sharp) to distribute information, make plans and generally coordinate. The facilitator (appointed last meeting) is encouraged to remind people about the meeting, start it on time, moderate if necessary and ensure it doesn't go on past 11:00." [Doug, Wolfi]
- **Visitors policy**: As in flow chart, bring up meetings during during CoMes. [Laurina, Doug]
- Proposal for constituional changes:
- **Autonomy -> Self-Determination** The reason being to reduce confusion. In Germany 'autonomy' is often connected with groups which are radical, violent and very leftwing. [Doug, Laurina, Janina]
- **NAME -> Kanthaus** When the constitution was written, the group didn't have a name. [Doug, Laurina, Janina, Matthias]
- Processes: collection of Proposals on a pad until Thursday night, use Ukuvota (?) for voting, repeat inform people on #kanthaus
- Proposal: no more item/furniture pickups until we've organized the stuff we a - Proposal: no more item/furniture pickups until - Proposal: no more item/furniture pickups until - Proposal: no more item/furniture pickups untillready have. [Doug] rejected
- We need more shelves and cabinets, preferrably no pressspan
- We will do a carrying and sorting party soon, at the latest tomorrow
- Commited tasks:
- Wolfi improves Ukovota
- Bodhi wants to finish the upstairs cabinet
- Clean and paint upstairs kitchen
1. Next facilitator: Matthias (next CoMe will be on Tuesday at 10am)

View file

@ -1,57 +0,0 @@
---
title: Coordination Meeting
date: 2017-10-03
---
- Date: 2017-10-03
- Facilitator: Matthias
- Notary: Matthias
- Present: Max, Mona, Laurina, Doug, Matthias, Ollie
### 1. People coming
- Silja (2017-10-09) for 2-4 days
- Gérome 2017-10-05 for 1-2 days
- Lara & Almondo 10-05/10-06 for 2 days
### 2. People leaving
- Oli (Thursday/Friday 5/6)
### 3. New Volunteers
- Bodhi
## ### 4. New Members
## ### 5. Changes to Constitution
## ### 6. Changes to Collective Agreements
### 7. Information (e.g. announcements, events, etc)
- Waste collection: (see https://nc.matthias-larisch.de/apps/calendar/#) Restwaste on Wednesday
- Food pickups: (see https://foodsaving.world/#!/group-info/28)
- Today in the afternoon sven/nicole will be coming with waffles (we prepare coffee) -> Laurina will send them a text after the meeting
- Food action/cleaning has been done yesterday. Rotten stuff thrown away (a lot of bread). Still to be washed boxes are in the kitchen. Check potatoes and food in general more often! Keep the fridge door open.
- Sharing circle tonight [doug]
- Laurina joins the HWR meeting tomorrow evening
- K22 roof action tomorrow
- Ollie does interviews, would like to speak to us and share the information that comes up at some point to the group being here.
### 8. Discussion (e.g. questions, proposals, etc)
- Keep hallways more free (Bikes, trailer, stuff into 0-? toilet)
- Proposal to extend times for decision on Constitutional changes / collective agreements currently ongoing to 7 days each from today [doug]. Seems agreed.
- Almondo (restating what was discussed in slack). Max and Ollie are allergic to dog hair, so intense cleaning afterwards is necessary. Will do further coordination with Lara when she is here (sleeping choice, details): We are fine with trying out him being in the first floor, we will remove the carpet/other items that collect hair, we will move the sofa in the ground floor into the airing room. We will not do extra tidying up/dog proofing (cables, office stuff, shelves, bins in first floor)
- Suggestion of creative/welfare room in K22 [mona]: Room discussion can go on with interested people at some point
- proposal to room ventilation [matthias] something like the following will be drafted clearer:
- ventilate eating room/kitchen (pass-through) 0-30 minutes after cooking for 2-5 minutes (gas contains a lot of water, food/cooking releases some as well: 1kg Gas release 1.65 kg of water, cooking uses 100-500g/h)
- ventilate used rooms (2+ people) pass-through for 1-5 minutes at least once a day, at latest when there is condensation on/around the window (people release a lot of water, 30-200g/h depending on activity)
- ventilate used rooms (2+ people) pass-through for 1-5 minutes before going to bed (because room will be unused/temperature lowers after that, so now new water/more likely to be condensation)
- Commited tasks:
- Matthias/Doug/Max: Putting bitumen sheets on K22
- (tasks people have said they want to do this week)
### 9. Next facilitator
- Max

View file

@ -1,66 +0,0 @@
---
title: Coordination Meeting
date: 2017-10-16
---
- Date: 2017-10-16
- Facilitator: Matthias
- Notary: Matthias
- Present: Max, Mona, Doug, Nick, Matthias
### 1. People coming this week
- Silvan (Tuesday?)
- Shandi (?)
- Daniel (Early next week, 23.+)
### 2. People leaving this week
- Matthias (friday, coming back on monday)
## ### 3. New Volunteers
## ### 4. New Members
### 5. Changes to Constitution
- None yet, second round of decision to commence. https://ukuvota.world/#/app/72f88269-8eb6-768b-81e3-cfbc884b0f8b/results
### 6. Changes to Collective Agreements
- CoMe section updated to be less authoritarian, minimal Visitors policy added and some small rewordings. https://ukuvota.world/#/app/d580238b-9eb8-00d2-c935-95170b204c36/results https://gitlab.com/kanthaus/kanthaus.gitlab.io/commit/39dcf8c582b48f3e7a84c9195950ea59134266e9
### 7. Information (e.g. announcements, events, etc)
- Waste collection: possible rest waste on Tuesday. (see https://nc.matthias-larisch.de/apps/calendar/#)
- Will get a 240l organic bin this or next week, that can be emptied every 2 weeks
- Food pickups: Landgut Nemt on Wednesday at 18:00 and Friday at 18:30. (see https://foodsaving.world/#!/group/28)
- Laurina went to the local library last week. A short update from her: Hey guys ;-) I went to the library and found out that it is possible to make a library card for 15€ for one year. This is also possible to make in the name of an association like wandel würzen e.V. then this card can be give to any trusted peron to use it. But I didn't do it in the end because then we would only be allowed to borrow things that we need for our work with the association! Therefor we would not be able to get DVDs or novels or other things for personal enjoyment... I would suggest people who would want to get things from our library to get a private card on their name and then be able to get media for others as well. Greets and cheers, Laurina
- Energy update: Despite lots of sun hours and nearly no use, our batteries did not fully recharge yesterday -> not more than 150-300 Wh per day
- Internet: 120 Wh per day
- Kitchen light: 15 Wh per hour
- Office light: 6 Wh per hour
- Recharge rechargeable batteries: 2 Wh/piece
- Charging things through Inverter: 4 Wh per hour + 1.2 * [Energy of that thing] -> Mac Charging, 2 hours: ~95 Wh
- Charging thinkpad, 6 cell: ~70 Wh
- Bicycle charging, 20 Minutes: ~15-25 Wh
- Boiling one liter of water: 100 Wh (we do that with gas...)
### 8. Discussion (e.g. questions, proposals, etc)
- Cleaning Hour? -> Thursday, 10 am
- Proposal to add positions flow diagram (current) to website [Laurina, Doug]
- Lise has questions concerning the foodsharing festival meeting (27-31.10.):
- sleeping (is the 3rd floor open for guests or is it better to use K22 with air matresses? Can participants sleep where they want -> using K22 as well as sleeping rooms in 3rd floor?)
- eating & cooking (I would really like to cook and eat with all people staying in kanthaus during our meeting, if its possible (at least dinner). would you as visitors & members of kanthaus be fine with this idea or do you want any seperations?)
- proposal: sheet for groups with their information to let the kanthaus know, what people are coming & what they're expecting / planning during their stay. I will also design a sheet which i can send to the participants telling them, what they can expect in kanthaus (e.g. cold water, saved food) and asking them for their wishes (e.g. sleeping alone / in one room, dietary requierements, what food they are maybe bringing, willing to cook)
- Proposal to have 1-2 common house building blocks per week, where all people in the house are asked to participate in building activities. [matthias] Decision for one building block, Tuesday, 2pm and from there see how it goes.
- Proposal to have regular outreading of issues. Or another way of making people aware of what is being able to be done? [matthias] Let's try the building block first.
- Something about having some more (or regular) circle things for sharing feelings/emotions/states, etc. sharing circle, whatever... [nick] -> schedule in coordination meeting. This week: Thursday, 7pm
- Piano! ... just want to motivate myself (and others to progress) [nick]
- warm shower introduction [matthias]: Matthias is happy to introduce people into how the warm shower system works.
- Doug wants the 3rd food/veganism discussion to happen. Suggestion: Wednesday at 10am
- Commited tasks: Tuesday, 2pm: repair block (focus: roof)
### 9. Next facilitator
Nick

View file

@ -1,111 +0,0 @@
---
title: Coordination Meeting
date: 2017-10-23
---
<!-- Hello facilitator/notary! Thank you for your services. Here is some advice for facilitating coordination meetings:
- Notify people 10 minutes before the meeting starts. (Watching the clock is not super fun, people will be grateful if you do it for them.)
- Start at 10:00 sharp, or earlier if everyone is there. (Waiting is time-wasting, be a time-saver!)
- Go through the ordered points in order, even if nothing has changed. (They are arranged to try and get the most relevant information to most people.)
- Feel welcome to moderate conversation if off-topic or too detailed. (Are listeners interested? Are speakers satisfied? Can you identify a sub-group?)
- Try to finish the meeting before 11:00. (There is always more to talk about and it's important for people to know that CoMes don't take forever.)
- Leave the room once the meeting has ended. (This sends a clear signal to everyone else that they can also leave and get on with their day.)
- Have fun!
-->
- Date: 2017-10-23
- Facilitator: Nick
- Notary: Nick
- Present: Nick, Cille, Doug, Chandi, Mona, Max
### 1. People coming this week
- Matthias (23rd)
- Silvan (23rd)
- Janina (~24th or maybe 25th)
- Daniel (~ 25th)
- Max (returns on 29th)
- Foodsharing group arrives on Friday
### 2. People leaving this week
- Max (26th - 29th)
### 3. New Volunteers
- none (Cille and Nick can apply, Nick might)
### 4. New Members
- none
### 5. Changes to Constitution
- none (second round of ongoing decision to go ahead → please make sure Doug/someone does this this week!)
### 6. Changes to Collective Agreements
- none
### 7. Decisions on dates for this week
- Power Hour (default: Thursday, 10am)
- Meeting about group thing (Tuesday 3pm)
- Building block (Tuesday 10am)
- Piano pickup hopefully (Tuesday 6.30pm-7.30 is pickup slot)
- Foodsharing meeting (26th 7pm) - https://www.facebook.com/events/1499258303485105/
- Sharing circle (Wednesday 7pm)
- Wednesday (main day) /Thursday/Friday building/activities days at Villa Klug (sp?)
- Foodsharing group arrives on Friday
- Nicole and Sven maybe some trees/garden/stuff on Friday, ask Doug
- weekly talk either about Harassment or Data Privacy (will decide during talk) (after lunch, 2pm-ish)
### 7. Information (e.g. announcements, events, etc)
- Waste collection: Gelber sack on Friday
- Decision on which online communication tool to use resulted in the continuation of the yunity Slack group https://ukuvota.world/#/app/f6b84e48-d0ad-5384-f301-fbc8d8f70b34/results It's worth mentioning that there was no result which no one opposed (i.e. each option was opposed by at least somebody): it would be worth reevaluating this topic in the future. [Doug]
- Building week at Villa Klug: something for anyone/everyone, Wednesday is the focal day. [Doug]
- Svenicole have a new garden! They get it on the weekend and would be happy for a small work party. [Doug]
- Sven gets a kitchen this week... the idea of having a pizza party has already been seeded. [Doug]
- Daniel is a good person to talk to about mechanical/engineering things... http://solarflower.org/ [Doug]
- Group hosting meeting on tuesday at 3pm (with Janina and Laurina on skype)
### 8. Discussion (e.g. questions, proposals, etc)
- https://gitlab.com/kanthaus/kanthaus-public/blob/master/kitchenUsage.md \[Mona\] (related to the talks on veganism/speciesism https://gitlab.com/kanthaus/kanthaus-public/blob/master/2017-10_veganismSpeciesism.md [Doug])
- searching feedback and proposals on the document within the next week (so by 30th) ((via whichever mechanism you like)
- announce in slack
- Proposal: add basic entity relationship diagram to website https://yunity.slack.com/messages/C3RS56Z38/files/F7MGJ186N/ [Doug]
- all good!
- Discussion: data privacy. If we have the website as a central, public point, expect people to read it. We need a high level of detail for info to be useful, do we want any person to have this?
- wasn't sure about what information is possible to put public... desire for a more rationalized approach (imagine all the key members of society visiting/seeing the content online)
- Discussion: house manual. We now have docs on kitchen use, waste, food rationalization and general recommendations... [Doug]
- [Nick] maybe add a gitbook "Kanthaus Handbook" (doug will proceed) -reorganising kitchen [Mona], cloth storage [?]
- hard for larger numbers of people (maybe add eating facilities in kitchen, maybe more specific cutting space, looking for carrying help)
- maybe this week is too busy? (but will try and do it early this week, if not next week)
- upstairs storage room
- private storage? more people?
- maybe triggers discussion about private storage
- try and move some of the new storage in k22 into the room
- some disagreement about having things in the corridor
- maybe is leak water / mould inside the little room in bathroom (something B) -courtyard/garden proposal [Mona]
- would need a few months of prep work, to be ready for growing in the spring
- future more specific work to be co-ordinated in the future
- carboard thing in kitchen about vegan stuff [Nick]
- tricky topic, not time now, nick feels uncomfortable
- move to post meeting discussion
- Opinions on sharing circles [Doug]
- can be very different, is still possible to include larger groups of people (or visiting people)
- you never have to be more open than you want
- concerns that it can go on for a very long time (people break up when >8 people sometimes)
- is it exlusionary to have it with just "us" (who is us), can be for self organisation, so it's ok
- chandi would enjoy more having less breakdown between kanthaus people and guests
- Cille agrees to ideas but it might not happen like that in reality
- some interest from doug/cille/chandi to explore the topic more perhaps?
- extension cord from Sven [Chandi]
- matthias does not want to overuse his hospitality (maybe we will really need it one day)
- library option is another one, NDK is another option
- chandi would appreciate more access to electricity
### 9. Next facilitator
Mona

View file

@ -1,65 +0,0 @@
---
title: Coordination Meeting
date: 2017-10-30
---
<!-- Hello facilitator/notary! Thank you for your services. Here is some advice for facilitating coordination meetings:
- Notify people 10 minutes before the meeting starts. (Watching the clock is not super fun, people will be grateful if you do it for them.)
- Start at 10:00 sharp, or earlier if everyone is there. (Waiting is time-wasting, be a time-saver!)
- Go through the ordered points in order, even if nothing has changed. (They are arranged to try and get the most relevant information to most people.)
- Feel welcome to moderate conversation if off-topic or too detailed. (Are listeners interested? Are speakers satisfied? Can you identify a sub-group?)
- Try to finish the meeting before 11:00. (There is always more to talk about and it's important for people to know that CoMes don't take forever.)
- Leave the room once the meeting has ended. (This sends a clear signal to everyone else that they can also leave and get on with their day.)
- Have fun!
-->
- Date: 2017/10/30
- Facilitator: Mona
- Notary:
- Present: Matthias, Nick, Max, Cille, Silvan, Doug, Daniel, Flo, Bernd, Tina, Berit, Wolfi, Anja
### 1. People coming
- Friend of Max & Mona Wendesday or Thursday
- 2 Friends of Cille Wednesday or Thursday
### 2. People leaving
- Festival meeting group, Nick
### 3. New Volunteers
- Nick & Cille
### 4. New Members
- None
### 5. Changes to Constitution
- None
### 6. Changes to Collective Agreements
- None
### 7. Information (e.g. announcements, events, etc)
- Waste collection: (see https://nc.matthias-larisch.de/apps/calendar/ )
- Food pickups: (see https://foodsaving.world/#!/group-info/28 <\--- copy and paste into browser as it incorrectly things it's an XSS thing)
### 8. Discussion (e.g. questions, proposals, etc)
- Thursday, on 5 pm projects presentation by Daniel (needs beamer)
- Electricians will come next weekend. There is a lot of preparation work. More tools will arrive Wednesday. The preparation needs two to three days of work. Matthias needs help (one or two persons). People should go see Matthias if interested in helping. One building block is scheduled for Tuesday, 2pm.
- Neighbors invited us to use their garden Garden is located in 20 minutes walking distance. There are possibilities to collaborate in the garden.
- Room ventilation / open windows / doors (see https://kanthaus.online/en/docs/meetings/2017-10-03_come/) Close doors in staircase. Try to pass-through ventilate rooms when necessary (cooking, when you see condensation).
- Cille proposes authentic relation games instead of sharing circle. She hosts the games on Wednesday at 8 pm. For your information: the level of sharing can be more intense than sharing circle
- Wednesday talk at 10 am: Harassment policy. Brainstorming.
- Power hour on Monday 2 pm; feel free to join the cleaning party
- Acro Yoga Monday 4 pm ish
Commited tasks:(tasks people have said they want to do this week) - Building block on Tuesday 2 pm
### 9. Next facilitator
- Cille

View file

@ -1,30 +0,0 @@
---
title: Retrospektive für Foodsharing Festival Treffen Kanthaus
date: 2017-10-30
---
Teilnehmende: Doug, Nick, Cille, Mona, Max, Flo, Birta, Berndt, Tina, Matthias, Silvan, x, y. Moderator: Doug
*Das Foodsharing Festival Treffen war die erste geplante Veranstaltung im Kanthaus für eine externe Gruppe. Erste Rückmeldungen galten daher als besonders relevant.*
1. Intro: a brief description of retrospective purpose and theory, a wish for constructive/non-judgemental setting and a reading of 'the Prime Directive'.
2. Planetary orbit game: everyone was first asked to silently select another person, then to circle that person 3 times. Chaos! Fun! Wahh!
3. Triangular graph: three corners of the room were marked as 'Kanthaus', 'Foodsharing Festivals Meeting' and 'Personal/Other.' People were asked to orient themselves in the room according to how much time they felt they spent on those topics.
4. Splitting into small groups: 3 smaller groups were formed by numbering in a spiral from the outside.
5. Individual reflection: everyone was asked to reflect on the questions "What was liked?', 'What wasn't liked?', and 'What would have been liked?' and recorde their answers on paper.
6. Small group reflection: Individuals were invited to discuss similarities and differences between their individual reflections.
7. Reflection summary: everyone re-grouped and then a spokesperson for each group summarised the outstanding points which were
- What was liked?
- The party. The decoration, music and energy.
- Having AC power the whole time.
- A friendly and energetic atmosphere.
- Amazing food and people who make food.
- What wasn't liked?
- The back-door to 22 being so often closed and with so few keys.
- Confusion of sleeping rooms and where people are meant to sleep.
- Difficult to find peace/focus/do external work.
- Too much noise in/around sleeping rooms whilst people trying to sleep.
- What would have been liked?
- More personal talks.
- Group walk outside.
- A bit more structure.
8. Round of appreciation: individuals that wanted to gave appreciation to individuals, events, phenomena, etc.

View file

@ -1,82 +0,0 @@
* * *
title: Coordination Meeting date: 2017-11-06
* * *
- Date: 2017-11-06
- Facilitator: Cille
- Notary: Cille
- Present: Matthias, Vince, Tilmann, Janina, Mona, Maxime, Loumi, friend of Mona and Loumi, Doug, Cille
### 1. People coming
- chandi comes back today evening (6.11) and a good frind, findus, would visit him (and these lovely people he always talks about) from 7.11-10.11
- David & Manuel from foodsharing visit us ~Tuesday for 1-2 days
### 2. People leaving
- Matthias Thursday or Friday until Monday (going to berlin)
- Doug leaving thursday or Friday, coming back next week
- Vince leaving on Thursday
- Cille probably leaving at the end of the week
- Max probably leaving at the end of the week
### 3. New Volunteers
- none
### 4. New Members
- none
### 5. Changes to Constitution
- none yet (result in 9 hours)
### 6. Changes to Collective Agreements
-
### 7. Information (e.g. announcements, events, etc)
- Waste collection: (see https://abfallkalender.kell-gmbh.de/abfallkalender3.php?jahr=2017&str_id=245) Friday: yellow sacks
- Food pickups: suggestion of doing the wednesday pickup (Janina/Mona)
- Power hour: Wednesday, 10:00
- Sharing event( e.g. sharing circle, authentic relation games etc): guided sharing circle at 19:00 (Cille)
### 8. Discussion (e.g. questions, proposals, etc)
- Are there any urgent tasks for this week?
- Matthias continues to work on preparing the house for getting power supply and would like help
- Are there any tasks people want to commit to this week?
- Shifting wood from garden to shet (Doug, Cille, Janina, Tillmann, Loumi)
- Proposal: If there are one or more newcomers to a CoMe, the facilitator should give a brief (<2 minutes) introduction to the meeting and then invite newcomer(s) to introduce themselves (e.g. name, what they want to do, etc.) [Doug]
- Proposal: If there are observers to the CoMe (e.g. some people from a seminar group) then the active participants form an inner circle. [Doug]
- No resistance
- Opinion: It's pretty unlikely to successfully host more than 2 house meetings in a day. People generally underestimate the time it takes for people to communicate, notify, eat, sleep, shit, rest, play, etc. [Doug]
- Vince points out to keep in mind who is deciding who is an observer, the person themselves or a volunteer/member.
- Mona mentions that she found it desturbing that someone else was editing the pad while she was facilitating last week. Different oppinions about how to handle the notary task, some like the fact that it is possible to co-edit others would like to finish editing before someone else starts editing. A good idea is to communicate your preferences or ask the notary before co-editing.
- Talk about shared ass towel (Loumi)
- Proposal to wash towels and underwear by high temperature - meeting about the topic next week
- towel naming /usage policy [Matthias]
- Matthias will make a manual
- Proposal to do daily, optional check ins, default 10am, should not be more than 5-10 minutes \[Matthias\] (goal would be to get support from others when they know what's going on)
- No resistance from the group, so we will try it out from today at 11.00
- How can we make the room ventilation work better? (almost every morning kitchen /living room is very wet - >has not been ventilated when people left) [Matthias]
- Starting a practice of opening windows for 2 mins after sleeping, while cooking and before going to bed - everybody are welcomed to do this
- Properly closing windows, would a sign per window help? [Matthias]
- Janina express that she loves communicating furnitures, so she would be happy for signs. No resistance from the group
- Smelling sink (Mona)
- Unfortunately we can not do much about it because there are some parts missing/needed to solve the problem (Matthias)
- Proposal to make a container for animal product packaching (Mona)
- Solution: bucket with close fitting lid
- Proposal of getting library membership in the name of the association (Mona)
- Doug and Matthias pointing out the restrictions of the library. Support of researching if it is possible to get a membership and if it is worth it (Mona)
- Janina mentioning an email from Chris which have not been answered yet
- Proposal of having a talk about privacy/harassment (Doug)
- Proposal of tech knowlegde sharing (Max)
### 9. Next facilitator ?

View file

@ -1,75 +0,0 @@
---
title: Coordination Meeting
date: 2017-11-14
---
- Date: 2017-11-14
- Facilitator: Janina
- Notary: Janina
- Present:
### 1. People coming
- Frank (maybe after Tue, maybe next week. will call again)
- Chris (maybe after Thu, will call again)
- Anja (Thu to Sun)
- Manuel (maybe)
### 2. People leaving
- Janina, Doug (on Sun for a week in Dargelütz)
### 3. New Volunteers
- VolSess for Tilmann and Daniel today at 2pm, Chandi should get one as soon as he comes back
### 4. New Members
- None
### 5. Changes to Constitution
- Prop passed (Change 'autonomy' to 'self-determination, change 'NAME' to 'Kanthaus' and rephrase/fix typos.)
## ### 6. Changes to Collective Agreements
### 7. Information (e.g. announcements, events, etc)
- Waste collection: (see https://abfallkalender.kell-gmbh.de/abfallkalender3.php?jahr=2017&str_id=245): Nothing. Next monday, our residual waste bin (black) will be exchanged for a bigger one
- Food pickups: (see https://karrot.world <\--- copy and paste into browser as it incorrectly thinks it's an XSS thing) Wednesday: Landgut Nemt
- Power hour: Thursday, 10:00
- Sharing event: Thursday 7pm (talking/sharing round)
- Volunteers and members are encouraged to fill in some little answers about themselves in the private repo on gitlab. It's mainly about getting to know each others visions and ideas and for new visitors to learn about us. Laurina would be interested in talks and ideas about it and to print out some for in the house. https://gitlab.com/kanthaus/kanthaus-private/tree/master/kanthauserProfiles
- Reorganization of food storage: long-lasting food in K22-1-1, not in basement anymore. Unused kitchen appliances and tool should be put there as well.
- Gas bottle in the kitchen was empty on Nov 11, lasted for two weeks, was replaced with the one from the oven downstairs.
- Current state of the water counters: Total water usage until now: 46.899 L (235€). Last two weeks: 9.091 L (45€), (K20-0: 796 L, K20-1: 5.493 L, K20-2: 1.993 L).
- Current state of gas counter: 10.774m³ (~100kWh ~~5,10€ + base price)
- Mold situation: Mold was removed and treated with hydrogen peroxide this morning by Tilmann & Matthias. We have to get rid of more water sources, ventilate better (e.g. keep windows open while cooking, ventilate as soon as we see condensation somewhere). Towels have been moved into airing room. AP: Doug to try and get microscope. AP: Everyone watches walls for mold to reappear and then make sure it gets treated with hydrogen peroxide again. Don't have furniture touching the walls in K-20-1. Ensure ventilation!!! AP: Mold action today! Doug + AP: Proactively acting when there is wet spots appearing on windows/walls
- https://www.umweltbundesamt.de/sites/default/files/medien/378/publikationen/ratgeber_schimmel_im_haus_0.pdf (Mona)
- What do we do about the mold (get it inspected)? -> Will do ourselves with a microscope when we have it (Doug, Loumi)
- Organisation around Kaufland cooperation (clean, sort, distribute the food)
- Sven and Nicole's offer to use their warm water/electricity
- Sven's interest in going dumpster diving with us
- Sven's interest in sharing his marketing knowledge
- Jörg Wunderlich wants to know when major things happen (like getting electricity)
### 8. Discussion (e.g. questions, proposals, etc)
- Are there any urgent tasks for this week? -> Mold action, social impact hub stuff, Dargelütz prep for Doug and Janina
- Are there any tasks people want to commit to this week? -> Doug wants to build compression shelves in the random stuff storage, Janina wants to make contact with Kaufland and help with SIL, Matthias writes SIL application and looks into heating system temp regulation
- Buildings blocks vs. 10am stand-up meetings -> How to motivate people to do more work on the house?
- Daniel offers to build an oven construction which puts a chimney outside. Mona is interested in doing support work.
- Roadmap meeting for gitlab issues. Matthias, Doug, Janina are very interested. Doug wants to make a general planning session on community organization as well. Will happen after Dargelütz.
- Money meeting about what costs what and how to pay -> Wed at 7pm
- Create action group for external events (e.g. foodsharing awareness, free parade, skill sharing, etc.) -> Maybe after/during next foodsharing meeting, to use fs as a driver.
- Using the car to go dumpsterdiving -> Matthias: "shouldn't be the default" Matthias, Janina going to Brandis by bike tonight, ask Sven if he has time tonight and then maybe go with him and his car as well/instead
- Should we make some more copies of keys (especially k22). Do people not currently here hold keys? (Is keyholder.md doc up to date?) AP: Loumi takes care of making more keys
- What do we do with the harassment policy? Doug and Loumi will continue working on it, maybe Wed morning
- Is kitchen usage "policy" ready to be implemented (printed and displayed in the kitchen)
- Talk about the social impact lab
- Are Kanthaus values = || ≠ yunity ? -> asynchronous meeting with written down throughts?
### 9. Next facilitator
Loumi
(Regarding mass heater: Minimum flue requirements, what's the worst that could happen?) Doug: read through kitchen policy, meet w mx re harassment, mold action w mx,

View file

@ -1,60 +0,0 @@
---
title: Coordination Meeting
date: 2017-11-20
---
- Date: 2017-11-20
- Facilitator: Lou
- Notary: Lou
- Present: Mona, Rosina, Björn, Lou
### 1. People coming
- Frank
- Luisa
- Friend of Luisa
### 2. People leaving
- Luisa
- Friend of Luisa
### 3. New Volunteers
- Tilmann
### 4. New Members
- None
### 5. Changes to Constitution
- None
### 6. Changes to Collective Agreements
- None
### 7. Information (e.g. announcements, events, etc)
- Waste collection: (see https://abfallkalender.kell-gmbh.de/abfallkalender3.php?jahr=2017&str_id=245): Nothing. Today, our residual waste bin (black) was exchanged for a bigger one
- Food pickups: (see https://karrot.world <\--- copy and paste into browser as it incorrectly thinks it's an XSS thing) Wednesday: Landgut Nemt
- Power hour: Thursday, 10:00
- Sharing event ( e.g. circle, authentic relation games etc): Wednesday 19:00
- Current state of the water counters: 49.165 L
- Current state of gas counter: 13.155 m³
- Mold situation: New "white-ish soft" mold around window in the living/ dining room, need a new hydrogen peroxyde treatment (to be done at least twice a week)
- Social Impact Lab meeting on Tuesday at 10:00
- Need to switch off the router at night since we are running low on energy at the end of non sunny days
### 8. Discussion (e.g. questions, proposals, etc)
- Are there any urgent tasks for this week?
- Hydrogen peroxyde mold treatment around the windows
- Are there any tasks people want to commit to this week?
- Sorting the random storage room all together on Tuesday 14:00
- Mona and Björn will do the Landgut Nemt pickup on Wednesday
- Is the car ready for winter? (Frostschutz?)
### 9. Next facilitator
- Mona

View file

@ -1,33 +0,0 @@
---
title: Coordination Meeting Template
date: 2017-01-01
---
<!-- Hello facilitator/notary! Thank you for your services. Here is some advice for facilitating coordination meetings:
- Notify people 10 minutes before the meeting starts. (Watching the clock is not super fun, people will be grateful if you do it for them.)
- Start at 10:00 sharp, or earlier if everyone is there. (Waiting is time-wasting, be a time-saver!)
- Go through the ordered points in order, even if nothing has changed. (They are arranged to try and get the most relevant information to most people.)
- Feel welcome to moderate conversation if off-topic or too detailed. (Are listeners interested? Are speakers satisfied? Can you identify a sub-group?)
- Try to finish the meeting before 11:00. (There is always more to talk about and it's important for people to know that CoMes don't take forever.)
- Leave the room once the meeting has ended. (This sends a clear signal to everyone else that they can also leave and get on with their day.)
- Have fun!
-->
- Facilitator:
- Notary:
- Present:
1. People coming:
-
2. People leaving:
-
3. New Volunteers:
4. New Members:
5. Changes to Constitution:
6. Changes to Collective Agreements:
7. Points of information (e.g. announcements, events, etc)
- Waste collection: (see https://nc.matthias-larisch.de/apps/calendar/#)
- Food pickups: (see https://karrot.world/#!/group-info/28)
8. Points for discussion (e.g. questions, proposals, etc):
- Commited tasks:
- (tasks people have said they want to do this week)
9. Next facilitator:

View file

@ -1,48 +0,0 @@
---
title: Coordination Meeting Template
date: 2017-01-01
---
<!-- Hello facilitator/notary! Thank you for your services. Here is some advice for facilitating coordination meetings:
- Notify people 10 minutes before the meeting starts. (Watching the clock is not super fun, people will be grateful if you do it for them.)
- Start at 10:00 sharp, or earlier if everyone is there. (Waiting is time-wasting, be a time-saver!)
- Go through the ordered points in order, even if nothing has changed. (They are arranged to try and get the most relevant information to most people.)
- Feel welcome to moderate conversation if off-topic or too detailed. (Are listeners interested? Are speakers satisfied? Can you identify a sub-group?)
- Try to finish the meeting before 11:00. (There is always more to talk about and it's important for people to know that CoMes don't take forever.)
- Leave the room once the meeting has ended. (This sends a clear signal to everyone else that they can also leave and get on with their day.)
- Have fun!
-->
- Date:
- Facilitator:
- Notary:
- Present:
### 1. People coming
-
### 2. People leaving
-
### 3. New Volunteers
-
### 4. New Members
-
### 5. Changes to Constitution
-
### 6. Changes to Collective Agreements
-
### 7. Information (e.g. announcements, events, etc)
- Waste collection: (see https://nc.matthias-larisch.de/apps/calendar/#)
- Food pickups: (see https://karrot.world/#!/group-info/28)
### 8. Discussion (e.g. questions, proposals, etc)
- Commited tasks:
- (tasks people have said they want to do this week)
### 9. Next facilitator
-

View file

@ -1,3 +0,0 @@
---
title: Meetings
---

View file

@ -1,4 +0,0 @@
---
title: "Meetings"
---
</br>

View file

@ -1,6 +0,0 @@
---
title: Mitglieder
description:
layout: members
---
<br />

View file

@ -1,6 +0,0 @@
---
title: Members
description:
layout: members
---
<br />

View file

@ -1 +0,0 @@
satzung_hauskantewurzen.md

View file

@ -1 +0,0 @@
satzung_wandelwuerzen.md

View file

@ -1,6 +0,0 @@
---
title: Volunteers
description:
layout: volunteers
---
<br />

View file

@ -1,6 +0,0 @@
---
title: Volunteers
description:
layout: volunteers
---
<br />

View file

@ -1 +0,0 @@
2017-12-12_einladung_mv_hauskantewurzen.md

View file

@ -1 +0,0 @@
2017-12-12_einladung_mv_wandel_wuerzen.md

View file

@ -1,26 +0,0 @@
---
title: WurzenerWinterTage im Kanthaus
description: ""
weight: 3
draft: false
---
Folgende Einladung erging am 11.12. zu Freund*Innen der Kanthausbewohner*Innen.
Auch wenn es sich nicht um eine öffentliche Veranstaltung handelt, kannst du, solltest du dich von dieser Einladung angezogen fühlen, dich gern mit uns in Verbindung setzen.
Liebe Menschen!
Vielleicht habt ihr schon davon gehört, oder auch nicht.
Hier nun auf jeden Fall ganz offiziell: In den Tagen um den Jahreswechsel wollen wir eine schöne Zeit mit euch im Kanthaus in Wurzen verbringen! Deshalb laden wir euch herzlich zu den WurzenerWinterTagen ein
Die bisherige Planung sieht so aus: Anreise am 27.12.2017, „Programm“ dann von 28.12.2017 bis 3.01.2018.
Grundsätzlich stellen wir kein durchstrukturiertes Programm bereit, sondern freuen uns, wenn ihr eure eigenen Vorstellungen und Fähigkeiten mit einbringt. Am ersten Tag möchten wir mit allen Ideen sammeln und eine Grobstruktur festlegen. Es soll aber auch genug Raum für spontane Sachen geben….Spielen, Plätzchen backen, Essen retten, konsumkritische Weihnachtslieder singen…
An Silvester planen die Kanthausenden eine große Silvestersause, zu der ihr ebenfalls herzlich eingeladen seid. Es gibt aber auch genügend Rückzugsmöglichkeiten, wenn ihr nicht so Lust auf Saufen, Laut und so habt (z.B. Schlafen und Kuscheln mit Bodhi).
Über die Weihnachtsfeiertage werden auch schon einige wenige Leute im Kanthaus sein und ihr seid natürlich herzlich eingeladen dazuzustoßen. Wenn ihr nicht den gesamten Zeitraum dabei sein könnt oder möchtet, wäre es gut, wenn ihr uns im Voraus Bescheid gebt, wann ihr da seid und an welchen Workshops ihr gern teilnehmen möchtet. Eine Liste mit Möglichkeiten, Ideen und Sachen, die mensch machen kann, findet ihr unter: https://pad.disroot.org/p/WuWiTa Dort könnt ihr eure eigenen Angebote eintragen und Wünsche für Workshops aufschreiben. Geplant sind zum Beispiel: Zyklus der Frau , Lockpicking, Kerzen machen, Kimchi machen, Socken stopfen, meditative Spaziergänge und und und.
Infos zum Kanthaus findet ihr https://kanthaus.online/en/. Bitte lest euch das visitors-document (https://kanthaus.online/en/docs/visiting/) durch, bevor ihr kommt. Ausreichend Schlafplätze sind vorhanden, wer kann darf vorsorglich noch einen Schlafsack mitbringen. Lebensmittel werden gemeinschaftlich gerettet bzw. containert. Wenn ihr etwas rumliegen habt oder noch eine Abholung vorher machen könnt, bring gerne noch zusätzliches Essen mit. Kosten tut das WuWiTa nichts; wenn ihr Geld übrig habt, sind kleine Spenden aber ok
Liebe Grüße</br>
Bodhi und Lise, stellvertretend für das gesamte Orga-Team und eigentlich alle Menschen

View file

@ -1,6 +0,0 @@
---
menu:
main:
name: Veranstaltungen
weight: 2
---

View file

@ -1,8 +0,0 @@
---
menu:
main:
name: "Events"
weight: 2
---
</br>
This is empty.

View file

@ -1,3 +0,0 @@
2017-12-06,0
2017-12-11,37
2017-12-18,57
1 2017-12-06 0
2 2017-12-11 37
3 2017-12-18 57

View file

@ -1,7 +0,0 @@
2017-10-20,0
2017-11-14,10.774
2017-11-28,13.155
2017-11-29 21:30,29
2017-12-04 09:15,69
2017-12-11 11:30,175
2017-12-18 09:15, 251
1 2017-10-20 0
2 2017-11-14 10.774
3 2017-11-28 13.155
4 2017-11-29 21:30 29
5 2017-12-04 09:15 69
6 2017-12-11 11:30 175
7 2017-12-18 09:15 251

View file

@ -1,15 +0,0 @@
# The following individuals hold the position of Member as defined in the Constitution: https://github.com/kanthaus/kanthaus/blob/master/constitution.md#6-member
members:
- name: Laurina M
joined: 2017-08-05
founder: true
- name: Matthias Larisch
joined: 2017-08-05
founder: true
- name: Janina Abels
joined: 2017-08-05
founder: true
- name: Doug Webb
joined: 2017-08-05
founder: true

View file

@ -1,30 +0,0 @@
# The following individuals hold the position of Volunteer as defined in the Constitution: https://github.com/kanthaus/kanthaus/blob/master/constitution.md#5-volunteer
volunteers:
- name: Wolfi
joined: 2017-09-07
participants: Doug, Matthias, Laurina, Janina
- name: Bodhi
joined: 2017-09-25
participants: Doug, Matthias, Laurina, Janina, Wolfi
- name: Mona
joined: 2017-10-04
participants: Doug, Matthias, Laurina
- name: Lou
joined: 2017-10-07
participants: Doug, Matthias, Laurina, Mona
- name: Nick
joined: 2017-10-26
participants: Doug, Matthias, Mona, Wolfi, Bodhi, Janina
- name: Cille
joined: 2017-10-26
participants: Doug, Matthias, Mona, Wolfi, Bodhi, Janina
- name: Tilmann
joined: 2017-11-14
participants: Doug, Matthias, Lou, Janina
- name: Björn
joined: 2017-12-11
participants: Janina, Matthias, Bodhi, Wolfi, Lou, Mona
- name: Lise
joined: 2017-12-11
participants: Janina, Matthias, Bodhi, Wolfi, Lou, Mona

View file

@ -1,12 +0,0 @@
#date,maincounter,022414755(K20-0),022414601(K20-1),24120008(K20-2)
20170908,,,53.406,102.187
20170912,15.8511,44.560,,
20170712,0,,,
20171007,24.3842,45.408,59.771,100.327
20171030,37.8082,46.348,68.475,97.737
20171114,46.8985,47.144,73.968,95.744
20171120,49.165,,,
20171128,53.076,48.082,77.887,94.872
20171204,57.255,49.002,79.665,93.770
20171211,63.614,50.56,82.17,92.29
20171218,66.433,51.11,83.19,91.42
1 #date maincounter 022414755(K20-0) 022414601(K20-1) 24120008(K20-2)
2 20170908 53.406 102.187
3 20170912 15.8511 44.560
4 20170712 0
5 20171007 24.3842 45.408 59.771 100.327
6 20171030 37.8082 46.348 68.475 97.737
7 20171114 46.8985 47.144 73.968 95.744
8 20171120 49.165
9 20171128 53.076 48.082 77.887 94.872
10 20171204 57.255 49.002 79.665 93.770
11 20171211 63.614 50.56 82.17 92.29
12 20171218 66.433 51.11 83.19 91.42

0
images/.gitkeep Normal file
View file

56
index.php Normal file
View file

@ -0,0 +1,56 @@
<?php
/**
* @package Grav.Core
*
* @copyright Copyright (C) 2014 - 2017 RocketTheme, LLC. All rights reserved.
* @license MIT License; see LICENSE file for details.
*/
namespace Grav;
define('GRAV_PHP_MIN', '5.5.9');
// Ensure vendor libraries exist
$autoload = __DIR__ . '/vendor/autoload.php';
if (!is_file($autoload)) {
die("Please run: <i>bin/grav install</i>");
}
if (PHP_SAPI == 'cli-server') {
if (!isset($_SERVER['PHP_CLI_ROUTER'])) {
die("PHP webserver requires a router to run Grav, please use: <pre>php -S {$_SERVER["SERVER_NAME"]}:{$_SERVER["SERVER_PORT"]} system/router.php</pre>");
}
}
use Grav\Common\Grav;
use RocketTheme\Toolbox\Event\Event;
if (version_compare($ver = PHP_VERSION, $req = GRAV_PHP_MIN, '<')) {
die(sprintf('You are running PHP %s, but Grav needs at least <strong>PHP %s</strong> to run.', $ver, $req));
}
// Register the auto-loader.
$loader = require_once $autoload;
// Set timezone to default, falls back to system if php.ini not set
date_default_timezone_set(@date_default_timezone_get());
// Set internal encoding if mbstring loaded
if (!extension_loaded('mbstring')) {
die("'mbstring' extension is not loaded. This is required for Grav to run correctly");
}
mb_internal_encoding('UTF-8');
// Get the Grav instance
$grav = Grav::instance(
array(
'loader' => $loader
)
);
// Process the page
try {
$grav->process();
} catch (\Exception $e) {
$grav->fireEvent('onFatalException', new Event(array('exception' => $e)));
throw $e;
}

View file

@ -1,20 +0,0 @@
{{ partial "header" . }}
<main>
<h2>{{ .Title }}</h2>
<br>
{{ range .Sections }}
<div class="item">
<h4><a href="{{ .URL }}">{{ .Title }}</a></h4>
</div>
{{ end }}
{{ range (.Paginator 10).Pages }} {{ partial "list-item" . }} {{ end }}
</main>
{{ partial "paginator" . }}
{{ partial "footer" . }}

View file

@ -1,19 +0,0 @@
{{ partial "header" . }}
<main>
<h2>{{ .Title }}</h2>
<br>
<ul class="list-without-bullets">
{{ range .Site.Data.members.members }}
<li>
<strong>{{ .name }}</strong>
joined {{ .joined }}
{{ if .founder }}
(founder)
{{ end }}
</li>
{{ end }}
</ul>
</main>
{{ partial "footer" . }}

View file

@ -1,26 +0,0 @@
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>{{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}{{ end }}</title>
<link>{{ .Permalink }}</link>
<description>Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }}</description>
<generator>Hugo -- gohugo.io</generator>{{ with .Site.LanguageCode }}
<language>{{.}}</language>{{end}}{{ with .Site.Author.email }}
<managingEditor>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</managingEditor>{{end}}{{ with .Site.Author.email }}
<webMaster>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</webMaster>{{end}}{{ with .Site.Copyright }}
<copyright>{{.}}</copyright>{{end}}{{ if not .Date.IsZero }}
<lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }}
{{ with .OutputFormats.Get "RSS" }}
{{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
{{ end }}
{{ range .Data.Pages }}
<item>
<title>{{ .Title }}</title>
<link>{{ .Permalink }}</link>
<pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
{{ with .Site.Author.email }}<author>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</author>{{end}}
<guid>{{ .Permalink }}</guid>
<description>{{ .Summary | html }}</description>
</item>
{{ end }}
</channel>
</rss>

View file

@ -1,30 +0,0 @@
{{ partial "header" . }}
<main>
{{ partial "list-item" . }}
<br> <div class="text-justify">{{ .Content }}</div>
<!-- related posts with the same tags -->
{{ $related := first 3 (where (where (where .Site.Pages.ByDate.Reverse ".Type" "==" "post") ".Params.tags" "intersect" .Params.tags) "Permalink" "!=" .Permalink) }}
{{ if $related }}
<h4 class="page-header">Related</h4>
{{ range $related }} {{ partial "list-item" . }} {{ end }}
{{ end }}
{{ if and .Site.DisqusShortname (not .Params.disableComments) }}
<h4 class="page-header">Comments</h4>
{{ template "_internal/disqus.html" . }}
{{ end }}
</main>
{{ partial "footer.html" . }}

View file

@ -1,16 +0,0 @@
{{ partial "header" . }}
<main>
<h2>{{ .Title }}</h2>
<br>
<ul class="list-without-bullets">
{{ range .Site.Data.volunteers.volunteers }}
<li>
<strong>{{ .name }}</strong>
joined {{ .joined }}
</li>
{{ end }}
</ul>
</main>
{{ partial "footer" . }}

View file

@ -1,17 +0,0 @@
{{ partial "header" . }}
<main>
<div class="intro">
<img src="/pics/prototype.png" width="128px"></img>
<h1>{{ .Site.Title }}</h1>
<h2>{{ markdownify .Page.Params.description }}</h2>
</br>
<a href="{{ .Site.LanguagePrefix }}/about">
<div>
{{ .Page.Params.more }}
</div>
</a>
</div>
</main>
{{ partial "footer" . }}

View file

@ -1,20 +0,0 @@
<footer>
<p class="copyright text-muted">
{{ .Site.Params.copyright | markdownify }}
<br/>
<a href="{{ .Site.Params.publicGitURL }}/edit/master/content/{{ .File.Dir }}{{ .File.TranslationBaseName }}.md">
{{ if eq .Lang "en" }}
Edit this page
{{ else }}
Edit the source page
{{ end }}
</a>
{{ if and .IsNode (not .IsPage) (not .IsHome) }}
&bullet; <a href="{{ .Site.Params.publicGitURL }}/new/master/content/{{ replaceRE "^/(en|de)/" "" .URL }}">Create a new page</a>
{{ end }}
&bullet;
<a href="https://crowdin.com/project/kanthausonline/de">Edit translations</a>
</p>
</footer>
</body>
</html>

View file

@ -1,58 +0,0 @@
<!DOCTYPE html>
<html lang="{{ .Site.LanguageCode }}">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>{{ .Title }}</title>
{{ partial "css" . }} {{ partial "js" . }} {{ .Hugo.Generator }}
{{ if .RSSLink }}
<link href="{{ .RSSLink }}" rel="alternate" type="application/rss+xml" title="{{ .Site.Title }}" />
<link href="{{ .RSSLink }}" rel="feed" type="application/rss+xml" title="{{ .Site.Title }}" />
<link rel="icon" type="image/png" href="/pics/favicon.png" />
{{ end }}
<meta name="google-site-verification" content="RASNGl2s7tkqjjupmanayZUEYvR22_VLt5zQ-P0DQRA" />
</head>
<body>
<nav class="navbar navbar-default navbar-fixed-top">
<div class="container">
<div class="navbar-header">
<a class="navbar-brand visible-xs" href="#">{{ .Title }}</a>
<button class="navbar-toggle" data-target=".navbar-collapse" data-toggle="collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="collapse navbar-collapse">
{{ if .Site.Menus.main }}
<ul class="nav navbar-nav">
{{ range sort .Site.Menus.main }}
<li><a href="{{ .URL | relLangURL }}">{{ .Name }}</a></li>
{{ end }}
</ul>
{{ end }}
<ul class="nav navbar-nav navbar-right">
{{ if .Site.Menus.icon }}
{{ range sort .Site.Menus.icon }}
<li class="navbar-icon"><a href="{{ .URL }}"><i class="fa fa-{{ .Name }}"></i></a></li>
{{ end }}
{{ end }}
<li class="navbar-icon">
<div style="margin-top: 12px; margin-left: 10px">
{{ if eq .Lang "de" }}
<a href="{{ replace .URL "/de/" "/en/"}}">en</a>
{{ else }}
<span>en</span>
{{ end }}
<span>/</span>
{{ if eq .Lang "en" }}
<a href="{{ replace .URL "/en/" "/de/"}}">de</a>
{{ else }}
<span>de</span>
{{ end }}
</div>
</li>
</ul>
</div>
</div>
</nav>

View file

@ -1,10 +0,0 @@
{{ if .IsTranslated }}
<h4>{{ i18n "translations" }}</h4>
<ul>
{{ range .Translations }}
<li>
<a href="{{ .Permalink }}">{{ .Lang }}: {{ .Title }}{{ if .IsPage }} ({{ i18n "wordCount" . }}){{ end }}</a>
</li>
{{ end}}
</ul>
{{ end }}

0
logs/.gitkeep Normal file
View file

11
robots.txt Normal file
View file

@ -0,0 +1,11 @@
User-agent: *
Disallow: /backup/
Disallow: /bin/
Disallow: /cache/
Disallow: /grav/
Disallow: /logs/
Disallow: /system/
Disallow: /vendor/
Disallow: /user/
Allow: /user/pages/
Allow: /user/themes/

View file

@ -1,96 +0,0 @@
html, body {
height: 100%;
}
body {
padding-top: 55px;
display: flex;
text-align: center;
flex-direction: column;
}
main {
margin: auto;
padding: 25px;
flex: 1 0 auto;
max-width: 750px;
}
/*footer*/
.copyright {
margin: 15px 0;
}
/*home page*/
.intro {
margin: 25vh 0;
}
.intro > h1 {
color: #212121;
font-size: 12vh;
}
.intro > h2 {
color: #757575;
font-size: 3vmin;
}
/*apply accent colour to links*/
a:link, a:visited {
color: var(--accent);
text-decoration: none;
}
a.icon:hover {
text-decoration: none;
}
a:hover {
color: green;
}
/*paginator at bottom of list view*/
.pages {
padding: 15px 0;
}
.pages-icon {
padding: 0 15px;
}
/*list item for posts and projects*/
.item {
padding: 10px 0;
}
.item-tag {
background-color: var(--accent);
}
/*navigation bar icons*/
.navbar-icon {
font-size: 125%;
display: inline-block !important;
}
/*coloured borders at top and bottom of the page*/
.navbar.navbar-default {
border-top: var(--border-width) solid var(--accent);
}
footer {
border-bottom: var(--border-width) solid var(--accent);
}
/*ul lists of volunteers and members pages without bullets*/
.list-without-bullets {
list-style-type: none;
padding-left: 0;
}

View file

@ -0,0 +1,54 @@
div.phpdebugbar {
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.phpdebugbar pre {
padding: 1rem;
}
.phpdebugbar div.phpdebugbar-header > div > * {
padding: 5px 15px;
}
.phpdebugbar div.phpdebugbar-header > div.phpdebugbar-header-right > * {
padding: 5px 8px;
}
.phpdebugbar div.phpdebugbar-header, .phpdebugbar a.phpdebugbar-restore-btn {
background-image: url(grav.png);
}
.phpdebugbar a.phpdebugbar-restore-btn {
width: 13px;
}
.phpdebugbar a.phpdebugbar-tab.phpdebugbar-active {
background: #3DB9EC;
color: #fff;
margin-top: -1px;
padding-top: 6px;
}
.phpdebugbar .phpdebugbar-widgets-toolbar {
padding-left: 5px;
}
.phpdebugbar input[type=text] {
padding: 0;
display: inline;
}
.phpdebugbar dl.phpdebugbar-widgets-varlist, ul.phpdebugbar-widgets-timeline li span.phpdebugbar-widgets-label {
font-family: "DejaVu Sans Mono", Menlo, Monaco, Consolas, Courier, monospace;
font-size: 12px;
}
ul.phpdebugbar-widgets-timeline li span.phpdebugbar-widgets-label {
text-shadow: -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff;
top: 0;
}
.phpdebugbar pre, .phpdebugbar code {
margin: 0;
font-size: 14px;
}

BIN
system/assets/grav.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 548 B

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

19
system/assets/whoops.css Normal file
View file

@ -0,0 +1,19 @@
body header {
background: #8552A2;
}
body .left-panel {
background: inherit;
}
body .exc-title-primary {
color: #fff;
}
body .exc-title {
color: #ddd;
}
body .frame:not(.active):hover {
background: #e6e6e6;
}

View file

@ -0,0 +1,5 @@
title: PLUGIN_ADMIN.MEDIA
form:
validation: loose
fields:

View file

@ -0,0 +1,124 @@
title: PLUGIN_ADMIN.SITE
form:
validation: loose
fields:
content:
type: section
title: PLUGIN_ADMIN.DEFAULTS
underline: true
fields:
title:
type: text
label: PLUGIN_ADMIN.SITE_TITLE
size: large
placeholder: PLUGIN_ADMIN.SITE_TITLE_PLACEHOLDER
help: PLUGIN_ADMIN.SITE_TITLE_HELP
default_lang:
type: text
label: PLUGIN_ADMIN.SITE_DEFAULT_LANG
size: x-small
placeholder: PLUGIN_ADMIN.SITE_DEFAULT_LANG_PLACEHOLDER
help: PLUGIN_ADMIN.SITE_DEFAULT_LANG_HELP
author.name:
type: text
size: large
label: PLUGIN_ADMIN.DEFAULT_AUTHOR
help: PLUGIN_ADMIN.DEFAULT_AUTHOR_HELP
author.email:
type: text
size: large
label: PLUGIN_ADMIN.DEFAULT_EMAIL
help: PLUGIN_ADMIN.DEFAULT_EMAIL_HELP
validate:
type: email
taxonomies:
type: selectize
size: large
label: PLUGIN_ADMIN.TAXONOMY_TYPES
classes: fancy
help: PLUGIN_ADMIN.TAXONOMY_TYPES_HELP
validate:
type: commalist
summary:
type: section
title: PLUGIN_ADMIN.PAGE_SUMMARY
underline: true
fields:
summary.enabled:
type: toggle
label: PLUGIN_ADMIN.ENABLED
highlight: 1
help: PLUGIN_ADMIN.ENABLED_HELP
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
summary.size:
type: text
size: x-small
append: PLUGIN_ADMIN.CHARACTERS
label: PLUGIN_ADMIN.SUMMARY_SIZE
help: PLUGIN_ADMIN.SUMMARY_SIZE_HELP
validate:
type: int
min: 0
max: 65536
summary.format:
type: toggle
label: PLUGIN_ADMIN.FORMAT
classes: fancy
help: PLUGIN_ADMIN.FORMAT_HELP
highlight: short
options:
'short': PLUGIN_ADMIN.SHORT
'long': PLUGIN_ADMIN.LONG
summary.delimiter:
type: text
size: x-small
label: PLUGIN_ADMIN.DELIMITER
help: PLUGIN_ADMIN.DELIMITER_HELP
metadata:
type: section
title: PLUGIN_ADMIN.METADATA
underline: true
fields:
metadata:
type: array
label: PLUGIN_ADMIN.METADATA
help: PLUGIN_ADMIN.METADATA_HELP
placeholder_key: PLUGIN_ADMIN.METADATA_KEY
placeholder_value: PLUGIN_ADMIN.METADATA_VALUE
routes:
type: section
title: PLUGIN_ADMIN.REDIRECTS_AND_ROUTES
underline: true
fields:
redirects:
type: array
label: PLUGIN_ADMIN.CUSTOM_REDIRECTS
help: PLUGIN_ADMIN.CUSTOM_REDIRECTS_HELP
placeholder_key: PLUGIN_ADMIN.CUSTOM_REDIRECTS_PLACEHOLDER_KEY
placeholder_value: PLUGIN_ADMIN.CUSTOM_REDIRECTS_PLACEHOLDER_VALUE
routes:
type: array
label: PLUGIN_ADMIN.CUSTOM_ROUTES
help: PLUGIN_ADMIN.CUSTOM_ROUTES_HELP
placeholder_key: PLUGIN_ADMIN.CUSTOM_ROUTES_PLACEHOLDER_KEY
placeholder_value: PLUGIN_ADMIN.CUSTOM_ROUTES_PLACEHOLDER_VALUE

View file

@ -0,0 +1,8 @@
title: PLUGIN_ADMIN.FILE_STREAMS
form:
validation: loose
hidden: true
fields:
schemes.xxx:
type: array

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,341 @@
title: PLUGIN_ADMIN.DEFAULT
rules:
slug:
pattern: '[a-zA-Zа-яA-Я0-9_\-]+'
min: 1
max: 200
form:
validation: loose
fields:
tabs:
type: tabs
active: 1
fields:
content:
type: tab
title: PLUGIN_ADMIN.CONTENT
fields:
header.title:
type: text
autofocus: true
style: vertical
label: PLUGIN_ADMIN.TITLE
content:
type: markdown
validate:
type: textarea
header.media_order:
type: pagemedia
label: PLUGIN_ADMIN.PAGE_MEDIA
options:
type: tab
title: PLUGIN_ADMIN.OPTIONS
fields:
publishing:
type: section
title: PLUGIN_ADMIN.PUBLISHING
underline: true
fields:
header.published:
type: toggle
toggleable: true
label: PLUGIN_ADMIN.PUBLISHED
help: PLUGIN_ADMIN.PUBLISHED_HELP
highlight: 1
size: medium
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
header.date:
type: datetime
label: PLUGIN_ADMIN.DATE
toggleable: true
help: PLUGIN_ADMIN.DATE_HELP
header.publish_date:
type: datetime
label: PLUGIN_ADMIN.PUBLISHED_DATE
toggleable: true
help: PLUGIN_ADMIN.PUBLISHED_DATE_HELP
header.unpublish_date:
type: datetime
label: PLUGIN_ADMIN.UNPUBLISHED_DATE
toggleable: true
help: PLUGIN_ADMIN.UNPUBLISHED_DATE_HELP
header.metadata:
toggleable: true
type: array
label: PLUGIN_ADMIN.METADATA
help: PLUGIN_ADMIN.METADATA_HELP
placeholder_key: PLUGIN_ADMIN.METADATA_KEY
placeholder_value: PLUGIN_ADMIN.METADATA_VALUE
taxonomies:
type: section
title: PLUGIN_ADMIN.TAXONOMIES
underline: true
fields:
header.taxonomy:
type: taxonomy
label: PLUGIN_ADMIN.TAXONOMY
multiple: true
validate:
type: array
advanced:
type: tab
title: PLUGIN_ADMIN.ADVANCED
fields:
columns:
type: columns
fields:
column1:
type: column
fields:
settings:
type: section
title: PLUGIN_ADMIN.SETTINGS
underline: true
folder:
type: text
label: PLUGIN_ADMIN.FOLDER_NAME
validate:
rule: slug
route:
type: parents
label: PLUGIN_ADMIN.PARENT
classes: fancy
name:
type: select
classes: fancy
label: PLUGIN_ADMIN.PAGE_FILE
help: PLUGIN_ADMIN.PAGE_FILE_HELP
default: default
data-options@: '\Grav\Common\Page\Pages::pageTypes'
header.body_classes:
type: text
label: PLUGIN_ADMIN.BODY_CLASSES
column2:
type: column
fields:
order_title:
type: section
title: PLUGIN_ADMIN.ORDERING
underline: true
ordering:
type: toggle
label: PLUGIN_ADMIN.FOLDER_NUMERIC_PREFIX
help: PLUGIN_ADMIN.FOLDER_NUMERIC_PREFIX_HELP
highlight: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
order:
type: order
label: PLUGIN_ADMIN.SORTABLE_PAGES
sitemap:
overrides:
type: section
title: PLUGIN_ADMIN.OVERRIDES
underline: true
fields:
header.dateformat:
toggleable: true
type: select
size: medium
selectize:
create: true
label: PLUGIN_ADMIN.DEFAULT_DATE_FORMAT
help: PLUGIN_ADMIN.DEFAULT_DATE_FORMAT_HELP
placeholder: PLUGIN_ADMIN.DEFAULT_DATE_FORMAT_PLACEHOLDER
data-options@: '\Grav\Common\Utils::dateFormats'
validate:
type: string
header.menu:
type: text
label: PLUGIN_ADMIN.MENU
toggleable: true
help: PLUGIN_ADMIN.MENU_HELP
header.slug:
type: text
label: PLUGIN_ADMIN.SLUG
toggleable: true
help: PLUGIN_ADMIN.SLUG_HELP
validate:
message: PLUGIN_ADMIN.SLUG_VALIDATE_MESSAGE
rule: slug
header.redirect:
type: text
label: PLUGIN_ADMIN.REDIRECT
toggleable: true
help: PLUGIN_ADMIN.REDIRECT_HELP
header.process:
type: checkboxes
label: PLUGIN_ADMIN.PROCESS
toggleable: true
config-default@: system.pages.process
default:
markdown: true
twig: false
options:
markdown: Markdown
twig: Twig
use: keys
header.twig_first:
type: toggle
toggleable: true
label: PLUGIN_ADMIN.TWIG_FIRST
help: PLUGIN_ADMIN.TWIG_FIRST_HELP
highlight: 0
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
header.never_cache_twig:
type: toggle
toggleable: true
label: PLUGIN_ADMIN.NEVER_CACHE_TWIG
help: PLUGIN_ADMIN.NEVER_CACHE_TWIG_HELP
highlight: 0
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
header.child_type:
type: select
toggleable: true
label: PLUGIN_ADMIN.DEFAULT_CHILD_TYPE
default: default
placeholder: PLUGIN_ADMIN.USE_GLOBAL
data-options@: '\Grav\Common\Page\Pages::types'
header.routable:
type: toggle
toggleable: true
label: PLUGIN_ADMIN.ROUTABLE
help: PLUGIN_ADMIN.ROUTABLE_HELP
highlight: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
header.cache_enable:
type: toggle
toggleable: true
label: PLUGIN_ADMIN.CACHING
highlight: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
header.visible:
type: toggle
toggleable: true
label: PLUGIN_ADMIN.VISIBLE
help: PLUGIN_ADMIN.VISIBLE_HELP
highlight: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
header.debugger:
type: toggle
toggleable: true
label: PLUGIN_ADMIN.DEBUGGER
help: PLUGIN_ADMIN.DEBUGGER_HELP
highlight: 1
options:
1: PLUGIN_ADMIN.ENABLED
0: PLUGIN_ADMIN.DISABLED
validate:
type: bool
header.template:
type: text
toggleable: true
label: PLUGIN_ADMIN.DISPLAY_TEMPLATE
header.append_url_extension:
type: text
label: PLUGIN_ADMIN.APPEND_URL_EXT
toggleable: true
help: PLUGIN_ADMIN.APPEND_URL_EXT_HELP
admin_only:
type: section
title: PLUGIN_ADMIN.ADMIN_SPECIFIC_OVERRIDES
underline: true
fields:
header.admin.children_display_order:
type: select
label: PLUGIN_ADMIN.ADMIN_CHILDREN_DISPLAY_ORDER
help: PLUGIN_ADMIN.ADMIN_CHILDREN_DISPLAY_ORDER_HELP
toggleable: true
classes: fancy
default: 'collection'
options:
'default': 'Ordered by Folder name (default)'
'collection': 'Ordered by Collection definition'
header.order_by:
type: hidden
header.order_manual:
type: hidden
validate:
type: commalist
blueprint:
type: blueprint

View file

@ -0,0 +1,52 @@
title: PLUGIN_ADMIN:EXTERNAL
@extends:
type: default
context: blueprints://pages
form:
validation: loose
fields:
tabs:
type: tabs
active: 1
fields:
content:
fields:
header.title:
type: text
autofocus: true
style: horizontal
label: PLUGIN_ADMIN.TITLE
content:
unset@: true
header.media_order:
unset@: true
header.external_url:
type: text
label: PLUGIN_ADMIN.EXTERNAL_URL
placeholder: https://getgrav.org
validate:
required: true
options:
fields:
publishing:
fields:
header.date:
unset@: true
header.metadata:
unset@: true
taxonomies:
unset@: true

View file

@ -0,0 +1,47 @@
title: PLUGIN_ADMIN.MODULAR
@extends:
type: default
context: blueprints://pages
form:
fields:
tabs:
type: tabs
active: 1
fields:
content:
fields:
header.content.items:
type: select
label: PLUGIN_ADMIN.ITEMS
default: '@self.modular'
options:
'@self.modular': Modular Children
header.content.order.by:
type: select
label: PLUGIN_ADMIN.ORDER_BY
default: date
options:
folder: PLUGIN_ADMIN.FOLDER
title: PLUGIN_ADMIN.TITLE
date: PLUGIN_ADMIN.DATE
default: PLUGIN_ADMIN.DEFAULT
header.content.order.dir:
type: select
label: PLUGIN_ADMIN.ORDER
default: desc
options:
asc: PLUGIN_ADMIN.ASCENDING
desc: PLUGIN_ADMIN.DESCENDING
header.process:
type: ignore
content:
type: ignore
header.media_order:
type: ignore

View file

@ -0,0 +1,123 @@
title: Account
form:
validation: loose
fields:
info:
type: userinfo
size: large
avatar:
type: file
size: large
destination: 'user://accounts/avatars'
multiple: false
random_name: true
content:
type: section
title: PLUGIN_ADMIN.ACCOUNT
underline: true
username:
type: text
size: large
label: PLUGIN_ADMIN.USERNAME
disabled: true
readonly: true
email:
type: email
size: large
label: PLUGIN_ADMIN.EMAIL
validate:
type: email
message: PLUGIN_ADMIN.EMAIL_VALIDATION_MESSAGE
required: true
password:
type: password
size: large
label: PLUGIN_ADMIN.PASSWORD
validate:
required: false
message: PLUGIN_ADMIN.PASSWORD_VALIDATION_MESSAGE
config-pattern@: system.pwd_regex
fullname:
type: text
size: large
label: PLUGIN_ADMIN.FULL_NAME
validate:
required: true
title:
type: text
size: large
label: PLUGIN_ADMIN.TITLE
language:
type: select
label: PLUGIN_ADMIN.LANGUAGE
size: medium
classes: fancy
data-options@: '\Grav\Plugin\Admin\Admin::adminLanguages'
default: 'en'
help: PLUGIN_ADMIN.LANGUAGE_HELP
twofa_check:
type: conditional
condition: config.plugins.admin.twofa_enabled
fields:
twofa:
title: PLUGIN_ADMIN.2FA_TITLE
type: section
underline: true
twofa_enabled:
type: toggle
label: PLUGIN_ADMIN.2FA_ENABLED
classes: twofa-toggle
highlight: 1
default: 0
options:
1: PLUGIN_ADMIN.YES
0: PLUGIN_ADMIN.NO
validate:
type: bool
twofa_secret:
type: 2fa_secret
outerclasses: 'twofa-secret'
label: PLUGIN_ADMIN.2FA_SECRET
sublabel: PLUGIN_ADMIN.2FA_SECRET_HELP
security:
title: PLUGIN_ADMIN.ACCESS_LEVELS
type: section
security: admin.super
underline: true
fields:
groups:
type: select
multiple: true
size: large
label: PLUGIN_ADMIN.GROUPS
data-options@: '\Grav\Common\User\Group::groupNames'
classes: fancy
help: PLUGIN_ADMIN.GROUPS_HELP
validate:
type: commalist
access:
type: permissions
label: PLUGIN_ADMIN.PERMISSIONS
ignore_empty: true
validate:
type: array

View file

@ -0,0 +1,16 @@
title: PLUGIN_ADMIN.ADD_ACCOUNT
form:
validation: loose
fields:
content:
type: section
title: PLUGIN_ADMIN.ADD_ACCOUNT
username:
type: text
label: PLUGIN_ADMIN.USERNAME
help: PLUGIN_ADMIN.USERNAME_HELP
validate:
required: true

View file

@ -0,0 +1,37 @@
title: Group
form:
validation: loose
fields:
spacer:
type: spacer
text: '<br>'
groupname:
type: text
size: large
label: PLUGIN_ADMIN.NAME
disabled: true
readonly: true
readableName:
type: text
size: large
label: PLUGIN_ADMIN_PRO.READABLE_NAME
description:
type: text
size: large
label: PLUGIN_ADMIN.DESCRIPTION
icon:
type: text
size: small
label: PLUGIN_ADMIN_PRO.ICON
access:
type: permissions
label: PLUGIN_ADMIN.PERMISSIONS
ignore_empty: true
validate:
type: array

View file

@ -0,0 +1,16 @@
title: PLUGIN_ADMIN_PRO.ADD_GROUP
form:
validation: loose
fields:
content:
type: section
title: PLUGIN_ADMIN_PRO.ADD_GROUP
groupname:
type: text
label: PLUGIN_ADMIN_PRO.GROUP_NAME
help: PLUGIN_ADMIN_PRO.GROUP_NAME_HELP
validate:
required: true

210
system/config/media.yaml Normal file
View file

@ -0,0 +1,210 @@
types:
defaults:
type: file
thumb: media/thumb.png
mime: application/octet-stream
image:
filters:
default:
- enableProgressive
jpg:
type: image
thumb: media/thumb-jpg.png
mime: image/jpeg
jpe:
type: image
thumb: media/thumb-jpg.png
mime: image/jpeg
jpeg:
type: image
thumb: media/thumb-jpg.png
mime: image/jpeg
png:
type: image
thumb: media/thumb-png.png
mime: image/png
gif:
type: animated
thumb: media/thumb-gif.png
mime: image/gif
svg:
type: vector
thumb: media/thumb-svg.png
mime: image/svg+xml
mp4:
type: video
thumb: media/thumb-mp4.png
mime: video/mp4
mov:
type: video
thumb: media/thumb-mov.png
mime: video/quicktime
m4v:
type: video
thumb: media/thumb-m4v.png
mime: video/x-m4v
swf:
type: video
thumb: media/thumb-swf.png
mime: video/x-flv
flv:
type: video
thumb: media/thumb-flv.png
mime: video/x-flv
webm:
type: file
thumb: media/thumb-webm.png
mime: video/webm
ogv:
type: video
thumb: media/thumb-ogg.png
mime: video/ogg
mp3:
type: audio
thumb: media/thumb-mp3.png
mime: audio/mp3
ogg:
type: audio
thumb: media/thumb-ogg.png
mime: audio/ogg
wma:
type: audio
thumb: media/thumb-wma.png
mime: audio/wma
m4a:
type: audio
thumb: media/thumb-m4a.png
mime: audio/m4a
wav:
type: audio
thumb: media/thumb-wav.png
mime: audio/wav
aiff:
type: audio
thumb: media/thumb-aif.png
mime: audio/aiff
aif:
type: audio
thumb: media/thumb-aif.png
mime: audio/aif
txt:
type: file
thumb: media/thumb-txt.png
mime: text/plain
xml:
type: file
thumb: media/thumb-xml.png
mime: application/xml
doc:
type: file
thumb: media/thumb-doc.png
mime: application/msword
docx:
type: file
thumb: media/thumb-docx.png
mime: application/msword
xls:
type: file
thumb: media/thumb-xls.png
mime: application/vnd.ms-excel
xlsx:
type: file
thumb: media/thumb-xlsx.png
mime: application/vnd.ms-excel
ppt:
type: file
thumb: media/thumb-ppt.png
mime: application/vnd.ms-powerpoint
pptx:
type: file
thumb: media/thumb-pptx.png
mime: application/vnd.ms-powerpoint
pps:
type: file
thumb: media/thumb-pps.png
mime: application/vnd.ms-powerpoint
rtf:
type: file
thumb: media/thumb-rtf.png
mime: application/rtf
bmp:
type: file
thumb: media/thumb-bmp.png
mime: image/bmp
tiff:
type: file
thumb: media/thumb-tiff.png
mime: image/tiff
mpeg:
type: file
thumb: media/thumb-mpg.png
mime: video/mpeg
mpg:
type: file
thumb: media/thumb-mpg.png
mime: video/mpeg
mpe:
type: file
thumb: media/thumb-mpe.png
mime: video/mpeg
avi:
type: file
thumb: media/thumb-avi.png
mime: video/msvideo
wmv:
type: file
thumb: media/thumb-wmv.png
mime: video/x-ms-wmv
html:
type: file
thumb: media/thumb-html.png
mime: text/html
htm:
type: file
thumb: media/thumb-html.png
mime: text/html
ics:
type: iCal
thumb: media/thumb-ics.png
mime: text/calendar
pdf:
type: file
thumb: media/thumb-pdf.png
mime: application/pdf
ai:
type: file
thumb: media/thumb-ai.png
mime: image/ai
psd:
type: file
thumb: media/thumb-psd.png
mime: image/psd
zip:
type: file
thumb: media/thumb-zip.png
mime: application/zip
7z:
type: file
thumb: media/thumb-7z.png
mime: application/x-7z-compressed
gz:
type: file
thumb: media/thumb-gz.png
mime: application/gzip
tar:
type: file
thumb: media/thumb-tar.png
mime: application/x-tar
css:
type: file
thumb: media/thumb-css.png
mime: text/css
js:
type: file
thumb: media/thumb-js.png
mime: application/javascript
json:
type: file
thumb: media/thumb-json.png
mime: application/json

35
system/config/site.yaml Normal file
View file

@ -0,0 +1,35 @@
title: Grav # Name of the site
default_lang: en # Default language for site (potentially used by theme)
author:
name: John Appleseed # Default author name
email: 'john@email.com' # Default author email
taxonomies: [category,tag] # Arbitrary list of taxonomy types
metadata:
description: 'My Grav Site' # Site description
summary:
enabled: true # enable or disable summary of page
format: short # long = summary delimiter will be ignored; short = use the first occurrence of delimiter or size
size: 300 # Maximum length of summary (characters)
delimiter: === # The summary delimiter
redirects:
# '/redirect-test': '/' # Redirect test goes to home page
# '/old/(.*)': '/new/$1' # Would redirect /old/my-page to /new/my-page
routes:
# '/something/else': '/blog/sample-3' # Alias for /blog/sample-3
# '/new/(.*)': '/blog/$1' # Regex any /new/my-page URL to /blog/my-page Route
blog:
route: '/blog' # Custom value added (accessible via system.blog.route)
#menu: # Sample Menu Example
# - text: Source
# icon: github
# url: https://github.com/getgrav/grav
# - icon: twitter
# url: http://twitter.com/getgrav

Some files were not shown because too many files have changed in this diff Show more