Only show local posts in the timeline of top page

This commit is contained in:
syuilo 2018-05-23 15:25:15 +09:00
parent 872717feeb
commit 0ba5dc3900
2 changed files with 9 additions and 0 deletions

View file

@ -37,6 +37,7 @@ export default Vue.extend({
fetch(cb?) {
this.fetching = true;
(this as any).api('notes', {
local: true,
reply: false,
renote: false,
media: false,

View file

@ -8,6 +8,10 @@ import Note, { pack } from '../../../models/note';
* Get all notes
*/
module.exports = (params) => new Promise(async (res, rej) => {
// Get 'local' parameter
const [local, localErr] = $.bool.optional().get(params.local);
if (localErr) return rej('invalid local param');
// Get 'reply' parameter
const [reply, replyErr] = $.bool.optional().get(params.reply);
if (replyErr) return rej('invalid reply param');
@ -61,6 +65,10 @@ module.exports = (params) => new Promise(async (res, rej) => {
};
}
if (local) {
query._user.host = null;
}
if (reply != undefined) {
query.replyId = reply ? { $exists: true, $ne: null } : null;
}