OSDN Git Service

fix gate
[pettanr/pettanr.git] / app / assets / javascripts / routes.js.coffee
index 9794c6d..e32d666 100644 (file)
@@ -1,20 +1,32 @@
-class Pettanr.History extends Backbone.History\r
-  @lock = null\r
+class Pettanr.BeforeUnload\r
   \r
-  checkUrl: (e) ->\r
-    if Pettanr.History.lock\r
+  constructor: (options) ->\r
+  \r
+  test: () ->\r
+    if @is_lock()\r
       if confirm('leave? edit data unsaved')\r
-        Pettanr.History.release()\r
+        return 1\r
       else\r
-        @history.pushState({}, document.title, '/' + Pettanr.History.lock.url)\r
-        return false\r
-    super(e)\r
+        return -1\r
+    0\r
+  \r
+  is_lock: () ->\r
+    if @params\r
+      true\r
+    else\r
+      false\r
+  \r
+  lock: (params, form) ->\r
+    @form = form\r
+    @params = params\r
+  \r
+  unlock: () ->\r
+    @form.quit()\r
+    @params = null\r
   \r
-  @release: () ->\r
-    Pettanr.History.lock.form.quit()\r
-    Pettanr.History.lock = null\r
+  url: () ->\r
+    Pettanr.params_to_url(@params)\r
   \r
-Backbone.history = new Pettanr.History\r
 class Pettanr.Router extends Backbone.Router\r
   \r
   initialize: (options) ->\r