OSDN Git Service

fix sign, fix layout
[pettanr/pettanr.git] / app / assets / javascripts / controllers / scrolls.js.coffee
index 078fbe4..24bc888 100644 (file)
@@ -46,15 +46,37 @@ class Pettanr.ScrollsController extends Pettanr.AppController
   \r
   new: () ->\r
     @trigger('retitle', @params)\r
-    @form_new()\r
+    @form_new(@create)\r
   \r
   edit: () ->\r
     @trigger('retitle', @params)\r
-    @form_edit()\r
+    @form_edit(@update)\r
   \r
-  create: () ->\r
+  create: (form) ->\r
+    form.item.overwrite(@operators)\r
+    if form.save()\r
+      vp = new Pettanr.ViewPicker({operators: @operators})\r
+      @listenTo(vp, 'ready', @redirected)\r
+      @listenTo(vp, 'retitle', @retitle)\r
+      vp.navigate(form.item.show_url())\r
+    else\r
+      @not_created()\r
   \r
-  update: () ->\r
+  update: (form) ->\r
+    form.item.overwrite(@operators)\r
+    if form.save()\r
+      vp = new Pettanr.ViewPicker({operators: @operators})\r
+      @listenTo(vp, 'ready', @redirected)\r
+      @listenTo(vp, 'retitle', @retitle)\r
+      vp.navigate(form.item.show_url())\r
+    else\r
+      @not_updated()\r
   \r
   destroy: () ->\r
-    \r
+    @set_model()\r
+    @item = @my_model_class.edit(params['id'], @operators)\r
+    @render_destroy('/home/' + @item.path_name())\r
+  \r
+  redirected: (view) ->\r
+    @trigger('ready', view)\r
+  \r