36 lines
960 B
JavaScript
36 lines
960 B
JavaScript
var App = App || {};
|
|
|
|
App.PresenterManager = function(topNavigationPresenter) {
|
|
|
|
var lastContentPresenterName;
|
|
var lastContentPresenter;
|
|
|
|
function init() {
|
|
initPresenter('topNavigationPresenter');
|
|
}
|
|
|
|
function initPresenter(presenterName, args) {
|
|
var presenter = App.DI.get(presenterName);
|
|
presenter.init.call(presenter, args);
|
|
}
|
|
|
|
function switchContentPresenter(presenterName, args) {
|
|
if (lastContentPresenterName !== presenterName) {
|
|
topNavigationPresenter.changeTitle(null);
|
|
var presenter = App.DI.get(presenterName);
|
|
presenter.init.call(presenter, args);
|
|
lastContentPresenterName = presenterName;
|
|
lastContentPresenter = presenter;
|
|
} else if (lastContentPresenter.reinit) {
|
|
lastContentPresenter.reinit.call(lastContentPresenter, args);
|
|
}
|
|
}
|
|
|
|
return {
|
|
init: init,
|
|
switchContentPresenter: switchContentPresenter,
|
|
};
|
|
|
|
};
|
|
|
|
App.DI.registerSingleton('presenterManager', ['topNavigationPresenter'], App.PresenterManager);
|