PHP JavaScript CSS Other
Clone or download
Permalink
Failed to load latest commit information.
.github Add the capability for a requester to cancel a leave request in reque… Aug 25, 2016
application ER:Add basic REST endpoints with TU Jul 5, 2018
assets ER:Technical migration to date picker 1.8.0 Jun 3, 2018
docs BF:Fontawesome icons were not served by IIS May 4, 2018
local ER:Migrate from glyphicon to Material Design ICons Apr 19, 2018
nbproject Add the capability for a requester to cancel a leave request in reque… Aug 25, 2016
sql Improved DB definition May 11, 2018
system BF:Add UK regional variant in system translation. Fix #209 Jul 26, 2017
tests ER:Add basic REST endpoints with TU Jul 5, 2018
.gitattributes Initial commit Mar 20, 2014
.gitignore Stop to track the vendor folder Dec 29, 2017
.htaccess ER:Support for multiple CI environments. Fix #156 Jul 1, 2017
CODE_OF_CONDUCT.md Create code of conduct Aug 2, 2017
LICENSE ER:New design for v0.5.0 (flat buttons and new background). Dec 2, 2015
README.md ER:Various updates May 4, 2018
TODO.md ER:Add basic REST endpoints with TU Jul 5, 2018
composer.json ER:Add basic REST endpoints with TU Jul 5, 2018
composer.lock ER:Add basic REST endpoints with TU Jul 5, 2018
favicon.ico ER:Rebranding Dec 14, 2014
index.php ER:Better architecture for REST API Jun 22, 2018
opcache.php ER:Technical upgrade to github.com/amnuts/opcache-gui v2.2.3 Jan 2, 2017
phpunit.xml ER:Add basic REST endpoints with TU Jul 5, 2018
requirements.php BF:Wrong JQuery version May 11, 2018
robots.txt ER:API Create/update users. Migration to the latest version of OAuth2 May 8, 2015
routing.php Happy new year Dec 29, 2017
sonar-project.properties Add Sonarqube configuration Feb 5, 2017
testldap.php BF:Wrong JQuery version May 11, 2018
testmail.php BF:Wrong JQuery version May 11, 2018
testoauth2.php BF:Wrong JQuery version May 11, 2018
testssl.php BF:Wrong JQuery version May 11, 2018

README.md

Jorani is a Leave Management System developed in PHP/MySQL under an AGPL v3 licence. Jorani is designed to provide simple leave and overtime request workflows for small organizations.

Informations / getting help

Status

This project is stable and ready for production. An online demo is available here : https://demo.jorani.org/ Use bbalet / bbalet for login / password.

Features

  • Comprehensive online documentation (French and English).
  • Notifications by e-mail (requested, accepted, rejected and new user).
  • Leave request approval workflow (1 validator).
  • Overtime request approval workflow (1 validator).
  • Leave balance report (filtered by department).
  • Monthly presence report.
  • Export to XLSX (Excel, LibreOffice) in a click (almost all pages of the application).
  • HR users can edit any leave or overtime request.
  • Set your own contracts and leave types.
  • Calendars of leaves (individual, team, collaborators, etc.).
  • Describe your organization in a tree structure and attach employees to entities, define a supervisor per entity.
  • Non working days (weekends and day offs) can be defined on a contract so as to automatically calculate the duration of a leave and to display them in the calendar.
  • REST API (OAuth2) fully documented and examples with PHP clients.
  • LDAP and SAML Authentication (OpenLDAP, AD, etc.).
  • OAuth2 Authentication (only Google+ at the moment).
  • Available in English, French, Spanish, Italian, Portuguese, German, Dutch, Russian, Ukrainian, Persian, Khmer, Vietnamese, Czech, Arabic and Turkish.

Installation

IMPORTANT: If you want to install Jorani in production, please download it from the Release tab.

See the installation instructions for advanced configuration. In a nutshell :

  • If you use Apache, mod_rewrite must be activated and the config must allow overwriting settings with .htaccess file.
  • Download or clone Jorani. If you clone, please update the vendor folder with composer.
  • Upload the content of this folder on your server (in /var/www/...).
  • Create a database with /sql/lms.sql script.
  • Create a user with SELECT, INSERT, UPDATE, DELETE, EXECUTE permissions on the database.
  • Update /application/config/database.php according to your database settings.
  • Update the end of /application/config/email.php with your e-mails settings.
  • Update the end of /application/config/config.php if you want to change the default behaviour.
  • It is recommended to change the private and public RSA keys (in assets/keys).
  • Check your installation with the requirements.php page at the root of your installation (e.g. http://localhost/lms/requirements.php).
  • The default user is bbalet and password is bbalet.

Contribute

Credits

Contributors

  • Github and Google groupe users for their ideas and tests.
  • All participants of the Transifex project.

Third party libraries and components

We thank the following open source projects for the components used by Jorani:

Backend

Frontend