Changeset 3442071
- Timestamp:
- 01/18/2026 07:07:20 PM (2 months ago)
- Location:
- wappointment/trunk
- Files:
-
- 16 added
- 16 deleted
- 57 edited
-
app/Decorators/Service.php (modified) (1 diff)
-
app/Helpers/TipTap.php (modified) (2 diffs)
-
app/Installation/Migrate.php (modified) (1 diff)
-
app/Lists/email_tags.php (modified) (1 diff)
-
app/Lists/translations_clients.php (modified) (1 diff)
-
app/Lists/translations_settings.php (modified) (1 diff)
-
app/Lists/translations_wizard.php (modified) (1 diff)
-
app/Lists/widget_fields.php (modified) (1 diff)
-
app/Lists/widget_settings.php (modified) (3 diffs)
-
app/Lists/widget_translations.php (modified) (1 diff)
-
app/Messages/AdminGeneratesDefault.php (modified) (1 diff)
-
app/Models/Appointment.php (modified) (2 diffs)
-
app/Models/Appointment/ManipulateDotcom.php (modified) (1 diff)
-
app/Models/Appointment/ManipulateLocation.php (modified) (2 diffs)
-
app/Models/Appointment/ManipulateType.php (modified) (2 diffs)
-
app/Models/Client.php (modified) (1 diff)
-
app/Models/Location.php (modified) (1 diff)
-
app/Models/Reminder.php (modified) (1 diff)
-
app/Repositories/Availability.php (modified) (1 diff)
-
app/Services/AdminLegacy.php (modified) (2 diffs)
-
app/Services/Client.php (modified) (1 diff)
-
app/Services/ClientLegacy.php (modified) (2 diffs)
-
app/Services/CustomFields.php (modified) (1 diff)
-
app/Services/DateTime.php (modified) (1 diff)
-
app/Services/IcsGenerator.php (modified) (1 diff)
-
app/Services/Reminder.php (modified) (2 diffs)
-
app/Services/Service.php (modified) (3 diffs)
-
app/Services/Settings.php (modified) (2 diffs)
-
app/Validators/HttpRequest/Booking.php (modified) (2 diffs)
-
app/Validators/HttpRequest/BookingAdmin.php (modified) (1 diff)
-
app/Validators/HttpRequest/Client.php (modified) (1 diff)
-
app/Validators/HttpRequest/LegacyBooking.php (modified) (2 diffs)
-
app/Validators/HttpRequest/LegacyBookingAdmin.php (modified) (1 diff)
-
app/WP/StaffHistory.php (modified) (1 diff)
-
app/WP/StaffLegacy.php (modified) (2 diffs)
-
database/migrations/2021_01_02_000004_update_appointments_locations_for_service.php (modified) (1 diff)
-
database/migrations/2021_01_03_000005_import_calendars.php (modified) (1 diff)
-
dist/FieldsGenerated.931c24b8cef645dfda98.bundle.js (deleted)
-
dist/FieldsGenerated.abbea2cd0670d949f891.bundle.js (added)
-
dist/WapImage.edd74ffda296850a901b.bundle.js (deleted)
-
dist/WapImage.fd646a698c63b108705d.bundle.js (added)
-
dist/appFawesome.4e2ad45bee468cf2e01a.bundle.js (deleted)
-
dist/appFawesome.fad1661a6a6d20ae7b93.bundle.js (added)
-
dist/front.1209dafae41117acff72.bundle.js (deleted)
-
dist/front.a6724bf0659c7cdb83ae.bundle.js (added)
-
dist/group-addons.8dfd53a3fd9d8c291a49.bundle.js (deleted)
-
dist/group-addons.cd5ccec0e65693fb152c.bundle.js (added)
-
dist/group-bookingform-group-viewingappointment.0a9a056e41cacf81e38d.bundle.js (deleted)
-
dist/group-bookingform-group-viewingappointment.96411e5aea33d62f8460.bundle.js (added)
-
dist/group-bookingform.23cd2b26552dc3c1f76c.bundle.js (deleted)
-
dist/group-bookingform.d43cff95d5efa8df390c.bundle.js (added)
-
dist/group-calendar.04346a31c6e28c37afd0.bundle.js (added)
-
dist/group-calendar.c12ad41c1111c641483f.bundle.js (deleted)
-
dist/group-calendars-manage.7fcb4a4241a29a2a30f1.bundle.js (added)
-
dist/group-calendars-manage.a3218b3b90cd6e802577.bundle.js (deleted)
-
dist/group-clients.259d72269d278f71e8aa.bundle.js (added)
-
dist/group-clients.eb8718f732a19da2283a.bundle.js (deleted)
-
dist/group-service-package.1d1f9f02518289ed54df.bundle.js (deleted)
-
dist/group-service-package.297cc6064f2be9a0698c.bundle.js (added)
-
dist/group-service.1a238324e28a63fcd8cb.bundle.js (added)
-
dist/group-service.4935fa040318204bcb35.bundle.js (deleted)
-
dist/group-settings.49e31b47be2d97e754ba.bundle.js (added)
-
dist/group-settings.6e6e3b6cf4142f20f6c7.bundle.js (deleted)
-
dist/group-wizard2.13a124713524f995dce6.bundle.js (added)
-
dist/group-wizard2.2d82729d5d374634a746.bundle.js (deleted)
-
dist/main.0554a640aa4e1d5bf276.bundle.js (deleted)
-
dist/main.dd1171100e457e318dff.bundle.js (added)
-
dist/manifest.json (modified) (2 diffs)
-
dist/vendors-appFawesome-group-addons-group-settings.ec572a4e672a6afb1a95.bundle.js (deleted)
-
dist/vendors-appFawesome.c047bd6c0ae41165504e.bundle.js (added)
-
index.php (modified) (2 diffs)
-
readme.txt (modified) (2 diffs)
-
vendor/composer/installed.php (modified) (1 diff)
-
vendor/illuminate/collections/Collection.php (modified) (3 diffs)
-
vendor/illuminate/collections/Enumerable.php (modified) (8 diffs)
-
vendor/illuminate/collections/Traits/EnumeratesValues.php (modified) (6 diffs)
-
vendor/illuminate/database/Eloquent/Builder.php (modified) (2 diffs)
-
vendor/illuminate/database/Eloquent/Concerns/QueriesRelationships.php (modified) (12 diffs)
-
vendor/illuminate/database/Eloquent/Relations/BelongsToMany.php (modified) (1 diff)
-
vendor/illuminate/database/Eloquent/Relations/Relation.php (modified) (1 diff)
-
vendor/illuminate/database/MySqlConnection.php (modified) (1 diff)
-
vendor/illuminate/database/Query/Builder.php (modified) (1 diff)
-
vendor/nesbot/carbon/src/Carbon/CarbonTimeZone.php (modified) (4 diffs)
-
vendor/nesbot/carbon/src/Carbon/Traits/Date.php (modified) (3 diffs)
-
vendor/nesbot/carbon/src/Carbon/Traits/Localization.php (modified) (1 diff)
-
vendor/nesbot/carbon/src/Carbon/Traits/Test.php (modified) (1 diff)
-
vendor/nesbot/carbon/src/Carbon/Traits/Timestamp.php (modified) (1 diff)
-
vendor/symfony/translation-contracts/TranslatorInterface.php (modified) (1 diff)
-
wappointment.pot (modified) (23 diffs)
Legend:
- Unmodified
- Added
- Removed
-
wappointment/trunk/app/Decorators/Service.php
r3402120 r3442071 40 40 return $this->hasType('phone'); 41 41 } 42 public function hasSkype()43 {44 return $this->hasType('skype');45 }46 42 public function hasZoom() 47 43 { -
wappointment/trunk/app/Helpers/TipTap.php
r3402120 r3442071 42 42 case 'cblockphysical': 43 43 case 'cblockphone': 44 case 'cblockskype':45 44 case 'cblockzoom': 46 45 case 'customfield': … … 203 202 return ['type' => 'cblockphone', 'content' => [self::integrateContent(self::typeToOptions($type), $value)]]; 204 203 } 205 protected static function tiptapSkype($value, $type = 'p')206 {207 return ['type' => 'cblockskype', 'content' => [self::integrateContent(self::typeToOptions($type), $value)]];208 }209 204 protected static function tiptapZoom($value, $type = 'p') 210 205 { -
wappointment/trunk/app/Installation/Migrate.php
r2957466 r3442071 9 9 public $capsule; 10 10 public $migrationRepo; 11 protected $migrations_folders = \false;11 protected $migrations_folders = []; 12 12 public function __construct($migrations_folder = \false) 13 13 { -
wappointment/trunk/app/Lists/email_tags.php
r2645781 r3442071 3 3 namespace WappoVendor; 4 4 5 return [['model' => 'client', 'key' => 'name', 'label' => __('Client\'s name', 'wappointment'), 'sanitize' => \true], ['model' => 'client', 'key' => 'email', 'label' => __('Client\'s email', 'wappointment'), 'sanitize' => \true], ['model' => 'client', 'key' => 'phone', 'label' => __('Client\'s phone', 'wappointment'), 'getMethod' => 'getPhone', 'sanitize' => \true], ['model' => ' client', 'key' => 'skype', 'label' => __('Client\'s skype', 'wappointment'), 'getMethod' => 'getSkype', 'sanitize' => \true], ['model' => 'service', 'key' => 'name', 'label' => __('Service name', 'wappointment'), 'getMethod' => 'getServiceName', 'sanitize' => \true, 'modelCall' => 'appointment'], ['model' => 'service', 'key' => 'address', 'label' => __('Service address', 'wappointment'), 'getMethod' => 'getServiceAddress', 'sanitize' => \true, 'modelCall' => 'appointment'], ['model' => 'appointment', 'key' => 'duration', 'label' => __('Appointment\'s duration', 'wappointment'), 'getMethod' => 'getDuration'], ['model' => 'appointment', 'key' => 'location', 'label' => __('Appointment\'s location', 'wappointment'), 'getMethod' => 'getLocation'], ['model' => 'appointment', 'key' => 'starts', 'label' => __('Appointment\'s date and time', 'wappointment'), 'getMethod' => 'getStartsDayAndTime'], ['model' => 'staff', 'key' => 'name', 'label' => __('Staff\'s Name', 'wappointment'), 'sanitize' => \true, 'getMethod' => 'getStaffName', 'modelCall' => 'appointment'], ['model' => 'order', 'key' => 'summary', 'label' => __('Order summary acting as a bill', 'wappointment'), 'getMethod' => 'getOrderTable', 'modelCall' => 'email_helper', 'requiresParams' => \true]];5 return [['model' => 'client', 'key' => 'name', 'label' => __('Client\'s name', 'wappointment'), 'sanitize' => \true], ['model' => 'client', 'key' => 'email', 'label' => __('Client\'s email', 'wappointment'), 'sanitize' => \true], ['model' => 'client', 'key' => 'phone', 'label' => __('Client\'s phone', 'wappointment'), 'getMethod' => 'getPhone', 'sanitize' => \true], ['model' => 'service', 'key' => 'name', 'label' => __('Service name', 'wappointment'), 'getMethod' => 'getServiceName', 'sanitize' => \true, 'modelCall' => 'appointment'], ['model' => 'service', 'key' => 'address', 'label' => __('Service address', 'wappointment'), 'getMethod' => 'getServiceAddress', 'sanitize' => \true, 'modelCall' => 'appointment'], ['model' => 'appointment', 'key' => 'duration', 'label' => __('Appointment\'s duration', 'wappointment'), 'getMethod' => 'getDuration'], ['model' => 'appointment', 'key' => 'location', 'label' => __('Appointment\'s location', 'wappointment'), 'getMethod' => 'getLocation'], ['model' => 'appointment', 'key' => 'starts', 'label' => __('Appointment\'s date and time', 'wappointment'), 'getMethod' => 'getStartsDayAndTime'], ['model' => 'staff', 'key' => 'name', 'label' => __('Staff\'s Name', 'wappointment'), 'sanitize' => \true, 'getMethod' => 'getStaffName', 'modelCall' => 'appointment'], ['model' => 'order', 'key' => 'summary', 'label' => __('Order summary acting as a bill', 'wappointment'), 'getMethod' => 'getOrderTable', 'modelCall' => 'email_helper', 'requiresParams' => \true]]; -
wappointment/trunk/app/Lists/translations_clients.php
r2655182 r3442071 3 3 namespace WappoVendor; 4 4 5 return ['title' => __('Clients', 'wappointment'), 'add_cf' => __('Add/Edit Custom Fields', 'wappointment'), 'client' => __('Client', 'wappointment'), 'phone' => __('Phone', 'wappointment'), ' skype' => __('Skype', 'wappointment'), 'owes' => __('Owes:', 'wappointment'), 'noclients' => __('You don\'t have any clients yet', 'wappointment')];5 return ['title' => __('Clients', 'wappointment'), 'add_cf' => __('Add/Edit Custom Fields', 'wappointment'), 'client' => __('Client', 'wappointment'), 'phone' => __('Phone', 'wappointment'), 'owes' => __('Owes:', 'wappointment'), 'noclients' => __('You don\'t have any clients yet', 'wappointment')]; -
wappointment/trunk/app/Lists/translations_settings.php
r2874788 r3442071 60 60 'noreminder' => __('You don\'t have any reminders', 'wappointment'), 61 61 'phonesession' => __('Phone session', 'wappointment'), 62 'skypesession' => __('Skype session', 'wappointment'),63 62 'videosession' => __('Video session', 'wappointment'), 64 63 'physicalsession' => __('Session at an address', 'wappointment'), -
wappointment/trunk/app/Lists/translations_wizard.php
r2660065 r3442071 3 3 namespace WappoVendor; 4 4 5 return ['wizard_back' => __('Back', 'wappointment'), 'wizard_next' => __('Next', 'wappointment'), 'wizard_wizard' => __('Wizard', 'wappointment'), 'wizard_1_title' => __('Welcome to Wappointment', 'wappointment'), 'wizard_1_lets' => __('Let\'s start with a quick setup', 'wappointment'), 'wizard_1_start' => __('Start', 'wappointment'), 'wizard_1_ask_help1' => __('Please, contact us if a problem occurs during the installation.', 'wappointment'), 'wizard_1_ask_help2' => __('You can reach us at:', 'wappointment'), 'wizard_2_title' => __('Weekly Availability', 'wappointment'), 'wizard_2_subtitle' => __('This is your recurring availability, you can change it again at anytime', 'wappointment'), 'wizard_3_title' => __('Service Setup', 'wappointment'), 'wizard_3_subtitle' => __('Set your first service', 'wappointment'), 'wizard_3_servicename' => __('Service name', 'wappointment'), 'wizard_3_duration' => __('Duration', 'wappointment'), 'wizard_3_delivery' => __('Service Delivery', 'wappointment'), 'wizard_3_delivery_video' => __('Video meeting', 'wappointment'), 'wizard_3_delivery_address' => __('At an address', 'wappointment'), 'wizard_3_delivery_byphone' => __('By Phone', 'wappointment'), 'wizard_3_ delivery_byskype' => __('By Skype', 'wappointment'), 'wizard_3_address' => __('Address', 'wappointment'), 'wizard_3_delivery_phone_require' => __('Clients must provide a phone number when booking', 'wappointment'), 'wizard_3_accepted_countries' => __('Accepted countries for phone field', 'wappointment'), 'wizard_3_select_video' => __('Select your video meeting app', 'wappointment'), 'wizard_4_title' => __('Booking Widget Setup', 'wappointment'), 'wizard_4_subtitle' => __('You can edit the style and content of the booking widget later from', 'wappointment'), 'wizard_4_create' => __('Create a booking page', 'wappointment'), 'wizard_5_title' => __('Yayyyy! You\'re done!', 'wappointment'), 'wizard_5_welcome' => __('Welcome to your Calendar page!', 'wappointment'), 'wizard_5_tips' => __('From here you can:', 'wappointment'), 'wizard_5_tip1' => __('Review your availability and appointments', 'wappointment'), 'wizard_5_tip2' => __('Block times when you\'re busy', 'wappointment'), 'wizard_5_tip3' => __('Add extra bookable time', 'wappointment'), 'wizard_5_tip4' => __('Book appointments on behalf of your clients', 'wappointment')];5 return ['wizard_back' => __('Back', 'wappointment'), 'wizard_next' => __('Next', 'wappointment'), 'wizard_wizard' => __('Wizard', 'wappointment'), 'wizard_1_title' => __('Welcome to Wappointment', 'wappointment'), 'wizard_1_lets' => __('Let\'s start with a quick setup', 'wappointment'), 'wizard_1_start' => __('Start', 'wappointment'), 'wizard_1_ask_help1' => __('Please, contact us if a problem occurs during the installation.', 'wappointment'), 'wizard_1_ask_help2' => __('You can reach us at:', 'wappointment'), 'wizard_2_title' => __('Weekly Availability', 'wappointment'), 'wizard_2_subtitle' => __('This is your recurring availability, you can change it again at anytime', 'wappointment'), 'wizard_3_title' => __('Service Setup', 'wappointment'), 'wizard_3_subtitle' => __('Set your first service', 'wappointment'), 'wizard_3_servicename' => __('Service name', 'wappointment'), 'wizard_3_duration' => __('Duration', 'wappointment'), 'wizard_3_delivery' => __('Service Delivery', 'wappointment'), 'wizard_3_delivery_video' => __('Video meeting', 'wappointment'), 'wizard_3_delivery_address' => __('At an address', 'wappointment'), 'wizard_3_delivery_byphone' => __('By Phone', 'wappointment'), 'wizard_3_address' => __('Address', 'wappointment'), 'wizard_3_delivery_phone_require' => __('Clients must provide a phone number when booking', 'wappointment'), 'wizard_3_accepted_countries' => __('Accepted countries for phone field', 'wappointment'), 'wizard_3_select_video' => __('Select your video meeting app', 'wappointment'), 'wizard_4_title' => __('Booking Widget Setup', 'wappointment'), 'wizard_4_subtitle' => __('You can edit the style and content of the booking widget later from', 'wappointment'), 'wizard_4_create' => __('Create a booking page', 'wappointment'), 'wizard_5_title' => __('Yayyyy! You\'re done!', 'wappointment'), 'wizard_5_welcome' => __('Welcome to your Calendar page!', 'wappointment'), 'wizard_5_tips' => __('From here you can:', 'wappointment'), 'wizard_5_tip1' => __('Review your availability and appointments', 'wappointment'), 'wizard_5_tip2' => __('Block times when you\'re busy', 'wappointment'), 'wizard_5_tip3' => __('Add extra bookable time', 'wappointment'), 'wizard_5_tip4' => __('Book appointments on behalf of your clients', 'wappointment')]; -
wappointment/trunk/app/Lists/widget_fields.php
r3402120 r3442071 3 3 namespace WappoVendor; 4 4 5 return ['colors' => ['primary' => ['label' => __('Action Color', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')]], 'main' => \true], 'header' => ['label' => __('Header Color', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')]], 'main' => \true], 'body' => ['label' => __('Body Colors', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')], 'disabled_links' => ['label' => __('Disabled day', 'wappointment')]], 'main' => \true], 'selected_day' => ['label' => __('Selected day', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')]]], 'secondary' => ['label' => __('Secondary Button', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')], 'text_selected' => ['label' => __('Text (selected)', 'wappointment')], 'bg_selected' => ['label' => __('Background (selected)', 'wappointment')]]], 'form' => ['label' => 'Form', 'fields' => ['success' => ['label' => __('Success', 'wappointment')], 'error' => ['label' => __('Error', 'wappointment')], 'payment' => ['label' => __('Payment Border', 'wappointment')]]], 'address' => ['label' => 'Address', 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')]]], 'confirmation' => ['label' => __('Confirmation Header', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')]]]], 'general' => ['fields' => ['check_header_compact_mode' => ['label' => __('Header Compact mode', 'wappointment'), 'tip' => __('Appointment details is compacted in the header', 'wappointment')], 'check_hide_staff_name' => ['label' => __('Hide staff name', 'wappointment'), 'tip' => __('Ideal if you are not having multiple staff', 'wappointment')], 'location' => ['conditions' => [['key' => 'general.check_header_compact_mode', 'val' => \false]], 'tip' => __('Appears in standard summary', 'wappointment')], 'when' => ['conditions' => [['key' => 'general.check_header_compact_mode', 'val' => \false]], 'tip' => __('Appears in standard summary', 'wappointment')], 'service' => ['conditions' => [['key' => 'general.check_header_compact_mode', 'val' => \false]], 'tip' => __('Appears in standard summary', 'wappointment')], 'min' => ['tip' => 'minutes'], 'noappointments' => ['tip' => __('Show when no appointments are available for that staff', 'wappointment')]]], 'button' => ['fields' => ['check_bold' => ['label' => __('Bold', 'wappointment')], 'slide_size' => ['label' => __('Text Size', 'wappointment'), 'options' => ['min' => 0.6, 'max' => 2.6, 'step' => 0.1, 'unit' => 'em']]]], 'selection' => ['fields' => ['check_viewweek' => ['label' => __('Week View', 'wappointment')]]], 'service_selection' => ['fields' => ['check_price_right' => ['label' => __('Price right aligned', 'wappointment')]]], 'service_location' => ['fields' => ['select_location' => \false], 'sub' => 'You can edit modalities names in [url wurl="wappointment_settings#/modalities"]Wappointment > Settings > Services > Modalities[/url]'], 'form' => ['categories' => [['label' => __('Appointment Modalities', 'wappointment'), 'fields' => ['byzoom' => \false, 'inperson' => \false , 'byskype' => \false]], ['label' => __('Booking Form', 'wappointment'), 'fields' => ['fullname' => \false, 'email' => \false, 'phone' => \false, 'skype' => \false, 'address' => \false, 'back' => \false, 'confirm' => \false, 'check_terms' => ['label' => __('Add data proccessing notice', 'wappointment')], 'terms' => ['conditions' => [['key' => 'form.check_terms', 'val' => \true]]], 'terms_link' => ['conditions' => [['key' => 'form.check_terms', 'val' => \true]]]]]]], 'confirmation' => ['categories' => [['label' => __('Appointment Confirmed', 'wappointment'), 'fields' => ['confirmation' => \false, 'when' => \false, 'service' => \false, 'duration' => \false, 'savetocal' => \false]], ['label' => __('Conditional confirmation', 'wappointment'), 'fields' => ['pending' => ['tip' => __('When admin confirmation is required', 'wappointment')], 'skype' => ['tip' => __('Skype appointments only', 'wappointment')], 'phone' => ['tip' => __('Phone appointments only', 'wappointment')], 'physical' => ['tip' => __('Appointments at a location only', 'wappointment')], 'zoom' => ['tip' => __('Video appointments only', 'wappointment')]]]]], 'swift_payment' => ['categories' => [['label' => __('On Site Payment', 'wappointment'), 'key' => 'onsite', 'fields' => ['onsite_tab' => \false, 'onsite_desc' => \false, 'onsite_confirm' => \false]], ['label' => __('Advanced', 'wappointment'), 'key' => 'avanced', 'fields' => ['check_tos' => ['label' => __('Add TOS and privacy links', 'wappointment'), 'tip' => __('Privacy link is in previous step', 'wappointment')], 'tos_text' => ['label' => 'https://', 'conditions' => [['key' => 'swift_payment.check_tos', 'val' => \true]]], 'tos_link' => ['conditions' => [['key' => 'swift_payment.check_tos', 'val' => \true]]]], 'last' => \true, 'nodrag' => \true]], 'categories_draggable' => \true]];5 return ['colors' => ['primary' => ['label' => __('Action Color', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')]], 'main' => \true], 'header' => ['label' => __('Header Color', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')]], 'main' => \true], 'body' => ['label' => __('Body Colors', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')], 'disabled_links' => ['label' => __('Disabled day', 'wappointment')]], 'main' => \true], 'selected_day' => ['label' => __('Selected day', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')]]], 'secondary' => ['label' => __('Secondary Button', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')], 'text_selected' => ['label' => __('Text (selected)', 'wappointment')], 'bg_selected' => ['label' => __('Background (selected)', 'wappointment')]]], 'form' => ['label' => 'Form', 'fields' => ['success' => ['label' => __('Success', 'wappointment')], 'error' => ['label' => __('Error', 'wappointment')], 'payment' => ['label' => __('Payment Border', 'wappointment')]]], 'address' => ['label' => 'Address', 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')]]], 'confirmation' => ['label' => __('Confirmation Header', 'wappointment'), 'fields' => ['text' => ['label' => __('Text', 'wappointment')], 'bg' => ['label' => __('Background', 'wappointment')]]]], 'general' => ['fields' => ['check_header_compact_mode' => ['label' => __('Header Compact mode', 'wappointment'), 'tip' => __('Appointment details is compacted in the header', 'wappointment')], 'check_hide_staff_name' => ['label' => __('Hide staff name', 'wappointment'), 'tip' => __('Ideal if you are not having multiple staff', 'wappointment')], 'location' => ['conditions' => [['key' => 'general.check_header_compact_mode', 'val' => \false]], 'tip' => __('Appears in standard summary', 'wappointment')], 'when' => ['conditions' => [['key' => 'general.check_header_compact_mode', 'val' => \false]], 'tip' => __('Appears in standard summary', 'wappointment')], 'service' => ['conditions' => [['key' => 'general.check_header_compact_mode', 'val' => \false]], 'tip' => __('Appears in standard summary', 'wappointment')], 'min' => ['tip' => 'minutes'], 'noappointments' => ['tip' => __('Show when no appointments are available for that staff', 'wappointment')]]], 'button' => ['fields' => ['check_bold' => ['label' => __('Bold', 'wappointment')], 'slide_size' => ['label' => __('Text Size', 'wappointment'), 'options' => ['min' => 0.6, 'max' => 2.6, 'step' => 0.1, 'unit' => 'em']]]], 'selection' => ['fields' => ['check_viewweek' => ['label' => __('Week View', 'wappointment')]]], 'service_selection' => ['fields' => ['check_price_right' => ['label' => __('Price right aligned', 'wappointment')]]], 'service_location' => ['fields' => ['select_location' => \false], 'sub' => 'You can edit modalities names in [url wurl="wappointment_settings#/modalities"]Wappointment > Settings > Services > Modalities[/url]'], 'form' => ['categories' => [['label' => __('Appointment Modalities', 'wappointment'), 'fields' => ['byzoom' => \false, 'inperson' => \false]], ['label' => __('Booking Form', 'wappointment'), 'fields' => ['fullname' => \false, 'email' => \false, 'phone' => \false, 'address' => \false, 'back' => \false, 'confirm' => \false, 'check_terms' => ['label' => __('Add data proccessing notice', 'wappointment')], 'terms' => ['conditions' => [['key' => 'form.check_terms', 'val' => \true]]], 'terms_link' => ['conditions' => [['key' => 'form.check_terms', 'val' => \true]]]]]]], 'confirmation' => ['categories' => [['label' => __('Appointment Confirmed', 'wappointment'), 'fields' => ['confirmation' => \false, 'when' => \false, 'service' => \false, 'duration' => \false, 'savetocal' => \false]], ['label' => __('Conditional confirmation', 'wappointment'), 'fields' => ['pending' => ['tip' => __('When admin confirmation is required', 'wappointment')], 'phone' => ['tip' => __('Phone appointments only', 'wappointment')], 'physical' => ['tip' => __('Appointments at a location only', 'wappointment')], 'zoom' => ['tip' => __('Video appointments only', 'wappointment')]]]]], 'swift_payment' => ['categories' => [['label' => __('On Site Payment', 'wappointment'), 'key' => 'onsite', 'fields' => ['onsite_tab' => \false, 'onsite_desc' => \false, 'onsite_confirm' => \false]], ['label' => __('Advanced', 'wappointment'), 'key' => 'avanced', 'fields' => ['check_tos' => ['label' => __('Add TOS and privacy links', 'wappointment'), 'tip' => __('Privacy link is in previous step', 'wappointment')], 'tos_text' => ['label' => 'https://', 'conditions' => [['key' => 'swift_payment.check_tos', 'val' => \true]]], 'tos_link' => ['conditions' => [['key' => 'swift_payment.check_tos', 'val' => \true]]]], 'last' => \true, 'nodrag' => \true]], 'categories_draggable' => \true]]; -
wappointment/trunk/app/Lists/widget_settings.php
r3402120 r3442071 43 43 'slots_left' => \sprintf(__('%s left', 'wappointment'), '[slots_left]'), 44 44 ], 'form' => [ 45 'byskype' => __('By Skype', 'wappointment'),46 45 'byphone' => __('By Phone', 'wappointment'), 47 46 'byzoom' => __('Video meeting', 'wappointment'), … … 50 49 'email' => __('Email:', 'wappointment'), 51 50 'phone' => __('Phone:', 'wappointment'), 52 'skype' => __('Skype username:', 'wappointment'),53 51 'back' => __('Back', 'wappointment'), 54 52 'confirm' => __('Confirm', 'wappointment'), … … 63 61 'duration' => __('Duration:', 'wappointment'), 64 62 'pending' => __('The appointment is pending and should be quickly confirmed', 'wappointment'), 65 'skype' => __('The appointment will take place on Skype, we will call you on this account:', 'wappointment'),66 63 /* translators: %s - a "here" link is added. */ 67 64 'zoom' => \sprintf(__('The appointment will take place by Video meeting online, the link will show %s.', 'wappointment'), '[meeting_link]' . __('here', 'wappointment') . '[/meeting_link]'), -
wappointment/trunk/app/Lists/widget_translations.php
r2645781 r3442071 10 10 'a_with_phone' => __('We will call you on %s', 'wappointment'), 11 11 'begin_meeting' => __('Begin meeting', 'wappointment'), 12 'a_is_skype' => __('Appointment on Skype', 'wappointment'),13 12 'a_is_address' => __('Appointment is taking place at this address', 'wappointment'), 14 13 'reschedule' => __('Reschedule', 'wappointment'), -
wappointment/trunk/app/Messages/AdminGeneratesDefault.php
r3402120 r3442071 39 39 $dataEmail[] = sprintf(__("Client's phone: %s", 'wappointment'), sanitize_text_field($client->getPhone())); 40 40 } 41 if (!empty($client->getSkype())) {42 /* translators: %s is replaced with the client's skype username */43 $dataEmail[] = sprintf(__("Client's skype: %s", 'wappointment'), sanitize_text_field($client->getSkype()));44 }45 41 } 46 42 if ($appointment->isZoom()) { -
wappointment/trunk/app/Models/Appointment.php
r3402120 r3442071 34 34 public const TYPE_PHYSICAL = 0; 35 35 public const TYPE_PHONE = 1; 36 public const TYPE_SKYPE = 2;37 36 public const TYPE_ZOOM = 5; 38 37 public const STATUS_AWAITING_CONFIRMATION = 0; … … 55 54 { 56 55 $cmodel = $this->getClientModel(); 57 if ($cmodel && !is_null($cmodel) && in_array($key, ['getPhone', 'get Skype', 'getNameForDotcom', 'getEmailForDotcom'])) {56 if ($cmodel && !is_null($cmodel) && in_array($key, ['getPhone', 'getNameForDotcom', 'getEmailForDotcom'])) { 58 57 return call_user_func([$cmodel, $key]); 59 58 } -
wappointment/trunk/app/Models/Appointment/ManipulateDotcom.php
r2957466 r3442071 33 33 $toDotcom['phone'] = $this->getClientMethodOrEmpty('getPhone'); 34 34 } 35 if ($this->isSkype()) {36 $toDotcom['skype'] = $this->getClientMethodOrEmpty('getSkype');37 }38 35 return $toDotcom; 39 36 } -
wappointment/trunk/app/Models/Appointment/ManipulateLocation.php
r2957466 r3442071 14 14 case self::TYPE_PHONE: 15 15 return 'phone'; 16 case self::TYPE_SKYPE:17 return 'skype';18 16 case self::TYPE_ZOOM: 19 17 return 'zoom'; … … 29 27 case self::TYPE_PHONE: 30 28 $location = 'By Phone'; 31 break;32 case self::TYPE_SKYPE:33 $location = 'By Skype';34 29 break; 35 30 case self::TYPE_ZOOM: -
wappointment/trunk/app/Models/Appointment/ManipulateType.php
r2645781 r3442071 13 13 return self::TYPE_PHYSICAL == $this->type; 14 14 } 15 public function isSkype()16 {17 return self::TYPE_SKYPE == $this->type;18 }19 15 public function isZoom() 20 16 { … … 29 25 return self::TYPE_PHONE; 30 26 } 31 public static function getTypeSkype()32 {33 return self::TYPE_SKYPE;34 }35 27 public static function getTypeZoom() 36 28 { -
wappointment/trunk/app/Models/Client.php
r3402120 r3442071 63 63 return empty($this->options['phone']) ? '' : $this->options['phone']; 64 64 } 65 public function getSkype()66 {67 return empty($this->options['skype']) ? '' : $this->options['skype'];68 }69 65 public function getTimezone($defaultTz = 'UTC') 70 66 { -
wappointment/trunk/app/Models/Location.php
r3402120 r3442071 10 10 public const TYPE_AT_LOCATION = 1; 11 11 public const TYPE_PHONE = 2; 12 public const TYPE_SKYPE = 3;13 12 public const TYPE_OTHERS = 4; 14 13 public const TYPE_ZOOM = 5; -
wappointment/trunk/app/Models/Reminder.php
r3402120 r3442071 122 122 } else if ($appointment->isPhone() && $rowContent['type'] == 'cblockphone') { 123 123 $newBodyEmailContent[] = $rowContent; 124 } elseif ($appointment->isSkype() && $rowContent['type'] == 'cblockskype') {125 $newBodyEmailContent[] = $rowContent;126 124 } elseif ($appointment->isZoom() && $rowContent['type'] == 'cblockzoom') { 127 125 $newBodyEmailContent[] = $rowContent; -
wappointment/trunk/app/Repositories/Availability.php
r3402120 r3442071 14 14 public function query() 15 15 { 16 return apply_filters('wappointment_front_availability', ['staffs' => Staff::get(), 'week_starts_on' => Settings::get('week_starts_on'), 'frontend_weekstart' => Settings::get('frontend_weekstart'), 'date_format' => Settings::get('date_format'), 'time_format' => Settings::get('time_format'), 'min_bookable' => Settings::get('hours_before_booking_allowed'), 'date_time_union' => Settings::get('date_time_union', ' - '), 'now' => (new Carbon())->format('Y-m-d\TH:i:00'), 'buffer_time' => Settings::get('buffer_time'), 'services' => ManageService::all(), 'site_lang' => Site::lang(), 'custom_fields' => Central::get('CustomFields')::get(), 'availability_fluid' => Settings::get('availability_fluid'), 'more_st' => Settings::get('more_st'), 'starting_each' => Settings::get('starting_each')]); 16 $staff_timezone = \Wappointment\Services\VersionDB::atLeast(\Wappointment\Services\VersionDB::CAN_CREATE_SERVICES) ? \Wappointment\Services\Calendars::all()->first()->options['timezone'] ?? 'UTC' : Settings::getStaff('timezone', 'UTC'); 17 return apply_filters('wappointment_front_availability', ['staffs' => Staff::get(), 'week_starts_on' => Settings::get('week_starts_on'), 'frontend_weekstart' => Settings::get('frontend_weekstart'), 'date_format' => Settings::get('date_format'), 'time_format' => Settings::get('time_format'), 'min_bookable' => Settings::get('hours_before_booking_allowed'), 'date_time_union' => Settings::get('date_time_union', ' - '), 'now' => (new Carbon())->setTimezone($staff_timezone)->format('Y-m-d\TH:i:00'), 'buffer_time' => Settings::get('buffer_time'), 'services' => ManageService::all(), 'site_lang' => Site::lang(), 'custom_fields' => Central::get('CustomFields')::get(), 'availability_fluid' => Settings::get('availability_fluid'), 'more_st' => Settings::get('more_st'), 'starting_each' => Settings::get('starting_each')]); 17 18 } 18 19 } -
wappointment/trunk/app/Services/AdminLegacy.php
r3402120 r3442071 23 23 $dataClient['options']['phone'] = $booking->get('phone'); 24 24 } 25 if (!empty($booking->get('skype'))) {26 $dataClient['options']['skype'] = $booking->get('skype');27 }28 25 if (empty($client)) { 29 26 $dataClient['email'] = $booking->get('email'); … … 33 30 if (!empty($booking->get('phone'))) { 34 31 $options['phone'] = $booking->get('phone'); 35 }36 if (!empty($booking->get('skype'))) {37 $options['skype'] = $booking->get('skype');38 32 } 39 33 $client->options = $options; -
wappointment/trunk/app/Services/Client.php
r3077799 r3442071 79 79 $data['options'] = static::addRtl($data['options']); 80 80 //create or load client account 81 $client = MClient::firstOrCreate(['email' => $data['email']], ['name' => $data['name'], 'options' => ['tz' => $data['options']['tz'], ' skype' => $data['options']['skype'], 'phone' => $data['options']['phone']]]);81 $client = MClient::firstOrCreate(['email' => $data['email']], ['name' => $data['name'], 'options' => ['tz' => $data['options']['tz'], 'phone' => $data['options']['phone']]]); 82 82 $options = $client->options; 83 83 foreach ($data['options'] as $key => $value) { -
wappointment/trunk/app/Services/ClientLegacy.php
r3402120 r3442071 21 21 $dataClient['options']['phone'] = $booking->get('phone'); 22 22 } 23 if (!empty($booking->get('skype'))) {24 $dataClient['options']['skype'] = $booking->get('skype');25 }26 23 if (empty($client)) { 27 24 $dataClient['email'] = $booking->get('email'); … … 32 29 $options['phone'] = $booking->get('phone'); 33 30 } 34 if (!empty($booking->get('skype'))) {35 $options['skype'] = $booking->get('skype');36 }37 31 $client->options = $options; 38 32 $client->save(); -
wappointment/trunk/app/Services/CustomFields.php
r3402120 r3442071 5 5 class CustomFields 6 6 { 7 public static $core_fields = [['name' => 'E-mail:', 'type' => 'email', 'namekey' => 'email', 'always' => 1, 'validations' => 'required|email', 'errors' => ['email' => 'Email is not valid'], 'core' => \true], ['name' => 'Full Name:', 'type' => 'input', 'namekey' => 'name', 'validations' => 'required|is_string|max:100', 'errors' => ['max' => 'Name is too long'], 'core' => \true], ['name' => 'Phone:', 'type' => 'phone', 'namekey' => 'phone', 'validations' => 'required|is_phone', 'errors' => ['is_phone' => 'Phone number is not valid'], 'core' => \true] , ['name' => 'Skype username:', 'type' => 'input', 'namekey' => 'skype', 'validations' => 'required|regex:/^[a-zA-Z][a-zA-Z0-9.\-_]{5,31}$/', 'errors' => ['regex' => 'Skype username is not valid'], 'core' => \true]];7 public static $core_fields = [['name' => 'E-mail:', 'type' => 'email', 'namekey' => 'email', 'always' => 1, 'validations' => 'required|email', 'errors' => ['email' => 'Email is not valid'], 'core' => \true], ['name' => 'Full Name:', 'type' => 'input', 'namekey' => 'name', 'validations' => 'required|is_string|max:100', 'errors' => ['max' => 'Name is too long'], 'core' => \true], ['name' => 'Phone:', 'type' => 'phone', 'namekey' => 'phone', 'validations' => 'required|is_phone', 'errors' => ['is_phone' => 'Phone number is not valid'], 'core' => \true]]; 8 8 public static $validationRules = ['namekey' => '', 'name' => 'required|is_string|max:100', 'required' => '', 'type' => 'required', 'values' => 'required_if:type,checkboxes,select,radios', 'is_address' => '', 'nodefault' => '', 'defaultlabel' => '']; 9 9 public static function get() -
wappointment/trunk/app/Services/DateTime.php
r3402120 r3442071 20 20 //this throws exception for 'US/Pacific-New' 21 21 $zone = new \DateTimeZone($full_name); 22 $seconds = $zone->getOffset(new \DateTime(' now', $zone));22 $seconds = $zone->getOffset(new \DateTime('January 1st', $zone)); 23 23 $hours = sprintf('%+02d', intval($seconds / 3600)); 24 24 $minutes = sprintf('%02d', $seconds % 3600 / 60); -
wappointment/trunk/app/Services/IcsGenerator.php
r2807115 r3442071 166 166 if (!Addons::isActive('wappointment_services')) { 167 167 $keysParse[] = 'phone'; 168 $keysParse[] = 'skype';169 168 } 170 169 foreach ($keysParse as $key) { -
wappointment/trunk/app/Services/Reminder.php
r3402120 r3442071 118 118 /* translators: %s - client's phone number */ 119 119 ['p' => sprintf(__('It will take place over the phone, we will call you on this number: %s', 'wappointment'), '[client:phone]')], 120 ], 'skype' => [121 /* translators: %s - client's skype username */122 ['p' => sprintf(__('It will take place on Skype, we will call you on this account: %s', 'wappointment'), '[client:skype]')],123 120 ], 'zoom' => [ 124 121 ['p' => __('It will take place by video online.', 'wappointment')], … … 127 124 ]]; 128 125 if (!is_array($types)) { 129 $types = ['physical', 'phone', ' skype', 'zoom'];126 $types = ['physical', 'phone', 'zoom']; 130 127 } 131 128 foreach ($types as $type) { -
wappointment/trunk/app/Services/Service.php
r3402120 r3442071 14 14 $validation_messages = ['type' => __('Please select how do you perform the service', 'wappointment'), 'options.countries' => __('You need to select countries you will cover for the phone service', 'wappointment')]; 15 15 $validator->setMessages(apply_filters('wappointment_service_validation_messages', $validation_messages)); 16 $validationRules = ['name' => 'required|is_adv_string|max:100', 'duration' => 'required|numeric', 'type' => 'required|array|hasvalues:physical,phone, skype,zoom', 'address' => 'required_if_has:type,physical', 'options' => '', 'options.countries' => 'required_if_has:type,phone|array', 'options.video' => 'required_if_has:type,zoom'];16 $validationRules = ['name' => 'required|is_adv_string|max:100', 'duration' => 'required|numeric', 'type' => 'required|array|hasvalues:physical,phone,zoom', 'address' => 'required_if_has:type,physical', 'options' => '', 'options.countries' => 'required_if_has:type,phone|array', 'options.video' => 'required_if_has:type,zoom']; 17 17 $validationRules = apply_filters('wappointment_service_validation_rules', $validationRules); 18 18 $validation = $validator->make($serviceData, $validationRules); … … 89 89 $types[] = 'phone'; 90 90 } 91 if ($location->type == Location::TYPE_SKYPE) {92 $types[] = 'skype';93 }94 91 $location->options = $optionsTemp; 95 92 $location->save(); … … 109 106 public static function getLocationTypeId($type_name) 110 107 { 111 if ($type_name == 'skype') {112 return Location::TYPE_SKYPE;113 }114 108 if ($type_name == 'zoom') { 115 109 return Location::TYPE_ZOOM; -
wappointment/trunk/app/Services/Settings.php
r3413120 r3442071 145 145 { 146 146 $timezone = WPHelpers::getWPOption('timezone_string'); 147 return ['regav' => static::get('regavDefault'), 'availaible_booking_days' => 60, 'calurl' => '', 'timezone' => $timezone, 'avatarId' => \false, 'viewed_updates' => \false, 'email_logo' => \false, 'per_page' => 10, 'display_name' => '', 'dotcom' => \false];147 return ['regav' => static::get('regavDefault'), 'availaible_booking_days' => 60, 'calurl' => '', 'timezone' => empty($timezone) ? 'UTC' : $timezone, 'avatarId' => \false, 'viewed_updates' => \false, 'email_logo' => \false, 'per_page' => 10, 'display_name' => '', 'dotcom' => \false]; 148 148 } 149 149 public static function defaultGet($key) … … 170 170 { 171 171 if (!static::$valid || static::valid($setting_key, $value)) { 172 $updatedValues = static::getValues() ;172 $updatedValues = static::getValues() ?? []; 173 173 if ($setting_key == 'service') { 174 174 unset($value['id']); -
wappointment/trunk/app/Validators/HttpRequest/Booking.php
r3402120 r3442071 20 20 protected function validationMessages() 21 21 { 22 return ['is_phone' => __('Your phone number is not valid', 'wappointment'), 'email' => __('Your email is not valid', 'wappointment'), 'skype:regex' => __('Your skype username is not valid', 'wappointment'),static::$startKey => __('The selected time is not valid', 'wappointment')];22 return ['is_phone' => __('Your phone number is not valid', 'wappointment'), 'email' => __('Your email is not valid', 'wappointment'), static::$startKey => __('The selected time is not valid', 'wappointment')]; 23 23 } 24 24 public function getUserEmail() … … 123 123 $this->location->options['fields'][] = 'phone'; 124 124 } 125 if ($this->location->type == 3) {126 $this->location->options['fields'][] = 'skype';127 }128 125 } 129 126 } -
wappointment/trunk/app/Validators/HttpRequest/BookingAdmin.php
r3402120 r3442071 8 8 public function generateValidation($inputs) 9 9 { 10 $this->validationRulesArray = ['name' => 'required_if:email', 'start' => 'required|min:' . time(), 'end' => 'required|min:' . time(), 'ctz' => '', 'location' => 'required|min:1', 'service' => 'required|min:1', 'duration' => 'required|min:5', 'clientid' => '', 'staff_id' => '', 'phone' => '', ' skype' => '', 'recurrent' => '', 'page' => ''];10 $this->validationRulesArray = ['name' => 'required_if:email', 'start' => 'required|min:' . time(), 'end' => 'required|min:' . time(), 'ctz' => '', 'location' => 'required|min:1', 'service' => 'required|min:1', 'duration' => 'required|min:5', 'clientid' => '', 'staff_id' => '', 'phone' => '', 'recurrent' => '', 'page' => '']; 11 11 if ($inputs['email'] !== '') { 12 12 $this->validationRulesArray['email'] = 'email'; -
wappointment/trunk/app/Validators/HttpRequest/Client.php
r3402120 r3442071 8 8 protected function validationMessages() 9 9 { 10 return ['is_phone' => __('Your phone number is not valid', 'wappointment'), 'email' => __('Your email is not valid', 'wappointment') , 'skype:regex' => __('Your skype username is not valid', 'wappointment')];10 return ['is_phone' => __('Your phone number is not valid', 'wappointment'), 'email' => __('Your email is not valid', 'wappointment')]; 11 11 } 12 12 protected function validationRules() 13 13 { 14 return ['name' => 'required_if:type,phone|present|max:100', 'email' => 'present|email', 'options' => '', 'options.phone' => 'present|is_phone' , 'options.skype' => 'present|regex:/^[a-zA-Z][a-zA-Z0-9.\-_]{5,31}$/'];14 return ['name' => 'required_if:type,phone|present|max:100', 'email' => 'present|email', 'options' => '', 'options.phone' => 'present|is_phone']; 15 15 } 16 16 protected function addValidators() -
wappointment/trunk/app/Validators/HttpRequest/LegacyBooking.php
r3402120 r3442071 8 8 protected function validationMessages() 9 9 { 10 return ['is_phone' => __('Your phone number is not valid', 'wappointment'), 'email' => __('Your email is not valid', 'wappointment'), ' skype:regex' => __('Your skype username is not valid', 'wappointment'), 'time' => __('The selected time is not valid', 'wappointment')];10 return ['is_phone' => __('Your phone number is not valid', 'wappointment'), 'email' => __('Your email is not valid', 'wappointment'), 'time' => __('The selected time is not valid', 'wappointment')]; 11 11 } 12 12 protected function validationRules() 13 13 { 14 return ['name' => 'required|is_string|max:100', 'email' => 'required|email', 'type' => 'required|in:physical,phone, skype,zoom', 'phone' => 'required_if:type,phone|is_phone', 'skype' => 'required_if:type,skype|regex:/^[a-zA-Z][a-zA-Z0-9.\-_]{5,31}$/', 'time' => 'required|min:' . $this->getTimeMin(), 'ctz' => ''];14 return ['name' => 'required|is_string|max:100', 'email' => 'required|email', 'type' => 'required|in:physical,phone,zoom', 'phone' => 'required_if:type,phone|is_phone', 'time' => 'required|min:' . $this->getTimeMin(), 'ctz' => '']; 15 15 } 16 16 protected function getTimeMin() … … 25 25 public function prepareInputs($inputs): array 26 26 { 27 if ($inputs['type'] != 'skype') {28 unset($inputs['skype']);29 }30 27 $inputs['time'] = (int) $inputs['time']; 31 28 return $inputs; -
wappointment/trunk/app/Validators/HttpRequest/LegacyBookingAdmin.php
r3402120 r3442071 8 8 protected function validationMessages() 9 9 { 10 return ['is_phone' => __('Your phone number is not valid', 'wappointment'), 'email' => __('Your email is not valid', 'wappointment') , 'skype:regex' => __('Your skype username is not valid', 'wappointment')];10 return ['is_phone' => __('Your phone number is not valid', 'wappointment'), 'email' => __('Your email is not valid', 'wappointment')]; 11 11 } 12 12 protected function validationRules() 13 13 { 14 14 if (!empty($this->input('clientid'))) { 15 return ['name' => 'required_if:type,phone|present|max:100', 'type' => 'present|in:physical,phone, skype,zoom', 'start' => 'required|min:' . time(), 'end' => 'required|min:' . time(), 'timezone' => '', 'clientid' => ''];15 return ['name' => 'required_if:type,phone|present|max:100', 'type' => 'present|in:physical,phone,zoom', 'start' => 'required|min:' . time(), 'end' => 'required|min:' . time(), 'timezone' => '', 'clientid' => '']; 16 16 } else { 17 return ['name' => 'required_if:type,phone|present|max:100', 'email' => 'present|email', 'type' => 'present|in:physical,phone, skype,zoom', 'phone' => 'required_if:type,phone|is_phone', 'skype' => 'required_if:type,skype|regex:/^[a-zA-Z][a-zA-Z0-9.\-_]{5,31}$/', 'start' => 'required|min:' . time(), 'end' => 'required|min:' . time(), 'timezone' => '', 'clientid' => ''];17 return ['name' => 'required_if:type,phone|present|max:100', 'email' => 'present|email', 'type' => 'present|in:physical,phone,zoom', 'phone' => 'required_if:type,phone|is_phone', 'start' => 'required|min:' . time(), 'end' => 'required|min:' . time(), 'timezone' => '', 'clientid' => '']; 18 18 } 19 19 } -
wappointment/trunk/app/WP/StaffHistory.php
r3402120 r3442071 64 64 $data['phone'] = ['label' => esc_html__('Phone', 'wappointment'), 'value' => $client->getPhone()]; 65 65 } 66 if (!empty($client->getSkype())) {67 $data['skype'] = ['label' => 'Skype', 'value' => $client->getSkype()];68 }69 66 $cfs = Central::get('CustomFields')::get(); 70 67 foreach ($cfs as $cf) { -
wappointment/trunk/app/WP/StaffLegacy.php
r2957466 r3442071 17 17 public $timezone = null; 18 18 //staff timezon 19 public $gravatar = ''; 19 20 public function __construct($staff_id = \false) 20 21 { … … 34 35 $this->name = !empty($dname) ? $dname : $this->getUserDisplayName(); 35 36 $this->timezone = Settings::getStaff('timezone', $staff_id); 37 if (empty($this->timezone)) { 38 $this->timezone = 'UTC'; 39 } 36 40 } 37 41 public function fullData() -
wappointment/trunk/database/migrations/2021_01_02_000004_update_appointments_locations_for_service.php
r2529936 r3442071 47 47 'physical' => ['label' => $widgetSettings['form']['inperson'], 'type' => Location::TYPE_AT_LOCATION], 48 48 'phone' => ['label' => $widgetSettings['form']['byphone'], 'type' => Location::TYPE_PHONE], 49 'skype' => ['label' => $widgetSettings['form']['byskype'], 'type' => Location::TYPE_SKYPE]50 49 ]; 51 50 } -
wappointment/trunk/database/migrations/2021_01_03_000005_import_calendars.php
r2499781 r3442071 23 23 $dotcom = $staff->getDotcom(); 24 24 Settings::save('email_logo', Settings::getStaff('email_logo')); 25 25 26 $data = [ 26 27 'wp_uid' => $staff->id, -
wappointment/trunk/dist/manifest.json
r3414783 r3442071 1 1 { 2 "FieldsGenerated.js": "FieldsGenerated. 931c24b8cef645dfda98.bundle.js",2 "FieldsGenerated.js": "FieldsGenerated.abbea2cd0670d949f891.bundle.js", 3 3 "MainStyle.js": "MainStyle.2ff85ec05f1d6777122e.bundle.js", 4 4 "VueTelInput.js": "VueTelInput.b6d2236ecc7b556b0340.bundle.js", 5 "WapImage.js": "WapImage. edd74ffda296850a901b.bundle.js",6 "appFawesome.js": "appFawesome. 4e2ad45bee468cf2e01a.bundle.js",5 "WapImage.js": "WapImage.fd646a698c63b108705d.bundle.js", 6 "appFawesome.js": "appFawesome.fad1661a6a6d20ae7b93.bundle.js", 7 7 "flags.png": "9c96e0ed7093c095fd33870329282962.png", 8 8 "[email protected]": "f2c77a6b7e26ff160fdb4193b383b1ea.png", 9 "front.js": "front. 1209dafae41117acff72.bundle.js",9 "front.js": "front.a6724bf0659c7cdb83ae.bundle.js", 10 10 "group-addons-group-calendar-group-calendars-manage-group-settings-group-wizard.js": "group-addons-group-calendar-group-calendars-manage-group-settings-group-wizard.bcd45931981878d631be.bundle.js", 11 "group-addons.js": "group-addons. 8dfd53a3fd9d8c291a49.bundle.js",12 "group-bookingform-group-viewingappointment.js": "group-bookingform-group-viewingappointment. 0a9a056e41cacf81e38d.bundle.js",13 "group-bookingform.js": "group-bookingform. 23cd2b26552dc3c1f76c.bundle.js",14 "group-calendar.js": "group-calendar. c12ad41c1111c641483f.bundle.js",15 "group-calendars-manage.js": "group-calendars-manage. a3218b3b90cd6e802577.bundle.js",16 "group-clients.js": "group-clients. eb8718f732a19da2283a.bundle.js",11 "group-addons.js": "group-addons.cd5ccec0e65693fb152c.bundle.js", 12 "group-bookingform-group-viewingappointment.js": "group-bookingform-group-viewingappointment.96411e5aea33d62f8460.bundle.js", 13 "group-bookingform.js": "group-bookingform.d43cff95d5efa8df390c.bundle.js", 14 "group-calendar.js": "group-calendar.04346a31c6e28c37afd0.bundle.js", 15 "group-calendars-manage.js": "group-calendars-manage.7fcb4a4241a29a2a30f1.bundle.js", 16 "group-clients.js": "group-clients.259d72269d278f71e8aa.bundle.js", 17 17 "group-help.js": "group-help.32e1d2f4f32e5e433e04.bundle.js", 18 "group-service-package.js": "group-service-package. 1d1f9f02518289ed54df.bundle.js",19 "group-service.js": "group-service. 4935fa040318204bcb35.bundle.js",20 "group-settings.js": "group-settings. 6e6e3b6cf4142f20f6c7.bundle.js",18 "group-service-package.js": "group-service-package.297cc6064f2be9a0698c.bundle.js", 19 "group-service.js": "group-service.1a238324e28a63fcd8cb.bundle.js", 20 "group-settings.js": "group-settings.49e31b47be2d97e754ba.bundle.js", 21 21 "group-viewingappointment.js": "group-viewingappointment.ad3516413ee95f6698d5.bundle.js", 22 22 "group-wizard.js": "group-wizard.3d7300e49525080102ea.bundle.js", 23 "group-wizard2.js": "group-wizard2. 2d82729d5d374634a746.bundle.js",23 "group-wizard2.js": "group-wizard2.13a124713524f995dce6.bundle.js", 24 24 "group-wizardinit.js": "group-wizardinit.d283e47ed016ddfffbd9.bundle.js", 25 "main.js": "main. 0554a640aa4e1d5bf276.bundle.js",25 "main.js": "main.dd1171100e457e318dff.bundle.js", 26 26 "style-flag.js": "style-flag.216cbd8bd046bf27d58a.bundle.js", 27 27 "toggle-off.svg": "e500252a27eb6af0b0c0853d856b3647.svg", … … 29 29 "vendors-VueTelInput.js": "vendors-VueTelInput.963bd74bb64bfadac67a.bundle.js", 30 30 "vendors-appFawesome-group-addons-group-settings.js": "vendors-appFawesome-group-addons-group-settings.ec572a4e672a6afb1a95.bundle.js", 31 "vendors-appFawesome.js": "vendors-appFawesome. da7bfb1947fa4220ddbf.bundle.js",31 "vendors-appFawesome.js": "vendors-appFawesome.c047bd6c0ae41165504e.bundle.js", 32 32 "vendors-group-addons-group-bookingform-group-calendar-group-settings.js": "vendors-group-addons-group-bookingform-group-calendar-group-settings.e1b6846f51b17a373f16.bundle.js", 33 33 "vendors-group-addons-group-calendar-group-calendars-manage-group-settings-group-wizard.js": "vendors-group-addons-group-calendar-group-calendars-manage-group-settings-group-wizard.7f287232e60ec4fb8568.bundle.js", -
wappointment/trunk/index.php
r3414783 r3442071 7 7 /** 8 8 * Plugin Name: Wappointment 9 * Version: 2.7. 29 * Version: 2.7.3 10 10 * Plugin URI: https://wappointment.com 11 11 * Description: Clients quickly book a meeting with you on Zoom , GoogleMeet , the phone or at your office … … 33 33 */ 34 34 35 define('WAPPOINTMENT_VERSION', '2.7. 2');35 define('WAPPOINTMENT_VERSION', '2.7.3'); 36 36 define('WAPPOINTMENT_PHP_MIN', '7.4.0'); 37 37 define('WAPPOINTMENT_NAME', 'Wappointment'); -
wappointment/trunk/readme.txt
r3414783 r3442071 5 5 Tested up to: 6.9 6 6 Requires PHP: 7.4 7 Stable tag: 2.7. 27 Stable tag: 2.7.3 8 8 License: GPLv2 or later 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 148 148 149 149 == Changelog == 150 151 = 2.7.3 - 2026-01-18 = 152 * fix timezone issue (thanks to [lukesUbuntu](https://github.com/lukesUbuntu/wappointment/commits?author=lukesUbuntu)) 153 * fixed error messages showing 154 * fixed remove addons tab 155 * fixed remove skype option 150 156 151 157 = 2.7.2 - 2025-12-09 = -
wappointment/trunk/vendor/composer/installed.php
r3414783 r3442071 3 3 namespace WappoVendor; 4 4 5 return array('root' => array('name' => 'wappointment/wappointment', 'pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '6 ce8c8dc97dfa56a58ac2dfaed05e983a6903562', 'type' => 'worpdress-plugin', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('doctrine/cache' => array('pretty_version' => '2.2.0', 'version' => '2.2.0.0', 'reference' => '1ca8f21980e770095a31456042471a57bc4c68fb', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/cache', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/dbal' => array('pretty_version' => '3.3.8', 'version' => '3.3.8.0', 'reference' => 'f873a820227bc352d023791775a01f078a30dfe1', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/dbal', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/deprecations' => array('pretty_version' => 'v1.0.0', 'version' => '1.0.0.0', 'reference' => '0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/deprecations', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/event-manager' => array('pretty_version' => '1.2.0', 'version' => '1.2.0.0', 'reference' => '95aa4cb529f1e96576f3fda9f5705ada4056a520', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/event-manager', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/inflector' => array('pretty_version' => '2.0.6', 'version' => '2.0.6.0', 'reference' => 'd9d313a36c872fd6ee06d9a6cbcf713eaa40f024', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/inflector', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/lexer' => array('pretty_version' => '2.1.0', 'version' => '2.1.0.0', 'reference' => '39ab8fcf5a51ce4b85ca97c7a7d033eb12831124', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/lexer', 'aliases' => array(), 'dev_requirement' => \false), 'egulias/email-validator' => array('pretty_version' => '3.2.5', 'version' => '3.2.5.0', 'reference' => 'b531a2311709443320c786feb4519cfaf94af796', 'type' => 'library', 'install_path' => __DIR__ . '/../egulias/email-validator', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/guzzle' => array('pretty_version' => '6.5.8', 'version' => '6.5.8.0', 'reference' => 'a52f0440530b54fa079ce76e8c5d196a42cad981', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/guzzle', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/promises' => array('pretty_version' => '1.5.2', 'version' => '1.5.2.0', 'reference' => 'b94b2807d85443f9719887892882d0329d1e2598', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/promises', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/psr7' => array('pretty_version' => '1.9.0', 'version' => '1.9.0.0', 'reference' => 'e98e3e6d4f86621a9b75f623996e6bbdeb4b9318', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/psr7', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/collections' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '705a4e1ef93cd492c45b9b3e7911cccc990a07f4', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/collections', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/container' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '14062628d05f75047c5a1360b9350028427d568e', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/container', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/contracts' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '5e0fd287a1b22a6b346a9f7cd484d8cf0234585d', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/contracts', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/database' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '1a5b0e4e6913415464fa2aab554a38b9e6fa44b1', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/database', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/filesystem' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '73db3e9a233ed587ba54f52ab8580f3c7bc872b2', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/filesystem', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/http' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '38b8b0c8ca5d5231df9c515f3a3e7aac5f0da9f4', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/http', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/macroable' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => 'aed81891a6e046fdee72edd497f822190f61c162', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/macroable', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/pagination' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '16fe8dc35f9d18c58a3471469af656a02e9ab692', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/pagination', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/session' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '9c9988d7229d888c098eebbbb9fcb8c68580411c', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/session', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/support' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '1c79242468d3bbd9a0f7477df34f9647dde2a09b', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/support', 'aliases' => array(), 'dev_requirement' => \false), 'nesbot/carbon' => array('pretty_version' => '2.66.0', 'version' => '2.66.0.0', 'reference' => '496712849902241f04902033b0441b269effe001', 'type' => 'library', 'install_path' => __DIR__ . '/../nesbot/carbon', 'aliases' => array(), 'dev_requirement' => \false), 'pelago/emogrifier' => array('pretty_version' => 'v6.0.0', 'version' => '6.0.0.0', 'reference' => 'aa72d5407efac118f3896bcb995a2cba793df0ae', 'type' => 'library', 'install_path' => __DIR__ . '/../pelago/emogrifier', 'aliases' => array(), 'dev_requirement' => \false), 'psr/cache' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => 'd11b50ad223250cf17b86e38383413f5a6764bf8', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/cache', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container' => array('pretty_version' => '1.1.1', 'version' => '1.1.1.0', 'reference' => '8622567409010282b7aeebe4bb841fe98b58dcaf', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/event-dispatcher' => array('pretty_version' => '1.0.0', 'version' => '1.0.0.0', 'reference' => 'dbefd12671e8a14ec7f180cab83036ed26714bb0', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/event-dispatcher', 'aliases' => array(), 'dev_requirement' => \false), 'psr/event-dispatcher-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-message' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => 'f6561bf28d520154e4b0ec72be95418abe6d9363', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/log' => array('pretty_version' => '1.1.4', 'version' => '1.1.4.0', 'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', 'aliases' => array(), 'dev_requirement' => \false), 'psr/log-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0|2.0')), 'psr/simple-cache' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => '408d5eafb83c57f6365a3ca330ff23aa4a5fa39b', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/simple-cache', 'aliases' => array(), 'dev_requirement' => \false), 'rakit/validation' => array('pretty_version' => 'v1.4.0', 'version' => '1.4.0.0', 'reference' => 'ff003a35cdf5030a5f2482299f4c93f344a35b29', 'type' => 'library', 'install_path' => __DIR__ . '/../rakit/validation', 'aliases' => array(), 'dev_requirement' => \false), 'ralouphie/getallheaders' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => '120b605dfeb996808c31b6477290a714d356e822', 'type' => 'library', 'install_path' => __DIR__ . '/../ralouphie/getallheaders', 'aliases' => array(), 'dev_requirement' => \false), 'sabberworm/php-css-parser' => array('pretty_version' => '8.4.0', 'version' => '8.4.0.0', 'reference' => 'e41d2140031d533348b2192a83f02d8dd8a71d30', 'type' => 'library', 'install_path' => __DIR__ . '/../sabberworm/php-css-parser', 'aliases' => array(), 'dev_requirement' => \false), 'sabre/uri' => array('pretty_version' => '2.1.3', 'version' => '2.1.3.0', 'reference' => '18f454324f371cbcabdad3d0d3755b4b0182095d', 'type' => 'library', 'install_path' => __DIR__ . '/../sabre/uri', 'aliases' => array(), 'dev_requirement' => \false), 'sabre/vobject' => array('pretty_version' => '4.5.3', 'version' => '4.5.3.0', 'reference' => 'fe6d9183154ed6f2f913f2b568d3d51d8ae9b308', 'type' => 'library', 'install_path' => __DIR__ . '/../sabre/vobject', 'aliases' => array(), 'dev_requirement' => \false), 'sabre/xml' => array('pretty_version' => '2.1.3', 'version' => '2.1.3.0', 'reference' => 'f08a58f57e2b0d7df769a432756aa371417ab9eb', 'type' => 'library', 'install_path' => __DIR__ . '/../sabre/xml', 'aliases' => array(), 'dev_requirement' => \false), 'soundasleep/html2text' => array('pretty_version' => '0.5.0', 'version' => '0.5.0.0', 'reference' => 'cdb89f6ffa2c4cc78f8ed9ea6ee0594a9133ccad', 'type' => 'library', 'install_path' => __DIR__ . '/../soundasleep/html2text', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/console' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => 'c77433ddc6cdc689caf48065d9ea22ca0853fbd9', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/console', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/css-selector' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '95f3c7468db1da8cc360b24fa2a26e7cefcb355d', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/css-selector', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/error-handler' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '56a94aa8cb5a5fbc411551d8d014a296b5456549', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/error-handler', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/event-dispatcher' => array('pretty_version' => 'v5.3.14', 'version' => '5.3.14.0', 'reference' => '6dc2d5b31cdf84fa6344f44056c32f939fcb8c4a', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/event-dispatcher', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/event-dispatcher-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'f98b54df6ad059855739db6fcbc2d36995283fe1', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/event-dispatcher-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/event-dispatcher-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '2.0')), 'symfony/finder' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '078e9a5e1871fcfe6a5ce421b539344c21afef19', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/finder', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/http-foundation' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '3bb6ee5582366c4176d5ce596b380117c8200bbf', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/http-foundation', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/http-kernel' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '09c19fc7e4218fbcf73fe0330eea38d66064b775', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/http-kernel', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/mime' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => 'ef57d9fb9cdd5e6b2ffc567d109865d10b6920cd', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/mime', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-ctype' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '5bbc823adecdae860bb64756d639ecfec17b050a', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-ctype', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-grapheme' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '511a08c03c1960e08a883f4cffcacd219b758354', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-grapheme', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-idn' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '639084e360537a19f9ee352433b84ce831f3d2da', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-idn', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-normalizer' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '19bd1e4fcd5b91116f14d8533c57831ed00571b6', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-normalizer', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '8ad114f6b39e2c98a8b0e3bd907732c207c2b534', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php72' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '869329b1e9894268a8a61dabb69153029b7a8c97', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php72', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php73' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '9e8ecb5f92152187c4799efd3c96b78ccab18ff9', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php73', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/service-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '4b426aac47d6427cc1a1d0f7e2ac724627f5966c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/service-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/string' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => 'edac10d167b78b1d90f46a80320d632de0bd9f2f', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/string', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '6996affeea65705086939894b77110e9a7f80874', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '136b19dd05cdf0709db6537d058bcab6dd6e2dbe', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '2.3')), 'symfony/var-dumper' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '6c5ac3a1be8b849d59a1a77877ee110e1b55eb74', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/var-dumper', 'aliases' => array(), 'dev_requirement' => \false), 'true/punycode' => array('pretty_version' => 'v2.1.1', 'version' => '2.1.1.0', 'reference' => 'a4d0c11a36dd7f4e7cd7096076cab6d3378a071e', 'type' => 'library', 'install_path' => __DIR__ . '/../true/punycode', 'aliases' => array(), 'dev_requirement' => \false), 'voku/portable-ascii' => array('pretty_version' => '1.6.1', 'version' => '1.6.1.0', 'reference' => '87337c91b9dfacee02452244ee14ab3c43bc485a', 'type' => 'library', 'install_path' => __DIR__ . '/../voku/portable-ascii', 'aliases' => array(), 'dev_requirement' => \false), 'wappointment/wappointment' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '6ce8c8dc97dfa56a58ac2dfaed05e983a6903562', 'type' => 'worpdress-plugin', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false)));5 return array('root' => array('name' => 'wappointment/wappointment', 'pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '6e9640e4eda9ece9d614912f9260c123bb13e8af', 'type' => 'worpdress-plugin', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev' => \false), 'versions' => array('doctrine/cache' => array('pretty_version' => '2.2.0', 'version' => '2.2.0.0', 'reference' => '1ca8f21980e770095a31456042471a57bc4c68fb', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/cache', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/dbal' => array('pretty_version' => '3.3.8', 'version' => '3.3.8.0', 'reference' => 'f873a820227bc352d023791775a01f078a30dfe1', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/dbal', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/deprecations' => array('pretty_version' => 'v1.0.0', 'version' => '1.0.0.0', 'reference' => '0e2a4f1f8cdfc7a92ec3b01c9334898c806b30de', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/deprecations', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/event-manager' => array('pretty_version' => '1.2.0', 'version' => '1.2.0.0', 'reference' => '95aa4cb529f1e96576f3fda9f5705ada4056a520', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/event-manager', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/inflector' => array('pretty_version' => '2.0.6', 'version' => '2.0.6.0', 'reference' => 'd9d313a36c872fd6ee06d9a6cbcf713eaa40f024', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/inflector', 'aliases' => array(), 'dev_requirement' => \false), 'doctrine/lexer' => array('pretty_version' => '2.1.0', 'version' => '2.1.0.0', 'reference' => '39ab8fcf5a51ce4b85ca97c7a7d033eb12831124', 'type' => 'library', 'install_path' => __DIR__ . '/../doctrine/lexer', 'aliases' => array(), 'dev_requirement' => \false), 'egulias/email-validator' => array('pretty_version' => '3.2.5', 'version' => '3.2.5.0', 'reference' => 'b531a2311709443320c786feb4519cfaf94af796', 'type' => 'library', 'install_path' => __DIR__ . '/../egulias/email-validator', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/guzzle' => array('pretty_version' => '6.5.8', 'version' => '6.5.8.0', 'reference' => 'a52f0440530b54fa079ce76e8c5d196a42cad981', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/guzzle', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/promises' => array('pretty_version' => '1.5.2', 'version' => '1.5.2.0', 'reference' => 'b94b2807d85443f9719887892882d0329d1e2598', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/promises', 'aliases' => array(), 'dev_requirement' => \false), 'guzzlehttp/psr7' => array('pretty_version' => '1.9.0', 'version' => '1.9.0.0', 'reference' => 'e98e3e6d4f86621a9b75f623996e6bbdeb4b9318', 'type' => 'library', 'install_path' => __DIR__ . '/../guzzlehttp/psr7', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/collections' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '705a4e1ef93cd492c45b9b3e7911cccc990a07f4', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/collections', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/container' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '14062628d05f75047c5a1360b9350028427d568e', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/container', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/contracts' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '5e0fd287a1b22a6b346a9f7cd484d8cf0234585d', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/contracts', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/database' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '1a5b0e4e6913415464fa2aab554a38b9e6fa44b1', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/database', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/filesystem' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '73db3e9a233ed587ba54f52ab8580f3c7bc872b2', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/filesystem', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/http' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '38b8b0c8ca5d5231df9c515f3a3e7aac5f0da9f4', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/http', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/macroable' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => 'aed81891a6e046fdee72edd497f822190f61c162', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/macroable', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/pagination' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '16fe8dc35f9d18c58a3471469af656a02e9ab692', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/pagination', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/session' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '9c9988d7229d888c098eebbbb9fcb8c68580411c', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/session', 'aliases' => array(), 'dev_requirement' => \false), 'illuminate/support' => array('pretty_version' => 'v8.83.27', 'version' => '8.83.27.0', 'reference' => '1c79242468d3bbd9a0f7477df34f9647dde2a09b', 'type' => 'library', 'install_path' => __DIR__ . '/../illuminate/support', 'aliases' => array(), 'dev_requirement' => \false), 'nesbot/carbon' => array('pretty_version' => '2.66.0', 'version' => '2.66.0.0', 'reference' => '496712849902241f04902033b0441b269effe001', 'type' => 'library', 'install_path' => __DIR__ . '/../nesbot/carbon', 'aliases' => array(), 'dev_requirement' => \false), 'pelago/emogrifier' => array('pretty_version' => 'v6.0.0', 'version' => '6.0.0.0', 'reference' => 'aa72d5407efac118f3896bcb995a2cba793df0ae', 'type' => 'library', 'install_path' => __DIR__ . '/../pelago/emogrifier', 'aliases' => array(), 'dev_requirement' => \false), 'psr/cache' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => 'd11b50ad223250cf17b86e38383413f5a6764bf8', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/cache', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container' => array('pretty_version' => '1.1.1', 'version' => '1.1.1.0', 'reference' => '8622567409010282b7aeebe4bb841fe98b58dcaf', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/container', 'aliases' => array(), 'dev_requirement' => \false), 'psr/container-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/event-dispatcher' => array('pretty_version' => '1.0.0', 'version' => '1.0.0.0', 'reference' => 'dbefd12671e8a14ec7f180cab83036ed26714bb0', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/event-dispatcher', 'aliases' => array(), 'dev_requirement' => \false), 'psr/event-dispatcher-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/http-message' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => 'f6561bf28d520154e4b0ec72be95418abe6d9363', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/http-message', 'aliases' => array(), 'dev_requirement' => \false), 'psr/http-message-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0')), 'psr/log' => array('pretty_version' => '1.1.4', 'version' => '1.1.4.0', 'reference' => 'd49695b909c3b7628b6289db5479a1c204601f11', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/log', 'aliases' => array(), 'dev_requirement' => \false), 'psr/log-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '1.0|2.0')), 'psr/simple-cache' => array('pretty_version' => '1.0.1', 'version' => '1.0.1.0', 'reference' => '408d5eafb83c57f6365a3ca330ff23aa4a5fa39b', 'type' => 'library', 'install_path' => __DIR__ . '/../psr/simple-cache', 'aliases' => array(), 'dev_requirement' => \false), 'rakit/validation' => array('pretty_version' => 'v1.4.0', 'version' => '1.4.0.0', 'reference' => 'ff003a35cdf5030a5f2482299f4c93f344a35b29', 'type' => 'library', 'install_path' => __DIR__ . '/../rakit/validation', 'aliases' => array(), 'dev_requirement' => \false), 'ralouphie/getallheaders' => array('pretty_version' => '3.0.3', 'version' => '3.0.3.0', 'reference' => '120b605dfeb996808c31b6477290a714d356e822', 'type' => 'library', 'install_path' => __DIR__ . '/../ralouphie/getallheaders', 'aliases' => array(), 'dev_requirement' => \false), 'sabberworm/php-css-parser' => array('pretty_version' => '8.4.0', 'version' => '8.4.0.0', 'reference' => 'e41d2140031d533348b2192a83f02d8dd8a71d30', 'type' => 'library', 'install_path' => __DIR__ . '/../sabberworm/php-css-parser', 'aliases' => array(), 'dev_requirement' => \false), 'sabre/uri' => array('pretty_version' => '2.1.3', 'version' => '2.1.3.0', 'reference' => '18f454324f371cbcabdad3d0d3755b4b0182095d', 'type' => 'library', 'install_path' => __DIR__ . '/../sabre/uri', 'aliases' => array(), 'dev_requirement' => \false), 'sabre/vobject' => array('pretty_version' => '4.5.3', 'version' => '4.5.3.0', 'reference' => 'fe6d9183154ed6f2f913f2b568d3d51d8ae9b308', 'type' => 'library', 'install_path' => __DIR__ . '/../sabre/vobject', 'aliases' => array(), 'dev_requirement' => \false), 'sabre/xml' => array('pretty_version' => '2.1.3', 'version' => '2.1.3.0', 'reference' => 'f08a58f57e2b0d7df769a432756aa371417ab9eb', 'type' => 'library', 'install_path' => __DIR__ . '/../sabre/xml', 'aliases' => array(), 'dev_requirement' => \false), 'soundasleep/html2text' => array('pretty_version' => '0.5.0', 'version' => '0.5.0.0', 'reference' => 'cdb89f6ffa2c4cc78f8ed9ea6ee0594a9133ccad', 'type' => 'library', 'install_path' => __DIR__ . '/../soundasleep/html2text', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/console' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => 'c77433ddc6cdc689caf48065d9ea22ca0853fbd9', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/console', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/css-selector' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '95f3c7468db1da8cc360b24fa2a26e7cefcb355d', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/css-selector', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/deprecation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'e8b495ea28c1d97b5e0c121748d6f9b53d075c66', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/deprecation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/error-handler' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '56a94aa8cb5a5fbc411551d8d014a296b5456549', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/error-handler', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/event-dispatcher' => array('pretty_version' => 'v5.3.14', 'version' => '5.3.14.0', 'reference' => '6dc2d5b31cdf84fa6344f44056c32f939fcb8c4a', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/event-dispatcher', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/event-dispatcher-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => 'f98b54df6ad059855739db6fcbc2d36995283fe1', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/event-dispatcher-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/event-dispatcher-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '2.0')), 'symfony/finder' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '078e9a5e1871fcfe6a5ce421b539344c21afef19', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/finder', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/http-foundation' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '3bb6ee5582366c4176d5ce596b380117c8200bbf', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/http-foundation', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/http-kernel' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '09c19fc7e4218fbcf73fe0330eea38d66064b775', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/http-kernel', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/mime' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => 'ef57d9fb9cdd5e6b2ffc567d109865d10b6920cd', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/mime', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-ctype' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '5bbc823adecdae860bb64756d639ecfec17b050a', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-ctype', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-grapheme' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '511a08c03c1960e08a883f4cffcacd219b758354', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-grapheme', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-idn' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '639084e360537a19f9ee352433b84ce831f3d2da', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-idn', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-intl-normalizer' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '19bd1e4fcd5b91116f14d8533c57831ed00571b6', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-intl-normalizer', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-mbstring' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '8ad114f6b39e2c98a8b0e3bd907732c207c2b534', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-mbstring', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php72' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '869329b1e9894268a8a61dabb69153029b7a8c97', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php72', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php73' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '9e8ecb5f92152187c4799efd3c96b78ccab18ff9', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php73', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/polyfill-php80' => array('pretty_version' => 'v1.27.0', 'version' => '1.27.0.0', 'reference' => '7a6ff3f1959bb01aefccb463a0f2cd3d3d2fd936', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/polyfill-php80', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/service-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '4b426aac47d6427cc1a1d0f7e2ac724627f5966c', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/service-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/string' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => 'edac10d167b78b1d90f46a80320d632de0bd9f2f', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/string', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '6996affeea65705086939894b77110e9a7f80874', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-contracts' => array('pretty_version' => 'v2.5.2', 'version' => '2.5.2.0', 'reference' => '136b19dd05cdf0709db6537d058bcab6dd6e2dbe', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/translation-contracts', 'aliases' => array(), 'dev_requirement' => \false), 'symfony/translation-implementation' => array('dev_requirement' => \false, 'provided' => array(0 => '2.3')), 'symfony/var-dumper' => array('pretty_version' => 'v5.4.21', 'version' => '5.4.21.0', 'reference' => '6c5ac3a1be8b849d59a1a77877ee110e1b55eb74', 'type' => 'library', 'install_path' => __DIR__ . '/../symfony/var-dumper', 'aliases' => array(), 'dev_requirement' => \false), 'true/punycode' => array('pretty_version' => 'v2.1.1', 'version' => '2.1.1.0', 'reference' => 'a4d0c11a36dd7f4e7cd7096076cab6d3378a071e', 'type' => 'library', 'install_path' => __DIR__ . '/../true/punycode', 'aliases' => array(), 'dev_requirement' => \false), 'voku/portable-ascii' => array('pretty_version' => '1.6.1', 'version' => '1.6.1.0', 'reference' => '87337c91b9dfacee02452244ee14ab3c43bc485a', 'type' => 'library', 'install_path' => __DIR__ . '/../voku/portable-ascii', 'aliases' => array(), 'dev_requirement' => \false), 'wappointment/wappointment' => array('pretty_version' => 'dev-master', 'version' => 'dev-master', 'reference' => '6e9640e4eda9ece9d614912f9260c123bb13e8af', 'type' => 'worpdress-plugin', 'install_path' => __DIR__ . '/../../', 'aliases' => array(), 'dev_requirement' => \false))); -
wappointment/trunk/vendor/illuminate/collections/Collection.php
r3402120 r3442071 301 301 * @return static 302 302 */ 303 public function filter( callable $callback = null)303 public function filter(?callable $callback = null) 304 304 { 305 305 if ($callback) { … … 315 315 * @return mixed 316 316 */ 317 public function first( callable $callback = null, $default = null)317 public function first(?callable $callback = null, $default = null) 318 318 { 319 319 return Arr::first($this->items, $callback, $default); … … 560 560 * @return mixed 561 561 */ 562 public function last( callable $callback = null, $default = null)562 public function last(?callable $callback = null, $default = null) 563 563 { 564 564 return Arr::last($this->items, $callback, $default); -
wappointment/trunk/vendor/illuminate/collections/Enumerable.php
r2957466 r3442071 24 24 * @return static 25 25 */ 26 public static function times($number, callable $callback = null);26 public static function times($number, ?callable $callback = null); 27 27 /** 28 28 * Create a collection with the given range. … … 235 235 * @return static 236 236 */ 237 public function filter( callable $callback = null);237 public function filter(?callable $callback = null); 238 238 /** 239 239 * Apply the callback if the value is truthy. … … 252 252 * @return static|mixed 253 253 */ 254 public function whenEmpty(callable $callback, callable $default = null);254 public function whenEmpty(callable $callback, ?callable $default = null); 255 255 /** 256 256 * Apply the callback if the collection is not empty. … … 260 260 * @return static|mixed 261 261 */ 262 public function whenNotEmpty(callable $callback, callable $default = null);262 public function whenNotEmpty(callable $callback, ?callable $default = null); 263 263 /** 264 264 * Apply the callback if the value is falsy. … … 277 277 * @return static|mixed 278 278 */ 279 public function unlessEmpty(callable $callback, callable $default = null);279 public function unlessEmpty(callable $callback, ?callable $default = null); 280 280 /** 281 281 * Apply the callback unless the collection is not empty. … … 285 285 * @return static|mixed 286 286 */ 287 public function unlessNotEmpty(callable $callback, callable $default = null);287 public function unlessNotEmpty(callable $callback, ?callable $default = null); 288 288 /** 289 289 * Filter items by the given key value pair. … … 381 381 * @return mixed 382 382 */ 383 public function first( callable $callback = null, $default = null);383 public function first(?callable $callback = null, $default = null); 384 384 /** 385 385 * Get the first item by the given key value pair. … … 489 489 * @return mixed 490 490 */ 491 public function last( callable $callback = null, $default = null);491 public function last(?callable $callback = null, $default = null); 492 492 /** 493 493 * Run a map over each of the items. -
wappointment/trunk/vendor/illuminate/collections/Traits/EnumeratesValues.php
r3402120 r3442071 106 106 * @return static 107 107 */ 108 public static function times($number, callable $callback = null)108 public static function times($number, ?callable $callback = null) 109 109 { 110 110 if ($number < 1) { … … 388 388 * @return static|mixed 389 389 */ 390 public function when($value, callable $callback = null,callable $default = null)390 public function when($value, ?callable $callback = null, ?callable $default = null) 391 391 { 392 392 if (!$callback) { … … 407 407 * @return static|mixed 408 408 */ 409 public function whenEmpty(callable $callback, callable $default = null)409 public function whenEmpty(callable $callback, ?callable $default = null) 410 410 { 411 411 return $this->when($this->isEmpty(), $callback, $default); … … 418 418 * @return static|mixed 419 419 */ 420 public function whenNotEmpty(callable $callback, callable $default = null)420 public function whenNotEmpty(callable $callback, ?callable $default = null) 421 421 { 422 422 return $this->when($this->isNotEmpty(), $callback, $default); … … 441 441 * @return static|mixed 442 442 */ 443 public function unlessEmpty(callable $callback, callable $default = null)443 public function unlessEmpty(callable $callback, ?callable $default = null) 444 444 { 445 445 return $this->whenNotEmpty($callback, $default); … … 452 452 * @return static|mixed 453 453 */ 454 public function unlessNotEmpty(callable $callback, callable $default = null)454 public function unlessNotEmpty(callable $callback, ?callable $default = null) 455 455 { 456 456 return $this->whenEmpty($callback, $default); -
wappointment/trunk/vendor/illuminate/database/Eloquent/Builder.php
r3402120 r3442071 145 145 * @return $this 146 146 */ 147 public function withoutGlobalScopes( array $scopes = null)147 public function withoutGlobalScopes(?array $scopes = null) 148 148 { 149 149 if (!is_array($scopes)) { … … 435 435 * @return \Illuminate\Database\Eloquent\Model|static|mixed 436 436 */ 437 public function firstOr($columns = ['*'], Closure $callback = null)437 public function firstOr($columns = ['*'], ?Closure $callback = null) 438 438 { 439 439 if ($columns instanceof Closure) { -
wappointment/trunk/vendor/illuminate/database/Eloquent/Concerns/QueriesRelationships.php
r3402120 r3442071 27 27 * @throws \RuntimeException 28 28 */ 29 public function has($relation, $operator = '>=', $count = 1, $boolean = 'and', Closure $callback = null)29 public function has($relation, $operator = '>=', $count = 1, $boolean = 'and', ?Closure $callback = null) 30 30 { 31 31 if (is_string($relation)) { … … 99 99 * @return \Illuminate\Database\Eloquent\Builder|static 100 100 */ 101 public function doesntHave($relation, $boolean = 'and', Closure $callback = null)101 public function doesntHave($relation, $boolean = 'and', ?Closure $callback = null) 102 102 { 103 103 return $this->has($relation, '<', 1, $boolean, $callback); … … 122 122 * @return \Illuminate\Database\Eloquent\Builder|static 123 123 */ 124 public function whereHas($relation, Closure $callback = null, $operator = '>=', $count = 1)124 public function whereHas($relation, ?Closure $callback = null, $operator = '>=', $count = 1) 125 125 { 126 126 return $this->has($relation, $operator, $count, 'and', $callback); … … 135 135 * @return \Illuminate\Database\Eloquent\Builder|static 136 136 */ 137 public function orWhereHas($relation, Closure $callback = null, $operator = '>=', $count = 1)137 public function orWhereHas($relation, ?Closure $callback = null, $operator = '>=', $count = 1) 138 138 { 139 139 return $this->has($relation, $operator, $count, 'or', $callback); … … 146 146 * @return \Illuminate\Database\Eloquent\Builder|static 147 147 */ 148 public function whereDoesntHave($relation, Closure $callback = null)148 public function whereDoesntHave($relation, ?Closure $callback = null) 149 149 { 150 150 return $this->doesntHave($relation, 'and', $callback); … … 157 157 * @return \Illuminate\Database\Eloquent\Builder|static 158 158 */ 159 public function orWhereDoesntHave($relation, Closure $callback = null)159 public function orWhereDoesntHave($relation, ?Closure $callback = null) 160 160 { 161 161 return $this->doesntHave($relation, 'or', $callback); … … 172 172 * @return \Illuminate\Database\Eloquent\Builder|static 173 173 */ 174 public function hasMorph($relation, $types, $operator = '>=', $count = 1, $boolean = 'and', Closure $callback = null)174 public function hasMorph($relation, $types, $operator = '>=', $count = 1, $boolean = 'and', ?Closure $callback = null) 175 175 { 176 176 if (is_string($relation)) { … … 235 235 * @return \Illuminate\Database\Eloquent\Builder|static 236 236 */ 237 public function doesntHaveMorph($relation, $types, $boolean = 'and', Closure $callback = null)237 public function doesntHaveMorph($relation, $types, $boolean = 'and', ?Closure $callback = null) 238 238 { 239 239 return $this->hasMorph($relation, $types, '<', 1, $boolean, $callback); … … 260 260 * @return \Illuminate\Database\Eloquent\Builder|static 261 261 */ 262 public function whereHasMorph($relation, $types, Closure $callback = null, $operator = '>=', $count = 1)262 public function whereHasMorph($relation, $types, ?Closure $callback = null, $operator = '>=', $count = 1) 263 263 { 264 264 return $this->hasMorph($relation, $types, $operator, $count, 'and', $callback); … … 274 274 * @return \Illuminate\Database\Eloquent\Builder|static 275 275 */ 276 public function orWhereHasMorph($relation, $types, Closure $callback = null, $operator = '>=', $count = 1)276 public function orWhereHasMorph($relation, $types, ?Closure $callback = null, $operator = '>=', $count = 1) 277 277 { 278 278 return $this->hasMorph($relation, $types, $operator, $count, 'or', $callback); … … 286 286 * @return \Illuminate\Database\Eloquent\Builder|static 287 287 */ 288 public function whereDoesntHaveMorph($relation, $types, Closure $callback = null)288 public function whereDoesntHaveMorph($relation, $types, ?Closure $callback = null) 289 289 { 290 290 return $this->doesntHaveMorph($relation, $types, 'and', $callback); … … 298 298 * @return \Illuminate\Database\Eloquent\Builder|static 299 299 */ 300 public function orWhereDoesntHaveMorph($relation, $types, Closure $callback = null)300 public function orWhereDoesntHaveMorph($relation, $types, ?Closure $callback = null) 301 301 { 302 302 return $this->doesntHaveMorph($relation, $types, 'or', $callback); -
wappointment/trunk/vendor/illuminate/database/Eloquent/Relations/BelongsToMany.php
r3402120 r3442071 648 648 * @return \Illuminate\Database\Eloquent\Model|static|mixed 649 649 */ 650 public function firstOr($columns = ['*'], Closure $callback = null)650 public function firstOr($columns = ['*'], ?Closure $callback = null) 651 651 { 652 652 if ($columns instanceof Closure) { -
wappointment/trunk/vendor/illuminate/database/Eloquent/Relations/Relation.php
r3402120 r3442071 385 385 * @return array|null 386 386 */ 387 protected static function buildMorphMapFromModels( array $models = null)387 protected static function buildMorphMapFromModels(?array $models = null) 388 388 { 389 389 if (is_null($models) || Arr::isAssoc($models)) { -
wappointment/trunk/vendor/illuminate/database/MySqlConnection.php
r3402120 r3442071 61 61 * @return \Illuminate\Database\Schema\MySqlSchemaState 62 62 */ 63 public function getSchemaState( Filesystem $files = null,callable $processFactory = null)63 public function getSchemaState(?Filesystem $files = null, ?callable $processFactory = null) 64 64 { 65 65 return new MySqlSchemaState($this, $files, $processFactory); -
wappointment/trunk/vendor/illuminate/database/Query/Builder.php
r3402120 r3442071 183 183 * @return void 184 184 */ 185 public function __construct(ConnectionInterface $connection, Grammar $grammar = null,Processor $processor = null)185 public function __construct(ConnectionInterface $connection, ?Grammar $grammar = null, ?Processor $processor = null) 186 186 { 187 187 $this->connection = $connection; -
wappointment/trunk/vendor/nesbot/carbon/src/Carbon/CarbonTimeZone.php
r3402120 r3442071 132 132 * @return string 133 133 */ 134 public function toOffsetName( DateTimeInterface $date = null)134 public function toOffsetName(?DateTimeInterface $date = null) 135 135 { 136 136 return static::getOffsetNameFromMinuteOffset($this->getOffset($date ?: Carbon::now($this)) / 60); … … 143 143 * @return CarbonTimeZone 144 144 */ 145 public function toOffsetTimeZone( DateTimeInterface $date = null)145 public function toOffsetTimeZone(?DateTimeInterface $date = null) 146 146 { 147 147 return new static($this->toOffsetName($date)); … … 158 158 * @return string|false 159 159 */ 160 public function toRegionName( DateTimeInterface $date = null, $isDst = 1)160 public function toRegionName(?DateTimeInterface $date = null, $isDst = 1) 161 161 { 162 162 $name = $this->getName(); … … 192 192 * @return CarbonTimeZone|false 193 193 */ 194 public function toRegionTimeZone( DateTimeInterface $date = null)194 public function toRegionTimeZone(?DateTimeInterface $date = null) 195 195 { 196 196 $tz = $this->toRegionName($date); -
wappointment/trunk/vendor/nesbot/carbon/src/Carbon/Traits/Date.php
r3402120 r3442071 1265 1265 * @return int 1266 1266 */ 1267 public function getDaysFromStartOfWeek( int $weekStartsAt = null): int1267 public function getDaysFromStartOfWeek(?int $weekStartsAt = null): int 1268 1268 { 1269 1269 $firstDay = (int) ($weekStartsAt ?? $this->getTranslationMessage('first_day_of_week') ?? 0); … … 1281 1281 * @return static 1282 1282 */ 1283 public function setDaysFromStartOfWeek(int $numberOfDays, int $weekStartsAt = null)1283 public function setDaysFromStartOfWeek(int $numberOfDays, ?int $weekStartsAt = null) 1284 1284 { 1285 1285 return $this->addDays($numberOfDays - $this->getDaysFromStartOfWeek($weekStartsAt)); … … 1345 1345 * @return int|static 1346 1346 */ 1347 public function utcOffset( int $minuteOffset = null)1347 public function utcOffset(?int $minuteOffset = null) 1348 1348 { 1349 1349 if (\func_num_args() < 1) { -
wappointment/trunk/vendor/nesbot/carbon/src/Carbon/Traits/Localization.php
r3402120 r3442071 357 357 * @return $this|string 358 358 */ 359 public function locale( string $locale = null, ...$fallbackLocales)359 public function locale(?string $locale = null, ...$fallbackLocales) 360 360 { 361 361 if ($locale === null) { -
wappointment/trunk/vendor/nesbot/carbon/src/Carbon/Traits/Test.php
r3402120 r3442071 167 167 $time = $testInstance instanceof self ? $testInstance->rawFormat(static::MOCK_DATETIME_FORMAT) : $testInstance->format(static::MOCK_DATETIME_FORMAT); 168 168 } 169 private static function setDefaultTimezone($timezone, DateTimeInterface $date = null)169 private static function setDefaultTimezone($timezone, ?DateTimeInterface $date = null) 170 170 { 171 171 $previous = null; -
wappointment/trunk/vendor/nesbot/carbon/src/Carbon/Traits/Timestamp.php
r3402120 r3442071 26 26 * @return static 27 27 */ 28 #[\ReturnTypeWillChange] 28 29 public static function createFromTimestamp($timestamp, $tz = null) 29 30 { -
wappointment/trunk/vendor/symfony/translation-contracts/TranslatorInterface.php
r2957466 r3442071 63 63 * @throws \InvalidArgumentException If the locale contains invalid characters 64 64 */ 65 public function trans(string $id, array $parameters = [], string $domain = null,string $locale = null);65 public function trans(string $id, array $parameters = [], ?string $domain = null, ?string $locale = null); 66 66 } -
wappointment/trunk/wappointment.pot
r3414783 r3442071 1 # Copyright (C) 202 5Wappointment1 # Copyright (C) 2026 Wappointment 2 2 # This file is distributed under the same license as the Wappointment plugin. 3 3 msgid "" 4 4 msgstr "" 5 "Project-Id-Version: Wappointment 2.7. 2\n"5 "Project-Id-Version: Wappointment 2.7.3\n" 6 6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wappointment-plugin\n" 7 7 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" … … 10 10 "Content-Type: text/plain; charset=UTF-8\n" 11 11 "Content-Transfer-Encoding: 8bit\n" 12 "POT-Creation-Date: 202 5-12-08T23:23:08+00:00\n"12 "POT-Creation-Date: 2026-01-18T18:46:32+00:00\n" 13 13 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 14 "X-Generator: WP-CLI 2.12.0\n" … … 387 387 388 388 #: app/Lists/email_tags.php:25 389 msgid "Client's skype"390 msgstr ""391 392 #: app/Lists/email_tags.php:32393 389 #: app/Lists/translations_wizard.php:18 394 390 msgid "Service name" 395 391 msgstr "" 396 392 397 #: app/Lists/email_tags.php: 40393 #: app/Lists/email_tags.php:33 398 394 msgid "Service address" 399 395 msgstr "" 400 396 401 #: app/Lists/email_tags.php:4 8397 #: app/Lists/email_tags.php:41 402 398 msgid "Appointment's duration" 403 399 msgstr "" 404 400 405 #: app/Lists/email_tags.php: 54401 #: app/Lists/email_tags.php:47 406 402 msgid "Appointment's location" 407 403 msgstr "" 408 404 409 #: app/Lists/email_tags.php: 60405 #: app/Lists/email_tags.php:53 410 406 msgid "Appointment's date and time" 411 407 msgstr "" 412 408 413 #: app/Lists/email_tags.php: 66409 #: app/Lists/email_tags.php:59 414 410 msgid "Staff's Name" 415 411 msgstr "" 416 412 417 #: app/Lists/email_tags.php: 74413 #: app/Lists/email_tags.php:67 418 414 msgid "Order summary acting as a bill" 419 415 msgstr "" … … 574 570 575 571 #: app/Lists/translations_clients.php:7 576 msgid " Skype"572 msgid "Owes:" 577 573 msgstr "" 578 574 579 575 #: app/Lists/translations_clients.php:8 580 msgid "Owes:"581 msgstr ""582 583 #: app/Lists/translations_clients.php:9584 576 msgid "You don't have any clients yet" 585 577 msgstr "" … … 805 797 #: app/Lists/translations_js_common.php:53 806 798 #: app/Lists/translations_orders.php:6 807 #: app/Lists/widget_settings.php:11 5808 #: app/Lists/widget_translations.php:1 2799 #: app/Lists/widget_settings.php:112 800 #: app/Lists/widget_translations.php:11 809 801 #: app/Services/ViewsData.php:235 810 802 msgid "Cancel" … … 812 804 813 805 #: app/Lists/translations_js_common.php:54 814 #: app/Lists/widget_settings.php:8 4815 #: app/Lists/widget_settings.php:11 6816 #: app/Lists/widget_settings.php:12 3817 #: app/Lists/widget_settings.php:13 8806 #: app/Lists/widget_settings.php:82 807 #: app/Lists/widget_settings.php:113 808 #: app/Lists/widget_settings.php:120 809 #: app/Lists/widget_settings.php:135 818 810 msgid "Confirm" 819 811 msgstr "" … … 825 817 #: app/Lists/translations_js_common.php:56 826 818 #: app/Lists/translations_wizard.php:3 827 #: app/Lists/widget_settings.php:8 3819 #: app/Lists/widget_settings.php:81 828 820 msgid "Back" 829 821 msgstr "" … … 850 842 851 843 #: app/Lists/translations_js_common.php:62 852 #: app/Lists/widget_settings.php:1 22853 #: app/Lists/widget_translations.php:1 1844 #: app/Lists/widget_settings.php:119 845 #: app/Lists/widget_translations.php:10 854 846 msgid "Reschedule" 855 847 msgstr "" … … 1195 1187 1196 1188 #: app/Lists/translations_settings.php:68 1197 msgid " Skypesession"1189 msgid "Video session" 1198 1190 msgstr "" 1199 1191 1200 1192 #: app/Lists/translations_settings.php:69 1201 msgid " Video session"1193 msgid "Session at an address" 1202 1194 msgstr "" 1203 1195 1204 1196 #: app/Lists/translations_settings.php:70 1205 msgid "Session at an address"1206 msgstr ""1207 1208 #: app/Lists/translations_settings.php:711209 1197 msgid "Link to a Wappointment page" 1210 1198 msgstr "" 1211 1199 1200 #: app/Lists/translations_settings.php:74 1201 msgid "Manage services" 1202 msgstr "" 1203 1212 1204 #: app/Lists/translations_settings.php:75 1213 msgid " Manage services"1205 msgid "Sell packages" 1214 1206 msgstr "" 1215 1207 1216 1208 #: app/Lists/translations_settings.php:76 1217 msgid " Sell packages"1209 msgid "Currency:" 1218 1210 msgstr "" 1219 1211 1220 1212 #: app/Lists/translations_settings.php:77 1221 msgid " Currency:"1213 msgid "Tax:" 1222 1214 msgstr "" 1223 1215 1224 1216 #: app/Lists/translations_settings.php:78 1225 msgid " Tax:"1217 msgid "Payments accepted:" 1226 1218 msgstr "" 1227 1219 1228 1220 #: app/Lists/translations_settings.php:79 1229 msgid " Payments accepted:"1221 msgid "Inserts dynamic data" 1230 1222 msgstr "" 1231 1223 1232 1224 #: app/Lists/translations_settings.php:80 1233 msgid " Inserts dynamic data"1225 msgid "Show selection only when condition is met" 1234 1226 msgstr "" 1235 1227 1236 1228 #: app/Lists/translations_settings.php:81 1237 msgid "S how selection only when condition is met"1229 msgid "Select text to enable" 1238 1230 msgstr "" 1239 1231 1240 1232 #: app/Lists/translations_settings.php:82 1241 msgid "Select text to enable"1242 msgstr ""1243 1244 #: app/Lists/translations_settings.php:831245 1233 msgid "Shows when" 1246 1234 msgstr "" 1247 1235 1248 #: app/Lists/translations_settings.php:8 51236 #: app/Lists/translations_settings.php:84 1249 1237 msgid "Emails & SMS" 1250 1238 msgstr "" 1251 1239 1252 #: app/Lists/translations_settings.php:8 71240 #: app/Lists/translations_settings.php:86 1253 1241 msgid "Appearance" 1254 1242 msgstr "" 1255 1243 1256 #: app/Lists/translations_settings.php:8 91257 #: app/Lists/widget_fields.php:19 91244 #: app/Lists/translations_settings.php:88 1245 #: app/Lists/widget_fields.php:196 1258 1246 msgid "Advanced" 1259 1247 msgstr "" 1260 1248 1249 #: app/Lists/translations_settings.php:90 1250 msgid "You can only unpublish it" 1251 msgstr "" 1252 1261 1253 #: app/Lists/translations_settings.php:91 1262 msgid " You can only unpublish it"1254 msgid "When is the reminder sent? (before the appointment)" 1263 1255 msgstr "" 1264 1256 1265 1257 #: app/Lists/translations_settings.php:92 1266 msgid " When is the reminder sent? (before the appointment)"1258 msgid "Select unit" 1267 1259 msgstr "" 1268 1260 1269 1261 #: app/Lists/translations_settings.php:93 1270 msgid " Select unit"1262 msgid "Header Image" 1271 1263 msgstr "" 1272 1264 1273 1265 #: app/Lists/translations_settings.php:94 1274 msgid " Header Image"1266 msgid "Subject" 1275 1267 msgstr "" 1276 1268 1277 1269 #: app/Lists/translations_settings.php:95 1278 msgid "Subject"1279 msgstr ""1280 1281 #: app/Lists/translations_settings.php:961282 1270 msgid "Select an image" 1283 1271 msgstr "" … … 1333 1321 1334 1322 #: app/Lists/translations_wizard.php:21 1335 #: app/Lists/widget_settings.php:7 71323 #: app/Lists/widget_settings.php:76 1336 1324 msgid "Video meeting" 1337 1325 msgstr "" … … 1342 1330 1343 1331 #: app/Lists/translations_wizard.php:23 1344 #: app/Lists/widget_settings.php:7 61332 #: app/Lists/widget_settings.php:75 1345 1333 msgid "By Phone" 1346 1334 msgstr "" 1347 1335 1348 1336 #: app/Lists/translations_wizard.php:24 1349 #: app/Lists/widget_settings.php:75 1350 msgid "By Skype" 1337 msgid "Address" 1351 1338 msgstr "" 1352 1339 1353 1340 #: app/Lists/translations_wizard.php:25 1354 msgid " Address"1341 msgid "Clients must provide a phone number when booking" 1355 1342 msgstr "" 1356 1343 1357 1344 #: app/Lists/translations_wizard.php:26 1358 msgid " Clients must provide a phone number when booking"1345 msgid "Accepted countries for phone field" 1359 1346 msgstr "" 1360 1347 1361 1348 #: app/Lists/translations_wizard.php:27 1362 msgid "Accepted countries for phone field"1363 msgstr ""1364 1365 #: app/Lists/translations_wizard.php:281366 1349 msgid "Select your video meeting app" 1367 1350 msgstr "" 1368 1351 1352 #: app/Lists/translations_wizard.php:29 1353 msgid "Booking Widget Setup" 1354 msgstr "" 1355 1369 1356 #: app/Lists/translations_wizard.php:30 1370 msgid " Booking Widget Setup"1357 msgid "You can edit the style and content of the booking widget later from" 1371 1358 msgstr "" 1372 1359 1373 1360 #: app/Lists/translations_wizard.php:31 1374 msgid "You can edit the style and content of the booking widget later from"1375 msgstr ""1376 1377 #: app/Lists/translations_wizard.php:321378 1361 msgid "Create a booking page" 1379 1362 msgstr "" 1380 1363 1364 #: app/Lists/translations_wizard.php:33 1365 msgid "Yayyyy! You're done!" 1366 msgstr "" 1367 1381 1368 #: app/Lists/translations_wizard.php:34 1382 msgid " Yayyyy! You're done!"1369 msgid "Welcome to your Calendar page!" 1383 1370 msgstr "" 1384 1371 1385 1372 #: app/Lists/translations_wizard.php:35 1386 msgid " Welcome to your Calendar page!"1373 msgid "From here you can:" 1387 1374 msgstr "" 1388 1375 1389 1376 #: app/Lists/translations_wizard.php:36 1390 msgid " From here you can:"1377 msgid "Review your availability and appointments" 1391 1378 msgstr "" 1392 1379 1393 1380 #: app/Lists/translations_wizard.php:37 1394 msgid " Review your availability and appointments"1381 msgid "Block times when you're busy" 1395 1382 msgstr "" 1396 1383 1397 1384 #: app/Lists/translations_wizard.php:38 1398 msgid " Block times when you're busy"1385 msgid "Add extra bookable time" 1399 1386 msgstr "" 1400 1387 1401 1388 #: app/Lists/translations_wizard.php:39 1402 msgid "Add extra bookable time"1403 msgstr ""1404 1405 #: app/Lists/translations_wizard.php:401406 1389 msgid "Book appointments on behalf of your clients" 1407 1390 msgstr "" … … 1521 1504 msgstr "" 1522 1505 1523 #: app/Lists/widget_fields.php:14 51506 #: app/Lists/widget_fields.php:144 1524 1507 msgid "Booking Form" 1525 1508 msgstr "" 1526 1509 1527 #: app/Lists/widget_fields.php:15 41510 #: app/Lists/widget_fields.php:152 1528 1511 msgid "Add data proccessing notice" 1529 1512 msgstr "" 1530 1513 1531 #: app/Lists/widget_fields.php:16 51514 #: app/Lists/widget_fields.php:163 1532 1515 msgid "Appointment Confirmed" 1533 1516 msgstr "" 1534 1517 1518 #: app/Lists/widget_fields.php:173 1519 msgid "Conditional confirmation" 1520 msgstr "" 1521 1535 1522 #: app/Lists/widget_fields.php:175 1536 msgid "Conditional confirmation" 1523 msgid "When admin confirmation is required" 1524 msgstr "" 1525 1526 #: app/Lists/widget_fields.php:176 1527 msgid "Phone appointments only" 1537 1528 msgstr "" 1538 1529 1539 1530 #: app/Lists/widget_fields.php:177 1540 msgid " When admin confirmation is required"1531 msgid "Appointments at a location only" 1541 1532 msgstr "" 1542 1533 1543 1534 #: app/Lists/widget_fields.php:178 1544 msgid "Skype appointments only"1545 msgstr ""1546 1547 #: app/Lists/widget_fields.php:1791548 msgid "Phone appointments only"1549 msgstr ""1550 1551 #: app/Lists/widget_fields.php:1801552 msgid "Appointments at a location only"1553 msgstr ""1554 1555 #: app/Lists/widget_fields.php:1811556 1535 msgid "Video appointments only" 1557 1536 msgstr "" 1558 1537 1559 #: app/Lists/widget_fields.php:1 901538 #: app/Lists/widget_fields.php:187 1560 1539 msgid "On Site Payment" 1561 1540 msgstr "" 1562 1541 1563 #: app/Lists/widget_fields.php: 2021542 #: app/Lists/widget_fields.php:199 1564 1543 msgid "Add TOS and privacy links" 1565 1544 msgstr "" 1566 1545 1567 #: app/Lists/widget_fields.php: 2021546 #: app/Lists/widget_fields.php:199 1568 1547 msgid "Privacy link is in previous step" 1569 1548 msgstr "" … … 1626 1605 msgstr "" 1627 1606 1607 #: app/Lists/widget_settings.php:77 1608 msgid "At a Location" 1609 msgstr "" 1610 1628 1611 #: app/Lists/widget_settings.php:78 1629 msgid " At a Location"1612 msgid "Full Name:" 1630 1613 msgstr "" 1631 1614 1632 1615 #: app/Lists/widget_settings.php:79 1633 msgid " Full Name:"1616 msgid "Email:" 1634 1617 msgstr "" 1635 1618 1636 1619 #: app/Lists/widget_settings.php:80 1637 msgid "Email:"1638 msgstr ""1639 1640 #: app/Lists/widget_settings.php:811641 1620 msgid "Phone:" 1642 1621 msgstr "" 1643 1622 1644 #: app/Lists/widget_settings.php:821645 msgid "Skype username:"1646 msgstr ""1647 1648 1623 #. translators: %s - a "we process your data" link is added. 1649 #: app/Lists/widget_settings.php:8 71624 #: app/Lists/widget_settings.php:85 1650 1625 #, php-format 1651 1626 msgid "View %s" … … 1653 1628 1654 1629 #. translators: %s - a "we process your data" link is added. 1655 #: app/Lists/widget_settings.php:8 71656 #: app/Lists/widget_settings.php:14 71630 #: app/Lists/widget_settings.php:85 1631 #: app/Lists/widget_settings.php:144 1657 1632 msgid "the privacy policy" 1658 1633 msgstr "" 1659 1634 1635 #: app/Lists/widget_settings.php:89 1636 msgid "Appointment Booked" 1637 msgstr "" 1638 1639 #: app/Lists/widget_settings.php:90 1640 msgid "When:" 1641 msgstr "" 1642 1660 1643 #: app/Lists/widget_settings.php:91 1661 msgid " Appointment Booked"1644 msgid "Service:" 1662 1645 msgstr "" 1663 1646 1664 1647 #: app/Lists/widget_settings.php:92 1665 msgid " When:"1648 msgid "Duration:" 1666 1649 msgstr "" 1667 1650 1668 1651 #: app/Lists/widget_settings.php:93 1669 msgid "Service:" 1670 msgstr "" 1671 1672 #: app/Lists/widget_settings.php:94 1673 msgid "Duration:" 1674 msgstr "" 1675 1652 msgid "The appointment is pending and should be quickly confirmed" 1653 msgstr "" 1654 1655 #. translators: %s - a "here" link is added. 1676 1656 #: app/Lists/widget_settings.php:95 1677 msgid "The appointment is pending and should be quickly confirmed" 1657 #, php-format 1658 msgid "The appointment will take place by Video meeting online, the link will show %s." 1659 msgstr "" 1660 1661 #. translators: %s - a "here" link is added. 1662 #: app/Lists/widget_settings.php:95 1663 #: app/Services/Reminder.php:192 1664 msgid "here" 1678 1665 msgstr "" 1679 1666 1680 1667 #: app/Lists/widget_settings.php:96 1681 msgid "The appointment will take place on Skype, we will call you on this account:" 1682 msgstr "" 1683 1684 #. translators: %s - a "here" link is added. 1668 msgid "The appointment will take place over the phone, we will call you on this number:" 1669 msgstr "" 1670 1671 #: app/Lists/widget_settings.php:97 1672 msgid "The appointment will take place at this address:" 1673 msgstr "" 1674 1685 1675 #: app/Lists/widget_settings.php:98 1686 #, php-format 1687 msgid "The appointment will take place by Video meeting online, the link will show %s." 1688 msgstr "" 1689 1690 #. translators: %s - a "here" link is added. 1691 #: app/Lists/widget_settings.php:98 1692 #: app/Services/Reminder.php:196 1693 msgid "here" 1694 msgstr "" 1695 1696 #: app/Lists/widget_settings.php:99 1697 msgid "The appointment will take place over the phone, we will call you on this number:" 1698 msgstr "" 1699 1700 #: app/Lists/widget_settings.php:100 1701 msgid "The appointment will take place at this address:" 1676 msgid "Save it to your calendar" 1702 1677 msgstr "" 1703 1678 1704 1679 #: app/Lists/widget_settings.php:101 1705 msgid "Save it to your calendar" 1706 msgstr "" 1707 1680 msgid "Join Meeting" 1681 msgstr "" 1682 1683 #: app/Lists/widget_settings.php:102 1684 msgid "The meeting room link will appear once it is time to start." 1685 msgstr "" 1686 1687 #. translators: %1$s - number of days, %2$s - number of hours, %3$s - number of minutes, %4$s - number of seconds 1708 1688 #: app/Lists/widget_settings.php:104 1709 msgid "Join Meeting" 1710 msgstr "" 1711 1712 #: app/Lists/widget_settings.php:105 1713 msgid "The meeting room link will appear once it is time to start." 1714 msgstr "" 1715 1716 #. translators: %1$s - number of days, %2$s - number of hours, %3$s - number of minutes, %4$s - number of seconds 1689 #, php-format 1690 msgid "(%1$sd %2$sh %3$sm %4$ss)" 1691 msgstr "" 1692 1717 1693 #: app/Lists/widget_settings.php:107 1718 #, php-format 1719 msgid "(%1$sd %2$sh %3$sm %4$ss)" 1694 msgid "Cancel Appointment" 1695 msgstr "" 1696 1697 #: app/Lists/widget_settings.php:108 1698 #: app/Lists/widget_settings.php:117 1699 msgid "Appointment details" 1700 msgstr "" 1701 1702 #: app/Lists/widget_settings.php:109 1703 msgid "Appointment has been cancelled!" 1720 1704 msgstr "" 1721 1705 1722 1706 #: app/Lists/widget_settings.php:110 1723 msgid " Cancel Appointment"1707 msgid "Are you sure you want to cancel your appointment?" 1724 1708 msgstr "" 1725 1709 1726 1710 #: app/Lists/widget_settings.php:111 1727 #: app/Lists/widget_settings.php:1201728 msgid "Appointment details"1729 msgstr ""1730 1731 #: app/Lists/widget_settings.php:1121732 msgid "Appointment has been cancelled!"1733 msgstr ""1734 1735 #: app/Lists/widget_settings.php:1131736 msgid "Are you sure you want to cancel your appointment?"1737 msgstr ""1738 1739 #: app/Lists/widget_settings.php:1141740 1711 msgid "Too late to cancel" 1741 1712 msgstr "" 1742 1713 1743 #: app/Lists/widget_settings.php:11 91714 #: app/Lists/widget_settings.php:116 1744 1715 msgid "Reschedule Appointment" 1745 1716 msgstr "" 1746 1717 1747 #: app/Lists/widget_settings.php:1 211718 #: app/Lists/widget_settings.php:118 1748 1719 msgid "Too late to reschedule" 1749 1720 msgstr "" 1750 1721 1722 #: app/Lists/widget_settings.php:123 1723 msgid "Pick a service" 1724 msgstr "" 1725 1751 1726 #: app/Lists/widget_settings.php:126 1752 msgid " Pick a service"1727 msgid "How long will the session be?" 1753 1728 msgstr "" 1754 1729 1755 1730 #: app/Lists/widget_settings.php:129 1756 msgid "How long will the session be?"1757 msgstr ""1758 1759 #: app/Lists/widget_settings.php:1321760 1731 msgid "How should we meet?" 1761 1732 msgstr "" 1762 1733 1763 #: app/Lists/widget_settings.php:13 61734 #: app/Lists/widget_settings.php:133 1764 1735 msgid "Pay later" 1765 1736 msgstr "" 1766 1737 1767 #: app/Lists/widget_settings.php:13 71738 #: app/Lists/widget_settings.php:134 1768 1739 msgid "You will pay on the day of your appointment" 1769 1740 msgstr "" 1770 1741 1771 1742 #. translators: %1$s - "the terms of sale" %2$s - "privacy policy" 1772 #: app/Lists/widget_settings.php:14 51743 #: app/Lists/widget_settings.php:142 1773 1744 #, php-format 1774 1745 msgid "You agree to %1$s and %2$s" 1775 1746 msgstr "" 1776 1747 1777 #: app/Lists/widget_settings.php:14 61748 #: app/Lists/widget_settings.php:143 1778 1749 msgid "the terms of sale" 1779 1750 msgstr "" … … 1816 1787 1817 1788 #: app/Lists/widget_translations.php:3 1789 #: app/Services/IcsGenerator.php:179 1790 msgid "Appointment is a Video meeting" 1791 msgstr "" 1792 1793 #: app/Lists/widget_translations.php:4 1818 1794 #: app/Services/IcsGenerator.php:180 1819 msgid "Appointment is a Video meeting"1820 msgstr ""1821 1822 #: app/Lists/widget_translations.php:41823 #: app/Services/IcsGenerator.php:1811824 1795 msgid "Meeting will be accessible from the link below:" 1825 1796 msgstr "" … … 1837 1808 #. translators: %s is replaced with a "Begin the meeting" button linking to a wappointment page 1838 1809 #: app/Lists/widget_translations.php:8 1839 #: app/Messages/AdminGeneratesDefault.php:5 41810 #: app/Messages/AdminGeneratesDefault.php:50 1840 1811 msgid "Begin meeting" 1841 1812 msgstr "" 1842 1813 1843 1814 #: app/Lists/widget_translations.php:9 1844 msgid "Appointment on Skype"1845 msgstr ""1846 1847 #: app/Lists/widget_translations.php:101848 1815 msgid "Appointment is taking place at this address" 1849 1816 msgstr "" … … 1968 1935 msgstr "" 1969 1936 1970 #. translators: %s is replaced with the client's skype username1971 #: app/Messages/AdminGeneratesDefault.php:471972 #, php-format1973 msgid "Client's skype: %s"1974 msgstr ""1975 1976 1937 #. translators: %s is replaced with a "Begin the meeting" button linking to a wappointment page 1977 #: app/Messages/AdminGeneratesDefault.php:5 41938 #: app/Messages/AdminGeneratesDefault.php:50 1978 1939 #, php-format 1979 1940 msgid "Video meeting: %s" … … 2066 2027 #. translators: %1$s - date %2$s rescheule link. 2067 2028 #: app/Models/Appointment/ManipulateCancelReschedule.php:21 2068 #: app/Services/IcsGenerator.php:1 902029 #: app/Services/IcsGenerator.php:189 2069 2030 #, php-format 2070 2031 msgid "Reschedule (until %1$s): %2$s" … … 2073 2034 #. translators: %1$s - date %2$s cancel link. 2074 2035 #: app/Models/Appointment/ManipulateCancelReschedule.php:30 2075 #: app/Services/IcsGenerator.php:19 22036 #: app/Services/IcsGenerator.php:191 2076 2037 #, php-format 2077 2038 msgid "Cancel (until %1$s): %2$s" … … 2086 2047 #: app/Models/CanBook.php:81 2087 2048 #: app/Models/CanBookLegacy.php:44 2088 #: app/Services/AdminLegacy.php: 712049 #: app/Services/AdminLegacy.php:65 2089 2050 msgid "Error while booking" 2090 2051 msgstr "" … … 2202 2163 msgstr "" 2203 2164 2204 #: app/Services/IcsGenerator.php:18 82165 #: app/Services/IcsGenerator.php:187 2205 2166 msgid "Need to modify this event?" 2206 2167 msgstr "" 2207 2168 2208 2169 #. translators: %s is replaced with https://wappointment.com 2209 #: app/Services/IcsGenerator.php:20 22170 #: app/Services/IcsGenerator.php:201 2210 2171 #, php-format 2211 2172 msgid "Booked with %s" … … 2362 2323 msgstr "" 2363 2324 2364 #. translators: %s - client's skype username 2365 #: app/Services/Reminder.php:191 2366 #, php-format 2367 msgid "It will take place on Skype, we will call you on this account: %s" 2368 msgstr "" 2369 2370 #: app/Services/Reminder.php:194 2325 #: app/Services/Reminder.php:190 2371 2326 msgid "It will take place by video online." 2372 2327 msgstr "" 2373 2328 2374 2329 #. translators: %s - a "here" link is added. 2375 #: app/Services/Reminder.php:19 62330 #: app/Services/Reminder.php:192 2376 2331 #, php-format 2377 2332 msgid "Click %s to begin the meeting" 2378 2333 msgstr "" 2379 2334 2380 #: app/Services/Reminder.php:21 92335 #: app/Services/Reminder.php:215 2381 2336 msgid "Your appointment has been confirmed" 2382 2337 msgstr "" 2383 2338 2384 #: app/Services/Reminder.php:2 312339 #: app/Services/Reminder.php:227 2385 2340 msgid "Don't forget your appointment" 2386 2341 msgstr "" … … 2473 2428 2474 2429 #: app/Validators/HttpRequest/Booking.php:27 2475 #: app/Validators/HttpRequest/Client.php:142476 2430 #: app/Validators/HttpRequest/LegacyBooking.php:14 2477 #: app/Validators/HttpRequest/LegacyBookingAdmin.php:142478 msgid "Your skype username is not valid"2479 msgstr ""2480 2481 #: app/Validators/HttpRequest/Booking.php:282482 #: app/Validators/HttpRequest/LegacyBooking.php:152483 2431 msgid "The selected time is not valid" 2484 2432 msgstr ""
Note: See TracChangeset
for help on using the changeset viewer.