Alex Tselegidis
|
f13b1a17c4
|
Correct the API controller constructor methods.
|
2023-04-24 13:22:49 +02:00 |
|
Alex Tselegidis
|
d1e1000cb4
|
The "id_categories" columnn is optional
|
2023-04-24 10:13:44 +02:00 |
|
Alex Tselegidis
|
7f37350fab
|
Regenerate the session ID after logging in to avoid Session Fixation attacks
|
2023-04-15 14:46:30 +02:00 |
|
Alex Tselegidis
|
75b2473576
|
Do not return appointments of a different user to the another provider or secretary on the default calendar screen.
|
2023-04-15 14:39:12 +02:00 |
|
Alex Tselegidis
|
6fc45c3368
|
Correct the field filtering
|
2023-04-15 14:33:40 +02:00 |
|
Alex Tselegidis
|
d4185b2b05
|
Load the framework while testing in order to allow for additional tests
|
2023-03-24 08:11:25 +01:00 |
|
Alex Tselegidis
|
7bfe16b6be
|
Check on trashed items when fetching appointment information
|
2023-03-17 07:53:16 +01:00 |
|
Alex Tselegidis
|
2b552c4535
|
Resolve various PHP inspection issues
|
2023-03-13 09:06:18 +01:00 |
|
Alex Tselegidis
|
2731d2f17c
|
Update the seeders so that they set dynamic passwords by default
|
2023-03-01 09:00:24 +01:00 |
|
Alex Tselegidis
|
963413eb88
|
White list the working plan and working plan exceptions when saving a provider record
|
2023-03-01 08:26:58 +01:00 |
|
Alex Tselegidis
|
ea30c62a84
|
Load required settings
|
2023-02-21 08:11:18 +01:00 |
|
Alex Tselegidis
|
ddee652231
|
Remove unnecessary cache load
|
2023-02-21 07:58:30 +01:00 |
|
Alex Tselegidis
|
c8bfb623e2
|
Apply the future booking limit to the booking page
|
2023-02-13 09:36:08 +01:00 |
|
Alex Tselegidis
|
04f480c4c6
|
Remove duplicate command
|
2023-01-23 07:47:47 +01:00 |
|
Alex Tselegidis
|
f8925ddb0d
|
Add the missing "only" filtering to the backend controllers.
|
2023-01-21 12:51:06 +01:00 |
|
Alex Tselegidis
|
8449d5454c
|
Add ID to the allowed appointments fields (this will fix the rescheduling flow)
|
2023-01-18 10:59:57 +01:00 |
|
Alex Tselegidis
|
50ec06b29c
|
Allow API clients to filter appointments by service, provider and customer ID (#1296, #1325)
|
2023-01-14 10:25:25 +01:00 |
|
Alex Tselegidis
|
dfacdc901a
|
Use the "array_values" method in both available-provider filtering conditions to avoid issues with missing keys
|
2023-01-14 10:16:32 +01:00 |
|
Alex Tselegidis
|
59170af997
|
Adjust manage mode handling in booking page
|
2023-01-14 10:15:06 +01:00 |
|
Alex Tselegidis
|
8879fa7889
|
Merge pull request #1326 from eerojaaskelainen/RelFrontFixes
Fixes for frontend problems running in release mode
|
2023-01-14 10:15:01 +01:00 |
|
Alex Tselegidis
|
f68e475e27
|
Merge pull request #1330 from eerojaaskelainen/BookingRescheduleManageModeFix
Booking reschedule: Fixed manage mode getter
|
2023-01-14 10:02:37 +01:00 |
|
Alex Tselegidis
|
2e3e766f73
|
Add missing field filtering and the optional model method
|
2023-01-14 09:38:49 +01:00 |
|
Alex Tselegidis
|
bc0de8ec53
|
Add a missing condition on permissions in Calendar.php
|
2022-11-30 11:22:48 +01:00 |
|
Eero Jääskeläinen
|
a5e9ed3e99
|
Booking reschedule: Fixed manage mode getter
|
2022-11-28 13:21:32 +02:00 |
|
Eero Jääskeläinen
|
ad6bf65667
|
Strip providers script vars' keys to fix 'find() undefined' JS error
|
2022-11-17 12:54:05 +02:00 |
|
Alex Tselegidis
|
f389608aa1
|
Add date, from and till query parameters to the filter the appointments index results by date (#1134).
|
2022-10-16 22:17:36 +03:00 |
|
Alex Tselegidis
|
0f6df76667
|
Allow the users to define their own status and assign them to appointments (#244).
|
2022-10-16 21:54:26 +03:00 |
|
Alex Tselegidis
|
8449fd3d28
|
Fix the rescheduling functionality in the booking page
|
2022-10-16 18:07:45 +03:00 |
|
Alex Tselegidis
|
c8ebfae7ff
|
Make sure the search method sorts by update_datetime in descending order
|
2022-10-16 18:07:01 +03:00 |
|
Alex Tselegidis
|
d02c71a0e2
|
Add page title to the account pages
|
2022-10-16 18:02:47 +03:00 |
|
Alex Tselegidis
|
b204437473
|
Add missing provider fields in the "create" and "update" methods
|
2022-10-03 17:06:01 +03:00 |
|
Alex Tselegidis
|
b39d02b416
|
Correct the available slot collection display, when any-provider is selected
|
2022-10-03 17:06:01 +03:00 |
|
Alex Tselegidis
|
e784df50e9
|
Fix the update page error (missing proper template variable assignment)
|
2022-10-03 17:06:01 +03:00 |
|
Alex Tselegidis
|
0e2eced83c
|
Correct the constructor phpdoc block comment
|
2022-10-03 17:06:01 +03:00 |
|
Alex Tselegidis
|
fb9e78535f
|
Correct the response prop name and load the 50 last updated customers in the calendar page.
|
2022-10-03 17:06:01 +03:00 |
|
Alex Tselegidis
|
dcc5084807
|
Display the company working plan when browsing the "all" filter item
|
2022-07-27 02:19:42 +03:00 |
|
Alex Tselegidis
|
f89fdb23c0
|
Make sure that synced appointments are removed from Google Calendar if the provider changes after an appointment update action
|
2022-07-26 16:43:37 +03:00 |
|
Alex Tselegidis
|
ec0924fb7e
|
Add matomo analytics settings page
|
2022-07-26 16:39:31 +03:00 |
|
Alex Tselegidis
|
8eddb768d4
|
Add google analytics settings page
|
2022-07-26 16:39:15 +03:00 |
|
Alex Tselegidis
|
27d58effdf
|
Add API settings page
|
2022-07-26 16:38:58 +03:00 |
|
Alex Tselegidis
|
1aac411c7f
|
Create new "Integrations" page for managing 3rd party integrations
|
2022-07-26 16:38:29 +03:00 |
|
Alex Tselegidis
|
63084a73e4
|
Correct library name typo
|
2022-07-26 16:09:36 +03:00 |
|
Alex Tselegidis
|
8fde7e5221
|
Apply the "only" method to the providers controller
|
2022-06-27 11:27:46 +03:00 |
|
Alex Tselegidis
|
2ae250c698
|
Use getter methods instead of public variables directly
|
2022-06-20 12:39:14 +03:00 |
|
Alex Tselegidis
|
5027b59150
|
Catch the Throwable interface instead of the exception class
|
2022-06-20 12:37:16 +03:00 |
|
Alex Tselegidis
|
15af90ff2e
|
Use associative array when parsing the provider's google token for consistency
|
2022-06-20 12:36:44 +03:00 |
|
Alex Tselegidis
|
658ac78d8f
|
Replace the default exception classes with more specific ones
|
2022-06-20 12:31:11 +03:00 |
|
Alex Tselegidis
|
3c9631ede0
|
Apply the Google Sync fixes so that events are synced properly
|
2022-06-20 12:25:57 +03:00 |
|
Alex Tselegidis
|
0d5e60cdb7
|
Add support for dynamic webhook definition in the settings page (#581)
|
2022-06-20 12:12:36 +03:00 |
|
Alex Tselegidis
|
6b821792fa
|
Non-API routes will accept string argument values instead of integer
|
2022-06-20 12:12:36 +03:00 |
|
Alex Tselegidis
|
264328032b
|
Change cancellation title
|
2022-06-02 09:44:02 +02:00 |
|
Alex Tselegidis
|
89d22ed7e1
|
Apply company color to message layout pages too
|
2022-06-02 09:42:14 +02:00 |
|
Alex Tselegidis
|
12df8420cb
|
The theme variable can be changed by the "theme" query parameter for the booking page (#1205)
|
2022-05-27 10:04:40 +02:00 |
|
Alex Tselegidis
|
9108de8865
|
Apply the permissions library to the customers controller
|
2022-05-27 09:24:34 +02:00 |
|
Alex Tselegidis
|
e09647d01f
|
Fix the booking cancellation flow and make sure analytics are loaded in both confirmation and cancellation (#1200)
|
2022-05-26 15:35:17 +02:00 |
|
Alex Tselegidis
|
906c91331f
|
Rename unavailability dates to unavailable dates
|
2022-05-26 14:50:12 +02:00 |
|
Alex Tselegidis
|
c84fb2d3db
|
Change the way theme files are loaded, keep only 10 themes
|
2022-05-22 17:18:44 +02:00 |
|
Alex Tselegidis
|
6666e5862c
|
Support multiple Bootswatch themes for the app (#1205).
|
2022-05-22 14:39:19 +02:00 |
|
Alex Tselegidis
|
48122c4cd3
|
Update the session language and remove password from the $account array
|
2022-05-22 13:50:25 +02:00 |
|
Alex Tselegidis
|
ffb19f113a
|
Do not display the working plan exception option if no direct provider is selected
|
2022-05-20 18:03:03 +02:00 |
|
Alex Tselegidis
|
98bf660aa2
|
Correct permissions for the customers controller
|
2022-05-10 14:28:56 +02:00 |
|
Jan Chaloupecky
|
6429dabb41
|
Added secretary_providers in the JS script_vars
|
2022-04-22 13:15:06 +02:00 |
|
Alex Tselegidis
|
227612565d
|
Correct translation message key
|
2022-04-19 09:14:13 +02:00 |
|
Alex Tselegidis
|
efc532664a
|
Use grouped_timezones consistently across the app controllers
|
2022-03-29 10:16:07 +02:00 |
|
Alex Tselegidis
|
669aa2f6c6
|
Add customer language and timezone fields to the appointments modal (#1094)
|
2022-03-29 10:15:24 +02:00 |
|
Alex Tselegidis
|
8f66376b74
|
Move the change change language method to the new localization controller (removed from account)
|
2022-03-28 08:30:51 +02:00 |
|
Alex Tselegidis
|
2f67141d75
|
Apply the new add-to-google button for 1.5
|
2022-03-28 08:18:00 +02:00 |
|
Alex Tselegidis
|
1b20f49f9d
|
Rearrange main controller create/update commands
|
2022-03-25 12:50:40 +01:00 |
|
Alex Tselegidis
|
e4e285931f
|
Move the consent creation process to when the appointment gets created and not earlier
|
2022-03-25 12:44:05 +01:00 |
|
Alex Tselegidis
|
e11814057d
|
Whitelist other incoming request params
|
2022-03-25 12:29:17 +01:00 |
|
Alex Tselegidis
|
b7833643c2
|
Whitelist incoming account update request params (#1225)
|
2022-03-25 11:59:00 +01:00 |
|
Alex Tselegidis
|
a3b8228122
|
Merge branch 'master' into develop
# Conflicts:
# application/config/autoload.php
# application/config/config.php
# application/controllers/Appointments.php
# application/controllers/Backend.php
# application/controllers/Backend_api.php
# application/controllers/Captcha.php
# application/controllers/Console.php
# application/controllers/Google.php
# application/controllers/Installation.php
# application/core/EA_Controller.php
# application/core/EA_Model.php
# application/libraries/Google_sync.php
# application/libraries/Ics_file.php
# application/models/Settings_model.php
# application/views/appointments/book_success.php
# assets/css/layouts/backend_layout.scss
# assets/css/no_privileges.css
# assets/js/backend_calendar_table_view.js
# assets/js/backend_calendar_unavailability_events_modal.js
# assets/js/frontend_book.js
# assets/js/general_functions.js
# assets/js/pages/booking_confirmation.js
# assets/js/working_plan_exceptions_modal.js
# composer.json
# composer.lock
# docs/console.md
# docs/docker.md
# docs/faq.md
# docs/get-involved.md
# docs/google-calendar-sync.md
# docs/installation-guide.md
# docs/manage-translations.md
# docs/readme.md
# docs/rest-api.md
# docs/update-guide.md
# gulpfile.js
# system/core/Input.php
# system/core/Output.php
# system/core/Security.php
# system/libraries/Session/drivers/Session_files_driver.php
|
2022-03-25 10:53:46 +01:00 |
|
Alex Tselegidis
|
293f4fe663
|
Add missing customer data from stripped array
|
2022-03-04 18:04:53 +01:00 |
|
Alex Tselegidis
|
dce26bafe0
|
Fix timezone issue with add-to-google link of the booking page (#1216)
|
2022-02-24 15:58:30 +01:00 |
|
Alex Tselegidis
|
f7ffb25f05
|
Replace Google Client JS with the Google Calendar Template link in the book success page (#1216)
|
2022-02-24 15:38:51 +01:00 |
|
Alex Tselegidis
|
bb71c97736
|
Security configuration enhancements in the application (#1208)
|
2022-02-23 14:54:41 +01:00 |
|
Alex Tselegidis
|
aeee91f4ed
|
PHP 8.1 support (#1209)
|
2022-02-23 13:42:27 +01:00 |
|
Alex Tselegidis
|
cc5d219311
|
Provider and secretary users can only add unavailabilities for their authorized users (#1214)
|
2022-02-23 12:00:39 +01:00 |
|
Alex Tselegidis
|
b841864bc9
|
The table calendar view breaks for secretaries and providers due to appointment and unavailability removals (#1211)
|
2022-02-23 11:42:30 +01:00 |
|
Alex Tselegidis
|
cd1842fc40
|
Switch to go-to-latest database migration configuration for simplicity (#1213)
|
2022-02-23 11:29:45 +01:00 |
|
Alex Tselegidis
|
1cf4f5246f
|
Move the change language operation into a new public controller (#1210)
|
2022-02-23 11:09:24 +01:00 |
|
Alex Tselegidis
|
050478492c
|
Make the captcha challenges more user friendly.
|
2022-01-26 22:04:33 +01:00 |
|
Alex Tselegidis
|
42534ffcb3
|
Service duration values shorter than 5 minutes should be acceptable via the services page (#1110).
|
2022-01-24 22:09:30 +01:00 |
|
Alex Tselegidis
|
4f5fbb8262
|
Display appointments from all providers in one view.
|
2022-01-24 22:07:24 +01:00 |
|
Alex Tselegidis
|
97f98c5118
|
All the user roles with access to the backend calendar page can filter by service (#956).
|
2022-01-24 21:57:17 +01:00 |
|
Alex Tselegidis
|
2f41c28786
|
Add a new "is_private" flag to services and providers so that they do not appear in the booking page (#378).
|
2022-01-24 20:50:14 +01:00 |
|
Alex Tselegidis
|
2bf9a6193e
|
Add a new setting that toggles the login link of the booking page (#1148).
|
2022-01-24 20:02:17 +01:00 |
|
Alex Tselegidis
|
e9a9314909
|
Enable the change of the brand logo and colors from the backend (#789).
|
2022-01-24 18:36:12 +01:00 |
|
Alex Tselegidis
|
083a3e07f6
|
Add the ability to temporarily block new appointments / set away message (#940).
|
2022-01-24 16:38:03 +01:00 |
|
Alex Tselegidis
|
458595fa24
|
Add an option to deactivate the remove-all-data function for customers (#808).
|
2022-01-24 15:31:42 +01:00 |
|
Alex Tselegidis
|
6cd3179caa
|
Display "Not Found" booking message when rescheduling with an appointment hash that does not exist.
|
2022-01-19 10:25:28 +01:00 |
|
Alex Tselegidis
|
821afb2211
|
Remove the html_vars call when loading views as it is currently unnecessary.
|
2022-01-19 10:21:05 +01:00 |
|
Alex Tselegidis
|
59c44994f7
|
Add custom Matomo analytics integration (#974).
|
2022-01-19 10:18:00 +01:00 |
|
Alex Tselegidis
|
573786bb65
|
Set the default appointment color upon registration.
|
2022-01-19 09:11:42 +01:00 |
|
Alex Tselegidis
|
b65eabd9ed
|
Make sure the booking cancellation is a post request and has a reason value provided (#1178).
|
2022-01-18 18:03:55 +01:00 |
|
Alex Tselegidis
|
378c5eaa25
|
Set the manage mode to TRUE if the appointment ID is set.
|
2022-01-18 17:59:10 +01:00 |
|
Alex Tselegidis
|
628e5a2dfa
|
Use the unavailabilities model to pull the proper records for the table view.
|
2022-01-18 17:38:02 +01:00 |
|
Alex Tselegidis
|
387ac5bc19
|
Update the default view so that it works with FullCalendar 5
|
2022-01-18 15:55:21 +01:00 |
|
Alex Tselegidis
|
54e4c208a3
|
Update the project subtitle.
|
2022-01-18 13:05:42 +01:00 |
|
Alex Tselegidis
|
09775d25d5
|
Rename all "unavailable" occurrences to "unavailability" for consistency.
|
2022-01-18 12:54:41 +01:00 |
|