diff --git a/app/Setting/BillSettings.php b/app/Setting/BillSettings.php
new file mode 100644
index 00000000..2f477365
--- /dev/null
+++ b/app/Setting/BillSettings.php
@@ -0,0 +1,29 @@
+
+ */
+ public function handle(BillSettings $settings): array
+ {
+ return [
+ 'bill_from_long' => $settings->from_long,
+ 'bill_from' => $settings->from,
+ 'bill_mobile' => $settings->mobile,
+ 'bill_email' => $settings->email,
+ 'bill_website' => $settings->website,
+ 'bill_address' => $settings->address,
+ 'bill_place' => $settings->place,
+ 'bill_zip' => $settings->zip,
+ ];
+ }
+
+ public function asController(BillSettings $settings): Response
+ {
+ session()->put('menu', 'setting');
+ session()->put('title', 'Einstellungen');
+
+ return Inertia::render('setting/Index', [
+ 'data' => $this->handle($settings),
+ ]);
+ }
+}
diff --git a/app/Setting/SettingSaveAction.php b/app/Setting/SettingSaveAction.php
new file mode 100644
index 00000000..6e963b97
--- /dev/null
+++ b/app/Setting/SettingSaveAction.php
@@ -0,0 +1,34 @@
+from_long = $input['bill_from_long'] ?? '';
+ $settings->from = $input['bill_from'] ?? '';
+ $settings->mobile = $input['bill_mobile'] ?? '';
+ $settings->email = $input['bill_email'] ?? '';
+ $settings->website = $input['bill_website'] ?? '';
+ $settings->address = $input['bill_address'] ?? '';
+ $settings->place = $input['bill_place'] ?? '';
+ $settings->zip = $input['bill_zip'] ?? '';
+ $settings->save();
+ }
+
+ public function asController(ActionRequest $request): RedirectResponse
+ {
+ $this->handle($request->all());
+
+ return redirect()->back()->success('Einstellungen gespeichert');
+ }
+}
diff --git a/database/settings/2022_09_05_213938_bill_settings.php b/database/settings/2022_09_05_213938_bill_settings.php
new file mode 100644
index 00000000..7676b8e5
--- /dev/null
+++ b/database/settings/2022_09_05_213938_bill_settings.php
@@ -0,0 +1,18 @@
+migrator->add('bill.from_long', '');
+ $this->migrator->add('bill.from', '');
+ $this->migrator->add('bill.mobile', '');
+ $this->migrator->add('bill.email', '');
+ $this->migrator->add('bill.website', '');
+ $this->migrator->add('bill.address', '');
+ $this->migrator->add('bill.place', '');
+ $this->migrator->add('bill.zip', '');
+ }
+}
diff --git a/resources/img/svg/setting.svg b/resources/img/svg/setting.svg
new file mode 100644
index 00000000..006eecc4
--- /dev/null
+++ b/resources/img/svg/setting.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/resources/js/components/VTabs.vue b/resources/js/components/VTabs.vue
new file mode 100644
index 00000000..1750f823
--- /dev/null
+++ b/resources/js/components/VTabs.vue
@@ -0,0 +1,31 @@
+
+
+
+
+
diff --git a/resources/js/layouts/AppLayout.vue b/resources/js/layouts/AppLayout.vue
index be89711c..c9987c2b 100644
--- a/resources/js/layouts/AppLayout.vue
+++ b/resources/js/layouts/AppLayout.vue
@@ -15,6 +15,7 @@