diff --git a/src/api/endpoints.ts b/src/api/endpoints.ts
index 37e3348b86..0ce51e9a51 100644
--- a/src/api/endpoints.ts
+++ b/src/api/endpoints.ts
@@ -81,6 +81,7 @@ export default [
{ name: 'following/create', shouldBeSignin: true, limitDuration: hour, limitMax: 100, kind: 'following-write' },
{ name: 'following/delete', shouldBeSignin: true, limitDuration: hour, limitMax: 100, kind: 'following-write' },
+ { name: 'posts', shouldBeSignin: false },
{ name: 'posts/show', shouldBeSignin: false },
{ name: 'posts/replies', shouldBeSignin: false },
{ name: 'posts/context', shouldBeSignin: false },
diff --git a/src/api/endpoints/posts.js b/src/api/endpoints/posts.js
index 9bc25315a7..59cfb8a441 100644
--- a/src/api/endpoints/posts.js
+++ b/src/api/endpoints/posts.js
@@ -15,6 +15,22 @@ import serialize from '../serializers/post';
module.exports = (params) =>
new Promise(async (res, rej) =>
{
+ // Get 'include_replies' parameter
+ let includeReplies = params.include_replies;
+ if (includeReplies === true) {
+ includeReplies = true;
+ } else {
+ includeReplies = false;
+ }
+
+ // Get 'include_reposts' parameter
+ let includeReposts = params.include_reposts;
+ if (includeReposts === true) {
+ includeReposts = true;
+ } else {
+ includeReposts = false;
+ }
+
// Get 'limit' parameter
let limit = params.limit;
if (limit !== undefined && limit !== null) {
@@ -52,6 +68,14 @@ module.exports = (params) =>
};
}
+ if (!includeReplies) {
+ query.reply_to_id = null;
+ }
+
+ if (!includeReposts) {
+ query.repost_id = null;
+ }
+
// Issue query
const posts = await Post
.find(query, {
diff --git a/src/web/app/common/tags/index.js b/src/web/app/common/tags/index.js
index 90f03825e2..58027d4e9b 100644
--- a/src/web/app/common/tags/index.js
+++ b/src/web/app/common/tags/index.js
@@ -24,3 +24,4 @@ require('./messaging/message.tag');
require('./messaging/index.tag');
require('./messaging/form.tag');
require('./stream-indicator.tag');
+require('./public-timeline.tag');
diff --git a/src/web/app/common/tags/public-timeline.tag b/src/web/app/common/tags/public-timeline.tag
new file mode 100644
index 0000000000..1bc18e5a8a
--- /dev/null
+++ b/src/web/app/common/tags/public-timeline.tag
@@ -0,0 +1,80 @@
+
+
+
+
+
+ { user.name }
+ @{ user.username }
+
+
+
+
+
+
+
diff --git a/src/web/app/desktop/tags/pages/entrance.tag b/src/web/app/desktop/tags/pages/entrance.tag
index 0146379336..c6f0f5c90e 100644
--- a/src/web/app/desktop/tags/pages/entrance.tag
+++ b/src/web/app/desktop/tags/pages/entrance.tag
@@ -1,5 +1,6 @@
-
+
+
@@ -8,6 +9,10 @@
+
@@ -26,6 +31,7 @@
> main
display block
+ padding-bottom 16px
> img
display block
@@ -53,6 +59,21 @@
&:hover
text-decoration underline
+ > .tl
+ padding 32px 0
+ background #fff
+
+ > h2
+ display block
+ margin 0
+ padding 0
+ text-align center
+ font-size 20px
+ color #5b6b73
+
+ > mk-public-timeline
+ max-width 500px
+ margin 0 auto
> footer
> mk-copyright
margin 0