A Content Management System designed especially for the needs of LAN-Parties
PHP JavaScript HTML ColdFusion CSS ASP Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.docker Nginx: Deny all hidden files that starts with a '.' May 20, 2017
.github Added GitHub Issue Template May 2, 2017
bin is -> if May 6, 2018
design formatted css Apr 24, 2017
ext_inc Restore ext_inc/templates_c/info.txt May 17, 2017
ext_scripts Module "server2": Remove the module, because it is not functional at all May 19, 2018
inc Added error messages to both map displays May 25, 2018
modules Merge branch 'master' into remove-server2-module May 26, 2018
tests Renamed classes in inc/Classes according their files and moved them t… Apr 15, 2018
.gitignore Fix #89: Add script to build a complete release package May 4, 2018
.htaccess Addaptet caching rules Mar 12, 2015
.travis.yml TravisCI: Exclude modules from last phpcs call, because we handle the… May 26, 2018
CONTRIBUTING-DE.md Added contribution guide (like the one from Icinga2) May 2, 2017
CONTRIBUTING.md Added contribution guide (like the one from Icinga2) May 2, 2017
Dockerfile Dockerfile: Remove version from xDebug Jan 30, 2018
README-DE.md Added remarks for Fedora as OS May 24, 2018
README.md Added remarks for Fedora as OS May 24, 2018
composer.json Merge branch 'master' into module-usrmgr-rework May 26, 2018
composer.lock Fix #232: Module "pdf": Upgrade fpdf to v1.8.1 and add this as a com… May 1, 2018
docker-compose.dump.yml Docker-Compose: New setup with database dump May 1, 2018
docker-compose.yml Improve Docker setup Jan 28, 2018
favicon.ico no message Dec 9, 2005
index.php Module "stats": Rework of the module May 20, 2018
index_module.inc.php Avoid SQL error during installation for admin_exists-check Apr 1, 2018
install.php Move global functions to composer autoloader Apr 29, 2018
nofollow.php #6: Apply coding style guide PSR 1 and PSR 2 to index files (with ph… Apr 23, 2017
phpunit.xml.dist Set backupGlobals=true for PHPUnit to isolate tests that use global v… Mar 17, 2018
robots.txt Nofollow auf Links in Party-Liste Dec 25, 2009
scripts.js #6: Apply coding style guide PSR 1 and PSR 2 to index files (with ph… Apr 23, 2017
seating.js #6: Apply coding style guide PSR 1 and PSR 2 to index files (with ph… Apr 23, 2017

README.md

LANSuite - Web based LAN-Party Management System

Build Status

LANSuite is a administration system for LAN-Parties based.

German version of this README: Can be found at README-DE.md.

Features

  • Organisation of tournaments
  • Registration for parties
  • News- and messaging system
  • Projector support
  • Cash / Money management
  • Foodcenter
  • Hardware / Server inventory
  • Picture gallery
  • Seat plans
  • and many more ...

Requirements

  • = PHP 7 (with mysqli, snmp and gd extensions)

  • = MySQL 5.6.3

Installation

Docker

We assume that you have a running Docker Community Edition installed.

$ git clone https://github.com/lansuite/lansuite.git
$ cd lansuite
$ touch ./inc/base/config.php
$ # Add the content of the example configuration file below into ./inc/base/config.php
$ chmod 0777 ./inc/base/config.php
$ chmod -R 0777 ./ext_inc/
$ docker-compose up
$ docker-compose run php composer install

Note: Some distributions (e.g. Fedora) restrict access to the docker daemon socket to user root only . This results in a error message as ERROR: Couldn't connect to Docker daemon at http+docker://localunixsocket - is it running? Run the two docker-compose commands as user root (via suor sudo) in that case.

This will start a Nginx webserver with a php-fpm configuration and a MySQL database for you. After everything started you should be able to visit http://<Your-Docker-IP>:8080/ and see a running LanSuite-System.

Warning: This Docker setup should not be used for production. It contains a debugging setup like Xdebug.

Docker with a database dump

If you have already a running website based on LanSuite, you can also start a docker based setup with a copy of your database. It comes handy to test the new features with your dataset.

This guide assumes that you have already a copy of your database in a single SQL file. If you don't have one, you can create one with tools like mysqldump, PHPMyAdmin or ask your hoster for a copy.

Move your database dump into the root folder of LanSuite and name it database-dump.sql:

$ mv /your/db/dump.sql /lansuite/copy/database-dump.sql

After this, you can start the docker-compose setup via

$ docker-compose -f docker-compose.yml -f docker-compose.dump.yml up

Configuration file

An example configuration file looks like:

[lansuite]
version=Nightly
default_design=simple
chmod_dir=777
chmod_file=666
debugmode=0

[database]
server=mysql
user=root
passwd=
database=lansuite
prefix=ls_
charset=utf8

Warning: Setting directories to 0777 is not suggested for production. Only your webserver user should be able to write into this directory.

Development

Contribution Guide

Checkout how to contribute in our Contribution Guide.

Language

Main language of this project is english. We also support issues and pull requests in german. The reason is that LANSuite is a quite old system and a massive userbase only speaks german. To not loose them, we will support both languages. See Switch language of documentation, development, communication to english #2 for more details.

Coding style guide

This project follows the coding guideline standards:

Generating API docs

Former versions of LANSuite bundled an API documentation in the docs/ folder. To generate an API documentation in a HTML-Version you can use phpDocumentor:

$ composer install
$ bin/phpdoc run --progressbar -t ./docs/