This commit is contained in:
= 2021-06-17 16:19:52 +05:00
commit b26131a184
17 changed files with 138 additions and 75 deletions

View File

@ -145,7 +145,7 @@ class Plugin extends PluginBase
return [
'blog-category' => 'rainlab.blog::lang.menuitem.blog_category',
'all-blog-categories' => 'rainlab.blog::lang.menuitem.all_blog_categories',
'blog-post' => 'rainlab.blog::lang.menuitem.blog_post',
// 'blog-post' => 'rainlab.blog::lang.menuitem.blog_post',
'all-blog-posts' => 'rainlab.blog::lang.menuitem.all_blog_posts',
'category-blog-posts' => 'rainlab.blog::lang.menuitem.category_blog_posts',
];

View File

@ -88,7 +88,8 @@ class Posts extends ComponentBase
'featured' => [
'title' => 'Featured posts',
'description' => 'Filter featured posts',
'type' => 'checkbox',
'type' => 'dropdown',
'options' => ['yes' => 'Yes', 'not' => 'Not']
],
'postsPerPage' => [
@ -208,11 +209,13 @@ class Posts extends ComponentBase
*/
$isPublished = !$this->checkEditor();
$featured = $this->property('featured') ? $this->property('featured')=='yes':null;
$posts = BlogPost::with(['categories'])->listFrontEnd([
'page' => $this->property('pageNumber'),
'sort' => $this->property('sortOrder'),
'perPage' => $this->property('postsPerPage'),
'featured' => $this->property('featured'),
'featured' => $featured,
'search' => trim(input('q')),
'category' => $category,
'date' => input('date'),

View File

@ -282,8 +282,8 @@ class Post extends Model
$query->isPublished();
}
if($featured){
$query-> where('featured',1);
if(isset($featured)){
$query-> where('featured',$featured);
}
$date = trim($date);
@ -399,7 +399,7 @@ class Post extends Model
$q->whereIn('id', $categories);
});
}
public function scopeFilterLocale($query, array $types) {
foreach ($types as $type) {
switch ($type) {
@ -411,8 +411,8 @@ class Post extends Model
break;
}
}
}
//

View File

@ -1,40 +1,31 @@
# ===================================
# Column Definitions
# ===================================
columns:
title:
label: rainlab.blog::lang.post.title
label: 'rainlab.blog::lang.post.title'
type: text
searchable: true
# author:
# label: Author
# relation: user
# select: login
# searchable: true
categories:
label: rainlab.blog::lang.post.categories
relation: categories
select: name
label: 'rainlab.blog::lang.post.categories'
type: text
searchable: true
sortable: false
select: name
relation: categories
locale:
label: Language
type: text
views:
label: Views
type: number
created_at:
label: rainlab.blog::lang.post.created
label: 'rainlab.blog::lang.post.created'
type: date
invisible: true
updated_at:
label: rainlab.blog::lang.post.updated
label: 'rainlab.blog::lang.post.updated'
type: date
invisible: true
published_at:
label: rainlab.blog::lang.post.published
label: 'rainlab.blog::lang.post.published'
type: date
featured:
label: Featured
type: switch

View File

@ -36,6 +36,7 @@
dots: false,
infinite: true,
speed: 300,
autoplay: true,
slidesToShow: 5,
arrows: true,
prevArrow: $(".p1"),
@ -81,6 +82,7 @@
speed: 300,
slidesToShow: 5,
arrows: true,
autoplay: true,
prevArrow: $(".p1"),
nextArrow: $(".n1"),
slidesToScroll: 1,

View File

@ -11,7 +11,7 @@
>
<picture>
<source media="(min-width:700px)" srcset="{{reklama.media|media_cdn}}">
<img src="{{reklama.media_mobile|default(reklama.media)|media_cdn}}" alt="{{reklama.title}}">
<img src="{{reklama.media_mobile|default(reklama.media)|media_cdn}}" alt="{{reklama.title}}" >
</picture>
</a>
{% endfor %}

View File

@ -1,45 +1,41 @@
fields:
title:
label: vdlp.rssfetcher::lang.item.title
label: 'vdlp.rssfetcher::lang.item.title'
type: text
span: left
link:
label: vdlp.rssfetcher::lang.item.link
label: 'vdlp.rssfetcher::lang.item.link'
type: text
span: right
description:
label: vdlp.rssfetcher::lang.item.description
label: 'vdlp.rssfetcher::lang.item.description'
type: textarea
size: small
span: auto
source:
label: Source
nameFrom: name
descriptionFrom: description
span: auto
type: relation
author:
label: vdlp.rssfetcher::lang.item.author
label: 'vdlp.rssfetcher::lang.item.author'
type: text
span: left
category:
label: vdlp.rssfetcher::lang.item.category
type: text
span: right
comments:
label: vdlp.rssfetcher::lang.item.comments
type: text
enclosure_url:
label: vdlp.rssfetcher::lang.item.enclosure_url
type: text
enclosure_length:
label: vdlp.rssfetcher::lang.item.enclosure_length
type: number
span: left
enclosure_type:
label: vdlp.rssfetcher::lang.item.enclosure_type
label: 'vdlp.rssfetcher::lang.item.category'
type: text
span: right
pub_date:
label: vdlp.rssfetcher::lang.item.published_at
label: 'vdlp.rssfetcher::lang.item.published_at'
type: datepicker
mode: datetime
span: left
span: auto
comments:
label: 'vdlp.rssfetcher::lang.item.comments'
type: text
is_published:
label: vdlp.rssfetcher::lang.item.is_published
label: 'vdlp.rssfetcher::lang.item.is_published'
type: switch
comment: vdlp.rssfetcher::lang.item.is_published_comment
comment: 'vdlp.rssfetcher::lang.item.is_published_comment'
span: left

View File

@ -28,6 +28,15 @@ post = "post"
<!-- javascript end
============================================= -->
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-H3SGT064RN"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-H3SGT064RN');
</script>
</body>
</html>

View File

@ -31,6 +31,15 @@ forceUrl = 1
<!-- javascript end
============================================= -->
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-H3SGT064RN"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-H3SGT064RN');
</script>
</body>
</html>

View File

@ -36,5 +36,14 @@ default = 0
{% framework extras %}
<!-- javascript end
============================================= -->
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-H3SGT064RN"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-H3SGT064RN');
</script>
</body>
</html>
</html>

View File

@ -36,6 +36,15 @@ random = 0
{% scripts %}
<!-- javascript end
============================================= -->
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-HHRB3PCSBQ"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-HHRB3PCSBQ');
</script>
</body>
</html>

View File

@ -28,5 +28,14 @@ default = 0
<!-- javascript end
============================================= -->
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-HHRB3PCSBQ"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-HHRB3PCSBQ');
</script>
</body>
</html>
</html>

View File

@ -49,7 +49,10 @@ post = "post"
</h1>
{% if post.featured_image %}
<picture class="news__image">
<img src="{{post.featured_image|media | resize(680)}}" alt="{{post.title}}">
<soruce media="(min-width: 1024px)" srcset="{{post.featured_image|media_cdn}}" >
<soruce media="(min-width: 768px)" srcset="{{post.featured_image|media_cdn|resize(720)}}" >
<soruce srcset="{{post.featured_image|media_cdn|resize(400)}}">
<img src="{{post.featured_image|media_cdn}}" alt="{{post.title}}">
</picture>
{% endif %}
</header>

View File

@ -0,0 +1,13 @@
title = 500
url = "/error"
layout = "master"
is_hidden = 0
robot_index = "index"
robot_follow = "follow"
[viewBag]
localeTitle[en] = "Problem"
==
<div class="auto__container">
<h1> INTERNAL SERVER PROBLEM</h1>
</div>

View File

@ -1,6 +1,6 @@
[viewBag]
==
{% set posts = category.take_posts(3) %}
{% set posts = category.take_posts(5) %}
<div class="main__body-column">
<div class="main__body-header">
<div class="main__body-header-title">
@ -10,8 +10,8 @@
{{'page.more'|_}}
</a>
</div>
<a href="{{posts.first.featured_image|media_cdn}}" class="primary progressive replace">
<img class="preview" src="{{'assets/images/news/1.jpg'|theme}}" alt="{{posts.first.title}}">
<a href="{{posts.first.featured_image|media|resize(470)}}" class="primary progressive replace">
<img class="preview" src="{{posts.first.featured_image|media|resize(10)}}" alt="{{posts.first.title}}">
</a>
<div class="main__body-card">
<div class="card">
@ -33,8 +33,8 @@
{{posts.first.title}}
</a>
</div>
{% partial 'index/category_post_item' post = posts[1] %}
{% partial 'index/category_post_item' post = posts.last %}
{% for post in posts.slice(1) %}
{% partial 'index/category_post_item' post = post %}
{% endfor %}
</div>
</div>
</div>

View File

@ -14,8 +14,8 @@
<div class="event__body">
<div class="event__body-row">
<div class="event__body-image">
<a href="{{firstPost.featured_image|media_cdn}}" class="primary progressive replace">
<img class="preview" src="{{firstPost.featured_image|resize(300,200)}}" alt="{{firstPost.title}}">
<a href="{{firstPost.featured_image|media|resize(470)}}" class="primary progressive replace">
<img class="preview" src="{{firstPost.featured_image|media|resize(10)}}" alt="{{firstPost.title}}">
</a>
<div class="event__body-card">
{% partial 'index/post_item' post = firstPost category = category %}
@ -29,4 +29,4 @@
</div>
</div>
</div>
</section>
</section>

View File

@ -1,19 +1,29 @@
[viewBag]
[blogPosts]
[blogPosts marque]
pageNumber = "{{ :page }}"
postsPerPage = 8
featured = yes
postsPerPage = 5
noPostsMessage = "No posts found"
sortOrder = "published_at desc"
categoryPage = "category"
postPage = "post"
[blogPosts slider]
pageNumber = "{{ :page }}"
postsPerPage = 10
featured = no
noPostsMessage = "No posts found"
sortOrder = "published_at desc"
categoryPage = 404
postPage = 404
==
<div class="marquee__outer">
<a href="#" class="marquee__link">
{{'Главное'|_}}
</a>
<div class="marquee">
{% for post in posts %}
{% for post in marque.posts %}
<div class="marquee__item">
<a href="{{post.url}}">{{post.title}}</a>
</div>
@ -24,11 +34,11 @@ postPage = "post"
<div class="swiper-container mySwiper">
<div class="swiper-wrapper">
{% for post in posts.slice(0,3) %}
{% for post in slider.posts.slice(0,4) %}
<div class="swiper-slide">
<div class="swiper-slide-image" >
<picture>
<img src="{{post.featured_image|media_cdn}}" alt="">
<img src="{{post.featured_image|media|resize(964)}}" alt="">
</picture>
<div class="swiper-slide-content">
<div class="swiper-slide-content-date">
@ -83,9 +93,9 @@ postPage = "post"
</svg>
</div>
<div class="newsSlider">
{% for post in posts.slice(3) %}
{% for post in slider.posts.slice(4) %}
<div class="newsSlider__item">
<img src="{{post.featured_image|media_cdn}}" alt="{{post.title}}">
<img src="{{post.featured_image|media|resize(477)}}" alt="{{post.title}}">
<div class="newsSlider__item-content">
<div class="newsSlider__item-content-date">
<span>{{post.published_at|date('H:i')}}</span>