OSDN Git Service

add: social button
[pettanr/pettanr.git] / app / assets / javascripts / views / scrolls / show.js.coffee
index e2880c8..eda7863 100644 (file)
@@ -1,63 +1,31 @@
-class Pettanr.Views.Scroll.ShowModule\r
-class Pettanr.Views.Scroll.ShowModule.Header extends Pettanr.Views.Show.Header\r
+class Pettanr.Views.Scroll.Show extends Pettanr.View.Show\r
   \r
   initialize: (options) ->\r
-    super(options)\r
-  \r
-class Pettanr.Views.Scroll.ShowModule.Owner extends Pettanr.Views.Show.Owner\r
-  \r
-  initialize: (options) ->\r
-    super(options)\r
-  \r
-class Pettanr.Views.Scroll.Show extends Backbone.View\r
-  tagName: 'div'\r
-  className: 'show'\r
-  \r
-  initialize: (options) ->\r
-    @item = options.item\r
-    @header = new Pettanr.Views.Scroll.ShowModule.Header({\r
-      item: @item, \r
-      caption: @item.get('title'), \r
-      icon_url: @item.show_url(),\r
-      caption_url: @item.play_url(),\r
-      prof_url: @item.prof_url()\r
-    })\r
-    @author = new Pettanr.Views.Show.HeaderAuthor({item: @item})\r
-    @owner = new Pettanr.Views.Scroll.ShowModule.Owner({item: @item})\r
+    @header = new Pettanr.View.Show.Header(@item, this, @binder_header_options())\r
+    @authored_by = @item.authored_by()\r
+    @owner = new Pettanr.View.Show.Footer(@item, this, @default_footer_options())\r
     @listenTo(@header, 'click:pick', @click_pick)\r
-    @listenTo(@header, 'click:icon', @click_show)\r
-    @listenTo(@header, 'click:caption', @click_play)\r
-    @listenTo(@header, 'click:prof', @click_prof)\r
-    @listenTo(@author, 'click:author', @click_author)\r
-    @listenTo(@owner, 'click:edit', @click_edit)\r
-    @listenTo(@owner, 'click:destroy', @click_destroy)\r
+    @listenTo(@authored_by, 'click', @click_authored_by)\r
   \r
   render: () ->\r
     this.$el.html('')\r
     this.$el.append(@header.render().el)\r
-    this.$el.append(@author.render().el)\r
+    this.$el.append(@authored_by.render().el)\r
+    h3 = new Tag.H3({content: Pettanr.AppHelper.t_m('Scroll.description')})\r
+    this.$el.append(h3.render().el)\r
+    desc = new Tag.Div({content: @item.escape('description'), class_name: 'scroll-description'})\r
+    this.$el.append(desc.render().el)\r
+    label_button = new Pettanr.View.Button(@item.play_url(), I18n.t('scrolls.play.title'), {\r
+      click: () =>\r
+        @trigger('http_get', @item.play_url())\r
+    })\r
+    h2 = new Tag.H2({content: label_button.render().el})\r
+    this.$el.append(h2.render().el)\r
     this.$el.append(@owner.render().el) if @item.is_own()\r
     this\r
   \r
-  click_show: () ->\r
-    @trigger('http_get', @item.show_url())\r
-  \r
-  click_play: () ->\r
-    @trigger('http_get', @item.play_url())\r
-  \r
-  click_prof: () ->\r
-    @trigger('http_get', @item.prof_url())\r
-  \r
-  click_author: () ->\r
-    @trigger('http_get', @item.author().show_url())\r
-  \r
-  click_edit: () ->\r
-    @trigger('http_get', @item.edit_url())\r
-  \r
-  click_destroy: () ->\r
-    redirect = (url) =>\r
-      @trigger('http_get', url)\r
-    Pettanr.Proxy.destroy(@item, {redirect: redirect})\r
+  http_get: (url) ->\r
+    @trigger('http_get', url)\r
   \r
   click_pick: () ->\r
     @trigger('pick', @item)\r