Commit graph

616 commits

Author SHA1 Message Date
Alex Tselegidis
82b25b50ad Import the window moment object 2023-05-04 17:48:58 +02:00
Alex Tselegidis
230f052b9a Correct the min date of the booking datepicker so that it accepts the current date as a selection 2023-05-04 17:48:48 +02:00
Alex Tselegidis
0fbc3b906d Automatically store and remember the last selected filter item in the calendar page. 2023-05-04 12:00:17 +02:00
Alex Tselegidis
bf3f2d7131 Unselect the selected time of the calendar right after it is detected. 2023-05-04 11:57:02 +02:00
Alex Tselegidis
d3c96efac5 Enhance the booking info field display. 2023-05-04 11:52:54 +02:00
Alex Tselegidis
f285414391 Add an additional message parameter to define if a message is dismissible. 2023-05-04 11:36:49 +02:00
Alex Tselegidis
9bcc67ac89 Enable the nowIndicator in fullcalendar modules 2023-05-03 07:32:02 +02:00
Alex Tselegidis
f67097932f Do not display empty customer information in the booking confirmation step. 2023-05-03 07:25:31 +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
2255c84778 Escape the popover title for special HTML characters. 2023-04-05 15:38:17 +02:00
Alex Tselegidis
55b64d42ae Perform various styling changes to the fullcalendar widget 2023-03-20 08:56:02 +01:00
Alex Tselegidis
b3a82bf5f4 Make the notification button sm 2023-03-17 07:49:00 +01:00
Alex Tselegidis
8ea1567036 Correct the cookie notice condition check 2023-03-17 07:06:41 +01:00
Alex Tselegidis
5827a36d7a Remove unused method 2023-03-01 08:22:30 +01:00
Alex Tselegidis
f58016ba9d Fine tune the calendar selection callback 2023-03-01 08:22:15 +01:00
Alex Tselegidis
6226e0f86c Toggle the first booking step 2023-02-21 08:32:30 +01:00
Alex Tselegidis
01d03f50a6 Correct the display of the cancellation message box 2023-02-21 08:08:09 +01:00
Alex Tselegidis
6245d389b2 Comment updates 2023-02-21 08:06:36 +01:00
Alex Tselegidis
2999dcda87 Define local variables for UMD libraries 2023-02-21 08:05:55 +01:00
Alex Tselegidis
93fdbd875a Correct the message modal handling methods 2023-02-20 08:24:49 +01:00
Alex Tselegidis
efb9fda649 Correct flatpickr positioning issue on modals 2023-02-20 08:09:03 +01:00
Alex Tselegidis
0d52732489 Replace selector with variable 2023-02-20 08:06:12 +01:00
Alex Tselegidis
9ec281640e Fix working plan handling and refactor to arrow functions 2023-02-20 08:01:27 +01:00
Alex Tselegidis
c891985c1b Remove old jQuery UI timepicker call 2023-02-20 07:42:13 +01:00
Alex Tselegidis
c8bfb623e2 Apply the future booking limit to the booking page 2023-02-13 09:36:08 +01:00
Alex Tselegidis
7f534e51c7 Correct datepicker navigation issue in booking page 2023-02-13 09:13:36 +01:00
Alex Tselegidis
122759b531 Grey out the unavailable dates of the booking flatpickr instance 2023-02-10 13:38:00 +01:00
Alex Tselegidis
7b6565fe32 Replace the jQuery UI 'fade' easing with the jQuery fadeIn and fadeOut methods 2023-02-10 13:22:38 +01:00
Alex Tselegidis
dd3697c018 Change null default value with undefined 2023-02-07 09:29:12 +01:00
Alex Tselegidis
6deeee0812 Replace the datepicker of the booking page 2023-02-07 07:39:44 +01:00
Alex Tselegidis
5f8f5f5eb2 Replace the old date picker in the table view 2023-02-07 07:34:53 +01:00
Alex Tselegidis
0b444cc8ed Replace the old time pickers in the working plan handling 2023-02-07 07:31:12 +01:00
Alex Tselegidis
153ed1174b Correct initialize timepicker method use 2023-02-07 07:14:35 +01:00
Alex Tselegidis
0e0194c927 Replace the date time pickers in the backend section 2023-02-02 08:54:47 +01:00
Alex Tselegidis
5c1a6975f4 Replace the central date-time picker methods 2023-02-02 08:54:24 +01:00
Alex Tselegidis
99c7fe1403 Add the modal centered and scrollable to the message utility 2023-02-02 08:48:13 +01:00
Alex Tselegidis
280c9d0ebb Replace the toast function with a bootstrap equivalent 2023-01-27 15:54:59 +01:00
Alex Tselegidis
229a2aec90 Replace the show message function with a bootstrap equivalent (no jquery ui used any more) 2023-01-27 15:54:45 +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
4446f26399 Make the backend footer sticky and remove the "placeFooterToBottom" function 2023-01-14 09:40:18 +01:00
Alex Tselegidis
d19e8a3f84 Remove footer position adjustments (not needed any more) 2022-12-21 19:18:35 +01:00
Alex Tselegidis
d84e19b39f Correct the variable reference 2022-12-21 18:58:46 +01:00
Eero Jääskeläinen
e2fe600b94 CalendarTableView: Added missing declaration on unavailabilityPeriod 2022-11-17 12:53:44 +02:00
Alex Tselegidis
6eef401b5c Remove the initialize method of components from the list of the exposed module methods 2022-10-16 22:24:50 +03:00
Alex Tselegidis
e2c3137262 Improve the content of the calendar event popover widget 2022-10-16 22:03:29 +03:00
Alex Tselegidis
b2015052d8 Do not add a dash in the event title if there are no customer first and last name provided 2022-10-16 21:58:50 +03:00
Alex Tselegidis
bbf63001da Return null if the provided argument is empty 2022-10-16 21:55:59 +03:00
Alex Tselegidis
0f6df76667 Allow the users to define their own status and assign them to appointments (#244). 2022-10-16 21:54:26 +03:00
Alex Tselegidis
8449fd3d28 Fix the rescheduling functionality in the booking page 2022-10-16 18:07:45 +03:00
Alex Tselegidis
1fe33fb672 Correct the working_plan.js comment 2022-10-16 18:05:23 +03:00
Alex Tselegidis
37b165f8a2 Make sure the browser timezone is listed before preselecting it (otherwise use UTC) 2022-10-05 12:09:57 +03:00
Alex Tselegidis
436c49319c Fix the popover behavior in the calendar page 2022-10-03 17:06:01 +03:00
Alex Tselegidis
cc05380f2d Use a default value in case the timezone could not be detected 2022-10-03 17:06:01 +03:00
Alex Tselegidis
bd6ccfb55e Add missing parameter to the validate username function 2022-10-03 17:06:01 +03:00
Alex Tselegidis
efa2dbcba1 Make sure the right elements are being used for the booking wizard navigation 2022-09-18 16:14:29 +03:00
Alex Tselegidis
3c1d49dcb3 Fine tuning the styling of the booking-link elements 2022-09-14 13:01:07 +02:00
Alex Tselegidis
f28a8d032c Link labels to their corresponding checkbox so that they become easier to click 2022-09-14 12:34:04 +02:00
Alex Tselegidis
0beed86b3f The provider checkboxes must be disabled after the page renders 2022-09-14 12:01:46 +02:00
Alex Tselegidis
f92d43b407 Fix the event popover behavior after updating to the latest bootstrap. 2022-09-14 10:14:47 +02: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
91dff1efa6 Set default values for the user options 2022-07-26 17:12:06 +03:00
Alex Tselegidis
f6ad9bba25 Remove debugger statement 2022-07-26 17:10:20 +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
95450932a7 Correct typo in booking.js 2022-07-26 16:19:29 +03:00
Alex Tselegidis
71e12a1aae The search method parameters are optional 2022-06-21 13:02:10 +03:00
Alex Tselegidis
0576e69ad5 Change the private field id attribute for consistency 2022-06-21 12:59:24 +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
7cbce26160 Correct calendar rendering in table view 2022-06-02 09:37:43 +02:00
Alex Tselegidis
ca7727dfaa Correct event name for toggling BS tabs 2022-06-02 09:14:38 +02:00
Alex Tselegidis
8a5e4a67b0 Use no-value placeholders in the appointments modal 2022-05-27 09:29:19 +02:00
Alex Tselegidis
e390ab6b42 The filter HTML will use no-value placeholders for empty fields 2022-05-27 09:25:21 +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
906c91331f Rename unavailability dates to unavailable dates 2022-05-26 14:50:12 +02:00
Alex Tselegidis
d6e913edd8 Change the table view slot time format (consistent with default view) 2022-05-26 14:47:12 +02:00
Alex Tselegidis
995b995aba
Merge pull request #1267 from jeroenvds/patch-1
Fix unavailability in calendar while booking
2022-05-26 14:47:06 +02:00
Alex Tselegidis
a9a72e503d Use the default service duration if the user just clicks on a calendar slot for creating a new appointment (#1237) 2022-05-26 14:26:36 +02:00
Alex Tselegidis
ae71c4c89d Make sure the right provider timezone information is displayed in the appointment and unavailability modals 2022-05-24 10:47:56 +02:00
jeroenvds
148b5df302
Fix unavailability in calendar while booking
Use moment set date for setting the day of the month. Day is used for day of the week.
2022-05-23 17:56:11 +02:00
Alex Tselegidis
b253a002a8 Do no to overwrite the password when updating the account info 2022-05-20 18:15:14 +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
0e316e7dea
Merge pull request #1206 from albertsalles4/develop
Fix Datepicker in Backend's Calendar Header does not change accordinly to language and first day #1201
2022-05-10 14:34:25 +02:00
Alex Tselegidis
403edba15f
Merge pull request #1245 from JanC/1244-secreterie-providers
[1244] Fix providers not visible for secretaries
2022-05-10 13:51:44 +02:00
Jan Chaloupecky
b87f7aa1b3 fix providers not visible for secretaries 2022-04-22 15:15:42 +02:00
Jan Chaloupecky
ae171b3ffb Validate email address only when it's set 2022-04-22 14:24:20 +02:00
Alex Tselegidis
c8b6f0fb1c Empty the available hours list before rendering the new time 2022-04-11 13:03:47 +02:00
Alex Tselegidis
ae2fc9ef99 Set overflow-auto to the error message container for better display 2022-03-29 10:49:15 +02:00
Alex Tselegidis
09711853a6 Do not display a message if there's no content 2022-03-29 10:48:55 +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
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
ce028607c2 Remove unnecessary file (post-merge fix) 2022-03-28 08:17:42 +02: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
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
13e81c80b1 Make sure the window.cookieconsent object is loaded before using it, as some browsers or extensions might block it 2022-03-08 17:31:33 +01:00
Alex Tselegidis
53993b2994 Do not display empty messages 2022-03-08 17:21:11 +01:00
Alex Tselegidis
09444c1b5e Only show the any-provider option if there are more than one providers 2022-03-08 17:01:25 +01:00
Alex Tselegidis
95fbbeec27 Prepend the any-provider option in the booking page 2022-03-08 17:00:33 +01:00
Alex Tselegidis
1bc02e11c0 Corrected working plan exception removal issue on table view 2022-03-08 16:45:01 +01:00
Alex Tselegidis
803f4e4e7e Reset add-break button disabled state 2022-03-08 16:32:45 +01:00
Alex Tselegidis
89acfafcce Improve popover handling while reloading appointments 2022-03-02 13:28:20 +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
cc5d219311 Provider and secretary users can only add unavailabilities for their authorized users (#1214) 2022-02-23 12:00:39 +01:00
Alex Tselegidis
1cf4f5246f Move the change language operation into a new public controller (#1210) 2022-02-23 11:09:24 +01:00
albertsalles4
1732a39965 Fix Datepicker in Backend's Calendar Header does not change accordinly to language and first day #1201 2022-02-22 12:04:20 +01:00
Alex Tselegidis
ab7ba646a8 Add global JS error handling for HTTP requests. 2022-02-10 20:54:05 +01:00
Alex Tselegidis
0a4ea1c336 Only pre-select the service if its found 2022-02-10 20:34:59 +01:00
Alex Tselegidis
05e6704e67 Secondary info wrapped in small tag and using text-muted class. 2022-01-26 21:27:57 +01:00
Alex Tselegidis
72baa18b86 Prefill the form field though url parameters (#1021). 2022-01-24 23:57:59 +01:00
Alex Tselegidis
9097a968ca Skip the first booking step when only one service and one provider are available (#349). 2022-01-24 23:53:06 +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
b968970fa6 Correct slot label format for default view. 2022-01-24 22:43:18 +01:00
Alex Tselegidis
b6e9a7209f Select appointment time from within the calendar when "all" select filter item is selected. 2022-01-24 22:40:35 +01:00
Alex Tselegidis
5df3e63055 Correct deserialize general settings method. 2022-01-24 22:38:45 +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
0bbbff47c8 Correct reload call (not in select filter item callback). 2022-01-24 22:00:47 +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
9271c21fba Optimize column display in the booking page. 2022-01-24 21:15:33 +01:00
Alex Tselegidis
8a02d5bf0a Remove the dashes from the any-provider option. 2022-01-24 21:06:06 +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
86d3ce8dc9 Change the phone number validation regex. 2022-01-24 20:44:59 +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
598fda9dfc Add file utility module. 2022-01-24 17:07:46 +01:00
Alex Tselegidis
617ee37ec7 Comment fix 2022-01-24 17:05:38 +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
e659bd6e08 Add soft phone number validation (#820). 2022-01-24 15:48:20 +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
93aab06187 Correct argument value. 2022-01-24 15:08:30 +01:00
Alex Tselegidis
652f96f53b Use translation key instead of hard coded title. 2022-01-24 14:23:29 +01:00
Alex Tselegidis
aa71d8afad Change the call-to-action message button to "delete" instead of "ok". 2022-01-24 14:11:15 +01:00
Alex Tselegidis
be985b3912 Message box button styling. 2022-01-24 14:10:49 +01:00
Alex Tselegidis
fbb9baec50 Change display of read only field (remove border). 2022-01-19 09:39:13 +01:00
Alex Tselegidis
3594bb8294 Use the appointment color value when rendering the appointments on the calendar. 2022-01-18 19:03:06 +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
76f5324901 Correct delta prop name and rename calendar-event related callback methods. 2022-01-18 17:40:43 +01:00
Alex Tselegidis
e636ec2986 Update the table view so that it works with FullCalendar 5 2022-01-18 17:38:57 +01:00
Alex Tselegidis
ba175fab7f Trigger the "click" event on the reload appointments button. 2022-01-18 17:38:25 +01:00