Enable the change of the brand logo and colors from the backend (#789).
This commit is contained in:
parent
cd51576217
commit
e9a9314909
39 changed files with 563 additions and 8 deletions
|
@ -61,6 +61,8 @@ class Booking extends EA_Controller {
|
||||||
}
|
}
|
||||||
|
|
||||||
$company_name = setting('company_name');
|
$company_name = setting('company_name');
|
||||||
|
$company_logo = setting('company_logo');
|
||||||
|
$company_color = setting('company_color');
|
||||||
$disable_booking = setting('disable_booking');
|
$disable_booking = setting('disable_booking');
|
||||||
$google_analytics_code = setting('google_analytics_code');
|
$google_analytics_code = setting('google_analytics_code');
|
||||||
$matomo_analytics_url = setting('matomo_analytics_url');
|
$matomo_analytics_url = setting('matomo_analytics_url');
|
||||||
|
@ -220,6 +222,8 @@ class Booking extends EA_Controller {
|
||||||
'available_services' => $available_services,
|
'available_services' => $available_services,
|
||||||
'available_providers' => $available_providers,
|
'available_providers' => $available_providers,
|
||||||
'company_name' => $company_name,
|
'company_name' => $company_name,
|
||||||
|
'company_logo' => $company_logo,
|
||||||
|
'company_color' => $company_color,
|
||||||
'date_format' => $date_format,
|
'date_format' => $date_format,
|
||||||
'time_format' => $time_format,
|
'time_format' => $time_format,
|
||||||
'first_weekday' => $first_weekday,
|
'first_weekday' => $first_weekday,
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -345,4 +345,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
|
@ -346,4 +346,13 @@ $lang['disable_booking'] = 'Disable Booking';
|
||||||
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
$lang['disable_booking_hint'] = 'The booking page will be disabled for as long as this setting is active and customers will not be able to register new appointments.';
|
||||||
$lang['display_message'] = 'Display Message';
|
$lang['display_message'] = 'Display Message';
|
||||||
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
$lang['booking_is_disabled'] = 'Booking Is Disabled!';
|
||||||
|
$lang['appearance'] = 'Appearance';
|
||||||
|
$lang['company_logo'] = 'Company Logo';
|
||||||
|
$lang['company_logo_hint'] = 'The company logo will be displayed in many places of the app, including the booking page and the notification emails (image file, max 2MB).';
|
||||||
|
$lang['company_color'] = 'Company Color';
|
||||||
|
$lang['company_color_hint'] = 'The company color will be applied across the app so that it the app uses your branding.';
|
||||||
|
$lang['localization'] = 'Localization';
|
||||||
|
$lang['integrations'] = 'Integrations';
|
||||||
|
$lang['company'] = 'Company';
|
||||||
|
$lang['remove'] = 'Remove';
|
||||||
// End
|
// End
|
||||||
|
|
41
application/migrations/032_add_company_logo_setting.php
Normal file
41
application/migrations/032_add_company_logo_setting.php
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
<?php defined('BASEPATH') or exit('No direct script access allowed');
|
||||||
|
|
||||||
|
/* ----------------------------------------------------------------------------
|
||||||
|
* Easy!Appointments - Online Appointment Scheduler
|
||||||
|
*
|
||||||
|
* @package EasyAppointments
|
||||||
|
* @author A.Tselegidis <alextselegidis@gmail.com>
|
||||||
|
* @copyright Copyright (c) Alex Tselegidis
|
||||||
|
* @license https://opensource.org/licenses/GPL-3.0 - GPLv3
|
||||||
|
* @link https://easyappointments.org
|
||||||
|
* @since v1.4.0
|
||||||
|
* ---------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
class Migration_Add_company_logo_setting extends EA_Migration {
|
||||||
|
/**
|
||||||
|
* Upgrade method.
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
if ( ! $this->db->get_where('settings', ['name' => 'company_logo'])->num_rows())
|
||||||
|
{
|
||||||
|
$this->db->insert('settings', [
|
||||||
|
'name' => 'company_logo',
|
||||||
|
'value' => ''
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Downgrade method.
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
if ( ! $this->db->get_where('settings', ['name' => 'company_logo'])->num_rows())
|
||||||
|
{
|
||||||
|
$this->db->delete('settings', [
|
||||||
|
'name' => 'company_logo',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
41
application/migrations/033_add_company_color_setting.php
Normal file
41
application/migrations/033_add_company_color_setting.php
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
<?php defined('BASEPATH') or exit('No direct script access allowed');
|
||||||
|
|
||||||
|
/* ----------------------------------------------------------------------------
|
||||||
|
* Easy!Appointments - Online Appointment Scheduler
|
||||||
|
*
|
||||||
|
* @package EasyAppointments
|
||||||
|
* @author A.Tselegidis <alextselegidis@gmail.com>
|
||||||
|
* @copyright Copyright (c) Alex Tselegidis
|
||||||
|
* @license https://opensource.org/licenses/GPL-3.0 - GPLv3
|
||||||
|
* @link https://easyappointments.org
|
||||||
|
* @since v1.4.0
|
||||||
|
* ---------------------------------------------------------------------------- */
|
||||||
|
|
||||||
|
class Migration_Add_company_color_setting extends EA_Migration {
|
||||||
|
/**
|
||||||
|
* Upgrade method.
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
if ( ! $this->db->get_where('settings', ['name' => 'company_color'])->num_rows())
|
||||||
|
{
|
||||||
|
$this->db->insert('settings', [
|
||||||
|
'name' => 'company_color',
|
||||||
|
'value' => '#ffffff'
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Downgrade method.
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
if ( ! $this->db->get_where('settings', ['name' => 'company_color'])->num_rows())
|
||||||
|
{
|
||||||
|
$this->db->delete('settings', [
|
||||||
|
'name' => 'company_color',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -3,6 +3,7 @@
|
||||||
* Local variables.
|
* Local variables.
|
||||||
*
|
*
|
||||||
* @var string $active_menu
|
* @var string $active_menu
|
||||||
|
* @var string $company_logo
|
||||||
*/
|
*/
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|
|
@ -8,8 +8,13 @@
|
||||||
|
|
||||||
<div id="header">
|
<div id="header">
|
||||||
<div id="company-name">
|
<div id="company-name">
|
||||||
<?= $company_name ?>
|
<img src="<?= vars('company_logo') ?: base_url('assets/img/logo.png') ?>" alt="logo" id="company-logo">
|
||||||
<div class="d-flex justify-content-center">
|
|
||||||
|
<span>
|
||||||
|
<?= $company_name ?>
|
||||||
|
</span>
|
||||||
|
|
||||||
|
<div class="d-flex justify-content-center justify-content-md-start">
|
||||||
<span class="display-selected-service me-2">
|
<span class="display-selected-service me-2">
|
||||||
[<?= lang('service') ?>]
|
[<?= lang('service') ?>]
|
||||||
</span>
|
</span>
|
||||||
|
|
92
application/views/components/company_color_style.php
Normal file
92
application/views/components/company_color_style.php
Normal file
|
@ -0,0 +1,92 @@
|
||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* @var string $company_color
|
||||||
|
*/
|
||||||
|
?>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
a {
|
||||||
|
color: <?= $company_color ?>;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
color: <?= $company_color ?>;
|
||||||
|
filter: brightness(120%);
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-primary {
|
||||||
|
background-color: <?= $company_color ?>;
|
||||||
|
border-color: <?= $company_color ?>;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-primary:hover {
|
||||||
|
background-color: <?= $company_color ?>;
|
||||||
|
border-color: <?= $company_color ?>;
|
||||||
|
filter: brightness(120%);
|
||||||
|
}
|
||||||
|
|
||||||
|
#book-appointment-wizard #header {
|
||||||
|
background: <?= $company_color ?>;
|
||||||
|
}
|
||||||
|
|
||||||
|
#book-appointment-wizard #company-name .display-selected-service,
|
||||||
|
#book-appointment-wizard #company-name .display-selected-provider {
|
||||||
|
color: <?= $company_color ?>;
|
||||||
|
filter: brightness(50%);
|
||||||
|
}
|
||||||
|
|
||||||
|
#book-appointment-wizard .book-step {
|
||||||
|
background: <?= $company_color ?>;
|
||||||
|
filter: brightness(75%);
|
||||||
|
}
|
||||||
|
|
||||||
|
#book-appointment-wizard .book-step strong {
|
||||||
|
color: <?= $company_color ?>;
|
||||||
|
filter: brightness(200%);
|
||||||
|
}
|
||||||
|
|
||||||
|
body .ui-widget.ui-widget-content {
|
||||||
|
border-color: <?= $company_color ?>;
|
||||||
|
}
|
||||||
|
|
||||||
|
body .ui-datepicker .ui-widget-header {
|
||||||
|
background-color: <?= $company_color ?>;
|
||||||
|
}
|
||||||
|
|
||||||
|
body .ui-datepicker th {
|
||||||
|
background-color: <?= $company_color ?>;
|
||||||
|
}
|
||||||
|
|
||||||
|
body .ui-datepicker .ui-datepicker-next-hover,
|
||||||
|
body .ui-datepicker .ui-datepicker-prev-hover {
|
||||||
|
background: <?= $company_color ?>;
|
||||||
|
border-color: <?= $company_color ?>;
|
||||||
|
filter: brightness(140%);
|
||||||
|
}
|
||||||
|
|
||||||
|
body .ui-datepicker td a, body .ui-datepicker td span {
|
||||||
|
color: <?= $company_color ?> !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
html body .ui-datepicker td a.ui-state-active {
|
||||||
|
background: <?= $company_color ?> !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body .ui-datepicker td a.ui-state-highlight {
|
||||||
|
background: <?= $company_color ?> !important;
|
||||||
|
filter: brightness(140%);
|
||||||
|
}
|
||||||
|
|
||||||
|
#book-appointment-wizard #available-hours .selected-hour {
|
||||||
|
background-color: <?= $company_color ?> ;
|
||||||
|
border-color: <?= $company_color ?> ;
|
||||||
|
}
|
||||||
|
|
||||||
|
#frame-footer .backend-link {
|
||||||
|
background-color: <?= $company_color ?> !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#frame-footer .backend-link:hover {
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
</style>
|
|
@ -18,6 +18,8 @@
|
||||||
<link rel="stylesheet" type="text/css" href="<?= asset_url('assets/css/bootstrap.css') ?>">
|
<link rel="stylesheet" type="text/css" href="<?= asset_url('assets/css/bootstrap.css') ?>">
|
||||||
<link rel="stylesheet" type="text/css" href="<?= asset_url('assets/css/general.css') ?>">
|
<link rel="stylesheet" type="text/css" href="<?= asset_url('assets/css/general.css') ?>">
|
||||||
<link rel="stylesheet" type="text/css" href="<?= asset_url('assets/css/layouts/booking_layout.css') ?>">
|
<link rel="stylesheet" type="text/css" href="<?= asset_url('assets/css/layouts/booking_layout.css') ?>">
|
||||||
|
|
||||||
|
<?php component('company_color_style', ['company_color' => vars('company_color')]) ?>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body>
|
<body>
|
||||||
|
@ -25,7 +27,7 @@
|
||||||
<div class="row wrapper">
|
<div class="row wrapper">
|
||||||
<div id="book-appointment-wizard" class="col-12 col-lg-10 col-xl-8">
|
<div id="book-appointment-wizard" class="col-12 col-lg-10 col-xl-8">
|
||||||
|
|
||||||
<?php component('booking_header', ['company_name' => vars('company_name')]) ?>
|
<?php component('booking_header', ['company_name' => vars('company_name'), 'company_logo' => vars('company_logo')]) ?>
|
||||||
|
|
||||||
<?php slot('content') ?>
|
<?php slot('content') ?>
|
||||||
|
|
||||||
|
|
|
@ -19,8 +19,10 @@
|
||||||
<?php endif ?>
|
<?php endif ?>
|
||||||
</legend>
|
</legend>
|
||||||
|
|
||||||
<div class="row">
|
<div class="row mb-5">
|
||||||
<div class="col-lg-6">
|
<div class="col-12">
|
||||||
|
<h4><?= lang('company') ?></h4>
|
||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label" for="company-name">
|
<label class="form-label" for="company-name">
|
||||||
<?= lang('company_name') ?>
|
<?= lang('company_name') ?>
|
||||||
|
@ -59,6 +61,48 @@
|
||||||
</small>
|
</small>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label" for="company-logo">
|
||||||
|
<?= lang('company_logo') ?>
|
||||||
|
</label>
|
||||||
|
<input type="file" id="company-logo" data-field="company_logo" class="form-control" accept="image/*">
|
||||||
|
<div class="form-text text-muted">
|
||||||
|
<small>
|
||||||
|
<?= lang('company_logo_hint') ?>
|
||||||
|
</small>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="d-flex justify-content-center">
|
||||||
|
<img src="#" alt="Company Logo Preview" id="company-logo-preview" class="img-thumbnail my-3" hidden>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="d-flex justify-content-center">
|
||||||
|
<button type="button" class="btn btn-danger btn-sm mb-3" id="remove-company-logo" hidden>
|
||||||
|
<i class="fas fa-trash me-2"></i>
|
||||||
|
<?= lang('remove') ?>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="mb-3">
|
||||||
|
<label class="form-label" for="company-color">
|
||||||
|
<?= lang('company_color') ?>
|
||||||
|
</label>
|
||||||
|
<input type="color" id="company-color" data-field="company_color" class="form-control">
|
||||||
|
<div class="form-text text-muted">
|
||||||
|
<small>
|
||||||
|
<?= lang('company_color_hint') ?>
|
||||||
|
</small>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row mb-5">
|
||||||
|
<div class="col-12">
|
||||||
|
<h4><?= lang('localization') ?></h4>
|
||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label" for="date-format">
|
<label class="form-label" for="date-format">
|
||||||
<?= lang('date_format') ?>
|
<?= lang('date_format') ?>
|
||||||
|
@ -108,7 +152,12 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-6">
|
</div>
|
||||||
|
|
||||||
|
<div class="row">
|
||||||
|
<div class="col-12">
|
||||||
|
<h4><?= lang('integrations') ?></h4>
|
||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label" for="google-analytics-code">
|
<label class="form-label" for="google-analytics-code">
|
||||||
Google Analytics Code
|
Google Analytics Code
|
||||||
|
@ -133,6 +182,7 @@
|
||||||
</small>
|
</small>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="mb-3">
|
<div class="mb-3">
|
||||||
<label class="form-label" for="api-token">API Token</label>
|
<label class="form-label" for="api-token">API Token</label>
|
||||||
<input id="api-token" data-field="api_token" class="form-control">
|
<input id="api-token" data-field="api_token" class="form-control">
|
||||||
|
|
|
@ -882,3 +882,12 @@ body .form-horizontal .controls {
|
||||||
#booking-settings-page .fields-row .form-control {
|
#booking-settings-page .fields-row .form-control {
|
||||||
border: 1px dashed #999 !important;
|
border: 1px dashed #999 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#company-logo-preview {
|
||||||
|
max-width: 256px;
|
||||||
|
max-height: 256px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#company-color {
|
||||||
|
min-height: 41px;
|
||||||
|
}
|
||||||
|
|
|
@ -52,6 +52,12 @@ body {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
margin: 20px 0;
|
margin: 20px 0;
|
||||||
|
|
||||||
|
#company-logo {
|
||||||
|
display: block;
|
||||||
|
margin: 14px auto;
|
||||||
|
max-height: 56px;
|
||||||
|
}
|
||||||
|
|
||||||
.display-selected-service,
|
.display-selected-service,
|
||||||
.display-selected-provider {
|
.display-selected-provider {
|
||||||
color: #225d4d;
|
color: #225d4d;
|
||||||
|
@ -290,6 +296,16 @@ body {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
float: left;
|
float: left;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
|
min-width: 400px;
|
||||||
|
line-height: 1.4;
|
||||||
|
|
||||||
|
#company-logo {
|
||||||
|
display: inline-block;
|
||||||
|
float: left;
|
||||||
|
margin-right: 14px;
|
||||||
|
margin-top: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#book-appointment-wizard #steps {
|
#book-appointment-wizard #steps {
|
||||||
|
|
|
@ -525,7 +525,7 @@ App.Pages.Booking = (function () {
|
||||||
|
|
||||||
$('.required').each((index, requiredField) => {
|
$('.required').each((index, requiredField) => {
|
||||||
if (!$(requiredField).val()) {
|
if (!$(requiredField).val()) {
|
||||||
$(requiredField).parents('.form-group').addClass('is-invalid');
|
$(requiredField).addClass('is-invalid');
|
||||||
missingRequiredField = true;
|
missingRequiredField = true;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -548,7 +548,7 @@ App.Pages.Booking = (function () {
|
||||||
|
|
||||||
// Validate email address.
|
// Validate email address.
|
||||||
if ($email.val() && !App.Utils.Validation.email($email.val())) {
|
if ($email.val() && !App.Utils.Validation.email($email.val())) {
|
||||||
$email.parents('.form-group').addClass('is-invalid');
|
$email.addClass('is-invalid');
|
||||||
throw new Error(lang('invalid_email'));
|
throw new Error(lang('invalid_email'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,10 @@
|
||||||
*/
|
*/
|
||||||
App.Pages.GeneralSettings = (function () {
|
App.Pages.GeneralSettings = (function () {
|
||||||
const $saveSettings = $('#save-settings');
|
const $saveSettings = $('#save-settings');
|
||||||
|
const $companyLogo = $('#company-logo');
|
||||||
|
const $companyLogoPreview = $('#company-logo-preview');
|
||||||
|
const $removeCompanyLogo = $('#remove-company-logo');
|
||||||
|
let companyLogoBase64 = '';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Check if the form has invalid values.
|
* Check if the form has invalid values.
|
||||||
|
@ -52,6 +56,14 @@ App.Pages.GeneralSettings = (function () {
|
||||||
|
|
||||||
function deserialize(generalSettings) {
|
function deserialize(generalSettings) {
|
||||||
generalSettings.forEach((generalSetting) => {
|
generalSettings.forEach((generalSetting) => {
|
||||||
|
if (generalSetting.name === 'company_logo' && generalSetting.value) {
|
||||||
|
companyLogoBase64 = generalSetting.value;
|
||||||
|
$companyLogoPreview.attr('src', generalSetting.value);
|
||||||
|
$companyLogoPreview.prop('hidden', false);
|
||||||
|
$removeCompanyLogo.prop('hidden', false);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
$('[data-field="' + generalSetting.name + '"]').val(generalSetting.value);
|
$('[data-field="' + generalSetting.name + '"]').val(generalSetting.value);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -68,6 +80,11 @@ App.Pages.GeneralSettings = (function () {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
generalSettings.push({
|
||||||
|
name: 'company_logo',
|
||||||
|
value: companyLogoBase64
|
||||||
|
});
|
||||||
|
|
||||||
return generalSettings;
|
return generalSettings;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -88,6 +105,36 @@ App.Pages.GeneralSettings = (function () {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Convert the selected image to a base64 encoded string.
|
||||||
|
*/
|
||||||
|
function onCompanyLogoChange() {
|
||||||
|
const file = $companyLogo[0].files[0];
|
||||||
|
|
||||||
|
if (!file) {
|
||||||
|
$removeCompanyLogo.trigger('click');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
App.Utils.File.toBase64(file).then((base64) => {
|
||||||
|
companyLogoBase64 = base64;
|
||||||
|
$companyLogoPreview.attr('src', base64);
|
||||||
|
$companyLogoPreview.prop('hidden', false);
|
||||||
|
$removeCompanyLogo.prop('hidden', false);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Remove the company logo data.
|
||||||
|
*/
|
||||||
|
function onRemoveCompanyLogoClick() {
|
||||||
|
companyLogoBase64 = '';
|
||||||
|
$companyLogo.val('');
|
||||||
|
$companyLogoPreview.attr('src', '#');
|
||||||
|
$companyLogoPreview.prop('hidden', true);
|
||||||
|
$removeCompanyLogo.prop('hidden', true);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialize the module.
|
* Initialize the module.
|
||||||
*/
|
*/
|
||||||
|
@ -98,6 +145,10 @@ App.Pages.GeneralSettings = (function () {
|
||||||
|
|
||||||
$saveSettings.on('click', onSaveSettingsClick);
|
$saveSettings.on('click', onSaveSettingsClick);
|
||||||
|
|
||||||
|
$companyLogo.on('change', onCompanyLogoChange);
|
||||||
|
|
||||||
|
$removeCompanyLogo.on('click', onRemoveCompanyLogoClick);
|
||||||
|
|
||||||
App.Layouts.Backend.placeFooterToBottom();
|
App.Layouts.Backend.placeFooterToBottom();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue