commit
f10edf083c
|
@ -15,6 +15,7 @@
|
||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
import { CoreLoggerProvider } from '@providers/logger';
|
import { CoreLoggerProvider } from '@providers/logger';
|
||||||
import { CoreSitesProvider } from '@providers/sites';
|
import { CoreSitesProvider } from '@providers/sites';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service to handle badges.
|
* Service to handle badges.
|
||||||
|
@ -79,11 +80,12 @@ export class AddonBadgesProvider {
|
||||||
courseid : courseId,
|
courseid : courseId,
|
||||||
userid : userId
|
userid : userId
|
||||||
},
|
},
|
||||||
presets = {
|
preSets = {
|
||||||
cacheKey: this.getBadgesCacheKey(courseId, userId)
|
cacheKey: this.getBadgesCacheKey(courseId, userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_badges_get_user_badges', data, presets).then((response) => {
|
return site.read('core_badges_get_user_badges', data, preSets).then((response) => {
|
||||||
if (response && response.badges) {
|
if (response && response.badges) {
|
||||||
return response.badges;
|
return response.badges;
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -17,6 +17,7 @@ import { CoreLoggerProvider } from '@providers/logger';
|
||||||
import { CoreSitesProvider } from '@providers/sites';
|
import { CoreSitesProvider } from '@providers/sites';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CorePushNotificationsProvider } from '@core/pushnotifications/providers/pushnotifications';
|
import { CorePushNotificationsProvider } from '@core/pushnotifications/providers/pushnotifications';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service to handle blog entries.
|
* Service to handle blog entries.
|
||||||
|
@ -76,7 +77,8 @@ export class AddonBlogProvider {
|
||||||
};
|
};
|
||||||
|
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getEntriesCacheKey(filter)
|
cacheKey: this.getEntriesCacheKey(filter),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_blog_get_entries', data, preSets);
|
return site.read('core_blog_get_entries', data, preSets);
|
||||||
|
|
|
@ -292,7 +292,8 @@ export class AddonCalendarProvider {
|
||||||
getEvent(id: number, siteId?: string): Promise<any> {
|
getEvent(id: number, siteId?: string): Promise<any> {
|
||||||
return this.sitesProvider.getSite(siteId).then((site) => {
|
return this.sitesProvider.getSite(siteId).then((site) => {
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getEventCacheKey(id)
|
cacheKey: this.getEventCacheKey(id),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
},
|
},
|
||||||
data = {
|
data = {
|
||||||
options: {
|
options: {
|
||||||
|
@ -332,7 +333,8 @@ export class AddonCalendarProvider {
|
||||||
cacheKey: this.getEventCacheKey(id)
|
cacheKey: this.getEventCacheKey(id)
|
||||||
},
|
},
|
||||||
data = {
|
data = {
|
||||||
eventid: id
|
eventid: id,
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_calendar_get_calendar_event_by_id', data, preSets).then((response) => {
|
return site.read('core_calendar_get_calendar_event_by_id', data, preSets).then((response) => {
|
||||||
|
@ -469,7 +471,8 @@ export class AddonCalendarProvider {
|
||||||
// We need to retrieve cached data using cache key because we have timestamp in the params.
|
// We need to retrieve cached data using cache key because we have timestamp in the params.
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getEventsListCacheKey(daysToStart, daysInterval),
|
cacheKey: this.getEventsListCacheKey(daysToStart, daysInterval),
|
||||||
getCacheUsingCacheKey: true
|
getCacheUsingCacheKey: true,
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_calendar_get_calendar_events', data, preSets).then((response) => {
|
return site.read('core_calendar_get_calendar_events', data, preSets).then((response) => {
|
||||||
|
|
|
@ -16,6 +16,7 @@ import { Injectable } from '@angular/core';
|
||||||
import { CoreLoggerProvider } from '@providers/logger';
|
import { CoreLoggerProvider } from '@providers/logger';
|
||||||
import { CoreSitesProvider } from '@providers/sites';
|
import { CoreSitesProvider } from '@providers/sites';
|
||||||
import { CorePushNotificationsProvider } from '@core/pushnotifications/providers/pushnotifications';
|
import { CorePushNotificationsProvider } from '@core/pushnotifications/providers/pushnotifications';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service to handle caompetency learning plans.
|
* Service to handle caompetency learning plans.
|
||||||
|
@ -156,7 +157,8 @@ export class AddonCompetencyProvider {
|
||||||
userid: userId
|
userid: userId
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getLearningPlansCacheKey(userId)
|
cacheKey: this.getLearningPlansCacheKey(userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('tool_lp_data_for_plans_page', params, preSets).then((response) => {
|
return site.read('tool_lp_data_for_plans_page', params, preSets).then((response) => {
|
||||||
|
@ -185,7 +187,8 @@ export class AddonCompetencyProvider {
|
||||||
planid: planId
|
planid: planId
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getLearningPlanCacheKey(planId)
|
cacheKey: this.getLearningPlanCacheKey(planId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('tool_lp_data_for_plan_page', params, preSets).then((response) => {
|
return site.read('tool_lp_data_for_plan_page', params, preSets).then((response) => {
|
||||||
|
@ -216,7 +219,8 @@ export class AddonCompetencyProvider {
|
||||||
competencyid: competencyId
|
competencyid: competencyId
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getCompetencyInPlanCacheKey(planId, competencyId)
|
cacheKey: this.getCompetencyInPlanCacheKey(planId, competencyId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('tool_lp_data_for_user_competency_summary_in_plan', params, preSets).then((response) => {
|
return site.read('tool_lp_data_for_user_competency_summary_in_plan', params, preSets).then((response) => {
|
||||||
|
@ -253,7 +257,8 @@ export class AddonCompetencyProvider {
|
||||||
userid: userId
|
userid: userId
|
||||||
},
|
},
|
||||||
preSets: any = {
|
preSets: any = {
|
||||||
cacheKey: this.getCompetencyInCourseCacheKey(courseId, competencyId, userId)
|
cacheKey: this.getCompetencyInCourseCacheKey(courseId, competencyId, userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -291,7 +296,8 @@ export class AddonCompetencyProvider {
|
||||||
userid: userId
|
userid: userId
|
||||||
},
|
},
|
||||||
preSets: any = {
|
preSets: any = {
|
||||||
cacheKey: this.getCompetencySummaryCacheKey(competencyId, userId)
|
cacheKey: this.getCompetencySummaryCacheKey(competencyId, userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -327,7 +333,8 @@ export class AddonCompetencyProvider {
|
||||||
courseid: courseId
|
courseid: courseId
|
||||||
},
|
},
|
||||||
preSets: any = {
|
preSets: any = {
|
||||||
cacheKey: this.getCourseCompetenciesCacheKey(courseId)
|
cacheKey: this.getCourseCompetenciesCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
|
|
@ -17,6 +17,7 @@ import { CoreLoggerProvider } from '@providers/logger';
|
||||||
import { CoreSitesProvider } from '@providers/sites';
|
import { CoreSitesProvider } from '@providers/sites';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreCoursesProvider } from '@core/courses/providers/courses';
|
import { CoreCoursesProvider } from '@core/courses/providers/courses';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service to handle course completion.
|
* Service to handle course completion.
|
||||||
|
@ -108,6 +109,7 @@ export class AddonCourseCompletionProvider {
|
||||||
};
|
};
|
||||||
|
|
||||||
preSets.cacheKey = this.getCompletionCacheKey(courseId, userId);
|
preSets.cacheKey = this.getCompletionCacheKey(courseId, userId);
|
||||||
|
preSets.updateFrequency = preSets.updateFrequency || CoreSite.FREQUENCY_SOMETIMES;
|
||||||
|
|
||||||
return site.read('core_completion_get_course_completion_status', data, preSets).then((data) => {
|
return site.read('core_completion_get_course_completion_status', data, preSets).then((data) => {
|
||||||
if (data.completionstatus) {
|
if (data.completionstatus) {
|
||||||
|
|
|
@ -77,7 +77,8 @@ export class AddonFilesProvider {
|
||||||
|
|
||||||
return this.sitesProvider.getSite(siteId).then((site) => {
|
return this.sitesProvider.getSite(siteId).then((site) => {
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getFilesListCacheKey(params)
|
cacheKey: this.getFilesListCacheKey(params),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_files_get_files', params, preSets);
|
return site.read('core_files_get_files', params, preSets);
|
||||||
|
@ -171,7 +172,8 @@ export class AddonFilesProvider {
|
||||||
userid: userId
|
userid: userId
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getPrivateFilesInfoCacheKey(userId)
|
cacheKey: this.getPrivateFilesInfoCacheKey(userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_user_get_private_files_info', params, preSets);
|
return site.read('core_user_get_private_files_info', params, preSets);
|
||||||
|
|
|
@ -16,6 +16,7 @@ import { Injectable } from '@angular/core';
|
||||||
import { CoreLoggerProvider } from '@providers/logger';
|
import { CoreLoggerProvider } from '@providers/logger';
|
||||||
import { CoreSitesProvider } from '@providers/sites';
|
import { CoreSitesProvider } from '@providers/sites';
|
||||||
import { CoreConfigConstants } from '../../../../configconstants';
|
import { CoreConfigConstants } from '../../../../configconstants';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service to handle Airnotifier message output.
|
* Service to handle Airnotifier message output.
|
||||||
|
@ -81,7 +82,8 @@ export class AddonMessageOutputAirnotifierProvider {
|
||||||
appid: CoreConfigConstants.app_id
|
appid: CoreConfigConstants.app_id
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getUserDevicesCacheKey()
|
cacheKey: this.getUserDevicesCacheKey(),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('message_airnotifier_get_user_devices', data, preSets).then((data) => {
|
return site.read('message_airnotifier_get_user_devices', data, preSets).then((data) => {
|
||||||
|
|
|
@ -571,7 +571,8 @@ export class AddonMessagesProvider {
|
||||||
userid: userId
|
userid: userId
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getCacheKeyForBlockedContacts(userId)
|
cacheKey: this.getCacheKeyForBlockedContacts(userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_message_get_blocked_users', params, preSets);
|
return site.read('core_message_get_blocked_users', params, preSets);
|
||||||
|
@ -590,7 +591,8 @@ export class AddonMessagesProvider {
|
||||||
getContacts(siteId?: string): Promise<any> {
|
getContacts(siteId?: string): Promise<any> {
|
||||||
return this.sitesProvider.getSite(siteId).then((site) => {
|
return this.sitesProvider.getSite(siteId).then((site) => {
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getCacheKeyForContacts()
|
cacheKey: this.getCacheKeyForContacts(),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_message_get_contacts', undefined, preSets).then((contacts) => {
|
return site.read('core_message_get_contacts', undefined, preSets).then((contacts) => {
|
||||||
|
@ -632,7 +634,8 @@ export class AddonMessagesProvider {
|
||||||
limitnum: limitNum <= 0 ? 0 : limitNum + 1
|
limitnum: limitNum <= 0 ? 0 : limitNum + 1
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getCacheKeyForUserContacts()
|
cacheKey: this.getCacheKeyForUserContacts(),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_message_get_user_contacts', params, preSets).then((contacts) => {
|
return site.read('core_message_get_user_contacts', params, preSets).then((contacts) => {
|
||||||
|
@ -673,7 +676,8 @@ export class AddonMessagesProvider {
|
||||||
limitnum: limitNum <= 0 ? 0 : limitNum + 1
|
limitnum: limitNum <= 0 ? 0 : limitNum + 1
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getCacheKeyForContactRequests()
|
cacheKey: this.getCacheKeyForContactRequests(),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_message_get_contact_requests', data, preSets).then((requests) => {
|
return site.read('core_message_get_contact_requests', data, preSets).then((requests) => {
|
||||||
|
@ -837,7 +841,8 @@ export class AddonMessagesProvider {
|
||||||
}
|
}
|
||||||
|
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getCacheKeyForConversationMembers(userId, conversationId)
|
cacheKey: this.getCacheKeyForConversationMembers(userId, conversationId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
},
|
},
|
||||||
params: any = {
|
params: any = {
|
||||||
userid: userId,
|
userid: userId,
|
||||||
|
@ -1272,7 +1277,8 @@ export class AddonMessagesProvider {
|
||||||
userId = userId || site.getUserId();
|
userId = userId || site.getUserId();
|
||||||
|
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getCacheKeyForMemberInfo(userId, otherUserId)
|
cacheKey: this.getCacheKeyForMemberInfo(userId, otherUserId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
},
|
},
|
||||||
params: any = {
|
params: any = {
|
||||||
referenceuserid: userId,
|
referenceuserid: userId,
|
||||||
|
@ -1312,7 +1318,8 @@ export class AddonMessagesProvider {
|
||||||
|
|
||||||
return this.sitesProvider.getSite(siteId).then((site) => {
|
return this.sitesProvider.getSite(siteId).then((site) => {
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getMessagePreferencesCacheKey()
|
cacheKey: this.getMessagePreferencesCacheKey(),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_message_get_user_message_preferences', {}, preSets).then((data) => {
|
return site.read('core_message_get_user_message_preferences', {}, preSets).then((data) => {
|
||||||
|
|
|
@ -25,7 +25,7 @@ import { CoreGradesProvider } from '@core/grades/providers/grades';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { AddonModAssignSubmissionDelegate } from './submission-delegate';
|
import { AddonModAssignSubmissionDelegate } from './submission-delegate';
|
||||||
import { AddonModAssignOfflineProvider } from './assign-offline';
|
import { AddonModAssignOfflineProvider } from './assign-offline';
|
||||||
import { CoreSiteWSPreSets } from '@classes/site';
|
import { CoreSite, CoreSiteWSPreSets } from '@classes/site';
|
||||||
import { CoreInterceptor } from '@classes/interceptor';
|
import { CoreInterceptor } from '@classes/interceptor';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -146,7 +146,8 @@ export class AddonModAssignProvider {
|
||||||
includenotenrolledcourses: 1
|
includenotenrolledcourses: 1
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getAssignmentCacheKey(courseId)
|
cacheKey: this.getAssignmentCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -215,7 +216,8 @@ export class AddonModAssignProvider {
|
||||||
assignmentids: [assignId]
|
assignmentids: [assignId]
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getAssignmentUserMappingsCacheKey(assignId)
|
cacheKey: this.getAssignmentUserMappingsCacheKey(assignId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -437,7 +439,8 @@ export class AddonModAssignProvider {
|
||||||
assignmentids: [assignId]
|
assignmentids: [assignId]
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getSubmissionsCacheKey(assignId)
|
cacheKey: this.getSubmissionsCacheKey(assignId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -642,7 +645,8 @@ export class AddonModAssignProvider {
|
||||||
filter: ''
|
filter: ''
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.listParticipantsCacheKey(assignId, groupId)
|
cacheKey: this.listParticipantsCacheKey(assignId, groupId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
|
|
@ -23,6 +23,7 @@ import { CoreTextUtilsProvider } from '@providers/utils/text';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreCourseProvider } from '@core/course/providers/course';
|
import { CoreCourseProvider } from '@core/course/providers/course';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A book chapter inside the toc list.
|
* A book chapter inside the toc list.
|
||||||
|
@ -97,7 +98,8 @@ export class AddonModBookProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getBookDataCacheKey(courseId)
|
cacheKey: this.getBookDataCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_book_get_books_by_courses', params, preSets).then((response) => {
|
return site.read('mod_book_get_books_by_courses', params, preSets).then((response) => {
|
||||||
|
|
|
@ -18,7 +18,7 @@ import { CoreSitesProvider } from '@providers/sites';
|
||||||
import { CoreUserProvider } from '@core/user/providers/user';
|
import { CoreUserProvider } from '@core/user/providers/user';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreSiteWSPreSets } from '@classes/site';
|
import { CoreSite, CoreSiteWSPreSets } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service that provides some features for chats.
|
* Service that provides some features for chats.
|
||||||
|
@ -47,7 +47,8 @@ export class AddonModChatProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
};
|
};
|
||||||
const preSets: CoreSiteWSPreSets = {
|
const preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getChatsCacheKey(courseId)
|
cacheKey: this.getChatsCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_chat_get_chats_by_courses', params, preSets).then((response) => {
|
return site.read('mod_chat_get_chats_by_courses', params, preSets).then((response) => {
|
||||||
|
@ -214,6 +215,7 @@ export class AddonModChatProvider {
|
||||||
};
|
};
|
||||||
const preSets: CoreSiteWSPreSets = {
|
const preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getSessionsCacheKey(chatId, groupId, showAll),
|
cacheKey: this.getSessionsCacheKey(chatId, groupId, showAll),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
preSets.getFromCache = false;
|
preSets.getFromCache = false;
|
||||||
|
@ -252,7 +254,8 @@ export class AddonModChatProvider {
|
||||||
groupid: groupId
|
groupid: groupId
|
||||||
};
|
};
|
||||||
const preSets: CoreSiteWSPreSets = {
|
const preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getSessionMessagesCacheKey(chatId, sessionStart, groupId)
|
cacheKey: this.getSessionMessagesCacheKey(chatId, sessionStart, groupId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
preSets.getFromCache = false;
|
preSets.getFromCache = false;
|
||||||
|
|
|
@ -19,7 +19,7 @@ import { CoreAppProvider } from '@providers/app';
|
||||||
import { CoreFilepoolProvider } from '@providers/filepool';
|
import { CoreFilepoolProvider } from '@providers/filepool';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { AddonModChoiceOfflineProvider } from './offline';
|
import { AddonModChoiceOfflineProvider } from './offline';
|
||||||
import { CoreSiteWSPreSets } from '@classes/site';
|
import { CoreSite, CoreSiteWSPreSets } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service that provides some features for choices.
|
* Service that provides some features for choices.
|
||||||
|
@ -187,7 +187,8 @@ export class AddonModChoiceProvider {
|
||||||
};
|
};
|
||||||
const preSets: CoreSiteWSPreSets = {
|
const preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getChoiceDataCacheKey(courseId),
|
cacheKey: this.getChoiceDataCacheKey(courseId),
|
||||||
omitExpires: forceCache
|
omitExpires: forceCache,
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
|
@ -252,7 +253,8 @@ export class AddonModChoiceProvider {
|
||||||
choiceid: choiceId
|
choiceid: choiceId
|
||||||
};
|
};
|
||||||
const preSets: CoreSiteWSPreSets = {
|
const preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getChoiceOptionsCacheKey(choiceId)
|
cacheKey: this.getChoiceOptionsCacheKey(choiceId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
|
|
@ -22,6 +22,7 @@ import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { AddonModDataOfflineProvider } from './offline';
|
import { AddonModDataOfflineProvider } from './offline';
|
||||||
import { AddonModDataFieldsDelegate } from './fields-delegate';
|
import { AddonModDataFieldsDelegate } from './fields-delegate';
|
||||||
import { CoreRatingInfo } from '@core/rating/providers/rating';
|
import { CoreRatingInfo } from '@core/rating/providers/rating';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Database entry (online or offline).
|
* Database entry (online or offline).
|
||||||
|
@ -538,7 +539,8 @@ export class AddonModDataProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getDatabaseDataCacheKey(courseId)
|
cacheKey: this.getDatabaseDataCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
preSets['omitExpires'] = true;
|
preSets['omitExpires'] = true;
|
||||||
|
@ -675,7 +677,8 @@ export class AddonModDataProvider {
|
||||||
order: order
|
order: order
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getEntriesCacheKey(dataId, groupId)
|
cacheKey: this.getEntriesCacheKey(dataId, groupId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
|
@ -733,7 +736,8 @@ export class AddonModDataProvider {
|
||||||
returncontents: 1
|
returncontents: 1
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getEntryCacheKey(dataId, entryId)
|
cacheKey: this.getEntryCacheKey(dataId, entryId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -775,7 +779,8 @@ export class AddonModDataProvider {
|
||||||
databaseid: dataId
|
databaseid: dataId
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getFieldsCacheKey(dataId)
|
cacheKey: this.getFieldsCacheKey(dataId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
|
|
|
@ -20,7 +20,7 @@ import { CoreFilepoolProvider } from '@providers/filepool';
|
||||||
import { CoreAppProvider } from '@providers/app';
|
import { CoreAppProvider } from '@providers/app';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { AddonModFeedbackOfflineProvider } from './offline';
|
import { AddonModFeedbackOfflineProvider } from './offline';
|
||||||
import { CoreSiteWSPreSets } from '@classes/site';
|
import { CoreSite, CoreSiteWSPreSets } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service that provides some features for feedbacks.
|
* Service that provides some features for feedbacks.
|
||||||
|
@ -583,7 +583,8 @@ export class AddonModFeedbackProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getFeedbackCacheKey(courseId)
|
cacheKey: this.getFeedbackCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
|
@ -650,7 +651,8 @@ export class AddonModFeedbackProvider {
|
||||||
feedbackid: feedbackId
|
feedbackid: feedbackId
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getItemsDataCacheKey(feedbackId)
|
cacheKey: this.getItemsDataCacheKey(feedbackId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
|
|
@ -18,6 +18,7 @@ import { CoreSitesProvider } from '@providers/sites';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreCourseProvider } from '@core/course/providers/course';
|
import { CoreCourseProvider } from '@core/course/providers/course';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service that provides some features for folder.
|
* Service that provides some features for folder.
|
||||||
|
@ -61,7 +62,8 @@ export class AddonModFolderProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getFolderCacheKey(courseId)
|
cacheKey: this.getFolderCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_folder_get_folders_by_courses', params, preSets).then((response) => {
|
return site.read('mod_folder_get_folders_by_courses', params, preSets).then((response) => {
|
||||||
|
|
|
@ -472,7 +472,8 @@ export class AddonModForumDiscussionPage implements OnDestroy {
|
||||||
const promises = [
|
const promises = [
|
||||||
this.forumProvider.invalidateForumData(this.courseId),
|
this.forumProvider.invalidateForumData(this.courseId),
|
||||||
this.forumProvider.invalidateDiscussionPosts(this.discussionId),
|
this.forumProvider.invalidateDiscussionPosts(this.discussionId),
|
||||||
this.forumProvider.invalidateAccessInformation(this.forumId)
|
this.forumProvider.invalidateAccessInformation(this.forumId),
|
||||||
|
this.forumProvider.invalidateCanAddDiscussion(this.forumId)
|
||||||
];
|
];
|
||||||
|
|
||||||
return this.utils.allPromises(promises).catch(() => {
|
return this.utils.allPromises(promises).catch(() => {
|
||||||
|
|
|
@ -298,7 +298,8 @@ export class AddonModForumProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getForumDataCacheKey(courseId)
|
cacheKey: this.getForumDataCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_forum_get_forums_by_courses', params, preSets);
|
return site.read('mod_forum_get_forums_by_courses', params, preSets);
|
||||||
|
|
|
@ -71,7 +71,8 @@ export class AddonModGlossaryProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getCourseGlossariesCacheKey(courseId)
|
cacheKey: this.getCourseGlossariesCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_glossary_get_glossaries_by_courses', params, preSets).then((result) => {
|
return site.read('mod_glossary_get_glossaries_by_courses', params, preSets).then((result) => {
|
||||||
|
@ -134,7 +135,8 @@ export class AddonModGlossaryProvider {
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getEntriesByAuthorCacheKey(glossaryId, letter, field, sort),
|
cacheKey: this.getEntriesByAuthorCacheKey(glossaryId, letter, field, sort),
|
||||||
omitExpires: forceCache
|
omitExpires: forceCache,
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_glossary_get_entries_by_author', params, preSets);
|
return site.read('mod_glossary_get_entries_by_author', params, preSets);
|
||||||
|
@ -182,7 +184,8 @@ export class AddonModGlossaryProvider {
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getEntriesByCategoryCacheKey(glossaryId, categoryId),
|
cacheKey: this.getEntriesByCategoryCacheKey(glossaryId, categoryId),
|
||||||
omitExpires: forceCache
|
omitExpires: forceCache,
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_glossary_get_entries_by_category', params, preSets);
|
return site.read('mod_glossary_get_entries_by_category', params, preSets);
|
||||||
|
@ -254,7 +257,8 @@ export class AddonModGlossaryProvider {
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getEntriesByDateCacheKey(glossaryId, order, sort),
|
cacheKey: this.getEntriesByDateCacheKey(glossaryId, order, sort),
|
||||||
omitExpires: forceCache
|
omitExpires: forceCache,
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_glossary_get_entries_by_date', params, preSets);
|
return site.read('mod_glossary_get_entries_by_date', params, preSets);
|
||||||
|
@ -311,7 +315,8 @@ export class AddonModGlossaryProvider {
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getEntriesByLetterCacheKey(glossaryId, letter),
|
cacheKey: this.getEntriesByLetterCacheKey(glossaryId, letter),
|
||||||
omitExpires: forceCache
|
omitExpires: forceCache,
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_glossary_get_entries_by_letter', params, preSets);
|
return site.read('mod_glossary_get_entries_by_letter', params, preSets);
|
||||||
|
@ -378,6 +383,7 @@ export class AddonModGlossaryProvider {
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getEntriesBySearchCacheKey(glossaryId, query, fullSearch, order, sort),
|
cacheKey: this.getEntriesBySearchCacheKey(glossaryId, query, fullSearch, order, sort),
|
||||||
omitExpires: forceCache,
|
omitExpires: forceCache,
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_glossary_get_entries_by_search', params, preSets);
|
return site.read('mod_glossary_get_entries_by_search', params, preSets);
|
||||||
|
@ -444,7 +450,8 @@ export class AddonModGlossaryProvider {
|
||||||
limit: limit
|
limit: limit
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getCategoriesCacheKey(glossaryId)
|
cacheKey: this.getCategoriesCacheKey(glossaryId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_glossary_get_categories', params, preSets).then((response) => {
|
return site.read('mod_glossary_get_categories', params, preSets).then((response) => {
|
||||||
|
@ -496,7 +503,8 @@ export class AddonModGlossaryProvider {
|
||||||
id: entryId
|
id: entryId
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getEntryCacheKey(entryId)
|
cacheKey: this.getEntryCacheKey(entryId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_glossary_get_entry_by_id', params, preSets).then((response) => {
|
return site.read('mod_glossary_get_entry_by_id', params, preSets).then((response) => {
|
||||||
|
|
|
@ -20,6 +20,7 @@ import { CoreTextUtilsProvider } from '@providers/utils/text';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreCourseProvider } from '@core/course/providers/course';
|
import { CoreCourseProvider } from '@core/course/providers/course';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service that provides some features for IMSCP.
|
* Service that provides some features for IMSCP.
|
||||||
|
@ -162,7 +163,8 @@ export class AddonModImscpProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
};
|
};
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getImscpDataCacheKey(courseId)
|
cacheKey: this.getImscpDataCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_imscp_get_imscps_by_courses', params, preSets).then((response) => {
|
return site.read('mod_imscp_get_imscps_by_courses', params, preSets).then((response) => {
|
||||||
|
|
|
@ -59,7 +59,8 @@ export class AddonModLabelProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getLabelDataCacheKey(courseId)
|
cacheKey: this.getLabelDataCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
|
|
|
@ -22,7 +22,7 @@ import { CoreDomUtilsProvider } from '@providers/utils/dom';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreGradesProvider } from '@core/grades/providers/grades';
|
import { CoreGradesProvider } from '@core/grades/providers/grades';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { CoreSiteWSPreSets } from '@classes/site';
|
import { CoreSite, CoreSiteWSPreSets } from '@classes/site';
|
||||||
import { AddonModLessonOfflineProvider } from './lesson-offline';
|
import { AddonModLessonOfflineProvider } from './lesson-offline';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1436,7 +1436,8 @@ export class AddonModLessonProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getLessonDataCacheKey(courseId)
|
cacheKey: this.getLessonDataCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
|
@ -1761,7 +1762,8 @@ export class AddonModLessonProvider {
|
||||||
lessonid: lessonId,
|
lessonid: lessonId,
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getPagesCacheKey(lessonId)
|
cacheKey: this.getPagesCacheKey(lessonId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (typeof password == 'string') {
|
if (typeof password == 'string') {
|
||||||
|
@ -2118,7 +2120,8 @@ export class AddonModLessonProvider {
|
||||||
groupid: groupId
|
groupid: groupId
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getRetakesOverviewCacheKey(lessonId, groupId)
|
cacheKey: this.getRetakesOverviewCacheKey(lessonId, groupId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
};
|
};
|
||||||
|
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
|
@ -2348,7 +2351,8 @@ export class AddonModLessonProvider {
|
||||||
lessonattempt: retake
|
lessonattempt: retake
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getUserRetakeCacheKey(lessonId, userId, retake)
|
cacheKey: this.getUserRetakeCacheKey(lessonId, userId, retake),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
|
|
|
@ -21,6 +21,7 @@ import { CoreTextUtilsProvider } from '@providers/utils/text';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreUrlUtilsProvider } from '@providers/utils/url';
|
import { CoreUrlUtilsProvider } from '@providers/utils/url';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
export interface AddonModLtiParam {
|
export interface AddonModLtiParam {
|
||||||
name: string;
|
name: string;
|
||||||
|
@ -108,7 +109,8 @@ export class AddonModLtiProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
};
|
};
|
||||||
const preSets: any = {
|
const preSets: any = {
|
||||||
cacheKey: this.getLtiCacheKey(courseId)
|
cacheKey: this.getLtiCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return this.sitesProvider.getCurrentSite().read('mod_lti_get_ltis_by_courses', params, preSets).then((response) => {
|
return this.sitesProvider.getCurrentSite().read('mod_lti_get_ltis_by_courses', params, preSets).then((response) => {
|
||||||
|
|
|
@ -19,6 +19,7 @@ import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreCourseProvider } from '@core/course/providers/course';
|
import { CoreCourseProvider } from '@core/course/providers/course';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { CoreFilepoolProvider } from '@providers/filepool';
|
import { CoreFilepoolProvider } from '@providers/filepool';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service that provides some features for page.
|
* Service that provides some features for page.
|
||||||
|
@ -63,7 +64,8 @@ export class AddonModPageProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getPageCacheKey(courseId)
|
cacheKey: this.getPageCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_page_get_pages_by_courses', params, preSets).then((response) => {
|
return site.read('mod_page_get_pages_by_courses', params, preSets).then((response) => {
|
||||||
|
|
|
@ -21,7 +21,7 @@ import { CoreDomUtilsProvider } from '@providers/utils/dom';
|
||||||
import { CoreTextUtilsProvider } from '@providers/utils/text';
|
import { CoreTextUtilsProvider } from '@providers/utils/text';
|
||||||
import { CoreTimeUtilsProvider } from '@providers/utils/time';
|
import { CoreTimeUtilsProvider } from '@providers/utils/time';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreSiteWSPreSets } from '@classes/site';
|
import { CoreSite, CoreSiteWSPreSets } from '@classes/site';
|
||||||
import { CoreGradesHelperProvider } from '@core/grades/providers/helper';
|
import { CoreGradesHelperProvider } from '@core/grades/providers/helper';
|
||||||
import { CoreQuestionDelegate } from '@core/question/providers/delegate';
|
import { CoreQuestionDelegate } from '@core/question/providers/delegate';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
|
@ -570,7 +570,8 @@ export class AddonModQuizProvider {
|
||||||
grade: grade
|
grade: grade
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getFeedbackForGradeCacheKey(quizId, grade)
|
cacheKey: this.getFeedbackForGradeCacheKey(quizId, grade),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -687,7 +688,8 @@ export class AddonModQuizProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getQuizDataCacheKey(courseId)
|
cacheKey: this.getQuizDataCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
|
@ -829,7 +831,8 @@ export class AddonModQuizProvider {
|
||||||
quizid: quizId
|
quizid: quizId
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getQuizRequiredQtypesCacheKey(quizId)
|
cacheKey: this.getQuizRequiredQtypesCacheKey(quizId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -991,7 +994,8 @@ export class AddonModQuizProvider {
|
||||||
includepreviews: includePreviews ? 1 : 0
|
includepreviews: includePreviews ? 1 : 0
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getUserAttemptsCacheKey(quizId, userId)
|
cacheKey: this.getUserAttemptsCacheKey(quizId, userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (offline) {
|
if (offline) {
|
||||||
|
|
|
@ -19,6 +19,7 @@ import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreCourseProvider } from '@core/course/providers/course';
|
import { CoreCourseProvider } from '@core/course/providers/course';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { CoreFilepoolProvider } from '@providers/filepool';
|
import { CoreFilepoolProvider } from '@providers/filepool';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service that provides some features for resources.
|
* Service that provides some features for resources.
|
||||||
|
@ -61,7 +62,8 @@ export class AddonModResourceProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getResourceCacheKey(courseId)
|
cacheKey: this.getResourceCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_resource_get_resources_by_courses', params, preSets).then((response) => {
|
return site.read('mod_resource_get_resources_by_courses', params, preSets).then((response) => {
|
||||||
|
|
|
@ -24,7 +24,7 @@ import { CoreTextUtilsProvider } from '@providers/utils/text';
|
||||||
import { CoreTimeUtilsProvider } from '@providers/utils/time';
|
import { CoreTimeUtilsProvider } from '@providers/utils/time';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { AddonModScormOfflineProvider } from './scorm-offline';
|
import { AddonModScormOfflineProvider } from './scorm-offline';
|
||||||
import { CoreSiteWSPreSets } from '@classes/site';
|
import { CoreSite, CoreSiteWSPreSets } from '@classes/site';
|
||||||
import { CoreConstants } from '@core/constants';
|
import { CoreConstants } from '@core/constants';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
|
|
||||||
|
@ -547,7 +547,8 @@ export class AddonModScormProvider {
|
||||||
ignoremissingcompletion: ignoreMissing ? 1 : 0
|
ignoremissingcompletion: ignoreMissing ? 1 : 0
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getAttemptCountCacheKey(scormId, userId)
|
cacheKey: this.getAttemptCountCacheKey(scormId, userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -835,7 +836,8 @@ export class AddonModScormProvider {
|
||||||
scormid: scormId
|
scormid: scormId
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getScosCacheKey(scormId)
|
cacheKey: this.getScosCacheKey(scormId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -1070,7 +1072,8 @@ export class AddonModScormProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getScormDataCacheKey(courseId)
|
cacheKey: this.getScormDataCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
|
|
|
@ -20,7 +20,7 @@ import { CoreAppProvider } from '@providers/app';
|
||||||
import { CoreFilepoolProvider } from '@providers/filepool';
|
import { CoreFilepoolProvider } from '@providers/filepool';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { AddonModSurveyOfflineProvider } from './offline';
|
import { AddonModSurveyOfflineProvider } from './offline';
|
||||||
import { CoreSiteWSPreSets } from '@classes/site';
|
import { CoreSite, CoreSiteWSPreSets } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service that provides some features for surveys.
|
* Service that provides some features for surveys.
|
||||||
|
@ -52,7 +52,8 @@ export class AddonModSurveyProvider {
|
||||||
surveyid: surveyId
|
surveyid: surveyId
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getQuestionsCacheKey(surveyId)
|
cacheKey: this.getQuestionsCacheKey(surveyId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -106,7 +107,8 @@ export class AddonModSurveyProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getSurveyCacheKey(courseId)
|
cacheKey: this.getSurveyCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
|
|
@ -20,6 +20,7 @@ import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreCourseProvider } from '@core/course/providers/course';
|
import { CoreCourseProvider } from '@core/course/providers/course';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { CoreConstants } from '@core/constants';
|
import { CoreConstants } from '@core/constants';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service that provides some features for urls.
|
* Service that provides some features for urls.
|
||||||
|
@ -114,7 +115,8 @@ export class AddonModUrlProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getUrlCacheKey(courseId)
|
cacheKey: this.getUrlCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_url_get_urls_by_courses', params, preSets).then((response) => {
|
return site.read('mod_url_get_urls_by_courses', params, preSets).then((response) => {
|
||||||
|
|
|
@ -22,7 +22,7 @@ import { CoreAppProvider } from '@providers/app';
|
||||||
import { CoreFilepoolProvider } from '@providers/filepool';
|
import { CoreFilepoolProvider } from '@providers/filepool';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { AddonModWikiOfflineProvider } from './wiki-offline';
|
import { AddonModWikiOfflineProvider } from './wiki-offline';
|
||||||
import { CoreSiteWSPreSets } from '@classes/site';
|
import { CoreSite, CoreSiteWSPreSets } from '@classes/site';
|
||||||
|
|
||||||
export interface AddonModWikiSubwikiListData {
|
export interface AddonModWikiSubwikiListData {
|
||||||
/**
|
/**
|
||||||
|
@ -134,7 +134,8 @@ export class AddonModWikiProvider {
|
||||||
pageid: pageId
|
pageid: pageId
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getPageContentsCacheKey(pageId)
|
cacheKey: this.getPageContentsCacheKey(pageId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (offline) {
|
if (offline) {
|
||||||
|
@ -215,7 +216,8 @@ export class AddonModWikiProvider {
|
||||||
userid: userId
|
userid: userId
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getSubwikiFilesCacheKey(wikiId, groupId, userId)
|
cacheKey: this.getSubwikiFilesCacheKey(wikiId, groupId, userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (offline) {
|
if (offline) {
|
||||||
|
@ -299,7 +301,8 @@ export class AddonModWikiProvider {
|
||||||
|
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getSubwikiPagesCacheKey(wikiId, groupId, userId)
|
cacheKey: this.getSubwikiPagesCacheKey(wikiId, groupId, userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (offline) {
|
if (offline) {
|
||||||
|
@ -352,7 +355,8 @@ export class AddonModWikiProvider {
|
||||||
wikiid: wikiId
|
wikiid: wikiId
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getSubwikisCacheKey(wikiId)
|
cacheKey: this.getSubwikisCacheKey(wikiId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (offline) {
|
if (offline) {
|
||||||
|
@ -408,7 +412,8 @@ export class AddonModWikiProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getWikiDataCacheKey(courseId)
|
cacheKey: this.getWikiDataCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('mod_wiki_get_wikis_by_courses', params, preSets).then((response) => {
|
return site.read('mod_wiki_get_wikis_by_courses', params, preSets).then((response) => {
|
||||||
|
|
|
@ -19,6 +19,7 @@ import { CoreSitesProvider } from '@providers/sites';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
import { CoreCourseLogHelperProvider } from '@core/course/providers/log-helper';
|
||||||
import { AddonModWorkshopOfflineProvider } from './offline';
|
import { AddonModWorkshopOfflineProvider } from './offline';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service that provides some features for workshops.
|
* Service that provides some features for workshops.
|
||||||
|
@ -212,7 +213,8 @@ export class AddonModWorkshopProvider {
|
||||||
courseids: [courseId]
|
courseids: [courseId]
|
||||||
};
|
};
|
||||||
const preSets: any = {
|
const preSets: any = {
|
||||||
cacheKey: this.getWorkshopDataCacheKey(courseId)
|
cacheKey: this.getWorkshopDataCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (forceCache) {
|
if (forceCache) {
|
||||||
|
@ -355,7 +357,8 @@ export class AddonModWorkshopProvider {
|
||||||
workshopid: workshopId
|
workshopid: workshopId
|
||||||
};
|
};
|
||||||
const preSets: any = {
|
const preSets: any = {
|
||||||
cacheKey: this.getUserPlanDataCacheKey(workshopId)
|
cacheKey: this.getUserPlanDataCacheKey(workshopId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
};
|
};
|
||||||
|
|
||||||
if (offline) {
|
if (offline) {
|
||||||
|
@ -408,7 +411,8 @@ export class AddonModWorkshopProvider {
|
||||||
groupid: groupId
|
groupid: groupId
|
||||||
};
|
};
|
||||||
const preSets: any = {
|
const preSets: any = {
|
||||||
cacheKey: this.getSubmissionsDataCacheKey(workshopId, userId, groupId)
|
cacheKey: this.getSubmissionsDataCacheKey(workshopId, userId, groupId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
};
|
};
|
||||||
|
|
||||||
if (offline) {
|
if (offline) {
|
||||||
|
@ -539,7 +543,8 @@ export class AddonModWorkshopProvider {
|
||||||
perpage: perPage || AddonModWorkshopProvider.PER_PAGE
|
perpage: perPage || AddonModWorkshopProvider.PER_PAGE
|
||||||
};
|
};
|
||||||
const preSets: any = {
|
const preSets: any = {
|
||||||
cacheKey: this.getGradesReportDataCacheKey(workshopId, groupId)
|
cacheKey: this.getGradesReportDataCacheKey(workshopId, groupId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_OFTEN
|
||||||
};
|
};
|
||||||
|
|
||||||
if (offline) {
|
if (offline) {
|
||||||
|
@ -1004,7 +1009,8 @@ export class AddonModWorkshopProvider {
|
||||||
mode: mode || 'assessment'
|
mode: mode || 'assessment'
|
||||||
};
|
};
|
||||||
const preSets: any = {
|
const preSets: any = {
|
||||||
cacheKey: this.getAssessmentFormDataCacheKey(workshopId, assessmentId, mode)
|
cacheKey: this.getAssessmentFormDataCacheKey(workshopId, assessmentId, mode),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (offline) {
|
if (offline) {
|
||||||
|
|
|
@ -17,7 +17,7 @@ import { CoreAppProvider } from '@providers/app';
|
||||||
import { CoreLoggerProvider } from '@providers/logger';
|
import { CoreLoggerProvider } from '@providers/logger';
|
||||||
import { CoreUtilsProvider } from '@providers/utils/utils';
|
import { CoreUtilsProvider } from '@providers/utils/utils';
|
||||||
import { CoreSitesProvider } from '@providers/sites';
|
import { CoreSitesProvider } from '@providers/sites';
|
||||||
import { CoreSiteWSPreSets } from '@classes/site';
|
import { CoreSite, CoreSiteWSPreSets } from '@classes/site';
|
||||||
import { TranslateService } from '@ngx-translate/core';
|
import { TranslateService } from '@ngx-translate/core';
|
||||||
import { CoreUserProvider } from '@core/user/providers/user';
|
import { CoreUserProvider } from '@core/user/providers/user';
|
||||||
import { AddonNotesOfflineProvider } from './notes-offline';
|
import { AddonNotesOfflineProvider } from './notes-offline';
|
||||||
|
@ -160,20 +160,23 @@ export class AddonNotesProvider {
|
||||||
// The only way to detect if it's enabled is to perform a WS call.
|
// The only way to detect if it's enabled is to perform a WS call.
|
||||||
// We use an invalid user ID (-1) to avoid saving the note if the user has permissions.
|
// We use an invalid user ID (-1) to avoid saving the note if the user has permissions.
|
||||||
const data = {
|
const data = {
|
||||||
notes: [
|
notes: [
|
||||||
{
|
{
|
||||||
userid: -1,
|
userid: -1,
|
||||||
publishstate: 'personal',
|
publishstate: 'personal',
|
||||||
courseid: courseId,
|
courseid: courseId,
|
||||||
text: '',
|
text: '',
|
||||||
format: 1
|
format: 1
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
};
|
},
|
||||||
|
preSets = {
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
|
};
|
||||||
|
|
||||||
/* Use .read to cache data and be able to check it in offline. This means that, if a user loses the capabilities
|
/* Use .read to cache data and be able to check it in offline. This means that, if a user loses the capabilities
|
||||||
to add notes, he'll still see the option in the app. */
|
to add notes, he'll still see the option in the app. */
|
||||||
return this.utils.promiseWorks(site.read('core_notes_create_notes', data));
|
return this.utils.promiseWorks(site.read('core_notes_create_notes', data, preSets));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -232,7 +235,8 @@ export class AddonNotesProvider {
|
||||||
}
|
}
|
||||||
|
|
||||||
const preSets: CoreSiteWSPreSets = {
|
const preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getNotesCacheKey(courseId, userId)
|
cacheKey: this.getNotesCacheKey(courseId, userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
|
|
@ -21,6 +21,7 @@ import { CoreTimeUtilsProvider } from '@providers/utils/time';
|
||||||
import { CoreUserProvider } from '@core/user/providers/user';
|
import { CoreUserProvider } from '@core/user/providers/user';
|
||||||
import { CoreEmulatorHelperProvider } from '@core/emulator/providers/helper';
|
import { CoreEmulatorHelperProvider } from '@core/emulator/providers/helper';
|
||||||
import { AddonMessagesProvider } from '@addon/messages/providers/messages';
|
import { AddonMessagesProvider } from '@addon/messages/providers/messages';
|
||||||
|
import { CoreSite } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Service to handle notifications.
|
* Service to handle notifications.
|
||||||
|
@ -121,7 +122,8 @@ export class AddonNotificationsProvider {
|
||||||
|
|
||||||
return this.sitesProvider.getSite(siteId).then((site) => {
|
return this.sitesProvider.getSite(siteId).then((site) => {
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getNotificationPreferencesCacheKey()
|
cacheKey: this.getNotificationPreferencesCacheKey(),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_message_get_user_notification_preferences', {}, preSets).then((data) => {
|
return site.read('core_message_get_user_notification_preferences', {}, preSets).then((data) => {
|
||||||
|
|
|
@ -117,11 +117,13 @@ export interface CoreSiteWSPreSets {
|
||||||
/**
|
/**
|
||||||
* Wehther a pending request in the queue matching the same function and arguments can be reused instead of adding
|
* Wehther a pending request in the queue matching the same function and arguments can be reused instead of adding
|
||||||
* a new request to the queue. Defaults to true for read requests.
|
* a new request to the queue. Defaults to true for read requests.
|
||||||
|
* @type {boolean}
|
||||||
*/
|
*/
|
||||||
reusePending?: boolean;
|
reusePending?: boolean;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether the request will be be sent immediately as a single request. Defaults to false.
|
* Whether the request will be be sent immediately as a single request. Defaults to false.
|
||||||
|
* @type {boolean}
|
||||||
*/
|
*/
|
||||||
skipQueue?: boolean;
|
skipQueue?: boolean;
|
||||||
|
|
||||||
|
@ -129,6 +131,14 @@ export interface CoreSiteWSPreSets {
|
||||||
* Cache the response if it returns an errorcode present in this list.
|
* Cache the response if it returns an errorcode present in this list.
|
||||||
*/
|
*/
|
||||||
cacheErrors?: string[];
|
cacheErrors?: string[];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Update frequency. This value determines how often the cached data will be updated. Possible values:
|
||||||
|
* CoreSite.FREQUENCY_USUALLY, CoreSite.FREQUENCY_OFTEN, CoreSite.FREQUENCY_SOMETIMES, CoreSite.FREQUENCY_RARELY.
|
||||||
|
* Defaults to CoreSite.FREQUENCY_USUALLY.
|
||||||
|
* @type {number}
|
||||||
|
*/
|
||||||
|
updateFrequency?: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -184,6 +194,12 @@ export class CoreSite {
|
||||||
// @todo Set REQUEST_QUEUE_FORCE_WS to false before the release.
|
// @todo Set REQUEST_QUEUE_FORCE_WS to false before the release.
|
||||||
static REQUEST_QUEUE_FORCE_WS = true; // Use "tool_mobile_call_external_functions" even for calling a single function.
|
static REQUEST_QUEUE_FORCE_WS = true; // Use "tool_mobile_call_external_functions" even for calling a single function.
|
||||||
|
|
||||||
|
// Constants for cache update frequency.
|
||||||
|
static FREQUENCY_USUALLY = 0;
|
||||||
|
static FREQUENCY_OFTEN = 1;
|
||||||
|
static FREQUENCY_SOMETIMES = 2;
|
||||||
|
static FREQUENCY_RARELY = 3;
|
||||||
|
|
||||||
// List of injected services. This class isn't injectable, so it cannot use DI.
|
// List of injected services. This class isn't injectable, so it cannot use DI.
|
||||||
protected appProvider: CoreAppProvider;
|
protected appProvider: CoreAppProvider;
|
||||||
protected dbProvider: CoreDbProvider;
|
protected dbProvider: CoreDbProvider;
|
||||||
|
@ -213,6 +229,14 @@ export class CoreSite {
|
||||||
3.7: 2019052000
|
3.7: 2019052000
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Possible cache update frequencies.
|
||||||
|
protected UPDATE_FREQUENCIES = [
|
||||||
|
CoreConfigConstants.cache_update_frequency_usually || 420000,
|
||||||
|
CoreConfigConstants.cache_update_frequency_often || 1200000,
|
||||||
|
CoreConfigConstants.cache_update_frequency_sometimes || 3600000,
|
||||||
|
CoreConfigConstants.cache_update_frequency_rarely || 43200000
|
||||||
|
];
|
||||||
|
|
||||||
// Rest of variables.
|
// Rest of variables.
|
||||||
protected logger;
|
protected logger;
|
||||||
protected db: SQLiteDB;
|
protected db: SQLiteDB;
|
||||||
|
@ -1016,11 +1040,22 @@ export class CoreSite {
|
||||||
|
|
||||||
return promise.then((entry) => {
|
return promise.then((entry) => {
|
||||||
const now = Date.now();
|
const now = Date.now();
|
||||||
|
let expirationTime;
|
||||||
|
|
||||||
preSets.omitExpires = preSets.omitExpires || !this.appProvider.isOnline();
|
preSets.omitExpires = preSets.omitExpires || !this.appProvider.isOnline();
|
||||||
|
|
||||||
if (!preSets.omitExpires) {
|
if (!preSets.omitExpires) {
|
||||||
if (now > entry.expirationTime) {
|
let expirationDelay = this.UPDATE_FREQUENCIES[preSets.updateFrequency] ||
|
||||||
|
this.UPDATE_FREQUENCIES[CoreSite.FREQUENCY_USUALLY];
|
||||||
|
|
||||||
|
if (this.appProvider.isNetworkAccessLimited()) {
|
||||||
|
// Not WiFi, increase the expiration delay a 50% to decrease the data usage in this case.
|
||||||
|
expirationDelay *= 1.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
expirationTime = entry.expirationTime + expirationDelay;
|
||||||
|
|
||||||
|
if (now > expirationTime) {
|
||||||
this.logger.debug('Cached element found, but it is expired');
|
this.logger.debug('Cached element found, but it is expired');
|
||||||
|
|
||||||
return Promise.reject(null);
|
return Promise.reject(null);
|
||||||
|
@ -1028,8 +1063,12 @@ export class CoreSite {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (typeof entry != 'undefined' && typeof entry.data != 'undefined') {
|
if (typeof entry != 'undefined' && typeof entry.data != 'undefined') {
|
||||||
const expires = (entry.expirationTime - now) / 1000;
|
if (!expirationTime) {
|
||||||
this.logger.info(`Cached element found, id: ${id} expires in ${expires} seconds`);
|
this.logger.info(`Cached element found, id: ${id}. Expiration time ignored.`);
|
||||||
|
} else {
|
||||||
|
const expires = (expirationTime - now) / 1000;
|
||||||
|
this.logger.info(`Cached element found, id: ${id}. Expires in expires in ${expires} seconds`);
|
||||||
|
}
|
||||||
|
|
||||||
return this.textUtils.parseJSON(entry.data, {});
|
return this.textUtils.parseJSON(entry.data, {});
|
||||||
}
|
}
|
||||||
|
@ -1064,15 +1103,15 @@ export class CoreSite {
|
||||||
}
|
}
|
||||||
|
|
||||||
return promise.then(() => {
|
return promise.then(() => {
|
||||||
|
// Since 3.7, the expiration time contains the time the entry is modified instead of the expiration time.
|
||||||
|
// We decided to reuse this field to prevent modifying the database table.
|
||||||
const id = this.getCacheId(method, data),
|
const id = this.getCacheId(method, data),
|
||||||
entry: any = {
|
entry: any = {
|
||||||
id: id,
|
id: id,
|
||||||
data: JSON.stringify(response)
|
data: JSON.stringify(response),
|
||||||
|
expirationTime: Date.now()
|
||||||
};
|
};
|
||||||
let cacheExpirationTime = CoreConfigConstants.cache_expiration_time;
|
|
||||||
|
|
||||||
cacheExpirationTime = isNaN(cacheExpirationTime) ? 300000 : cacheExpirationTime;
|
|
||||||
entry.expirationTime = new Date().getTime() + cacheExpirationTime;
|
|
||||||
if (preSets.cacheKey) {
|
if (preSets.cacheKey) {
|
||||||
entry.key = preSets.cacheKey;
|
entry.key = preSets.cacheKey;
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,10 @@
|
||||||
"desktopappname": "Moodle Desktop",
|
"desktopappname": "Moodle Desktop",
|
||||||
"versioncode": 3700,
|
"versioncode": 3700,
|
||||||
"versionname": "3.7.0-dev",
|
"versionname": "3.7.0-dev",
|
||||||
"cache_expiration_time": 300000,
|
"cache_update_frequency_usually": 420000,
|
||||||
|
"cache_update_frequency_often": 1200000,
|
||||||
|
"cache_update_frequency_sometimes": 3600000,
|
||||||
|
"cache_update_frequency_rarely": 43200000,
|
||||||
"default_lang": "en",
|
"default_lang": "en",
|
||||||
"languages": {
|
"languages": {
|
||||||
"ar": "عربي",
|
"ar": "عربي",
|
||||||
|
|
|
@ -102,7 +102,8 @@ export class CoreCommentsProvider {
|
||||||
};
|
};
|
||||||
|
|
||||||
const preSets = {
|
const preSets = {
|
||||||
cacheKey: this.getCommentsCacheKey(contextLevel, instanceId, component, itemId, area, page)
|
cacheKey: this.getCommentsCacheKey(contextLevel, instanceId, component, itemId, area, page),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_comment_get_comments', params, preSets).then((response) => {
|
return site.read('core_comment_get_comments', params, preSets).then((response) => {
|
||||||
|
|
|
@ -258,7 +258,8 @@ export class CoreCourseProvider {
|
||||||
courseid: courseId
|
courseid: courseId
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getCourseBlocksCacheKey(courseId)
|
cacheKey: this.getCourseBlocksCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_block_get_course_blocks', params, preSets).then((result) => {
|
return site.read('core_block_get_course_blocks', params, preSets).then((result) => {
|
||||||
|
@ -336,7 +337,8 @@ export class CoreCourseProvider {
|
||||||
options: []
|
options: []
|
||||||
};
|
};
|
||||||
const preSets: CoreSiteWSPreSets = {
|
const preSets: CoreSiteWSPreSets = {
|
||||||
omitExpires: preferCache
|
omitExpires: preferCache,
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (includeStealth) {
|
if (includeStealth) {
|
||||||
|
@ -446,7 +448,8 @@ export class CoreCourseProvider {
|
||||||
cmid: moduleId
|
cmid: moduleId
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getModuleCacheKey(moduleId)
|
cacheKey: this.getModuleCacheKey(moduleId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_course_get_course_module', params, preSets).then((response) => {
|
return site.read('core_course_get_course_module', params, preSets).then((response) => {
|
||||||
|
@ -502,7 +505,8 @@ export class CoreCourseProvider {
|
||||||
module: module
|
module: module
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getModuleBasicInfoByInstanceCacheKey(id, module)
|
cacheKey: this.getModuleBasicInfoByInstanceCacheKey(id, module),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_course_get_course_module_by_instance', params, preSets).then((response) => {
|
return site.read('core_course_get_course_module_by_instance', params, preSets).then((response) => {
|
||||||
|
@ -629,6 +633,7 @@ export class CoreCourseProvider {
|
||||||
return this.sitesProvider.getSite(siteId).then((site) => {
|
return this.sitesProvider.getSite(siteId).then((site) => {
|
||||||
preSets = preSets || {};
|
preSets = preSets || {};
|
||||||
preSets.cacheKey = this.getSectionsCacheKey(courseId);
|
preSets.cacheKey = this.getSectionsCacheKey(courseId);
|
||||||
|
preSets.updateFrequency = preSets.updateFrequency || CoreSite.FREQUENCY_RARELY;
|
||||||
|
|
||||||
const params = {
|
const params = {
|
||||||
courseid: courseId,
|
courseid: courseId,
|
||||||
|
|
|
@ -63,7 +63,8 @@ export class CoreCoursesProvider {
|
||||||
addsubcategories: addSubcategories ? 1 : 0
|
addsubcategories: addSubcategories ? 1 : 0
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getCategoriesCacheKey(categoryId, addSubcategories)
|
cacheKey: this.getCategoriesCacheKey(categoryId, addSubcategories),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_course_get_categories', data, preSets);
|
return site.read('core_course_get_categories', data, preSets);
|
||||||
|
@ -271,7 +272,8 @@ export class CoreCoursesProvider {
|
||||||
courseid: id
|
courseid: id
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getCourseEnrolmentMethodsCacheKey(id)
|
cacheKey: this.getCourseEnrolmentMethodsCacheKey(id),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_enrol_get_course_enrolment_methods', params, preSets);
|
return site.read('core_enrol_get_course_enrolment_methods', params, preSets);
|
||||||
|
@ -301,7 +303,8 @@ export class CoreCoursesProvider {
|
||||||
instanceid: instanceId
|
instanceid: instanceId
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getCourseGuestEnrolmentInfoCacheKey(instanceId)
|
cacheKey: this.getCourseGuestEnrolmentInfoCacheKey(instanceId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('enrol_guest_get_instance_info', params, preSets).then((response) => {
|
return site.read('enrol_guest_get_instance_info', params, preSets).then((response) => {
|
||||||
|
@ -343,7 +346,8 @@ export class CoreCoursesProvider {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getCoursesCacheKey(ids)
|
cacheKey: this.getCoursesCacheKey(ids),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_course_get_courses', data, preSets);
|
return site.read('core_course_get_courses', data, preSets);
|
||||||
|
@ -445,7 +449,8 @@ export class CoreCoursesProvider {
|
||||||
value: field ? value : ''
|
value: field ? value : ''
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getCoursesByFieldCacheKey(field, value)
|
cacheKey: this.getCoursesByFieldCacheKey(field, value),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_course_get_courses_by_field', data, preSets).then((courses) => {
|
return site.read('core_course_get_courses_by_field', data, preSets).then((courses) => {
|
||||||
|
@ -604,7 +609,8 @@ export class CoreCoursesProvider {
|
||||||
courseids: courseIds
|
courseids: courseIds
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getUserAdministrationOptionsCacheKey(courseIds)
|
cacheKey: this.getUserAdministrationOptionsCacheKey(courseIds),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_course_get_user_administration_options', params, preSets).then((response) => {
|
return site.read('core_course_get_user_administration_options', params, preSets).then((response) => {
|
||||||
|
@ -650,7 +656,8 @@ export class CoreCoursesProvider {
|
||||||
courseids: courseIds
|
courseids: courseIds
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getUserNavigationOptionsCacheKey(courseIds)
|
cacheKey: this.getUserNavigationOptionsCacheKey(courseIds),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_course_get_user_navigation_options', params, preSets).then((response) => {
|
return site.read('core_course_get_user_navigation_options', params, preSets).then((response) => {
|
||||||
|
@ -728,7 +735,8 @@ export class CoreCoursesProvider {
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getUserCoursesCacheKey(),
|
cacheKey: this.getUserCoursesCacheKey(),
|
||||||
getCacheUsingCacheKey: true,
|
getCacheUsingCacheKey: true,
|
||||||
omitExpires: !!preferCache
|
omitExpires: !!preferCache,
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (site.isVersionGreaterEqualThan('3.7')) {
|
if (site.isVersionGreaterEqualThan('3.7')) {
|
||||||
|
|
|
@ -49,7 +49,8 @@ export class CoreCoursesDashboardProvider {
|
||||||
const params = {
|
const params = {
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getDashboardBlocksCacheKey(userId)
|
cacheKey: this.getDashboardBlocksCacheKey(userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (userId) {
|
if (userId) {
|
||||||
|
|
|
@ -251,7 +251,8 @@ export class CoreRatingProvider {
|
||||||
sort: sort
|
sort: sort
|
||||||
};
|
};
|
||||||
const preSets: CoreSiteWSPreSets = {
|
const preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getItemRatingsCacheKey(contextLevel, instanceId, component, ratingArea, itemId, scaleId, sort)
|
cacheKey: this.getItemRatingsCacheKey(contextLevel, instanceId, component, ratingArea, itemId, scaleId, sort),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
preSets.getFromCache = false;
|
preSets.getFromCache = false;
|
||||||
|
|
|
@ -234,6 +234,8 @@ export class CoreSitePluginsProvider {
|
||||||
|
|
||||||
preSets = preSets || {};
|
preSets = preSets || {};
|
||||||
preSets.cacheKey = this.getContentCacheKey(component, method, args);
|
preSets.cacheKey = this.getContentCacheKey(component, method, args);
|
||||||
|
preSets.updateFrequency = typeof preSets.updateFrequency != 'undefined' ? preSets.updateFrequency :
|
||||||
|
CoreSite.FREQUENCY_OFTEN;
|
||||||
|
|
||||||
return this.sitesProvider.getCurrentSite().read('tool_mobile_get_content', data, preSets);
|
return this.sitesProvider.getCurrentSite().read('tool_mobile_get_content', data, preSets);
|
||||||
}).then((result) => {
|
}).then((result) => {
|
||||||
|
|
|
@ -151,7 +151,8 @@ export class CoreUserProvider {
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}, preSets: any = {
|
}, preSets: any = {
|
||||||
cacheKey: this.getParticipantsListCacheKey(courseId)
|
cacheKey: this.getParticipantsListCacheKey(courseId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -235,7 +236,8 @@ export class CoreUserProvider {
|
||||||
protected getUserFromWS(userId: number, courseId?: number, siteId?: string): Promise<any> {
|
protected getUserFromWS(userId: number, courseId?: number, siteId?: string): Promise<any> {
|
||||||
return this.sitesProvider.getSite(siteId).then((site) => {
|
return this.sitesProvider.getSite(siteId).then((site) => {
|
||||||
const presets = {
|
const presets = {
|
||||||
cacheKey: this.getUserCacheKey(userId)
|
cacheKey: this.getUserCacheKey(userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
let wsName, data;
|
let wsName, data;
|
||||||
|
|
||||||
|
@ -329,7 +331,8 @@ export class CoreUserProvider {
|
||||||
return this.sitesProvider.getSite(siteId).then((site) => {
|
return this.sitesProvider.getSite(siteId).then((site) => {
|
||||||
const data = { name };
|
const data = { name };
|
||||||
const preSets: CoreSiteWSPreSets = {
|
const preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getUserPreferenceCacheKey(data.name)
|
cacheKey: this.getUserPreferenceCacheKey(data.name),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_SOMETIMES
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_user_get_user_preferences', data, preSets).then((result) => {
|
return site.read('core_user_get_user_preferences', data, preSets).then((result) => {
|
||||||
|
|
|
@ -16,7 +16,7 @@ import { Injectable } from '@angular/core';
|
||||||
import { TranslateService } from '@ngx-translate/core';
|
import { TranslateService } from '@ngx-translate/core';
|
||||||
import { CoreSitesProvider } from './sites';
|
import { CoreSitesProvider } from './sites';
|
||||||
import { CoreCoursesProvider } from '@core/courses/providers/courses';
|
import { CoreCoursesProvider } from '@core/courses/providers/courses';
|
||||||
import { CoreSiteWSPreSets } from '@classes/site';
|
import { CoreSite, CoreSiteWSPreSets } from '@classes/site';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Group info for an activity.
|
* Group info for an activity.
|
||||||
|
@ -89,7 +89,8 @@ export class CoreGroupsProvider {
|
||||||
userid: userId
|
userid: userId
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getActivityAllowedGroupsCacheKey(cmId, userId)
|
cacheKey: this.getActivityAllowedGroupsCacheKey(cmId, userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -196,7 +197,8 @@ export class CoreGroupsProvider {
|
||||||
cmid: cmId
|
cmid: cmId
|
||||||
},
|
},
|
||||||
preSets: CoreSiteWSPreSets = {
|
preSets: CoreSiteWSPreSets = {
|
||||||
cacheKey: this.getActivityGroupModeCacheKey(cmId)
|
cacheKey: this.getActivityGroupModeCacheKey(cmId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
if (ignoreCache) {
|
if (ignoreCache) {
|
||||||
|
@ -283,7 +285,8 @@ export class CoreGroupsProvider {
|
||||||
courseid: courseId
|
courseid: courseId
|
||||||
},
|
},
|
||||||
preSets = {
|
preSets = {
|
||||||
cacheKey: this.getUserGroupsInCourseCacheKey(courseId, userId)
|
cacheKey: this.getUserGroupsInCourseCacheKey(courseId, userId),
|
||||||
|
updateFrequency: CoreSite.FREQUENCY_RARELY
|
||||||
};
|
};
|
||||||
|
|
||||||
return site.read('core_group_get_course_user_groups', data, preSets).then((response) => {
|
return site.read('core_group_get_course_user_groups', data, preSets).then((response) => {
|
||||||
|
|
|
@ -4,6 +4,7 @@ information provided here is intended especially for developers.
|
||||||
=== 3.7.0 ===
|
=== 3.7.0 ===
|
||||||
|
|
||||||
- The pushnotifications addon has been moved to core. All imports of that addon need to be fixed to use the right path and name.
|
- The pushnotifications addon has been moved to core. All imports of that addon need to be fixed to use the right path and name.
|
||||||
|
- Now the expirationTime of cache entries contains the time the entry was modified, not the expiration time. This is to allow calculating dynamic expiration times. We decided to reuse the same field to prevent modifying the database table.
|
||||||
|
|
||||||
=== 3.6.1 ===
|
=== 3.6.1 ===
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue