diff --git a/app/View/Components/EmptyPage.php b/app/View/Components/EmptyPage.php new file mode 100644 index 000000000..863f8c3d5 --- /dev/null +++ b/app/View/Components/EmptyPage.php @@ -0,0 +1,125 @@ +page = $page; + $this->imageEmptyPage = $this->getImageEmptyPage($page, $imageEmptyPage); + $this->textEmptyPage = $this->getTextEmptyPage($page, $textEmptyPage); + $this->textPage = $this->getTextPage($page, $textPage); + $this->urlDocsPath = $this->getUrlDocsPath($page, $urlDocsPath); + $this->checkPermissionCreate = $checkPermissionCreate; + $this->permissionCreate = $this->getPermissionCreate($page, $permissionCreate); + $this->routeCreate = $this->getRouteCreate($page, $routeCreate); + } + + /** + * Get the view / contents that represent the component. + * + * @return \Illuminate\Contracts\View\View|string + */ + public function render() + { + return view('components.empty-page'); + } + + protected function getImageEmptyPage($page, $imageEmptyPage) + { + if ($imageEmptyPage) { + return $imageEmptyPage; + } + + return 'public/img/empty_pages/' . $page . '.png'; + } + + protected function getTextEmptyPage($page, $textEmptyPage) + { + if ($textEmptyPage) { + return $textEmptyPage; + } + + return 'general.empty.' . $page; + } + + protected function getTextPage($page, $textPage) + { + if ($textPage) { + return $textPage; + } + + return 'general.' . $page; + } + + protected function getUrlDocsPath($page, $urlDocsPath) + { + if ($urlDocsPath) { + return $urlDocsPath; + } + + return 'https://akaunting.com/docs/user-manual/' . $page; + } + + protected function getPermissionCreate($page, $permissionCreate) + { + if ($permissionCreate) { + return $permissionCreate; + } + + $pages = [ + 'items' => 'create-commen-items', + ]; + + if (array_key_exists($page, $pages)) { + $permissionCreate = $pages[$page]; + } + + return $permissionCreate; + } + + protected function getRouteCreate($page, $routeCreate) + { + if ($routeCreate) { + return $routeCreate; + } + + return $page . '.create'; + } +} diff --git a/resources/views/components/empty-page.blade.php b/resources/views/components/empty-page.blade.php new file mode 100644 index 000000000..d02fd9d15 --- /dev/null +++ b/resources/views/components/empty-page.blade.php @@ -0,0 +1,24 @@ + +
+ {!! trans($textEmptyPage) !!} {!! trans('general.empty.documentation', ['url' => $urlDocsPath]) !!} +
+ + @if ($checkPermissionCreate) + @can($permissionCreate) + @endif + + {{ trans('general.title.create', ['type' => trans_choice($textPage, 1)]) }} + + @if ($checkPermissionCreate) + @endcan + @endif +