-
-
-
-
-
+
+
+
+
diff --git a/src/addon/block/recentlyaccessedcourses/components/recentlyaccessedcourses/recentlyaccessedcourses.ts b/src/addon/block/recentlyaccessedcourses/components/recentlyaccessedcourses/recentlyaccessedcourses.ts
index 92697e4f0..4b61bfeb1 100644
--- a/src/addon/block/recentlyaccessedcourses/components/recentlyaccessedcourses/recentlyaccessedcourses.ts
+++ b/src/addon/block/recentlyaccessedcourses/components/recentlyaccessedcourses/recentlyaccessedcourses.ts
@@ -1,4 +1,4 @@
-// (C) Copyright 2015 Martin Dougiamas
+// (C) Copyright 2015 Moodle Pty Ltd.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -14,7 +14,6 @@
import { Component, OnInit, OnDestroy, Injector, Input, OnChanges, SimpleChange } from '@angular/core';
import { CoreEventsProvider } from '@providers/events';
-import { CoreUtilsProvider } from '@providers/utils/utils';
import { CoreSitesProvider } from '@providers/sites';
import { CoreCoursesProvider } from '@core/courses/providers/courses';
import { CoreCoursesHelperProvider } from '@core/courses/providers/helper';
@@ -38,16 +37,19 @@ export class AddonBlockRecentlyAccessedCoursesComponent extends CoreBlockBaseCom
icon: '',
badge: ''
};
+ downloadCourseEnabled: boolean;
+ downloadCoursesEnabled: boolean;
protected prefetchIconsInitialized = false;
protected isDestroyed;
protected coursesObserver;
+ protected updateSiteObserver;
protected courseIds = [];
protected fetchContentDefaultError = 'Error getting recent courses data.';
constructor(injector: Injector, private coursesProvider: CoreCoursesProvider,
private courseCompletionProvider: AddonCourseCompletionProvider, private eventsProvider: CoreEventsProvider,
- private courseHelper: CoreCourseHelperProvider, private utils: CoreUtilsProvider,
+ private courseHelper: CoreCourseHelperProvider,
private courseOptionsDelegate: CoreCourseOptionsDelegate, private coursesHelper: CoreCoursesHelperProvider,
private sitesProvider: CoreSitesProvider) {
@@ -59,6 +61,17 @@ export class AddonBlockRecentlyAccessedCoursesComponent extends CoreBlockBaseCom
*/
ngOnInit(): void {
+ // Refresh the enabled flags if enabled.
+ this.downloadCourseEnabled = !this.coursesProvider.isDownloadCourseDisabledInSite();
+ this.downloadCoursesEnabled = !this.coursesProvider.isDownloadCoursesDisabledInSite();
+
+ // Refresh the enabled flags if site is updated.
+ this.updateSiteObserver = this.eventsProvider.on(CoreEventsProvider.SITE_UPDATED, () => {
+ this.downloadCourseEnabled = !this.coursesProvider.isDownloadCourseDisabledInSite();
+ this.downloadCoursesEnabled = !this.coursesProvider.isDownloadCoursesDisabledInSite();
+
+ }, this.sitesProvider.getCurrentSiteId());
+
this.coursesObserver = this.eventsProvider.on(CoreCoursesProvider.EVENT_MY_COURSES_UPDATED, () => {
this.refreshContent();
}, this.sitesProvider.getCurrentSiteId());
@@ -79,7 +92,7 @@ export class AddonBlockRecentlyAccessedCoursesComponent extends CoreBlockBaseCom
/**
* Perform the invalidate content function.
*
- * @return {Promise
} Resolved when done.
+ * @return Resolved when done.
*/
protected invalidateContent(): Promise {
const promises = [];
@@ -104,10 +117,13 @@ export class AddonBlockRecentlyAccessedCoursesComponent extends CoreBlockBaseCom
/**
* Fetch the courses for recent courses.
*
- * @return {Promise} Promise resolved when done.
+ * @return Promise resolved when done.
*/
protected fetchContent(): Promise {
- return this.coursesHelper.getUserCoursesWithOptions('lastaccess', 10).then((courses) => {
+ const showCategories = this.block.configs && this.block.configs.displaycategories &&
+ this.block.configs.displaycategories.value == '1';
+
+ return this.coursesHelper.getUserCoursesWithOptions('lastaccess', 10, null, showCategories).then((courses) => {
this.courses = courses;
this.initPrefetchCoursesIcons();
@@ -133,7 +149,7 @@ export class AddonBlockRecentlyAccessedCoursesComponent extends CoreBlockBaseCom
/**
* Prefetch all the shown courses.
*
- * @return {Promise} Promise resolved when done.
+ * @return Promise resolved when done.
*/
prefetchCourses(): Promise {
const initialIcon = this.prefetchCoursesData.icon;
@@ -152,5 +168,6 @@ export class AddonBlockRecentlyAccessedCoursesComponent extends CoreBlockBaseCom
ngOnDestroy(): void {
this.isDestroyed = true;
this.coursesObserver && this.coursesObserver.off();
+ this.updateSiteObserver && this.updateSiteObserver.off();
}
}
diff --git a/src/addon/block/recentlyaccessedcourses/providers/block-handler.ts b/src/addon/block/recentlyaccessedcourses/providers/block-handler.ts
index 3af9cf0dd..d562effe8 100644
--- a/src/addon/block/recentlyaccessedcourses/providers/block-handler.ts
+++ b/src/addon/block/recentlyaccessedcourses/providers/block-handler.ts
@@ -1,4 +1,4 @@
-// (C) Copyright 2015 Martin Dougiamas
+// (C) Copyright 2015 Moodle Pty Ltd.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -32,11 +32,11 @@ export class AddonBlockRecentlyAccessedCoursesHandler extends CoreBlockBaseHandl
/**
* Returns the data needed to render the block.
*
- * @param {Injector} injector Injector.
- * @param {any} block The block to render.
- * @param {string} contextLevel The context where the block will be used.
- * @param {number} instanceId The instance ID associated with the context level.
- * @return {CoreBlockHandlerData|Promise} Data or promise resolved with the data.
+ * @param injector Injector.
+ * @param block The block to render.
+ * @param contextLevel The context where the block will be used.
+ * @param instanceId The instance ID associated with the context level.
+ * @return Data or promise resolved with the data.
*/
getDisplayData(injector: Injector, block: any, contextLevel: string, instanceId: number)
: CoreBlockHandlerData | Promise {
diff --git a/src/addon/block/recentlyaccessedcourses/recentlyaccessedcourses.module.ts b/src/addon/block/recentlyaccessedcourses/recentlyaccessedcourses.module.ts
index 99a9ad3fd..53ade7657 100644
--- a/src/addon/block/recentlyaccessedcourses/recentlyaccessedcourses.module.ts
+++ b/src/addon/block/recentlyaccessedcourses/recentlyaccessedcourses.module.ts
@@ -1,4 +1,4 @@
-// (C) Copyright 2015 Martin Dougiamas
+// (C) Copyright 2015 Moodle Pty Ltd.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/addon/block/recentlyaccesseditems/components/components.module.ts b/src/addon/block/recentlyaccesseditems/components/components.module.ts
index 1ce6d5557..bede51164 100644
--- a/src/addon/block/recentlyaccesseditems/components/components.module.ts
+++ b/src/addon/block/recentlyaccesseditems/components/components.module.ts
@@ -1,4 +1,4 @@
-// (C) Copyright 2015 Martin Dougiamas
+// (C) Copyright 2015 Moodle Pty Ltd.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
diff --git a/src/addon/block/recentlyaccesseditems/components/recentlyaccesseditems/addon-block-recentlyaccesseditems.html b/src/addon/block/recentlyaccesseditems/components/recentlyaccesseditems/addon-block-recentlyaccesseditems.html
index f3538163d..cfa2892d6 100644
--- a/src/addon/block/recentlyaccesseditems/components/recentlyaccesseditems/addon-block-recentlyaccesseditems.html
+++ b/src/addon/block/recentlyaccesseditems/components/recentlyaccesseditems/addon-block-recentlyaccesseditems.html
@@ -1,14 +1,14 @@
{{ 'addon.block_recentlyaccesseditems.pluginname' | translate }}
-
+