Skip to content

Commit

Permalink
Feature/deseng623 Add language selector UI based roughly on ISO 639 c…
Browse files Browse the repository at this point in the history
…odes (#2540)

* DESENG-632 Add DB tables & API routes (#2533)

* DESENG-632 Add DB tables & API routes

* DESENG-623 fix linting

* DESENG-623 Move language to migration file, remove delete crud language route

* DESENG-623 Remove ability to delete language

---------

Co-authored-by: Alex <[email protected]>

* Feature/deseng623 - Add frontend, update backend routes to use tenant short name (#2538)

* DESENG-623 Add frontend, update backend routes

* DESENG-623 Add api route updates, correct linting

* DESENG-623 Correctly invoke autocomplete api to disable claering

---------

Co-authored-by: Alex <[email protected]>

* DESENG-623 Add frontend tests, trim api tests

* DESENG-623 Add frontend tests

* DESENG-623 Add new tests, fix broken ones, merge migrations

* DESENG-623 Update changelog

* DESENG-623 fix linting and tests, clean up code further

---------

Co-authored-by: Alex <[email protected]>
  • Loading branch information
Baelx and Alex authored Jun 19, 2024
1 parent e8b1e3a commit 502fece
Show file tree
Hide file tree
Showing 46 changed files with 1,752 additions and 27,036 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.MD
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
## June 18, 2024
- **Feature** Add language picker UI [🎟️ DESENG-623](https://apps.itsm.gov.bc.ca/jira/browse/DESENG-623)

## June 17, 2024

- **Feature** Add engagement description to the engagement page [🎟️ DESENG-631](https://apps.itsm.gov.bc.ca/jira/browse/DESENG-631)
Expand Down
12 changes: 11 additions & 1 deletion met-api/migrations/README
Original file line number Diff line number Diff line change
@@ -1 +1,11 @@
Generic single-database configuration.
# Migrations

Uses alembic, SQL Alchemy, and flask-migrate to perform DB migrations.

To create a new revision:

`alembic revision -m "description of revision"`

## Languages

The list of languages in `versions/c656f3f82334_add_languages_and_tenant_mapping.py` has been taken from [https://www.w3schools.com/tags/ref_language_codes.asp](https://www.w3schools.com/tags/ref_language_codes.asp) and modified slightly to remove duplicate or multiple language codes per language.
3 changes: 3 additions & 0 deletions met-api/migrations/alembic.ini
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@
# the 'revision' command, regardless of autogenerate
# revision_environment = false

# Enables alembic CLI commands like 'history,' 'branches,' etc.
script_location=.


# Logging configuration
[loggers]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
"""
Relax language table constraints.
Revision ID: 22fb6b5b5aed
Revises: ae232e299180
Create Date: 2024-05-27 15:56:23.549731
"""
from alembic import op
import sqlalchemy as sa

# revision identifiers, used by Alembic.
revision = '22fb6b5b5aed'
down_revision = 'ae232e299180'
branch_labels = None
depends_on = None

def upgrade():
op.alter_column('language', 'right_to_left', nullable = True)
op.alter_column('language', 'code', type_ = sa.String(length=20))

def downgrade():
op.alter_column('language', 'right_to_left', nullable = False)
op.alter_column('language', 'code', type_ = sa.String(length=2))



Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
"""Add edit_languages to admin group
Revision ID: 82ca95b4b7c1
Revises: c5dc2bb998ea
Create Date: 2024-06-16 14:08:26.743948
"""
from alembic import op
import sqlalchemy as sa


# revision identifiers, used by Alembic.
revision = '82ca95b4b7c1'
down_revision = 'c5dc2bb998ea'
branch_labels = None
depends_on = None


def upgrade():
op.execute("INSERT INTO user_role (created_date, updated_date, id, name, description) VALUES ('{0}', '{0}', 40, 'edit_languages', 'Role to edit tenant languages.')".format(sa.func.now()))
op.execute("INSERT INTO group_role_mapping (created_date, updated_date, id, role_id, group_id) VALUES ('{0}', '{0}', 62, 40, 1)".format(sa.func.now()))


def downgrade():
op.execute("DELETE FROM group_role_mapping WHERE id = 62")
op.execute("DELETE FROM user_role WHERE id = 40")
27 changes: 27 additions & 0 deletions met-api/migrations/versions/c5dc2bb998ea_merge_heads.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
"""
Merge alembic revisions that:
- Add sponsor_name and cta_message to engagement and engagement_translation
- Add the list of supported languages and create a table to map them to tenants when selected
Revision ID: c5dc2bb998ea
Revises: 33ae368765fc, c656f3f82334
Create Date: 2024-06-16 13:40:10.729948
"""
from alembic import op
import sqlalchemy as sa


# revision identifiers, used by Alembic.
revision = 'c5dc2bb998ea'
down_revision = ('33ae368765fc', 'c656f3f82334')
branch_labels = None
depends_on = None


def upgrade():
pass


def downgrade():
pass
Loading

0 comments on commit 502fece

Please sign in to comment.