Metadata
- Source
- ENGAGE-333
- Type
- Bug
- Priority
- Major
- Status
- Closed
- Resolution
- Fixed
- Assignee
- Colin Clark
- Reporter
- Colin Clark
- Created
2010-02-05T17:39:15.000-0500 - Updated
2020-11-12T07:37:22.369-0500 - Versions
-
- 0.3b
- Fixed Versions
-
- 0.3b
- Component
-
- Exhibitions
Description
Exhibition About is throwing an error upon page load. This is due to the fact that it is implemented using the same component as Exhibition View, which attempts to create a Navigation List for displaying catalogue information. However, the Exhibition About template doesn't have any catalogue information in it.
Since both data feeds share the same underlying representation of Exhibition models, ExhibitionView.js attempts to instantiate a NavList and bind it to the "catalogue" element in the page, even those Exhibition about.html doesn't have this information in it.
Here's the offending code:
// Render the Exhibition Preview component only if we have artifacts to preview.
if (that.model.catalogueSize > 0 && that.model.cataloguePreview) {
// Prepare model for NavList
var cataloguePreview = fluid.transform(that.model.cataloguePreview, function (artifact) {
return {
target: artifact.target,
showBadge: artifact.media,
image: artifact.image,
title: artifact.title
};
});
$.extend(that.options.exhibitionPreview.options, {model: cataloguePreview});
that.exhibitionPreview = fluid.initSubcomponent(that, "exhibitionPreview", [
that.locate("catalogue"),
fluid.COMPONENT_OPTIONS
]);
}
We'll have to work around this whole issue temporarily by ensuring that catalogue information doesn't get included in the model supplied by the Exhibition About data feed. In the long run, we need to refactor both Exhibition View and About to separate their concerns, as outlined in ENGAGE-332
Comments
-
Colin Clark commented
2010-02-05T17:39:45.000-0500 This issue is caused by the design error described in ENGAGE-332
-
Justin Obara commented
2010-02-24T12:21:00.000-0500 The error has been fixed, the design related issue will be fixed in ENGAGE-332