Skip to content

Commit

Permalink
Merge pull request #10500 from nanaya/rank-strong
Browse files Browse the repository at this point in the history
Highlight new top rank (1-50) in event
  • Loading branch information
peppy authored Sep 3, 2023
2 parents aed25e4 + 52e5d7b commit 76025d5
Show file tree
Hide file tree
Showing 2 changed files with 25 additions and 4 deletions.
23 changes: 20 additions & 3 deletions resources/js/profile-page/parse-event.tsx
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
// Copyright (c) ppy Pty Ltd <[email protected]>. Licensed under the GNU Affero General Public License v3.0.
// See the LICENCE file in the repository root for full licence text.

import StringWithComponent from 'components/string-with-component';
import EventJson from 'interfaces/event-json';
import core from 'osu-core-singleton';
import * as React from 'react';
import { Modifiers } from 'utils/css';
import { trans } from 'utils/lang';
import { formatNumber } from 'utils/html';
import { trans, transExists } from 'utils/lang';
import { switchNever } from 'utils/switch-never';
import AchievementBadge from './achievement-badge';

Expand Down Expand Up @@ -91,16 +93,31 @@ export default function parseEvent(event: EventJson, modifiers: Modifiers): { ba
},
};

case 'rank':
case 'rank': {
const rankNumber = formatNumber(event.rank);
// TODO: remove check after all languages are updated to have both `rank` and `value.rank`.
let rank: React.ReactNode = transExists('events.rank') && !transExists('events.value.rank')
? rankNumber
: (
<StringWithComponent
mappings={{ rank: rankNumber }}
pattern={trans('events.value.rank')}
/>
);
if (event.rank <= 50) {
rank = <strong>{rank}</strong>;
}

return {
badge: <div className={`score-rank score-rank--${event.scoreRank}`} />,
mappings: {
beatmap: <em><a href={event.beatmap.url}>{event.beatmap.title}</a></em>,
mode: trans(`beatmaps.mode.${event.mode}`),
rank: event.rank,
rank,
user: <strong><em><a href={event.user.url}>{event.user.username}</a></em></strong>,
},
};
}

case 'rankLost':
return {
Expand Down
6 changes: 5 additions & 1 deletion resources/lang/en/events.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
'beatmapset_update' => '<strong><em>:user</em></strong> has updated the beatmap "<em>:beatmapset</em>"',
'beatmapset_upload' => '<strong><em>:user</em></strong> has submitted a new beatmap ":beatmapset"',
'empty' => "This user hasn't done anything notable recently!",
'rank' => '<strong><em>:user</em></strong> achieved rank #:rank on <em>:beatmap</em> (:mode)',
'rank' => ':user achieved :rank on :beatmap (:mode)',
'rank_lost' => '<strong><em>:user</em></strong> has lost first place on <em>:beatmap</em> (:mode)',
'user_support_again' => '<strong>:user</strong> has once again chosen to support osu! - thanks for your generosity!',
'user_support_first' => '<strong>:user</strong> has supported osu! - thanks for your generosity!',
Expand All @@ -25,4 +25,8 @@
'qualified' => 'qualified',
'ranked' => 'ranked',
],

'value' => [
'rank' => 'rank #:rank',
],
];

0 comments on commit 76025d5

Please sign in to comment.