You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Igor Scheller 64dc16e4d9 Logger: Added handling for exceptions and log exceptions if they occur 5 years ago
bin migration: Order by migrated and append not migrated 6 years ago
config Added /design path to show template elements 5 years ago
db DB/MySQL: Use utf8mb4 to support emojis 5 years ago
docker Added Schedule parsing and replaced old Fahrplan importer 5 years ago
includes Moved development error handler setup to ConfigureEnvironmentServiceProvider 5 years ago
public Moved emojis to assets 6 years ago
resources Added /design path to show template elements 5 years ago
src Logger: Added handling for exceptions and log exceptions if they occur 5 years ago
storage storage/: .gitignore fixups 5 years ago
tests Logger: Added handling for exceptions and log exceptions if they occur 5 years ago
.babelrc Use core-js as polyfill to really support older browsers. 5 years ago
.browserslistrc Use core-js as polyfill to really support older browsers. 5 years ago
.editorconfig adding editorconfig to enforce PSR-2 5 years ago
.gitignore Adds a docker dev setup 5 years ago
.gitlab-ci.yml Added composer.json and package.json validation and auditing 5 years ago
.phpcs.xml Add phpcs config file 5 years ago
CONTRIBUTING.md Update docs 5 years ago
DEVELOPMENT.md Update docs 5 years ago
LICENSE directory renames and cleanup 14 years ago
README.md PHPUnit upgrade to 9.1, PHP upgrade to 7.3 5 years ago
composer.json Clarified license definition as GPL 2.0 or later is supported 5 years ago
package.json Clarified license definition as GPL 2.0 or later is supported 5 years ago
phpunit.xml PHPUnit upgrade to 9.1, PHP upgrade to 7.3 5 years ago
webpack.config.js add 36c3 theme 5 years ago
yarn.lock Update Frontend dependencies 5 years ago

README.md

pipeline status coverage report Codacy Badge GPL

Engelsystem

Please visit engelsystem.de for a feature list.

To report bugs use engelsystem/issues.

Since the Engelsystem is open source, you can help improving it. We really love to get pull requests containing fixes or improvements. Please read the CONTRIBUTING.md and DEVELOPMENT.md before you start.

Installation

The Engelsystem may be installed manually or by using the provided docker setup.

Requirements

  • PHP >= 7.3
    • Required modules:
      • dom
      • json
      • mbstring
      • PDO
        • mysql
      • tokenizer
      • xml/libxml/SimpleXML
      • xmlwriter
  • MySQL-Server >= 5.7.8 or MariaDB-Server >= 10.2.2
  • Webserver, i.e. lighttpd, nginx, or Apache

Download

  • Go to the Releases page and download the latest stable release file.
  • Extract the files to your webroot and continue with the directions for configurations and setup.

Configuration and Setup

  • The webserver must have write access to the storage directory and read access for all other directories

  • The webserver must point to the public directory.

  • The webserver must read the .htaccess file and mod_rewrite must be enabled

  • Recommended: Directory Listing should be disabled.

  • There must a be MySQL database created with a user who has full rights to that database.

  • If necessary, create a config/config.php to override values from config/config.default.php.

    • To remove values from the footer_items, available_themes, locales, tshirt_sizes or headers lists the config file has to be renamed.
  • To import the database the bin/migrate script has to be called. If you are not allowed to execute scripts, then execute the install-<version>.sql script. Download at Releases page.

  • In the browser, login with credentials admin : asdfasdf and change the password.

The Engelsystem can now be used.

Session Settings

  • Make sure the config allows for sessions.
  • Both Apache and Nginx allow for different VirtualHost configurations.

Docker

To build the es_nginx and the es_php_fpm containers:

cd docker
docker-compose build

or to build the containers separately

docker build -f docker/nginx/Dockerfile . -t es_nginx
docker build -f docker/Dockerfile . -t es_php_fpm

Import database

docker exec -it engelsystem_es_php_fpm_1 bin/migrate

Scripts

bin/deploy.sh

The bin/deploy.sh script can be used to deploy the Engelsystem. It uses rsync to deploy the application to a server over ssh.

For usage see ./bin/deploy.sh -h

bin/migrate

The bin/migrate script can be used to import and update the database of the Engelsystem.

For more information on how to use it call ./bin/migrate help