All Versions
Latest Version
Avg Release Cycle
175 days
Latest Release
724 days ago

Changelog History
Page 1

  • v1.4.3 Changes

    March 08, 2022

    โž• Added

    • ๐Ÿ”’ #1208: Security configuration enhancements in the application.
    • ๐Ÿ‘ #1209: Add support for PHP 8.1.

    ๐Ÿ”„ Changed

    • ๐Ÿ“ฆ #1207: Replace CodeIgniter with the system directory for smaller package size and more control over the framework.
    • ๐Ÿšš #1210: Move the change language operation into a new public controller.
    • ๐Ÿšš #1212: Remove the Google Calendar read-only scope use as it is not needed.
    • ๐Ÿ”ง #1213: Switch to go-to-latest database migration configuration for simplicity.
    • #1216 Replace Google Client JS with the Google Calendar Template link in the book success page enhancement.

    ๐Ÿ›  Fixed

    • #1211: The table calendar view breaks for secretaries and providers due to appointment and unavailability removals bug.
    • #1214: Provider and secretary users can only add unavailabilities for their authorized users bug.
  • v1.4.2 Changes

    July 27, 2021

    โž• Added

    • ๐Ÿ‘ #1004: Add support for line breaks when displaying the service description in the frontend.
    • ๐Ÿ”€ #1040: Support all-day events while syncing with Google Calendar.

    ๐Ÿ›  Fixed

    • #961: Timezone/UX issue: Wrong day is selected when timezone differs by -1 day.
    • #966: Secretaries are getting notification emails for providers that are not assigned to them.
    • #980: Missing Pacific (and potentially other) timezones.
    • #982: The Any-Provider option might lead to double bookings, if all the providers have the same number of appointments for the selected date.
    • #986: Managed to replicate appointment hash collisions.
    • ๐Ÿš‘ #989: Fix Critical mistake resulting in wrong date
    • #990: The API availabilities controller throws an error when generating availability for services with multiple attendants.
    • #991: Available hours generated with the "Any Provider" option in the booking page, may use the information of a provider that is not assigned to the selected service.
    • โšก๏ธ #993: Add support for PHP8 (vendor packages need to be updated).
    • #1000: Small fix for the display of the delete button in table view.
    • ๐Ÿ‘ป #1011: Working plan exception - details pane shows incorrect details.
    • #1023: Backend calendar table events missing or duplicated.
    • #1026: The timepicker sliders do not work when using an iOS device.
    • โœจ #1029: Enhance SMTP functions of PHPMailer.
    • #1043: Unavailable events do not block time from services with multiple attendants.
    • #1046: Make sure that saving the modifications of a single break does not cancel any pending break edits.
    • #1068: Set minimum service duration field value to honor the value of EVENT_MINIMUM_DURATION.
    • โšก๏ธ #1073: Update PHPMailer dependencies.
    • #1074: In case of deletion of one appointment, system sends email to admins anyway even if they have email notifications disabled.
    • #1092: Javascript RangeError on appointment change causing disabled calendar dates.
  • v1.4.1 Changes

    December 14, 2020

    โž• Added

    • ๐Ÿ‘ #952: Add timezone support in the REST API, when managing users.
    • ๐Ÿ”€ #955: Display confirmation modal when disabling a connected Google Calendar Sync.

    ๐Ÿ›  Fixed

    • ๐Ÿ”€ #945: Google Calendar sync throws an error with all day Google Calendar Events.
    • #946: Typo in JavaScript code leads to a broken calendar view, when loading unavailability events with note contents.
    • #948: Multiple attendant services may lead to double booking.
    • #950: Cannot create provider without services via the API, some values (other endpoints) are optional too.
    • #953: Current time indicator in fullcalendar is showing time in local timezone and not in the user selected timezone.
    • #954: The password must be provided via the API when creating new users.
  • v1.4.0 Changes

    December 09, 2020

    [1.4.0] - 2020-12-09

    โž• Added

    • ๐Ÿ”€ #203: Appointment location / 12-hour format / sync notes and location in Google Calendar.
    • ๐Ÿ›  #221: Fixed/Improved sort breaks increasingly by hour within day.
    • #247: Add new system-wide setting for removing the "Any Provider" option of the booking page.
    • #251: Automatically populate the appointment end datetime in API.
    • #301: Automatically reload the backend calendar events.
    • #313: How to set the timezone from the user booking the appointment.
    • #365: Only allow appointments for a few weeks in advance.
    • ๐Ÿ‘ #431: Add support for working plan exceptions.
    • #471: Add new system-wide setting that enable users to choose the first day of the week.
    • #496: Add pagination on every backend page in order to make filter requests faster.
    • ๐Ÿฑ #501: Integrate script for assets minification.
    • #502: Config::DEBUG value toggles the use of normal or minified asset files.
    • #546: Add appointment edit link in the backend customers page.
    • #550: Multi-Lang Front-End selection popup not working on mobile.
    • ๐Ÿ”€ #551: Front-End booking calendar not syncing with business logic working plan.
    • #572: Ensure the database structure is compatible to at least MySQL 5.5.
    • ๐Ÿ‘ป #576: Appointment cancelled exception not showing properly.
    • #610: Token based authentication for the Rest API.
    • โš  #648: Add a warning when customers delete their personal information.
    • #655: Creating an appointment requires user to enter their phone number enhancement.
    • ๐Ÿ’ป #659: Automatically detect browser language enhancement.
    • #663: Language selector not working under legacy iOS (v.10.3.1).
    • #680: Generate new password in the generate_random_string function may create duplicate passwords, plus it is not secure enough.
    • โœจ #739: Enhance the table view mode by replacing the tables with fullcalendar instances.
    • #770: Store customer's language and use it with notifications or when the customer manages and existing appointment.
    • #889: Notify admins and secretaries on appointment changes.

    ๐Ÿ”„ Changed

    • #386: Service price should be optional.
    • โฑ #428: Enable book advance timeout values in days.
    • #568: Sort providers alphabetically in the booking page.
    • #745: Add appointment notes preview in the event popover.

    ๐Ÿ›  Fixed

    • ๐Ÿ”€ #171: Google calendar sync - wrong timezone for appointments.
    • ๐Ÿ”€ #195: Fix Google calendar sync activation error (JavaScript).
    • #298: Provider availability issue when selecting the "Any Provider" option.
    • โšก๏ธ #396: Start and end time do not update correctly during calendar time selection on iPad (and other Safari based devices).
    • ๐Ÿณ #447: Captcha error using docker (500 error).
    • #506: Working plan created in version v1.2.1 wrongly displayed in backend with version v1.3.1.
    • #507: Need to manually clean the cache when migrating from v1.2.1 to v1.3.1.
    • ๐Ÿšš #541: Can't remove (empty) customer notes field.
    • โš  #549: Querying appointments API endpoint with the q parmeter produces PHP warnings.
    • ๐Ÿณ #557: App not connecting to MySQL with fresh docker run.
    • #562: Unavailability periods with length of more than 1 day are not handled correctly.
    • #563: Description field overflows with long text.
    • #600: Unable to select Language on mobile phones.
    • ๐ŸŒ #611: Double replacement when using translation to other languages.
    • #664: Easy!Appointments v1.3.2 allows sensitive information disclosure (username and password hash).
    • #687: Errors when the provider modifies an appointment.
    • #705: The alert notification of the installation is not being displayed on error.
    • #757: Corrected display of datetimepickers when editing events.
    • #801: Invalid time duration during appointment registration could lead to DOS of the service.
    • #813: Hyperlinks are not being displayed correctly inside legal contents (they are escaped).
    • #839: Provider is missing on appointment modal opened after a click on the link sent with the provider email confirmation.
    • #840: Start/end datetime are not correctly initialized on Safari when the appointment modal is opened after a click in the backend calendar.
    • #883: Appointment date is wrongly changed to today in some case.
    • โšก๏ธ #903: Notification not working when creating/updating/deleting an appointment from the REST API.
  • v1.4.0-beta.1 Changes

    October 22, 2020

    โฑ Easy!Appointments is a self hosted, open source web scheduler application that is very easy to setup on your server.

    ๐Ÿš€ This is a pre-release, please report any issues directly on GitHub so that they are solved before the final release.

    | |   Alex Tselegidis, Easy!Appointments Creator
      Need a customization? Contact me in person! |

  • v1.3.2 Changes

    July 29, 2018


    ๐Ÿ›  Fixed

    • #480: Make the app GDPR - new EU privacy regulations compliant.
    • #485: Make REST API search check with "q" parameter case insensitive.
    • #489: REST API response headers must use the Content-Type application/json value.
    • ๐ŸŽ #500: Performance optimization in backend calendar page, after the user clicks the insert appointment button.
    • #510: Providers should not be able to create appointments for other providers in the backend calendar page.
    • #512: Only show appointments of the currently logged in provider.
  • v1.3.2-beta.1 Changes

    June 24, 2018

    [1.3.2] - Beta 1

    ๐Ÿ›  Fixed

    • #480: Make the app GDPR - new EU privacy regulations compliant.
    • #485: Make REST API search check with "q" parameter case insensitive.
    • #489: REST API response headers must use the Content-Type application/json value.
    • ๐ŸŽ #500: Performance optimization in backend calendar page, after the user clicks the insert appointment button.
  • v1.3.1 Changes

    June 03, 2018


    โž• Added

    • ๐Ÿ’… #410: Time format from American style to European
    • #441: Added time format selection
    • #452: Provide more information when errors occur during the installation.

    ๐Ÿ”„ Changed

    • ๐ŸŒ #494: French translation corrections/improvements.

    ๐Ÿ›  Fixed

    • #433: Selected date when editing an appointment
    • #436: All days unavailable in agendaDay view
    • โšก๏ธ #438: Error on update process from 1.2.1 to 1.3.0
    • #440: Correct label text for customer phone number in back-end calendar event popup.
    • #453: Unavailable periods not taken into account when more than one customer
    • #455: French Spelling
    • #459: Aggregate Appointment API crashes when a break was added
    • 0๏ธโƒฃ #461: Invalid working plan parsing for foreign languages on day view of the default calendar view.
    • #475: Booking page date selection is broken with any_provider option selected.
    • #483: In backend, calendar for providers become unselectable if switched to calendar for service.
    • ๐ŸŒ #491: Replace hardcoded string with translation in appointment details email template.
    • ๐Ÿ›  #495: Database migration fixes (from 1.2.1 to 1.3.x).
    • #497: Backend settings are not being displayed on page load when the user is not an admin.

    | |   Alex Tselegidis, Easy!Appointments Creator
      Need a customization? Contact me in person! |

  • v1.3.1-beta.1 Changes

    April 26, 2018

    ๐Ÿš€ This Beta release contains the many fixes based on testing for the first Beta version. Please test and file issues and help the project become as stable as possible.

  • v1.3.0 Changes

    February 28, 2018

    ๐Ÿš€ This release brings many enhancements and fixes to the Easy!Appointments platform. The user experience has become more stable and the system performs faster that previous releases. Email notifications now include ICS files, time is formatted into the regular format (HH:MM AM/PM), Sunday became the first day of the week and the back-end calendar supports the creation of new events just be clicking and draging into the the time slots.

    ๐Ÿš€ The code has be under heavy refactoring in order to make further development faster and debugging is now easier that ever before as messages become more descriptive. CodeIgniter is updated to the latest release as well as FullCalendar did. Older code syntax was replaced with newer one and all the source files where auto-formatted so that they follow the same code style.



    โž• Added

    • #65: Insert new appointment by clicking directly on the calendar.
    • #122: Add customer email and phone number in the event popover of the backend/calendar page.
    • ๐Ÿ‘ #152: Add support for American Time Format (AM/PM).
    • ๐Ÿณ #176: Add Docker container for Easy!Appointments development.
    • ๐ŸŒ #362: Add Arabic language translation.
    • #395: Add aggregates GET parameter in the appointments REST API resource.
    • #397: Allow PHP v7.1 compatibility.
    • #398: Send ICS files with customer/provider email confirmations.
    • ๐Ÿฑ #399: Integrate cache busting for assets into the app.
    • โšก๏ธ #402: Create simple "update" page.

    ๐Ÿ”„ Changed

    • โšก๏ธ #276: Update FullCalendar dependency.
    • #394: Corrections in the Bootstrap classes in view files.
    • #401: Replace loading spinner graphic with a newer one.
    • #403: All calendars will start with Sunday as the first day.

    ๐Ÿ›  Fixed

    • โšก๏ธ #155: Appointment management modal is not updated after appointment duration resize.
    • #236: Duplicate availabilities with short service duration and unavailabilities ignorance.
    • โšก๏ธ #315: Calendar doesn't update when Attendants number changes.
    • 0๏ธโƒฃ #334: Use of session_start() function may cause issues as the default options are not being used.
    • #336: Deleting provider doesn't work in some languages.
    • #337: Full day appointment with multiple attendants are not being taken into concern during availabilities generation.
    • #342: Email notifications must honor the date format value.
    • #370: AJAX Error: SyntaxError: Unexpected token < in JSON at position 0

    โœ‚ Removed

    • ๐Ÿšš #400: Remove jscrollpane dependency.

    ๐Ÿ—„ Deprecated

    • ๐Ÿš€ The availabilities generation and AJAX endpoints will change with a future release.

    | |   Alex Tselegidis, Easy!Appointments Creator
      Need a customization? Contact me in person! |