diff --git a/addons/default/visiosoft/advs-module/resources/js/admin/dashboard/report.js b/addons/default/visiosoft/advs-module/resources/js/admin/dashboard/report.js index 92522a569..a37d8a871 100644 --- a/addons/default/visiosoft/advs-module/resources/js/admin/dashboard/report.js +++ b/addons/default/visiosoft/advs-module/resources/js/admin/dashboard/report.js @@ -56,4 +56,20 @@ $(document).ready( function () { }, ], }); + + $('#metaPageReport').DataTable({ + ajax: '/admin/api/classified/report/page', + columns: [ + { + data: 'name', + render: function ( data, type, row, meta ) { + return ` + + ${data ?? productsReportTrans.undefined_page} + + `; + } + }, + ], + }); } ); diff --git a/addons/default/visiosoft/advs-module/resources/lang/en/field.php b/addons/default/visiosoft/advs-module/resources/lang/en/field.php index f1ecaee86..fc320a6c5 100644 --- a/addons/default/visiosoft/advs-module/resources/lang/en/field.php +++ b/addons/default/visiosoft/advs-module/resources/lang/en/field.php @@ -392,4 +392,7 @@ return [ 'product' => 'Product', 'count' => 'Count', 'undefined_product' => 'Undefined Product', + 'pages_without_meta_information_report' => 'Pages Without Meta Information Report', + 'page' => 'Page', + 'undefined_page' => 'Undefined Page', ]; diff --git a/addons/default/visiosoft/advs-module/resources/views/admin/dashboard/report.twig b/addons/default/visiosoft/advs-module/resources/views/admin/dashboard/report.twig index 9f7e14ae4..5bcd7b9d5 100644 --- a/addons/default/visiosoft/advs-module/resources/views/admin/dashboard/report.twig +++ b/addons/default/visiosoft/advs-module/resources/views/admin/dashboard/report.twig @@ -30,6 +30,13 @@ trans('visiosoft.module.advs::field.product'), ], }, + { + 'title': trans('visiosoft.module.advs::field.pages_without_meta_information_report'), + 'id': 'metaPageReport', + 'columns': [ + trans('visiosoft.module.advs::field.page'), + ], + }, ] %} {% for report in reports %} @@ -58,6 +65,7 @@ diff --git a/addons/default/visiosoft/advs-module/src/Adv/Event/PriceChange.php b/addons/default/visiosoft/advs-module/src/Adv/Event/PriceChange.php index 631047e45..1b7a8c051 100644 --- a/addons/default/visiosoft/advs-module/src/Adv/Event/PriceChange.php +++ b/addons/default/visiosoft/advs-module/src/Adv/Event/PriceChange.php @@ -1,6 +1,5 @@ 'Visiosoft\AdvsModule\Http\Controller\Admin\ReportController@status', 'admin/api/classified/report/unexplained' => 'Visiosoft\AdvsModule\Http\Controller\Admin\ReportController@unexplained', 'admin/api/classified/report/no-image' => 'Visiosoft\AdvsModule\Http\Controller\Admin\ReportController@noImage', + 'admin/api/classified/report/page' => 'Visiosoft\AdvsModule\Http\Controller\Admin\ReportController@page', ]; protected $middleware = [ diff --git a/addons/default/visiosoft/advs-module/src/Http/Controller/Admin/ReportController.php b/addons/default/visiosoft/advs-module/src/Http/Controller/Admin/ReportController.php index 8acc6ac6b..e6bd492d6 100644 --- a/addons/default/visiosoft/advs-module/src/Http/Controller/Admin/ReportController.php +++ b/addons/default/visiosoft/advs-module/src/Http/Controller/Admin/ReportController.php @@ -1,5 +1,6 @@ $this->advRepository->getNoImageClassifiedsReport() ]; } + + public function page(PageRepositoryInterface $pageRepository) + { + $pages = $pageRepository->newQuery() + ->select('title as name', 'pages_pages.id') + ->where(function ($q) { + $q->whereNull('meta_title') + ->orWhereNull('meta_description'); + }) + ->leftJoin('pages_pages_translations as pages_trans', function ($join) { + $join->on('pages_pages.id', '=', 'pages_trans.entry_id'); + $join->whereIn('locale', [config('app.locale'), setting_value('streams::default_locale'), 'en']); + }) + ->get(); + + return [ + 'data' => $pages + ]; + } } diff --git a/addons/default/visiosoft/cats-module/resources/js/admin/dashboard/report.js b/addons/default/visiosoft/cats-module/resources/js/admin/dashboard/report.js new file mode 100644 index 000000000..4c36b21e8 --- /dev/null +++ b/addons/default/visiosoft/cats-module/resources/js/admin/dashboard/report.js @@ -0,0 +1,27 @@ +$(document).ready( function () { + $('#metaCategoryReport').DataTable({ + ajax: { + url: '/admin/api/cats/report/category', + dataSrc( json ) { + json.recordsTotal = json.total; + json.recordsFiltered = json.total; + + return json.data; + } + }, + processing: true, + serverSide: true, + columns: [ + { + data: 'name', + render: function ( data, type, row, meta ) { + return ` + + ${data ? data : categoryReportTrans.undefined_category} + + `; + } + }, + ], + }); +} ); diff --git a/addons/default/visiosoft/cats-module/resources/lang/en/field.php b/addons/default/visiosoft/cats-module/resources/lang/en/field.php index 11e211b50..b7106decc 100644 --- a/addons/default/visiosoft/cats-module/resources/lang/en/field.php +++ b/addons/default/visiosoft/cats-module/resources/lang/en/field.php @@ -37,5 +37,10 @@ return [ 'please_wait' => 'Please wait.Deleting Sub Categories', 'category_selection' => 'Category Selection', 'go_to_parent' => 'Go To Parent', - 'preview' => 'Preview' + 'preview' => 'Preview', + + // Report + 'undefined_category' => 'Undefined Category', + 'categories_with_no_meta_report' => 'Categories with No Meta Report', + 'category' => 'Category', ]; diff --git a/addons/default/visiosoft/cats-module/resources/views/admin/dashboard/report.twig b/addons/default/visiosoft/cats-module/resources/views/admin/dashboard/report.twig new file mode 100644 index 000000000..836dd42b5 --- /dev/null +++ b/addons/default/visiosoft/cats-module/resources/views/admin/dashboard/report.twig @@ -0,0 +1,41 @@ +
| {{ column }} | + {% endfor %} +
|---|