2
0
Fork 0

MOBILE-2431 course: Fix prefetch course

main
Dani Palou 2018-06-21 17:24:32 +02:00
parent 0e359a1be1
commit 668c36cd43
2 changed files with 11 additions and 1 deletions

View File

@ -27,6 +27,7 @@ import { CoreTimeUtilsProvider } from '@providers/utils/time';
import { CoreUtilsProvider } from '@providers/utils/utils';
import { CoreCourseOptionsDelegate, CoreCourseOptionsHandlerToDisplay } from './options-delegate';
import { CoreSiteHomeProvider } from '@core/sitehome/providers/sitehome';
import { CoreCoursesProvider } from '@core/courses/providers/courses';
import { CoreCourseProvider } from './course';
import { CoreCourseModuleDelegate } from './module-delegate';
import { CoreCourseModulePrefetchDelegate } from './module-prefetch-delegate';
@ -120,7 +121,8 @@ export class CoreCourseHelperProvider {
private utils: CoreUtilsProvider, private translate: TranslateService, private loginHelper: CoreLoginHelperProvider,
private courseOptionsDelegate: CoreCourseOptionsDelegate, private siteHomeProvider: CoreSiteHomeProvider,
private eventsProvider: CoreEventsProvider, private fileHelper: CoreFileHelperProvider,
private appProvider: CoreAppProvider, private fileProvider: CoreFileProvider, private injector: Injector) { }
private appProvider: CoreAppProvider, private fileProvider: CoreFileProvider, private injector: Injector,
private coursesProvider: CoreCoursesProvider) { }
/**
* This function treats every module on the sections provided to load the handler data, treat completion
@ -1004,6 +1006,10 @@ export class CoreCourseHelperProvider {
}
});
// Prefetch other data needed to render the course.
promises.push(this.coursesProvider.getCoursesByField('id', course.id));
promises.push(this.courseProvider.getActivitiesCompletionStatus(course.id));
return this.utils.allPromises(promises);
}).then(() => {
// Download success, mark the course as downloaded.

View File

@ -115,6 +115,10 @@ export class CoreCoursesProvider {
return courseIds;
});
} else {
if (courseIds.length > 1 && courseIds.indexOf(siteHomeId) == -1) {
courseIds.push(siteHomeId);
}
return courseIds;
}
});