This application uses laravel 5.1.* (a php framework)
Here the entire site: plunner.com
Api example web server: http://api.plunner.com. It is just an example, so we don't guarantee that everything works
N.B. You need also the frontend application
- Clone repository
- Install dependencies with composer
composer install
(http://getcomposer.org)
or simply
composer create-project dsd-meetme/backend
(this gets the last stable version)
- Create database
- Configure database data in .env file
- Configure private keys in .env file
JWT_SECRET
viaphp artisan jwt:generate
APP_KEY
viaphp artisan key:generate
- perform
php artisan migrate
- configure urls in
config/app.php
(this only for real environment) - this must be installed on the root of the virtual host
- configure crontab
* * * * * php /path/to/artisan schedule:run >> /dev/null 2>&1
to optimise and caldav import - install
GLPSOL
https://en.wikibooks.org/wiki/GLPK/Linux_packages
(needed for optimisation task -> finding perfect meeting slot) - configure additional things like emails, optimisation and so in the config files
Use phpstorm is one of the best solution, since it has laravel plugin.
After cloning and installing repository:
- Run
php artisan ide-helper:generate
andphp artisan ide-helper:meta
, so you create meta files for autocomplete in the IDE. - Run
php artisan ide-helper:models
each time models are updated (not in other case) and only if models are updated. - Install laravel plugin
- Use phunit 4.* not 5
- execute as test phpunit.xml
- You should insert your name as author in composer file
- We use UTC time
- In real environment you should use apache2
- To not to perform tests of console tasks, since they can be have problems on windows and they need specif software, set the following env variable
DO_CONSOLE_TESTS=false
- exec calls must be enabled in php-cli
- tmp dir permissions needed
- The library is tested only on linux, we don't know the behaviour of critical parts (optimisation and caldav sync) on other systems
- Details about application https://docs.google.com/document/d/1BqwZzRVEWS6Hk68mLSufbqHMNTo78aXbwT0a0AFqOFY/edit?usp=sharing
- after 30 days you have to re-login, this for security reasons to avoid that a malicious guy can use the token to get new tokens and he stays always connected even if you change password