diff --git a/Web/Presenters/OpenVKPresenter.php b/Web/Presenters/OpenVKPresenter.php
index 1d03a1c28..8b33b5a70 100644
--- a/Web/Presenters/OpenVKPresenter.php
+++ b/Web/Presenters/OpenVKPresenter.php
@@ -7,7 +7,7 @@
use Latte\Engine as TemplatingEngine;
use openvk\Web\Models\Entities\IP;
use openvk\Web\Themes\Themepacks;
-use openvk\Web\Models\Repositories\{IPs, Users, APITokens, Tickets, Reports, CurrentUser};
+use openvk\Web\Models\Repositories\{IPs, Users, APITokens, Tickets, Reports, CurrentUser, Posts};
use WhichBrowser;
abstract class OpenVKPresenter extends SimplePresenter
@@ -207,6 +207,17 @@ function onStartup(): void
$userValidated = 0;
$cacheTime = OPENVK_ROOT_CONF["openvk"]["preferences"]["nginxCacheTime"] ?? 0;
+ if(OPENVK_ROOT_CONF['openvk']['preferences']['news']['show']) {
+ $post = (new Posts)->getPostsFromUsersWall(-OPENVK_ROOT_CONF['openvk']['preferences']['news']['groupId'], 1, 1);
+ $post = iterator_to_array($post)[0];
+
+ $text = wordwrap($post->getText(false), 150, '\n', false);
+ $text = explode('\n', $text)[0];
+
+ $this->template->newsText = $text;
+ $this->template->newsLink = '/wall' . $post->getPrettyId();
+ }
+
if(!is_null($user)) {
$this->user = (object) [];
$this->user->raw = $user;
diff --git a/Web/Presenters/templates/@layout.xml b/Web/Presenters/templates/@layout.xml
index 811548cd3..34e033dcf 100644
--- a/Web/Presenters/templates/@layout.xml
+++ b/Web/Presenters/templates/@layout.xml
@@ -239,6 +239,14 @@
+
+
{tr("you_still_have_x_points", $thisUser->getCoins())|noescape}
diff --git a/Web/static/css/main.css b/Web/static/css/main.css
index 928ef3003..7333b22b1 100644
--- a/Web/static/css/main.css
+++ b/Web/static/css/main.css
@@ -2314,7 +2314,7 @@ li {
padding-left: 15px;
}
-#votesBalance {
+#votesBalance, #news {
margin-top: 10px;
padding: 7px;
background-color: #f6f6f6;
@@ -2323,6 +2323,11 @@ li {
user-select: none;
}
+#news b {
+ color: #8A0000;
+ font-size: 12px;
+}
+
.cookies-popup {
position: fixed;
bottom: 0;
diff --git a/locales/en.strings b/locales/en.strings
index ac3283082..2cfda2eba 100644
--- a/locales/en.strings
+++ b/locales/en.strings
@@ -1072,6 +1072,8 @@
"time_today" = "today";
"time_yesterday" = "yesterday";
+"news" = "News";
+"news_more" = "More »";
"points" = "Votes";
"points_count" = "votes";
"on_your_account" = "on your account";
diff --git a/locales/ru.strings b/locales/ru.strings
index 3f036473b..2a79df8a6 100644
--- a/locales/ru.strings
+++ b/locales/ru.strings
@@ -1023,6 +1023,9 @@
"time_minutes_ago" = "$1 минут назад";
"time_today" = "сегодня";
"time_yesterday" = "вчера";
+
+"news" = "Новости";
+"news_more" = "Подробнее »";
"points" = "Голоса";
"points_count" = "голосов";
"on_your_account" = "на вашем счету";
diff --git a/openvk-example.yml b/openvk-example.yml
index b64a589e1..b8cb899f7 100644
--- a/openvk-example.yml
+++ b/openvk-example.yml
@@ -111,6 +111,9 @@ openvk:
defaultMobileTheme: ""
defaultFeaturePhoneTheme: ""
logs: true
+ news:
+ show: false
+ groupId: 1
telemetry:
plausible: