Commit graph

1377 commits

Author SHA1 Message Date
Alex Tselegidis
ae26a5f397 Add Open Graph information to the public booking page so that it renders nicely once shared on social media apps (#1382) 2023-07-11 07:58:57 +02:00
Alex Tselegidis
36937a6492 Remove the Google Product Name and Google API Key config values as they are no longer needed 2023-07-11 07:50:16 +02:00
Alex Tselegidis
87e27d4070 Use the unavailabilities model to save the sync events (#1363) 2023-07-11 07:46:28 +02:00
Alex Tselegidis
5473544258 Allow working plan exceptions to be defined as non-working days (#1383). 2023-07-10 08:22:55 +02:00
Alex Tselegidis
198c855b74 Update the newer german translation strings 2023-07-05 17:39:35 +02:00
Alex Tselegidis
ebe8f84ba1 Release v1.5.0-dev.4 2023-07-03 10:42:02 +02:00
Alex Tselegidis
a9798bf27e Set the correct HTML language code 2023-07-03 10:27:23 +02:00
Alex Tselegidis
674d7c4eeb Correct the array key access in Google.php (#1362) 2023-07-03 10:21:46 +02:00
Alex Tselegidis
a225019f6f Add the Google "notranslate" meta to all layouts (#1360) 2023-07-03 10:19:05 +02:00
Alex Tselegidis
9828cd2fbf Add the service description to the appointment email notifications (#1374). 2023-07-03 10:07:10 +02:00
Alex Tselegidis
66dfd36d6d Fix the booking settings require-notes setting application, as it should check on the appointment notes and not the customer ones 2023-06-30 19:04:35 +02:00
Alex Tselegidis
d055d10610 Add "notes" to the whitelisted field list 2023-06-21 09:50:52 +03:00
Ronan LE MEILLAT
5cd3d9284a French translations 2023-06-13 15:05:52 +02:00
Ronan LE MEILLAT
ea1ff5fd1a missing \ 2023-06-13 14:00:33 +02:00
Ronan LE MEILLAT
0bcfd016c1 Update french translations 2023-06-13 11:59:39 +02:00
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