Merge pull request #657 from openclassify/dia

improve the way vue js is compiled to prevent errors
This commit is contained in:
spektra2147 2020-09-08 15:31:40 +03:00 committed by GitHub
commit 5c43e64308
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 125 additions and 79 deletions

View File

@ -292,7 +292,9 @@ class AdvRepository extends EntryRepository implements AdvRepositoryInterface
->inRandomOrder() ->inRandomOrder()
->first(); ->first();
if ($adv) {
$adv = $this->getLocationNames($adv); $adv = $this->getLocationNames($adv);
}
return $adv; return $adv;
} }

View File

@ -343,17 +343,14 @@ class AdvsController extends PublicController
{ {
$id = is_null($id) ? $seo : $id; $id = is_null($id) ? $seo : $id;
$categories = array(); $adv = $this->adv_repository->getListItemAdv($id);
$categories_id = array();
$isActiveComplaints = $this->adv_model->is_enabled('complaints');
$isCommentActive = $this->adv_model->is_enabled('comments');
if ($isActiveComplaints) { if ($adv) {
if ($this->adv_model->is_enabled('complaints')) {
$complaints = ComplaintsComplainTypesEntryModel::all(); $complaints = ComplaintsComplainTypesEntryModel::all();
} }
$adv = $this->adv_repository->getListItemAdv($id);
$recommended_advs = $this->adv_repository->getRecommendedAds($adv->id); $recommended_advs = $this->adv_repository->getRecommendedAds($adv->id);
foreach ($recommended_advs as $index => $ad) { foreach ($recommended_advs as $index => $ad) {
@ -361,6 +358,8 @@ class AdvsController extends PublicController
$recommended_advs[$index] = $this->adv_model->AddAdsDefaultCoverImage($ad); $recommended_advs[$index] = $this->adv_model->AddAdsDefaultCoverImage($ad);
} }
$categories = array();
$categories_id = array();
for ($i = 1; $i <= 10; $i++) { for ($i = 1; $i <= 10; $i++) {
$cat = "cat" . $i; $cat = "cat" . $i;
if ($adv->$cat != null) { if ($adv->$cat != null) {
@ -382,8 +381,7 @@ class AdvsController extends PublicController
//Cloudinary Module //Cloudinary Module
$adv->video_url = null; $adv->video_url = null;
$isActiveCloudinary = $this->adv_model->is_enabled('cloudinary'); if ($this->adv_model->is_enabled('cloudinary')) {
if ($isActiveCloudinary) {
$CloudinaryModel = new VideoModel(); $CloudinaryModel = new VideoModel();
$Cloudinary = $CloudinaryModel->getVideo($id); $Cloudinary = $CloudinaryModel->getVideo($id);
@ -395,7 +393,7 @@ class AdvsController extends PublicController
$options = $this->optionRepository->findAllBy('adv_id', $id); $options = $this->optionRepository->findAllBy('adv_id', $id);
if ($isCommentActive) { if ($this->adv_model->is_enabled('comments')) {
$CommentModel = new CommentModel(); $CommentModel = new CommentModel();
$comments = $CommentModel->getComments($adv->id)->get(); $comments = $CommentModel->getComments($adv->id)->get();
} }
@ -425,7 +423,10 @@ class AdvsController extends PublicController
} else { } else {
return back(); return back();
} }
} else {
$this->messages->error(trans('visiosoft.module.advs::message.ad_doesnt_exist'));
return redirect()->route('visiosoft.module.advs::list');
}
} }
public function preview($id) public function preview($id)

View File

@ -7,4 +7,11 @@ return [
"default_value" => 5000, "default_value" => 5000,
] ]
], ],
"include_cities_sitemap" => [
"type" => "anomaly.field_type.boolean",
"config" => [
"default_value" => true,
"mode" => "checkbox",
]
]
]; ];

View File

@ -4,4 +4,7 @@ return [
'sitemap_dividing_number' => [ 'sitemap_dividing_number' => [
'name' => 'Sitemap Dividing Number', 'name' => 'Sitemap Dividing Number',
], ],
'include_cities_sitemap' => [
'name' => 'Include Cities in Sitemap',
],
]; ];

View File

@ -23,9 +23,14 @@ class SitemapController extends PublicController
public function index() public function index()
{ {
$categoriesCount = $this->categoryRepository->count(); $categoriesCount = $this->categoryRepository->count();
$citiesCount = $this->cityRepository->count();
if (setting_value('visiosoft.module.cats::include_cities_sitemap')) {
$citiesCount = $this->cityRepository->count();
$pagesCount = $citiesCount ? $categoriesCount * $citiesCount : $categoriesCount; $pagesCount = $citiesCount ? $categoriesCount * $citiesCount : $categoriesCount;
} else {
$pagesCount = $categoriesCount;
}
$pagesCount = ceil($pagesCount / setting_value('visiosoft.module.cats::sitemap_dividing_number')); $pagesCount = ceil($pagesCount / setting_value('visiosoft.module.cats::sitemap_dividing_number'));
return response()->view('visiosoft.module.cats::sitemap.index', [ return response()->view('visiosoft.module.cats::sitemap.index', [
@ -39,8 +44,8 @@ class SitemapController extends PublicController
$page = request()->page ?: 1; $page = request()->page ?: 1;
$skip = $page - 1; $skip = $page - 1;
$citiesCount = $this->cityRepository->count(); if (setting_value('visiosoft.module.cats::include_cities_sitemap')
if ($citiesCount) { && $citiesCount = $this->cityRepository->count()) {
$categoriesCount = $this->categoryRepository->count(); $categoriesCount = $this->categoryRepository->count();
$takeCategories = $categoriesCount / ($categoriesCount * $citiesCount / $sitemapDividingNumber); $takeCategories = $categoriesCount / ($categoriesCount * $citiesCount / $sitemapDividingNumber);

View File

@ -18,6 +18,12 @@ return [
"default_value" => 'OpenClassify', "default_value" => 'OpenClassify',
] ]
], ],
"footer_copyright_org_name" => [
"type" => "anomaly.field_type.text",
"config" => [
"default_value" => 'OpenClassify, Inc',
]
],
"sidebar_main_color" => [ "sidebar_main_color" => [
"type" => "anomaly.field_type.colorpicker", "type" => "anomaly.field_type.colorpicker",
"config" => [ "config" => [

View File

@ -17,6 +17,9 @@ return [
"title" => [ "title" => [
'name' => 'Title', 'name' => 'Title',
], ],
"footer_copyright_org_name" => [
'name' => 'Footer Copyright Organization Name',
],
"sidebar_main_color" => [ "sidebar_main_color" => [
'name' => 'Sidebar Main Color', 'name' => 'Sidebar Main Color',
], ],

View File

@ -2,7 +2,7 @@
<ul class="meta"> <ul class="meta">
<li class="copyright"> <li class="copyright">
&copy; {{ 'now'|date('Y') }} OpenClassify, Inc &copy; {{ 'now'|date('Y') }} {{ setting_value('visiosoft.theme.defaultadmin::footer_copyright_org_name') }}
</li> </li>
<li class="footprint"> <li class="footprint">
{{ request_time() }} <span>|</span> {{ memory_usage() }} {{ request_time() }} <span>|</span> {{ memory_usage() }}

View File

@ -15,8 +15,29 @@ require('./bootstrap');
window.Vue = require('vue'); window.Vue = require('vue');
const requireModulesVueFiles = (moduleVueFiles) => {
moduleVueFiles.keys().map(key => {
Vue.component(
key.split('/').pop().split('.')[0],
moduleVueFiles(key).default
)
})
}
requireModulesVueFiles(require.context(
'../../../addons/default/visiosoft',
true,
/\.vue$/i
))
requireModulesVueFiles(require.context(
'../../../core/visiosoft',
true,
/\.vue$/i
))
// Vue.component('example', require('./components/Example.vue').default); // Vue.component('example', require('./components/Example.vue').default);
//
// const app = new Vue({ const app = new Vue({
// el: '#app' el: '#openclassify'
// }); });

View File

@ -13,6 +13,4 @@ let mix = require('laravel-mix');
mix mix
.js('resources/assets/js/app.js', 'public/js') .js('resources/assets/js/app.js', 'public/js')
.js('addons/default/visiosoft/*/resources/js/vue/app.js', 'public/js')
.js('core/visiosoft/*/resources/js/vue/app.js', 'public/js')
.sass('resources/assets/sass/app.scss', 'public/css'); .sass('resources/assets/sass/app.scss', 'public/css');