From 3c495699626bf518b048a5cd6b01b7c148ae9430 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Helge-Mikael=20Nordg=C3=A5rd?= Date: Mon, 5 May 2025 19:12:42 +0200 Subject: [PATCH] Changed correct dashboard route and introduced a stripped down version of the pagesettings helper class from the main CMS codebase, in order to maintain compatability/functionality --- app/Helpers/PageSettingsHelper.php | 16 + .../Auth/RegisteredUserController.php | 2 +- app/Providers/AppServiceProvider.php | 18 +- config/standard-pagesettings.php | 353 ++++++++++++++++++ resources/js/components/AppHeader.vue | 2 +- resources/js/components/AppSidebar.vue | 2 +- .../Statics/FrontPageMembershipInfo.vue | 2 +- .../FrontPageMembershipInfoRendered.vue | 2 +- .../js/components/FrontPage/FooterSection.vue | 2 +- .../js/pages/Backend/PageBuilder/Preview.vue | 2 +- resources/js/pages/Root.vue | 2 +- 11 files changed, 390 insertions(+), 13 deletions(-) create mode 100644 app/Helpers/PageSettingsHelper.php create mode 100644 config/standard-pagesettings.php diff --git a/app/Helpers/PageSettingsHelper.php b/app/Helpers/PageSettingsHelper.php new file mode 100644 index 0000000..969d5e7 --- /dev/null +++ b/app/Helpers/PageSettingsHelper.php @@ -0,0 +1,16 @@ + function () { + return PageSettingsHelper::pageSettings(); + }, + 'siteName' => function () { + return config('app.name'); + }, + ]); } } diff --git a/config/standard-pagesettings.php b/config/standard-pagesettings.php new file mode 100644 index 0000000..9750d9d --- /dev/null +++ b/config/standard-pagesettings.php @@ -0,0 +1,353 @@ + [ + 'site_name' => 'Østfold Milsim', + 'site_description' => 'Østfold Milsim er en airsoftklubb som holder til i Østfold. Vi har medlemmer fra hele Østfold, og har som mål å være en klubb for alle som er interessert i airsoft.', + 'site_keywords' => 'airsoft, milsim, østfold, norge, norway, airsoftklubb, airsoftklubb østfold, airsoftklubb norge, airsoftklubb norway, airsoftklubb østfold milsim, airsoftklubb norge milsim, airsoftklubb norway milsim, airsoftklubb østfold milsim norge, airsoftklubb norge milsim østfold, airsoftklubb norway milsim østfold, airsoftklubb østfold milsim norway, airsoftklubb norge milsim norway, airsoftklubb norway milsim østfold', + + 'webmaster' => 'Webmasters Navn', + 'webmaster_email' => 'ikke@ikke.no', + 'webmaster_phone' => '12345678', + 'kasserer' => 'Vet Ikke', + 'kasserer_email' => 'vet.ikke@ikke.no', + 'kasserer_phone' => '12345678', + 'postadresse' => 'Østfold Milsim, Postboks 123, 1234 Oslo', + 'besoksadresse' => 'Østfold Milsim, Østfoldveien 123, 1234 Oslo', + 'orgnr' => '123456789', + 'bankkontonr' => '1234.56.78901', + 'banknavn' => 'Østfold Milsim Bank', + + 'facebook' => 'https://www.facebook.com/ostfoldmilsim', + 'instagram' => 'https://www.instagram.com/ostfoldmilsim', + 'twitter' => 'https://www.twitter.com/ostfoldmilsim', + 'youtube' => 'https://www.youtube.com/ostfoldmilsim', + 'twitch' => 'https://www.twitch.tv/ostfoldmilsim', + 'discord' => 'https://www.discord.gg/ostfoldmilsim', + + 'membership_fee' => '500', + 'membership_time_interval_months' => '12', + 'membership_fee_description' => 'Årlig medlemskontigent', + 'membership_fee_description_long' => 'Årlig medlemskontigent for medlemskap i Østfold Milsim', + 'membership_child_age_limit' => '18', + 'membership_child_fee' => '250', + 'membership_age_limit' => '16', + 'membership_annual' => true, + 'renew_alert' => '4', + 'sales_terms' => '# Salgsbetingelser for Klubben', + 'use_terms' => '# Bruksvilkår for Klubben', + 'privacy_policy' => '# Personvernerklæring for Klubben', + 'comment_rules' => '# Regler for kommentering', + 'enable_vat' => false, + + 'module_vipps_payment' => false, + 'module_stripe_payment' => false, + 'module_registrationcodes' => false, + 'module_required_full_profile' => false, + 'module_mobile_app_scan_notification' => false, + 'mobile_app_scan_notification_message' => '', + 'mobile_app_scan_notification_threshold' => 1, + + 'mobile_app_welcome_text' => '', + 'mobile_app_background_color' => '#003e71', + 'mobile_app_text_color' => '#ffffff', + 'mobile_app_header_color' => '#40c4ff', + 'mobile_app_appbar_background_color' => '#0085f2', + 'mobile_app_appbar_text_color' => '#ffffff', + 'mobile_app_navigation_background_color' => '#ffffff', + 'mobile_app_navigation_icon_color' => '#9E9E9E', + 'mobile_app_navigation_active_icon_color' => '#0085f2', + 'mobile_app_input_color' => '#ffffff', + 'mobile_app_input_accent_color' => '#40c4ff', + 'mobile_app_logo' => 0, + + 'membership_levels' => [], + ], + + 'department_defaults' => [ + 'membership_fee' => '500', + 'membership_child_fee' => '250', + 'membership_time_interval_months' => '12', + 'membership_fee_description' => 'Årlig medlemskontigent', + 'membership_fee_description_long' => 'Årlig medlemskontigent for medlemskap i Østfold Milsim', + ], + + 'department_defaults_fieldTypes' => [ + 'membership_fee' => 'number', + 'membership_time_interval_months' => 'number', + 'membership_fee_description' => 'text', + 'membership_fee_description_long' => 'textarea', + ], + + 'department_defaults_validation' => [ + 'deptId' => [ + 'required', + 'integer', + 'exists:departments,id', + ], + 'membership_fee' => [ + 'required', + 'numeric', + 'digits_between:1,6', + ], + 'membership_child_fee' => [ + 'required', + 'numeric', + 'digits_between:1,6', + ], + 'membership_time_interval_months' => [ + 'required', + 'numeric', + 'digits_between:1,2', + ], + 'membership_fee_description' => [ + 'required', + 'string', + 'max:255', + ], + 'membership_fee_description_long' => [ + 'required', + 'string', + ], + ], + + 'validation' => [ + 'site_name' => [ + 'required', + 'string', + 'max:255', + ], + 'site_description' => [ + 'required', + 'string', + ], + 'site_keywords' => [ + 'required', + 'string', + ], + 'webmaster' => [ + 'required', + 'string', + 'max:255', + ], + 'webmaster_email' => [ + 'required', + 'string', + 'email', + 'max:255', + ], + 'webmaster_phone' => [ + 'required', + 'numeric', + 'digits:8', + ], + 'kasserer' => [ + 'required', + 'string', + 'max:255', + ], + 'kasserer_email' => [ + 'required', + 'string', + 'email', + 'max:255', + ], + 'kasserer_phone' => [ + 'required', + 'numeric', + 'digits:8', + ], + 'postadresse' => [ + 'required', + 'string', + 'max:255', + ], + 'besoksadresse' => [ + 'required', + 'string', + 'max:255', + ], + 'orgnr' => [ + 'required', + 'numeric', + 'digits:9', + ], + 'bankkontonr' => [ + 'required', + 'string', + 'max:13', + ], + 'banknavn' => [ + 'nullable', + 'string', + 'max:255', + ], + 'facebook' => [ + 'nullable', + 'string', + 'max:255', + ], + 'instagram' => [ + 'nullable', + 'string', + 'max:255', + ], + 'twitter' => [ + 'nullable', + 'string', + 'max:255', + ], + 'youtube' => [ + 'nullable', + 'string', + 'max:255', + ], + 'twitch' => [ + 'nullable', + 'string', + 'max:255', + ], + 'discord' => [ + 'nullable', + 'string', + 'max:255', + ], + 'membership_fee' => [ + 'required', + 'numeric', + 'digits_between:1,6', + ], + 'membership_time_interval_months' => [ + 'required', + 'numeric', + 'digits_between:1,2', + ], + 'membership_fee_description' => [ + 'required', + 'string', + 'max:255', + ], + 'membership_fee_description_long' => [ + 'required', + 'string', + ], + 'membership_child_age_limit' => [ + 'required', + 'numeric', + 'digits_between:1,2', + ], + 'membership_child_fee' => [ + 'required', + 'numeric', + 'digits_between:1,6', + ], + 'membership_age_limit' => [ + 'required', + 'numeric', + 'digits_between:1,2', + ], + 'membership_annual' => [ + 'nullable', + 'boolean', + ], + 'renew_alert' => [ + 'required', + 'numeric', + 'digits_between:1,12', + ], + 'sales_terms' => [ + 'required', + 'string', + ], + 'use_terms' => [ + 'required', + 'string', + ], + 'privacy_policy' => [ + 'required', + 'string', + ], + 'mobile_app_background_color' => [ + 'required', + 'string', + 'regex:/^#([a-f0-9]{3}){1,2}$/i', + ], + 'mobile_app_text_color' => [ + 'required', + 'string', + 'regex:/^#([a-f0-9]{3}){1,2}$/i', + ], + 'mobile_app_header_color' => [ + 'required', + 'string', + 'regex:/^#([a-f0-9]{3}){1,2}$/i', + ], + 'mobile_app_logo' => [ + 'nullable', + 'integer', + 'exists:image_nodes,id', + ], + 'mobile_app_appbar_background_color' => [ + 'required', + 'string', + 'regex:/^#([a-f0-9]{3}){1,2}$/i', + ], + 'mobile_app_appbar_text_color' => [ + 'required', + 'string', + 'regex:/^#([a-f0-9]{3}){1,2}$/i', + ], + 'mobile_app_navigation_background_color' => [ + 'required', + 'string', + 'regex:/^#([a-f0-9]{3}){1,2}$/i', + ], + 'mobile_app_navigation_icon_color' => [ + 'required', + 'string', + 'regex:/^#([a-f0-9]{3}){1,2}$/i', + ], + 'mobile_app_navigation_active_icon_color' => [ + 'required', + 'string', + 'regex:/^#([a-f0-9]{3}){1,2}$/i', + ], + 'mobile_app_input_color' => [ + 'required', + 'string', + 'regex:/^#([a-f0-9]{3}){1,2}$/i', + ], + 'mobile_app_input_accent_color' => [ + 'required', + 'string', + 'regex:/^#([a-f0-9]{3}){1,2}$/i', + ], + + 'membership_levels' => [ + 'array' + ], + + 'mobile_app_scan_notification_message' => [ + 'required_if:module_mobile_app_scan_notification,true', + 'max:255' + ], + + 'mobile_app_scan_notification_threshold' => [ + 'required_if:module_mobile_app_scan_notification,true', + 'between:1,99' + ] + ] +]; \ No newline at end of file diff --git a/resources/js/components/AppHeader.vue b/resources/js/components/AppHeader.vue index 2aa05d1..7f2d326 100644 --- a/resources/js/components/AppHeader.vue +++ b/resources/js/components/AppHeader.vue @@ -108,7 +108,7 @@ const rightNavItems: NavItem[] = [ - + diff --git a/resources/js/components/AppSidebar.vue b/resources/js/components/AppSidebar.vue index 9844272..9b686a6 100644 --- a/resources/js/components/AppSidebar.vue +++ b/resources/js/components/AppSidebar.vue @@ -36,7 +36,7 @@ const footerNavItems: NavItem[] = [ - + diff --git a/resources/js/components/Blocks/Statics/FrontPageMembershipInfo.vue b/resources/js/components/Blocks/Statics/FrontPageMembershipInfo.vue index 769b99b..ca040c1 100644 --- a/resources/js/components/Blocks/Statics/FrontPageMembershipInfo.vue +++ b/resources/js/components/Blocks/Statics/FrontPageMembershipInfo.vue @@ -31,7 +31,7 @@ varer i {{ page.props.pageSettings['membership_time_interval_months'] }} måneder eller ut kalenderåret før det må fornyes. Betalinger kan gjøres på nettsiden via vipps eller bankkort ved å besøke - + din medlemsside . diff --git a/resources/js/components/Blocks/Statics/FrontPageMembershipInfoRendered.vue b/resources/js/components/Blocks/Statics/FrontPageMembershipInfoRendered.vue index 59929e2..f5e6ab9 100644 --- a/resources/js/components/Blocks/Statics/FrontPageMembershipInfoRendered.vue +++ b/resources/js/components/Blocks/Statics/FrontPageMembershipInfoRendered.vue @@ -74,7 +74,7 @@ varer i {{ page.props.pageSettings['membership_time_interval_months'] }} måneder eller ut kalenderåret før det må fornyes. Betalinger kan gjøres på nettsiden via vipps eller bankkort ved å besøke - + din medlemsside . diff --git a/resources/js/components/FrontPage/FooterSection.vue b/resources/js/components/FrontPage/FooterSection.vue index 7f0e991..814c0a9 100644 --- a/resources/js/components/FrontPage/FooterSection.vue +++ b/resources/js/components/FrontPage/FooterSection.vue @@ -91,7 +91,7 @@

medlemsider

  • - Din medlemside + Din medlemside
  • Din brukerprofil diff --git a/resources/js/pages/Backend/PageBuilder/Preview.vue b/resources/js/pages/Backend/PageBuilder/Preview.vue index 509e7c0..925b96f 100644 --- a/resources/js/pages/Backend/PageBuilder/Preview.vue +++ b/resources/js/pages/Backend/PageBuilder/Preview.vue @@ -238,7 +238,7 @@ }); } else if (payload === 'medlemside' && useEventBus.value) { clickMenuButton(); - loadLink(route('dashboard')); + loadLink(route('page-builder.index')); } else if (payload === 'loggpaa' && useEventBus.value) { clickMenuButton(); loadLink(route('login')); diff --git a/resources/js/pages/Root.vue b/resources/js/pages/Root.vue index 541c497..fc526af 100644 --- a/resources/js/pages/Root.vue +++ b/resources/js/pages/Root.vue @@ -238,7 +238,7 @@ }); } else if (payload === 'medlemside' && useEventBus.value) { clickMenuButton(); - loadLink(route('dashboard')); + loadLink(route('page-builder.index')); } else if (payload === 'loggpaa' && useEventBus.value) { clickMenuButton(); loadLink(route('login'));