diff --git a/admin/app/components/trainings/training-details-card.gjs b/admin/app/components/trainings/training-details-card.gjs index b632a8497af..2de77f8c28a 100644 --- a/admin/app/components/trainings/training-details-card.gjs +++ b/admin/app/components/trainings/training-details-card.gjs @@ -1,4 +1,5 @@ import Component from '@glimmer/component'; +import { t } from 'ember-intl'; import { localeCategories } from '../../models/training'; import StateTag from './state-tag'; @@ -22,7 +23,9 @@ export default class TrainingDetailsCard extends Component {

{{@training.title}}

-
Publié sur : 
+
{{t "pages.trainings.training.details.internalTitle"}}
+
{{@training.internalTitle}}
+
{{t "pages.trainings.training.details.publishedOn"}}
-
Type de contenu : 
+
{{t "pages.trainings.training.details.contentType"}}
{{@training.type}}
-
Durée : 
+
{{t "pages.trainings.training.details.duration"}}
{{this.formattedDuration}}
-
Langue localisée : 
+
{{t + "pages.trainings.training.details.localizedLanguage" + }}
{{this.formattedLocale}}
-
Nom d'éditeur : 
+
{{t "pages.trainings.training.details.editorName"}}
{{@training.editorName}}
-
Logo de l'éditeur : 
+
{{t "pages.trainings.training.details.editorLogo"}}
{{@training.editorLogoUrl}}
-
Statut : 
+
{{t "pages.trainings.training.details.status"}}
{{if @training.isRecommendable "Déclenchable" diff --git a/admin/app/models/training.js b/admin/app/models/training.js index 68ec9b2542c..6075be537d4 100644 --- a/admin/app/models/training.js +++ b/admin/app/models/training.js @@ -23,6 +23,7 @@ export const optionsLocaleList = formatList(localeCategories); export default class Training extends Model { @attr('string') title; + @attr('string') internalTitle; @attr('string') link; @attr('string') type; @attr('string') locale; diff --git a/admin/app/styles/components/trainings/training-details-card.scss b/admin/app/styles/components/trainings/training-details-card.scss index 4a37ac5d3da..ef97b45ece9 100644 --- a/admin/app/styles/components/trainings/training-details-card.scss +++ b/admin/app/styles/components/trainings/training-details-card.scss @@ -15,6 +15,7 @@ &__details-label { float: left; + margin-right: var(--pix-spacing-1x); } &__details-value { diff --git a/admin/tests/integration/components/trainings/training-details-card-test.gjs b/admin/tests/integration/components/trainings/training-details-card-test.gjs index c37031c63f3..820584de3a9 100644 --- a/admin/tests/integration/components/trainings/training-details-card-test.gjs +++ b/admin/tests/integration/components/trainings/training-details-card-test.gjs @@ -1,13 +1,15 @@ import { render } from '@1024pix/ember-testing-library'; -import { setupRenderingTest } from 'ember-qunit'; import TrainingDetailsCard from 'pix-admin/components/trainings/training-details-card'; import { module, test } from 'qunit'; +import setupIntlRenderingTest from '../../../helpers/setup-intl-rendering'; + module('Integration | Component | Trainings::TrainingDetailsCard', function (hooks) { - setupRenderingTest(hooks); + setupIntlRenderingTest(hooks); const training = { title: 'Un contenu formatif', + internalTitle: 'Mon titre interne', link: 'https://un-contenu-formatif', type: 'webinaire', locale: 'fr-fr', @@ -24,7 +26,8 @@ module('Integration | Component | Trainings::TrainingDetailsCard', function (hoo const screen = await render(); // then - assert.dom(screen.getByText('Un contenu formatif')).exists(); + assert.dom(screen.getByRole('heading', { level: 1, name: 'Un contenu formatif' })).exists(); + assert.dom(screen.getByText('Mon titre interne')).exists(); assert.dom(screen.getByText('https://un-contenu-formatif')).exists(); assert.dom(screen.getByText('webinaire')).exists(); assert.dom(screen.getByText('2j')).exists(); diff --git a/admin/translations/en.json b/admin/translations/en.json index fbbcdfe6ba5..624d6361971 100644 --- a/admin/translations/en.json +++ b/admin/translations/en.json @@ -725,6 +725,16 @@ }, "trainings": { "training": { + "details": { + "contentType": "Content type : ", + "duration": "Duration : ", + "editorLogo": "Editor logo : ", + "editorName": "Editor name : ", + "internalTitle": "Internal title : ", + "localizedLanguage": "Localized language : ", + "publishedOn": "Published on : ", + "status": "Status : " + }, "targetProfiles": { "tabName": "Target Profiles" }, diff --git a/admin/translations/fr.json b/admin/translations/fr.json index d5b342940f7..f5d73210f28 100644 --- a/admin/translations/fr.json +++ b/admin/translations/fr.json @@ -742,6 +742,16 @@ }, "trainings": { "training": { + "details": { + "contentType": "Type de contenu :", + "duration": "Durée :", + "editorLogo": "Logo de l'éditeur :", + "editorName": "Nom d'éditeur :", + "internalTitle": "Titre interne :", + "localizedLanguage": "Langue localisée :", + "publishedOn": "Publié sur :", + "status": "Statut :" + }, "targetProfiles": { "tabName": "Profils cibles associés", "title": "Rattacher un ou plusieurs profils cibles"