diff --git a/components/about/UpdatesPage/index.tsx b/components/about/UpdatesPage/index.tsx index acc6a82e..e79af634 100644 --- a/components/about/UpdatesPage/index.tsx +++ b/components/about/UpdatesPage/index.tsx @@ -78,6 +78,18 @@ const UpdatesPage = () => { return (

{common('about.segmented_control.updates')}

+ {
) + const renderJobDropdown = () => { + if (props.editable) { + return ( + + ) + } else { + return ( +
+ {party.job && ( + {party.job.name[locale]} + )} +

{party.job ? party.job.name[locale] : t('no_job')}

+
+ ) + } + } + // Render: JSX components return (
@@ -196,25 +220,7 @@ const JobSection = (props: Props) => { onAccessorySelected={handleAccessorySelected} />
- {props.editable ? ( - - ) : ( -
- {party.job ? ( - {party.job.name[locale]} - ) : ( - '' - )} -

{party.job ? party.job.name[locale] : t('no_job')}

-
- )} + {renderJobDropdown()}
    {[...Array(numSkills)].map((e, i) => ( diff --git a/components/party/Party/index.tsx b/components/party/Party/index.tsx index 95b7e2dd..a39edf27 100644 --- a/components/party/Party/index.tsx +++ b/components/party/Party/index.tsx @@ -80,6 +80,7 @@ const Party = (props: Props) => { ? JSON.parse(cookie as string) : null + // Unset edit key and make the party not editable on first load let editable = false unsetEditKey() @@ -98,7 +99,7 @@ const Party = (props: Props) => { editable = true // Also set edit key header - setEditKey(props.team.id, props.team.user) + setEditKey(props.team.id) } } } @@ -109,8 +110,7 @@ const Party = (props: Props) => { // Methods: Creating a new party async function createParty(details?: DetailsObject) { - let payload = {} - if (details) payload = formatDetailsObject(details) + let payload = formatDetailsObject(details ?? {}) return await api.endpoints.parties.create(payload).then((response) => { storeParty(response.data.party) @@ -213,7 +213,7 @@ const Party = (props: Props) => { // Store the edit key in local storage if (remix.edit_key) { storeEditKey(remix.id, remix.edit_key) - setEditKey(remix.id, remix.user) + setEditKey(remix.id) } router.push(`/p/${remix.shortcode}`) @@ -288,10 +288,15 @@ const Party = (props: Props) => { appState.party.detailsVisible = false - // Store the edit key in local storage - if (team.edit_key) { - storeEditKey(team.id, team.edit_key) - setEditKey(team.id, team.user) + // Handle the state of the edit key + if (!team.user) { + if (team.edit_key) { + storeEditKey(team.id, team.edit_key) + } else if (team.local_id) { + setEditKey(team.local_id) + } + } else { + unsetEditKey() } // Populate state diff --git a/public/locales/en/updates.json b/public/locales/en/updates.json index 25bfd764..9dbe0552 100644 --- a/public/locales/en/updates.json +++ b/public/locales/en/updates.json @@ -19,6 +19,11 @@ "uncap": "Uncap" }, "versions": { + "2024-01U": { + "features": [ + "Fixed a bug that prevented logged out users from creating teams if they started from the Character or Summon tabs" + ] + }, "2023-12U2": { "features": [ "Sorry for the longer spaces between updates—life has been a bit busy. Work has gotten a lot busier, I have more social obligations, and am working on another app. I haven't abandoned granblue.team though. Thanks for your patience!", diff --git a/public/locales/ja/updates.json b/public/locales/ja/updates.json index 3ad914cd..0a05c6fa 100644 --- a/public/locales/ja/updates.json +++ b/public/locales/ja/updates.json @@ -19,6 +19,11 @@ "uncap": "上限解放" }, "versions": { + "2024-01U": { + "features": [ + "ログアウトしたままのユーザーがキャラクターまたは召喚石のタブから編成を作成できない不具合を修正" + ] + }, "2023-12U2": { "features": [ "更新の間隔が開いてしまって申し訳ございませんー仕事が忙しくなったし、社会的な義務も増えたし、別のアプリの開発も続きました。granblue.teamの開発が終わってないのでこれからもよろしくお願いします!",