Skip to content

eellak/easyappointments

 
 

Repository files navigation


Easy!Appointments
Easy!Appointments


A powerful Open Source Appointment Scheduler that can be installed on your server.

GitHub GitHub release (latest by date) GitHub All Releases

AboutFeaturesSetupInstallationLicense

screenshot

About

Easy!Appointments is a highly customizable web application that allows customers to book appointments with you via a sophisticated web interface. Moreover, it provides the ability to sync your data with Google Calendar so you can use them with other services. It is an open source project that you can download and install even for commercial use. Easy!Appointments will run smoothly with your existing website as it can be installed in a single folder of the server and of course share an existing database.

Features

The application is designed to be flexible enough so that it can handle any enterprise work flow.

  • Customers and appointments management.
  • Services and providers organization.
  • Working plan and booking rules.
  • Google Calendar synchronization.
  • Email notifications system.
  • Self hosted installation.
  • Translated user interface.
  • User community support.

GFOSS Adjustments

We made minimal changes in EASY!APPOINTMENTS source code.

  • We added a new css file to change the appearence of the interface.
  • We added the capability to automatically generate a jitsi link if the location field at the service form is empty, stored in the database and send it by email to the user.
  • If the Administrator doesn’t set a physical location for a service platform creates a unique Jitsi link using the appointment’s hash
  • We used the native location field to store and show the Jitsi link
  • We added the location field in the email the user receives
  • In Administration Settings we added fields to add / change text in homepage

Setup

To clone and run this application, you'll need Git, Node.js (which comes with npm) and Composer installed on your computer. From your command line:

# Clone this repository
$ git clone git clone https://github.com/eellak/easyappointments.git

# Go into the repository
$ cd easyappointments

# Install dependencies
$ npm install && composer install

# Start the file watcher
$ npm start

Note: If you're using Linux Bash for Windows, see this guide or use node from the command prompt.

You can build the files by running npm run build. This command will bundle everything to a build directory.

Installation

You will need to perform the following steps to install the application on your server:

  • Make sure that your server has Apache/Nginx, PHP and MySQL installed.
  • Create a new database (or use an existing one).
  • Copy the "easyappointments" source folder on your server.
  • Make sure that the "storage" directory is writable.
  • Rename the "config-sample.php" file to "config.php" and update its contents based on your environment.
  • Open the browser on the Easy!Appointments URL and follow the installation guide.

That's it! You can now use Easy!Appointments at your will.

You will find the latest release at easyappointments.org. If you have problems installing or configuring the application visit the official support group. You can also report problems on the issues page and help the development progress.

GFOSS adjustments

In order Easy!Appointments to work with your jitsi server we changed:

  • in our config-sample.php you must set the JITSI_URL variable to your server's jitsi URL, ex.: https://jitsi.example.com/
  • Added two fields in the database: INSERT INTO bookingjitsiwp.ea_settings (name, value) VALUES ('display_landing_page', '1'); INSERT INTO bookingjitsiwp.ea_settings (name, value) VALUES ('landing_page_content', 'I am the Landing Page Content ');
  • In file engine/Notifications/Email.php we added appointment location with the jitsi link.
  • In file application/views/emails/appointment_details.php we show the link with the location data.
  • Changed the following javascript files to show an html editor and receive the values: /assets/js/backend_settings.min.js /assets/js/backend_settings_system.min.js
  • Added php code in the folloing files to show text: /application/views/appointments/book.php /application/controllers/Appointments.php

For more details theck git comparison .

To access our working demo contact us at [email protected].

License

Code Licensed Under GPL v3.0 | Content Under CC BY 3.0


Website alextselegidis.com  ·  GitHub alextselegidis  ·  Twitter @alextselegidis

More Projects On Github

About

📅 Easy!Appointments - Open Source Appointment Scheduler

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 78.8%
  • JavaScript 19.2%
  • CSS 1.5%
  • Other 0.5%