From: yasushiito Date: Wed, 26 Feb 2014 02:49:32 +0000 (+0900) Subject: manifest list_group tree X-Git-Url: http://git.osdn.net/view?p=pettanr%2Fpettanr.git;a=commitdiff_plain;h=b6e743fc583c193001f41bc731a7e69fa9849947 manifest list_group tree --- diff --git a/app/assets/javascripts/manifest/work/list_groups.js.coffee.erb b/app/assets/javascripts/manifest/work/list_groups.js.coffee.erb index e0112300..485364dc 100644 --- a/app/assets/javascripts/manifest/work/list_groups.js.coffee.erb +++ b/app/assets/javascripts/manifest/work/list_groups.js.coffee.erb @@ -54,6 +54,7 @@ }, }, story_sheet: { + tree_name: 'owner' lists: { public: { }, @@ -82,6 +83,7 @@ }, }, sheet_panel: { + tree_name: 'owner' lists: { public: { }, @@ -110,6 +112,7 @@ }, }, panel_picture: { + tree_name: 'owner' lists: { public: { }, @@ -122,6 +125,7 @@ }, }, speech_balloon: { + tree_name: 'owner' lists: { public: { }, @@ -136,6 +140,7 @@ }, }, speech: { + tree_name: 'owner' lists: { public: { }, @@ -146,6 +151,7 @@ }, }, balloon: { + tree_name: 'owner' lists: { public: { }, @@ -156,6 +162,7 @@ }, }, ground_picture: { + tree_name: 'owner' lists: { public: { }, @@ -168,6 +175,7 @@ }, }, ground_color: { + tree_name: 'owner' lists: { public: { }, diff --git a/lib/manifest/list_group/list/base.rb b/lib/manifest/list_group/list/base.rb index 2441c3b9..9053bdf0 100644 --- a/lib/manifest/list_group/list/base.rb +++ b/lib/manifest/list_group/list/base.rb @@ -15,7 +15,7 @@ module Manifest attr :list_group, :list_name, :list_manifest, :model, :model_manifest, :model_list_manifest, - :where, :includes + :where, :includes, :tree_name def initialize list_group, list_name, list_manifest @list_group = list_group @list_name = list_name @@ -36,6 +36,7 @@ module Manifest @table_name = @model.table_name @where = WhereFactory.factory self, @list_manifest['where'] @includes = IncludeFactory.factory self, @list_manifest['includes'] + @tree_name = @list_manifest['tree_name'] end def item_name diff --git a/lib/manifest/list_group/list/includes/auto.rb b/lib/manifest/list_group/list/includes/auto.rb index ad7e7b3f..e61dd324 100644 --- a/lib/manifest/list_group/list/includes/auto.rb +++ b/lib/manifest/list_group/list/includes/auto.rb @@ -6,18 +6,20 @@ module Manifest attr :tree_name def set_default super - @includes_manifest['args']['tree_name'] ||= 'owner' + @includes_manifest['args']['tree_name'] ||= @list.tree_name end def init super @tree_name = @args['tree_name'] - @parent_model_manifest = @list.model_manifest.tree_model_manifest(@tree_name) - if @parent_model_manifest - @parent_model_name = @parent_model_manifest.classify.item_name - @root_model_manifest = @parent_model_manifest.tree_model_manifest(@tree_name) - if @root_model_manifest - @root_model_name = @root_model_manifest.classify.item_name + if @tree_name + @parent_model_manifest = @list.model_manifest.tree_model_manifest(@tree_name) + if @parent_model_manifest + @parent_model_name = @parent_model_manifest.classify.item_name + @root_model_manifest = @parent_model_manifest.tree_model_manifest(@tree_name) + if @root_model_manifest + @root_model_name = @root_model_manifest.classify.item_name + end end end end diff --git a/lib/manifest/model.rb b/lib/manifest/model.rb index 6c76ea47..a18ead86 100644 --- a/lib/manifest/model.rb +++ b/lib/manifest/model.rb @@ -1,6 +1,7 @@ require_dependency "manifest/model/attribute" require_dependency "manifest/model/association" require_dependency "manifest/model/list" +require_dependency "manifest/model/tree" module Manifest class Model diff --git a/public/manifest.json b/public/manifest.json index a3505c50..0b7096be 100644 --- a/public/manifest.json +++ b/public/manifest.json @@ -4407,6 +4407,7 @@ } }, "story_sheet": { + "tree_name": "owner", "lists": { "public": {}, "private": {}, @@ -4425,6 +4426,7 @@ } }, "sheet_panel": { + "tree_name": "owner", "lists": { "public": {}, "private": {}, @@ -4443,6 +4445,7 @@ } }, "panel_picture": { + "tree_name": "owner", "lists": { "public": {}, "private": {}, @@ -4451,6 +4454,7 @@ } }, "speech_balloon": { + "tree_name": "owner", "lists": { "public": {}, "private": {}, @@ -4460,6 +4464,7 @@ } }, "speech": { + "tree_name": "owner", "lists": { "public": {}, "by_speech_balloon": {}, @@ -4467,12 +4472,14 @@ } }, "balloon": { + "tree_name": "owner", "lists": { "public": {}, "by_speech_balloon": {} } }, "ground_picture": { + "tree_name": "owner", "lists": { "public": {}, "private": {}, @@ -4481,6 +4488,7 @@ } }, "ground_color": { + "tree_name": "owner", "lists": { "public": {}, "private": {},