OSDN Git Service

Merge branch 'v06' of git.sourceforge.jp:/gitroot/pettanr/pettanr into v06
[pettanr/pettanr.git] / app / assets / javascripts / tags.js.coffee
index 8ed7f77..ca747e9 100644 (file)
@@ -14,16 +14,13 @@ class Tag.Img extends Backbone.View
     this.$el.addClass(@class_name) if @class_name\r
     this\r
 \r
-class Tag.A extends Backbone.View\r
+class Tag.A_ extends Backbone.View\r
   tagName: 'a'\r
   \r
   initialize: (options) ->\r
     @attr = options.attr || {}\r
-    @handler_name = options.handler_name\r
     @content = options.content\r
     @class_name = options.class_name\r
-    @events = {click: 'click'} if @handler_name\r
-    @delegateEvents()\r
   \r
   render: () ->\r
     this.$el.attr(@attr)\r
@@ -31,8 +28,19 @@ class Tag.A extends Backbone.View
     this.$el.html(@content)\r
     this\r
   \r
+class Tag.A extends Tag.A_\r
+  \r
+  initialize: (options) ->\r
+    super(options)\r
+  \r
+  render: () ->\r
+    super()\r
+    @events = {click: 'click'}\r
+    @delegateEvents(@events)\r
+    this\r
+  \r
   click: () ->\r
-    window.router.navigate(@handler_name, true)\r
+    @trigger('click')\r
     return false\r
   \r
 class Tag.Div extends Backbone.View\r
@@ -48,11 +56,47 @@ class Tag.Div extends Backbone.View
     this.$el.attr(@attr)\r
     this.$el.html(@content)\r
     this\r
+  \r
+class Tag.Span extends Tag.Div\r
+  tagName: 'span'\r
     \r
+class Tag.Ul extends Backbone.View\r
+  tagName: 'ul'\r
+  \r
+  initialize: (options) ->\r
+    @attr = options.attr || {}\r
+    @contents = options.contents\r
+    @class_name = options.class_name\r
+  \r
+  render: () ->\r
+    @el.className = @class_name if @class_name\r
+    this.$el.attr(@attr)\r
+    this.$el.html('')\r
+    _.each @contents, (content) =>\r
+      this.$el.append(content.render().el)\r
+    this\r
+  \r
 class Tag.RowBreak extends Tag.Div\r
   initialize: (options) ->\r
     @attr = {}\r
     @content = null\r
     @class_name = 'row_break'\r
   \r
+class Tag.H3 extends Backbone.View\r
+  tagName: 'h3'\r
+  \r
+  initialize: (options) ->\r
+    @attr = options.attr || {}\r
+    @content = options.content\r
+    @class_name = options.class_name\r
+  \r
+  render: () ->\r
+    this.$el.attr(@attr)\r
+    @el.className = @class_name if @class_name\r
+    this.$el.html(@content)\r
+    this\r
+  \r
+class Tag.H2 extends Tag.H3\r
+  tagName: 'h2'\r
+  \r
 @Tag = Tag\r