Skip to content

Commit

Permalink
fix ui crash in planning on load (#4633)
Browse files Browse the repository at this point in the history
avoid using undefined `$rootScope.features`
when refreshing screen in planning only view
  • Loading branch information
petrjasek committed Sep 11, 2024
1 parent f54375f commit e3a7c3d
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 6 deletions.
11 changes: 6 additions & 5 deletions scripts/apps/authoring/metadata/metadata.ts
Original file line number Diff line number Diff line change
Expand Up @@ -1127,8 +1127,8 @@ function MetaLocatorsDirective(places) {
};
}

MetadataService.$inject = ['api', 'subscribersService', 'vocabularies', '$rootScope', 'session', '$filter'];
export function MetadataService(api, subscribersService, vocabularies, $rootScope, session, $filter) {
MetadataService.$inject = ['api', 'subscribersService', 'vocabularies', '$rootScope', 'session', '$filter', 'features'];
export function MetadataService(api, subscribersService, vocabularies, $rootScope, session, $filter, features) {
var service = {
values: {},
helper_text: {},
Expand Down Expand Up @@ -1272,7 +1272,7 @@ export function MetadataService(api, subscribersService, vocabularies, $rootScop
fetchAgendas: function() {
var self = this;

if ($rootScope.features.agenda) {
if (features.agenda) {
return api.get('/agenda').then((result) => {
var agendas = [];

Expand All @@ -1288,7 +1288,7 @@ export function MetadataService(api, subscribersService, vocabularies, $rootScop
fetchEventsPlanningFilters: function() {
var self = this;

if ($rootScope.features.events_planning_filters) {
if (features.events_planning_filters) {
return api.get('/events_planning_filters').then((result) => {
self.values.eventsPlanningFilters = _.get(result, '_items', [])
.map((item) => ({name: item.name, qcode: item._id}));
Expand Down Expand Up @@ -1351,7 +1351,8 @@ export function MetadataService(api, subscribersService, vocabularies, $rootScop
},
initialize: function() {
if (!this.loaded) {
this.loaded = this.fetchMetadataValues()
this.loaded = features._loaded
.then(angular.bind(this, this.fetchMetadataValues))
.then(angular.bind(this, this.fetchSubjectcodes))
.then(angular.bind(this, this.fetchAuthors))
.then(angular.bind(this, this.fetchSubscribers))
Expand Down
3 changes: 2 additions & 1 deletion scripts/core/features/features.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,9 @@ Features.$inject = ['urls'];
function Features(urls) {
var self = this;

urls.links().then((links) => {
self._loaded = urls.links().then((links) => {
angular.extend(self, links);
return links;
});
}

Expand Down

0 comments on commit e3a7c3d

Please sign in to comment.