diff options
Diffstat (limited to 'install/ui/navigation.js')
-rw-r--r-- | install/ui/navigation.js | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/install/ui/navigation.js b/install/ui/navigation.js index 379573910..11520ff91 100644 --- a/install/ui/navigation.js +++ b/install/ui/navigation.js @@ -80,9 +80,27 @@ IPA.navigation = function(spec) { }; that.push_state = function(params) { - if (!IPA.test_dirty()) { - return false; + + if (IPA.current_entity) { + var facet_name = IPA.current_facet(IPA.current_entity); + var facet = IPA.current_entity.get_facet(facet_name); + + if (facet.is_dirty()) { + var dialog = IPA.dirty_dialog({ + facet: facet + }); + + dialog.callback = function() { + $.bbq.pushState(params); + }; + + dialog.init(); + dialog.open($('#navigation')); + + return false; + } } + $.bbq.pushState(params); return true; }; |