@@ -62,11 +62,14 @@ export class AddonBlockMyOverviewComponent extends CoreBlockBaseComponent implem
6262 showHidden = false ;
6363 showSelectorFilter = false ;
6464 showSortFilter = false ;
65+ downloadCourseEnabled : boolean ;
66+ downloadCoursesEnabled : boolean ;
6567
6668 protected prefetchIconsInitialized = false ;
6769 protected isDestroyed ;
6870 protected downloadButtonObserver ;
6971 protected coursesObserver ;
72+ protected updateSiteObserver ;
7073 protected courseIds = [ ] ;
7174 protected fetchContentDefaultError = 'Error getting my overview data.' ;
7275
@@ -96,6 +99,16 @@ export class AddonBlockMyOverviewComponent extends CoreBlockBaseComponent implem
9699 }
97100 } ) ;
98101
102+ this . downloadCourseEnabled = ! this . coursesProvider . isDownloadCourseDisabledInSite ( ) ;
103+ this . downloadCoursesEnabled = ! this . coursesProvider . isDownloadCoursesDisabledInSite ( ) ;
104+
105+ // Refresh the enabled flags if site is updated.
106+ this . updateSiteObserver = this . eventsProvider . on ( CoreEventsProvider . SITE_UPDATED , ( ) => {
107+ this . downloadCourseEnabled = ! this . coursesProvider . isDownloadCourseDisabledInSite ( ) ;
108+ this . downloadCoursesEnabled = ! this . coursesProvider . isDownloadCoursesDisabledInSite ( ) ;
109+
110+ } , this . sitesProvider . getCurrentSiteId ( ) ) ;
111+
99112 this . coursesObserver = this . eventsProvider . on ( CoreCoursesProvider . EVENT_MY_COURSES_UPDATED , ( ) => {
100113 this . refreshContent ( ) ;
101114 } , this . sitesProvider . getCurrentSiteId ( ) ) ;
@@ -336,6 +349,7 @@ export class AddonBlockMyOverviewComponent extends CoreBlockBaseComponent implem
336349 ngOnDestroy ( ) : void {
337350 this . isDestroyed = true ;
338351 this . coursesObserver && this . coursesObserver . off ( ) ;
352+ this . updateSiteObserver && this . updateSiteObserver . off ( ) ;
339353 this . downloadButtonObserver && this . downloadButtonObserver . off ( ) ;
340354 }
341355}
0 commit comments