fix a bug that would lead to multiple views appearing on top of each other in the info panel

This commit is contained in:
rolux 2011-11-07 20:20:18 +00:00
parent f75fc026ba
commit 4245a776ed

View file

@ -67,12 +67,14 @@ pandora.ui.info = function() {
previousView = view; previousView = view;
view = getView(); view = getView();
if (view == 'list') { if (view == 'list') {
pandora.$ui.listInfo && pandora.$ui.listInfo.remove();
that.empty().append(pandora.$ui.listInfo = pandora.ui.listInfo()); that.empty().append(pandora.$ui.listInfo = pandora.ui.listInfo());
previousView == 'video' && resizeInfo(); previousView == 'video' && resizeInfo();
} else if (view == 'poster') { } else if (view == 'poster') {
pandora.api.get({id: id, keys: ['director', 'posterRatio', 'title']}, function(result) { pandora.api.get({id: id, keys: ['director', 'posterRatio', 'title']}, function(result) {
var ratio = result.data.posterRatio, var ratio = result.data.posterRatio,
height = pandora.getInfoHeight(true); height = pandora.getInfoHeight(true);
pandora.$ui.posterInfo && pandora.$ui.posterInfo.remove();
that.empty().append( that.empty().append(
pandora.$ui.posterInfo = pandora.ui.posterInfo(Ox.extend(result.data, {id: id})) pandora.$ui.posterInfo = pandora.ui.posterInfo(Ox.extend(result.data, {id: id}))
); );
@ -85,6 +87,7 @@ pandora.ui.info = function() {
}, function(result) { }, function(result) {
if (result.data && result.data.rendered) { if (result.data && result.data.rendered) {
pandora.$ui.videoPreview && pandora.$ui.videoPreview.remove(); pandora.$ui.videoPreview && pandora.$ui.videoPreview.remove();
that.empty().append(
pandora.$ui.videoPreview = pandora.ui.videoPreview({ pandora.$ui.videoPreview = pandora.ui.videoPreview({
duration: result.data.duration, duration: result.data.duration,
frameRatio: result.data.videoRatio, frameRatio: result.data.videoRatio,
@ -112,7 +115,7 @@ pandora.ui.info = function() {
} }
} }
}) })
.appendTo(pandora.$ui.info); );
previousView != 'video' && resizeInfo(); previousView != 'video' && resizeInfo();
} }
}); });