From e2ec5b0c751c0eb41aad43f9b26cb27b72a6c2df Mon Sep 17 00:00:00 2001 From: Tony Air Date: Mon, 6 Aug 2018 18:46:54 +0700 Subject: [PATCH] FIX: SS Blog --- app/_config/config.yml | 7 ++ app/client/src/js/app.js | 2 + .../src/scss/_components/_ui.carousel.scss | 4 + app/lang/ru.yml | 13 +++ app/src/Extensions/BlogPostExtension.php | 12 +++ app/src/Extensions/SiteConfigExtension.php | 20 ++--- app/src/Pages/PageController.php | 13 +++ app/templates/Includes/Footer.ss | 81 ++++++------------- app/templates/Includes/Header.ss | 4 +- app/templates/Objects/Pagination.ss | 31 +++++++ .../SilverStripe/Blog/Includes/EntryMeta.ss | 75 +++++++++-------- .../SilverStripe/Blog/Model/Layout/Blog.ss | 2 +- app/templates/Site/Elements/SliderElement.ss | 2 +- composer.json | 15 ++-- 14 files changed, 169 insertions(+), 112 deletions(-) create mode 100644 app/templates/Objects/Pagination.ss diff --git a/app/_config/config.yml b/app/_config/config.yml index d82a5e1..7cd246e 100644 --- a/app/_config/config.yml +++ b/app/_config/config.yml @@ -20,3 +20,10 @@ SilverStripe\View\SSViewer: SilverStripe\Forms\HTMLEditor\TinyMCEConfig: editor_css: - 'app/client/dist/css/editor.css' + +SilverStripe\Assets\File: + allowed_extensions: + - svg + app_categories: + image: + - svg diff --git a/app/client/src/js/app.js b/app/client/src/js/app.js index 36dd1dc..a60513d 100644 --- a/app/client/src/js/app.js +++ b/app/client/src/js/app.js @@ -22,6 +22,8 @@ import 'bootstrap/js/dist/tab'; Vue.use(Carousel);*/ import 'offcanvas-bootstrap/dist/js/bootstrap.offcanvas'; +import 'jquery-zoom/jquery.zoom'; +import 'meta-lightbox/meta-lightbox'; import './_main'; import './_layout'; diff --git a/app/client/src/scss/_components/_ui.carousel.scss b/app/client/src/scss/_components/_ui.carousel.scss index 3d3c1f2..4f8be2b 100644 --- a/app/client/src/scss/_components/_ui.carousel.scss +++ b/app/client/src/scss/_components/_ui.carousel.scss @@ -16,6 +16,10 @@ .carousel-indicators li { box-shadow: 1px 1px #000; + + &.active { + background: $blue; + } } .carousel-title, diff --git a/app/lang/ru.yml b/app/lang/ru.yml index 5daebea..8804957 100644 --- a/app/lang/ru.yml +++ b/app/lang/ru.yml @@ -4,3 +4,16 @@ ru: JAVASCRIPTREQUIRED: "Для корректной работы страницы требуется включить Javascript!" UPGRADEBROWSER: "Обновите браузер!" OUTDATEDBROWSER: "Вы используете устаревшую версию браузера. Обновите ваш браузер сейчас для повышения уровня безопасности вашей системы." + PaginationLabel: "Переключение страниц" + PaginationPrevious: "Назад" + PaginationNext: "Вперед" + SilverStripe\Blog\Model\Blog: + PostedIn: "Категории" + Tagged: "Отметки" + Comments: "Коментарии" + Posted: "Опубликовано" + By: " - " + AND: "и" + LessThanAMinuteToRead: "Меньше минуты на чтение" + MinutesToRead: "Минут на чтение" + READMORE: "Подробнее" diff --git a/app/src/Extensions/BlogPostExtension.php b/app/src/Extensions/BlogPostExtension.php index fdd9215..a9d7895 100644 --- a/app/src/Extensions/BlogPostExtension.php +++ b/app/src/Extensions/BlogPostExtension.php @@ -9,10 +9,22 @@ namespace Site\Extensions; use DNADesign\Elemental\Models\ElementContent; +use SilverStripe\Forms\CheckboxField; +use SilverStripe\Forms\FieldList; use SilverStripe\ORM\DataExtension; class BlogPostExtension extends DataExtension { + private static $db = [ + 'Featured' => 'Boolean(0)', + ]; + + public function updateCMSFields(FieldList $fields) + { + $mainTab = $fields->findOrMakeTab('Root.Main'); + $mainTab->push(CheckboxField::create('Featured')); + } + /* * Shows custom summary of the post, otherwise * Displays summary of the first content element diff --git a/app/src/Extensions/SiteConfigExtension.php b/app/src/Extensions/SiteConfigExtension.php index 71e26ff..57f6d8c 100644 --- a/app/src/Extensions/SiteConfigExtension.php +++ b/app/src/Extensions/SiteConfigExtension.php @@ -11,14 +11,15 @@ use SilverStripe\Forms\TreeMultiselectField; class SiteConfigExtension extends DataExtension { private static $db = [ - 'ShortDescription' => 'Text', 'ExtraCode' => 'Text', ]; + private static $has_one = [ + 'PrivacyPolicy' => SiteTree::class, + ]; + private static $many_many = [ 'Navigation' => SiteTree::class, - 'Services' => SiteTree::class, - 'QuickLinks' => SiteTree::class, ]; public function updateCMSFields(FieldList $fields) @@ -31,18 +32,7 @@ class SiteConfigExtension extends DataExtension SiteTree::class )); - $tab->push(TreeMultiselectField::create( - 'Services', - 'Services', - SiteTree::class - )); - $tab->push(TreeMultiselectField::create( - 'QuickLinks', - 'QuickLinks', - SiteTree::class - )); - - $tab->push(TextareaField::create('ShortDescription')); + $tab->push(TreeDropdownField::create('PrivacyPolicyID', 'Select privacy policy page', SiteTree::class)); $tab->push(TextareaField::create('ExtraCode', 'Extra site-wide HTML code')); } diff --git a/app/src/Pages/PageController.php b/app/src/Pages/PageController.php index 163ffe1..e09e9a3 100644 --- a/app/src/Pages/PageController.php +++ b/app/src/Pages/PageController.php @@ -6,9 +6,22 @@ use SilverStripe\CMS\Controllers\ContentController; use SilverStripe\ORM\FieldType\DBDatetime; +use SilverStripe\Blog\Model\BlogPost; class PageController extends ContentController { + private static $static_path = '/resources/app/client/dist/'; + + public function RecentBlogPosts() + { + return BlogPost::get()->sort('PublishDate DESC'); + } + + public function StaticPath($path = '') + { + return self::join_links($this->config()->get('static_path'), $path); + } + public function CurrentTime() { return DBDatetime::now(); diff --git a/app/templates/Includes/Footer.ss b/app/templates/Includes/Footer.ss index aeb814a..84676e7 100644 --- a/app/templates/Includes/Footer.ss +++ b/app/templates/Includes/Footer.ss @@ -1,65 +1,36 @@ <% with $SiteConfig %>
-
-
-
-

About Us

-
- $ShortDescription -
-
-
-
-
-

Services

- -
-
-
-
-

Quick Links

- -
-
-
-
-

Contact Us

-
-
Address:
-
$Address
-
+

Contact Us

+
+
Address:
+
$Address
+
-
-
Phone:
-
$PhoneNumber
-
+
+
Phone:
+
$PhoneNumber
+
-
-
Email:
-
$PublicEmail
-
+
+
Email:
+
$PublicEmail
+
- <% include Objects\SocialLinks %> + <% include Objects\SocialLinks %> +
+ + <% end_with %> - - \ No newline at end of file diff --git a/app/templates/Includes/Header.ss b/app/templates/Includes/Header.ss index a6831f4..c9ad50c 100644 --- a/app/templates/Includes/Header.ss +++ b/app/templates/Includes/Header.ss @@ -1,6 +1,6 @@
- +
<% with $SiteConfig %> @@ -23,4 +23,4 @@ <% if $SiteConfig.Navigation %> <% include Navigation Navigation=$SiteConfig.Navigation, NavID="Navigation" %> -<% end_if %> \ No newline at end of file +<% end_if %> diff --git a/app/templates/Objects/Pagination.ss b/app/templates/Objects/Pagination.ss new file mode 100644 index 0000000..6bfc100 --- /dev/null +++ b/app/templates/Objects/Pagination.ss @@ -0,0 +1,31 @@ +<%-- NOTE: Before including this, you will need to wrap the include in a with block --%> + +<% if $MoreThanOnePage %> + +<% end_if %> diff --git a/app/templates/SilverStripe/Blog/Includes/EntryMeta.ss b/app/templates/SilverStripe/Blog/Includes/EntryMeta.ss index 7707452..dd6c550 100644 --- a/app/templates/SilverStripe/Blog/Includes/EntryMeta.ss +++ b/app/templates/SilverStripe/Blog/Includes/EntryMeta.ss @@ -1,46 +1,57 @@ -