OSDN Git Service

temp
[pettanr/pettanr.git] / app / assets / javascripts / configurations.js.coffee.erb
index 030eeb8..d7da9f3 100644 (file)
 @configurations = {\r
-  filers: {\r
+  models: {\r
+    Scroll: 'scroll',\r
     scroll: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'title',\r
-        link: {\r
-          type: 'action'\r
-          name: 'play',\r
+      class_name: 'Scroll',\r
+      table_name: 'scrolls',\r
+      associations: {\r
+        belongs_to: {\r
+          author: {\r
+            id_column: 'author_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+          scroll_panels: {\r
+            foreign_key: 'scroll_id',\r
+            list_method: 'list_by_scroll',\r
+          }, \r
+          panels: {\r
+            through: 'scroll_panels',\r
+            foreign_key: 'scroll_id'\r
+            list_method: 'list_by_scroll',\r
+          }, \r
         },\r
       },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        title: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        description: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        visible: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          },\r
+          source: {\r
+            type: 'magic_number',\r
+            key: 'scroll_visible_items',\r
+          },\r
+        },\r
+        author_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          },\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
       },\r
-      edit: {\r
-        type: 'default',\r
+      select: {\r
+        method: 'list',\r
+        caption: {\r
+          type: 'column',\r
+          name: 'title'\r
+        },\r
       },\r
     },\r
+    ScrollPanel: 'scroll_panel',\r
     scroll_panel: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-        link: {\r
-          type: 'none'\r
+      class_name: 'ScrollPanel',\r
+      table_name: 'scroll_panels',\r
+      associations: {\r
+        belongs_to: {\r
+          panel: {\r
+            id_column: 'panel_id'\r
+          }, \r
+          scroll: {\r
+            id_column: 'scroll_id'\r
+          }, \r
+        },\r
+        has_many: {\r
         },\r
       },\r
-      caption: {\r
-        type: 'none',\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'none'\r
-      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        scroll_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        panel_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        t: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 0,\r
+          }\r
+        },\r
+        author_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
     },\r
+    Comic: 'comic',\r
     comic: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'title',\r
+      class_name: 'Comic',\r
+      table_name: 'comics',\r
+      associations: {\r
+        belongs_to: {\r
+          author: {\r
+            id_column: 'author_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+          stories: {\r
+            foreign_key: 'comic_id'\r
+            list_method: 'list_by_comic',\r
+          }, \r
+        },\r
+        has_many_through: {\r
+        },\r
       },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        title: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        description: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        visible: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          },\r
+          source: {\r
+            type: 'magic_number',\r
+            key: 'comic_visible_items',\r
+          },\r
+        },\r
+        author_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
       },\r
-      edit: {\r
-        type: 'default',\r
+      select: {\r
+        method: 'list',\r
+        caption: {\r
+          type: 'column',\r
+          name: 'title'\r
+        },\r
       },\r
     },\r
+    Story: 'story',\r
     story: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-      },\r
-      caption: {\r
-        type: 'method',\r
-        name: 'title_with_t',\r
-        link: {\r
-          type: 'action'\r
-          name: 'play',\r
+      class_name: 'Story',\r
+      table_name: 'stories',\r
+      associations: {\r
+        belongs_to: {\r
+          comic: {\r
+            id_column: 'comic_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+          story_sheets: {\r
+            foreign_key: 'story_id',\r
+            list_method: 'list_by_story',\r
+          }, \r
+          sheets: {\r
+            through: 'story_sheets',\r
+            foreign_key: 'story_id'\r
+            list_method: 'list_by_story',\r
+          }, \r
         },\r
       },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        comic_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        title: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        description: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        t: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 0,\r
+          }\r
+        },\r
+        visible: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          },\r
+          source: {\r
+            type: 'magic_number',\r
+            key: 'story_visible_items',\r
+          },\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
       },\r
-      edit: {\r
-        type: 'default',\r
+      select: {\r
+        method: 'list',\r
+        caption: {\r
+          type: 'method',\r
+          name: 'title_with_t',\r
+        },\r
       },\r
     },\r
+    StorySheet: 'story_sheet',\r
     story_sheet: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-        link: {\r
-          type: 'none'\r
+      class_name: 'StorySheet',\r
+      table_name: 'story_sheets',\r
+      associations: {\r
+        belongs_to: {\r
+          story: {\r
+            id_column: 'story_id'\r
+          }, \r
+          sheet: {\r
+            id_column: 'sheet_id'\r
+          }, \r
+        },\r
+        has_many: {\r
         },\r
       },\r
-      caption: {\r
-        type: 'none',\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'none'\r
-      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        story_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        sheet_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        t: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 0,\r
+          }\r
+        },\r
+        author_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
     },\r
+    Sheet: 'sheet',\r
     sheet: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'caption',\r
-        link: {\r
-          type: 'action'\r
-          name: 'play',\r
+      class_name: 'Sheet',\r
+      table_name: 'sheets',\r
+      associations: {\r
+        belongs_to: {\r
+          author: {\r
+            id_column: 'author_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+          story_sheets: {\r
+            foreign_key: 'story_id',\r
+            list_method: 'list_by_sheet',\r
+          }, \r
+          stories: {\r
+            through: 'story_sheets',\r
+            foreign_key: 'sheet_id'\r
+            list_method: 'list_by_sheet',\r
+          }, \r
+          sheet_panels: {\r
+            foreign_key: 'sheet_id',\r
+            list_method: 'list_by_sheet',\r
+          }, \r
+          panels: {\r
+            through: 'sheet_panels',\r
+            foreign_key: 'sheet_id'\r
+            list_method: 'list_by_sheet',\r
+          }, \r
         },\r
       },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        caption: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        width: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        height: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        visible: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          },\r
+          source: {\r
+            type: 'magic_number',\r
+            key: 'sheet_visible_items',\r
+          },\r
+        },\r
+        author_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
       },\r
-      edit: {\r
-        type: 'default',\r
+      select: {\r
+        method: 'list',\r
+        caption: {\r
+          type: 'column',\r
+          name: 'caption'\r
+        },\r
       },\r
     },\r
+    SheetPanel: 'sheet_panel',\r
     sheet_panel: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-        link: {\r
-          type: 'none'\r
+      class_name: 'SheetPanel',\r
+      table_name: 'sheet_panels',\r
+      associations: {\r
+        belongs_to: {\r
+          sheet: {\r
+            id_column: 'sheet_id'\r
+          }, \r
+          panel: {\r
+            id_column: 'panel_id'\r
+          }, \r
+        },\r
+        has_many: {\r
         },\r
       },\r
-      caption: {\r
-        type: 'none',\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'none'\r
-      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        sheet_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        panel_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        x: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        y: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        z: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 1,\r
+          }\r
+        },\r
+        t: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 0,\r
+          }\r
+        },\r
+        author_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
     },\r
+    Panel: 'panel',\r
     panel: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-      },\r
-      caption: {\r
-        type: 'method',\r
-        name: 'plain_scenario',\r
-        link: {\r
-          type: 'none'\r
+      class_name: 'Panel',\r
+      table_name: 'panels',\r
+      associations: {\r
+        belongs_to: {\r
+          author: {\r
+            id_column: 'author_id'\r
+          }, \r
         },\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'default',\r
-      },\r
-    },\r
-    panel_picture: {\r
-      symbol: {\r
-        type: 'picture',\r
-        name: 'symbol_option',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'caption',\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-    speech_balloon: {\r
-      symbol: {\r
-        type: 'picture',\r
-        name: 'symbol_option',\r
-      },\r
-      caption: {\r
-        type: 'method',\r
-        name: 'plain_scenario',\r
-        link: {\r
-          type: 'none'\r
+        has_many: {\r
+          scroll_panels: {\r
+            foreign_key: 'panel_id',\r
+            list_method: 'list_by_panel',\r
+          }, \r
+          scrolls: {\r
+            through: 'scroll_panels',\r
+            foreign_key: 'panel_id'\r
+            list_method: 'list_by_panel',\r
+          }, \r
+          sheet_panels: {\r
+            foreign_key: 'panel_id',\r
+            list_method: 'list_by_panel',\r
+          }, \r
+          sheets: {\r
+            through: 'sheet_panels',\r
+            foreign_key: 'panel_id'\r
+            list_method: 'list_by_panel',\r
+          }, \r
+          panel_pictures: {\r
+            foreign_key: 'panel_id',\r
+            list_method: 'list_by_panel',\r
+          }, \r
+          speech_balloons: {\r
+            foreign_key: 'panel_id',\r
+            list_method: 'list_by_panel',\r
+          }, \r
+          ground_pictures: {\r
+            foreign_key: 'panel_id',\r
+            list_method: 'list_by_panel',\r
+          }, \r
+          ground_colors: {\r
+            foreign_key: 'panel_id',\r
+            list_method: 'list_by_panel',\r
+          }, \r
         },\r
       },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-    speech: {\r
-      symbol: {\r
-        type: 'picture',\r
-        name: 'symbol_option',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'content',\r
-        link: {\r
-          type: 'none'\r
-        },\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-    balloon: {\r
-      symbol: {\r
-        type: 'picture',\r
-        name: 'symbol_option',\r
-      },\r
-      caption: {\r
-        type: 'none',\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-    ground_picture: {\r
-      symbol: {\r
-        type: 'picture',\r
-        name: 'symbol_option',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'caption',\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-    ground_color: {\r
-      symbol: {\r
-        type: 'template',\r
-        name: 'symbol',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'caption',\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-    original_picture: {\r
-      symbol: {\r
-        type: 'picture',\r
-        name: 'symbol_option',\r
-      },\r
-      caption: {\r
-        type: 'method',\r
-        name: 'revision',\r
-        link: {\r
-          type: 'action'\r
-          name: 'history',\r
-        },\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'template',\r
-        name: 'publish',\r
-      },\r
-    },\r
-    picture: {\r
-    },\r
-    resource_picture: {\r
-      symbol: {\r
-        type: 'picture',\r
-        name: 'symbol_option',\r
-      },\r
-      caption: {\r
-        type: 'none',\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-    speech_balloon_template: {\r
-      symbol: {\r
-        type: 'picture',\r
-        name: 'symbol_option',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'caption',\r
-      },\r
-      summary: {\r
-        type: 'none',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-    writing_format: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'caption',\r
-      },\r
-      summary: {\r
-        type: 'none',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-    license_group: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'caption',\r
-        link: {\r
-          type: 'url_column'\r
-          name: 'url',\r
-        },\r
-      },\r
-      summary: {\r
-        type: 'none',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-    license: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-      },\r
-      caption: {\r
-        type: 'method',\r
-        name: 'caption_with_group',\r
-        link: {\r
-          type: 'url_column'\r
-          name: 'url',\r
-        },\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-    author: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'name',\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'account',\r
-      },\r
-    },\r
-    artist: {\r
-      symbol: {\r
-        type: 'image',\r
-        name: '<%= asset_path('item.png') %>',\r
-      },\r
-      caption: {\r
-        type: 'column',\r
-        name: 'name',\r
-      },\r
-      summary: {\r
-        type: 'template',\r
-        name: 'summary',\r
-      },\r
-      edit: {\r
-        type: 'account',\r
-      },\r
-    },\r
-    system_picture: {\r
-      symbol: {\r
-        type: 'picture',\r
-        name: 'symbol_option',\r
-      },\r
-      caption: {\r
-        type: 'none',\r
-      },\r
-      summary: {\r
-        type: 'none',\r
-      },\r
-      edit: {\r
-        type: 'none',\r
-      },\r
-    },\r
-  },\r
-  models: {\r
-    Sheet: 'sheet',\r
-    sheet: {\r
-      class_name: 'Sheet',\r
-      table_name: 'sheets',\r
       attributes: {\r
         id: {\r
           type: 'number',\r
             number: true,\r
           }\r
         },\r
-      }\r
-    },\r
-    Panel: 'panel',\r
-    panel: {\r
-      class_name: 'Panel',\r
-      table_name: 'panels',\r
-      attributes: {\r
-        id: {\r
+        width: {\r
           type: 'number',\r
-          primary_key: 1,\r
           rules : {\r
+            required: true,\r
             number: true,\r
-          }\r
-        },\r
-        width: {\r
-          type: 'number',\r
-          rules : {\r
-            required: true,\r
-            number: true,\r
-            min: 1,\r
+            min: 1,\r
           }\r
         },\r
         height: {\r
           rules : {\r
             required: true,\r
             number: true,\r
-          }\r
+          },\r
+          source: {\r
+            type: 'magic_number',\r
+            key: 'panel_visible_items',\r
+          },\r
         },\r
         author_id: {\r
           type: 'number',\r
         updated_at: {\r
           type: 'datetime',\r
         }\r
-      }\r
+      },\r
+      select: {\r
+        method: 'list',\r
+        caption: {\r
+          type: 'method',\r
+          name: 'plain_scenario',\r
+        },\r
+      },\r
     },\r
     PanelPicture: 'panel_picture',\r
     panel_picture: {\r
       class_name: 'PanelPicture',\r
       table_name: 'panel_pictures',\r
+      associations: {\r
+        belongs_to: {\r
+          panel: {\r
+            id_column: 'panel_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+        },\r
+      },\r
       attributes: {\r
         id: {\r
           type: 'number',\r
       class_name: 'SpeechBalloon',\r
       table_name: 'speech_balloons',\r
       extend: 'classname', \r
+      associations: {\r
+        belongs_to: {\r
+          panel: {\r
+            id_column: 'panel_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+        },\r
+        has_one: {\r
+          balloon: {\r
+            foreign_key: 'speech_balloon_id',\r
+            list_method: 'list_by_speech_balloon',\r
+          }, \r
+          speech: {\r
+            foreign_key: 'speech_balloon_id',\r
+            list_method: 'list_by_speech_balloon',\r
+          }, \r
+        },\r
+      },\r
       attributes: {\r
         id: {\r
           type: 'number',\r
         updated_at: {\r
           type: 'datetime',\r
         }\r
-      }\r
+      },\r
+      select: {\r
+        method: 'list',\r
+        caption: {\r
+          type: 'method',\r
+          name: 'plain_scenario',\r
+        },\r
+      },\r
     }, \r
     Balloon: 'balloon',\r
     balloon: {\r
       class_name: 'Balloon',\r
       table_name: 'balloons',\r
+      associations: {\r
+        belongs_to: {\r
+          speech_balloon: {\r
+            id_column: 'speech_balloon_id'\r
+          }, \r
+          system_picture: {\r
+            id_column: 'system_picture_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+        },\r
+      },\r
       attributes: {\r
         id: {\r
           type: 'number',\r
     speech: {\r
       class_name: 'Speech',\r
       table_name: 'speeches',\r
+      associations: {\r
+        belongs_to: {\r
+          speech_balloon: {\r
+            id_column: 'speech_balloon_id'\r
+          }, \r
+          writing_format: {\r
+            id_column: 'writing_format_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+        },\r
+      },\r
       attributes: {\r
         id: {\r
           type: 'number',\r
         },\r
         writing_format_id: {\r
           type: 'number',\r
+          source: {\r
+            type: 'model',\r
+            model: 'writing_format',\r
+            method: 'enable_list',\r
+            caption: 'caption'\r
+          },\r
           rules : {\r
             required: true,\r
             number: true,\r
             required: true,\r
             number: true,\r
             min: 0,\r
-          }\r
+          },\r
+          source: {\r
+            type: 'magic_number',\r
+            key: 'speech_font_size_items',\r
+          },\r
         },\r
         text_align: {\r
           type: 'number',\r
             required: true,\r
             number: true,\r
             range: [0, 3],\r
-          }\r
+          },\r
+          source: {\r
+            type: 'magic_number',\r
+            key: 'speech_text_align_items',\r
+          },\r
         },\r
         fore_color: {\r
           type: 'number',\r
     ground_picture: {\r
       class_name: 'GroundPicture',\r
       table_name: 'ground_pictures',\r
+      associations: {\r
+        belongs_to: {\r
+          panel: {\r
+            id_column: 'panel_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+        },\r
+      },\r
       attributes: {\r
         id: {\r
           type: 'number',\r
             required: true,\r
             number: true,\r
             range: [0, 3],\r
-          }\r
+          },\r
+          source: {\r
+            type: 'magic_number',\r
+            key: 'ground_picture_repeat_items',\r
+          },\r
         },\r
         x: {\r
           type: 'number',\r
     ground_color: {\r
       class_name: 'GroundColor',\r
       table_name: 'ground_colors',\r
+      associations: {\r
+        belongs_to: {\r
+          panel: {\r
+            id_column: 'panel_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+        },\r
+      },\r
       attributes: {\r
         id: {\r
           type: 'number',\r
             required: true,\r
             number: true,\r
             range: [0, 1],\r
-          }\r
+          },\r
+          source: {\r
+            type: 'magic_number',\r
+            key: 'ground_color_orientation_items',\r
+          },\r
         },\r
         xy: {\r
           type: 'number',\r
         }\r
       }\r
     },\r
-    WritingFormat: 'writing_format',\r
-    writing_format: {\r
-      class_name: 'WritingFormat',\r
-      table_name: 'writing_formats',\r
+    OriginalPicture: 'original_picture',\r
+    original_picture: {\r
+      class_name: 'OriginalPicture',\r
+      table_name: 'original_pictures',\r
+      associations: {\r
+        belongs_to: {\r
+          artist: {\r
+            id_column: 'artist_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+          pictures: {\r
+            foreign_key: 'original_picture_id',\r
+            list_method: 'list_by_original_picture',\r
+          }, \r
+        },\r
+        has_one: {\r
+          resource_picture: {\r
+            foreign_key: 'original_picture_id',\r
+            list_method: 'list_by_original_picture',\r
+          }, \r
+        },\r
+      },\r
       attributes: {\r
         id: {\r
           type: 'number',\r
             number: true,\r
           }\r
         },\r
-        name: {\r
+        ext: {\r
           type: 'text',\r
           rules : {\r
             required: true,\r
           }\r
         },\r
-        classname: {\r
+        width: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        height: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        filesize: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        artist_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        md5: {\r
           type: 'text',\r
           rules : {\r
             required: true,\r
+            required: true,\r
           }\r
         },\r
-        caption: {\r
+        uploaded_at: {\r
+          type: 'datetime',\r
+        },\r
+        published_at: {\r
+          type: 'datetime',\r
+        },\r
+        stopped_at: {\r
+          type: 'datetime',\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      },\r
+    },\r
+    Picture: 'picture',\r
+    picture: {\r
+      class_name: 'Picture',\r
+      table_name: 'pictures',\r
+      associations: {\r
+        belongs_to: {\r
+          license: {\r
+            id_column: 'license_id'\r
+          }, \r
+          artist: {\r
+            id_column: 'artist_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+        },\r
+        has_one: {\r
+        },\r
+      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        original_picture_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        revision: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        ext: {\r
           type: 'text',\r
           rules : {\r
             required: true,\r
           }\r
         },\r
-        system_picture_id: {\r
+        width: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        height: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        filesize: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        artist_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        license_id: {\r
           type: 'number',\r
           rules : {\r
             required: true,\r
             number: true,\r
           }\r
         },\r
+        md5: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        artist_name: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        credit: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
         settings: {\r
           type: 'text',\r
           rules : {\r
+          }\r
+        },\r
+        classname: {\r
+          type: 'text',\r
+          rules : {\r
             required: true,\r
           }\r
         },\r
         }\r
       }\r
     },\r
-\r
+    ResourcePicture: 'resource_picture',\r
+    resource_picture: {\r
+      class_name: 'ResourcePicture',\r
+      table_name: 'resource_pictures',\r
+      associations: {\r
+        belongs_to: {\r
+          license: {\r
+            id_column: 'license_id'\r
+          }, \r
+          artist: {\r
+            id_column: 'artist_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+        },\r
+        has_one: {\r
+        },\r
+      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        original_picture_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        revision: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        ext: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        width: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        height: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        filesize: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        artist_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        license_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        md5: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        artist_name: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        credit: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        settings: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        picture_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        classname: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
+    },\r
+    SpeechBalloonTemplate: 'speech_balloon_template',\r
+    speech_balloon_template: {\r
+      class_name: 'SpeechBalloonTemplate',\r
+      table_name: 'speech_balloon_templates',\r
+      associations: {\r
+        belongs_to: {\r
+          system_picture: {\r
+            id_column: 'system_picture_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+          speech_balloons: {\r
+            foreign_key: 'speech_balloon_template_id',\r
+            list_method: 'list_by_speech_balloon_template',\r
+          }, \r
+          panels: {\r
+            through: 'speech_balloons',\r
+            foreign_key: 'speech_balloon_template_id',\r
+            list_method: 'list_by_speech_balloon_template',\r
+          }, \r
+        },\r
+        has_one: {\r
+        },\r
+      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        name: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        classname: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        caption: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        t: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+            min: 0,\r
+          }\r
+        },\r
+        system_picture_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        settings: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      },\r
+      select: {\r
+        method: 'enable_list',\r
+        caption: {\r
+          type: 'column',\r
+          name: 'caption',\r
+        },\r
+      },\r
+    },\r
+    WritingFormat: 'writing_format',\r
+    writing_format: {\r
+      class_name: 'WritingFormat',\r
+      table_name: 'writing_formats',\r
+      associations: {\r
+        belongs_to: {\r
+          system_picture: {\r
+            id_column: 'system_picture_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+          speeches: {\r
+            foreign_key: 'writing_format_id',\r
+            list_method: 'list_by_writing_format',\r
+          }, \r
+        },\r
+        has_one: {\r
+        },\r
+      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        name: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        classname: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        caption: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        system_picture_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        settings: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      },\r
+      select: {\r
+        method: 'enable_list',\r
+        caption: {\r
+          type: 'column',\r
+          name: 'caption',\r
+        },\r
+      },\r
+    },\r
+    LicenseGroup: 'license_group',\r
+    license_group: {\r
+      class_name: 'LicenseGroup',\r
+      table_name: 'license_groups',\r
+      associations: {\r
+        belongs_to: {\r
+        },\r
+        has_many: {\r
+          licenses: {\r
+            foreign_key: 'license_group_id',\r
+            list_method: 'list_by_license_group',\r
+          }, \r
+        },\r
+        has_one: {\r
+        },\r
+      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        name: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        classname: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        caption: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        url: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      },\r
+      select: {\r
+        method: 'list',\r
+        caption: {\r
+          type: 'column',\r
+          name: 'caption',\r
+        },\r
+      },\r
+    },\r
+    License: 'license',\r
+    license: {\r
+      class_name: 'License',\r
+      table_name: 'licenses',\r
+      associations: {\r
+        belongs_to: {\r
+          license_group: {\r
+            id_column: 'license_group_id'\r
+          }, \r
+          system_picture: {\r
+            id_column: 'system_picture_id'\r
+          }, \r
+        },\r
+        has_many: {\r
+          resource_pictures: {\r
+            foreign_key: 'license_id',\r
+            list_method: 'list_by_license',\r
+          }, \r
+        },\r
+        has_one: {\r
+        },\r
+      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        license_group_id: {\r
+          type: 'number',\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        name: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        caption: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        system_picture_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        url: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        settings: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        credit_pictures: {\r
+          type: 'text',\r
+          rules : {\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
+    },\r
+    Author: 'author',\r
+    author: {\r
+      class_name: 'Author',\r
+      table_name: 'authors',\r
+      associations: {\r
+        belongs_to: {\r
+        },\r
+        has_many: {\r
+          scrolls: {\r
+            foreign_key: 'author_id',\r
+            list_method: 'list_by_author',\r
+          }, \r
+          comics: {\r
+            foreign_key: 'author_id',\r
+            list_method: 'list_by_author',\r
+          }, \r
+          stories: {\r
+            foreign_key: 'author_id',\r
+            list_method: 'list_by_author',\r
+          }, \r
+          sheets: {\r
+            foreign_key: 'author_id',\r
+            list_method: 'list_by_author',\r
+          }, \r
+          panels: {\r
+            foreign_key: 'author_id',\r
+            list_method: 'list_by_author',\r
+          }, \r
+        },\r
+        has_one: {\r
+        },\r
+      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        name: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        user_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      },\r
+      select: {\r
+        method: 'list',\r
+        caption: {\r
+          type: 'column',\r
+          name: 'name',\r
+        },\r
+      },\r
+    },\r
+    Artist: 'artist',\r
+    artist: {\r
+      class_name: 'Artist',\r
+      table_name: 'artists',\r
+      associations: {\r
+        belongs_to: {\r
+        },\r
+        has_many: {\r
+          resource_pictures: {\r
+            foreign_key: 'artist_id',\r
+            list_method: 'list_by_artist',\r
+          }, \r
+        },\r
+        has_one: {\r
+        },\r
+      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        name: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        author_id: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      },\r
+      select: {\r
+        method: 'list',\r
+        caption: {\r
+          type: 'column',\r
+          name: 'name',\r
+        },\r
+      },\r
+    },\r
+    SystemPicture: 'system_picture',\r
+    system_picture: {\r
+      class_name: 'SystemPicture',\r
+      table_name: 'system_pictures',\r
+      associations: {\r
+        belongs_to: {\r
+        },\r
+        has_many: {\r
+        },\r
+        has_one: {\r
+        },\r
+      },\r
+      attributes: {\r
+        id: {\r
+          type: 'number',\r
+          primary_key: 1,\r
+          rules : {\r
+            number: true,\r
+          }\r
+        },\r
+        ext: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+          }\r
+        },\r
+        width: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        height: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        filesize: {\r
+          type: 'number',\r
+          rules : {\r
+            required: true,\r
+            number: true,\r
+          }\r
+        },\r
+        md5: {\r
+          type: 'text',\r
+          rules : {\r
+            required: true,\r
+            required: true,\r
+          }\r
+        },\r
+        created_at: {\r
+          type: 'datetime',\r
+        },\r
+        updated_at: {\r
+          type: 'datetime',\r
+        }\r
+      }\r
+    },\r
+  },\r
+  profiles: {\r
+    scroll: {\r
+      fields: [\r
+        'id', \r
+        'title', \r
+        'description', \r
+        'visible', \r
+        'author_id', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'author',\r
+        ],\r
+        has_many: [\r
+          'scroll_panels', \r
+          'panels'\r
+        ],\r
+      }, \r
+    },\r
+    scroll_panel: {\r
+      fields: [\r
+        'id', \r
+        'scroll_id', \r
+        'panel_id', \r
+        't', \r
+        'author_id', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'scroll', \r
+          'panel'\r
+        ],\r
+        has_many: [\r
+        ],\r
+      }, \r
+    },\r
+    comic: {\r
+      fields: [\r
+        'id', \r
+        'title', \r
+        'description', \r
+        'visible', \r
+        'author_id', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'author',\r
+        ],\r
+        has_many: [\r
+          'stories', \r
+        ],\r
+      }, \r
+    },\r
+    story: {\r
+      fields: [\r
+        'id', \r
+        'comic_id', \r
+        'title', \r
+        'description', \r
+        't', \r
+        'visible', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'comic',\r
+        ],\r
+        has_many: [\r
+          'story_sheets', \r
+          'sheets'\r
+        ],\r
+      }, \r
+    },\r
+    story_sheet: {\r
+      fields: [\r
+        'id', \r
+        'story_id', \r
+        'sheet_id', \r
+        't', \r
+        'author_id', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'story',\r
+          'sheet',\r
+        ],\r
+        has_many: [\r
+        ],\r
+      }, \r
+    },\r
+    sheet: {\r
+      fields: [\r
+        'id', \r
+        'caption', \r
+        'width', \r
+        'height', \r
+        'visible', \r
+        'author_id', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'author',\r
+        ],\r
+        has_many: [\r
+          'story_sheets', \r
+          'stories', \r
+          'sheet_panels'\r
+          'panels'\r
+        ],\r
+      }, \r
+    },\r
+    sheet_panel: {\r
+      fields: [\r
+        'id', \r
+        'sheet_id', \r
+        'panel_id', \r
+        'x', \r
+        'y', \r
+        'z', \r
+        't', \r
+        'author_id', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'sheet',\r
+          'panel',\r
+        ],\r
+        has_many: [\r
+        ],\r
+      }, \r
+    },\r
+    panel: {\r
+      fields: [\r
+        'id', \r
+        'width', \r
+        'height', \r
+        'border', \r
+        'caption', \r
+        'publish', \r
+        'author_id', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'author',\r
+        ],\r
+        has_many: [\r
+          'scroll_panels',\r
+          'scrolls',\r
+          'sheet_panels',\r
+          'sheets',\r
+          'panel_pictures',\r
+          'speech_balloons',\r
+          'ground_pictures',\r
+          'ground_colors',\r
+        ],\r
+      }, \r
+    },\r
+    panel_picture: {\r
+      fields: [\r
+        'id', \r
+        'panel_id', \r
+        'picture_id', \r
+        'caption', \r
+        'x', \r
+        'y', \r
+        'width', \r
+        'height', \r
+        'link', \r
+        'z', \r
+        't', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'panel',\r
+        ],\r
+        has_many: [\r
+        ],\r
+      }, \r
+    },\r
+    speech_balloon: {\r
+      fields: [\r
+        'id', \r
+        'panel_id', \r
+        'speech_balloon_template_id', \r
+        'classname', \r
+        'z', \r
+        't', \r
+        'settings', \r
+        'caption', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'panel',\r
+        ],\r
+        has_many: [\r
+        ],\r
+        has_one: [\r
+          'balloon',\r
+          'speech',\r
+        ],\r
+      }, \r
+    },\r
+    speech: {\r
+      fields: [\r
+        'id', \r
+        'speech_balloon_id', \r
+        'writing_format_id', \r
+        'content', \r
+        'font_size', \r
+        'text_align', \r
+        'fore_color', \r
+        'x', \r
+        'y', \r
+        'width', \r
+        'height', \r
+        'quotes', \r
+        'settings', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'speech_balloon',\r
+          'writing_format',\r
+        ],\r
+        has_many: [\r
+        ],\r
+      }, \r
+    },\r
+    balloon: {\r
+      fields: [\r
+        'id', \r
+        'speech_balloon_id', \r
+        'system_picture_id', \r
+        'x', \r
+        'y', \r
+        'width', \r
+        'height', \r
+        'r', \r
+        'settings', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'speech_balloon',\r
+          'system_picture',\r
+        ],\r
+        has_many: [\r
+        ],\r
+      }, \r
+    },\r
+    ground_picture: {\r
+      fields: [\r
+        'id', \r
+        'panel_id', \r
+        'picture_id', \r
+        'caption', \r
+        'repeat', \r
+        'x', \r
+        'y', \r
+        'z', \r
+        't', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'panel',\r
+        ],\r
+        has_many: [\r
+        ],\r
+      }, \r
+    },\r
+    ground_color: {\r
+      fields: [\r
+        'id', \r
+        'panel_id', \r
+        'caption', \r
+        'code', \r
+        'orientation', \r
+        'xy', \r
+        'wh', \r
+        'z', \r
+        't', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'panel',\r
+        ],\r
+        has_many: [\r
+        ],\r
+      }, \r
+    },\r
+    original_picture: {\r
+      fields: [\r
+        'id', \r
+        'ext', \r
+        'width', \r
+        'height', \r
+        'filesize', \r
+        'artist_id', \r
+        'md5', \r
+        'uploaded_at', \r
+        'published_at', \r
+        'stopped_at', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'artist',\r
+        ],\r
+        has_many: [\r
+          'pictures',\r
+        ],\r
+        has_one: [\r
+          'resource_picture',\r
+        ],\r
+      }, \r
+    },\r
+    picture: {\r
+      fields: [\r
+        'id', \r
+        'original_picture_id', \r
+        'revision', \r
+        'ext', \r
+        'width', \r
+        'height', \r
+        'filesize', \r
+        'artist_id', \r
+        'license_id', \r
+        'md5', \r
+        'artist_name', \r
+        'credit', \r
+        'settings', \r
+        'classname', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'license',\r
+          'artist',\r
+        ],\r
+        has_many: [\r
+        ],\r
+        has_one: [\r
+        ],\r
+      }, \r
+    },\r
+    resource_picture: {\r
+      fields: [\r
+        'id', \r
+        'original_picture_id', \r
+        'revision', \r
+        'ext', \r
+        'width', \r
+        'height', \r
+        'filesize', \r
+        'artist_id', \r
+        'license_id', \r
+        'md5', \r
+        'artist_name', \r
+        'credit', \r
+        'settings', \r
+        'picture_id', \r
+        'classname', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'license',\r
+          'artist',\r
+        ],\r
+        has_many: [\r
+        ],\r
+        has_one: [\r
+        ],\r
+      }, \r
+    },\r
+    speech_balloon_template: {\r
+      fields: [\r
+        'id', \r
+        'name', \r
+        'classname', \r
+        'caption', \r
+        't', \r
+        'system_picture_id', \r
+        'settings', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'system_picture',\r
+        ],\r
+        has_many: [\r
+          'speech_balloons', \r
+          'panels', \r
+        ],\r
+        has_one: [\r
+        ],\r
+      }, \r
+    },\r
+    writing_format: {\r
+      fields: [\r
+        'id', \r
+        'name', \r
+        'classname', \r
+        'caption', \r
+        'system_picture_id', \r
+        'settings', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'system_picture',\r
+        ],\r
+        has_many: [\r
+          'speeches', \r
+        ],\r
+        has_one: [\r
+        ],\r
+      }, \r
+    },\r
+    license_group: {\r
+      fields: [\r
+        'id', \r
+        'name', \r
+        'classname', \r
+        'caption', \r
+        'url', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+        ],\r
+        has_many: [\r
+          'licenses', \r
+        ],\r
+        has_one: [\r
+        ],\r
+      }, \r
+    },\r
+    license: {\r
+      fields: [\r
+        'id', \r
+        'license_group_id', \r
+        'name', \r
+        'caption', \r
+        'system_picture_id', \r
+        'url', \r
+        'settings', \r
+        'credit_pictures', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+          'license_group', \r
+          'system_picture', \r
+        ],\r
+        has_many: [\r
+          'resource_pictures', \r
+        ],\r
+        has_one: [\r
+        ],\r
+      }, \r
+    },\r
+    author: {\r
+      fields: [\r
+        'id', \r
+        'name', \r
+        'user_id', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+        ],\r
+        has_many: [\r
+          'scrolls', \r
+          'comics', \r
+          'stories', \r
+          'sheets', \r
+          'panels', \r
+        ],\r
+        has_one: [\r
+        ],\r
+      }, \r
+    },\r
+    artist: {\r
+      fields: [\r
+        'id', \r
+        'name', \r
+        'author_id', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+        ],\r
+        has_many: [\r
+          'resource_pictures', \r
+        ],\r
+        has_one: [\r
+        ],\r
+      }, \r
+    },\r
+    system_picture: {\r
+      fields: [\r
+        'id', \r
+        'ext', \r
+        'width', \r
+        'height', \r
+        'filesize', \r
+        'md5', \r
+        'created_at', \r
+        'updated_at',\r
+      ],\r
+      associations: {\r
+        belongs_to: [\r
+        ],\r
+        has_many: [\r
+        ],\r
+        has_one: [\r
+        ],\r
+      }, \r
+    },\r
+  },\r
+  filers: {\r
+    scroll: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'title',\r
+        link: {\r
+          type: 'action'\r
+          name: 'play',\r
+        },\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'default',\r
+      },\r
+    },\r
+    scroll_panel: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+        link: {\r
+          type: 'none'\r
+        },\r
+      },\r
+      caption: {\r
+        type: 'none',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none'\r
+      },\r
+    },\r
+    comic: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'title',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'default',\r
+      },\r
+    },\r
+    story: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+      },\r
+      caption: {\r
+        type: 'method',\r
+        name: 'title_with_t',\r
+        link: {\r
+          type: 'action'\r
+          name: 'play',\r
+        },\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'default',\r
+      },\r
+    },\r
+    story_sheet: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+        link: {\r
+          type: 'none'\r
+        },\r
+      },\r
+      caption: {\r
+        type: 'none',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none'\r
+      },\r
+    },\r
+    sheet: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'caption',\r
+        link: {\r
+          type: 'action'\r
+          name: 'play',\r
+        },\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'default',\r
+      },\r
+    },\r
+    sheet_panel: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+        link: {\r
+          type: 'none'\r
+        },\r
+      },\r
+      caption: {\r
+        type: 'none',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none'\r
+      },\r
+    },\r
+    panel: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+      },\r
+      caption: {\r
+        type: 'method',\r
+        name: 'plain_scenario',\r
+        link: {\r
+          type: 'none'\r
+        },\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'default',\r
+      },\r
+    },\r
+    panel_picture: {\r
+      symbol: {\r
+        type: 'picture',\r
+        name: 'symbol_option',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'caption',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    speech_balloon: {\r
+      symbol: {\r
+        type: 'picture',\r
+        name: 'symbol_option',\r
+      },\r
+      caption: {\r
+        type: 'method',\r
+        name: 'plain_scenario',\r
+        link: {\r
+          type: 'none'\r
+        },\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    speech: {\r
+      symbol: {\r
+        type: 'picture',\r
+        name: 'symbol_option',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'content',\r
+        link: {\r
+          type: 'none'\r
+        },\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    balloon: {\r
+      symbol: {\r
+        type: 'picture',\r
+        name: 'symbol_option',\r
+      },\r
+      caption: {\r
+        type: 'none',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    ground_picture: {\r
+      symbol: {\r
+        type: 'picture',\r
+        name: 'symbol_option',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'caption',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    ground_color: {\r
+      symbol: {\r
+        type: 'template',\r
+        name: 'symbol',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'caption',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    original_picture: {\r
+      symbol: {\r
+        type: 'picture',\r
+        name: 'symbol_option',\r
+      },\r
+      caption: {\r
+        type: 'method',\r
+        name: 'revision',\r
+        link: {\r
+          type: 'action'\r
+          name: 'history',\r
+        },\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'template',\r
+        name: 'publish',\r
+      },\r
+    },\r
+    picture: {\r
+      symbol: {\r
+        type: 'picture',\r
+        name: 'symbol_option',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'revision',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    resource_picture: {\r
+      symbol: {\r
+        type: 'picture',\r
+        name: 'symbol_option',\r
+      },\r
+      caption: {\r
+        type: 'none',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    speech_balloon_template: {\r
+      symbol: {\r
+        type: 'picture',\r
+        name: 'symbol_option',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'caption',\r
+      },\r
+      summary: {\r
+        type: 'none',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    writing_format: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'caption',\r
+      },\r
+      summary: {\r
+        type: 'none',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    license_group: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'caption',\r
+        link: {\r
+          type: 'url_column'\r
+          name: 'url',\r
+        },\r
+      },\r
+      summary: {\r
+        type: 'none',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    license: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+      },\r
+      caption: {\r
+        type: 'method',\r
+        name: 'caption_with_group',\r
+        link: {\r
+          type: 'url_column'\r
+          name: 'url',\r
+        },\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
+    author: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'name',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'account',\r
+      },\r
+    },\r
+    artist: {\r
+      symbol: {\r
+        type: 'image',\r
+        name: '<%= asset_path('item.png') %>',\r
+      },\r
+      caption: {\r
+        type: 'column',\r
+        name: 'name',\r
+      },\r
+      summary: {\r
+        type: 'template',\r
+        name: 'summary',\r
+      },\r
+      edit: {\r
+        type: 'account',\r
+      },\r
+    },\r
+    system_picture: {\r
+      symbol: {\r
+        type: 'picture',\r
+        name: 'symbol_option',\r
+      },\r
+      caption: {\r
+        type: 'none',\r
+      },\r
+      summary: {\r
+        type: 'none',\r
+      },\r
+      edit: {\r
+        type: 'none',\r
+      },\r
+    },\r
   },\r
   elements: [\r
     {\r