@falkenslab/moodle-driver 0.5.1 → 0.6.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/dist/areas/activities/build.d.ts +15 -5
- package/dist/areas/activities/build.js +33 -10
- package/dist/areas/activities/build.js.map +1 -1
- package/dist/areas/activities/content.d.ts +3 -1
- package/dist/areas/activities/content.js +9 -1
- package/dist/areas/activities/content.js.map +1 -1
- package/dist/areas/courses/list.d.ts +5 -3
- package/dist/areas/courses/list.js +9 -3
- package/dist/areas/courses/list.js.map +1 -1
- package/dist/areas/courses/structure.d.ts +5 -1
- package/dist/areas/courses/structure.js +3 -1
- package/dist/areas/courses/structure.js.map +1 -1
- package/dist/areas/forums/discussions.d.ts +16 -0
- package/dist/areas/forums/discussions.js +30 -3
- package/dist/areas/forums/discussions.js.map +1 -1
- package/dist/areas/forums/posts.d.ts +35 -4
- package/dist/areas/forums/posts.js +57 -9
- package/dist/areas/forums/posts.js.map +1 -1
- package/dist/areas/participants/methods.d.ts +9 -6
- package/dist/areas/participants/methods.js +91 -39
- package/dist/areas/participants/methods.js.map +1 -1
- package/dist/categories.js +3 -0
- package/dist/categories.js.map +1 -1
- package/dist/cli/commands.generated.js +72 -9
- package/dist/cli/commands.generated.js.map +1 -1
- package/dist/client.js +2 -1
- package/dist/client.js.map +1 -1
- package/dist/core/embed.d.ts +19 -0
- package/dist/core/embed.js +88 -0
- package/dist/core/embed.js.map +1 -0
- package/dist/core/forms.d.ts +3 -1
- package/dist/core/forms.js +10 -3
- package/dist/core/forms.js.map +1 -1
- package/dist/core/text.d.ts +10 -0
- package/dist/core/text.js +19 -0
- package/dist/core/text.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internals.d.ts +1 -1
- package/dist/internals.js +1 -1
- package/dist/internals.js.map +1 -1
- package/dist/moodle-methods.generated.d.ts +46 -14
- package/package.json +1 -1
|
@@ -22,6 +22,11 @@ export interface ActivityFields {
|
|
|
22
22
|
/** When it counts as complete. */
|
|
23
23
|
completion?: Completion;
|
|
24
24
|
settings?: Record<string, FieldValue>;
|
|
25
|
+
/**
|
|
26
|
+
* Local files (absolute paths) to embed in the description, the content or an editor in `settings`,
|
|
27
|
+
* as Moodle's editor inserts them: the HTML names each by its file name (`<img src="shot.png">`).
|
|
28
|
+
*/
|
|
29
|
+
embed?: string[];
|
|
25
30
|
}
|
|
26
31
|
/** What a change did, its new id when it created something, and the course afterwards. */
|
|
27
32
|
export interface CourseChange {
|
|
@@ -73,22 +78,27 @@ export declare function editActivity(context: BrowserContext, siteUrl: string, c
|
|
|
73
78
|
export declare function duplicateActivity(context: BrowserContext, siteUrl: string, courseId: number, activityId: number): Promise<CourseChange>;
|
|
74
79
|
/** Deletes an activity, with its participants' data (submissions, posts, attempts); gives the course afterwards. */
|
|
75
80
|
export declare function deleteActivity(context: BrowserContext, siteUrl: string, courseId: number, activityId: number): Promise<CourseChange>;
|
|
76
|
-
/**
|
|
77
|
-
|
|
81
|
+
/**
|
|
82
|
+
* Adds a section after another one (at the end without it), named when a name is given, with a
|
|
83
|
+
* description (HTML) when `summary` is, and `embed`'s local files in it (`<img src="shot.png">`).
|
|
84
|
+
*/
|
|
85
|
+
export declare function addSection(context: BrowserContext, siteUrl: string, courseId: number, { name, afterSectionId, summary, embed }?: {
|
|
78
86
|
name?: string;
|
|
79
87
|
afterSectionId?: number;
|
|
80
88
|
summary?: string;
|
|
89
|
+
embed?: string[];
|
|
81
90
|
}): Promise<CourseChange>;
|
|
82
91
|
/**
|
|
83
|
-
* Renames, shows or hides, describes (`summary`, HTML
|
|
84
|
-
* removes them) or moves a section after another one.
|
|
92
|
+
* Renames, shows or hides, describes (`summary`, HTML, with `embed`'s local files in it), restricts
|
|
93
|
+
* (`restrictions`; `{ conditions: [] }` removes them) or moves a section after another one.
|
|
85
94
|
*/
|
|
86
|
-
export declare function editSection(context: BrowserContext, siteUrl: string, courseId: number, sectionId: number, { name, visible, summary, restrictions, afterSectionId }: {
|
|
95
|
+
export declare function editSection(context: BrowserContext, siteUrl: string, courseId: number, sectionId: number, { name, visible, summary, restrictions, afterSectionId, embed, }: {
|
|
87
96
|
name?: string;
|
|
88
97
|
visible?: boolean;
|
|
89
98
|
summary?: string;
|
|
90
99
|
restrictions?: Restrictions;
|
|
91
100
|
afterSectionId?: number;
|
|
101
|
+
embed?: string[];
|
|
92
102
|
}): Promise<CourseChange>;
|
|
93
103
|
/** Deletes a section and every activity in it, with their participants' data. */
|
|
94
104
|
export declare function deleteSection(context: BrowserContext, siteUrl: string, courseId: number, sectionId: number): Promise<CourseChange>;
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import { courseState } from "../courses/state.js";
|
|
6
6
|
import { editCourse, renameActivity, renameSection } from "../../core/editor.js";
|
|
7
|
+
import { checkEmbeds, editorTexts, embedFiles } from "../../core/embed.js";
|
|
7
8
|
import { checkLocalFiles } from "../../core/files.js";
|
|
8
9
|
import { deleteDraftFile, draftFiles, formValue, openForm, setFields, submitForm, uploadToDraft } from "../../core/forms.js";
|
|
9
10
|
import { inPage } from "../../core/inPage.js";
|
|
@@ -16,6 +17,10 @@ import { completionValues, gradeItemsByActivity, hasGradeCondition, parseRestric
|
|
|
16
17
|
export const ACTIVITY_VISIBILITIES = ["shown", "hidden", "stealth"];
|
|
17
18
|
const FORM_VISIBILITY = { shown: 1, hidden: 0, stealth: -1 };
|
|
18
19
|
const VISIBILITY_ACTIONS = { shown: "cm_show", hidden: "cm_hide", stealth: "cm_stealth" };
|
|
20
|
+
/** The HTML an activity's inputs write: description, content, and the editors' texts in `settings`. */
|
|
21
|
+
function richTextsOf(input) {
|
|
22
|
+
return [input.description, input.content, ...editorTexts(input.settings ?? {})];
|
|
23
|
+
}
|
|
19
24
|
/** The availability field's value for `restrictions`, the gradebook read first when a grade condition needs it. */
|
|
20
25
|
async function availabilityValue(context, siteUrl, courseId, restrictions) {
|
|
21
26
|
const grades = restrictions.conditions.some((c) => c.type === "grade") ? await gradeItemsByActivity(context, siteUrl, courseId) : undefined;
|
|
@@ -107,6 +112,8 @@ async function changeFiles(page, draft, changes) {
|
|
|
107
112
|
export async function createActivity(context, siteUrl, input) {
|
|
108
113
|
if (input.files)
|
|
109
114
|
await checkLocalFiles(localPaths(input.files));
|
|
115
|
+
if (input.embed)
|
|
116
|
+
await checkEmbeds(richTextsOf(input), input.embed);
|
|
110
117
|
const before = await courseState(context, siteUrl, input.courseId);
|
|
111
118
|
const target = before.section.find((s) => Number(s.id) === input.sectionId);
|
|
112
119
|
if (!target)
|
|
@@ -123,7 +130,10 @@ export async function createActivity(context, siteUrl, input) {
|
|
|
123
130
|
await uploadToDraft(page, area.draft, area.single ? input.files.slice(0, 1) : input.files);
|
|
124
131
|
}
|
|
125
132
|
// Hidden unless asked: a teacher publishes after checking.
|
|
126
|
-
|
|
133
|
+
const values = fieldsFor(input.type, { ...input, visibility: input.visibility ?? "hidden" }, await conditionValues(context, siteUrl, page, input.courseId, input));
|
|
134
|
+
if (input.embed)
|
|
135
|
+
await embedFiles(page, values, input.embed);
|
|
136
|
+
await setFields(page, values);
|
|
127
137
|
await submitForm(page, "submitbutton2");
|
|
128
138
|
}
|
|
129
139
|
finally {
|
|
@@ -149,6 +159,8 @@ export async function updateActivity(context, siteUrl, activityId, input) {
|
|
|
149
159
|
throw new MoodleError("Give files.replace alone, or files.add and files.remove.", "invalid-input");
|
|
150
160
|
if (files)
|
|
151
161
|
await checkLocalFiles([...localPaths(files.add), ...localPaths(files.replace)]);
|
|
162
|
+
if (fields.embed)
|
|
163
|
+
await checkEmbeds(richTextsOf(fields), fields.embed);
|
|
152
164
|
const page = await openForm(context, siteUrl, `course/modedit.php?update=${activityId}&return=0`);
|
|
153
165
|
let courseId;
|
|
154
166
|
let filesDone;
|
|
@@ -161,7 +173,10 @@ export async function updateActivity(context, siteUrl, activityId, input) {
|
|
|
161
173
|
throw new MoodleError(`A ${type} has no files in its form.`, "not-available");
|
|
162
174
|
filesDone = await changeFiles(page, area.draft, files);
|
|
163
175
|
}
|
|
164
|
-
|
|
176
|
+
const values = fieldsFor(type, fields, await conditionValues(context, siteUrl, page, courseId, fields));
|
|
177
|
+
if (fields.embed)
|
|
178
|
+
await embedFiles(page, values, fields.embed);
|
|
179
|
+
await setFields(page, values);
|
|
165
180
|
await submitForm(page, "submitbutton2");
|
|
166
181
|
}
|
|
167
182
|
finally {
|
|
@@ -205,12 +220,13 @@ export async function deleteActivity(context, siteUrl, courseId, activityId) {
|
|
|
205
220
|
* Saves fields of a section's own form (`course/editsection.php`): its description, its access
|
|
206
221
|
* restrictions. No service changes them (`core_course_edit_section` only shows, hides and moves).
|
|
207
222
|
*/
|
|
208
|
-
async function saveSectionForm(context, siteUrl, courseId, sectionId, values) {
|
|
223
|
+
async function saveSectionForm(context, siteUrl, courseId, sectionId, values, embed = []) {
|
|
209
224
|
const page = await openForm(context, siteUrl, `course/editsection.php?id=${sectionId}`);
|
|
210
225
|
try {
|
|
211
226
|
// The form edits any section by its id: one of another course is refused, as the course editor's service does.
|
|
212
227
|
if (Number(await formValue(page, "course")) !== courseId)
|
|
213
228
|
throw new MoodleError(`Course ${courseId} has no section ${sectionId}. Take its id from the course structure.`, "not-found");
|
|
229
|
+
await embedFiles(page, values, embed);
|
|
214
230
|
await setFields(page, values);
|
|
215
231
|
await submitForm(page, "submitbutton");
|
|
216
232
|
}
|
|
@@ -218,23 +234,30 @@ async function saveSectionForm(context, siteUrl, courseId, sectionId, values) {
|
|
|
218
234
|
await page.close().catch(() => undefined);
|
|
219
235
|
}
|
|
220
236
|
}
|
|
221
|
-
/**
|
|
222
|
-
|
|
237
|
+
/**
|
|
238
|
+
* Adds a section after another one (at the end without it), named when a name is given, with a
|
|
239
|
+
* description (HTML) when `summary` is, and `embed`'s local files in it (`<img src="shot.png">`).
|
|
240
|
+
*/
|
|
241
|
+
export async function addSection(context, siteUrl, courseId, { name, afterSectionId, summary, embed } = {}) {
|
|
242
|
+
if (embed)
|
|
243
|
+
await checkEmbeds([summary], embed);
|
|
223
244
|
const before = new Set((await courseState(context, siteUrl, courseId)).section.map((s) => s.id));
|
|
224
245
|
await editCourse(context, siteUrl, courseId, "section_add", [], { sectionId: afterSectionId });
|
|
225
246
|
const added = (await courseState(context, siteUrl, courseId)).section.find((s) => !before.has(s.id));
|
|
226
247
|
if (added && name !== undefined)
|
|
227
248
|
await renameSection(context, siteUrl, courseId, Number(added.id), name);
|
|
228
249
|
if (added && summary !== undefined)
|
|
229
|
-
await saveSectionForm(context, siteUrl, courseId, Number(added.id), { "summary_editor[text]": summary });
|
|
250
|
+
await saveSectionForm(context, siteUrl, courseId, Number(added.id), { "summary_editor[text]": summary }, embed);
|
|
230
251
|
const extras = `${name !== undefined ? ` as "${name}"` : ""}${summary !== undefined ? " with a description" : ""}`;
|
|
231
252
|
return afterChange(context, siteUrl, courseId, `Section ${added?.id ?? "?"} added${extras}.`, { sectionId: added ? Number(added.id) : undefined });
|
|
232
253
|
}
|
|
233
254
|
/**
|
|
234
|
-
* Renames, shows or hides, describes (`summary`, HTML
|
|
235
|
-
* removes them) or moves a section after another one.
|
|
255
|
+
* Renames, shows or hides, describes (`summary`, HTML, with `embed`'s local files in it), restricts
|
|
256
|
+
* (`restrictions`; `{ conditions: [] }` removes them) or moves a section after another one.
|
|
236
257
|
*/
|
|
237
|
-
export async function editSection(context, siteUrl, courseId, sectionId, { name, visible, summary, restrictions, afterSectionId }) {
|
|
258
|
+
export async function editSection(context, siteUrl, courseId, sectionId, { name, visible, summary, restrictions, afterSectionId, embed, }) {
|
|
259
|
+
if (embed)
|
|
260
|
+
await checkEmbeds([summary], embed);
|
|
238
261
|
const done = [];
|
|
239
262
|
if (name !== undefined) {
|
|
240
263
|
await renameSection(context, siteUrl, courseId, sectionId, name);
|
|
@@ -247,7 +270,7 @@ export async function editSection(context, siteUrl, courseId, sectionId, { name,
|
|
|
247
270
|
values["summary_editor[text]"] = summary;
|
|
248
271
|
if (restrictions !== undefined)
|
|
249
272
|
values.availabilityconditionsjson = await availabilityValue(context, siteUrl, courseId, restrictions);
|
|
250
|
-
await saveSectionForm(context, siteUrl, courseId, sectionId, values);
|
|
273
|
+
await saveSectionForm(context, siteUrl, courseId, sectionId, values, embed);
|
|
251
274
|
if (summary !== undefined)
|
|
252
275
|
done.push(summary === "" ? "description removed" : "description set");
|
|
253
276
|
if (restrictions !== undefined)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/areas/activities/build.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/areas/activities/build.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { BrowserContext } from "playwright-core";
|
|
2
2
|
import type { Trail } from "../../options.js";
|
|
3
|
-
import { type MediaItem } from "../../core/text.js";
|
|
3
|
+
import { type ImageItem, type MediaItem } from "../../core/text.js";
|
|
4
4
|
import { MoodleError } from "../../core/errors.js";
|
|
5
5
|
/** The modules whose content `activityContent` reads. */
|
|
6
6
|
export declare const CONTENT_TYPES: readonly ["page", "book", "label", "url", "resource", "folder"];
|
|
@@ -26,6 +26,8 @@ export interface ActivityContent {
|
|
|
26
26
|
}[];
|
|
27
27
|
/** Videos, audio and players in a page's, label's or book's content. */
|
|
28
28
|
media?: MediaItem[];
|
|
29
|
+
/** The images in a page's, label's or book's content, when it has any: their URLs download with `downloadFile`. */
|
|
30
|
+
images?: ImageItem[];
|
|
29
31
|
/** A URL resource's target. */
|
|
30
32
|
url?: string;
|
|
31
33
|
/** A file resource's or a folder's files. */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { pause, readingSeconds } from "../../core/pace.js";
|
|
2
2
|
import { openSitePage } from "../../core/session.js";
|
|
3
|
-
import { readMedia, readTexts } from "../../core/text.js";
|
|
3
|
+
import { readImages, readMedia, readTexts } from "../../core/text.js";
|
|
4
4
|
import { MoodleError } from "../../core/errors.js";
|
|
5
5
|
/** The modules whose content `activityContent` reads. */
|
|
6
6
|
export const CONTENT_TYPES = ["page", "book", "label", "url", "resource", "folder"];
|
|
@@ -58,12 +58,16 @@ async function readContent(context, siteUrl, activityId, type, { trail = "realis
|
|
|
58
58
|
const page = await view(path, selector);
|
|
59
59
|
output.text = (await readTexts(page, selector))[0] ?? "";
|
|
60
60
|
output.media = await readMedia(page, selector);
|
|
61
|
+
const images = (await readImages(page, selector))[0] ?? [];
|
|
62
|
+
if (images.length > 0)
|
|
63
|
+
output.images = images;
|
|
61
64
|
await page.close();
|
|
62
65
|
await readAsAPerson(output.text);
|
|
63
66
|
}
|
|
64
67
|
else if (type === "book") {
|
|
65
68
|
output.chapters = [];
|
|
66
69
|
const media = [];
|
|
70
|
+
const images = [];
|
|
67
71
|
if (realistic) {
|
|
68
72
|
// Chapter by chapter, following "next", as a reader does.
|
|
69
73
|
const page = await view(`mod/book/view.php?id=${activityId}`, "#region-main .book_content");
|
|
@@ -73,6 +77,7 @@ async function readContent(context, siteUrl, activityId, type, { trail = "realis
|
|
|
73
77
|
const read = chapter(title, (await readTexts(page, "#region-main .book_content"))[0] ?? "");
|
|
74
78
|
output.chapters.push(read);
|
|
75
79
|
media.push(...(await readMedia(page, "#region-main .book_content")));
|
|
80
|
+
images.push(...(await readImages(page, "#region-main .book_content")).flat());
|
|
76
81
|
await readAsAPerson(read.text);
|
|
77
82
|
const next = page.locator("#region-main a.btn-next").first();
|
|
78
83
|
if ((await next.count()) === 0)
|
|
@@ -90,10 +95,13 @@ async function readContent(context, siteUrl, activityId, type, { trail = "realis
|
|
|
90
95
|
const bodies = await readTexts(page, ".book_chapter");
|
|
91
96
|
output.chapters = bodies.map((body, i) => chapter(titles[i] ?? "", body));
|
|
92
97
|
media.push(...(await readMedia(page, ".book_chapter")));
|
|
98
|
+
images.push(...(await readImages(page, ".book_chapter")).flat());
|
|
93
99
|
await page.close();
|
|
94
100
|
}
|
|
95
101
|
// The same video can appear in several chapters: once each.
|
|
96
102
|
output.media = [...new Map(media.map((item) => [item.url, item])).values()];
|
|
103
|
+
if (images.length > 0)
|
|
104
|
+
output.images = [...new Map(images.map((item) => [item.url, item])).values()];
|
|
97
105
|
}
|
|
98
106
|
else if (type === "url") {
|
|
99
107
|
// forceview logs the view and shows the link instead of leaving the site.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"content.js","sourceRoot":"","sources":["../../../src/areas/activities/content.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"content.js","sourceRoot":"","sources":["../../../src/areas/activities/content.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,14 +47,16 @@ export declare class CourseError extends MoodleError {
|
|
|
47
47
|
}
|
|
48
48
|
/**
|
|
49
49
|
* Changes a course's full name, short name, summary (HTML) or any other setting by its form field
|
|
50
|
-
* name, through the course's settings form; returns the course as `listCourses` gives it.
|
|
51
|
-
*
|
|
50
|
+
* name, through the course's settings form; returns the course as `listCourses` gives it. `embed`
|
|
51
|
+
* takes local files the summary names (`<img src="shot.png">`), put in it as Moodle's editor does.
|
|
52
|
+
* Moodle's refusals (a short name already taken) come back as `FormError` by field.
|
|
52
53
|
*/
|
|
53
|
-
export declare function updateCourse(context: BrowserContext, siteUrl: string, courseId: number, { fullName, shortName, summary, settings }: {
|
|
54
|
+
export declare function updateCourse(context: BrowserContext, siteUrl: string, courseId: number, { fullName, shortName, summary, settings, embed }: {
|
|
54
55
|
fullName?: string;
|
|
55
56
|
shortName?: string;
|
|
56
57
|
summary?: string;
|
|
57
58
|
settings?: Record<string, FieldValue>;
|
|
59
|
+
embed?: string[];
|
|
58
60
|
}): Promise<{
|
|
59
61
|
changed: string;
|
|
60
62
|
course?: Course;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { callService } from "../../core/ajax.js";
|
|
2
|
+
import { checkEmbeds, editorTexts, embedFiles } from "../../core/embed.js";
|
|
2
3
|
import { openForm, setFields, submitForm } from "../../core/forms.js";
|
|
3
4
|
import { NotLoggedInError } from "../../core/session.js";
|
|
4
5
|
import { decodeEntities } from "../../core/text.js";
|
|
@@ -43,10 +44,11 @@ export class CourseError extends MoodleError {
|
|
|
43
44
|
}
|
|
44
45
|
/**
|
|
45
46
|
* Changes a course's full name, short name, summary (HTML) or any other setting by its form field
|
|
46
|
-
* name, through the course's settings form; returns the course as `listCourses` gives it.
|
|
47
|
-
*
|
|
47
|
+
* name, through the course's settings form; returns the course as `listCourses` gives it. `embed`
|
|
48
|
+
* takes local files the summary names (`<img src="shot.png">`), put in it as Moodle's editor does.
|
|
49
|
+
* Moodle's refusals (a short name already taken) come back as `FormError` by field.
|
|
48
50
|
*/
|
|
49
|
-
export async function updateCourse(context, siteUrl, courseId, { fullName, shortName, summary, settings }) {
|
|
51
|
+
export async function updateCourse(context, siteUrl, courseId, { fullName, shortName, summary, settings, embed }) {
|
|
50
52
|
const values = { ...settings };
|
|
51
53
|
if (fullName !== undefined)
|
|
52
54
|
values.fullname = fullName;
|
|
@@ -54,6 +56,8 @@ export async function updateCourse(context, siteUrl, courseId, { fullName, short
|
|
|
54
56
|
values.shortname = shortName;
|
|
55
57
|
if (summary !== undefined)
|
|
56
58
|
values["summary_editor[text]"] = summary;
|
|
59
|
+
if (embed)
|
|
60
|
+
await checkEmbeds(editorTexts(values), embed);
|
|
57
61
|
if (Object.keys(values).length === 0)
|
|
58
62
|
return { changed: "Nothing to change.", course: (await listCourses(context, siteUrl)).find((c) => c.id === courseId) };
|
|
59
63
|
const page = await openForm(context, siteUrl, `course/edit.php?id=${courseId}`).catch((error) => {
|
|
@@ -62,6 +66,8 @@ export async function updateCourse(context, siteUrl, courseId, { fullName, short
|
|
|
62
66
|
throw new CourseError(`You can't change course ${courseId}'s settings: it doesn't exist, or you aren't allowed.`);
|
|
63
67
|
});
|
|
64
68
|
try {
|
|
69
|
+
if (embed)
|
|
70
|
+
await embedFiles(page, values, embed);
|
|
65
71
|
await setFields(page, values);
|
|
66
72
|
await submitForm(page, "saveanddisplay");
|
|
67
73
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/areas/courses/list.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAmB,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,8FAA8F;AAC9F,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,CAAU,CAAC;AAIvF,MAAM,sBAAsB,GAAyC,EAAE,GAAG,EAAE,oBAAoB,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAkC7J,0DAA0D;AAC1D,MAAM,UAAU,OAAO,CAAC,OAAkC;IACxD,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACtE,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAiB;IACxC,OAAO;QACL,EAAE,EAAE,GAAG,CAAC,EAAE;QACV,SAAS,EAAE,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC;QACxC,QAAQ,EAAE,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC;QACtC,QAAQ,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS;QAC7E,GAAG,EAAE,GAAG,CAAC,OAAO;QAChB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;QACjC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;QAC7B,QAAQ,EAAE,GAAG,CAAC,WAAW,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QACxF,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;KACpC,CAAC;AACJ,CAAC;AAED,oEAAoE;AACpE,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAuB,EAAE,OAAe,EAAE,iBAAuC,KAAK;IACtH,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,WAAW,CAA8B,OAAO,EAAE,OAAO,EAAE,6DAA6D,EAAE;QAClJ,cAAc,EAAE,sBAAsB,CAAC,cAAc,CAAC;QACtD,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,UAAU;KACjB,CAAC,CAAC;IACH,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAED,6DAA6D;AAC7D,MAAM,OAAO,WAAY,SAAQ,WAAW;IACjC,IAAI,GAAG,aAAa,CAAC;IAC9B,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC3B,CAAC;CACF;AAED
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/areas/courses/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,11 @@ export interface CourseActivity {
|
|
|
14
14
|
url?: string;
|
|
15
15
|
/** Shown to students. */
|
|
16
16
|
visible: boolean;
|
|
17
|
-
/**
|
|
17
|
+
/**
|
|
18
|
+
* The person can open it now: false for a student on an activity hidden from students or blocked by a
|
|
19
|
+
* restriction; true for a teacher on those, since they can see hidden activities (Moodle's
|
|
20
|
+
* `uservisible`, confirmed empirically on Moodle 5.2).
|
|
21
|
+
*/
|
|
18
22
|
availableToMe: boolean;
|
|
19
23
|
restricted: boolean;
|
|
20
24
|
/** The person's completion, when the activity tracks it for them. */
|
|
@@ -21,7 +21,9 @@ export function structureOf(state, details, summaries) {
|
|
|
21
21
|
type: cm.module,
|
|
22
22
|
url: cm.url,
|
|
23
23
|
visible: cm.visible,
|
|
24
|
-
|
|
24
|
+
// Moodle's accessvisible is false for any hidden or restricted activity, whoever looks;
|
|
25
|
+
// uservisible already lets through those the person may see anyway (a teacher's).
|
|
26
|
+
availableToMe: cm.uservisible ?? cm.accessvisible ?? true,
|
|
25
27
|
restricted: cm.hascmrestrictions ?? false,
|
|
26
28
|
completion: state ? { state, complete: cm.isoverallcomplete ?? state !== "incomplete" } : undefined,
|
|
27
29
|
dates: extra && extra.dates.length > 0 ? extra.dates : undefined,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structure.js","sourceRoot":"","sources":["../../../src/areas/courses/structure.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAA0C,MAAM,YAAY,CAAC;AACjH,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,qGAAqG;AACrG,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,eAAe,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"structure.js","sourceRoot":"","sources":["../../../src/areas/courses/structure.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { BrowserContext, Page } from "playwright-core";
|
|
2
|
+
import { type ImageItem } from "../../core/text.js";
|
|
2
3
|
import { MoodleError } from "../../core/errors.js";
|
|
3
4
|
/** The id isn't a forum's course module, or the person can't see it. */
|
|
4
5
|
export declare class NotAForumError extends MoodleError {
|
|
@@ -27,6 +28,8 @@ export interface DiscussionRow {
|
|
|
27
28
|
replies: number;
|
|
28
29
|
locked: boolean;
|
|
29
30
|
pinned: boolean;
|
|
31
|
+
/** Whether the person is subscribed to it (to the discussion, or to the whole forum without opting out of it). */
|
|
32
|
+
subscribed: boolean;
|
|
30
33
|
/** The forum's instance id, which the forum's services take. */
|
|
31
34
|
forumInstanceId?: number;
|
|
32
35
|
}
|
|
@@ -59,7 +62,20 @@ export declare function discussionPosts(context: BrowserContext, siteUrl: string
|
|
|
59
62
|
forumid: number;
|
|
60
63
|
courseid: number;
|
|
61
64
|
}>;
|
|
65
|
+
/**
|
|
66
|
+
* Whether the person is subscribed to a discussion, from its page's subscription toggle (in the
|
|
67
|
+
* discussion's settings menu): `data-targetstate="0"` when subscribed, "1" when not. Undefined when
|
|
68
|
+
* the page has no toggle for it (the person can't subscribe, or the subscription is forced).
|
|
69
|
+
*/
|
|
70
|
+
export declare function readDiscussionSubscription(html: string, discussionId: number): boolean | undefined;
|
|
71
|
+
/** The person's subscription to a discussion, read from its page over HTTP (no service gives it). */
|
|
72
|
+
export declare function discussionSubscription(context: BrowserContext, siteUrl: string, discussionId: number): Promise<boolean | undefined>;
|
|
62
73
|
/** Plain text of Moodle-cleaned HTML fragments, parsed in a blank tab. */
|
|
63
74
|
export declare function htmlToTexts(context: BrowserContext, fragments: string[]): Promise<string[]>;
|
|
75
|
+
/** Plain text and images of Moodle-cleaned HTML fragments, parsed in a blank tab. */
|
|
76
|
+
export declare function readFragments(context: BrowserContext, fragments: string[]): Promise<{
|
|
77
|
+
text: string;
|
|
78
|
+
images: ImageItem[];
|
|
79
|
+
}[]>;
|
|
64
80
|
/** A forum's instance id (what `post.php?forum=` takes), from its page. */
|
|
65
81
|
export declare function forumInstanceId(context: BrowserContext, siteUrl: string, activityId: number): Promise<number>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { MoodleServiceError, callService } from "../../core/ajax.js";
|
|
2
|
-
import { openSitePage } from "../../core/session.js";
|
|
3
|
-
import { readTexts } from "../../core/text.js";
|
|
2
|
+
import { fetchSitePage, openSitePage } from "../../core/session.js";
|
|
3
|
+
import { readImages, readTexts } from "../../core/text.js";
|
|
4
4
|
import { MoodleError } from "../../core/errors.js";
|
|
5
5
|
/** The id isn't a forum's course module, or the person can't see it. */
|
|
6
6
|
export class NotAForumError extends MoodleError {
|
|
@@ -48,6 +48,8 @@ export function readDiscussionRows(page) {
|
|
|
48
48
|
replies: Number((repliesCell?.textContent ?? "0").trim()),
|
|
49
49
|
locked: locked !== null && !locked.hasAttribute("hidden"),
|
|
50
50
|
pinned: /\bpinned\b/.test(row.className),
|
|
51
|
+
// Moodle marks the row of a discussion the person is subscribed to, toggle or not.
|
|
52
|
+
subscribed: /\bsubscribed\b/.test(row.className),
|
|
51
53
|
forumInstanceId: Number(row.getAttribute("data-forumid")) || undefined,
|
|
52
54
|
};
|
|
53
55
|
});
|
|
@@ -88,14 +90,39 @@ export async function discussionPosts(context, siteUrl, discussionId) {
|
|
|
88
90
|
throw error;
|
|
89
91
|
}
|
|
90
92
|
}
|
|
93
|
+
/**
|
|
94
|
+
* Whether the person is subscribed to a discussion, from its page's subscription toggle (in the
|
|
95
|
+
* discussion's settings menu): `data-targetstate="0"` when subscribed, "1" when not. Undefined when
|
|
96
|
+
* the page has no toggle for it (the person can't subscribe, or the subscription is forced).
|
|
97
|
+
*/
|
|
98
|
+
export function readDiscussionSubscription(html, discussionId) {
|
|
99
|
+
for (const tag of html.match(/<(?:a|input)\b[^>]*\bdata-type="subscription-toggle"[^>]*>/g) ?? []) {
|
|
100
|
+
if (!tag.includes(`data-discussionid="${discussionId}"`))
|
|
101
|
+
continue;
|
|
102
|
+
const target = /\bdata-targetstate="([01])"/.exec(tag)?.[1];
|
|
103
|
+
if (target !== undefined)
|
|
104
|
+
return target === "0";
|
|
105
|
+
}
|
|
106
|
+
return undefined;
|
|
107
|
+
}
|
|
108
|
+
/** The person's subscription to a discussion, read from its page over HTTP (no service gives it). */
|
|
109
|
+
export async function discussionSubscription(context, siteUrl, discussionId) {
|
|
110
|
+
const { html } = await fetchSitePage(context, siteUrl, `mod/forum/discuss.php?d=${discussionId}`, { follow: false });
|
|
111
|
+
return readDiscussionSubscription(html, discussionId);
|
|
112
|
+
}
|
|
91
113
|
/** Plain text of Moodle-cleaned HTML fragments, parsed in a blank tab. */
|
|
92
114
|
export async function htmlToTexts(context, fragments) {
|
|
115
|
+
return (await readFragments(context, fragments)).map((fragment) => fragment.text);
|
|
116
|
+
}
|
|
117
|
+
/** Plain text and images of Moodle-cleaned HTML fragments, parsed in a blank tab. */
|
|
118
|
+
export async function readFragments(context, fragments) {
|
|
93
119
|
if (fragments.length === 0)
|
|
94
120
|
return [];
|
|
95
121
|
const page = await context.newPage();
|
|
96
122
|
try {
|
|
97
123
|
await page.setContent(fragments.map((html) => `<div class="driver-fragment">${html}</div>`).join(""));
|
|
98
|
-
|
|
124
|
+
const [texts, images] = await Promise.all([readTexts(page, "body > .driver-fragment"), readImages(page, "body > .driver-fragment")]);
|
|
125
|
+
return texts.map((text, i) => ({ text, images: images[i] ?? [] }));
|
|
99
126
|
}
|
|
100
127
|
finally {
|
|
101
128
|
await page.close().catch(() => undefined);
|