These statements were automatically added by CoffeeScript. I'm only removing the obvious cases; there might be more cases where the `return` statement isn't necessary.
34 lines
990 B
JavaScript
34 lines
990 B
JavaScript
(function() {
|
|
"use strict";
|
|
App.WatchFormChanges = {
|
|
forms: function() {
|
|
return $("form[data-watch-changes]");
|
|
},
|
|
msg: function() {
|
|
return $("[data-watch-form-message]").data("watch-form-message");
|
|
},
|
|
hasChanged: function() {
|
|
return App.WatchFormChanges.forms().is(function() {
|
|
return $(this).serialize() !== $(this).data("watchChanges");
|
|
});
|
|
},
|
|
checkChanges: function() {
|
|
if (App.WatchFormChanges.hasChanged()) {
|
|
return confirm(App.WatchFormChanges.msg());
|
|
} else {
|
|
return true;
|
|
}
|
|
},
|
|
initialize: function() {
|
|
if (App.WatchFormChanges.forms().length === 0 || App.WatchFormChanges.msg() === void 0) {
|
|
return;
|
|
}
|
|
$(document).off("page:before-change").on("page:before-change", App.WatchFormChanges.checkChanges);
|
|
App.WatchFormChanges.forms().each(function() {
|
|
$(this).data("watchChanges", $(this).serialize());
|
|
});
|
|
}
|
|
};
|
|
|
|
}).call(this);
|