diff --git a/app/Abstracts/View/Components/Document.php b/app/Abstracts/View/Components/Document.php index f0528be48..2439cd802 100644 --- a/app/Abstracts/View/Components/Document.php +++ b/app/Abstracts/View/Components/Document.php @@ -53,7 +53,7 @@ abstract class Document extends Component return $translation; } - public function getRouteFromConfig($type, $config_key) + public function getRouteFromConfig($type, $config_key, $config_parameters = []) { $route = ''; @@ -62,7 +62,23 @@ abstract class Document extends Component return $route; } - $prefix = config("type.' . $type . '.route.prefix"); + $prefix = config('type.' . $type . '.route.prefix'); + + $route = $prefix . '.' . $config_key; + + try { + route($route, $config_parameters); + } catch (\Exception $e) { + try { + $route = Str::plural($type, 2) . '.' . $config_key; + + route($route, $config_parameters); + } catch (\Exception $e) { + $route = ''; + } + } + + return $route; } public function getPermissionFromConfig($type, $config_key) diff --git a/app/Abstracts/View/Components/DocumentForm.php b/app/Abstracts/View/Components/DocumentForm.php index 79a1d9299..3510ec501 100644 --- a/app/Abstracts/View/Components/DocumentForm.php +++ b/app/Abstracts/View/Components/DocumentForm.php @@ -294,27 +294,13 @@ abstract class DocumentForm extends Base return $routeStore; } - if ($route = config("type.{$type}.route.store")) { + $route = $this->getRouteFromConfig($type, 'store'); + + if (!empty($route)) { return $route; } - $prefix = config("type.{$type}.route.prefix"); - - $route = $prefix . '.store'; - - try { - route($route); - } catch (\Exception $e) { - try { - $route = Str::plural($type, 2) . '.store'; - - route($route); - } catch (\Exception $e) { - $route = ''; - } - } - - return $route; + return 'invoices.store'; } protected function getRouteUpdate($type, $routeUpdate, $document, $parameters = []) @@ -323,33 +309,17 @@ abstract class DocumentForm extends Base return $routeUpdate; } - if ($route = config("type.{$type}.route.update")) { + $parameters = [ + config('type.' . $type. '.route.parameter') => $document->id + ]; + + $route = $this->getRouteFromConfig($type, 'update', $parameters); + + if (!empty($route)) { return $route; } - $prefix = config("type.{$type}.route.prefix"); - - $route = $prefix . '.update'; - - if (!empty($parameters)) { - $parameters = [ - config("type.{$type}.route.parameter") => $document->id - ]; - } - - try { - route($route, $parameters); - } catch (\Exception $e) { - try { - $route = Str::plural($type, 2) . '.update'; - - route($route, $parameters); - } catch (\Exception $e) { - $route = ''; - } - } - - return $route; + return 'invoices.update'; } protected function getContacts($type, $contacts) diff --git a/app/Abstracts/View/Components/DocumentIndex.php b/app/Abstracts/View/Components/DocumentIndex.php index 01cef1431..38a386251 100644 --- a/app/Abstracts/View/Components/DocumentIndex.php +++ b/app/Abstracts/View/Components/DocumentIndex.php @@ -267,7 +267,7 @@ abstract class DocumentIndex extends Base $this->classDocumentNumber = $this->getClassDocumentNumber($type, $classDocumentNumber); $this->classContactName = $this->getClassContactName($type, $classContactName); $this->classAmount = $this->getClassAmount($type, $classAmount); - $this->classIssuedAt = $this->getclassIssuedAt($type, $classIssuedAt); + $this->classIssuedAt = $this->getClassIssuedAt($type, $classIssuedAt); $this->classDueAt = $this->getClassDueAt($type, $classDueAt); $this->classStatus = $this->getClassStatus($type, $classStatus); $this->classActions = $this->getClassActions($type, $classActions); @@ -292,6 +292,12 @@ abstract class DocumentIndex extends Base return $page; } + $route = $this->getRouteFromConfig($type, 'update'); + + if (!empty($route)) { + return $route; + } + return config("type.{$type}.route.prefix"); } @@ -323,17 +329,13 @@ abstract class DocumentIndex extends Base return $createRoute; } - $page = config("type.{$type}.route.prefix"); + $route = $this->getRouteFromConfig($type, 'create'); - $route = $page . '.create'; - - try { - route($route); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.create'; } protected function getImportRoute($importRoute) @@ -353,10 +355,12 @@ abstract class DocumentIndex extends Base return $importRouteParameters; } + $route = $this->getRouteFromConfig($type, 'import'); + $importRouteParameters = [ - 'group' => config("type.{$type}.group"), - 'type' => config("type.{$type}.route.prefix"), - 'route' => 'invoices.import', + 'group' => config('type.' . $type . '.group'), + 'type' => config('type.' . $type . '.route.prefix'), + 'route' => ($route) ? $route : 'invoices.import', ]; return $importRouteParameters; @@ -368,17 +372,13 @@ abstract class DocumentIndex extends Base return $exportRoute; } - $page = config("type.{$type}.route.prefix"); + $route = $this->getRouteFromConfig($type, 'export'); - $route = $page . '.export'; - - try { - route($route); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.export'; } protected function getRoute($type, $formCardHeaderRoute) @@ -387,17 +387,13 @@ abstract class DocumentIndex extends Base return $formCardHeaderRoute; } - $page = config("type.{$type}.route.prefix"); + $route = $this->getRouteFromConfig($type, 'index'); - $route = $page . '.index'; - - try { - route($route); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.index'; } protected function getSearchStringModel($type, $searchStringModel) @@ -480,9 +476,15 @@ abstract class DocumentIndex extends Base return $bulkActionRouteParameters; } + $group = config('type.' . $type . '.group'); + + if (!empty(config('type.' . $type . '.alias'))) { + $group = config('type.' . $type . '.alias'); + } + $bulkActionRouteParameters = [ - 'group' => config("type.{$type}.group"), - 'type' => config("type.{$type}.route.prefix") + 'group' => $group, + 'type' => config('type.' . $type . '.route.prefix') ]; return $bulkActionRouteParameters; @@ -594,7 +596,7 @@ abstract class DocumentIndex extends Base return 'invoices.invoice_date'; } - protected function getclassIssuedAt($type, $classIssuedAt) + protected function getClassIssuedAt($type, $classIssuedAt) { if (!empty($classIssuedAt)) { return $classIssuedAt; @@ -684,20 +686,16 @@ abstract class DocumentIndex extends Base return $routeButtonShow; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.show'; + $route = $this->getRouteFromConfig($type, 'show', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.show'; } protected function getRouteButtonEdit($type, $routeButtonEdit) @@ -706,20 +704,16 @@ abstract class DocumentIndex extends Base return $routeButtonEdit; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.edit'; + $route = $this->getRouteFromConfig($type, 'edit', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.edit'; } protected function getRouteButtonDuplicate($type, $routeButtonDuplicate) @@ -728,20 +722,16 @@ abstract class DocumentIndex extends Base return $routeButtonDuplicate; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.duplicate'; + $route = $this->getRouteFromConfig($type, 'duplicate', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.duplicate'; } protected function getRouteButtonCancelled($type, $routeButtonCancelled) @@ -750,20 +740,16 @@ abstract class DocumentIndex extends Base return $routeButtonCancelled; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.cancelled'; + $route = $this->getRouteFromConfig($type, 'cancelled', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.cancelled'; } protected function getRouteButtonDelete($type, $routeButtonDelete) @@ -772,20 +758,16 @@ abstract class DocumentIndex extends Base return $routeButtonDelete; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.destroy'; + $route = $this->getRouteFromConfig($type, 'destroy', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.destroy'; } protected function getPermissionCreate($type, $permissionCreate) diff --git a/app/Abstracts/View/Components/DocumentShow.php b/app/Abstracts/View/Components/DocumentShow.php index 3181c9552..0ee098c77 100644 --- a/app/Abstracts/View/Components/DocumentShow.php +++ b/app/Abstracts/View/Components/DocumentShow.php @@ -605,7 +605,7 @@ abstract class DocumentShow extends Base return $signedUrl; } - $page = config("type.{$type}.route.prefix"); + $page = config('type.' . $type . '.route.prefix'); $route = 'signed.' . $page . '.show'; @@ -614,7 +614,7 @@ abstract class DocumentShow extends Base $signedUrl = URL::signedRoute($route, [$this->document->id, 'company_id' => session('company_id')]); } catch (\Exception $e) { - $route = ''; + $signedUrl = URL::signedRoute('signed.invoices.show', [$this->document->id, 'company_id' => session('company_id')]); } return $signedUrl; @@ -660,17 +660,13 @@ abstract class DocumentShow extends Base return $routeButtonAddNew; } - $page = config("type.{$type}.route.prefix"); + $route = $this->getRouteFromConfig($type, 'create'); - $route = $page . '.create'; - - try { - route($route); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.create'; } protected function getRouteButtonEdit($type, $routeButtonEdit) @@ -679,20 +675,16 @@ abstract class DocumentShow extends Base return $routeButtonEdit; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.edit'; + $route = $this->getRouteFromConfig($type, 'edit', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.edit'; } protected function getRouteButtonDuplicate($type, $routeButtonDuplicate) @@ -701,20 +693,16 @@ abstract class DocumentShow extends Base return $routeButtonDuplicate; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.duplicate'; + $route = $this->getRouteFromConfig($type, 'duplicate', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.duplicate'; } protected function getRouteButtonPrint($type, $routeButtonPrint) @@ -723,20 +711,16 @@ abstract class DocumentShow extends Base return $routeButtonPrint; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.print'; + $route = $this->getRouteFromConfig($type, 'print', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.print'; } protected function getRouteButtonPdf($type, $routeButtonPdf) @@ -745,20 +729,16 @@ abstract class DocumentShow extends Base return $routeButtonPdf; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.pdf'; + $route = $this->getRouteFromConfig($type, 'pdf', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.pdf'; } protected function getRouteButtonCancelled($type, $routeButtonCancelled) @@ -767,20 +747,16 @@ abstract class DocumentShow extends Base return $routeButtonCancelled; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.cancelled'; + $route = $this->getRouteFromConfig($type, 'cancelled', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.cancelled'; } protected function getRouteButtonCustomize($type, $routeButtonCustomize) @@ -794,7 +770,7 @@ abstract class DocumentShow extends Base try { route($route); } catch (\Exception $e) { - $route = ''; + $route = 'settings.invoice.edit'; } return $route; @@ -806,20 +782,16 @@ abstract class DocumentShow extends Base return $routeButtonDelete; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.destroy'; + $route = $this->getRouteFromConfig($type, 'destroy', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.destroy'; } protected function getRouteButtonPaid($type, $routeButtonPaid) @@ -828,20 +800,16 @@ abstract class DocumentShow extends Base return $routeButtonPaid; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.paid'; + $route = $this->getRouteFromConfig($type, 'paid', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.paid'; } protected function getRouteButtonSent($type, $routeButtonSent) @@ -850,20 +818,16 @@ abstract class DocumentShow extends Base return $routeButtonSent; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.sent'; + $route = $this->getRouteFromConfig($type, 'sent', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.sent'; } protected function getRouteButtonReceived($type, $routeButtonReceived) @@ -872,20 +836,16 @@ abstract class DocumentShow extends Base return $routeButtonReceived; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.received'; + $route = $this->getRouteFromConfig($type, 'received', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.received'; } protected function getRouteButtonEmail($type, $routeButtonEmail) @@ -894,20 +854,16 @@ abstract class DocumentShow extends Base return $routeButtonEmail; } - $page = config("type.{$type}.route.prefix"); + //example route parameter. + $parameter = 1; - $route = $page . '.email'; + $route = $this->getRouteFromConfig($type, 'email', $parameter); - try { - //example route parameter. - $parameter = 1; - - route($route, $parameter); - } catch (\Exception $e) { - $route = ''; + if (!empty($route)) { + return $route; } - return $route; + return 'invoices.email'; } protected function getPermissionCreate($type, $permissionCreate)