@windward/integrations 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/Content/Blocks/ExternalIntegration/LtiConsumer.vue +4 -4
- package/components/ExternalIntegration/Driver/Lti1p1/ManageConsumers.vue +6 -6
- package/components/ExternalIntegration/Driver/Lti1p1/ManageProviders.vue +11 -6
- package/components/ExternalIntegration/Driver/Lti1p3/ManageConsumers.vue +8 -8
- package/components/ExternalIntegration/Driver/Lti1p3/ManageProviders.vue +11 -6
- package/components/FileImport/FileImportMenu.vue +4 -4
- package/components/Integration/Driver/ManageAtutor.vue +7 -13
- package/components/Integration/Driver/ManageBase.vue +0 -7
- package/components/Integration/Driver/ManageResourcespace.vue +6 -0
- package/components/Integration/JobLog.vue +4 -3
- package/components/Integration/JobTable.vue +2 -2
- package/components/Navigation/Items/CourseJobLog.vue +2 -2
- package/i18n/en-US/components/integration/driver.ts +2 -2
- package/i18n/es-ES/components/content/blocks/external_integration/index.ts +5 -0
- package/i18n/es-ES/components/content/blocks/external_integration/lti_consumer.ts +17 -0
- package/i18n/es-ES/components/content/blocks/index.ts +5 -0
- package/i18n/es-ES/components/content/index.ts +5 -0
- package/i18n/es-ES/components/external_integration/driver/lti1p1.ts +14 -0
- package/i18n/es-ES/components/external_integration/driver/lti1p3.ts +23 -0
- package/i18n/es-ES/components/external_integration/index.ts +31 -0
- package/i18n/es-ES/components/external_integration/provider_target.ts +9 -0
- package/i18n/es-ES/components/file_import/index.ts +5 -0
- package/i18n/es-ES/components/file_import/resourcespace.ts +4 -0
- package/i18n/es-ES/components/index.ts +15 -0
- package/i18n/es-ES/components/integration/driver.ts +45 -0
- package/i18n/es-ES/components/integration/index.ts +9 -0
- package/i18n/es-ES/components/integration/job.ts +23 -0
- package/i18n/es-ES/components/integration/job_log.ts +24 -0
- package/i18n/es-ES/components/navigation/index.ts +5 -0
- package/i18n/es-ES/components/navigation/integrations.ts +8 -0
- package/i18n/es-ES/components/settings/external_integration/index.ts +5 -0
- package/i18n/es-ES/components/settings/external_integration/lti_consumer.ts +10 -0
- package/i18n/es-ES/components/settings/index.ts +5 -0
- package/i18n/es-ES/index.ts +16 -0
- package/i18n/es-ES/modules/index.ts +5 -0
- package/i18n/es-ES/pages/course/external_integration/index.ts +6 -0
- package/i18n/es-ES/pages/course/index.ts +5 -0
- package/i18n/es-ES/pages/importContent.ts +3 -0
- package/i18n/es-ES/pages/importCourse.ts +13 -0
- package/i18n/es-ES/pages/index.ts +13 -0
- package/i18n/es-ES/pages/login/index.ts +5 -0
- package/i18n/es-ES/pages/login/lti.ts +21 -0
- package/i18n/es-ES/pages/vendor.ts +11 -0
- package/i18n/es-ES/shared/content_blocks.ts +8 -0
- package/i18n/es-ES/shared/error.ts +10 -0
- package/i18n/es-ES/shared/file.ts +5 -0
- package/i18n/es-ES/shared/index.ts +15 -0
- package/i18n/es-ES/shared/menu.ts +3 -0
- package/i18n/es-ES/shared/permission.ts +31 -0
- package/i18n/es-ES/shared/settings.ts +5 -0
- package/i18n/index.ts +11 -0
- package/i18n/sv-SE/components/content/blocks/external_integration/index.ts +5 -0
- package/i18n/sv-SE/components/content/blocks/external_integration/lti_consumer.ts +17 -0
- package/i18n/sv-SE/components/content/blocks/index.ts +5 -0
- package/i18n/sv-SE/components/content/index.ts +5 -0
- package/i18n/sv-SE/components/external_integration/driver/lti1p1.ts +14 -0
- package/i18n/sv-SE/components/external_integration/driver/lti1p3.ts +22 -0
- package/i18n/sv-SE/components/external_integration/index.ts +31 -0
- package/i18n/sv-SE/components/external_integration/provider_target.ts +9 -0
- package/i18n/sv-SE/components/file_import/index.ts +5 -0
- package/i18n/sv-SE/components/file_import/resourcespace.ts +4 -0
- package/i18n/sv-SE/components/index.ts +15 -0
- package/i18n/sv-SE/components/integration/driver.ts +44 -0
- package/i18n/sv-SE/components/integration/index.ts +9 -0
- package/i18n/sv-SE/components/integration/job.ts +23 -0
- package/i18n/sv-SE/components/integration/job_log.ts +24 -0
- package/i18n/sv-SE/components/navigation/index.ts +5 -0
- package/i18n/sv-SE/components/navigation/integrations.ts +8 -0
- package/i18n/sv-SE/components/settings/external_integration/index.ts +5 -0
- package/i18n/sv-SE/components/settings/external_integration/lti_consumer.ts +10 -0
- package/i18n/sv-SE/components/settings/index.ts +5 -0
- package/i18n/sv-SE/index.ts +16 -0
- package/i18n/sv-SE/modules/index.ts +5 -0
- package/i18n/sv-SE/pages/course/external_integration/index.ts +6 -0
- package/i18n/sv-SE/pages/course/index.ts +5 -0
- package/i18n/sv-SE/pages/importContent.ts +3 -0
- package/i18n/sv-SE/pages/importCourse.ts +13 -0
- package/i18n/sv-SE/pages/index.ts +13 -0
- package/i18n/sv-SE/pages/login/index.ts +5 -0
- package/i18n/sv-SE/pages/login/lti.ts +21 -0
- package/i18n/sv-SE/pages/vendor.ts +11 -0
- package/i18n/sv-SE/shared/content_blocks.ts +8 -0
- package/i18n/sv-SE/shared/error.ts +9 -0
- package/i18n/sv-SE/shared/file.ts +5 -0
- package/i18n/sv-SE/shared/index.ts +15 -0
- package/i18n/sv-SE/shared/menu.ts +3 -0
- package/i18n/sv-SE/shared/permission.ts +31 -0
- package/i18n/sv-SE/shared/settings.ts +5 -0
- package/package.json +7 -2
- package/pages/admin/vendors.vue +5 -5
- package/plugin.js +3 -4
- package/test/Feature/LocaleKeys.spec.js +9 -0
- package/test/__mocks__/componentsMock.js +12 -0
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
:name="frameId"
|
|
81
81
|
class="launch-frame"
|
|
82
82
|
></iframe>
|
|
83
|
-
<
|
|
83
|
+
<DialogBox
|
|
84
84
|
v-if="block.metadata.config.launch_type === 'modal'"
|
|
85
85
|
v-model="openModal"
|
|
86
86
|
:trigger="false"
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
|
|
109
109
|
<div v-else></div>
|
|
110
110
|
</template>
|
|
111
|
-
</
|
|
111
|
+
</DialogBox>
|
|
112
112
|
</div>
|
|
113
113
|
|
|
114
114
|
<v-alert v-if="missing" type="error">
|
|
@@ -154,11 +154,11 @@ import BaseContentBlock from '~/components/Content/Blocks/BaseContentBlock'
|
|
|
154
154
|
import Course from '~/models/Course'
|
|
155
155
|
import Organization from '~/models/Organization'
|
|
156
156
|
import Enrollment from '~/models/Enrollment'
|
|
157
|
-
import
|
|
157
|
+
import DialogBox from '~/components/DialogBox.vue'
|
|
158
158
|
|
|
159
159
|
export default {
|
|
160
160
|
name: 'ContentBlockExternalIntegrationLti1p1Consumer',
|
|
161
|
-
components: { TextViewer,
|
|
161
|
+
components: { TextViewer, DialogBox },
|
|
162
162
|
extends: BaseContentBlock,
|
|
163
163
|
data() {
|
|
164
164
|
return {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div>
|
|
3
|
-
<
|
|
3
|
+
<DialogBox
|
|
4
4
|
color="primary"
|
|
5
5
|
action-save
|
|
6
6
|
action-save-new
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
<template #form="{ on, attrs }"
|
|
20
20
|
><ManageConsumer v-bind="attrs" v-on="on"></ManageConsumer
|
|
21
21
|
></template>
|
|
22
|
-
</
|
|
22
|
+
</DialogBox>
|
|
23
23
|
|
|
24
24
|
<v-data-table
|
|
25
25
|
:headers="headers"
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
{{ $d(new Date(item.created_at), 'long') }}
|
|
45
45
|
</template>
|
|
46
46
|
<template #[`item.actions`]="{ index, item }">
|
|
47
|
-
<
|
|
47
|
+
<DialogBox color="primary" action-save @click:save="onSaved">
|
|
48
48
|
<template #title>{{
|
|
49
49
|
$t(
|
|
50
50
|
'windward.integrations.components.external_integration.driver.lti1p1.edit'
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
v-on="on"
|
|
66
66
|
></ManageConsumer
|
|
67
67
|
></template>
|
|
68
|
-
</
|
|
68
|
+
</DialogBox>
|
|
69
69
|
|
|
70
70
|
<v-btn icon>
|
|
71
71
|
<v-icon @click="onConfirmDelete(item)"> mdi-delete </v-icon>
|
|
@@ -83,11 +83,11 @@ import LtiConsumer from '../../../../models/ExternalIntegration/LtiConsumer'
|
|
|
83
83
|
import ManageConsumer from './ManageConsumer.vue'
|
|
84
84
|
import Course from '~/models/Course'
|
|
85
85
|
import Organization from '~/models/Organization'
|
|
86
|
-
import
|
|
86
|
+
import DialogBox from '~/components/DialogBox.vue'
|
|
87
87
|
|
|
88
88
|
export default {
|
|
89
89
|
name: 'ManageLti1p1ConsumersDriver',
|
|
90
|
-
components: {
|
|
90
|
+
components: { DialogBox, ManageConsumer },
|
|
91
91
|
data() {
|
|
92
92
|
return {
|
|
93
93
|
consumers: [],
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div>
|
|
3
|
-
<
|
|
3
|
+
<DialogBox
|
|
4
4
|
color="primary"
|
|
5
5
|
action-save
|
|
6
6
|
action-save-new
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<template #form="{ on, attrs }"
|
|
16
16
|
><ManageProvider v-bind="attrs" v-on="on"></ManageProvider
|
|
17
17
|
></template>
|
|
18
|
-
</
|
|
18
|
+
</DialogBox>
|
|
19
19
|
|
|
20
20
|
<v-data-table
|
|
21
21
|
:headers="headers"
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
{{ $d(new Date(item.created_at), 'short') }}
|
|
64
64
|
</template>
|
|
65
65
|
<template #[`item.actions`]="{ index, item }">
|
|
66
|
-
<
|
|
66
|
+
<DialogBox color="primary" action-save @click:save="onSaved">
|
|
67
67
|
<template #title>{{
|
|
68
68
|
$t(
|
|
69
69
|
'windward.integrations.components.external_integration.driver.lti1p1.edit'
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
v-on="on"
|
|
85
85
|
></ManageProvider
|
|
86
86
|
></template>
|
|
87
|
-
</
|
|
87
|
+
</DialogBox>
|
|
88
88
|
|
|
89
89
|
<v-btn icon>
|
|
90
90
|
<v-icon @click="onConfirmDelete(item)"> mdi-delete </v-icon>
|
|
@@ -102,13 +102,18 @@ import LtiProvider from '../../../../models/ExternalIntegration/LtiProvider'
|
|
|
102
102
|
import SecretField from '../../../SecretField.vue'
|
|
103
103
|
import ProviderTargetViewer from '../../ProviderTargetViewer.vue'
|
|
104
104
|
import ManageProvider from './ManageProvider.vue'
|
|
105
|
-
import
|
|
105
|
+
import DialogBox from '~/components/DialogBox.vue'
|
|
106
106
|
import Organization from '~/models/Organization'
|
|
107
107
|
import Course from '~/models/Course'
|
|
108
108
|
|
|
109
109
|
export default {
|
|
110
110
|
name: 'ManageLti1p1ProvidersDriver',
|
|
111
|
-
components: {
|
|
111
|
+
components: {
|
|
112
|
+
SecretField,
|
|
113
|
+
DialogBox,
|
|
114
|
+
ManageProvider,
|
|
115
|
+
ProviderTargetViewer,
|
|
116
|
+
},
|
|
112
117
|
data() {
|
|
113
118
|
return {
|
|
114
119
|
providers: [],
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div>
|
|
3
|
-
<
|
|
3
|
+
<DialogBox
|
|
4
4
|
color="primary"
|
|
5
5
|
action-save
|
|
6
6
|
action-save-new
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
<template #form="{ on, attrs }"
|
|
20
20
|
><ManageConsumer v-bind="attrs" v-on="on"></ManageConsumer
|
|
21
21
|
></template>
|
|
22
|
-
</
|
|
22
|
+
</DialogBox>
|
|
23
23
|
|
|
24
24
|
<v-data-table
|
|
25
25
|
:headers="headers"
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
{{ $d(new Date(item.created_at), 'long') }}
|
|
45
45
|
</template>
|
|
46
46
|
<template #[`item.actions`]="{ index, item }">
|
|
47
|
-
<
|
|
47
|
+
<DialogBox color="primary">
|
|
48
48
|
<template #title>{{
|
|
49
49
|
$t(
|
|
50
50
|
'windward.integrations.components.external_integration.driver.lti1p3.view'
|
|
@@ -65,8 +65,8 @@
|
|
|
65
65
|
v-on="on"
|
|
66
66
|
></ViewConsumer
|
|
67
67
|
></template>
|
|
68
|
-
</
|
|
69
|
-
<
|
|
68
|
+
</DialogBox>
|
|
69
|
+
<DialogBox color="primary" action-save @click:save="onSaved">
|
|
70
70
|
<template #title>{{
|
|
71
71
|
$t(
|
|
72
72
|
'windward.integrations.components.external_integration.driver.lti1p3.edit'
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
v-on="on"
|
|
88
88
|
></ManageConsumer
|
|
89
89
|
></template>
|
|
90
|
-
</
|
|
90
|
+
</DialogBox>
|
|
91
91
|
|
|
92
92
|
<v-btn icon>
|
|
93
93
|
<v-icon @click="onConfirmDelete(item)"> mdi-delete </v-icon>
|
|
@@ -106,11 +106,11 @@ import ManageConsumer from './ManageConsumer.vue'
|
|
|
106
106
|
import ViewConsumer from './ViewConsumer.vue'
|
|
107
107
|
import Course from '~/models/Course'
|
|
108
108
|
import Organization from '~/models/Organization'
|
|
109
|
-
import
|
|
109
|
+
import DialogBox from '~/components/DialogBox.vue'
|
|
110
110
|
|
|
111
111
|
export default {
|
|
112
112
|
name: 'ManageLti1p1ConsumersDriver',
|
|
113
|
-
components: {
|
|
113
|
+
components: { DialogBox, ManageConsumer, ViewConsumer },
|
|
114
114
|
data() {
|
|
115
115
|
return {
|
|
116
116
|
consumers: [],
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div>
|
|
3
|
-
<
|
|
3
|
+
<DialogBox
|
|
4
4
|
color="primary"
|
|
5
5
|
action-save
|
|
6
6
|
action-save-new
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<template #form="{ on, attrs }"
|
|
16
16
|
><ManageProvider v-bind="attrs" v-on="on"></ManageProvider
|
|
17
17
|
></template>
|
|
18
|
-
</
|
|
18
|
+
</DialogBox>
|
|
19
19
|
|
|
20
20
|
<v-data-table
|
|
21
21
|
:headers="headers"
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
{{ $d(new Date(item.created_at), 'short') }}
|
|
70
70
|
</template>
|
|
71
71
|
<template #[`item.actions`]="{ index, item }">
|
|
72
|
-
<
|
|
72
|
+
<DialogBox color="primary" action-save @click:save="onSaved">
|
|
73
73
|
<template #title>{{
|
|
74
74
|
$t(
|
|
75
75
|
'windward.integrations.components.external_integration.driver.lti1p3.edit'
|
|
@@ -90,7 +90,7 @@
|
|
|
90
90
|
v-on="on"
|
|
91
91
|
></ManageProvider
|
|
92
92
|
></template>
|
|
93
|
-
</
|
|
93
|
+
</DialogBox>
|
|
94
94
|
|
|
95
95
|
<v-btn icon>
|
|
96
96
|
<v-icon @click="onConfirmDelete(item)"> mdi-delete </v-icon>
|
|
@@ -108,13 +108,18 @@ import LtiProvider from '../../../../models/ExternalIntegration/LtiProvider'
|
|
|
108
108
|
import SecretField from '../../../SecretField.vue'
|
|
109
109
|
import ProviderTargetViewer from '../../ProviderTargetViewer.vue'
|
|
110
110
|
import ManageProvider from './ManageProvider.vue'
|
|
111
|
-
import
|
|
111
|
+
import DialogBox from '~/components/DialogBox.vue'
|
|
112
112
|
import Organization from '~/models/Organization'
|
|
113
113
|
import Course from '~/models/Course'
|
|
114
114
|
|
|
115
115
|
export default {
|
|
116
116
|
name: 'ManageLti1p1ProvidersDriver',
|
|
117
|
-
components: {
|
|
117
|
+
components: {
|
|
118
|
+
SecretField,
|
|
119
|
+
DialogBox,
|
|
120
|
+
ManageProvider,
|
|
121
|
+
ProviderTargetViewer,
|
|
122
|
+
},
|
|
118
123
|
data() {
|
|
119
124
|
return {
|
|
120
125
|
providers: [],
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
<v-list-item-title>{{ $t(importVendor.i18n) }}</v-list-item-title>
|
|
12
12
|
</v-list-item>
|
|
13
13
|
|
|
14
|
-
<
|
|
14
|
+
<DialogBox
|
|
15
15
|
v-model="showDialog"
|
|
16
16
|
:trigger="false"
|
|
17
17
|
persistent
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
@uploaded="$emit('uploaded', $event)"
|
|
32
32
|
></component>
|
|
33
33
|
</template>
|
|
34
|
-
</
|
|
34
|
+
</DialogBox>
|
|
35
35
|
</div>
|
|
36
36
|
</template>
|
|
37
37
|
|
|
@@ -39,11 +39,11 @@
|
|
|
39
39
|
import _ from 'lodash'
|
|
40
40
|
import { mapGetters } from 'vuex'
|
|
41
41
|
import Organization from '../../models/Organization'
|
|
42
|
-
import
|
|
42
|
+
import DialogBox from '~/components/DialogBox.vue'
|
|
43
43
|
|
|
44
44
|
export default {
|
|
45
45
|
name: 'FileImportMenu',
|
|
46
|
-
components: {
|
|
46
|
+
components: { DialogBox },
|
|
47
47
|
props: {
|
|
48
48
|
metadata: {
|
|
49
49
|
type: Object,
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
/>
|
|
17
17
|
|
|
18
18
|
<v-text-field
|
|
19
|
+
id="atutor-url"
|
|
19
20
|
ref="atutor_url"
|
|
20
21
|
v-model="integration.metadata.config.url"
|
|
21
22
|
:label="
|
|
@@ -28,17 +29,20 @@
|
|
|
28
29
|
'windward.integrations.components.integration.driver.atutor.url_hint'
|
|
29
30
|
)
|
|
30
31
|
"
|
|
31
|
-
:rules="
|
|
32
|
+
:rules="validation.urlRules"
|
|
32
33
|
></v-text-field>
|
|
33
34
|
<v-text-field
|
|
35
|
+
id="atutor-username"
|
|
34
36
|
v-model="integration.metadata.config.username"
|
|
35
37
|
:label="
|
|
36
38
|
$t(
|
|
37
39
|
'windward.integrations.components.integration.driver.atutor.username'
|
|
38
40
|
)
|
|
39
41
|
"
|
|
42
|
+
:rules="validation.existsRules"
|
|
40
43
|
></v-text-field>
|
|
41
44
|
<v-text-field
|
|
45
|
+
id="atutor-password"
|
|
42
46
|
v-model="integration.metadata.config.password"
|
|
43
47
|
:label="
|
|
44
48
|
$t(
|
|
@@ -46,6 +50,7 @@
|
|
|
46
50
|
)
|
|
47
51
|
"
|
|
48
52
|
type="password"
|
|
53
|
+
:rules="validation.existsRules"
|
|
49
54
|
></v-text-field>
|
|
50
55
|
|
|
51
56
|
<v-text-field
|
|
@@ -61,7 +66,7 @@
|
|
|
61
66
|
'windward.integrations.components.integration.driver.atutor.aws_secure_url_hint'
|
|
62
67
|
)
|
|
63
68
|
"
|
|
64
|
-
:rules="
|
|
69
|
+
:rules="validation.urlRules"
|
|
65
70
|
></v-text-field>
|
|
66
71
|
|
|
67
72
|
<v-switch
|
|
@@ -104,17 +109,6 @@ export default {
|
|
|
104
109
|
// integration: { metadata: {...} } The integration object to write to. Defined and loaded in ManageBase.vue
|
|
105
110
|
errorMessage: '',
|
|
106
111
|
testConnectionLoading: false,
|
|
107
|
-
urlValidation: [
|
|
108
|
-
(value) => {
|
|
109
|
-
if (value && value.slice(-1) === '/') {
|
|
110
|
-
return this.$t(
|
|
111
|
-
'windward.integrations.components.integration.driver.remove_slash'
|
|
112
|
-
)
|
|
113
|
-
} else {
|
|
114
|
-
return true
|
|
115
|
-
}
|
|
116
|
-
},
|
|
117
|
-
],
|
|
118
112
|
}
|
|
119
113
|
},
|
|
120
114
|
methods: {
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
/>
|
|
17
17
|
|
|
18
18
|
<v-text-field
|
|
19
|
+
id="resourcespace-url"
|
|
19
20
|
v-model="integration.metadata.config.url"
|
|
20
21
|
:label="
|
|
21
22
|
$t(
|
|
@@ -27,16 +28,20 @@
|
|
|
27
28
|
'windward.integrations.components.integration.driver.resourcespace.url_hint'
|
|
28
29
|
)
|
|
29
30
|
"
|
|
31
|
+
:rules="validation.urlRules"
|
|
30
32
|
></v-text-field>
|
|
31
33
|
<v-text-field
|
|
34
|
+
id="resourcespace-username"
|
|
32
35
|
v-model="integration.metadata.config.username"
|
|
33
36
|
:label="
|
|
34
37
|
$t(
|
|
35
38
|
'windward.integrations.components.integration.driver.resourcespace.username'
|
|
36
39
|
)
|
|
37
40
|
"
|
|
41
|
+
:rules="validation.existsRules"
|
|
38
42
|
></v-text-field>
|
|
39
43
|
<v-text-field
|
|
44
|
+
id="resourcespace-key"
|
|
40
45
|
v-model="integration.metadata.config.key"
|
|
41
46
|
:label="
|
|
42
47
|
$t(
|
|
@@ -44,6 +49,7 @@
|
|
|
44
49
|
)
|
|
45
50
|
"
|
|
46
51
|
type="password"
|
|
52
|
+
:rules="validation.existsRules"
|
|
47
53
|
></v-text-field>
|
|
48
54
|
|
|
49
55
|
<v-switch
|
|
@@ -268,6 +268,9 @@ export default {
|
|
|
268
268
|
],
|
|
269
269
|
}
|
|
270
270
|
},
|
|
271
|
+
async fetch() {
|
|
272
|
+
await this.loadLog()
|
|
273
|
+
},
|
|
271
274
|
computed: {
|
|
272
275
|
...mapGetters({
|
|
273
276
|
organization: 'organization/get',
|
|
@@ -376,9 +379,7 @@ export default {
|
|
|
376
379
|
}
|
|
377
380
|
},
|
|
378
381
|
},
|
|
379
|
-
mounted() {
|
|
380
|
-
this.loadLog()
|
|
381
|
-
},
|
|
382
|
+
mounted() {},
|
|
382
383
|
methods: {
|
|
383
384
|
async loadLog() {
|
|
384
385
|
this.job = {}
|
|
@@ -127,7 +127,7 @@
|
|
|
127
127
|
</td>
|
|
128
128
|
<td>{{ $d(new Date(item.created_at), 'long') }}</td>
|
|
129
129
|
<td>
|
|
130
|
-
<
|
|
130
|
+
<DialogBox color="primary" outlined>
|
|
131
131
|
<template #trigger>
|
|
132
132
|
<v-icon>mdi-note-search</v-icon>
|
|
133
133
|
</template>
|
|
@@ -143,7 +143,7 @@
|
|
|
143
143
|
v-on="on"
|
|
144
144
|
></JobLog>
|
|
145
145
|
</template>
|
|
146
|
-
</
|
|
146
|
+
</DialogBox>
|
|
147
147
|
</td>
|
|
148
148
|
</tr>
|
|
149
149
|
</tbody>
|
|
@@ -7,12 +7,12 @@
|
|
|
7
7
|
<v-list-item-title>
|
|
8
8
|
{{ $t(config.i18n) }}
|
|
9
9
|
</v-list-item-title>
|
|
10
|
-
<
|
|
10
|
+
<DialogBox v-model="dialog" color="primary" text :trigger="false">
|
|
11
11
|
<template #title>{{ $t(config.i18n) }}</template>
|
|
12
12
|
<template #form="{ on, attrs }">
|
|
13
13
|
<JobLog :id="jobId" v-bind="attrs" v-on="on"></JobLog>
|
|
14
14
|
</template>
|
|
15
|
-
</
|
|
15
|
+
</DialogBox>
|
|
16
16
|
</v-list-item-content>
|
|
17
17
|
</v-list-item>
|
|
18
18
|
</template>
|
|
@@ -2,11 +2,11 @@ export default {
|
|
|
2
2
|
atutor: {
|
|
3
3
|
manage_dialog_title: 'Manage ATutor Integration',
|
|
4
4
|
url: 'ATutor API Url',
|
|
5
|
-
url_hint: 'Eg: https://
|
|
5
|
+
url_hint: 'Eg: https://courses.mindedgeonline.com',
|
|
6
6
|
username: 'Username',
|
|
7
7
|
password: 'Password',
|
|
8
8
|
aws_secure_url: 'AWS CDN Url',
|
|
9
|
-
aws_secure_url_hint: 'Eg: https://cdn-d.
|
|
9
|
+
aws_secure_url_hint: 'Eg: https://cdn-d.mindedgeonline.com',
|
|
10
10
|
},
|
|
11
11
|
remove_slash: 'Remove / at end of url',
|
|
12
12
|
atutor_wgu: {
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
title: 'LTI Consumer Block Title',
|
|
3
|
+
instructions:
|
|
4
|
+
'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam fringilla ipsum eget ante tempus blandit. Maecenas vel massa\n' +
|
|
5
|
+
'nec tellus vestibulum porttitor non a enim.',
|
|
6
|
+
launch: 'Launch',
|
|
7
|
+
goodbye: 'adjö',
|
|
8
|
+
launch_in_new_window: 'lansera {0} i ny flik',
|
|
9
|
+
launch_in_modal: 'lansera {0} i modal',
|
|
10
|
+
configure_warning:
|
|
11
|
+
'Detta block måste konfigureras. Välj ett LTI-verktyg i inställningspanelen.',
|
|
12
|
+
no_access:
|
|
13
|
+
'Du har inte behörighet att starta den här länken. Kontakta din systemadministratör.',
|
|
14
|
+
missing_tool: 'Verktygs-ID {0} saknas',
|
|
15
|
+
unknown_error: 'Något gick fel! Kunde inte starta den här länken!',
|
|
16
|
+
link_disabled: 'Länk inaktiverad',
|
|
17
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
key: 'Clave',
|
|
3
|
+
secret: 'Secreto',
|
|
4
|
+
parameter_name: 'Nombre de parámetro personalizado',
|
|
5
|
+
value: 'Valor',
|
|
6
|
+
auto_key: 'Dejar vacío para la clave generada automáticamente',
|
|
7
|
+
auto_secret: 'Dejar vacío para el secreto autogenerado',
|
|
8
|
+
change_key: 'Cambiar clave',
|
|
9
|
+
change_secret: 'Cambiar secreto',
|
|
10
|
+
new_key: 'Nueva clave',
|
|
11
|
+
new_secret: 'Nuevo secreto',
|
|
12
|
+
new: 'Nuevo enlace LTI',
|
|
13
|
+
edit: 'Editar enlace LTI',
|
|
14
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
key: 'Clave',
|
|
3
|
+
issuer: 'Emisor',
|
|
4
|
+
tool_public_keyset_url: 'URL del conjunto de claves de la herramienta',
|
|
5
|
+
tool_oidc_auth_endpoint: 'Herramienta OpenID Connect Endpoint',
|
|
6
|
+
login_hint: 'pista de inicio de sesión',
|
|
7
|
+
platform_id: 'Identificador de plataforma',
|
|
8
|
+
platform_name: 'Nombre de la plataforma',
|
|
9
|
+
platform_public_keyset_url: 'URL del conjunto de claves de la plataforma',
|
|
10
|
+
platform_oidc_auth_endpoint: 'Punto final de conexión OpenID de plataforma',
|
|
11
|
+
platform_oauth2_access_token_url:
|
|
12
|
+
'URL del token de acceso a la plataforma OAuth2',
|
|
13
|
+
platform_oauth2_audience: 'Audiencia de plataforma Oauth2',
|
|
14
|
+
tool_client_id: 'ID de cliente de herramienta',
|
|
15
|
+
platform_deployment_id: 'ID de implementación',
|
|
16
|
+
enable_button_feedback:
|
|
17
|
+
'¡El enlace solo se puede habilitar una vez que se configuran el identificador del cliente de plataforma y las URL del conjunto de claves!',
|
|
18
|
+
parameter_name: 'Nombre de parámetro personalizado',
|
|
19
|
+
value: 'Valor',
|
|
20
|
+
new: 'Nuevo enlace LTI',
|
|
21
|
+
edit: 'Editar enlace LTI',
|
|
22
|
+
view: 'Ver detalles del enlace LTI',
|
|
23
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import lti1p1 from './driver/lti1p1'
|
|
2
|
+
import lti1p3 from './driver/lti1p3'
|
|
3
|
+
import providerTarget from './provider_target'
|
|
4
|
+
export default {
|
|
5
|
+
driver: { lti1p1, lti1p3 },
|
|
6
|
+
provider_target: providerTarget,
|
|
7
|
+
|
|
8
|
+
provider_panel_title: 'Proveedor (Estudiantes que llegan a Windward)',
|
|
9
|
+
consumer_panel_title: 'Consumidor (Estudiantes que salen de Barlovento)',
|
|
10
|
+
|
|
11
|
+
target: 'Objetivo',
|
|
12
|
+
target_url: 'URL de destino',
|
|
13
|
+
launch_url: 'URL de inicio',
|
|
14
|
+
|
|
15
|
+
send_grades: 'Enviar calificaciones al LMS anfitrión',
|
|
16
|
+
grade_sync: 'Sincronización de calificaciones',
|
|
17
|
+
provider: 'Proveedor',
|
|
18
|
+
consumer: 'Consumidor',
|
|
19
|
+
|
|
20
|
+
role_map_panel: 'Mapa de roles',
|
|
21
|
+
role_in_host: 'Rol en el anfitrión LMS',
|
|
22
|
+
role_in_local: 'Papel en Barlovento',
|
|
23
|
+
remote_role: 'Nombre de función remota',
|
|
24
|
+
map_to_role: 'Mapa al rol de barlovento',
|
|
25
|
+
delete_role_map_item: 'Eliminar elemento del mapa de roles',
|
|
26
|
+
add_role_map_item: 'Agregar elemento de mapa de roles',
|
|
27
|
+
role_map_instructions:
|
|
28
|
+
'Solo agregue roles al siguiente mapa si el LMS del host usa diferentes nombres de roles para los que desea permisos elevados. Por ejemplo, "Mentor" que desea elevar a "Instructor externo"',
|
|
29
|
+
role_map_warning:
|
|
30
|
+
'Solo agregue roles al siguiente mapa si el LMS del host usa diferentes nombres de roles para los que desea permisos elevados. Por ejemplo, "Mentor" que desea elevar a "Instructor externo"',
|
|
31
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
name: 'Nombre del objetivo',
|
|
3
|
+
link_to: 'Enlace a',
|
|
4
|
+
included: 'Incluido',
|
|
5
|
+
whole_course: 'Curso completo',
|
|
6
|
+
whole_course_page: 'Elegir página de inicio del curso completo',
|
|
7
|
+
content_with_children: 'Contenido con páginas secundarias',
|
|
8
|
+
content_no_children: 'Página de contenido único',
|
|
9
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import content from './content'
|
|
2
|
+
import settings from './settings'
|
|
3
|
+
import navigation from './navigation'
|
|
4
|
+
import integration from './integration'
|
|
5
|
+
import externalIntegration from './external_integration'
|
|
6
|
+
import fileImport from './file_import'
|
|
7
|
+
|
|
8
|
+
export default {
|
|
9
|
+
content,
|
|
10
|
+
settings,
|
|
11
|
+
navigation,
|
|
12
|
+
integration,
|
|
13
|
+
external_integration: externalIntegration,
|
|
14
|
+
file_import: fileImport,
|
|
15
|
+
}
|