8 Installation Guide
Olli edited this page 2020-05-05 22:35:27 +02:00
This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Installation Guide

Software

Installation

Webserver

  1. Checkout source code
    git clone https://github.com/coderkun/questlab.git
  2. Move files to Apaches DocumentRoot or use a Virtual Host
  3. Make sure all files are readable by Apache (usually user http or www-data)
  4. Make the following folders writable by Apache: logs, media, seminarymedia, seminaryuploads, tmp, uploads

Database

  1. Create a new database
    CREATE DATABASE questlab
    CREATE USER 'questlab'@'localhost' IDENTIFIED BY 'questlab';
    GRANT ALL PRIVILEGES ON questlab.* TO 'questlab'@'localhost'
  1. Run script to create tables
    The script creates triggers so either give the user SUPER privileges or enable log_bin_trust_function_creators
    $ mysql -u z -p z < create.sql
  2. Run script to import default values
    $ mysql -u z -p z < import.sql

Configuration

General

File: configs/AppConfig.inc

    public static $app = array(
        'name'              => 'Questlab',
        'genericname'       => 'The Legend of Z',
        'namespace'         => 'hhu\\z\\',
        'timeZone'          => 'Europe/Berlin',
        'mailsender'        => '',
        'mailcontact'       => '',
        'registration_host' => '',
        'languages'         => array(
            'de'    => 'de_DE.utf8'
        )
    );
  • name: Displayable name of application
  • genericname: Generic name used internally (do not change this!)
  • namespace: Namespace of this application (do not change this!)
  • timeZone: Timezone of application
  • mailsender: Sender used for FROM-header in email notifications
  • mailcontact: Displayable email address for contact
  • registration_host: Limit user registration to this host
  • languages: Supported languages (do not change this!)

Database

File: configs/AppConfig.inc

    public static $database = array(
        'user'      => 'questlab',
        'host'      => 'localhost',
        'password'  => 'questlab',
        'db'        => 'questlab'
    );
  • user: Name of database user
  • host: Name of database host
  • password: Password for database user
  • db: Name of database to use

EMail notifications

File: configs/AppConfig.inc

    public static $app = array(
        […]
        'mailsender'        => '',
        […]
    );
  • mailsender: Sender used for FROM-header in email notifications
    public static $mail = array(
        'host'      => '',
        'port'      => 465,
        'username'  => '',
        'password'  => '',
        'secure'    => '',
        'charset'   => 'UTF-8'
    );
  • host: SMTP host to send mails via
  • port: SMTP port to use
  • username: Name of SMTP user
  • password: Password for SMTP user
  • secure: Transport security to use (e.g. “ssl”)
  • charset: Charset to use for mails