diff --git a/models/training/src/index.ts b/models/training/src/index.ts
index cb539af8e0..82980172d8 100644
--- a/models/training/src/index.ts
+++ b/models/training/src/index.ts
@@ -189,6 +189,10 @@ function defineTraining (builder: Builder): void {
component: training.component.TrainingPanel
})
+ builder.mixin(training.class.Training, core.class.Class, view.mixin.ObjectPresenter, {
+ presenter: training.component.TrainingPresenter
+ })
+
builder.createDoc(view.class.Viewlet, core.space.Model, {
attachTo: training.class.Training,
descriptor: view.viewlet.Table,
@@ -201,7 +205,8 @@ function defineTraining (builder: Builder): void {
},
{
...columns.trainingTitle,
- key: 'title'
+ key: '',
+ presenter: training.component.TrainingTitlePresenter
},
{
...columns.trainingRevision,
@@ -890,8 +895,7 @@ const columns = {
trainingTitle: {
key: 'title',
label: training.string.TrainingTitle,
- props: { accent: true },
- displayProps: { grow: true, align: 'left' }
+ displayProps: { align: 'left' }
},
trainingRevision: {
key: 'revision',
diff --git a/plugins/training-resources/src/components/TrainingTitlePresenter.svelte b/plugins/training-resources/src/components/TrainingTitlePresenter.svelte
new file mode 100644
index 0000000000..3a0ac1a866
--- /dev/null
+++ b/plugins/training-resources/src/components/TrainingTitlePresenter.svelte
@@ -0,0 +1,22 @@
+
+
+
+
+{#if value}
+
+
+
+ {value.title}
+
+
+
+{/if}
diff --git a/plugins/training-resources/src/index.ts b/plugins/training-resources/src/index.ts
index 53a920bcd2..5532886810 100644
--- a/plugins/training-resources/src/index.ts
+++ b/plugins/training-resources/src/index.ts
@@ -28,6 +28,7 @@ import TrainingCodePresenter from './components/TrainingCodePresenter.svelte'
import TrainingCreator from './components/TrainingCreator.svelte'
import TrainingPanel from './components/TrainingPanel.svelte'
import TrainingPassingScorePresenter from './components/TrainingPassingScorePresenter.svelte'
+import TrainingPresenter from './components/TrainingPresenter.svelte'
import TrainingRequestDueDateEditor from './components/TrainingRequestDueDateEditor.svelte'
import TrainingRequestMaxAttemptsEditor from './components/TrainingRequestMaxAttemptsEditor.svelte'
import TrainingRequestMaxAttemptsPresenter from './components/TrainingRequestMaxAttemptsPresenter.svelte'
@@ -36,6 +37,7 @@ import TrainingRequestPanel from './components/TrainingRequestPanel.svelte'
import TrainingRequestTraineesEditor from './components/TrainingRequestTraineesEditor.svelte'
import TrainingStateFilterPresenter from './components/TrainingStateFilterPresenter.svelte'
import TrainingStatePresenter from './components/TrainingStatePresenter.svelte'
+import TrainingTitlePresenter from './components/TrainingTitlePresenter.svelte'
import ViewAllTrainings from './components/ViewAllTrainings.svelte'
import ViewIncomingRequests from './components/ViewIncomingRequests.svelte'
import ViewMyResults from './components/ViewMyResults.svelte'
@@ -76,6 +78,7 @@ export default async (): Promise => ({
TrainingCreator,
TrainingPanel,
TrainingPassingScorePresenter,
+ TrainingPresenter,
TrainingRequestDueDateEditor,
TrainingRequestMaxAttemptsEditor,
TrainingRequestMaxAttemptsPresenter,
@@ -84,6 +87,7 @@ export default async (): Promise => ({
TrainingRequestTraineesEditor,
TrainingStateFilterPresenter,
TrainingStatePresenter,
+ TrainingTitlePresenter,
ViewAllTrainings,
ViewIncomingRequests,
ViewMyTrainings,
diff --git a/plugins/training-resources/src/plugin.ts b/plugins/training-resources/src/plugin.ts
index 5488a0ac99..5286717704 100644
--- a/plugins/training-resources/src/plugin.ts
+++ b/plugins/training-resources/src/plugin.ts
@@ -21,6 +21,7 @@ import type IncomingRequestStatePresenter from './components/IncomingRequestStat
import type SentRequestCompletionPresenter from './components/SentRequestCompletionPresenter.svelte'
import type SentRequestPresenter from './components/SentRequestPresenter.svelte'
import type SentRequestStatePresenter from './components/SentRequestStatePresenter.svelte'
+import type TrainingPresenter from './components/TrainingPresenter.svelte'
import type TrainingAttemptNumberPresenter from './components/TrainingAttemptNumberPresenter.svelte'
import type TrainingAttemptPanel from './components/TrainingAttemptPanel.svelte'
import type TrainingAttemptPresenter from './components/TrainingAttemptPresenter.svelte'
@@ -40,6 +41,7 @@ import type TrainingRequestPanel from './components/TrainingRequestPanel.svelte'
import type TrainingRequestTraineesEditor from './components/TrainingRequestTraineesEditor.svelte'
import type TrainingStateFilterPresenter from './components/TrainingStateFilterPresenter.svelte'
import type TrainingStatePresenter from './components/TrainingStatePresenter.svelte'
+import type TrainingTitlePresenter from './components/TrainingTitlePresenter.svelte'
import type ViewAllTrainings from './components/ViewAllTrainings.svelte'
import type ViewIncomingRequests from './components/ViewIncomingRequests.svelte'
import type ViewMyResults from './components/ViewMyResults.svelte'
@@ -56,6 +58,7 @@ export default mergeIds(trainingId, training, {
SentRequestCompletionPresenter: '' as Resource>,
SentRequestPresenter: '' as Resource>,
SentRequestStatePresenter: '' as Resource>,
+ TrainingPresenter: '' as Resource>,
TrainingAttemptNumberPresenter: '' as Resource>,
TrainingAttemptPanel: '' as Resource>,
TrainingAttemptPresenter: '' as Resource>,
@@ -74,6 +77,7 @@ export default mergeIds(trainingId, training, {
TrainingRequestTraineesEditor: '' as Resource>,
TrainingStateFilterPresenter: '' as Resource>,
TrainingStatePresenter: '' as Resource>,
+ TrainingTitlePresenter: '' as Resource>,
ViewAllTrainings: '' as Resource>,
ViewIncomingRequests: '' as Resource>,
ViewMyTrainings: '' as Resource>,