diff options
| author | かっこかり <67428053+kakkokari-gtyih@users.noreply.github.com> | 2025-12-31 22:33:26 +0900 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-12-31 22:33:26 +0900 |
| commit | 16ffd88ecc16c394fd8bc532c61e6be45b053ca5 (patch) | |
| tree | 0b02678fefb78eafa1fae85aaafeba078fc21870 /packages/backend/src/server/api/endpoints/users/following.ts | |
| parent | fix(frontend): ウィジェットの設定画面のプレビューが利用... (diff) | |
| download | misskey-16ffd88ecc16c394fd8bc532c61e6be45b053ca5.tar.gz misskey-16ffd88ecc16c394fd8bc532c61e6be45b053ca5.tar.bz2 misskey-16ffd88ecc16c394fd8bc532c61e6be45b053ca5.zip | |
enhance: 誕生日のユーザーウィジェットで、今日だけに限らず、直近の誕生日ユーザーを表示できるように (#13637)
* enhance(frontend): 「今日誕生日のフォロー中ユーザー」ウィジェットをリファクタリング
(cherry picked from commit 24652b9364fd7d898ac176e0da3bb6e957f72328)
* fix(backend): 年越しの時期で誕生日検索クエリーが誤動作する問題を修正 (MisskeyIO#577)
(cherry picked from commit 38581006be35b4725b235be9f178d2c0c9c5af33)
* fix
* spdx
* delete birthday param on users/following api
* 名称を一本化
* Update Changelog
* Update Changelog
* fix(frontend/WidgetBirthdayFollowings): ユーザーの名前が長いと投稿ボタンがはみ出てしまう問題を修正 (MisskeyIO#582)
(cherry picked from commit fa47a545b1b770e5f3e52bb2798d1104da5dd244)
* use module css
* default 3day
* Revert "delete birthday param on users/following api"
This reverts commit a47456c1c43410409ed3607ae1d6ebb69a82324b.
* Update Changelog
* 日付が1ヶ月ズレている問題を修正?
* fix: 日付関連のバグを修正
Co-authored-by: taiy <53635909+taiyme@users.noreply.github.com>
* build misskey-js types
* add comment
* Update CHANGELOG.md
* migrate
* change migration
* UPdate Changelog
* fix: revert unnecessary changes
* :art:
* i18n
* fix
* update changelog
* :art:
* fix lint
* refactor: remove unnecessary classes
* fix
* fix
---------
Co-authored-by: まっちゃとーにゅ <17376330+u1-liquid@users.noreply.github.com>
Co-authored-by: taiy <53635909+taiyme@users.noreply.github.com>
Diffstat (limited to 'packages/backend/src/server/api/endpoints/users/following.ts')
| -rw-r--r-- | packages/backend/src/server/api/endpoints/users/following.ts | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/packages/backend/src/server/api/endpoints/users/following.ts b/packages/backend/src/server/api/endpoints/users/following.ts index 047f9a053b..326e56bc85 100644 --- a/packages/backend/src/server/api/endpoints/users/following.ts +++ b/packages/backend/src/server/api/endpoints/users/following.ts @@ -86,7 +86,7 @@ export const paramDef = { sinceDate: { type: 'integer' }, untilDate: { type: 'integer' }, limit: { type: 'integer', minimum: 1, maximum: 100, default: 10 }, - birthday: { ...birthdaySchema, nullable: true }, + birthday: { ...birthdaySchema, nullable: true, description: '@deprecated use get-following-birthday-users instead.' }, }, }, ], @@ -146,14 +146,15 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint- .andWhere('following.followerId = :userId', { userId: user.id }) .innerJoinAndSelect('following.followee', 'followee'); + // @deprecated use get-following-birthday-users instead. if (ps.birthday) { - try { - const birthday = ps.birthday.substring(5, 10); - const birthdayUserQuery = this.userProfilesRepository.createQueryBuilder('user_profile'); - birthdayUserQuery.select('user_profile.userId') - .where(`SUBSTR(user_profile.birthday, 6, 5) = '${birthday}'`); + query.innerJoin(this.userProfilesRepository.metadata.targetName, 'followeeProfile', 'followeeProfile.userId = following.followeeId'); - query.andWhere(`following.followeeId IN (${ birthdayUserQuery.getQuery() })`); + try { + const birthday = ps.birthday.split('-'); + birthday.shift(); // 年の部分を削除 + // なぜか get_birthday_date() = :birthday だとインデックスが効かないので、BETWEEN で対応 + query.andWhere('get_birthday_date(followeeProfile.birthday) BETWEEN :birthday AND :birthday', { birthday: parseInt(birthday.join('')) }); } catch (err) { throw new ApiError(meta.errors.birthdayInvalid); } |