Merge branch 'mdl-77329-master-clr' of https://github.com/ferranrecio/moodle

This commit is contained in:
Andrew Nicols
2023-03-09 22:18:25 +08:00
3 changed files with 11 additions and 5 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -444,6 +444,9 @@ export default class {
*/
async sectionIndexCollapsed(stateManager, sectionIds, collapsed) {
const collapsedIds = this._updateStateSectionPreference(stateManager, 'indexcollapsed', sectionIds, collapsed);
if (!collapsedIds) {
return;
}
const course = stateManager.get('course');
await this._callEditWebservice('section_index_collapsed', course.id, collapsedIds);
}
@@ -457,6 +460,9 @@ export default class {
*/
async sectionContentCollapsed(stateManager, sectionIds, collapsed) {
const collapsedIds = this._updateStateSectionPreference(stateManager, 'contentcollapsed', sectionIds, collapsed);
if (!collapsedIds) {
return;
}
const course = stateManager.get('course');
await this._callEditWebservice('section_content_collapsed', course.id, collapsedIds);
}
@@ -468,7 +474,7 @@ export default class {
* @param {string} preferenceName the preference name
* @param {array} sectionIds the affected section ids
* @param {boolean} preferenceValue the new preferenceValue value
* @return {array} the list of all sections with that preference set to true
* @return {Number[]|null} sections ids with the preference value true or null if no update is required
*/
_updateStateSectionPreference(stateManager, preferenceName, sectionIds, preferenceValue) {
stateManager.setReadOnly(false);
@@ -477,7 +483,7 @@ export default class {
sectionIds.forEach(sectionId => {
const section = stateManager.get('section', sectionId);
if (section === undefined) {
return;
return null;
}
const newValue = preferenceValue ?? section[preferenceName];
if (section[preferenceName] != newValue) {
@@ -487,7 +493,7 @@ export default class {
});
stateManager.setReadOnly(true);
if (affectedSections.size == 0) {
return [];
return null;
}
// Get all collapsed section ids.
const collapsedSectionIds = [];