OSDN Git Service

add: social button
[pettanr/pettanr.git] / app / assets / javascripts / view / layout.js.coffee
index 6f58ac4..e70cb44 100644 (file)
@@ -14,14 +14,29 @@ class Pettanr.View.Layout.Sns extends Pettanr.View.Layout.Base
     @listenTo(@history, 'get', @body_get)\r
     @body = new Pettanr.View.Layout.Sns.Body({parent: this})\r
     @footer = new Pettanr.View.Layout.Sns.Footer({parent: this})\r
+    @error_dialog = new Editor.Error.Dialog({parent: this})\r
+    @listenTo(@error_dialog, 'open', @open_dialog)\r
+    @listenTo(@error_dialog, 'close', @close_dialog)\r
   \r
   render: () ->\r
     this.$el.html('')\r
     this.$el.append(@header.render().el)\r
     this.$el.append(@history.render().el)\r
-    @rb()\r
+    @append_rb()\r
     this.$el.append(@body.render().el)\r
     this.$el.append(@footer.render().el)\r
+    this.$el.append(@error_dialog.render().el)\r
+    @error_dialog.$el.dialog({\r
+      autoOpen: false,\r
+      resizable: false,\r
+      width: 500, \r
+      height: 600,\r
+      modal: true,\r
+      buttons: {\r
+        close: () ->\r
+          $(@).dialog('close')\r
+      }\r
+    })\r
     this\r
   \r
   init_operators: (user) ->\r
@@ -54,7 +69,7 @@ class Pettanr.View.Layout.Sns extends Pettanr.View.Layout.Base
   \r
   test_ng: (response) ->\r
     @history.disable()\r
-    @head_http_get('users/guest')\r
+    @head_http_get('users/guest')\r
     @body_http_get('user_sessions/new')\r
   \r
   test_redirect: (url) ->\r
@@ -70,8 +85,10 @@ class Pettanr.View.Layout.Sns extends Pettanr.View.Layout.Base
   \r
   sign_out: () ->\r
     @reset_operators()\r
-    @head_http_get('users/guest')\r
+    @header.remove()\r
+    #@head_http_get('user_sessions/end')\r
     @history.disable()\r
+    window.location='/'\r
   \r
   head_http_get: (url) ->\r
     proxy = new Pettanr.Proxy({})\r
@@ -86,6 +103,7 @@ class Pettanr.View.Layout.Sns extends Pettanr.View.Layout.Base
   getter_proxy: () ->\r
     proxy = new Pettanr.Proxy({gate: @gate})\r
     @listenTo(proxy, 'ready', @body_ready)\r
+    @listenTo(proxy, 'fail', @body_fail)\r
     @listenTo(proxy, 'title', @body_title)\r
     @listenTo(proxy, 'title', @push_history)\r
     @listenTo(proxy, 'done', @body_done)\r
@@ -105,6 +123,11 @@ class Pettanr.View.Layout.Sns extends Pettanr.View.Layout.Base
     @listenTo(view, 'http_get', @body_http_get)\r
     @listenTo(view, 'http_post', @body_http_post)\r
     @body.refresh(view)\r
+    if view.social\r
+      view.social.refresh()\r
+  \r
+  body_fail: (response, options) ->\r
+    @error_dialog.start(response, options)\r
   \r
   body_done: (params) ->\r
     url = Pettanr.params_to_url(params)\r
@@ -138,9 +161,6 @@ class Pettanr.View.Layout.Sns extends Pettanr.View.Layout.Base
   body_success: (url) ->\r
     \r
   \r
-  body_fail: (url) ->\r
-    \r
-  \r
   body_redirect: (url) ->\r
     @global_router.navigate(url)\r
     @getter_proxy().http_get(url)\r
@@ -156,26 +176,21 @@ class Pettanr.View.Layout.Sns extends Pettanr.View.Layout.Base
   \r
   cancel: (params, form) ->\r
   \r
-class Pettanr.View.Layout.Blog extends Pettanr.View.Layout.Base\r
-  className: 'layout-blog'\r
-  \r
-  start: () ->\r
-    # initial page\r
-    @router.navigate('users/sign_in')\r
-    @header.navigate('users/guest')\r
-    @body.navigate('top/demo')\r
-  \r
-  sign_in_fail: (user, response) ->\r
-    view = new Pettanr.Views.UserSeeeion.New({})\r
-    view.render()\r
-    @body.navigate('top/demo')\r
+  open_dialog: () ->\r
+    @trigger('dialog:open', dialog)\r
   \r
-  header_class: () ->\r
-    Pettanr.Views.Layout.Blog.Header\r
+  close_dialog: () ->\r
+    @trigger('dialog:close', @dialog)\r
+    if @dialog.is_catch()\r
+      # stored panel back to player\r
+      @back()\r
   \r
-  body_class: () ->\r
-    Pettanr.Views.Layout.Blog.Body\r
+class Pettanr.View.Layout.Blog extends Pettanr.View.Layout.Sns\r
+  className: 'layout-blog'\r
   \r
-  footer_class: () ->\r
-    Pettanr.Views.Layout.Blog.Footer\r
+  test_ng: (response) ->\r
+    @history.enable()\r
+    @reset_operators()\r
+    @head_http_get('users/guest')\r
+    @test_redirect('')\r
   \r