Simplify code to check form changes

This commit is contained in:
Javi Martín
2019-06-28 22:48:18 +02:00
parent de50317d25
commit 1f828bf4d4

View File

@@ -6,22 +6,21 @@ App.WatchFormChanges =
if($("[data-watch-form-message]").length)
return $("[data-watch-form-message]").data("watch-form-message")
hasChanged: ->
App.WatchFormChanges.forms().is ->
$(this).serialize() != $(this).data("watchChanges")
checkChanges: ->
changes = false
App.WatchFormChanges.forms().each ->
form = $(this)
if form.serialize() != form.data("watchChanges")
changes = true
if changes
return confirm(App.WatchFormChanges.msg())
if App.WatchFormChanges.hasChanged()
confirm(App.WatchFormChanges.msg())
else
return true
true
initialize: ->
if App.WatchFormChanges.forms().length == 0 || App.WatchFormChanges.msg() == undefined
return
$(document).off("page:before-change").on("page:before-change", -> App.WatchFormChanges.checkChanges())
$(document).off("page:before-change").on("page:before-change", App.WatchFormChanges.checkChanges)
App.WatchFormChanges.forms().each ->
form = $(this)