Commit graph

1362 commits

Author SHA1 Message Date
Alex Tselegidis
8dbe0842d8 Add Swedish as a selectable language in the web-ui (#1369). 2023-06-12 12:50:37 +02:00
Alex Tselegidis
2f69be2bd0 Update the equivalent appointment removal action of the calendar table view. 2023-06-01 14:30:08 +02:00
Alex Tselegidis
8e37e54bdb Refactor the calendar page appointment removal so that it also uses a request parameter called "cancellation_reason", just like the public booking page does. 2023-06-01 14:25:02 +02:00
Alex Tselegidis
531496f06a Convert the appointment hours of the email notifications to match the right timezone 2023-05-04 18:09:57 +02:00
Alex Tselegidis
cfac49e920 Update the method names of the library. 2023-05-04 18:02:40 +02:00
Alex Tselegidis
890e3ac4d9 Order the records by update datetime to avoid them missing in the UI 2023-05-04 17:55:29 +02:00
Alex Tselegidis
d3c96efac5 Enhance the booking info field display. 2023-05-04 11:52:54 +02:00
Alex Tselegidis
fbd3273864 Align the booking info fields to the top. 2023-05-04 11:43:59 +02:00
Alex Tselegidis
6050e6eb71 Add missing API fields 2023-05-04 11:32:40 +02:00
Alex Tselegidis
fa8b8459d4 Avoid null argument values passed to the PHP function 2023-05-04 11:32:32 +02:00
Alex Tselegidis
36ff857c4d Update the timezone info styling in the appointments and unavailability modals 2023-05-03 07:51:53 +02:00
Alex Tselegidis
4a0f1a1354 Position the booking confirmation text in the center. 2023-05-03 07:28:16 +02:00
Alex Tselegidis
fb7b2af812 Re-enable the captcha image distortion. 2023-05-03 07:26:39 +02:00
Alex Tselegidis
1655b0df2d Correct the captcha builer php issues. 2023-05-03 07:21:20 +02:00
Alex Tselegidis
f13b1a17c4 Correct the API controller constructor methods. 2023-04-24 13:22:49 +02:00
Alex Tselegidis
7ffc249706 Release v1.5.0-dev.3 2023-04-24 10:13:55 +02:00
Alex Tselegidis
d1e1000cb4 The "id_categories" columnn is optional 2023-04-24 10:13:44 +02:00
Alex Tselegidis
f7be8a1e1d Center the email templates and set a min height for the content 2023-04-24 10:02:53 +02:00
Alex Tselegidis
791030ba60 Update the russian translation file 2023-04-24 09:43:28 +02:00
Alex Tselegidis
83a83755e4 Merge branch 'translaster-master' into develop 2023-04-24 09:43:03 +02:00
krote5k
01dfd12959 Russian translation is done 2023-04-17 15:17:47 +05:00
Alex Tselegidis
a5f5bbb071 Correct the german translation of "October" 2023-04-17 10:07:45 +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
c7a304c197 Add a method to quickly check if a provider is assigned to a secretary. 2023-04-15 14:34:42 +02:00
Alex Tselegidis
f540192570 Add helper methods to quickly check if a service is assigned to a provider 2023-04-15 14:34:23 +02:00
Alex Tselegidis
6fc45c3368 Correct the field filtering 2023-04-15 14:33:40 +02:00
Alex Tselegidis
46a865300e Escape the legal settings, service and category name in the booking page 2023-04-15 14:14:42 +02:00
Alex Tselegidis
bddc5cbeb7 Escape the user display name in the backend section 2023-04-15 14:03:51 +02:00
Alex Tselegidis
87a114af9c Update the return type. 2023-04-05 15:35:31 +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
ea3bdb17ee Add the "user-scalable=no" meta value 2023-03-22 10:05:41 +01:00
Alex Tselegidis
55b64d42ae Perform various styling changes to the fullcalendar widget 2023-03-20 08:56:02 +01:00
Alex Tselegidis
299842cdb2 Correct language name in translation file 2023-03-17 08:00:04 +01:00
Alex Tselegidis
7bfe16b6be Check on trashed items when fetching appointment information 2023-03-17 07:53:16 +01:00
Alex Tselegidis
dae737ad17 Add missing @throws tag 2023-03-17 07:20:29 +01:00
Alex Tselegidis
2b552c4535 Resolve various PHP inspection issues 2023-03-13 09:06:18 +01:00
Alex Tselegidis
7be4c73e4e Use the "end_section" html helper for better clarify on when a section starts and when it ends 2023-03-13 08:24:43 +01:00
Alex Tselegidis
453c6e1302 Apply the new escape helper function to the view files 2023-03-13 08:18:39 +01:00
Alex Tselegidis
9b66e9fedc Remove the escape function from the lang helper 2023-03-13 08:11:01 +01:00
Alex Tselegidis
35023fef06 Removed unused config item 2023-03-13 08:08:50 +01:00
Alex Tselegidis
9a6233ad3a Add a new string escape helper function 2023-03-13 08:08:43 +01:00
Alex Tselegidis
e1a8de1652 Do not allow a user to access the app if their account was removed. 2023-03-13 07:42:06 +01:00
Alex Tselegidis
f3a3fb047e Add the X-Frame-Options header to the app 2023-03-08 10:48:37 +01:00
Alex Tselegidis
af1904679e Add the croatian translation files 2023-03-06 10:42:50 +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
9e3611c547 Correct button display in mobile views 2023-03-01 08:21:57 +01:00
Alex Tselegidis
a04364adcd Remove unused config files 2023-03-01 07:45:09 +01:00
Alex Tselegidis
6226e0f86c Toggle the first booking step 2023-02-21 08:32:30 +01:00
Alex Tselegidis
9681e7d6ad Set the recipients timezone before sending the appointment email 2023-02-21 08:17:22 +01:00
Alex Tselegidis
ea30c62a84 Load required settings 2023-02-21 08:11:18 +01:00
Alex Tselegidis
c9715d7431 Script checks before rendering 2023-02-21 08:11:14 +01:00
Alex Tselegidis
a8996b6b99 Add the location and notes fields to the appointment email notifications (if a value was provided). (#1341) 2023-02-21 08:02:32 +01:00
Alex Tselegidis
ddee652231 Remove unnecessary cache load 2023-02-21 07:58:30 +01:00
Alex Tselegidis
4d79e1d3cf Improve the structure of the email notifications 2023-02-21 07:58:21 +01:00
Alex Tselegidis
c3aca37591 Add the "format_timezone" helper function 2023-02-21 07:44:34 +01:00
Alex Tselegidis
98976ee382 Wrap the date_helper.php functions with try-catch blocks 2023-02-20 08:57:50 +01:00
Alex Tselegidis
270c261a58 Add the date_helper.php to the project 2023-02-20 08:54:29 +01:00
Alex Tselegidis
697b3fa5a8 Refactor the email template HTML structure 2023-02-20 08:43:00 +01:00
Alex Tselegidis
9727d22205 Add a back link to the webhooks page 2023-02-20 08:35:29 +01:00
Alex Tselegidis
97382d8da3 Add missing JS file to business_settings.php 2023-02-20 08:17:48 +01:00
Alex Tselegidis
8ea9171ae2 Add label class 2023-02-20 07:46:02 +01:00
Alex Tselegidis
c8bfb623e2 Apply the future booking limit to the booking page 2023-02-13 09:36:08 +01:00
Alex Tselegidis
77256e502a Style the flatpickr in the booking page 2023-02-07 08:24:46 +01:00
Alex Tselegidis
85e0567b13 Remove jQuery UI from the app entirely 2023-02-07 07:43:14 +01:00
Alex Tselegidis
6356e9883f Correct CSS styling for booking page 2023-02-07 07:40:42 +01:00
Alex Tselegidis
6deeee0812 Replace the datepicker of the booking page 2023-02-07 07:39:44 +01:00
Alex Tselegidis
94570a3fdc Change the add button in the calendar page 2023-02-07 07:21:04 +01:00
Alex Tselegidis
0e0194c927 Replace the date time pickers in the backend section 2023-02-02 08:54:47 +01:00
Alex Tselegidis
629bdfc062 Add missing translations 2023-02-02 08:54:32 +01:00
Alex Tselegidis
deab447284 Make all the modals show in the center of the screen and add a scroll bar. 2023-02-02 08:25:10 +01:00
Alex Tselegidis
2298533426 Update the vendor packages of the project 2023-01-27 15:54:26 +01:00
Alex Tselegidis
abcc46db94 Add PHP8.2 support to the application 2023-01-26 09:17:45 +01:00
Alex Tselegidis
7343389f7b Correct the + symbol processing when sorting results in the API controllers (#1322) 2023-01-23 07:54:06 +01:00
Alex Tselegidis
c7371090ba Add missing API fields to Unavailabilities_model.php (#1323) 2023-01-23 07:50:24 +01:00
Alex Tselegidis
eb863ea044 Add missing API fields to Appointments_model.php 2023-01-23 07:50:13 +01:00
Alex Tselegidis
04f480c4c6 Remove duplicate command 2023-01-23 07:47:47 +01:00
Alex Tselegidis
07b628324d Add default values to the authentication parameters 2023-01-23 07:45:40 +01:00
Alex Tselegidis
f8925ddb0d Add the missing "only" filtering to the backend controllers. 2023-01-21 12:51:06 +01:00
Alex Tselegidis
b447751c39 Add the settings navigation sidebar to the integration sub-pages 2023-01-21 12:50:12 +01:00
Alex Tselegidis
1f9d82b18e Add a "back" button to the integrations page. 2023-01-21 12:46:06 +01:00
Alex Tselegidis
26dea7bcb6 Correct id attribute 2023-01-18 11:04:55 +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
cfe88f8901 Fix the condition check of the "get_setting" method of providers, secretaries and admins (#1327) 2023-01-14 10:15:06 +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
4446f26399 Make the backend footer sticky and remove the "placeFooterToBottom" function 2023-01-14 09:40:18 +01:00
Alex Tselegidis
b62e458258 Change the "value" method signature 2023-01-14 09:39:14 +01:00
Alex Tselegidis
2e3e766f73 Add missing field filtering and the optional model method 2023-01-14 09:38:49 +01:00
Alex Tselegidis
71fa900ea7 Move the date time picker addon to the layout file 2022-12-26 10:23:02 +01:00
Alex Tselegidis
d2c6d5a571 Add helper method for optional fields 2022-12-26 10:22:22 +01:00
Alex Tselegidis
f23c9aad49 Do not apply the limitation of customers if the corresponding setting is disabled 2022-12-21 19:09:21 +01:00
Alex Tselegidis
655d98fc69 Update Italian language
# Conflicts:
#	application/language/italian/translations_lang.php
2022-12-12 09:20:57 +01:00
Alex Tselegidis
0ee1f5cb0a Allow the user to filter by the entire user name 2022-12-12 09:19:14 +01:00
popod
e53683863d
Fix working_plan_exceptions inconsistency when empty 2022-12-03 17:17:40 +01:00
Alex Tselegidis
30c55a4666 Correct the validate username method 2022-11-30 11:53:45 +01:00
Alex Tselegidis
bc0de8ec53 Add a missing condition on permissions in Calendar.php 2022-11-30 11:22:48 +01:00
Alex Tselegidis
80e52ca36d Fix condition on new field migration files 2022-11-30 11:22:48 +01:00
Alex Tselegidis
c1c588be22 Correct the email mime type for the ICS file 2022-11-30 11:22:48 +01:00
Alex Tselegidis
8c91c86508 Do not take deleted records into concern 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
Eero Jääskeläinen
8c532d8552 Finnish: More linguistic duration text 2022-11-15 11:07:05 +02:00
Eero Jääskeläinen
1c67fc7ff6 Finnish translations 2022-11-09 09:14:07 +02:00
Alex Tselegidis
d8634dc366 Update the polish translation (thanks to #1312) 2022-10-19 16:12:07 +03: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
5431d25f0b Use variables by reference in the foreach loops of the models 2022-10-16 18:08:33 +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
581609ea43 Set the setting value correctly, if the setting-name argument was not found in the database 2022-10-16 18:06:17 +03:00
Alex Tselegidis
54bc07f62a Update the EA_Model::only method to use the array_fields function 2022-10-16 18:04:49 +03:00
Alex Tselegidis
98a0e07484 Add and autoload the array helper 2022-10-16 18:03:55 +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
8f2a6b4e33 Correct the column names in 025_rename_is_unavailable_column_of_appointments_table.php 2022-10-03 17:06:01 +03:00
Alex Tselegidis
6d413ffdfc Unset the "password" and "salt" parameter when getting a user or a provider 2022-10-03 17:06:01 +03:00
Alex Tselegidis
a01acc5773 The recovery page must link to the new login URL 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
218bbea800
Merge pull request #1308 from herzogmedia/220927_updateGerman
Update german language files
2022-10-03 10:39:04 +03:00
Lukas Herzog
1da9c2586d update german language strings 2022-09-27 18:29:02 +02:00
Alex Tselegidis
7e0e0b9d90 Change option heading in services page 2022-09-14 12:26:42 +02:00
Alex Tselegidis
482274afad Perform styling changes to the about page 2022-09-14 12:25:48 +02:00
Alex Tselegidis
10d0d7bb7d Update the headings of the appointment modal 2022-09-14 12:13:38 +02:00
Alex Tselegidis
d90fd06984 Adjust all the title page and section title markup 2022-09-14 12:02:26 +02:00
Alex Tselegidis
db31e7deb8 Correct the page title markup of settings pages 2022-09-14 10:30:52 +02:00
Alex Tselegidis
9be62e2c13 Update the integrations page styling 2022-09-14 10:24:46 +02:00
Alex Tselegidis
79ebeeb6bf Update the admin page heading styles 2022-09-14 10:15:09 +02:00
Alex Tselegidis
b6cc72cd06 Styling adjustments to the settings nav component and the settings pages 2022-09-14 10:14:19 +02:00
Alex Tselegidis
1340fa6e9f Update the settings related navigation 2022-07-27 02:45:52 +03:00
Alex Tselegidis
bb802e34e1 Move the notification check of the account page into an options frame 2022-07-27 02:29:00 +03:00
Alex Tselegidis
d408b6040a Make sure at least one field is displayed in the booking page 2022-07-27 02:26:19 +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
2f289b48cb Add missing translation keys to german, persian and portuguese-br 2022-07-26 17:19:45 +03:00
Alex Tselegidis
cd88e3d085 Rename the private checkbox to is-private to match the field name 2022-07-26 17:12:23 +03:00
Alex Tselegidis
369994f855 Remove the integrations section from the general settings page as it is replaced by the new integrations page 2022-07-26 16:52:32 +03:00
Alex Tselegidis
be0f473568 Add missing margin to add-break button 2022-07-26 16:51:43 +03:00
Alex Tselegidis
b5788d47d8 Change the "book advance timeout" label to "allow rescheduling/cancellation before" for better clarity 2022-07-26 16:51:02 +03:00
Alex Tselegidis
9d0ded1bd7 Change the account page title 2022-07-26 16:46:52 +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
0f67dbaddc Do not try to apply the company color style if no company color value is available 2022-07-26 16:40:53 +03:00
Alex Tselegidis
cec1ef6175 Add missing translations 2022-07-26 16:40:00 +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
13b1ad3966 Move the receive-notifications checkbox into a frame 2022-07-26 16:16:10 +03:00
Alex Tselegidis
48828d4dcf Move the private checkbox field into an "options" frame 2022-07-26 16:13:05 +03:00
Alex Tselegidis
2564ee0c36 Move the options frame before the description field 2022-07-26 16:11:43 +03:00
Alex Tselegidis
0051a6e607 Move the webhook notes field to the bottom of the page 2022-07-26 16:10:47 +03:00
Alex Tselegidis
63084a73e4 Correct library name typo 2022-07-26 16:09:36 +03:00
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