Browse Source

Fix posts retrieval for some URLs in CommunityPosts

Fix fatal error when displaying no posts
pull/1025/head
Timothée Jaussoin 4 years ago
parent
commit
80ea63da34
  1. 2
      app/widgets/Chat/chat.css
  2. 4
      app/widgets/Communities/Communities.php
  3. 10
      app/widgets/CommunityPosts/CommunityPosts.php
  4. 4
      app/widgets/CommunityPosts/communityposts.js
  5. 4
      app/widgets/Menu/Menu.php
  6. 5
      app/widgets/NewsNav/NewsNav.php

2
app/widgets/Chat/chat.css

@ -167,7 +167,7 @@ main:not(.enabled) #chat_widget {
height: 0.25rem;
content: '';
top: -0.25rem;
transition: width 10s ease-in-out, opacity 0.2s ease-in-out;
transition: width 5s ease-in-out, opacity 0.2s ease-in-out;
opacity: 0;
}

4
app/widgets/Communities/Communities.php

@ -67,7 +67,9 @@ class Communities extends Base
)
->get();
$posts = resolveInfos($posts);
if ($posts->isNotEmpty()) {
$posts = resolveInfos($posts);
}
$view->assign('posts', $posts);
$view->assign('type', $type);

10
app/widgets/CommunityPosts/CommunityPosts.php

@ -132,12 +132,14 @@ class CommunityPosts extends Base
$posts = \App\Post::where('server', $origin)->where('node', $node)
->whereIn('nodeid', $ids)->get();
$posts = resolveInfos($posts);
$postsWithKeys = [];
foreach ($posts as $key => $post) {
$postsWithKeys[$post->nodeid] = $post;
if ($posts->isNotEmpty()) {
$posts = resolveInfos($posts);
foreach ($posts as $key => $post) {
$postsWithKeys[$post->nodeid] = $post;
}
}
$view = $this->tpl();

4
app/widgets/CommunityPosts/communityposts.js

@ -1,8 +1,8 @@
MovimWebsocket.attach(function() {
var parts = MovimUtils.urlParts();
if (parts.params.length > 0) {
var node = (parts.params[1] == undefined) ? 'urn:xmpp:microblog:0' : parts.params[1];
var node = (parts.params[1] == undefined || parts.params[1] == '') ? 'urn:xmpp:microblog:0' : parts.params[1];
console.log(parts);
CommunityPosts_ajaxGetItems(parts.params[0], node, parts.params[2]);
}
});

4
app/widgets/Menu/Menu.php

@ -226,7 +226,9 @@ class Menu extends Base
->orderBy('published', 'desc')
->take($this->_paging)->get();
$items = resolveInfos($items);
if ($items->isNotEmpty()) {
$items = resolveInfos($items);
}
$view->assign('items', $items);
$view->assign('type', $type);

5
app/widgets/NewsNav/NewsNav.php

@ -44,7 +44,10 @@ class NewsNav extends Base
}
$posts = $posts->get()->shuffle();
$posts = resolveInfos($posts);
if ($posts->isNotEmpty()) {
$posts = resolveInfos($posts);
}
$view->assign('posts', $posts);
$view->assign('page', $page);

Loading…
Cancel
Save