Go to file
Michael Weimann 2da821a68d
introduce temporary bootstrap body bg fix
2021-08-16 18:02:03 +02:00
bin migration: Prevent parallel migration runs 2020-06-28 19:31:17 +02:00
config update to bootstrap 5.1 2021-08-08 19:33:44 +02:00
db OAuth: Compare oauth users using exact compare 2021-04-12 17:13:48 +02:00
docker Upgrade to PHP 8 2021-04-12 17:13:48 +02:00
includes Styling optimizations (esp. alerts) and other fixes 2021-08-09 23:32:24 +02:00
public Moved emojis to assets 2018-09-10 22:49:46 +02:00
resources introduce temporary bootstrap body bg fix 2021-08-16 18:02:03 +02:00
src Fixed api key toggle driver license config display and dashboard 2021-07-29 20:01:17 +02:00
storage storage/: .gitignore fixups 2019-10-06 17:11:06 +02:00
tests Added ?theme parameter to temporary change theme 2021-07-29 20:01:10 +02:00
.babelrc Use core-js as polyfill to really support older browsers. 2019-07-26 12:40:21 +02:00
.browserslistrc Use core-js as polyfill to really support older browsers. 2019-07-26 12:40:21 +02:00
.dockerignore Use more configs from env, improved docker setup 2020-10-23 13:41:34 +02:00
.editorconfig .editorconfig: Fixed max_line_length 2020-06-28 19:39:29 +02:00
.gitignore Removed and replaced outdated classes and styling, use secondary buttons 2021-07-29 20:01:19 +02:00
.gitlab-ci.yml CI: Removed composer audit dependencies 2021-04-13 11:13:06 +02:00
.phpcs.xml Add phpcs config file 2019-11-13 01:07:02 +01:00
CONTRIBUTING.md introduce PostCSS + Autoprefixer 2021-04-05 11:29:19 +02:00
DEVELOPMENT.md Replaced master branch with main in readmes 2021-03-14 18:11:41 +01:00
LICENSE directory renames and cleanup 2011-06-11 18:08:56 +02:00
README.md make all themes basically working with bs5 2021-07-29 20:00:54 +02:00
composer.json Login: Added OAuth support 2020-11-22 14:55:29 +01:00
composer.lock Introduce composer.lock file 2021-04-12 17:46:01 +02:00
deployment.tpl.yaml CI: k8s: Set cert-manager cluster issuer 2021-04-11 19:20:54 +02:00
package.json update to bootstrap 5.1 2021-08-08 19:33:44 +02:00
phpunit.xml PHPUnit: Upgraded phpunit and config file format 2020-09-22 11:37:21 +02:00
webpack.config.js remove unused files5 2021-08-08 19:11:14 +02:00
yarn.lock update to bootstrap 5.1 2021-08-08 19:33:44 +02:00

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 be a MySQL database set up 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, 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 run. If you can't execute scripts, you can use the initial-install.sql file from the release zip.

  • 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

Build

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

Run

Start the Engelsystem

cd docker
docker-compose up -d

Migrate

Import database changes to migrate it to the newest version

cd docker
docker-compose exec es_php_fpm 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