From 46f4d5c1f80b09dae4b6941dfc12726ccaeede97 Mon Sep 17 00:00:00 2001 From: Maksim Eltyshev Date: Tue, 3 Jun 2025 12:46:06 +0200 Subject: [PATCH] fix: Canonicalize locale codes --- client/src/locales/index.js | 8 +++--- .../{sr-Cyrl-CS => sr-Cyrl-RS}/core.js | 0 .../{sr-Cyrl-CS => sr-Cyrl-RS}/index.js | 2 +- .../{sr-Cyrl-CS => sr-Cyrl-RS}/login.js | 0 .../{sr-Latn-CS => sr-Latn-RS}/core.js | 0 .../{sr-Latn-CS => sr-Latn-RS}/index.js | 2 +- .../{sr-Latn-CS => sr-Latn-RS}/login.js | 0 server/api/models/User.js | 4 +-- .../20250523131647_add_comments_counter.js | 2 +- ...0250603102521_canonicalize_locale_codes.js | 26 +++++++++++++++++++ 10 files changed, 35 insertions(+), 9 deletions(-) rename client/src/locales/{sr-Cyrl-CS => sr-Cyrl-RS}/core.js (100%) rename client/src/locales/{sr-Cyrl-CS => sr-Cyrl-RS}/index.js (83%) rename client/src/locales/{sr-Cyrl-CS => sr-Cyrl-RS}/login.js (100%) rename client/src/locales/{sr-Latn-CS => sr-Latn-RS}/core.js (100%) rename client/src/locales/{sr-Latn-CS => sr-Latn-RS}/index.js (82%) rename client/src/locales/{sr-Latn-CS => sr-Latn-RS}/login.js (100%) create mode 100644 server/db/migrations/20250603102521_canonicalize_locale_codes.js diff --git a/client/src/locales/index.js b/client/src/locales/index.js index 18d31e4f..2e492497 100644 --- a/client/src/locales/index.js +++ b/client/src/locales/index.js @@ -24,8 +24,8 @@ import ptBR from './pt-BR'; import roRO from './ro-RO'; import ruRU from './ru-RU'; import skSK from './sk-SK'; -import srCyrlCS from './sr-Cyrl-CS'; -import srLatnCS from './sr-Latn-CS'; +import srCyrlRS from './sr-Cyrl-RS'; +import srLatnRS from './sr-Latn-RS'; import svSE from './sv-SE'; import trTR from './tr-TR'; import ukUA from './uk-UA'; @@ -55,8 +55,8 @@ const locales = [ roRO, ruRU, skSK, - srCyrlCS, - srLatnCS, + srCyrlRS, + srLatnRS, svSE, trTR, ukUA, diff --git a/client/src/locales/sr-Cyrl-CS/core.js b/client/src/locales/sr-Cyrl-RS/core.js similarity index 100% rename from client/src/locales/sr-Cyrl-CS/core.js rename to client/src/locales/sr-Cyrl-RS/core.js diff --git a/client/src/locales/sr-Cyrl-CS/index.js b/client/src/locales/sr-Cyrl-RS/index.js similarity index 83% rename from client/src/locales/sr-Cyrl-CS/index.js rename to client/src/locales/sr-Cyrl-RS/index.js index a70481b8..b53c7b36 100644 --- a/client/src/locales/sr-Cyrl-CS/index.js +++ b/client/src/locales/sr-Cyrl-RS/index.js @@ -1,7 +1,7 @@ import login from './login'; export default { - language: 'sr-Cyrl-CS', + language: 'sr-Cyrl-RS', country: 'rs', name: 'Српски (ћирилица)', embeddedLocale: login, diff --git a/client/src/locales/sr-Cyrl-CS/login.js b/client/src/locales/sr-Cyrl-RS/login.js similarity index 100% rename from client/src/locales/sr-Cyrl-CS/login.js rename to client/src/locales/sr-Cyrl-RS/login.js diff --git a/client/src/locales/sr-Latn-CS/core.js b/client/src/locales/sr-Latn-RS/core.js similarity index 100% rename from client/src/locales/sr-Latn-CS/core.js rename to client/src/locales/sr-Latn-RS/core.js diff --git a/client/src/locales/sr-Latn-CS/index.js b/client/src/locales/sr-Latn-RS/index.js similarity index 82% rename from client/src/locales/sr-Latn-CS/index.js rename to client/src/locales/sr-Latn-RS/index.js index 227410d7..df0aafdb 100644 --- a/client/src/locales/sr-Latn-CS/index.js +++ b/client/src/locales/sr-Latn-RS/index.js @@ -1,7 +1,7 @@ import login from './login'; export default { - language: 'sr-Latn-CS', + language: 'sr-Latn-RS', country: 'rs', name: 'Srpski (latinica)', embeddedLocale: login, diff --git a/client/src/locales/sr-Latn-CS/login.js b/client/src/locales/sr-Latn-RS/login.js similarity index 100% rename from client/src/locales/sr-Latn-CS/login.js rename to client/src/locales/sr-Latn-RS/login.js diff --git a/server/api/models/User.js b/server/api/models/User.js index 2370a3b5..14fef270 100755 --- a/server/api/models/User.js +++ b/server/api/models/User.js @@ -55,8 +55,8 @@ const LANGUAGES = [ 'ro-RO', 'ru-RU', 'sk-SK', - 'sr-Cyrl-CS', - 'sr-Latn-CS', + 'sr-Cyrl-RS', + 'sr-Latn-RS', 'sv-SE', 'tr-TR', 'uk-UA', diff --git a/server/db/migrations/20250523131647_add_comments_counter.js b/server/db/migrations/20250523131647_add_comments_counter.js index 2108832a..7d7b82a7 100644 --- a/server/db/migrations/20250523131647_add_comments_counter.js +++ b/server/db/migrations/20250523131647_add_comments_counter.js @@ -18,7 +18,7 @@ exports.up = async (knex) => { FROM comment GROUP BY card_id ) AS comments_total_by_card_id - WHERE card.id = comments_total_by_card_id.card_id + WHERE card.id = comments_total_by_card_id.card_id; `); return knex.schema.alterTable('card', (table) => { diff --git a/server/db/migrations/20250603102521_canonicalize_locale_codes.js b/server/db/migrations/20250603102521_canonicalize_locale_codes.js new file mode 100644 index 00000000..548013f5 --- /dev/null +++ b/server/db/migrations/20250603102521_canonicalize_locale_codes.js @@ -0,0 +1,26 @@ +/*! + * Copyright (c) 2024 PLANKA Software GmbH + * Licensed under the Fair Use License: https://github.com/plankanban/planka/blob/master/LICENSE.md + */ + +exports.up = (knex) => + knex.raw(` + UPDATE user_account + SET language = + CASE + WHEN language = 'sr-Cyrl-CS' THEN 'sr-Cyrl-RS' + WHEN language = 'sr-Latn-CS' THEN 'sr-Latn-RS' + END + WHERE language IN ('sr-Cyrl-CS', 'sr-Latn-CS'); + `); + +exports.down = (knex) => + knex.raw(` + UPDATE user_account + SET language = + CASE + WHEN language = 'sr-Cyrl-RS' THEN 'sr-Cyrl-CS' + WHEN language = 'sr-Latn-RS' THEN 'sr-Latn-CS' + END + WHERE language IN ('sr-Cyrl-RS', 'sr-Latn-RS'); + `);