From 096c8cf091505a6fc7f4a2a115b33ef6ca60ebca Mon Sep 17 00:00:00 2001 From: salam Date: Thu, 27 Nov 2025 12:41:26 +0100 Subject: [PATCH] first 11 point from list made --- CHANGES.md | 24 +++ app/Actions/Generate/Pdf/Deckblatt.php | 4 +- app/Actions/Generate/Pdf/Inhalt.php | 1 + app/Actions/Generate/PdfGenerator.php | 9 +- .../Generate/Tabellen/Nutzwertberechnung.php | 162 +++++++++++------- app/Actions/Generate/Tabellen/Paragraph6.php | 2 +- app/Actions/Generate/Utilities/Html.php | 14 +- .../Projektes/Schemas/ProjekteForm.php | 24 ++- app/Models/Projekte.php | 2 + bootstrap/cache/blade-icons.php | 10 +- bootstrap/cache/config.php | 36 ++-- bootstrap/cache/filament/panels/admin.php | 44 ++--- bootstrap/cache/routes-v7.php | 48 +++--- ...25_09_24_131440_create_projektes_table.php | 2 + public/storage | 2 +- resources/css/pdf-download.css | 101 ++++++----- storage/hvf-logos/logo hanno.afphoto | Bin 0 -> 33847 bytes 17 files changed, 299 insertions(+), 186 deletions(-) create mode 100644 CHANGES.md create mode 100644 storage/hvf-logos/logo hanno.afphoto diff --git a/CHANGES.md b/CHANGES.md new file mode 100644 index 0000000..c994f31 --- /dev/null +++ b/CHANGES.md @@ -0,0 +1,24 @@ +https://www.markdownguide.org/basic-syntax/ + +# TO DO + +> Nummern bei den Methoden +> Farbe Gutachten Deckblatt wählbar +> Schriftgröße Deckblatt etwas größer +> „Seite“ bei Inhaltsverzeichnis +> generell Text etwas größer +> 3.21 Titel nicht fett +> Farbe blau dunkler +> generell Überschriften größerer Schrift +> 3.30 Tabellenformatierung wie im alten +> bei Stellplätze 3.30 Typ im Header, Top Nummer und Geschoss links bündig +> §6 Tabelle linke Linie fehlt + +- Beistrich bei Eingabe statt Punkt +- Inhaltsverzeichnis Textblock +- Gutachten Pxxx WEG 2002 +- generieren wirklich? +- Überschrift nur im Inhaltsverzeichnis anzeigen +- Schriftgröße Hanno Logo +- Räume Methoden Aufstellungen Evaluieren +- Farbe excel Aufstellung heller \ No newline at end of file diff --git a/app/Actions/Generate/Pdf/Deckblatt.php b/app/Actions/Generate/Pdf/Deckblatt.php index f963e53..ad107d5 100644 --- a/app/Actions/Generate/Pdf/Deckblatt.php +++ b/app/Actions/Generate/Pdf/Deckblatt.php @@ -11,7 +11,7 @@ class Deckblatt public static function load($inhalt, $textblock, $textblock2) { // GUTACHTER - $html = '
'; + $html = '
'; $html .= '
'; if (PdfGenerator::$gutachter->logo && PdfGenerator::$gutachter->logo_anzeigen) { $html .= '
'; @@ -29,7 +29,7 @@ class Deckblatt $html .= '
'; $html .= '
'; - $html .= '

'.trim($textblock2).'

'; + $html .= '

'.trim($textblock2).'

'; $html .= '
'; // AUFTRAGGEBER diff --git a/app/Actions/Generate/Pdf/Inhalt.php b/app/Actions/Generate/Pdf/Inhalt.php index c871bbe..6601fb4 100644 --- a/app/Actions/Generate/Pdf/Inhalt.php +++ b/app/Actions/Generate/Pdf/Inhalt.php @@ -19,6 +19,7 @@ class Inhalt $html .= ''; $html .= Html::td(Format::index($inhalt->ordnungszahl), 'center'); $html .= Html::td($inhalt->name); + $html .= Html::td('Seite'); $html .= Html::td(Format::seite($inhalt->seite)); $html .= ''; } diff --git a/app/Actions/Generate/PdfGenerator.php b/app/Actions/Generate/PdfGenerator.php index 8ca715a..ed51405 100644 --- a/app/Actions/Generate/PdfGenerator.php +++ b/app/Actions/Generate/PdfGenerator.php @@ -76,6 +76,13 @@ class PdfGenerator ); $stylesheet = file_get_contents(__DIR__.'/../../../resources/css/pdf-download.css'); + + $bgcolors = []; + $bgcolors["'###BG_DECKBLATT###'"] = self::$projekt->deckblatt_bg; + $bgcolors["'###BG_HEADER###'"] = self::$projekt->schmuckfarbe_header; + $bgcolors["'###FARBE_RAHMEN###'"] = self::$projekt->farbe_borders; + $stylesheet = Platzhalter::replace($bgcolors, $stylesheet); + $mpdf->WriteHTML($stylesheet, HTMLParserMode::HEADER_CSS); $mpdf->SetTitle($filename); $mpdf->SetCreator('nutzwerte.at'); @@ -128,7 +135,7 @@ class PdfGenerator $html .= Nutzwertberechnung::load($projekte_id); break; case '7': - $html .= Zusammenstellung::load($projekte_id); + // $html .= Zusammenstellung::load($projekte_id); break; case '8': // AUFTRAGGEBER diff --git a/app/Actions/Generate/Tabellen/Nutzwertberechnung.php b/app/Actions/Generate/Tabellen/Nutzwertberechnung.php index 8eb06d6..3ea7557 100644 --- a/app/Actions/Generate/Tabellen/Nutzwertberechnung.php +++ b/app/Actions/Generate/Tabellen/Nutzwertberechnung.php @@ -18,7 +18,17 @@ class Nutzwertberechnung $html = ''; foreach ($objekte as $methoden) { - $html .= Html::table_header(['Top Nummer', 'Geschoß', 'Orientierung', 'Typ', '', 'Fläche', '', 'Faktor', '', '', 'Nutzwert'], 'page-break-inside:avoid'); + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; $summe_nutzwert = 0; /** @@ -28,13 +38,13 @@ class Nutzwertberechnung $flaeche = 0; foreach ($methoden[1] as $komponente) { $html .= ''; - $html .= Html::td($komponente['top_nummer'], 'bl bb'); - $html .= Html::td($komponente['geschoss'], 'bl bb'); - $html .= Html::td($komponente['orientierung'], 'bl bb'); - $html .= Html::td($komponente['type'], 'bl bb'); - $html .= Html::td($komponente['raumart'], 'bl bb'); - $html .= Html::td(number_format($komponente['flaeche'], 2, ',', '.').' m²', 'right bl bb'); - $html .= Html::td('', 'bl bb br', 5); + $html .= Html::td($komponente['top_nummer'], 'bg-user-set'); + $html .= Html::td($komponente['geschoss'], 'bl'); + $html .= Html::td($komponente['orientierung'], 'bl'); + $html .= Html::td($komponente['type'], 'bl'); + $html .= Html::td($komponente['raumart'], 'bl'); + $html .= Html::td(number_format($komponente['flaeche'], 2, ',', '.').' m²', 'right bl nowrap'); + $html .= Html::td('', 'bl br', 7); $flaeche += $komponente['flaeche']; $html .= ''; } @@ -42,14 +52,20 @@ class Nutzwertberechnung $faktor = (100 + $komponente['objekt_nutzwert']) / 100; $html .= ''; - $html .= Html::td('', 'bl bb', 5); - $html .= Html::td(number_format($flaeche, 2, ',', '.').' m²', 'right bl bb'); - $html .= Html::td('x', 'center bl bb'); - $html .= Html::td(number_format($faktor, 3, ',', '.'), 'center bl bb'); - $html .= Html::td('=', 'center bl bb'); - $html .= Html::td(number_format($flaeche * $faktor, 3, ',', '.'), 'right bl bb'); + $html .= Html::td('', 'bl bg-user-set'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td(number_format($flaeche, 2, ',', '.').' m²', 'right bl nowrap'); + $html .= Html::td('x', 'center bl'); + $html .= Html::td(number_format($faktor, 3, ',', '.'), 'center bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('=', 'center bl'); + $html .= Html::td(number_format($flaeche * $faktor, 3, ',', '.'), 'right bl'); $summe_nutzwert = $flaeche * $faktor; - $html .= Html::td(round($summe_nutzwert), 'center bl bb br'); + $html .= Html::td(round($summe_nutzwert), 'center bl br'); $html .= ''; } @@ -59,26 +75,38 @@ class Nutzwertberechnung if (isset($methoden[2])) { foreach ($methoden[2] as $komponente) { $html .= ''; - $html .= Html::td('', 'bl bb'); - $html .= Html::td($komponente['geschoss'], 'bl bb'); - $html .= Html::td('', 'bl bb'); - $html .= Html::td('', 'bl bb'); - $html .= Html::td($komponente['raumart'], 'bl bb'); - $html .= Html::td(number_format($komponente['flaeche'], 2, ',', '.').' m²', 'right bl bb'); - $html .= Html::td('x', 'center bl bb'); - $html .= Html::td(number_format($komponente['faktor'], 3), 'center bl bb'); - $html .= Html::td('=', 'center bl bb'); + $html .= Html::td('', 'bl bg-user-set'); + $html .= Html::td($komponente['geschoss'], 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td($komponente['raumart'], 'bl'); + $html .= Html::td(number_format($komponente['flaeche'], 2, ',', '.').' m²', 'right bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('x', 'center bl'); + $html .= Html::td(number_format($komponente['faktor'], 3), 'center bl'); + $html .= Html::td('=', 'center bl'); $nutzwert = $komponente['flaeche'] * $komponente['faktor']; $summe_nutzwert += $nutzwert; - $html .= Html::td(number_format($nutzwert, 3, ',', '.'), 'right bl bb'); - $html .= Html::td('', 'center bl bb br'); + $html .= Html::td(number_format($nutzwert, 3, ',', '.'), 'right bl'); + $html .= Html::td('', 'center bl br'); $html .= ''; } $html .= ''; - $html .= Html::td('', 'bl bb', 9); - $html .= Html::td(number_format($summe_nutzwert, 3, ',', '.'), 'right bl bb'); - $html .= Html::td(round($summe_nutzwert), 'center bl bb'); + $html .= Html::td('', 'bl bg-user-set'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td(number_format($summe_nutzwert, 3, ',', '.'), 'right bl'); + $html .= Html::td(round($summe_nutzwert), 'center bl br'); $html .= ''; } $summe_nutzwert = round($summe_nutzwert); @@ -89,19 +117,21 @@ class Nutzwertberechnung if (isset($methoden[3])) { foreach ($methoden[3] as $komponente) { $html .= ''; - $html .= Html::td('', 'bl bb'); - $html .= Html::td($komponente['geschoss'], 'bl bb'); - $html .= Html::td('', 'bl bb'); - $html .= Html::td('', 'bl bb'); - $html .= Html::td($komponente['raumart'], 'bl bb'); - $html .= Html::td(number_format($komponente['flaeche'], 2, ',', '.').' m²', 'right bl bb'); - $html .= Html::td('x', 'center bl bb'); - $html .= Html::td(number_format($komponente['faktor'], 3), 'center bl bb'); - $html .= Html::td('=', 'center bl bb'); + $html .= Html::td('', 'bl bg-user-set'); + $html .= Html::td($komponente['geschoss'], 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td($komponente['raumart'], 'bl'); + $html .= Html::td(number_format($komponente['flaeche'], 2, ',', '.').' m²', 'right bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('x', 'center bl'); + $html .= Html::td(number_format($komponente['faktor'], 3), 'center bl'); + $html .= Html::td('=', 'center bl'); $nutzwert = $komponente['flaeche'] * $komponente['faktor']; - $html .= Html::td(number_format($nutzwert, 3, ',', '.'), 'right bl bb'); + $html .= Html::td(number_format($nutzwert, 3, ',', '.'), 'right bl'); $nutzwert = round($nutzwert) < 1 ? 1 : round($nutzwert); - $html .= Html::td($nutzwert, 'center bl bb br'); + $html .= Html::td($nutzwert, 'center bl br'); $html .= ''; $summe_nutzwert += $nutzwert; @@ -114,19 +144,21 @@ class Nutzwertberechnung if (isset($methoden[4])) { foreach ($methoden[4] as $komponente) { $html .= ''; - $html .= Html::td('', 'bl bb'); - $html .= Html::td($komponente['geschoss'], 'bl bb'); - $html .= Html::td('', 'bl bb'); - $html .= Html::td('Zubehör', 'bl bb'); - $html .= Html::td($komponente['raumart'], 'bl bb'); - $html .= Html::td(number_format($komponente['flaeche'], 2, ',', '.').' m²', 'right bl bb'); - $html .= Html::td('x', 'center bl bb'); - $html .= Html::td(number_format($komponente['faktor'], 3), 'center bl bb'); - $html .= Html::td('=', 'center bl bb'); + $html .= Html::td('', 'bl bg-user-set'); + $html .= Html::td($komponente['geschoss'], 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('Zubehör', 'bl'); + $html .= Html::td($komponente['raumart'], 'bl'); + $html .= Html::td(number_format($komponente['flaeche'], 2, ',', '.').' m²', 'right bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('', 'bl'); + $html .= Html::td('x', 'center bl'); + $html .= Html::td(number_format($komponente['faktor'], 3), 'center bl'); + $html .= Html::td('=', 'center bl'); $nutzwert = $komponente['flaeche'] * $komponente['faktor']; - $html .= Html::td(number_format($nutzwert, 3, ',', '.'), 'right bl bb'); + $html .= Html::td(number_format($nutzwert, 3, ',', '.'), 'right bl'); $nutzwert = round($nutzwert) < 1 ? 1 : round($nutzwert); - $html .= Html::td($nutzwert, 'center bl bb br'); + $html .= Html::td($nutzwert, 'center bl br'); $html .= ''; $summe_nutzwert += $nutzwert; @@ -145,24 +177,32 @@ class Nutzwertberechnung /** * Stellplätze */ - $html .= Html::table_header(['Top Nummer', 'Geschoß', '', 'Fläche', '', 'Faktor', '', '', 'Nutzwert'], 'page-break-inside:avoid'); + $html .= '
Top Nr.GeschoßOrientierungTypRaumartFlächeNutzwert
'; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; + $html .= ''; $nutzwert = 0; if (isset($methoden[5])) { foreach ($methoden[5] as $komponente) { $html .= ''; - $html .= Html::td($komponente['top_nummer'], 'bl bb'); - $html .= Html::td($komponente['geschoss'], 'bl bb'); - $html .= Html::td($komponente['raumart'], 'bl bb'); - $html .= Html::td(number_format($komponente['flaeche'], 2, ',', '.').' m²', 'right bl bb'); - $html .= Html::td('x', 'center bl bb'); - $html .= Html::td(number_format($komponente['faktor'], 3), 'center bl bb'); - $html .= Html::td('=', 'center bl bb'); + $html .= Html::td($komponente['top_nummer'], 'bl bg-user-set'); + $html .= Html::td($komponente['geschoss'], 'bl'); + $html .= Html::td($komponente['raumart'], 'bl'); + $html .= Html::td(number_format($komponente['flaeche'], 2, ',', '.').' m²', 'right bl'); + $html .= Html::td('x', 'center bl'); + $html .= Html::td(number_format($komponente['faktor'], 3), 'center bl'); + $html .= Html::td('=', 'center bl'); $nutzwert = $komponente['flaeche'] * $komponente['faktor']; - $html .= Html::td(number_format($nutzwert, 3, ',', '.'), 'right bl bb'); + $html .= Html::td(number_format($nutzwert, 3, ',', '.'), 'right bl'); $nutzwert = round($nutzwert) < 1 ? 1 : round($nutzwert); - $html .= Html::td($nutzwert, 'center bl bb br'); + $html .= Html::td($nutzwert, 'center bl br'); $html .= ''; } } diff --git a/app/Actions/Generate/Tabellen/Paragraph6.php b/app/Actions/Generate/Tabellen/Paragraph6.php index 5486572..e36e772 100644 --- a/app/Actions/Generate/Tabellen/Paragraph6.php +++ b/app/Actions/Generate/Tabellen/Paragraph6.php @@ -23,7 +23,7 @@ class Paragraph6 $element = $value?->projektobjekteimdetail->first(); $html .= ''; - $html .= Html::td($value->top_nummer, 'center br bb'); + $html .= Html::td($value->top_nummer, 'center bl br bb'); $html .= Html::td($element->geschoss, 'center br bb'); $html .= Html::td($value->orientierung?->name, 'center br bb'); $html .= Html::td($value->type, 'center br bb'); diff --git a/app/Actions/Generate/Utilities/Html.php b/app/Actions/Generate/Utilities/Html.php index 79c3a23..3cb243f 100644 --- a/app/Actions/Generate/Utilities/Html.php +++ b/app/Actions/Generate/Utilities/Html.php @@ -10,18 +10,18 @@ class Html $html = '
Top Nr.GeschoßRaumartFlächeNutzwert
'; $html .= ''; foreach ($header_row as $value) { - $html .= ''; + $html .= ''; } $html .= ''; return $html; } - public static function table_footer($nutzwert_summe, $colspan = 10) + public static function table_footer($nutzwert_summe, $colspan = 12) { $html = ''; - $html .= ''; - $html .= ''; + $html .= ''; + $html .= ''; $html .= ''; return $html; @@ -33,7 +33,7 @@ class Html $html .= ''; $mm = 190 / \count($header_row); foreach ($header_row as $value) { - $html .= ''; + $html .= ''; } $html .= ''; @@ -45,11 +45,11 @@ class Html $html = '
'.$value.''.$value.'
Nutzwert gerundet'.$nutzwert_summe.'Nutzwert gerundet'.$nutzwert_summe.'
'.$value.' '.$value.' 
'; foreach ($header_row as $value) { - $html .= ''; + $html .= ''; } $html .= ''; foreach ($header_row as $value) { - $html .= ''; + $html .= ''; } $html .= ''; diff --git a/app/Filament/Resources/Projektes/Schemas/ProjekteForm.php b/app/Filament/Resources/Projektes/Schemas/ProjekteForm.php index 308b71b..716f11f 100644 --- a/app/Filament/Resources/Projektes/Schemas/ProjekteForm.php +++ b/app/Filament/Resources/Projektes/Schemas/ProjekteForm.php @@ -31,6 +31,7 @@ class ProjekteForm ->contained(false) ->tabs([ Tab::make('Benennung') + ->icon('phosphor-article-medium') ->schema([ TextInput::make('offizieller_name') ->label('Offizieller Name') @@ -60,6 +61,10 @@ class ProjekteForm 'Als Platzhalter "###INTERNER_NAME###"', ]) ->required(), + ])->columns(2), + Tab::make('Ort & Datum') + ->icon('phosphor-calendar-check') + ->schema([ TextInput::make('ort')->required()->suffix('am') ->belowContent([ 'Als Platzhalter "###ORT###"', @@ -70,9 +75,9 @@ class ProjekteForm ->belowContent([ 'Als Platzhalter "###DATUM###"', ]), - ColorPicker::make('deckblatt_bg')->label('Deckblatt Hintegrund Farbe'), ])->columns(2), - Tab::make('Zuordnung') + Tab::make('Gutachter & Auftraggeber') + ->icon('phosphor-identification-card') ->schema([ Select::make('gutachter_id')->relationship(name: 'gutachter', titleAttribute: 'company')->required(), Select::make('auftraggeber_id') @@ -82,9 +87,11 @@ class ProjekteForm ->required(), Radio::make('status')->options(ProjektStatus::class)->required(), ]), - Tab::make('Beschreibung') + Tab::make('Notizen') + ->icon('phosphor-notebook') ->schema([ RichEditor::make('beschreibung') + ->label('Notizen') ->extraInputAttributes(['style' => 'min-height: 20rem; max-height: 50vh; overflow-y: auto;']) ->toolbarButtons([ ['bold', 'italic', 'underline', 'strike', 'subscript', 'superscript', 'link', 'textColor', 'clearFormatting'], @@ -102,6 +109,17 @@ class ProjekteForm ]) ->columnSpan(2), ]), + Tab::make('Farben') + ->icon('phosphor-palette') + ->schema([ + ColorPicker::make('deckblatt_bg')->label('Deckblatt') + ->belowContent('Farbe des Hintergrundes am Deckblatt.'), + ColorPicker::make('schmuckfarbe_header')->label('Überschriften') + ->belowContent('Farbe des Hintergrundes bei Überschriften.'), + ColorPicker::make('farbe_borders')->label('Rahmen') + ->belowContent('Farbe von Rahmen und Rändern bei Tabellen und Boxen.'), + ])->columns(3) + ->columnSpanFull(), ]), ])->columnSpanFull(), diff --git a/app/Models/Projekte.php b/app/Models/Projekte.php index d2f121e..8c89ae0 100644 --- a/app/Models/Projekte.php +++ b/app/Models/Projekte.php @@ -18,6 +18,8 @@ class Projekte extends Model 'erstellung', 'status', 'deckblatt_bg', + 'schmuckfarbe_header', + 'farbe_borders', 'evaluation_gutachten', 'bezahlt_am', ]; diff --git a/bootstrap/cache/blade-icons.php b/bootstrap/cache/blade-icons.php index fbdc385..c5e18e5 100755 --- a/bootstrap/cache/blade-icons.php +++ b/bootstrap/cache/blade-icons.php @@ -1,7 +1,7 @@ array ( - '/Users/salam/Sites/nutzwerte_fi4/resources/svg' => + '/Users/hermanntelser/Sites/nutzwerte_fi4/resources/svg' => array ( 0 => 'excel', 1 => 'logo', @@ -11,7 +11,7 @@ ), 'heroicons' => array ( - '/Users/salam/Sites/nutzwerte_fi4/vendor/blade-ui-kit/blade-heroicons/src/../resources/svg' => + '/Users/hermanntelser/Sites/nutzwerte_fi4/vendor/blade-ui-kit/blade-heroicons/src/../resources/svg' => array ( 0 => 'c-academic-cap', 1 => 'c-adjustments-horizontal', @@ -1305,7 +1305,7 @@ ), 'phosphor-icons' => array ( - '/Users/salam/Sites/nutzwerte_fi4/vendor/codeat3/blade-phosphor-icons/src/../resources/svg' => + '/Users/hermanntelser/Sites/nutzwerte_fi4/vendor/codeat3/blade-phosphor-icons/src/../resources/svg' => array ( 0 => 'acorn-bold', 1 => 'acorn-duotone', @@ -10383,7 +10383,7 @@ ), 'filament' => array ( - '/Users/salam/Sites/nutzwerte_fi4/vendor/filament/support/src/../resources/svg' => + '/Users/hermanntelser/Sites/nutzwerte_fi4/vendor/filament/support/src/../resources/svg' => array ( 0 => 'o-align-center', 1 => 'o-align-end', @@ -10420,7 +10420,7 @@ ), 'lucide' => array ( - '/Users/salam/Sites/nutzwerte_fi4/vendor/mallardduck/blade-lucide-icons/src/../resources/svg' => + '/Users/hermanntelser/Sites/nutzwerte_fi4/vendor/mallardduck/blade-lucide-icons/src/../resources/svg' => array ( 0 => 'a-arrow-down', 1 => 'a-arrow-up', diff --git a/bootstrap/cache/config.php b/bootstrap/cache/config.php index b7d820e..f9001dd 100644 --- a/bootstrap/cache/config.php +++ b/bootstrap/cache/config.php @@ -81,9 +81,9 @@ array ( 'paths' => array ( - 0 => '/Users/salam/Sites/nutzwerte_fi4/resources/views', + 0 => '/Users/hermanntelser/Sites/nutzwerte_fi4/resources/views', ), - 'compiled' => '/Users/salam/Sites/nutzwerte_fi4/storage/framework/views', + 'compiled' => '/Users/hermanntelser/Sites/nutzwerte_fi4/storage/framework/views', ), 'cors' => array ( @@ -126,7 +126,7 @@ 'fallback_locale' => 'en', 'faker_locale' => 'de_AT', 'cipher' => 'AES-256-CBC', - 'key' => 'base64:zrVnUcBmUGjEV/EoAKnZCm/1FWplKu79kYBvevE2/ek=', + 'key' => 'base64:3uv/ppXplpqmYtiZ5ZyILnoOTmKfZAz27bfsnR1qmaE=', 'previous_keys' => array ( ), @@ -301,8 +301,8 @@ 'file' => array ( 'driver' => 'file', - 'path' => '/Users/salam/Sites/nutzwerte_fi4/storage/framework/cache/data', - 'lock_path' => '/Users/salam/Sites/nutzwerte_fi4/storage/framework/cache/data', + 'path' => '/Users/hermanntelser/Sites/nutzwerte_fi4/storage/framework/cache/data', + 'lock_path' => '/Users/hermanntelser/Sites/nutzwerte_fi4/storage/framework/cache/data', ), 'memcached' => array ( @@ -522,7 +522,7 @@ ), 'policies' => array ( - 'path' => '/Users/salam/Sites/nutzwerte_fi4/app/Policies', + 'path' => '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Policies', 'merge' => true, 'generate' => true, 'methods' => @@ -610,7 +610,7 @@ 'local' => array ( 'driver' => 'local', - 'root' => '/Users/salam/Sites/nutzwerte_fi4/storage/app/private', + 'root' => '/Users/hermanntelser/Sites/nutzwerte_fi4/storage/app/private', 'serve' => true, 'throw' => false, 'report' => false, @@ -618,7 +618,7 @@ 'public' => array ( 'driver' => 'local', - 'root' => '/Users/salam/Sites/nutzwerte_fi4/storage/app/public', + 'root' => '/Users/hermanntelser/Sites/nutzwerte_fi4/storage/app/public', 'url' => 'http://nutzwerte_fi4.test/storage', 'visibility' => 'public', 'throw' => false, @@ -640,7 +640,7 @@ 'promotion' => array ( 'driver' => 'local', - 'root' => '/Users/salam/Sites/nutzwerte_fi4/storage/app/public/promotion', + 'root' => '/Users/hermanntelser/Sites/nutzwerte_fi4/storage/app/public/promotion', 'url' => 'http://nutzwerte_fi4.test/storage/promotion', 'visibility' => 'public', 'throw' => false, @@ -648,7 +648,7 @@ ), 'links' => array ( - '/Users/salam/Sites/nutzwerte_fi4/public/storage' => '/Users/salam/Sites/nutzwerte_fi4/storage/app/public', + '/Users/hermanntelser/Sites/nutzwerte_fi4/public/storage' => '/Users/hermanntelser/Sites/nutzwerte_fi4/storage/app/public', ), ), 'logging' => @@ -673,14 +673,14 @@ 'single' => array ( 'driver' => 'single', - 'path' => '/Users/salam/Sites/nutzwerte_fi4/storage/logs/laravel.log', + 'path' => '/Users/hermanntelser/Sites/nutzwerte_fi4/storage/logs/laravel.log', 'level' => 'debug', 'replace_placeholders' => true, ), 'daily' => array ( 'driver' => 'daily', - 'path' => '/Users/salam/Sites/nutzwerte_fi4/storage/logs/laravel.log', + 'path' => '/Users/hermanntelser/Sites/nutzwerte_fi4/storage/logs/laravel.log', 'level' => 'debug', 'days' => 14, 'replace_placeholders' => true, @@ -745,7 +745,7 @@ ), 'emergency' => array ( - 'path' => '/Users/salam/Sites/nutzwerte_fi4/storage/logs/laravel.log', + 'path' => '/Users/hermanntelser/Sites/nutzwerte_fi4/storage/logs/laravel.log', ), ), ), @@ -844,7 +844,7 @@ 'theme' => 'default', 'paths' => array ( - 0 => '/Users/salam/Sites/nutzwerte_fi4/resources/views/vendor/mail', + 0 => '/Users/hermanntelser/Sites/nutzwerte_fi4/resources/views/vendor/mail', ), ), ), @@ -931,7 +931,7 @@ ), 'queue' => array ( - 'default' => 'sync', + 'default' => 'database', 'connections' => array ( 'sync' => @@ -1033,7 +1033,7 @@ 'lifetime' => 120, 'expire_on_close' => false, 'encrypt' => false, - 'files' => '/Users/salam/Sites/nutzwerte_fi4/storage/framework/sessions', + 'files' => '/Users/hermanntelser/Sites/nutzwerte_fi4/storage/framework/sessions', 'connection' => NULL, 'table' => 'sessions', 'store' => NULL, @@ -1081,7 +1081,7 @@ ), 'default_filesystem_disk' => 'local', 'assets_path' => NULL, - 'cache_path' => '/Users/salam/Sites/nutzwerte_fi4/bootstrap/cache/filament', + 'cache_path' => '/Users/hermanntelser/Sites/nutzwerte_fi4/bootstrap/cache/filament', 'livewire_loading_delay' => 'default', 'file_generation' => array ( @@ -1094,7 +1094,7 @@ 'livewire' => array ( 'class_namespace' => 'App\\Livewire', - 'view_path' => '/Users/salam/Sites/nutzwerte_fi4/resources/views/livewire', + 'view_path' => '/Users/hermanntelser/Sites/nutzwerte_fi4/resources/views/livewire', 'layout' => 'components.layouts.app', 'lazy_placeholder' => NULL, 'temporary_file_upload' => diff --git a/bootstrap/cache/filament/panels/admin.php b/bootstrap/cache/filament/panels/admin.php index 88677f0..09681c5 100644 --- a/bootstrap/cache/filament/panels/admin.php +++ b/bootstrap/cache/filament/panels/admin.php @@ -70,9 +70,9 @@ ), 'clusters' => array ( - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Clusters/Administration/AdministrationCluster.php' => 'App\\Filament\\Clusters\\Administration\\AdministrationCluster', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Clusters/Projekte/ProjekteCluster.php' => 'App\\Filament\\Clusters\\Projekte\\ProjekteCluster', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Clusters/Verwaltung/VerwaltungCluster.php' => 'App\\Filament\\Clusters\\Verwaltung\\VerwaltungCluster', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Clusters/Administration/AdministrationCluster.php' => 'App\\Filament\\Clusters\\Administration\\AdministrationCluster', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Clusters/Projekte/ProjekteCluster.php' => 'App\\Filament\\Clusters\\Projekte\\ProjekteCluster', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Clusters/Verwaltung/VerwaltungCluster.php' => 'App\\Filament\\Clusters\\Verwaltung\\VerwaltungCluster', ), 'clusteredComponents' => array ( @@ -97,7 +97,7 @@ ), 'clusterDirectories' => array ( - 0 => '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Clusters', + 0 => '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Clusters', ), 'clusterNamespaces' => array ( @@ -105,14 +105,14 @@ ), 'pages' => array ( - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Clusters/Administration/AdministrationCluster.php' => 'App\\Filament\\Clusters\\Administration\\AdministrationCluster', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Clusters/Projekte/ProjekteCluster.php' => 'App\\Filament\\Clusters\\Projekte\\ProjekteCluster', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Clusters/Verwaltung/VerwaltungCluster.php' => 'App\\Filament\\Clusters\\Verwaltung\\VerwaltungCluster', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Clusters/Administration/AdministrationCluster.php' => 'App\\Filament\\Clusters\\Administration\\AdministrationCluster', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Clusters/Projekte/ProjekteCluster.php' => 'App\\Filament\\Clusters\\Projekte\\ProjekteCluster', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Clusters/Verwaltung/VerwaltungCluster.php' => 'App\\Filament\\Clusters\\Verwaltung\\VerwaltungCluster', 0 => 'Filament\\Pages\\Dashboard', ), 'pageDirectories' => array ( - 0 => '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Pages', + 0 => '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Pages', ), 'pageNamespaces' => array ( @@ -120,23 +120,23 @@ ), 'resources' => array ( - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/Auftraggebers/AuftraggeberResource.php' => 'App\\Filament\\Resources\\Auftraggebers\\AuftraggeberResource', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/Gutachters/GutachterResource.php' => 'App\\Filament\\Resources\\Gutachters\\GutachterResource', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/Helps/HelpResource.php' => 'App\\Filament\\Resources\\Helps\\HelpResource', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/Inhaltsverzeichnis/InhaltsverzeichnisResource.php' => 'App\\Filament\\Resources\\Inhaltsverzeichnis\\InhaltsverzeichnisResource', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/KontoTextblocks/KontoTextblockResource.php' => 'App\\Filament\\Resources\\KontoTextblocks\\KontoTextblockResource', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/Kontos/KontoResource.php' => 'App\\Filament\\Resources\\Kontos\\KontoResource', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/Methodes/MethodeResource.php' => 'App\\Filament\\Resources\\Methodes\\MethodeResource', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/Orientierungs/OrientierungResource.php' => 'App\\Filament\\Resources\\Orientierungs\\OrientierungResource', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/Permissions/PermissionResource.php' => 'App\\Filament\\Resources\\Permissions\\PermissionResource', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/Projektes/ProjekteResource.php' => 'App\\Filament\\Resources\\Projektes\\ProjekteResource', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/Textblocks/TextblockResource.php' => 'App\\Filament\\Resources\\Textblocks\\TextblockResource', - '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources/Users/UserResource.php' => 'App\\Filament\\Resources\\Users\\UserResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/Auftraggebers/AuftraggeberResource.php' => 'App\\Filament\\Resources\\Auftraggebers\\AuftraggeberResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/Gutachters/GutachterResource.php' => 'App\\Filament\\Resources\\Gutachters\\GutachterResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/Helps/HelpResource.php' => 'App\\Filament\\Resources\\Helps\\HelpResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/Inhaltsverzeichnis/InhaltsverzeichnisResource.php' => 'App\\Filament\\Resources\\Inhaltsverzeichnis\\InhaltsverzeichnisResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/KontoTextblocks/KontoTextblockResource.php' => 'App\\Filament\\Resources\\KontoTextblocks\\KontoTextblockResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/Kontos/KontoResource.php' => 'App\\Filament\\Resources\\Kontos\\KontoResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/Methodes/MethodeResource.php' => 'App\\Filament\\Resources\\Methodes\\MethodeResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/Orientierungs/OrientierungResource.php' => 'App\\Filament\\Resources\\Orientierungs\\OrientierungResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/Permissions/PermissionResource.php' => 'App\\Filament\\Resources\\Permissions\\PermissionResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/Projektes/ProjekteResource.php' => 'App\\Filament\\Resources\\Projektes\\ProjekteResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/Textblocks/TextblockResource.php' => 'App\\Filament\\Resources\\Textblocks\\TextblockResource', + '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources/Users/UserResource.php' => 'App\\Filament\\Resources\\Users\\UserResource', 0 => 'BezhanSalleh\\FilamentShield\\Resources\\Roles\\RoleResource', ), 'resourceDirectories' => array ( - 0 => '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Resources', + 0 => '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Resources', ), 'resourceNamespaces' => array ( @@ -149,7 +149,7 @@ ), 'widgetDirectories' => array ( - 0 => '/Users/salam/Sites/nutzwerte_fi4/app/Filament/Widgets', + 0 => '/Users/hermanntelser/Sites/nutzwerte_fi4/app/Filament/Widgets', ), 'widgetNamespaces' => array ( diff --git a/bootstrap/cache/routes-v7.php b/bootstrap/cache/routes-v7.php index 5307577..7c9f54f 100644 --- a/bootstrap/cache/routes-v7.php +++ b/bootstrap/cache/routes-v7.php @@ -531,7 +531,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::uwRpOS4msfgMPLUO', + '_route' => 'generated::3o8r6SFhHYJXudVU', ), 1 => NULL, 2 => @@ -551,7 +551,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::N99mhs2lj0LpWDwf', + '_route' => 'generated::OmrEE69cygLxgFKH', ), 1 => NULL, 2 => @@ -609,7 +609,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::VY5gvGiICTLwb0GL', + '_route' => 'generated::scp8kliSZRCopV7D', ), 1 => NULL, 2 => @@ -629,7 +629,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::bOVniSvjKdfaigeS', + '_route' => 'generated::38LWocxhMLlc4pNK', ), 1 => NULL, 2 => @@ -649,7 +649,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::upvT1IaMSI0hxksR', + '_route' => 'generated::PVoorV8JM5zFb8Be', ), 1 => NULL, 2 => @@ -669,7 +669,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::6M4OIDX8e1P35euL', + '_route' => 'generated::CLZkTmw90AqCSfdu', ), 1 => NULL, 2 => @@ -689,7 +689,7 @@ app('router')->setCompiledRoutes( array ( 0 => array ( - '_route' => 'generated::WojXU4KMU8NmoMIQ', + '_route' => 'generated::jdlWZ8tNhTDVD3kW', ), 1 => NULL, 2 => @@ -2738,7 +2738,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::uwRpOS4msfgMPLUO' => + 'generated::3o8r6SFhHYJXudVU' => array ( 'methods' => array ( @@ -2750,7 +2750,7 @@ app('router')->setCompiledRoutes( array ( 'uses' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@returnJavaScriptAsFile', 'controller' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@returnJavaScriptAsFile', - 'as' => 'generated::uwRpOS4msfgMPLUO', + 'as' => 'generated::3o8r6SFhHYJXudVU', ), 'fallback' => false, 'defaults' => @@ -2766,7 +2766,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::N99mhs2lj0LpWDwf' => + 'generated::OmrEE69cygLxgFKH' => array ( 'methods' => array ( @@ -2778,7 +2778,7 @@ app('router')->setCompiledRoutes( array ( 'uses' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@maps', 'controller' => 'Livewire\\Mechanisms\\FrontendAssets\\FrontendAssets@maps', - 'as' => 'generated::N99mhs2lj0LpWDwf', + 'as' => 'generated::OmrEE69cygLxgFKH', ), 'fallback' => false, 'defaults' => @@ -2880,7 +2880,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::VY5gvGiICTLwb0GL' => + 'generated::scp8kliSZRCopV7D' => array ( 'methods' => array ( @@ -2890,7 +2890,7 @@ app('router')->setCompiledRoutes( 'uri' => 'up', 'action' => array ( - 'uses' => 'O:55:"Laravel\\SerializableClosure\\UnsignedSerializableClosure":1:{s:12:"serializable";O:46:"Laravel\\SerializableClosure\\Serializers\\Native":5:{s:3:"use";a:0:{}s:8:"function";s:826:"function () { + 'uses' => 'O:55:"Laravel\\SerializableClosure\\UnsignedSerializableClosure":1:{s:12:"serializable";O:46:"Laravel\\SerializableClosure\\Serializers\\Native":5:{s:3:"use";a:0:{}s:8:"function";s:834:"function () { $exception = null; try { @@ -2905,11 +2905,11 @@ app('router')->setCompiledRoutes( $exception = $e->getMessage(); } - return response(\\Illuminate\\Support\\Facades\\View::file(\'/Users/salam/Sites/nutzwerte_fi4/vendor/laravel/framework/src/Illuminate/Foundation/Configuration\'.\'/../resources/health-up.blade.php\', [ + return response(\\Illuminate\\Support\\Facades\\View::file(\'/Users/hermanntelser/Sites/nutzwerte_fi4/vendor/laravel/framework/src/Illuminate/Foundation/Configuration\'.\'/../resources/health-up.blade.php\', [ \'exception\' => $exception, ]), status: $exception ? 500 : 200); }";s:5:"scope";s:54:"Illuminate\\Foundation\\Configuration\\ApplicationBuilder";s:4:"this";N;s:4:"self";s:32:"0000000000000f6a0000000000000000";}}', - 'as' => 'generated::VY5gvGiICTLwb0GL', + 'as' => 'generated::scp8kliSZRCopV7D', ), 'fallback' => false, 'defaults' => @@ -2925,7 +2925,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::bOVniSvjKdfaigeS' => + 'generated::38LWocxhMLlc4pNK' => array ( 'methods' => array ( @@ -2947,7 +2947,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::bOVniSvjKdfaigeS', + 'as' => 'generated::38LWocxhMLlc4pNK', ), 'fallback' => false, 'defaults' => @@ -2963,7 +2963,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::upvT1IaMSI0hxksR' => + 'generated::PVoorV8JM5zFb8Be' => array ( 'methods' => array ( @@ -2985,7 +2985,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::upvT1IaMSI0hxksR', + 'as' => 'generated::PVoorV8JM5zFb8Be', ), 'fallback' => false, 'defaults' => @@ -3001,7 +3001,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::6M4OIDX8e1P35euL' => + 'generated::CLZkTmw90AqCSfdu' => array ( 'methods' => array ( @@ -3023,7 +3023,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::6M4OIDX8e1P35euL', + 'as' => 'generated::CLZkTmw90AqCSfdu', ), 'fallback' => false, 'defaults' => @@ -3039,7 +3039,7 @@ app('router')->setCompiledRoutes( 'waitSeconds' => NULL, 'withTrashed' => false, ), - 'generated::WojXU4KMU8NmoMIQ' => + 'generated::jdlWZ8tNhTDVD3kW' => array ( 'methods' => array ( @@ -3061,7 +3061,7 @@ app('router')->setCompiledRoutes( 'where' => array ( ), - 'as' => 'generated::WojXU4KMU8NmoMIQ', + 'as' => 'generated::jdlWZ8tNhTDVD3kW', ), 'fallback' => false, 'defaults' => @@ -3201,7 +3201,7 @@ app('router')->setCompiledRoutes( 'uri' => 'storage/{path}', 'action' => array ( - 'uses' => 'O:55:"Laravel\\SerializableClosure\\UnsignedSerializableClosure":1:{s:12:"serializable";O:46:"Laravel\\SerializableClosure\\Serializers\\Native":5:{s:3:"use";a:3:{s:4:"disk";s:5:"local";s:6:"config";a:5:{s:6:"driver";s:5:"local";s:4:"root";s:52:"/Users/salam/Sites/nutzwerte_fi4/storage/app/private";s:5:"serve";b:1;s:5:"throw";b:0;s:6:"report";b:0;}s:12:"isProduction";b:0;}s:8:"function";s:323:"function (\\Illuminate\\Http\\Request $request, string $path) use ($disk, $config, $isProduction) { + 'uses' => 'O:55:"Laravel\\SerializableClosure\\UnsignedSerializableClosure":1:{s:12:"serializable";O:46:"Laravel\\SerializableClosure\\Serializers\\Native":5:{s:3:"use";a:3:{s:4:"disk";s:5:"local";s:6:"config";a:5:{s:6:"driver";s:5:"local";s:4:"root";s:60:"/Users/hermanntelser/Sites/nutzwerte_fi4/storage/app/private";s:5:"serve";b:1;s:5:"throw";b:0;s:6:"report";b:0;}s:12:"isProduction";b:0;}s:8:"function";s:323:"function (\\Illuminate\\Http\\Request $request, string $path) use ($disk, $config, $isProduction) { return (new \\Illuminate\\Filesystem\\ServeFile( $disk, $config, diff --git a/database/migrations/2025_09_24_131440_create_projektes_table.php b/database/migrations/2025_09_24_131440_create_projektes_table.php index fb2a6db..7ea2f1d 100644 --- a/database/migrations/2025_09_24_131440_create_projektes_table.php +++ b/database/migrations/2025_09_24_131440_create_projektes_table.php @@ -23,6 +23,8 @@ return new class extends Migration $table->string('erstellung')->nullable(); $table->string('status')->default('entwurf'); $table->string('deckblatt_bg')->default('#efefef'); + $table->string('schmuckfarbe_header')->default('#bedbff'); + $table->string('farbe_borders')->default('#99a1af'); $table->boolean('evaluation_gutachten')->default(0); $table->timestamp('bezahlt_am')->nullable(); $table->timestamps(); diff --git a/public/storage b/public/storage index c5aab61..2935def 120000 --- a/public/storage +++ b/public/storage @@ -1 +1 @@ -/Users/salam/Sites/nutzwerte_fi4/storage/app/public \ No newline at end of file +/Users/hermanntelser/Sites/nutzwerte_fi4/storage/app/public \ No newline at end of file diff --git a/resources/css/pdf-download.css b/resources/css/pdf-download.css index 76ef8b4..edcab22 100644 --- a/resources/css/pdf-download.css +++ b/resources/css/pdf-download.css @@ -1,12 +1,13 @@ body { - font-family: Verdana, Tahoma, sans-serif; - font-size: 11pt; - font-weight: normal; + font-family: Arial, Helvetica, sans-serif; + font-size: 9.5pt !important; + font-weight: thin; line-height: 13pt; } #deckblatt { position: absolute; + background-color: '###BG_DECKBLATT###'; top: 0; bottom: 0; left: 0; @@ -18,64 +19,63 @@ body { /** POSITION FIXED */ #deckblatt-gutachter { - position: absolute; - margin-top: 12mm; - width: 200mm; + margin: 12mm 10mm; height: 100mm; -} - -#deckblatt-projekt { - position: absolute; - margin-left: 16mm; - height: 40mm; - width: 190mm; -} - -#deckblatt-festsetzung { - position: absolute; - text-align: right; - font-weight: bold; - margin-top: 12mm; - height: 60mm; - width: 195mm; + overflow: hidden; } #deckblatt-logo-gutachter { background-size: contain; background-repeat: no-repeat; margin-bottom: 1mm; + overflow: hidden; } -#deckblatt-auftraggeber { - position: absolute; +#deckblatt-projekt { + margin: auto 10mm; + height: 60mm; + overflow: hidden; +} + +#deckblatt-festsetzung { text-align: right; - margin-top: 20mm; - height: 40mm; - width: 195mm; + font-weight: bold; + margin: auto 10mm; + height: 55mm; + overflow: hidden; } #deckblatt-logo-auftraggeber { - width: 255mm; height: 20mm; background-size: contain; background-repeat: no-repeat; background-position: center right; margin-bottom: 1mm; + overflow: hidden; } +#deckblatt-auftraggeber { + text-align: right; + margin: auto 10mm; + height: 50mm; + overflow: hidden; +} + + /** FORMATTING */ .header { - padding: 1.3mm 3mm; - margin: 9mm 0 5mm; + padding: 1.5mm 3mm; + margin: 11mm auto 5mm; font-size: 14px; - border: 0.3mm solid #e5e7eb; - background-color: #eff6ff; + border: 0.3mm solid '###FARBE_RAHMEN###'; + background-color: '###BG_HEADER###'; + font-size: 11.5pt; } h1 { - font-size: 22pt; + font-size: 24pt; line-height: 26pt; } @@ -89,6 +89,11 @@ h3 { line-height: auto; } +h4 { + font-size: 11pt; + line-height: auto; +} + .small { font-size: 7pt; line-height: 9pt; @@ -103,6 +108,11 @@ a { font-weight: bold; } +.normal { + font-weight: normal; +} + + .right { text-align: right; } @@ -111,13 +121,17 @@ a { text-align: center; } +.nowrap { + white-space: nowrap; +} + /** FARBEN */ .gray { color: #4a5565; } -.bg-sky { - background-color: #eff6ff !important; +.bg-user-set { + background-color: '###BG_HEADER###'; } .bg-white { @@ -153,6 +167,10 @@ p { padding-bottom: 2mm; } +.pl-2 { + padding-left: 4mm; +} + .m10 { margin: 10px; } @@ -177,11 +195,11 @@ p { GUTACHTEN TABELLEN */ table { + font-size: 8.5pt; border-collapse: collapse; border-spacing: 0; empty-cells: show; width: 100% !important; - font-size: 11px; margin-top: 10mm; margin-bottom: 10mm; } @@ -197,6 +215,7 @@ td { th { padding: 5px 7px; + white-space: nowrap; } .w30 { @@ -220,21 +239,21 @@ th { } .border { - border: 0.3mm solid #e5e7eb; + border: 0.3mm solid '###FARBE_RAHMEN###'; } .bt { - border-top: 0.3mm solid #e5e7eb; + border-top: 0.3mm solid '###FARBE_RAHMEN###'; } .bb { - border-bottom: 0.3mm solid #e5e7eb; + border-bottom: 0.3mm solid '###FARBE_RAHMEN###'; } .bl { - border-left: 0.3mm solid #e5e7eb; + border-left: 0.3mm solid '###FARBE_RAHMEN###'; } .br { - border-right: 0.3mm solid #e5e7eb; + border-right: 0.3mm solid '###FARBE_RAHMEN###'; } \ No newline at end of file diff --git a/storage/hvf-logos/logo hanno.afphoto b/storage/hvf-logos/logo hanno.afphoto new file mode 100644 index 0000000000000000000000000000000000000000..61863b759a79d8fe21367cc027ae255f75ac9b1e GIT binary patch literal 33847 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
'.$value.''.$value.''.$value.''.$value.'