Compare commits

...

2 Commits

Author SHA1 Message Date
5d82443389 2.21.1 2018-05-28 22:00:29 +09:00
43eb8bd99b notes/local-timeline と notes/global-timeline のサインインを不要に 2018-05-28 21:59:57 +09:00
4 changed files with 37 additions and 30 deletions

View File

@ -1,7 +1,7 @@
{
"name": "misskey",
"author": "syuilo <i@syuilo.com>",
"version": "2.21.0",
"version": "2.21.1",
"clientVersion": "1.0.5903",
"codename": "nighthike",
"main": "./built/index.js",

View File

@ -515,7 +515,6 @@ const endpoints: Endpoint[] = [
},
{
name: 'notes/local-timeline',
withCredential: true,
limit: {
duration: ms('10minutes'),
max: 100
@ -523,7 +522,6 @@ const endpoints: Endpoint[] = [
},
{
name: 'notes/global-timeline',
withCredential: true,
limit: {
duration: ms('10minutes'),
max: 100

View File

@ -9,7 +9,7 @@ import { pack } from '../../../../models/note';
/**
* Get timeline of global
*/
module.exports = async (params, user, app) => {
module.exports = async (params, user) => {
// Get 'limit' parameter
const [limit = 10, limitErr] = $.num.optional().range(1, 100).get(params.limit);
if (limitErr) throw 'invalid limit param';
@ -36,9 +36,9 @@ module.exports = async (params, user, app) => {
}
// ミュートしているユーザーを取得
const mutedUserIds = (await Mute.find({
const mutedUserIds = user ? (await Mute.find({
muterId: user._id
})).map(m => m.muteeId);
})).map(m => m.muteeId) : null;
//#region Construct query
const sort = {
@ -46,18 +46,24 @@ module.exports = async (params, user, app) => {
};
const query = {
// mute
userId: {
$nin: mutedUserIds
},
'_reply.userId': {
$nin: mutedUserIds
},
'_renote.userId': {
$nin: mutedUserIds
}
// public only
visibility: 'public'
} as any;
if (mutedUserIds && mutedUserIds.length > 0) {
query.userId = {
$nin: mutedUserIds
};
query['_reply.userId'] = {
$nin: mutedUserIds
};
query['_renote.userId'] = {
$nin: mutedUserIds
};
}
if (sinceId) {
sort._id = 1;
query._id = {

View File

@ -9,7 +9,7 @@ import { pack } from '../../../../models/note';
/**
* Get timeline of local
*/
module.exports = async (params, user, app) => {
module.exports = async (params, user) => {
// Get 'limit' parameter
const [limit = 10, limitErr] = $.num.optional().range(1, 100).get(params.limit);
if (limitErr) throw 'invalid limit param';
@ -36,9 +36,9 @@ module.exports = async (params, user, app) => {
}
// ミュートしているユーザーを取得
const mutedUserIds = (await Mute.find({
const mutedUserIds = user ? (await Mute.find({
muterId: user._id
})).map(m => m.muteeId);
})).map(m => m.muteeId) : null;
//#region Construct query
const sort = {
@ -46,17 +46,6 @@ module.exports = async (params, user, app) => {
};
const query = {
// mute
userId: {
$nin: mutedUserIds
},
'_reply.userId': {
$nin: mutedUserIds
},
'_renote.userId': {
$nin: mutedUserIds
},
// public only
visibility: 'public',
@ -64,6 +53,20 @@ module.exports = async (params, user, app) => {
'_user.host': null
} as any;
if (mutedUserIds && mutedUserIds.length > 0) {
query.userId = {
$nin: mutedUserIds
};
query['_reply.userId'] = {
$nin: mutedUserIds
};
query['_renote.userId'] = {
$nin: mutedUserIds
};
}
if (sinceId) {
sort._id = 1;
query._id = {