Commit graph

1254 commits

Author SHA1 Message Date
Alex Tselegidis
7b5f4d014a Group conditions in order to avoid querying removed records accidentally. 2022-07-07 15:27:18 +02:00
Alex Tselegidis
3d8d5afa4c Add new setting for limiting new public bookings in the future (#1203). 2022-06-27 15:14:46 +03:00
Alex Tselegidis
bc80d2c6e0 Display the language key if no translation is available 2022-06-27 13:49:16 +03:00
Alex Tselegidis
b79a17f25e Remove unnecessary webhooks page element 2022-06-27 11:28:21 +03:00
Alex Tselegidis
8fde7e5221 Apply the "only" method to the providers controller 2022-06-27 11:27:46 +03:00
Alex Tselegidis
680d01d16f Group checkboxes in a frame in booking settings page 2022-06-27 11:27:25 +03:00
Alex Tselegidis
0576e69ad5 Change the private field id attribute for consistency 2022-06-21 12:59:24 +03:00
Alex Tselegidis
181afcb4b9 Correct layout page title 2022-06-21 12:58:48 +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
14ae6b24fa Change $exception to $e for consistency 2022-06-20 12:31:52 +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
32ed2c32e6 Add descriptive messages to library log output 2022-06-20 12:12:36 +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
2e97777cad Add fallback value to permissions check. 2022-06-20 12:12:36 +03:00
Alex Tselegidis
bf78545752 Apply rate-limiting only to HTTP requests 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
c0e7a082f3 Check both appointments and unavailabilities when generating available hours 2022-06-20 12:12:36 +03:00
Alex Tselegidis
c3b643376b Change the display of the appointment timezone information 2022-06-02 15:50:08 +02:00
Alex Tselegidis
2effec6c23 More color style fixes 2022-06-02 15:16:24 +02:00
Alex Tselegidis
b15a051ee3 Show an error when using a translation key that does not exist 2022-06-02 09:48:02 +02: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
9cab342719 Apply missing styles when overriding the default colors with the company colors 2022-06-02 09:19:23 +02:00
Alex Tselegidis
8df576fef4 Correct the path to the theme css file in installation and update page 2022-06-01 12:56:41 +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
d7e5817484 Hide the customer add button if the limit customer access setting is enabled 2022-05-27 09:27:25 +02:00
Alex Tselegidis
9108de8865 Apply the permissions library to the customers controller 2022-05-27 09:24:34 +02:00
Alex Tselegidis
df0105c65a Create the Permissions library with the "has_customer_access" method 2022-05-27 09:24:01 +02:00
Alex Tselegidis
2e21b05545 Rename the "limit_customer_visibility" setting to "limit_customer_access" 2022-05-27 09:23:38 +02:00
Alex Tselegidis
9b9888df47 Add new limit_customer_visibility setting (#1199) 2022-05-26 15:55:26 +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
72e84bd4f3 Group commonly used UI components to a single utility module 2022-05-26 15:17:33 +02:00
Alex Tselegidis
d30e83fb56 Add missing button icon margin 2022-05-26 14:54:22 +02:00
Alex Tselegidis
10e885225e Do not load the matomo script if the is no URL specified 2022-05-26 14:51:46 +02:00
Alex Tselegidis
906c91331f Rename unavailability dates to unavailable dates 2022-05-26 14:50:12 +02:00
Alex Tselegidis
15cf1cf2bf Correct exclude appointment condition 2022-05-26 14:47:12 +02:00
Alex Tselegidis
46e6661bde Add missing layout slot for styles 2022-05-24 10:47:33 +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
c85d47befc Change the default charset and collation 2022-05-20 18:28:13 +02:00
Alex Tselegidis
66106fcd18 Perform setting related migration improvements 2022-05-20 18:27:57 +02:00
Alex Tselegidis
14305d08cc Exclude booking pages from CSRF protection 2022-05-20 18:21:44 +02:00
Alex Tselegidis
905dd59425 Allow the user to select their own preferred language (#1263) 2022-05-20 18:15:14 +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
bea53207d9 Legend display issue in Firefox 2022-05-20 17:54:14 +02:00
Alex Tselegidis
6dce7b2f33 Merge branch 'mickemartinsson-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/controllers/Localization.php
#	application/core/EA_Controller.php
#	application/core/EA_Model.php
#	application/helpers/rate_limit_helper.php
#	application/language/swedish/translations_lang.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/frontend_book_success.js
#	assets/js/general_functions.js
#	assets/js/working_plan_exceptions_modal.js
#	composer.lock
#	gulpfile.js
#	index.php
#	package-lock.json
#	system/libraries/Email.php
2022-05-10 14:48:46 +02:00
Alex Tselegidis
d2e18c8287 Release v1.4.3 2022-05-10 14:46:14 +02:00
Alex Tselegidis
980fc3b6f7 Reduce the default rate limit duration to 2 minutes 2022-05-10 14:46:14 +02:00
Alex Tselegidis
9efb46ba4b Add missing customer data from stripped array 2022-05-10 14:46:14 +02:00
Alex Tselegidis
3c36724aae Release v1.4.3-beta.1 2022-05-10 14:46:14 +02:00
Alex Tselegidis
49e2808b98 Fix timezone issue with add-to-google link of the booking page (#1216) 2022-05-10 14:46:14 +02:00
Alex Tselegidis
a759cb89f7 Replace Google Client JS with the Google Calendar Template link in the book success page (#1216) 2022-05-10 14:46:14 +02:00
Alex Tselegidis
384d442409 Security configuration enhancements in the application (#1208) 2022-05-10 14:46:14 +02:00
Alex Tselegidis
886343f80c PHP 8.1 support (#1209) 2022-05-10 14:46:14 +02:00
Alex Tselegidis
617222ae2a Provider and secretary users can only add unavailabilities for their authorized users (#1214) 2022-05-10 14:46:14 +02:00
Alex Tselegidis
cc697fc09e The table calendar view breaks for secretaries and providers due to appointment and unavailability removals (#1211) 2022-05-10 14:46:14 +02:00
Alex Tselegidis
9b70a9bd5c Remove the Google Calendar read-only scope use as it is not needed (#1212) 2022-05-10 14:46:14 +02:00
Alex Tselegidis
17e68c9726 Switch to go-to-latest database migration configuration for simplicity (#1213) 2022-05-10 14:46:14 +02:00
Alex Tselegidis
3dd57021e2 Move the change language operation into a new public controller (#1210) 2022-05-10 14:46:14 +02:00
Alex Tselegidis
10a5eb46f9 Remove the Google Calendar read-only scope use as it is not needed (#1212) 2022-05-10 14:46:14 +02:00
Alex Tselegidis
0bb7a0e537 PHP 8.1 support (#1209) 2022-05-10 14:46:14 +02:00
Alex Tselegidis
d4b69cd553 Update italian translation 2022-05-10 14:45:09 +02:00
Alex Tselegidis
353a13fa38 Soft-Delete customer appointments when deleting a customer. 2022-05-10 14:40:19 +02:00
Alex Tselegidis
739d26d914
Merge pull request #1248 from JanC/content-type-fix
Better content type header parsing
2022-05-10 14:33:09 +02:00
Alex Tselegidis
6b738a1ea5 Check only in the non-deleted customers, when validating the email address (#1246) 2022-05-10 14:28:56 +02:00
Alex Tselegidis
98bf660aa2 Correct permissions for the customers controller 2022-05-10 14:28:56 +02:00
Alex Tselegidis
75542d48c0 Replace double quote with single quote 2022-05-10 14:28:55 +02:00
Alex Tselegidis
5de23ab889
Merge pull request #1242 from JanC/1241-trim-baseurl
[1241] Trim base url slashes
2022-05-10 13:42:10 +02:00
Alex Tselegidis
b949375fe6
Merge pull request #1240 from JanC/1239-secretary-fix
[1239] Fix Secretary cannot book a new appointment
2022-05-10 13:40:49 +02:00
Alex Tselegidis
5bfdd57db8
Merge pull request #1229 from tanielkirikal/develop
Add Estonian translation
2022-05-10 13:14:29 +02:00
Alex Tselegidis
e3d3673ebf Add max password length constant 2022-05-09 23:26:46 +02:00
Alex Tselegidis
63dbb51dec Check the role slug in Api.php 2022-05-09 23:26:28 +02:00
Alex Tselegidis
f0e976c9ac Update Catalan translation (thanks to Marc Folch) 2022-04-25 14:10:23 +02:00
Alex Tselegidis
899de8f029 Update turkish translation (thanks to Doğukan Sahil) 2022-04-25 14:08:20 +02:00
Jan Chaloupecky
a8ef23f81d Better content type header parsing 2022-04-25 10:12:01 +02:00
Jan Chaloupecky
c7437fddc1 Fixed base url trailing slash 2022-04-22 13:27:33 +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
c332a3621e Add serbian translation 2022-04-19 09:12:49 +02:00
Alex Tselegidis
326c86f94e Update rate limit function signature 2022-04-19 09:12:49 +02:00
tanielkirikal
083e747740
Update translations_lang.php 2022-04-01 12:02:36 +03:00
tanielkirikal
6b12815f4b
Update translations_lang.php 2022-03-31 17:27:22 +03:00
tanielkirikal
5036c90222
Add estonian language to config.php 2022-03-31 17:10:10 +03:00
tanielkirikal
c48579b906
Add estonian translation 2022-03-31 17:08:04 +03:00
Alex Tselegidis
76f9d2c6b8 Release v1.5.0-dev.2 2022-03-29 12:01:06 +02:00
Alex Tselegidis
0564ded317 Perform various DB migration fixes and improvements 2022-03-29 10:35:50 +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
c5ab2849cd Change login URL in the installation template 2022-03-29 09:58:31 +02:00
Alex Tselegidis
942cb3d46f Update the usage of the localization http client across all layouts and pages 2022-03-28 08:33:45 +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
cb410f739d Merge unset statements wherever possible 2022-03-25 12:46:49 +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
afe21e3960 Set the create_datetime value when creating a new consent 2022-03-25 12:43:23 +01:00
Alex Tselegidis
62d3a00fd9 Remove unnecessary file (post-merge fix) 2022-03-25 12:40:48 +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
0452e9543d Perform styling improvements in final booking step 2022-03-25 11:09:29 +01:00
Alex Tselegidis
2d88e720ae Add more contrast 2022-03-25 11:02:07 +01:00
Alex Tselegidis
328dc1b0ee Auto load the new rate limit helper 2022-03-25 10:58:17 +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
44af526a6f Release v1.4.3 2022-03-08 18:27:15 +01:00
Alex Tselegidis
c1a8dba1a3 Reduce the default rate limit duration to 2 minutes 2022-03-08 17:25:25 +01:00
Alex Tselegidis
293f4fe663 Add missing customer data from stripped array 2022-03-04 18:04:53 +01:00
Alex Tselegidis
16613905ba Release v1.4.3-beta.1 2022-02-25 11:19:40 +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
9c87d53079 Remove the Google Calendar read-only scope use as it is not needed (#1212) 2022-02-23 11:33:26 +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
5569369b15 Remove the Google Calendar read-only scope use as it is not needed (#1212) 2022-02-23 11:02:09 +01:00
Alex Tselegidis
ed178ca631 PHP 8.1 support (#1209) 2022-02-23 09:35:50 +01:00
Alex Tselegidis
c133b24874 Remove unused "render" helper file from the project as it is no longer used (use the components instead). 2022-02-10 20:57:38 +01:00
Alex Tselegidis
3d71f019e2 Add missing parameter to Secretaries_model.php 2022-02-10 20:54:27 +01:00
Alex Tselegidis
6d404b0a9a The installation page uses the custom bootstrap style. 2022-02-10 20:54:15 +01:00
Alex Tselegidis
7fdc5cf7fe Correct the installation page (#1187) 2022-02-10 20:40:44 +01:00
Alex Tselegidis
5378bc4940
Merge branch 'develop' into develop 2022-02-10 20:28:29 +01:00
mickemartinsson
f090dbfc5a Swedish translation
New and updated translation to Swedish
2022-02-05 08:53:11 +01:00
Alex Tselegidis
050478492c Make the captcha challenges more user friendly. 2022-01-26 22:04:33 +01:00
Alex Tselegidis
4410c5fb8c Release v1.5.0-dev.1 2022-01-25 00:11:51 +01:00
Alex Tselegidis
24f6b5b4e9 Move cache busting parameter out of config.php 2022-01-25 00:11:43 +01:00
Alex Tselegidis
ccc503e618 Touch the new timestamp fields on insert/update. 2022-01-24 23:42:13 +01:00
Alex Tselegidis
2c203ae1aa Add support for soft appointment, service, customer and provider removals (#1115). 2022-01-24 23:32:42 +01:00
Alex Tselegidis
4c0793129d The calendar will ask for the kind of event to be added after selecting time slots with the mouse. 2022-01-24 22:55:35 +01:00
Alex Tselegidis
987dc4aaeb Add missing "me-2" class to sync button. 2022-01-24 22:41:09 +01:00
Alex Tselegidis
03010184f6 Improve the display of the booking link for services, providers and service-provider combinations. 2022-01-24 22:37:05 +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
d4d7fd13d0 Add a border between the display selected service and provider provider 2022-01-24 21:23:41 +01:00
Alex Tselegidis
9271c21fba Optimize column display in the booking page. 2022-01-24 21:15:33 +01:00
Alex Tselegidis
ab4e404fac The display-selected-service and display-selected-provider elements will be invisible by default. 2022-01-24 21:05:43 +01:00
Alex Tselegidis
442c644c01 Move the terms and privacy checkbox to the last step. 2022-01-24 21:04:03 +01:00
Alex Tselegidis
d580463977 Add reset company color button so that the color can be easily switched back to the original state. 2022-01-24 20:58:15 +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
cd51576217 Update about page content 2022-01-24 17:43:44 +01:00
Alex Tselegidis
ca01a25e19 Load the new file utility for on layout files. 2022-01-24 17:11:13 +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
e1fe30d73b Update the backend header setting menu item titles. 2022-01-24 15:56:14 +01:00
Alex Tselegidis
ff5b03fe53 Bottom margin between legal setting contents. 2022-01-24 15:53:07 +01:00
Alex Tselegidis
e659bd6e08 Add soft phone number validation (#820). 2022-01-24 15:48:20 +01:00
Alex Tselegidis
08f09d66a9 Change placeholder service and provider text. 2022-01-24 15:47:02 +01:00
Alex Tselegidis
f31fcfbca7 Company name styling. 2022-01-24 15:45:24 +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
5982a79852 Skip the first booking step if both service and provider were preselected (#1117). 2022-01-24 15:22:34 +01:00
Alex Tselegidis
296cfd31c9 Reduce margin in booking_settings.php template. 2022-01-24 14:20:09 +01:00
Alex Tselegidis
a91d6c0ce6 Language selection bg color in backend pages. 2022-01-24 14:18:47 +01:00
Alex Tselegidis
5ca7d93781 Change the dropdown-menu-right to dropdown-menu-end (bootstrap v5). 2022-01-24 13:48:06 +01:00
Alex Tselegidis
ad8308794c The login/logout/recovery page have a better structure. 2022-01-24 13:42:13 +01:00
Alex Tselegidis
becf82ad67 Change the success elements with the primary brand 2022-01-24 13:41:59 +01:00
Alex Tselegidis
aa00c97fb3 Styling changes to the booking cancellation frame. 2022-01-24 13:28:29 +01:00
Alex Tselegidis
7d9e3279bf Booking message styling updates. 2022-01-24 13:12:44 +01:00
Alex Tselegidis
500bf90cd1 Correct variable initialization for booking cancellation frame. 2022-01-24 13:09:57 +01:00
Alex Tselegidis
79652feba9 Booking confirmation styling updates. 2022-01-24 12:58:48 +01:00
Alex Tselegidis
e07f47b30b Import new bootwatch theme and adjust the styling of the app elements for better display 2022-01-24 12:55:45 +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
88b8742b10 Move the analytics script to the booking message page 2022-01-19 10:25:04 +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
37163c9bf5 Remove unnecessary phpdoc blocks. 2022-01-19 10:00:30 +01:00
Alex Tselegidis
fbb9baec50 Change display of read only field (remove border). 2022-01-19 09:39:13 +01:00
Alex Tselegidis
573786bb65 Set the default appointment color upon registration. 2022-01-19 09:11:42 +01:00
Alex Tselegidis
0f0b3c114e Apply the new color selection component to the appointments modal. 2022-01-18 19:01:26 +01:00
Alex Tselegidis
73a6c791ec Apply the new color selection component to services. 2022-01-18 18:54:44 +01:00
Alex Tselegidis
a72dd9edb5 Create new color selection component. 2022-01-18 18:54:36 +01:00
Alex Tselegidis
36cf005da2 Add "color" to translation files. 2022-01-18 18:54:22 +01:00
Alex Tselegidis
932d8d7ca1 Change default color for color column. 2022-01-18 18:54:11 +01:00
Alex Tselegidis
25f533df39 The service and appointment models support color API encoding/decoding. 2022-01-18 18:22:24 +01:00
Alex Tselegidis
df1d4fdeea Add color columns on service and appointment tables (#422). 2022-01-18 18:22:00 +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
2e28567e7f Keep the calendar view to table when clicking on the backend header menu item. 2022-01-18 17:05:11 +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
a762a37d7b Fix working plan save and delete methods. 2022-01-18 15:50:38 +01:00
Alex Tselegidis
d8d12c4c9f Correct GPL license link in about page 2022-01-18 13:33:00 +01:00
Alex Tselegidis
54e4c208a3 Update the project subtitle. 2022-01-18 13:05:42 +01:00
Alex Tselegidis
0768c07be6 Correct the update css name 2022-01-18 12:56:54 +01:00
Alex Tselegidis
09775d25d5 Rename all "unavailable" occurrences to "unavailability" for consistency. 2022-01-18 12:54:41 +01:00
Alex Tselegidis
7d8bbe5b61 Remove the general_functions.js file. 2022-01-18 12:32:11 +01:00
Alex Tselegidis
f7bebedf61 Add deprecated phpdoc tag to Backend.php and Backend_api.php files. 2022-01-18 12:06:20 +01:00
Alex Tselegidis
1fb9983cd7 Update the Backend_api controller class with the deprecation notice and redirect all requests to the new controllers. 2022-01-18 12:05:07 +01:00
Alex Tselegidis
fa60eec728 Remove "ajax_" prefix from calendar controller. 2022-01-18 11:49:17 +01:00
Alex Tselegidis
fac8ff87d2 Correct backend links. 2022-01-18 11:49:16 +01:00
Alex Tselegidis
ef3324d3b8 Update the Backend controller class with the deprecation notice and redirect all requests to the new controllers. 2022-01-18 11:45:44 +01:00
Alex Tselegidis
253286f0ec Remove availableLanguages instantiation (not needed any more). 2022-01-18 11:15:13 +01:00
Alex Tselegidis
a7077ef642 Make sure that component view files are reusable by only using the local variables instead of the global ones. 2022-01-18 11:04:08 +01:00
Alex Tselegidis
626d8b86a1 The component helper function will now have a single vars argument for both attributes and params. 2022-01-18 11:03:44 +01:00
Alex Tselegidis
c9fd813d0b Remove attribute from js script components. 2022-01-18 10:43:40 +01:00
Alex Tselegidis
49585d388d Use the component helper for rendering the timezone dropdown in account page. 2022-01-18 10:35:34 +01:00
Alex Tselegidis
d2fb826f8f Use the component helper for rendering the timezone dropdown in admins page. 2022-01-18 10:34:53 +01:00
Alex Tselegidis
8bc1f49613 Remove prefix from admins HTML elements 2022-01-18 10:33:59 +01:00
Alex Tselegidis
65d2836911 The timezone component must not use the global vars when rendering. 2022-01-18 10:32:30 +01:00
Alex Tselegidis
837bcab4fc Remove prefix from secretaries HTML elements 2022-01-18 10:05:17 +01:00
Alex Tselegidis
cacc84fd74 Remove prefix from providers HTML elements 2022-01-18 09:40:19 +01:00
Alex Tselegidis
e23bdbb45f Render with the html_vars helper. 2022-01-18 09:40:13 +01:00
Alex Tselegidis
cf1fe8d537 Remove prefix from category HTML elements 2022-01-18 09:31:19 +01:00
Alex Tselegidis
b7d9efe7c3 Remove prefix from service HTML elements 2022-01-18 09:29:56 +01:00
Alex Tselegidis
1690ba7b10 Remove unused "users.php" view file. 2022-01-18 08:45:15 +01:00
Alex Tselegidis
9f08ce329e Replace direct use of variables inside views with the new "vars" helper method. 2022-01-18 08:45:02 +01:00
Alex Tselegidis
8dad2d9624 Replace the global App.Lang with the "lang" helper method, which is more appropriate due to the dynamic load of script translation strings. 2022-01-18 08:22:25 +01:00
Alex Tselegidis
e93565500d Replace the global App.Vars with the "vars" helper method, which is more appropriate due to the dynamic load of script vars. 2022-01-18 08:18:22 +01:00
Alex Tselegidis
ca4e58313a Pull the available languages from the App.Vars.* object. 2022-01-18 07:20:04 +01:00
Alex Tselegidis
6589e4e5c8 The scripts section must be at the bottom of the file. 2022-01-17 21:18:59 +01:00
Alex Tselegidis
7ca93f5eeb Pass the calendar view to both the html and script vars 2022-01-17 21:18:43 +01:00
Alex Tselegidis
0da73ab43e Remove the "ajax_" prefix from all new AJAX endpoints. 2022-01-17 19:44:44 +01:00
Alex Tselegidis
8d93f283f8 Redirect to the login page if the user is not logged in or display the no permissions message when the permissions are insufficient. 2022-01-17 18:24:02 +01:00
Alex Tselegidis
3c0f925596 Login works again using the new login HTTP client. 2022-01-17 18:23:11 +01:00
Alex Tselegidis
4580d095ee Automatically load the common utility modules directly inside layout view files. 2022-01-17 18:21:44 +01:00
Alex Tselegidis
a8b5062bd3 Correct login href value based on logged-in state. 2022-01-17 18:06:31 +01:00
Alex Tselegidis
2b0eb8d18b Remove remanining GlobalVariables occurrences. 2022-01-17 18:02:50 +01:00
Alex Tselegidis
46f0a27998 The layout modules will initialize the language selection on their own. 2022-01-17 17:54:30 +01:00
Alex Tselegidis
d333869952 Port the change language callback to the Account controller. 2022-01-17 17:42:47 +01:00
Alex Tselegidis
390d66f8d2 Code refactoring and improvements for the recovery page. 2022-01-17 14:45:20 +01:00
Alex Tselegidis
1ebc50893e Code refactoring and improvements for the unavailabilities modal component. 2022-01-17 04:46:18 +01:00
Alex Tselegidis
f2c40a58b2 Rename the manage-unavailable-modal to unavailabilities-modal 2022-01-14 08:43:53 +01:00
Alex Tselegidis
7126d75988 Rename the manage-appointment-modal to appointments-modal 2022-01-14 08:39:11 +01:00
Alex Tselegidis
778edf0b21 Redirect to "calendar" route instead of "backend" after a successful log in. 2022-01-14 08:34:28 +01:00
Alex Tselegidis
f327fd5221 Refactor the booking confirmation related JS files so that they become standalone modules. 2022-01-13 11:33:46 +01:00
Alex Tselegidis
43ad017d7a Refactor the booking related JS files so that they become standalone modules. 2022-01-13 11:33:40 +01:00
Alex Tselegidis
795eccb165 The booking footer "backend" link must point to the new calendar controller. 2022-01-13 11:33:19 +01:00
Alex Tselegidis
745f70848a Refactor the calendar related JS files so that they become standalone modules. 2022-01-12 11:22:54 +01:00
Alex Tselegidis
44b438440b Add missing phpdoc template variable. 2022-01-12 11:20:07 +01:00
Alex Tselegidis
64eecc5895 Add missing utils to installations.php template. 2022-01-12 11:18:57 +01:00
Alex Tselegidis
21be3e7b50 Refactor the providers helper JS file so that it becomes a standalone module. 2022-01-11 10:54:46 +01:00
Alex Tselegidis
5e59c3b5a3 Add missing utulity scripts to business_settings.php. 2022-01-11 10:54:14 +01:00
Alex Tselegidis
c5a1c2a8c0 Add support for nested layout sections 2022-01-11 10:26:49 +01:00
Alex Tselegidis
0a005d570b Support multiple additions of the same section content 2022-01-11 10:11:09 +01:00
Alex Tselegidis
cd2fe86aa3 The working_plan_exceptions_modal.php will load its own script automatically 2022-01-10 09:38:06 +01:00
Alex Tselegidis
d574a3b981 Make sure the user ID and role slug are available on all backend pages. 2022-01-10 09:36:11 +01:00
Alex Tselegidis
e2bffc5e95 Refactor the categories helper JS file so that it becomes a standalone module. 2022-01-10 09:26:28 +01:00
Alex Tselegidis
195680e8b3 Refactor the services helper JS file so that it becomes a standalone module. 2022-01-10 09:16:28 +01:00
Alex Tselegidis
41f25026de Convert the secretaries page to the new js module structure. 2022-01-07 09:44:51 +01:00
Alex Tselegidis
30418468e8 Convert the admins page to the new js module structure. 2022-01-07 09:29:04 +01:00
Alex Tselegidis
7f4756a6df Correct input filter component and remove the clear button for other pages 2022-01-07 08:56:46 +01:00
Alex Tselegidis
7b54377f92 Correct input filter component and remove the clear button 2022-01-07 08:47:19 +01:00
Alex Tselegidis
fe06d8382e Add missing scripts to customers template 2022-01-07 08:42:28 +01:00
Alex Tselegidis
5f211ff005 Add the required script and html vars for the customers page to work. 2022-01-06 09:54:06 +01:00
Alex Tselegidis
1a2909f9d0 Removed the old customer javascript initialization code from customers.php 2022-01-06 09:52:27 +01:00
Alex Tselegidis
df84875314 Fine tuning the about page structure. 2022-01-05 09:16:23 +01:00
Alex Tselegidis
917f9c7ca4 Remove unnecessary loader calls 2022-01-05 09:08:50 +01:00
Alex Tselegidis
ae342f1671 Refactored the legal settings page functionality and structure 2022-01-05 09:08:39 +01:00
Alex Tselegidis
2589902a26 Changed menu item order 2022-01-05 08:37:42 +01:00
Alex Tselegidis
8065412915 Corrected section name in customers.php 2022-01-05 08:36:48 +01:00
Alex Tselegidis
4e9ed6bf52 Adjusted required customer fields based on booking to the appointments modal 2022-01-05 08:31:58 +01:00
Alex Tselegidis
d4005bd378 Adjusted required customer fields based on booking to the customers page 2022-01-05 08:31:57 +01:00
Alex Tselegidis
6ed5c8793e Removed semicolons 2022-01-05 08:12:06 +01:00
Alex Tselegidis
270b29dccc Removed unused variable 2022-01-05 08:06:56 +01:00
Alex Tselegidis
e4774ee991 Do not send an email to customer if no email is provided. 2021-12-20 09:39:01 +01:00
Alex Tselegidis
bd9b5f196a Customer model will honor the display/require settings 2021-12-20 09:38:51 +01:00
Alex Tselegidis
afad7920eb The booking page will render based on the selected displayed/required fields. 2021-12-20 09:38:37 +01:00
Alex Tselegidis
4eec5fbe46 Refactored the booking settings page functionality and structure 2021-12-20 09:16:44 +01:00
Alex Tselegidis
7799f08da6 The privileges variable is not needed by the account.php template 2021-12-20 09:16:05 +01:00
Alex Tselegidis
37c46c7286 Removed unnecessary validation from general settings 2021-12-20 09:15:05 +01:00
Alex Tselegidis
29423647b6 Added migration for displayed/required booking fields 2021-12-20 08:07:57 +01:00
Alex Tselegidis
745a2f7c67 Corrected field name in the downgrade method of a migration class 2021-12-20 07:09:23 +01:00
Alex Tselegidis
6017abea45 Refactored the business settings page functionality and structure 2021-12-18 21:36:25 +01:00
Alex Tselegidis
34fbd2060d Fixes on the general settings page 2021-12-18 21:06:24 +01:00
Alex Tselegidis
2342e0d3d0 Fixes on the general settings page 2021-12-18 21:04:59 +01:00
Alex Tselegidis
42ff670928 Refactored the general settings page functionality and structure 2021-12-18 20:53:59 +01:00
Alex Tselegidis
84df2423c2 Improved the footer display for mobile and desktop viewports 2021-12-18 19:32:26 +01:00
Alex Tselegidis
8ea5b1c4eb Removed the release label config form the app 2021-12-18 19:20:46 +01:00
Alex Tselegidis
3f35658643 HTML structure changes to the account page 2021-12-18 19:16:22 +01:00
Alex Tselegidis
a3282febc9 Added new callback to the account controller to validate usernames 2021-12-18 18:55:58 +01:00
Alex Tselegidis
f58d3b142b The user model can validate usernames 2021-12-18 18:55:42 +01:00
Alex Tselegidis
f0992fd4f6 Changed the account page attributes and added the validation script 2021-12-18 18:55:27 +01:00
Alex Tselegidis
c53cd000d8 Refactored the account page functionality and structure 2021-12-18 18:25:03 +01:00
Alex Tselegidis
a090b2eba9 Updated the file banner info 2021-12-18 17:44:07 +01:00
Alex Tselegidis
72bc5efe34 Removed obsolete permissions prop 2021-12-18 17:37:00 +01:00
Alex Tselegidis
526df6e4d7 Replaced the "show_error" with the "abort" equivalent 2021-12-18 17:32:05 +01:00
Alex Tselegidis
0ff19b050d Use the html_vars and script_vars for assigning the page variables 2021-12-18 17:22:40 +01:00
Alex Tselegidis
2cc3123a2f Added var tags in the template comments 2021-12-17 10:59:07 +01:00
Alex Tselegidis
5420ef1389 Updated the booking page so that it works with the new html_vars and script_vars helper functions. 2021-12-17 10:55:37 +01:00
Alex Tselegidis
74c48e8a9a Renamed and updated the js_lang_script and js_vars_script components 2021-12-17 10:55:10 +01:00
Alex Tselegidis
16cea9e6a9 Updated Login to use the script_vars helper function 2021-12-17 10:53:22 +01:00
Alex Tselegidis
a40bd3f6c6 Updated EA_Controller to use the script_vars helper function 2021-12-17 10:53:08 +01:00
Alex Tselegidis
238ca6c820 Renamed config helper methods to script_vars and html_vars for consistency 2021-12-17 10:52:46 +01:00
Alex Tselegidis
bd363d0725 Rename is_route helper functiont to is_callback 2021-12-17 10:36:47 +01:00
Alex Tselegidis
6c4a15b429 Treat undefined keys as NULL 2021-12-17 10:36:22 +01:00
Alex Tselegidis
5916ad47d1 Added support for the new "calendar/reschedule" callback 2021-12-17 09:20:54 +01:00
Alex Tselegidis
7b919e2c39 Changed reschedule links for both customer and provider 2021-12-17 09:19:31 +01:00
Alex Tselegidis
dbba0865e8 Removed caching from the settings helper as it may lead to unexpected behavior (if for example values get updated in another way). 2021-12-17 09:01:12 +01:00
Alex Tselegidis
bfe6664d58 Added new "page_vars" function that will handle the rendered page variables. 2021-12-17 08:46:47 +01:00
Alex Tselegidis
bfef58672c Added new "is_route" helper method 2021-12-17 08:45:28 +01:00
Alex Tselegidis
775d385e09 Added caching to the settings helper so that we avoid unnecessary queries to the database. 2021-12-17 08:44:38 +01:00
Alex Tselegidis
e071ec46dc Common CSRF token generation correctly 2021-12-16 08:45:55 +01:00
Alex Tselegidis
c49f141bbb Moved the booking confirmation and cancellation code out of the booking controller 2021-12-16 08:37:55 +01:00
Alex Tselegidis
bb3665272d Renamed language_script.php to js_language_script.php for clarity 2021-12-16 08:21:29 +01:00
Alex Tselegidis
c9d9153594 Renamed config_script.php to js_config_script.php for clarity 2021-12-16 08:20:10 +01:00
Alex Tselegidis
4ef2c0a9bb Changed cancellation frame view file name 2021-12-16 08:19:08 +01:00
Alex Tselegidis
1a0ed47fe3 Changed the names of the booking step components 2021-12-16 08:18:37 +01:00
Alex Tselegidis
3dee36d4c1 Moved booking sections into the components directory 2021-12-16 08:13:27 +01:00
Alex Tselegidis
dc8d6ad140 Update has its own controller class 2021-12-16 08:10:01 +01:00
Alex Tselegidis
ff03b71060 Replaced resource names with constants for "cannot" checks 2021-12-15 08:05:08 +01:00
Alex Tselegidis
568ff9be2e Renamed the service category resource to just category 2021-12-15 08:00:48 +01:00
Alex Tselegidis
41635413a1 Moved scripts to the script slot 2021-12-15 07:59:54 +01:00
Alex Tselegidis
16863bcf5b Renamed the id_service_categories field of services to id_categories 2021-12-15 07:45:41 +01:00
Alex Tselegidis
777dcb0d9e Reverted invalid migration changes 2021-12-15 07:41:05 +01:00
Alex Tselegidis
5d8a35f120 Renamed service categories table to categories 2021-12-15 07:31:42 +01:00
Alex Tselegidis
ba38392c46 Corrected validation check in routes.php file 2021-12-15 07:31:05 +01:00
Alex Tselegidis
c8bd47d1e5 Removed the "_page" postfix from page view files 2021-12-14 08:08:06 +01:00
Alex Tselegidis
12e4eebd1f Set the "dest_url" js config 2021-12-14 08:06:10 +01:00
Alex Tselegidis
e8a1976521 The dest_url may have not been set by all account layout pages 2021-12-14 08:05:49 +01:00
Alex Tselegidis
d1e79910a9 Moved scripts to the scripts section 2021-12-14 08:05:22 +01:00
Alex Tselegidis
58e38fd488 Load common JS config for all requests 2021-12-14 07:59:11 +01:00
Alex Tselegidis
c761f6d37c Use the js_config component in all pages 2021-12-14 07:52:41 +01:00
Alex Tselegidis
1eaa59d192 Corrected the js_config helper function 2021-12-14 07:51:26 +01:00
Alex Tselegidis
62a5ace98e Added the config_script.php file that will load the application config values to the global App object 2021-12-14 07:48:09 +01:00
Alex Tselegidis
29b22ece3c Added the js_config helper method that will assign public JS config values 2021-12-14 07:47:35 +01:00
Alex Tselegidis
9c44b8644f Renamed csrfToken var to csrf_token for consistency 2021-12-14 07:29:51 +01:00
Alex Tselegidis
6376fea885 Added the find method to controllers 2021-12-14 07:18:46 +01:00
Alex Tselegidis
d0ad54ce49 Replaced EALang with the global App.Lang object 2021-12-13 07:52:09 +01:00
Alex Tselegidis
4f9fbc05e3 Added the language script in the layout templates 2021-12-13 07:48:56 +01:00
Alex Tselegidis
530422608a Moved scripts inside the script section 2021-12-13 07:44:01 +01:00
Alex Tselegidis
a95df871b9 Load the app and the layout JS files 2021-12-13 07:41:02 +01:00
Alex Tselegidis
885dcbf5c8 Moved the footer and header templates to the component directory 2021-12-13 07:34:51 +01:00
Kim Holzmann
52ac27cee1 danish translation 2021-12-11 23:27:35 +01:00
Kim Holzmann
6c321b5c2c Update email_lang.php
Dansih translation
2021-12-11 23:15:11 +01:00
Kim Holzmann
cdd1e49a13 Danish translation
Danish translation
2021-12-11 23:12:11 +01:00
Alex Tselegidis
271be99f05 Layout view file improvements 2021-12-10 22:21:44 +01:00
Alex Tselegidis
450bc49932 Moved setting JS files to the pages directory. 2021-12-10 22:00:26 +01:00
Alex Tselegidis
bd412eba8e Refactored the installation page functionality 2021-12-10 09:12:08 +01:00
Alex Tselegidis
17b7ff6631 The login page now links to the new recovery route 2021-12-10 08:41:28 +01:00
Alex Tselegidis
6ab32781ad Moved the recovery functionality into its own controller and files 2021-12-10 08:41:16 +01:00
Alex Tselegidis
c00bfd9948 Changed var order 2021-12-10 08:34:56 +01:00
Alex Tselegidis
246d25c7f4 Moved the logout functionality into its own controller and files 2021-12-10 08:26:05 +01:00
Alex Tselegidis
63da7afce2 Renamed and moved the controller and view files of the settings page 2021-12-07 11:09:34 +01:00
Alex Tselegidis
622a4e9390 Moved the about controller and renamed the view file 2021-12-07 11:00:13 +01:00
Alex Tselegidis
523db7e5e3 Moved the login functionality into its own controller and files 2021-12-07 10:53:59 +01:00
Alex Tselegidis
db0b4fbdbd Removed the unused account_no_permissions_page.php file 2021-12-07 10:53:44 +01:00
Alex Tselegidis
cd5eff8819 Use the show_error function instead of the no-permissions callback 2021-12-07 10:53:20 +01:00
Alex Tselegidis
8528713ea2 Corrected script paths for the settings pages 2021-12-07 10:22:10 +01:00
Alex Tselegidis
f1849e3a16 Restructured the view/js/css files (flatter file structure) 2021-12-06 09:00:02 +01:00
Alex Tselegidis
e7d7307cd6 Corrected users menu item 2021-11-29 08:58:51 +01:00
Alex Tselegidis
617ada7641 Major assets restructuring (for better scalability). 2021-11-29 08:55:29 +01:00
Alex Tselegidis
3601cf14fc Footer styling 2021-11-29 08:12:02 +01:00
Alex Tselegidis
c188e678bc Link styling 2021-11-29 08:10:09 +01:00
Alex Tselegidis
ba3655266e Easily customize the bootstrap theme 2021-11-25 09:24:07 +01:00