OSDN Git Service

temp
[pettanr/pettanr.git] / app / assets / javascripts / configurations.js.coffee.erb
1 #マニフェスト\r
2 @configurations = {\r
3   controllers: {\r
4     scroll: {\r
5       item_name: 'scroll',\r
6       index: {\r
7         type: 'list',\r
8         list: {\r
9           list_name: 'public',\r
10           \r
11         },\r
12       },\r
13       show: {\r
14         type: 'show',\r
15         name: 'show',\r
16       },\r
17     },\r
18   },\r
19   models: {\r
20     Scroll: 'scroll',\r
21     scroll: {\r
22       class_name: 'Scroll',\r
23       table_name: 'scrolls',\r
24       associations: {\r
25         belongs_to: {\r
26           author: {\r
27             id_column: 'author_id'\r
28           }, \r
29         },\r
30         has_many: {\r
31           scroll_panels: {\r
32             foreign_key: 'scroll_id',\r
33             model: 'scroll_panel',\r
34           }, \r
35           panels: {\r
36             through: 'scroll_panel',\r
37             foreign_key: 'scroll_id'\r
38             model: 'panel',\r
39           }, \r
40         },\r
41       },\r
42       filters: {\r
43         by_author: {\r
44           type: 'filter',\r
45           key: 'author_id',\r
46         },\r
47       },\r
48       through_filters: {\r
49         by_panel: {\r
50           through: 'scroll_panels',\r
51           key: 'panel_id',\r
52         },\r
53       },\r
54       attributes: {\r
55         id: {\r
56           type: 'number',\r
57           primary_key: 1,\r
58           rules : {\r
59             number: true,\r
60           }\r
61         },\r
62         title: {\r
63           type: 'text',\r
64           rules : {\r
65             required: true,\r
66           }\r
67         },\r
68         description: {\r
69           type: 'text',\r
70           rules : {\r
71           }\r
72         },\r
73         visible: {\r
74           type: 'number',\r
75           rules : {\r
76             required: true,\r
77             number: true,\r
78           },\r
79           source: {\r
80             type: 'magic_number',\r
81             key: 'scroll_visible_items',\r
82           },\r
83         },\r
84         author_id: {\r
85           type: 'number',\r
86           rules : {\r
87             required: true,\r
88             number: true,\r
89           },\r
90         },\r
91         created_at: {\r
92           type: 'datetime',\r
93         },\r
94         updated_at: {\r
95           type: 'datetime',\r
96         }\r
97       },\r
98       select: {\r
99         list: {\r
100           name: 'public'\r
101         },\r
102         caption: {\r
103           type: 'column',\r
104           name: 'title'\r
105         },\r
106       },\r
107     },\r
108     ScrollPanel: 'scroll_panel',\r
109     scroll_panel: {\r
110       class_name: 'ScrollPanel',\r
111       table_name: 'scroll_panels',\r
112       associations: {\r
113         belongs_to: {\r
114           panel: {\r
115             id_column: 'panel_id'\r
116           }, \r
117           scroll: {\r
118             id_column: 'scroll_id'\r
119           }, \r
120         },\r
121         has_many: {\r
122         },\r
123       },\r
124       attributes: {\r
125         id: {\r
126           type: 'number',\r
127           primary_key: 1,\r
128           rules : {\r
129             number: true,\r
130           }\r
131         },\r
132         scroll_id: {\r
133           type: 'number',\r
134           rules : {\r
135             required: true,\r
136             number: true,\r
137           }\r
138         },\r
139         panel_id: {\r
140           type: 'number',\r
141           rules : {\r
142             required: true,\r
143             number: true,\r
144           }\r
145         },\r
146         t: {\r
147           type: 'number',\r
148           rules : {\r
149             required: true,\r
150             number: true,\r
151             min: 0,\r
152           }\r
153         },\r
154         author_id: {\r
155           type: 'number',\r
156           rules : {\r
157             required: true,\r
158             number: true,\r
159           }\r
160         },\r
161         created_at: {\r
162           type: 'datetime',\r
163         },\r
164         updated_at: {\r
165           type: 'datetime',\r
166         }\r
167       },\r
168       list: {\r
169         public: {\r
170           method: 'list',\r
171         },\r
172         by_panel: {\r
173           method: 'list_by_panel',\r
174         },\r
175         by_scroll: {\r
176           method: 'list_by_scroll',\r
177         },\r
178       },\r
179     },\r
180     Comic: 'comic',\r
181     comic: {\r
182       class_name: 'Comic',\r
183       table_name: 'comics',\r
184       associations: {\r
185         belongs_to: {\r
186           author: {\r
187             id_column: 'author_id'\r
188           }, \r
189         },\r
190         has_many: {\r
191           stories: {\r
192             foreign_key: 'comic_id'\r
193             list_method: 'list_by_comic',\r
194           }, \r
195         },\r
196         has_many_through: {\r
197         },\r
198       },\r
199       attributes: {\r
200         id: {\r
201           type: 'number',\r
202           primary_key: 1,\r
203           rules : {\r
204             number: true,\r
205           }\r
206         },\r
207         title: {\r
208           type: 'text',\r
209           rules : {\r
210             required: true,\r
211           }\r
212         },\r
213         description: {\r
214           type: 'text',\r
215           rules : {\r
216           }\r
217         },\r
218         visible: {\r
219           type: 'number',\r
220           rules : {\r
221             required: true,\r
222             number: true,\r
223           },\r
224           source: {\r
225             type: 'magic_number',\r
226             key: 'comic_visible_items',\r
227           },\r
228         },\r
229         author_id: {\r
230           type: 'number',\r
231           rules : {\r
232             required: true,\r
233             number: true,\r
234           }\r
235         },\r
236         created_at: {\r
237           type: 'datetime',\r
238         },\r
239         updated_at: {\r
240           type: 'datetime',\r
241         }\r
242       },\r
243       select: {\r
244         method: 'list',\r
245         caption: {\r
246           type: 'column',\r
247           name: 'title'\r
248         },\r
249       },\r
250     },\r
251     Story: 'story',\r
252     story: {\r
253       class_name: 'Story',\r
254       table_name: 'stories',\r
255       associations: {\r
256         belongs_to: {\r
257           comic: {\r
258             id_column: 'comic_id'\r
259           }, \r
260         },\r
261         has_many: {\r
262           story_sheets: {\r
263             foreign_key: 'story_id',\r
264             list_method: 'list_by_story',\r
265           }, \r
266           sheets: {\r
267             through: 'story_sheets',\r
268             foreign_key: 'story_id'\r
269             list_method: 'list_by_story',\r
270           }, \r
271         },\r
272       },\r
273       attributes: {\r
274         id: {\r
275           type: 'number',\r
276           primary_key: 1,\r
277           rules : {\r
278             number: true,\r
279           }\r
280         },\r
281         comic_id: {\r
282           type: 'number',\r
283           rules : {\r
284             number: true,\r
285           }\r
286         },\r
287         title: {\r
288           type: 'text',\r
289           rules : {\r
290           }\r
291         },\r
292         description: {\r
293           type: 'text',\r
294           rules : {\r
295           }\r
296         },\r
297         t: {\r
298           type: 'number',\r
299           rules : {\r
300             required: true,\r
301             number: true,\r
302             min: 0,\r
303           }\r
304         },\r
305         visible: {\r
306           type: 'number',\r
307           rules : {\r
308             required: true,\r
309             number: true,\r
310           },\r
311           source: {\r
312             type: 'magic_number',\r
313             key: 'story_visible_items',\r
314           },\r
315         },\r
316         created_at: {\r
317           type: 'datetime',\r
318         },\r
319         updated_at: {\r
320           type: 'datetime',\r
321         }\r
322       },\r
323       select: {\r
324         method: 'list',\r
325         caption: {\r
326           type: 'method',\r
327           name: 'title_with_t',\r
328         },\r
329       },\r
330     },\r
331     StorySheet: 'story_sheet',\r
332     story_sheet: {\r
333       class_name: 'StorySheet',\r
334       table_name: 'story_sheets',\r
335       associations: {\r
336         belongs_to: {\r
337           story: {\r
338             id_column: 'story_id'\r
339           }, \r
340           sheet: {\r
341             id_column: 'sheet_id'\r
342           }, \r
343         },\r
344         has_many: {\r
345         },\r
346       },\r
347       attributes: {\r
348         id: {\r
349           type: 'number',\r
350           primary_key: 1,\r
351           rules : {\r
352             number: true,\r
353           }\r
354         },\r
355         story_id: {\r
356           type: 'number',\r
357           rules : {\r
358             number: true,\r
359           }\r
360         },\r
361         sheet_id: {\r
362           type: 'number',\r
363           rules : {\r
364             number: true,\r
365           }\r
366         },\r
367         t: {\r
368           type: 'number',\r
369           rules : {\r
370             required: true,\r
371             number: true,\r
372             min: 0,\r
373           }\r
374         },\r
375         author_id: {\r
376           type: 'number',\r
377           rules : {\r
378             required: true,\r
379             number: true,\r
380           }\r
381         },\r
382         created_at: {\r
383           type: 'datetime',\r
384         },\r
385         updated_at: {\r
386           type: 'datetime',\r
387         }\r
388       }\r
389     },\r
390     Sheet: 'sheet',\r
391     sheet: {\r
392       class_name: 'Sheet',\r
393       table_name: 'sheets',\r
394       associations: {\r
395         belongs_to: {\r
396           author: {\r
397             id_column: 'author_id'\r
398           }, \r
399         },\r
400         has_many: {\r
401           story_sheets: {\r
402             foreign_key: 'story_id',\r
403             list_method: 'list_by_sheet',\r
404           }, \r
405           stories: {\r
406             through: 'story_sheets',\r
407             foreign_key: 'sheet_id'\r
408             list_method: 'list_by_sheet',\r
409           }, \r
410           sheet_panels: {\r
411             foreign_key: 'sheet_id',\r
412             list_method: 'list_by_sheet',\r
413           }, \r
414           panels: {\r
415             through: 'sheet_panels',\r
416             foreign_key: 'sheet_id'\r
417             list_method: 'list_by_sheet',\r
418           }, \r
419         },\r
420       },\r
421       attributes: {\r
422         id: {\r
423           type: 'number',\r
424           primary_key: 1,\r
425           rules : {\r
426             number: true,\r
427           }\r
428         },\r
429         caption: {\r
430           type: 'text',\r
431           rules : {\r
432           }\r
433         },\r
434         width: {\r
435           type: 'number',\r
436           rules : {\r
437             required: true,\r
438             number: true,\r
439           }\r
440         },\r
441         height: {\r
442           type: 'number',\r
443           rules : {\r
444             required: true,\r
445             number: true,\r
446           }\r
447         },\r
448         visible: {\r
449           type: 'number',\r
450           rules : {\r
451             required: true,\r
452             number: true,\r
453           },\r
454           source: {\r
455             type: 'magic_number',\r
456             key: 'sheet_visible_items',\r
457           },\r
458         },\r
459         author_id: {\r
460           type: 'number',\r
461           rules : {\r
462             required: true,\r
463             number: true,\r
464           }\r
465         },\r
466         created_at: {\r
467           type: 'datetime',\r
468         },\r
469         updated_at: {\r
470           type: 'datetime',\r
471         }\r
472       },\r
473       select: {\r
474         method: 'list',\r
475         caption: {\r
476           type: 'column',\r
477           name: 'caption'\r
478         },\r
479       },\r
480     },\r
481     SheetPanel: 'sheet_panel',\r
482     sheet_panel: {\r
483       class_name: 'SheetPanel',\r
484       table_name: 'sheet_panels',\r
485       associations: {\r
486         belongs_to: {\r
487           sheet: {\r
488             id_column: 'sheet_id'\r
489           }, \r
490           panel: {\r
491             id_column: 'panel_id'\r
492           }, \r
493         },\r
494         has_many: {\r
495         },\r
496       },\r
497       attributes: {\r
498         id: {\r
499           type: 'number',\r
500           primary_key: 1,\r
501           rules : {\r
502             number: true,\r
503           }\r
504         },\r
505         sheet_id: {\r
506           type: 'number',\r
507           rules : {\r
508             number: true,\r
509           }\r
510         },\r
511         panel_id: {\r
512           type: 'number',\r
513           rules : {\r
514             number: true,\r
515           }\r
516         },\r
517         x: {\r
518           type: 'number',\r
519           rules : {\r
520             required: true,\r
521             number: true,\r
522           }\r
523         },\r
524         y: {\r
525           type: 'number',\r
526           rules : {\r
527             required: true,\r
528             number: true,\r
529           }\r
530         },\r
531         z: {\r
532           type: 'number',\r
533           rules : {\r
534             required: true,\r
535             number: true,\r
536             min: 1,\r
537           }\r
538         },\r
539         t: {\r
540           type: 'number',\r
541           rules : {\r
542             required: true,\r
543             number: true,\r
544             min: 0,\r
545           }\r
546         },\r
547         author_id: {\r
548           type: 'number',\r
549           rules : {\r
550             number: true,\r
551           }\r
552         },\r
553         created_at: {\r
554           type: 'datetime',\r
555         },\r
556         updated_at: {\r
557           type: 'datetime',\r
558         }\r
559       }\r
560     },\r
561     Panel: 'panel',\r
562     panel: {\r
563       class_name: 'Panel',\r
564       table_name: 'panels',\r
565       associations: {\r
566         belongs_to: {\r
567           author: {\r
568             id_column: 'author_id'\r
569           }, \r
570         },\r
571         has_many: {\r
572           scroll_panels: {\r
573             foreign_key: 'panel_id',\r
574             list_method: 'list_by_panel',\r
575           }, \r
576           scrolls: {\r
577             through: 'scroll_panels',\r
578             foreign_key: 'panel_id'\r
579             list_method: 'list_by_panel',\r
580           }, \r
581           sheet_panels: {\r
582             foreign_key: 'panel_id',\r
583             list_method: 'list_by_panel',\r
584           }, \r
585           sheets: {\r
586             through: 'sheet_panels',\r
587             foreign_key: 'panel_id'\r
588             list_method: 'list_by_panel',\r
589           }, \r
590           panel_pictures: {\r
591             foreign_key: 'panel_id',\r
592             list_method: 'list_by_panel',\r
593           }, \r
594           speech_balloons: {\r
595             foreign_key: 'panel_id',\r
596             list_method: 'list_by_panel',\r
597           }, \r
598           ground_pictures: {\r
599             foreign_key: 'panel_id',\r
600             list_method: 'list_by_panel',\r
601           }, \r
602           ground_colors: {\r
603             foreign_key: 'panel_id',\r
604             list_method: 'list_by_panel',\r
605           }, \r
606         },\r
607       },\r
608       attributes: {\r
609         id: {\r
610           type: 'number',\r
611           primary_key: 1,\r
612           rules : {\r
613             number: true,\r
614           }\r
615         },\r
616         width: {\r
617           type: 'number',\r
618           rules : {\r
619             required: true,\r
620             number: true,\r
621             min: 1,\r
622           }\r
623         },\r
624         height: {\r
625           type: 'number',\r
626           rules : {\r
627             required: true,\r
628             number: true,\r
629             min: 1,\r
630           }\r
631         },\r
632         border: {\r
633           type: 'number',\r
634           rules : {\r
635             required: true,\r
636             number: true,\r
637             min: 0,\r
638           }\r
639         },\r
640         caption: {\r
641           type: 'text',\r
642           rules : {\r
643           }\r
644         },\r
645         publish: {\r
646           type: 'number',\r
647           rules : {\r
648             required: true,\r
649             number: true,\r
650           },\r
651           source: {\r
652             type: 'magic_number',\r
653             key: 'panel_visible_items',\r
654           },\r
655         },\r
656         author_id: {\r
657           type: 'number',\r
658           rules : {\r
659             required: true,\r
660             number: true,\r
661           }\r
662         },\r
663         created_at: {\r
664           type: 'datetime',\r
665         },\r
666         updated_at: {\r
667           type: 'datetime',\r
668         }\r
669       },\r
670       select: {\r
671         method: 'list',\r
672         caption: {\r
673           type: 'method',\r
674           name: 'plain_scenario',\r
675         },\r
676       },\r
677     },\r
678     PanelPicture: 'panel_picture',\r
679     panel_picture: {\r
680       class_name: 'PanelPicture',\r
681       table_name: 'panel_pictures',\r
682       associations: {\r
683         belongs_to: {\r
684           panel: {\r
685             id_column: 'panel_id'\r
686           }, \r
687         },\r
688         has_many: {\r
689         },\r
690       },\r
691       attributes: {\r
692         id: {\r
693           type: 'number',\r
694           primary_key: 1,\r
695           rules : {\r
696             number: true,\r
697           }\r
698         },\r
699         panel_id: {\r
700           type: 'number',\r
701           rules : {\r
702             number: true,\r
703           }\r
704         },\r
705         picture_id: {\r
706           type: 'number',\r
707           rules : {\r
708             required: true,\r
709             number: true,\r
710           }\r
711         },\r
712         caption: {\r
713           type: 'text',\r
714           rules : {\r
715           }\r
716         },\r
717         x: {\r
718           type: 'number',\r
719           rules : {\r
720             required: true,\r
721             number: true,\r
722           }\r
723         },\r
724         y: {\r
725           type: 'number',\r
726           rules : {\r
727             required: true,\r
728             number: true,\r
729           }\r
730         },\r
731         width: {\r
732           type: 'number',\r
733           rules : {\r
734             required: true,\r
735             number: true,\r
736           }\r
737         },\r
738         height: {\r
739           type: 'number',\r
740           rules : {\r
741             required: true,\r
742             number: true,\r
743           }\r
744         },\r
745         link: {\r
746           type: 'text',\r
747           rules : {\r
748             url: true,\r
749           }\r
750         },\r
751         z: {\r
752           type: 'number',\r
753           rules : {\r
754             required: true,\r
755             number: true,\r
756             min: 1,\r
757           }\r
758         },\r
759         t: {\r
760           type: 'number',\r
761           rules : {\r
762             required: true,\r
763             number: true,\r
764             min: 0,\r
765           }\r
766         },\r
767         created_at: {\r
768           type: 'datetime',\r
769         },\r
770         updated_at: {\r
771           type: 'datetime',\r
772         }\r
773       }\r
774     },\r
775     SpeechBalloon: 'speech_balloon',\r
776     speech_balloon: {\r
777       class_name: 'SpeechBalloon',\r
778       table_name: 'speech_balloons',\r
779       extend: 'classname', \r
780       associations: {\r
781         belongs_to: {\r
782           panel: {\r
783             id_column: 'panel_id'\r
784           }, \r
785         },\r
786         has_many: {\r
787         },\r
788         has_one: {\r
789           balloon: {\r
790             foreign_key: 'speech_balloon_id',\r
791             list_method: 'list_by_speech_balloon',\r
792           }, \r
793           speech: {\r
794             foreign_key: 'speech_balloon_id',\r
795             list_method: 'list_by_speech_balloon',\r
796           }, \r
797         },\r
798       },\r
799       attributes: {\r
800         id: {\r
801           type: 'number',\r
802           primary_key: 1,\r
803           rules : {\r
804             number: true,\r
805           }\r
806         },\r
807         panel_id: {\r
808           type: 'number',\r
809           rules : {\r
810             number: true,\r
811           }\r
812         },\r
813         speech_balloon_template_id: {\r
814           type: 'number',\r
815           rules : {\r
816             required: true,\r
817             number: true,\r
818           }\r
819         },\r
820         classname: {\r
821           type: 'text',\r
822           rules : {\r
823             required: true,\r
824           }\r
825         },\r
826         z: {\r
827           type: 'number',\r
828           rules : {\r
829             required: true,\r
830             number: true,\r
831             min: 1,\r
832           }\r
833         },\r
834         t: {\r
835           type: 'number',\r
836           rules : {\r
837             required: true,\r
838             number: true,\r
839             min: 0,\r
840           }\r
841         },\r
842         settings: {\r
843           type: 'text',\r
844           rules : {\r
845           }\r
846         },\r
847         caption: {\r
848           type: 'text',\r
849           rules : {\r
850           }\r
851         },\r
852         created_at: {\r
853           type: 'datetime',\r
854         },\r
855         updated_at: {\r
856           type: 'datetime',\r
857         }\r
858       },\r
859       select: {\r
860         method: 'list',\r
861         caption: {\r
862           type: 'method',\r
863           name: 'plain_scenario',\r
864         },\r
865       },\r
866     }, \r
867     Balloon: 'balloon',\r
868     balloon: {\r
869       class_name: 'Balloon',\r
870       table_name: 'balloons',\r
871       associations: {\r
872         belongs_to: {\r
873           speech_balloon: {\r
874             id_column: 'speech_balloon_id'\r
875           }, \r
876           system_picture: {\r
877             id_column: 'system_picture_id'\r
878           }, \r
879         },\r
880         has_many: {\r
881         },\r
882       },\r
883       attributes: {\r
884         id: {\r
885           type: 'number',\r
886           primary_key: 1,\r
887           rules : {\r
888             number: true,\r
889           }\r
890         },\r
891         speech_balloon_id: {\r
892           type: 'number',\r
893           rules : {\r
894             number: true,\r
895           }\r
896         },\r
897         system_picture_id: {\r
898           type: 'number',\r
899           rules : {\r
900             required: true,\r
901             number: true,\r
902           }\r
903         },\r
904         x: {\r
905           type: 'number',\r
906           rules : {\r
907             required: true,\r
908             number: true,\r
909           }\r
910         },\r
911         y: {\r
912           type: 'number',\r
913           rules : {\r
914             required: true,\r
915             number: true,\r
916           }\r
917         },\r
918         width: {\r
919           type: 'number',\r
920           rules : {\r
921             required: true,\r
922             number: true,\r
923             min: 1,\r
924           }\r
925         },\r
926         height: {\r
927           type: 'number',\r
928           rules : {\r
929             required: true,\r
930             number: true,\r
931             min: 1,\r
932           }\r
933         },\r
934         r: {\r
935           type: 'number',\r
936           rules : {\r
937             required: true,\r
938             number: true,\r
939           }\r
940         },\r
941         settings: {\r
942           type: 'text',\r
943           rules : {\r
944           }\r
945         },\r
946         created_at: {\r
947           type: 'datetime',\r
948         },\r
949         updated_at: {\r
950           type: 'datetime',\r
951         }\r
952       }\r
953     },\r
954     Speech: 'speech',\r
955     speech: {\r
956       class_name: 'Speech',\r
957       table_name: 'speeches',\r
958       associations: {\r
959         belongs_to: {\r
960           speech_balloon: {\r
961             id_column: 'speech_balloon_id'\r
962           }, \r
963           writing_format: {\r
964             id_column: 'writing_format_id'\r
965           }, \r
966         },\r
967         has_many: {\r
968         },\r
969       },\r
970       attributes: {\r
971         id: {\r
972           type: 'number',\r
973           primary_key: 1,\r
974           rules : {\r
975             number: true,\r
976           }\r
977         },\r
978         speech_balloon_id: {\r
979           type: 'number',\r
980           rules : {\r
981             number: true,\r
982           }\r
983         },\r
984         writing_format_id: {\r
985           type: 'number',\r
986           source: {\r
987             type: 'model',\r
988             model: 'writing_format',\r
989             method: 'enable_list',\r
990             caption: 'caption'\r
991           },\r
992           rules : {\r
993             required: true,\r
994             number: true,\r
995           }\r
996         },\r
997         content: {\r
998           type: 'text',\r
999           rules : {\r
1000           }\r
1001         },\r
1002         font_size: {\r
1003           type: 'float',\r
1004           rules : {\r
1005             required: true,\r
1006             number: true,\r
1007             min: 0,\r
1008           },\r
1009           source: {\r
1010             type: 'magic_number',\r
1011             key: 'speech_font_size_items',\r
1012           },\r
1013         },\r
1014         text_align: {\r
1015           type: 'number',\r
1016           rules : {\r
1017             required: true,\r
1018             number: true,\r
1019             range: [0, 3],\r
1020           },\r
1021           source: {\r
1022             type: 'magic_number',\r
1023             key: 'speech_text_align_items',\r
1024           },\r
1025         },\r
1026         fore_color: {\r
1027           type: 'number',\r
1028           rules : {\r
1029             required: true,\r
1030             number: true,\r
1031             range: [0, 0xffffff],\r
1032           }\r
1033         },\r
1034         x: {\r
1035           type: 'number',\r
1036           rules : {\r
1037             required: true,\r
1038             number: true,\r
1039           }\r
1040         },\r
1041         y: {\r
1042           type: 'number',\r
1043           rules : {\r
1044             required: true,\r
1045             number: true,\r
1046           }\r
1047         },\r
1048         width: {\r
1049           type: 'number',\r
1050           rules : {\r
1051             required: true,\r
1052             number: true,\r
1053             min: 1,\r
1054           }\r
1055         },\r
1056         height: {\r
1057           type: 'number',\r
1058           rules : {\r
1059             required: true,\r
1060             number: true,\r
1061             min: 1,\r
1062           }\r
1063         },\r
1064         quotes: {\r
1065           type: 'text',\r
1066           rules : {\r
1067           }\r
1068         },\r
1069         settings: {\r
1070           type: 'text',\r
1071           rules : {\r
1072           }\r
1073         },\r
1074         created_at: {\r
1075           type: 'datetime',\r
1076         },\r
1077         updated_at: {\r
1078           type: 'datetime',\r
1079         }\r
1080       }\r
1081     },\r
1082     GroundPicture: 'ground_picture',\r
1083     ground_picture: {\r
1084       class_name: 'GroundPicture',\r
1085       table_name: 'ground_pictures',\r
1086       associations: {\r
1087         belongs_to: {\r
1088           panel: {\r
1089             id_column: 'panel_id'\r
1090           }, \r
1091         },\r
1092         has_many: {\r
1093         },\r
1094       },\r
1095       attributes: {\r
1096         id: {\r
1097           type: 'number',\r
1098           primary_key: 1,\r
1099           rules : {\r
1100             number: true,\r
1101           }\r
1102         },\r
1103         panel_id: {\r
1104           type: 'number',\r
1105           rules : {\r
1106             number: true,\r
1107           }\r
1108         },\r
1109         picture_id: {\r
1110           type: 'number',\r
1111           rules : {\r
1112             required: true,\r
1113             number: true,\r
1114           }\r
1115         },\r
1116         caption: {\r
1117           type: 'text',\r
1118           rules : {\r
1119           }\r
1120         },\r
1121         repeat: {\r
1122           type: 'number',\r
1123           rules : {\r
1124             required: true,\r
1125             number: true,\r
1126             range: [0, 3],\r
1127           },\r
1128           source: {\r
1129             type: 'magic_number',\r
1130             key: 'ground_picture_repeat_items',\r
1131           },\r
1132         },\r
1133         x: {\r
1134           type: 'number',\r
1135           rules : {\r
1136             required: true,\r
1137             number: true,\r
1138           }\r
1139         },\r
1140         y: {\r
1141           type: 'number',\r
1142           rules : {\r
1143             required: true,\r
1144             number: true,\r
1145           }\r
1146         },\r
1147         z: {\r
1148           type: 'number',\r
1149           rules : {\r
1150             required: true,\r
1151             number: true,\r
1152             min: 1,\r
1153           }\r
1154         },\r
1155         t: {\r
1156           type: 'number',\r
1157           rules : {\r
1158             required: true,\r
1159             number: true,\r
1160             min: 0,\r
1161           }\r
1162         },\r
1163         created_at: {\r
1164           type: 'datetime',\r
1165         },\r
1166         updated_at: {\r
1167           type: 'datetime',\r
1168         }\r
1169       }\r
1170     },\r
1171     GroundColor: 'ground_color',\r
1172     ground_color: {\r
1173       class_name: 'GroundColor',\r
1174       table_name: 'ground_colors',\r
1175       associations: {\r
1176         belongs_to: {\r
1177           panel: {\r
1178             id_column: 'panel_id'\r
1179           }, \r
1180         },\r
1181         has_many: {\r
1182         },\r
1183       },\r
1184       attributes: {\r
1185         id: {\r
1186           type: 'number',\r
1187           primary_key: 1,\r
1188           rules : {\r
1189             number: true,\r
1190           }\r
1191         },\r
1192         panel_id: {\r
1193           type: 'number',\r
1194           rules : {\r
1195             number: true,\r
1196           }\r
1197         },\r
1198         caption: {\r
1199           type: 'text',\r
1200           rules : {\r
1201           }\r
1202         },\r
1203         code: {\r
1204           type: 'number',\r
1205           rules : {\r
1206             required: true,\r
1207             number: true,\r
1208             range: [0, 0xffffff],\r
1209           }\r
1210         },\r
1211         orientation: {\r
1212           type: 'number',\r
1213           rules : {\r
1214             required: true,\r
1215             number: true,\r
1216             range: [0, 1],\r
1217           },\r
1218           source: {\r
1219             type: 'magic_number',\r
1220             key: 'ground_color_orientation_items',\r
1221           },\r
1222         },\r
1223         xy: {\r
1224           type: 'number',\r
1225           rules : {\r
1226             number: true,\r
1227           }\r
1228         },\r
1229         wh: {\r
1230           type: 'number',\r
1231           rules : {\r
1232             number: true,\r
1233           }\r
1234         },\r
1235         z: {\r
1236           type: 'number',\r
1237           rules : {\r
1238             required: true,\r
1239             number: true,\r
1240             min: 1,\r
1241           }\r
1242         },\r
1243         t: {\r
1244           type: 'number',\r
1245           rules : {\r
1246             required: true,\r
1247             number: true,\r
1248             min: 0,\r
1249           }\r
1250         },\r
1251         created_at: {\r
1252           type: 'datetime',\r
1253         },\r
1254         updated_at: {\r
1255           type: 'datetime',\r
1256         }\r
1257       }\r
1258     },\r
1259     OriginalPicture: 'original_picture',\r
1260     original_picture: {\r
1261       class_name: 'OriginalPicture',\r
1262       table_name: 'original_pictures',\r
1263       associations: {\r
1264         belongs_to: {\r
1265           artist: {\r
1266             id_column: 'artist_id'\r
1267           }, \r
1268         },\r
1269         has_many: {\r
1270           pictures: {\r
1271             foreign_key: 'original_picture_id',\r
1272             list_method: 'list_by_original_picture',\r
1273           }, \r
1274         },\r
1275         has_one: {\r
1276           resource_picture: {\r
1277             foreign_key: 'original_picture_id',\r
1278             list_method: 'list_by_original_picture',\r
1279           }, \r
1280         },\r
1281       },\r
1282       attributes: {\r
1283         id: {\r
1284           type: 'number',\r
1285           primary_key: 1,\r
1286           rules : {\r
1287             number: true,\r
1288           }\r
1289         },\r
1290         ext: {\r
1291           type: 'text',\r
1292           rules : {\r
1293             required: true,\r
1294           }\r
1295         },\r
1296         width: {\r
1297           type: 'number',\r
1298           rules : {\r
1299             required: true,\r
1300             number: true,\r
1301           }\r
1302         },\r
1303         height: {\r
1304           type: 'number',\r
1305           rules : {\r
1306             required: true,\r
1307             number: true,\r
1308           }\r
1309         },\r
1310         filesize: {\r
1311           type: 'number',\r
1312           rules : {\r
1313             required: true,\r
1314             number: true,\r
1315           }\r
1316         },\r
1317         artist_id: {\r
1318           type: 'number',\r
1319           rules : {\r
1320             required: true,\r
1321             number: true,\r
1322           }\r
1323         },\r
1324         md5: {\r
1325           type: 'text',\r
1326           rules : {\r
1327             required: true,\r
1328             required: true,\r
1329           }\r
1330         },\r
1331         uploaded_at: {\r
1332           type: 'datetime',\r
1333         },\r
1334         published_at: {\r
1335           type: 'datetime',\r
1336         },\r
1337         stopped_at: {\r
1338           type: 'datetime',\r
1339         },\r
1340         created_at: {\r
1341           type: 'datetime',\r
1342         },\r
1343         updated_at: {\r
1344           type: 'datetime',\r
1345         }\r
1346       },\r
1347     },\r
1348     Picture: 'picture',\r
1349     picture: {\r
1350       class_name: 'Picture',\r
1351       table_name: 'pictures',\r
1352       associations: {\r
1353         belongs_to: {\r
1354           license: {\r
1355             id_column: 'license_id'\r
1356           }, \r
1357           artist: {\r
1358             id_column: 'artist_id'\r
1359           }, \r
1360         },\r
1361         has_many: {\r
1362         },\r
1363         has_one: {\r
1364         },\r
1365       },\r
1366       attributes: {\r
1367         id: {\r
1368           type: 'number',\r
1369           primary_key: 1,\r
1370           rules : {\r
1371             number: true,\r
1372           }\r
1373         },\r
1374         original_picture_id: {\r
1375           type: 'number',\r
1376           rules : {\r
1377             required: true,\r
1378             number: true,\r
1379           }\r
1380         },\r
1381         revision: {\r
1382           type: 'number',\r
1383           rules : {\r
1384             required: true,\r
1385             number: true,\r
1386           }\r
1387         },\r
1388         ext: {\r
1389           type: 'text',\r
1390           rules : {\r
1391             required: true,\r
1392           }\r
1393         },\r
1394         width: {\r
1395           type: 'number',\r
1396           rules : {\r
1397             required: true,\r
1398             number: true,\r
1399           }\r
1400         },\r
1401         height: {\r
1402           type: 'number',\r
1403           rules : {\r
1404             required: true,\r
1405             number: true,\r
1406           }\r
1407         },\r
1408         filesize: {\r
1409           type: 'number',\r
1410           rules : {\r
1411             required: true,\r
1412             number: true,\r
1413           }\r
1414         },\r
1415         artist_id: {\r
1416           type: 'number',\r
1417           rules : {\r
1418             required: true,\r
1419             number: true,\r
1420           }\r
1421         },\r
1422         license_id: {\r
1423           type: 'number',\r
1424           rules : {\r
1425             required: true,\r
1426             number: true,\r
1427           }\r
1428         },\r
1429         md5: {\r
1430           type: 'text',\r
1431           rules : {\r
1432             required: true,\r
1433           }\r
1434         },\r
1435         artist_name: {\r
1436           type: 'text',\r
1437           rules : {\r
1438             required: true,\r
1439           }\r
1440         },\r
1441         credit: {\r
1442           type: 'text',\r
1443           rules : {\r
1444           }\r
1445         },\r
1446         settings: {\r
1447           type: 'text',\r
1448           rules : {\r
1449           }\r
1450         },\r
1451         classname: {\r
1452           type: 'text',\r
1453           rules : {\r
1454             required: true,\r
1455           }\r
1456         },\r
1457         created_at: {\r
1458           type: 'datetime',\r
1459         },\r
1460         updated_at: {\r
1461           type: 'datetime',\r
1462         }\r
1463       }\r
1464     },\r
1465     ResourcePicture: 'resource_picture',\r
1466     resource_picture: {\r
1467       class_name: 'ResourcePicture',\r
1468       table_name: 'resource_pictures',\r
1469       associations: {\r
1470         belongs_to: {\r
1471           license: {\r
1472             id_column: 'license_id'\r
1473           }, \r
1474           artist: {\r
1475             id_column: 'artist_id'\r
1476           }, \r
1477         },\r
1478         has_many: {\r
1479         },\r
1480         has_one: {\r
1481         },\r
1482       },\r
1483       attributes: {\r
1484         id: {\r
1485           type: 'number',\r
1486           primary_key: 1,\r
1487           rules : {\r
1488             number: true,\r
1489           }\r
1490         },\r
1491         original_picture_id: {\r
1492           type: 'number',\r
1493           rules : {\r
1494             required: true,\r
1495             number: true,\r
1496           }\r
1497         },\r
1498         revision: {\r
1499           type: 'number',\r
1500           rules : {\r
1501             required: true,\r
1502             number: true,\r
1503           }\r
1504         },\r
1505         ext: {\r
1506           type: 'text',\r
1507           rules : {\r
1508             required: true,\r
1509           }\r
1510         },\r
1511         width: {\r
1512           type: 'number',\r
1513           rules : {\r
1514             required: true,\r
1515             number: true,\r
1516           }\r
1517         },\r
1518         height: {\r
1519           type: 'number',\r
1520           rules : {\r
1521             required: true,\r
1522             number: true,\r
1523           }\r
1524         },\r
1525         filesize: {\r
1526           type: 'number',\r
1527           rules : {\r
1528             required: true,\r
1529             number: true,\r
1530           }\r
1531         },\r
1532         artist_id: {\r
1533           type: 'number',\r
1534           rules : {\r
1535             required: true,\r
1536             number: true,\r
1537           }\r
1538         },\r
1539         license_id: {\r
1540           type: 'number',\r
1541           rules : {\r
1542             required: true,\r
1543             number: true,\r
1544           }\r
1545         },\r
1546         md5: {\r
1547           type: 'text',\r
1548           rules : {\r
1549             required: true,\r
1550           }\r
1551         },\r
1552         artist_name: {\r
1553           type: 'text',\r
1554           rules : {\r
1555             required: true,\r
1556           }\r
1557         },\r
1558         credit: {\r
1559           type: 'text',\r
1560           rules : {\r
1561           }\r
1562         },\r
1563         settings: {\r
1564           type: 'text',\r
1565           rules : {\r
1566           }\r
1567         },\r
1568         picture_id: {\r
1569           type: 'number',\r
1570           rules : {\r
1571             required: true,\r
1572             number: true,\r
1573           }\r
1574         },\r
1575         classname: {\r
1576           type: 'text',\r
1577           rules : {\r
1578             required: true,\r
1579           }\r
1580         },\r
1581         created_at: {\r
1582           type: 'datetime',\r
1583         },\r
1584         updated_at: {\r
1585           type: 'datetime',\r
1586         }\r
1587       }\r
1588     },\r
1589     SpeechBalloonTemplate: 'speech_balloon_template',\r
1590     speech_balloon_template: {\r
1591       class_name: 'SpeechBalloonTemplate',\r
1592       table_name: 'speech_balloon_templates',\r
1593       associations: {\r
1594         belongs_to: {\r
1595           system_picture: {\r
1596             id_column: 'system_picture_id'\r
1597           }, \r
1598         },\r
1599         has_many: {\r
1600           speech_balloons: {\r
1601             foreign_key: 'speech_balloon_template_id',\r
1602             list_method: 'list_by_speech_balloon_template',\r
1603           }, \r
1604           panels: {\r
1605             through: 'speech_balloons',\r
1606             foreign_key: 'speech_balloon_template_id',\r
1607             list_method: 'list_by_speech_balloon_template',\r
1608           }, \r
1609         },\r
1610         has_one: {\r
1611         },\r
1612       },\r
1613       attributes: {\r
1614         id: {\r
1615           type: 'number',\r
1616           primary_key: 1,\r
1617           rules : {\r
1618             number: true,\r
1619           }\r
1620         },\r
1621         name: {\r
1622           type: 'text',\r
1623           rules : {\r
1624             required: true,\r
1625           }\r
1626         },\r
1627         classname: {\r
1628           type: 'text',\r
1629           rules : {\r
1630             required: true,\r
1631           }\r
1632         },\r
1633         caption: {\r
1634           type: 'text',\r
1635           rules : {\r
1636             required: true,\r
1637           }\r
1638         },\r
1639         t: {\r
1640           type: 'number',\r
1641           rules : {\r
1642             required: true,\r
1643             number: true,\r
1644             min: 0,\r
1645           }\r
1646         },\r
1647         system_picture_id: {\r
1648           type: 'number',\r
1649           rules : {\r
1650             required: true,\r
1651             number: true,\r
1652           }\r
1653         },\r
1654         settings: {\r
1655           type: 'text',\r
1656           rules : {\r
1657             required: true,\r
1658           }\r
1659         },\r
1660         created_at: {\r
1661           type: 'datetime',\r
1662         },\r
1663         updated_at: {\r
1664           type: 'datetime',\r
1665         }\r
1666       },\r
1667       select: {\r
1668         method: 'enable_list',\r
1669         caption: {\r
1670           type: 'column',\r
1671           name: 'caption',\r
1672         },\r
1673       },\r
1674     },\r
1675     WritingFormat: 'writing_format',\r
1676     writing_format: {\r
1677       class_name: 'WritingFormat',\r
1678       table_name: 'writing_formats',\r
1679       associations: {\r
1680         belongs_to: {\r
1681           system_picture: {\r
1682             id_column: 'system_picture_id'\r
1683           }, \r
1684         },\r
1685         has_many: {\r
1686           speeches: {\r
1687             foreign_key: 'writing_format_id',\r
1688             list_method: 'list_by_writing_format',\r
1689           }, \r
1690         },\r
1691         has_one: {\r
1692         },\r
1693       },\r
1694       attributes: {\r
1695         id: {\r
1696           type: 'number',\r
1697           primary_key: 1,\r
1698           rules : {\r
1699             number: true,\r
1700           }\r
1701         },\r
1702         name: {\r
1703           type: 'text',\r
1704           rules : {\r
1705             required: true,\r
1706           }\r
1707         },\r
1708         classname: {\r
1709           type: 'text',\r
1710           rules : {\r
1711             required: true,\r
1712           }\r
1713         },\r
1714         caption: {\r
1715           type: 'text',\r
1716           rules : {\r
1717             required: true,\r
1718           }\r
1719         },\r
1720         system_picture_id: {\r
1721           type: 'number',\r
1722           rules : {\r
1723             required: true,\r
1724             number: true,\r
1725           }\r
1726         },\r
1727         settings: {\r
1728           type: 'text',\r
1729           rules : {\r
1730             required: true,\r
1731           }\r
1732         },\r
1733         created_at: {\r
1734           type: 'datetime',\r
1735         },\r
1736         updated_at: {\r
1737           type: 'datetime',\r
1738         }\r
1739       },\r
1740       select: {\r
1741         method: 'enable_list',\r
1742         caption: {\r
1743           type: 'column',\r
1744           name: 'caption',\r
1745         },\r
1746       },\r
1747     },\r
1748     LicenseGroup: 'license_group',\r
1749     license_group: {\r
1750       class_name: 'LicenseGroup',\r
1751       table_name: 'license_groups',\r
1752       associations: {\r
1753         belongs_to: {\r
1754         },\r
1755         has_many: {\r
1756           licenses: {\r
1757             foreign_key: 'license_group_id',\r
1758             list_method: 'list_by_license_group',\r
1759           }, \r
1760         },\r
1761         has_one: {\r
1762         },\r
1763       },\r
1764       attributes: {\r
1765         id: {\r
1766           type: 'number',\r
1767           primary_key: 1,\r
1768           rules : {\r
1769             number: true,\r
1770           }\r
1771         },\r
1772         name: {\r
1773           type: 'text',\r
1774           rules : {\r
1775             required: true,\r
1776           }\r
1777         },\r
1778         classname: {\r
1779           type: 'text',\r
1780           rules : {\r
1781             required: true,\r
1782           }\r
1783         },\r
1784         caption: {\r
1785           type: 'text',\r
1786           rules : {\r
1787             required: true,\r
1788           }\r
1789         },\r
1790         url: {\r
1791           type: 'text',\r
1792           rules : {\r
1793             required: true,\r
1794           }\r
1795         },\r
1796         created_at: {\r
1797           type: 'datetime',\r
1798         },\r
1799         updated_at: {\r
1800           type: 'datetime',\r
1801         }\r
1802       },\r
1803       select: {\r
1804         method: 'list',\r
1805         caption: {\r
1806           type: 'column',\r
1807           name: 'caption',\r
1808         },\r
1809       },\r
1810     },\r
1811     License: 'license',\r
1812     license: {\r
1813       class_name: 'License',\r
1814       table_name: 'licenses',\r
1815       associations: {\r
1816         belongs_to: {\r
1817           license_group: {\r
1818             id_column: 'license_group_id'\r
1819           }, \r
1820           system_picture: {\r
1821             id_column: 'system_picture_id'\r
1822           }, \r
1823         },\r
1824         has_many: {\r
1825           resource_pictures: {\r
1826             foreign_key: 'license_id',\r
1827             list_method: 'list_by_license',\r
1828           }, \r
1829         },\r
1830         has_one: {\r
1831         },\r
1832       },\r
1833       attributes: {\r
1834         id: {\r
1835           type: 'number',\r
1836           primary_key: 1,\r
1837           rules : {\r
1838             number: true,\r
1839           }\r
1840         },\r
1841         license_group_id: {\r
1842           type: 'number',\r
1843           rules : {\r
1844             number: true,\r
1845           }\r
1846         },\r
1847         name: {\r
1848           type: 'text',\r
1849           rules : {\r
1850             required: true,\r
1851           }\r
1852         },\r
1853         caption: {\r
1854           type: 'text',\r
1855           rules : {\r
1856             required: true,\r
1857           }\r
1858         },\r
1859         system_picture_id: {\r
1860           type: 'number',\r
1861           rules : {\r
1862             required: true,\r
1863             number: true,\r
1864           }\r
1865         },\r
1866         url: {\r
1867           type: 'text',\r
1868           rules : {\r
1869             required: true,\r
1870           }\r
1871         },\r
1872         settings: {\r
1873           type: 'text',\r
1874           rules : {\r
1875           }\r
1876         },\r
1877         credit_pictures: {\r
1878           type: 'text',\r
1879           rules : {\r
1880           }\r
1881         },\r
1882         created_at: {\r
1883           type: 'datetime',\r
1884         },\r
1885         updated_at: {\r
1886           type: 'datetime',\r
1887         }\r
1888       }\r
1889     },\r
1890     Author: 'author',\r
1891     author: {\r
1892       class_name: 'Author',\r
1893       table_name: 'authors',\r
1894       associations: {\r
1895         belongs_to: {\r
1896         },\r
1897         has_many: {\r
1898           scrolls: {\r
1899             foreign_key: 'author_id',\r
1900             list_method: 'list_by_author',\r
1901           }, \r
1902           comics: {\r
1903             foreign_key: 'author_id',\r
1904             list_method: 'list_by_author',\r
1905           }, \r
1906           stories: {\r
1907             foreign_key: 'author_id',\r
1908             list_method: 'list_by_author',\r
1909           }, \r
1910           sheets: {\r
1911             foreign_key: 'author_id',\r
1912             list_method: 'list_by_author',\r
1913           }, \r
1914           panels: {\r
1915             foreign_key: 'author_id',\r
1916             list_method: 'list_by_author',\r
1917           }, \r
1918         },\r
1919         has_one: {\r
1920         },\r
1921       },\r
1922       attributes: {\r
1923         id: {\r
1924           type: 'number',\r
1925           primary_key: 1,\r
1926           rules : {\r
1927             number: true,\r
1928           }\r
1929         },\r
1930         name: {\r
1931           type: 'text',\r
1932           rules : {\r
1933             required: true,\r
1934           }\r
1935         },\r
1936         user_id: {\r
1937           type: 'number',\r
1938           rules : {\r
1939             required: true,\r
1940             number: true,\r
1941           }\r
1942         },\r
1943         created_at: {\r
1944           type: 'datetime',\r
1945         },\r
1946         updated_at: {\r
1947           type: 'datetime',\r
1948         }\r
1949       },\r
1950       select: {\r
1951         method: 'list',\r
1952         caption: {\r
1953           type: 'column',\r
1954           name: 'name',\r
1955         },\r
1956       },\r
1957     },\r
1958     Artist: 'artist',\r
1959     artist: {\r
1960       class_name: 'Artist',\r
1961       table_name: 'artists',\r
1962       associations: {\r
1963         belongs_to: {\r
1964         },\r
1965         has_many: {\r
1966           resource_pictures: {\r
1967             foreign_key: 'artist_id',\r
1968             list_method: 'list_by_artist',\r
1969           }, \r
1970         },\r
1971         has_one: {\r
1972         },\r
1973       },\r
1974       attributes: {\r
1975         id: {\r
1976           type: 'number',\r
1977           primary_key: 1,\r
1978           rules : {\r
1979             number: true,\r
1980           }\r
1981         },\r
1982         name: {\r
1983           type: 'text',\r
1984           rules : {\r
1985             required: true,\r
1986           }\r
1987         },\r
1988         author_id: {\r
1989           type: 'number',\r
1990           rules : {\r
1991             required: true,\r
1992             number: true,\r
1993           }\r
1994         },\r
1995         created_at: {\r
1996           type: 'datetime',\r
1997         },\r
1998         updated_at: {\r
1999           type: 'datetime',\r
2000         }\r
2001       },\r
2002       select: {\r
2003         method: 'list',\r
2004         caption: {\r
2005           type: 'column',\r
2006           name: 'name',\r
2007         },\r
2008       },\r
2009     },\r
2010     SystemPicture: 'system_picture',\r
2011     system_picture: {\r
2012       class_name: 'SystemPicture',\r
2013       table_name: 'system_pictures',\r
2014       associations: {\r
2015         belongs_to: {\r
2016         },\r
2017         has_many: {\r
2018         },\r
2019         has_one: {\r
2020         },\r
2021       },\r
2022       attributes: {\r
2023         id: {\r
2024           type: 'number',\r
2025           primary_key: 1,\r
2026           rules : {\r
2027             number: true,\r
2028           }\r
2029         },\r
2030         ext: {\r
2031           type: 'text',\r
2032           rules : {\r
2033             required: true,\r
2034           }\r
2035         },\r
2036         width: {\r
2037           type: 'number',\r
2038           rules : {\r
2039             required: true,\r
2040             number: true,\r
2041           }\r
2042         },\r
2043         height: {\r
2044           type: 'number',\r
2045           rules : {\r
2046             required: true,\r
2047             number: true,\r
2048           }\r
2049         },\r
2050         filesize: {\r
2051           type: 'number',\r
2052           rules : {\r
2053             required: true,\r
2054             number: true,\r
2055           }\r
2056         },\r
2057         md5: {\r
2058           type: 'text',\r
2059           rules : {\r
2060             required: true,\r
2061             required: true,\r
2062           }\r
2063         },\r
2064         created_at: {\r
2065           type: 'datetime',\r
2066         },\r
2067         updated_at: {\r
2068           type: 'datetime',\r
2069         }\r
2070       }\r
2071     },\r
2072   },\r
2073   lists: {\r
2074     scroll: {\r
2075       default_page_size: 20, \r
2076       lists: {\r
2077         public_list: {\r
2078           type: 'public',\r
2079         },\r
2080         private_list: {\r
2081           type: 'private',\r
2082         },\r
2083         scroll_panels: {\r
2084           type: 'has_many',\r
2085           association_name: 'scroll_panels',\r
2086         },\r
2087         panels: {\r
2088           type: 'has_many',\r
2089           association_name: 'panels',\r
2090         },\r
2091         by_panel: {\r
2092           type: 'throughfilter',\r
2093           filter_key: 'panel_id',\r
2094           list: {\r
2095             method: 'filtered_list',\r
2096           },\r
2097         },\r
2098       },\r
2099     },\r
2100     scroll_panel: {\r
2101       default_page_size: 20, \r
2102       lists: {\r
2103         public_list: {\r
2104           type: 'public',\r
2105         },\r
2106         private_list: {\r
2107           type: 'private',\r
2108         },\r
2109         by_scroll: {\r
2110           type: 'filter',\r
2111           filter_key: 'scroll_id',\r
2112           list: {\r
2113             method: 'filtered_list',\r
2114           },\r
2115         },\r
2116         by_panel: {\r
2117           type: 'filter',\r
2118           filter_key: 'panel_id',\r
2119           list: {\r
2120             method: 'filtered_list',\r
2121           },\r
2122         },\r
2123       },\r
2124     },\r
2125     comic: {\r
2126       default_page_size: 20, \r
2127       lists: {\r
2128         public_list: {\r
2129           type: 'public',\r
2130         },\r
2131         private_list: {\r
2132           type: 'private',\r
2133         },\r
2134         stories: {\r
2135           type: 'has_many',\r
2136           association_name: 'stories',\r
2137         },\r
2138       },\r
2139     },\r
2140     story: {\r
2141       default_page_size: 20, \r
2142       lists: {\r
2143         public_list: {\r
2144           type: 'public',\r
2145         },\r
2146         private_list: {\r
2147           type: 'private',\r
2148         },\r
2149         story_sheets: {\r
2150           type: 'has_many',\r
2151           association_name: 'story_sheets',\r
2152         },\r
2153         sheets: {\r
2154           type: 'has_many',\r
2155           association_name: 'sheets',\r
2156         },\r
2157         by_comic: {\r
2158           type: 'filter',\r
2159           filter_key: 'comic_id',\r
2160           list: {\r
2161             method: 'filtered_list',\r
2162           },\r
2163         },\r
2164       },\r
2165     },\r
2166     story_sheet: {\r
2167       default_page_size: 20, \r
2168       lists: {\r
2169         public_list: {\r
2170           type: 'public',\r
2171         },\r
2172         private_list: {\r
2173           type: 'private',\r
2174         },\r
2175         by_story: {\r
2176           type: 'filter',\r
2177           filter_key: 'story_id',\r
2178           list: {\r
2179             method: 'filtered_list',\r
2180           },\r
2181         },\r
2182         by_sheet: {\r
2183           type: 'filter',\r
2184           filter_key: 'sheet_id',\r
2185           list: {\r
2186             method: 'filtered_list',\r
2187           },\r
2188         },\r
2189       },\r
2190     },\r
2191     sheet: {\r
2192       default_page_size: 20, \r
2193       lists: {\r
2194         public_list: {\r
2195           type: 'public',\r
2196         },\r
2197         private_list: {\r
2198           type: 'private',\r
2199         },\r
2200         story_sheets: {\r
2201           type: 'has_many',\r
2202           association_name: 'story_sheets',\r
2203         },\r
2204         sheet_panels: {\r
2205           type: 'has_many',\r
2206           association_name: 'sheet_panels',\r
2207         },\r
2208       },\r
2209     },\r
2210     sheet_panel: {\r
2211       default_page_size: 20, \r
2212       lists: {\r
2213         public_list: {\r
2214           type: 'public',\r
2215         },\r
2216         private_list: {\r
2217           type: 'private',\r
2218         },\r
2219         by_sheet: {\r
2220           type: 'filter',\r
2221           filter_key: 'sheet_id',\r
2222           list: {\r
2223             method: 'filtered_list',\r
2224           },\r
2225         },\r
2226         by_panel: {\r
2227           type: 'filter',\r
2228           filter_key: 'panel_id',\r
2229           list: {\r
2230             method: 'filtered_list',\r
2231           },\r
2232         },\r
2233       },\r
2234     },\r
2235     panel: {\r
2236     },\r
2237     panel_picture: {\r
2238     },\r
2239     speech_balloon: {\r
2240     },\r
2241     speech: {\r
2242     },\r
2243     balloon: {\r
2244     },\r
2245     ground_picture: {\r
2246     },\r
2247     ground_color: {\r
2248     },\r
2249     original_picture: {\r
2250     },\r
2251     picture: {\r
2252     },\r
2253     resource_picture: {\r
2254     },\r
2255     speech_balloon_template: {\r
2256     },\r
2257     writing_format: {\r
2258     },\r
2259     license_group: {\r
2260     },\r
2261     license: {\r
2262     },\r
2263     author: {\r
2264     },\r
2265     artist: {\r
2266     },\r
2267     system_picture: {\r
2268     },\r
2269   },\r
2270   system_resources: {\r
2271     licenses: {\r
2272       pettanr_creative_commons_v30_licenses: 'PettanrCreativeCommonsV30Licenses',\r
2273       pettanr_pettan_commons_v01_licenses: 'PettanrPettanCommonsV01Licenses',\r
2274       pettanr_pettan_protected_v01_licenses: 'PettanrPettanProtectedV01Licenses',\r
2275       pettanr_pettan_public_v01_licenses: 'PettanrPettanPublicV01Licenses',\r
2276       pettanr_public_domain_v01_licenses: 'PettanrPublicDomainV01Licenses',\r
2277       pettanr_unknown_v01_licenses: 'PettanrUnknownV01Licenses',\r
2278     },\r
2279     elements: {\r
2280       PanelPicture: 'panel_pictures',\r
2281       SpeechBalloon: 'speech_balloons',\r
2282       GroundPicture: 'ground_pictures',\r
2283       GroundColor: 'ground_colors',\r
2284     },\r
2285     speech_balloon_templates: {\r
2286       CircleSpeechBalloon: 'circle_speech_balloon',\r
2287       PlainSpeechBalloon: 'plain_speech_balloon',\r
2288       SquareSpeechBalloon: 'square_speech_balloon',\r
2289       #  TestSpeechBalloon: 'test_speech_balloon',\r
2290     },\r
2291     writing_formats: {\r
2292       SimpleFormat: 'pettanr_simple_format',\r
2293     },\r
2294   },\r
2295   magic_numbers: {\r
2296     run_mode: 1, \r
2297     thumbnail_width: 64, \r
2298     thumbnail_height: 64, \r
2299     profile: {\r
2300       users: {\r
2301         caption: "ペンギン王国",\r
2302         url: "http://localhost:3001/", \r
2303         description: "ペンギン王国はペンギン素材を豊富に用意したペンギンマニアのサイトです。",\r
2304       },\r
2305       admins: {\r
2306         caption: "site name for admin",\r
2307         url: "http://your.site.url/admins/", \r
2308         description: "admin register",\r
2309       },\r
2310       demand_users: {\r
2311         caption: "provider name",\r
2312         url: "http://your.site.url/demanders/", \r
2313         description: "provider description",\r
2314       },\r
2315     },\r
2316     provider_sources: [\r
2317       'http://sourceforge.jp/projects/pettanr/wiki/ProviderSource/attach/provider_source.json'\r
2318     ], \r
2319   },\r
2320   select_items: {\r
2321     provider_status_status_items: [\r
2322       ['select_items.provider_status.status.waiting', 0], \r
2323       ['select_items.provider_status.status.receiving', 1], \r
2324     ],\r
2325     demander_status_status_items: [\r
2326       ['select_items.demander_status.status.waiting', 0], \r
2327       ['select_items.demander_status.status.rejected', 1], \r
2328       ['select_items.demander_status.status.requesting', 2], \r
2329       ['select_items.demander_status.status.approved', 3], \r
2330     ],\r
2331     scroll_visible_items: [\r
2332       ['select_items.scroll.visible.private', 0], \r
2333       ['select_items.scroll.visible.public', 1], \r
2334     ],\r
2335     comic_visible_items: [\r
2336       ['select_items.comic.visible.private', 0], \r
2337       ['select_items.comic.visible.public', 1], \r
2338     ],\r
2339     story_visible_items: [\r
2340       ['select_items.story.visible.private', 0], \r
2341       ['select_items.story.visible.public', 1], \r
2342     ],\r
2343     sheet_visible_items: [\r
2344       ['select_items.sheet.visible.private', 0], \r
2345       ['select_items.sheet.visible.public', 1], \r
2346     ],\r
2347     panel_visible_items: [\r
2348       ['select_items.panel.visible.private', 0], \r
2349       ['select_items.panel.visible.public', 1], \r
2350     ],\r
2351     ground_picture_repeat_items: [\r
2352       ['select_items.ground_pictures.repeat.repeat', 0], \r
2353       ['select_items.ground_pictures.repeat.repeat-x', 1], \r
2354       ['select_items.ground_pictures.repeat.repeat-y', 2], \r
2355       ['select_items.ground_pictures.repeat.no-repeat', 3], \r
2356     ],\r
2357     ground_color_orientation_items: [\r
2358       ['select_items.ground_color.orientation.horizontal', 0], \r
2359       ['select_items.ground_color.orientation.vertical', 1], \r
2360     ],\r
2361     speech_font_size_items: [\r
2362       ['select_items.speeches.font_size.ultra_small', 0.2], \r
2363       ['select_items.speeches.font_size.very_small', 0.4], \r
2364       ['select_items.speeches.font_size.small', 0.6], \r
2365       ['select_items.speeches.font_size.semi_small', 0.8], \r
2366       ['select_items.speeches.font_size.normal', 1.0], \r
2367       ['select_items.speeches.font_size.semi_large', 1.5], \r
2368       ['select_items.speeches.font_size.large', 2.0], \r
2369       ['select_items.speeches.font_size.very_large', 3.5], \r
2370       ['select_items.speeches.font_size.ultra_large', 5.0], \r
2371     ],\r
2372     speech_text_align_items: [\r
2373       ['select_items.speeches.text_align.none', 0], \r
2374       ['select_items.speeches.text_align.left', 1], \r
2375       ['select_items.speeches.text_align.right', 2], \r
2376       ['select_items.speeches.text_align.center', 3], \r
2377     ],\r
2378   },\r
2379   locals: {\r
2380     profilers: {\r
2381       scroll: {\r
2382         columns: [\r
2383           'id', \r
2384           'title', \r
2385           'description', \r
2386           'visible', \r
2387           'author_id', \r
2388           'created_at', \r
2389           'updated_at',\r
2390         ],\r
2391         associations: {\r
2392           belongs_to: [\r
2393             'author',\r
2394           ],\r
2395           has_many: [\r
2396             'scroll_panels', \r
2397             'panels'\r
2398           ],\r
2399         }, \r
2400       },\r
2401       scroll_panel: {\r
2402         columns: [\r
2403           'id', \r
2404           'scroll_id', \r
2405           'panel_id', \r
2406           't', \r
2407           'author_id', \r
2408           'created_at', \r
2409           'updated_at',\r
2410         ],\r
2411         associations: {\r
2412           belongs_to: [\r
2413             'scroll', \r
2414             'panel'\r
2415           ],\r
2416           has_many: [\r
2417           ],\r
2418         }, \r
2419       },\r
2420       comic: {\r
2421         columns: [\r
2422           'id', \r
2423           'title', \r
2424           'description', \r
2425           'visible', \r
2426           'author_id', \r
2427           'created_at', \r
2428           'updated_at',\r
2429         ],\r
2430         associations: {\r
2431           belongs_to: [\r
2432             'author',\r
2433           ],\r
2434           has_many: [\r
2435             'stories', \r
2436           ],\r
2437         }, \r
2438       },\r
2439       story: {\r
2440         columns: [\r
2441           'id', \r
2442           'comic_id', \r
2443           'title', \r
2444           'description', \r
2445           't', \r
2446           'visible', \r
2447           'created_at', \r
2448           'updated_at',\r
2449         ],\r
2450         associations: {\r
2451           belongs_to: [\r
2452             'comic',\r
2453           ],\r
2454           has_many: [\r
2455             'story_sheets', \r
2456             'sheets'\r
2457           ],\r
2458         }, \r
2459       },\r
2460       story_sheet: {\r
2461         columns: [\r
2462           'id', \r
2463           'story_id', \r
2464           'sheet_id', \r
2465           't', \r
2466           'author_id', \r
2467           'created_at', \r
2468           'updated_at',\r
2469         ],\r
2470         associations: {\r
2471           belongs_to: [\r
2472             'story',\r
2473             'sheet',\r
2474           ],\r
2475           has_many: [\r
2476           ],\r
2477         }, \r
2478       },\r
2479       sheet: {\r
2480         columns: [\r
2481           'id', \r
2482           'caption', \r
2483           'width', \r
2484           'height', \r
2485           'visible', \r
2486           'author_id', \r
2487           'created_at', \r
2488           'updated_at',\r
2489         ],\r
2490         associations: {\r
2491           belongs_to: [\r
2492             'author',\r
2493           ],\r
2494           has_many: [\r
2495             'story_sheets', \r
2496             'stories', \r
2497             'sheet_panels'\r
2498             'panels'\r
2499           ],\r
2500         }, \r
2501       },\r
2502       sheet_panel: {\r
2503         columns: [\r
2504           'id', \r
2505           'sheet_id', \r
2506           'panel_id', \r
2507           'x', \r
2508           'y', \r
2509           'z', \r
2510           't', \r
2511           'author_id', \r
2512           'created_at', \r
2513           'updated_at',\r
2514         ],\r
2515         associations: {\r
2516           belongs_to: [\r
2517             'sheet',\r
2518             'panel',\r
2519           ],\r
2520           has_many: [\r
2521           ],\r
2522         }, \r
2523       },\r
2524       panel: {\r
2525         columns: [\r
2526           'id', \r
2527           'width', \r
2528           'height', \r
2529           'border', \r
2530           'caption', \r
2531           'publish', \r
2532           'author_id', \r
2533           'created_at', \r
2534           'updated_at',\r
2535         ],\r
2536         associations: {\r
2537           belongs_to: [\r
2538             'author',\r
2539           ],\r
2540           has_many: [\r
2541             'scroll_panels',\r
2542             'scrolls',\r
2543             'sheet_panels',\r
2544             'sheets',\r
2545             'panel_pictures',\r
2546             'speech_balloons',\r
2547             'ground_pictures',\r
2548             'ground_colors',\r
2549           ],\r
2550         }, \r
2551       },\r
2552       panel_picture: {\r
2553         columns: [\r
2554           'id', \r
2555           'panel_id', \r
2556           'picture_id', \r
2557           'caption', \r
2558           'x', \r
2559           'y', \r
2560           'width', \r
2561           'height', \r
2562           'link', \r
2563           'z', \r
2564           't', \r
2565           'created_at', \r
2566           'updated_at',\r
2567         ],\r
2568         associations: {\r
2569           belongs_to: [\r
2570             'panel',\r
2571           ],\r
2572           has_many: [\r
2573           ],\r
2574         }, \r
2575       },\r
2576       speech_balloon: {\r
2577         columns: [\r
2578           'id', \r
2579           'panel_id', \r
2580           'speech_balloon_template_id', \r
2581           'classname', \r
2582           'z', \r
2583           't', \r
2584           'settings', \r
2585           'caption', \r
2586           'created_at', \r
2587           'updated_at',\r
2588         ],\r
2589         associations: {\r
2590           belongs_to: [\r
2591             'panel',\r
2592           ],\r
2593           has_many: [\r
2594           ],\r
2595           has_one: [\r
2596             'balloon',\r
2597             'speech',\r
2598           ],\r
2599         }, \r
2600       },\r
2601       speech: {\r
2602         columns: [\r
2603           'id', \r
2604           'speech_balloon_id', \r
2605           'writing_format_id', \r
2606           'content', \r
2607           'font_size', \r
2608           'text_align', \r
2609           'fore_color', \r
2610           'x', \r
2611           'y', \r
2612           'width', \r
2613           'height', \r
2614           'quotes', \r
2615           'settings', \r
2616           'created_at', \r
2617           'updated_at',\r
2618         ],\r
2619         associations: {\r
2620           belongs_to: [\r
2621             'speech_balloon',\r
2622             'writing_format',\r
2623           ],\r
2624           has_many: [\r
2625           ],\r
2626         }, \r
2627       },\r
2628       balloon: {\r
2629         columns: [\r
2630           'id', \r
2631           'speech_balloon_id', \r
2632           'system_picture_id', \r
2633           'x', \r
2634           'y', \r
2635           'width', \r
2636           'height', \r
2637           'r', \r
2638           'settings', \r
2639           'created_at', \r
2640           'updated_at',\r
2641         ],\r
2642         associations: {\r
2643           belongs_to: [\r
2644             'speech_balloon',\r
2645             'system_picture',\r
2646           ],\r
2647           has_many: [\r
2648           ],\r
2649         }, \r
2650       },\r
2651       ground_picture: {\r
2652         columns: [\r
2653           'id', \r
2654           'panel_id', \r
2655           'picture_id', \r
2656           'caption', \r
2657           'repeat', \r
2658           'x', \r
2659           'y', \r
2660           'z', \r
2661           't', \r
2662           'created_at', \r
2663           'updated_at',\r
2664         ],\r
2665         associations: {\r
2666           belongs_to: [\r
2667             'panel',\r
2668           ],\r
2669           has_many: [\r
2670           ],\r
2671         }, \r
2672       },\r
2673       ground_color: {\r
2674         columns: [\r
2675           'id', \r
2676           'panel_id', \r
2677           'caption', \r
2678           'code', \r
2679           'orientation', \r
2680           'xy', \r
2681           'wh', \r
2682           'z', \r
2683           't', \r
2684           'created_at', \r
2685           'updated_at',\r
2686         ],\r
2687         associations: {\r
2688           belongs_to: [\r
2689             'panel',\r
2690           ],\r
2691           has_many: [\r
2692           ],\r
2693         }, \r
2694       },\r
2695       original_picture: {\r
2696         columns: [\r
2697           'id', \r
2698           'ext', \r
2699           'width', \r
2700           'height', \r
2701           'filesize', \r
2702           'artist_id', \r
2703           'md5', \r
2704           'uploaded_at', \r
2705           'published_at', \r
2706           'stopped_at', \r
2707           'created_at', \r
2708           'updated_at',\r
2709         ],\r
2710         associations: {\r
2711           belongs_to: [\r
2712             'artist',\r
2713           ],\r
2714           has_many: [\r
2715             'pictures',\r
2716           ],\r
2717           has_one: [\r
2718             'resource_picture',\r
2719           ],\r
2720         }, \r
2721       },\r
2722       picture: {\r
2723         columns: [\r
2724           'id', \r
2725           'original_picture_id', \r
2726           'revision', \r
2727           'ext', \r
2728           'width', \r
2729           'height', \r
2730           'filesize', \r
2731           'artist_id', \r
2732           'license_id', \r
2733           'md5', \r
2734           'artist_name', \r
2735           'credit', \r
2736           'settings', \r
2737           'classname', \r
2738           'created_at', \r
2739           'updated_at',\r
2740         ],\r
2741         associations: {\r
2742           belongs_to: [\r
2743             'license',\r
2744             'artist',\r
2745           ],\r
2746           has_many: [\r
2747           ],\r
2748           has_one: [\r
2749           ],\r
2750         }, \r
2751       },\r
2752       resource_picture: {\r
2753         columns: [\r
2754           'id', \r
2755           'original_picture_id', \r
2756           'revision', \r
2757           'ext', \r
2758           'width', \r
2759           'height', \r
2760           'filesize', \r
2761           'artist_id', \r
2762           'license_id', \r
2763           'md5', \r
2764           'artist_name', \r
2765           'credit', \r
2766           'settings', \r
2767           'picture_id', \r
2768           'classname', \r
2769           'created_at', \r
2770           'updated_at',\r
2771         ],\r
2772         associations: {\r
2773           belongs_to: [\r
2774             'license',\r
2775             'artist',\r
2776           ],\r
2777           has_many: [\r
2778           ],\r
2779           has_one: [\r
2780           ],\r
2781         }, \r
2782       },\r
2783       speech_balloon_template: {\r
2784         columns: [\r
2785           'id', \r
2786           'name', \r
2787           'classname', \r
2788           'caption', \r
2789           't', \r
2790           'system_picture_id', \r
2791           'settings', \r
2792           'created_at', \r
2793           'updated_at',\r
2794         ],\r
2795         associations: {\r
2796           belongs_to: [\r
2797             'system_picture',\r
2798           ],\r
2799           has_many: [\r
2800             'speech_balloons', \r
2801             'panels', \r
2802           ],\r
2803           has_one: [\r
2804           ],\r
2805         }, \r
2806       },\r
2807       writing_format: {\r
2808         columns: [\r
2809           'id', \r
2810           'name', \r
2811           'classname', \r
2812           'caption', \r
2813           'system_picture_id', \r
2814           'settings', \r
2815           'created_at', \r
2816           'updated_at',\r
2817         ],\r
2818         associations: {\r
2819           belongs_to: [\r
2820             'system_picture',\r
2821           ],\r
2822           has_many: [\r
2823             'speeches', \r
2824           ],\r
2825           has_one: [\r
2826           ],\r
2827         }, \r
2828       },\r
2829       license_group: {\r
2830         columns: [\r
2831           'id', \r
2832           'name', \r
2833           'classname', \r
2834           'caption', \r
2835           'url', \r
2836           'created_at', \r
2837           'updated_at',\r
2838         ],\r
2839         associations: {\r
2840           belongs_to: [\r
2841           ],\r
2842           has_many: [\r
2843             'licenses', \r
2844           ],\r
2845           has_one: [\r
2846           ],\r
2847         }, \r
2848       },\r
2849       license: {\r
2850         columns: [\r
2851           'id', \r
2852           'license_group_id', \r
2853           'name', \r
2854           'caption', \r
2855           'system_picture_id', \r
2856           'url', \r
2857           'settings', \r
2858           'credit_pictures', \r
2859           'created_at', \r
2860           'updated_at',\r
2861         ],\r
2862         associations: {\r
2863           belongs_to: [\r
2864             'license_group', \r
2865             'system_picture', \r
2866           ],\r
2867           has_many: [\r
2868             'resource_pictures', \r
2869           ],\r
2870           has_one: [\r
2871           ],\r
2872         }, \r
2873       },\r
2874       author: {\r
2875         columns: [\r
2876           'id', \r
2877           'name', \r
2878           'user_id', \r
2879           'created_at', \r
2880           'updated_at',\r
2881         ],\r
2882         associations: {\r
2883           belongs_to: [\r
2884           ],\r
2885           has_many: [\r
2886             'scrolls', \r
2887             'comics', \r
2888             'stories', \r
2889             'sheets', \r
2890             'panels', \r
2891           ],\r
2892           has_one: [\r
2893           ],\r
2894         }, \r
2895       },\r
2896       artist: {\r
2897         columns: [\r
2898           'id', \r
2899           'name', \r
2900           'author_id', \r
2901           'created_at', \r
2902           'updated_at',\r
2903         ],\r
2904         associations: {\r
2905           belongs_to: [\r
2906           ],\r
2907           has_many: [\r
2908             'resource_pictures', \r
2909           ],\r
2910           has_one: [\r
2911           ],\r
2912         }, \r
2913       },\r
2914       system_picture: {\r
2915         columns: [\r
2916           'id', \r
2917           'ext', \r
2918           'width', \r
2919           'height', \r
2920           'filesize', \r
2921           'md5', \r
2922           'created_at', \r
2923           'updated_at',\r
2924         ],\r
2925         associations: {\r
2926           belongs_to: [\r
2927           ],\r
2928           has_many: [\r
2929           ],\r
2930           has_one: [\r
2931           ],\r
2932         }, \r
2933       },\r
2934     },\r
2935     filers: {\r
2936       scroll: {\r
2937         symbol: {\r
2938           type: 'image',\r
2939           name: '<%= asset_path('item.png') %>',\r
2940         },\r
2941         caption: {\r
2942           type: 'column',\r
2943           name: 'title',\r
2944           link: {\r
2945             type: 'action'\r
2946             name: 'play',\r
2947           },\r
2948         },\r
2949         summary: {\r
2950           type: 'template',\r
2951           name: 'summary',\r
2952         },\r
2953         edit: {\r
2954           type: 'default',\r
2955         },\r
2956       },\r
2957       scroll_panel: {\r
2958         symbol: {\r
2959           type: 'image',\r
2960           name: '<%= asset_path('item.png') %>',\r
2961           link: {\r
2962             type: 'none'\r
2963           },\r
2964         },\r
2965         caption: {\r
2966           type: 'none',\r
2967         },\r
2968         summary: {\r
2969           type: 'template',\r
2970           name: 'summary',\r
2971         },\r
2972         edit: {\r
2973           type: 'none'\r
2974         },\r
2975       },\r
2976       comic: {\r
2977         symbol: {\r
2978           type: 'image',\r
2979           name: '<%= asset_path('item.png') %>',\r
2980         },\r
2981         caption: {\r
2982           type: 'column',\r
2983           name: 'title',\r
2984         },\r
2985         summary: {\r
2986           type: 'template',\r
2987           name: 'summary',\r
2988         },\r
2989         edit: {\r
2990           type: 'default',\r
2991         },\r
2992       },\r
2993       story: {\r
2994         symbol: {\r
2995           type: 'image',\r
2996           name: '<%= asset_path('item.png') %>',\r
2997         },\r
2998         caption: {\r
2999           type: 'method',\r
3000           name: 'title_with_t',\r
3001           link: {\r
3002             type: 'action'\r
3003             name: 'play',\r
3004           },\r
3005         },\r
3006         summary: {\r
3007           type: 'template',\r
3008           name: 'summary',\r
3009         },\r
3010         edit: {\r
3011           type: 'default',\r
3012         },\r
3013       },\r
3014       story_sheet: {\r
3015         symbol: {\r
3016           type: 'image',\r
3017           name: '<%= asset_path('item.png') %>',\r
3018           link: {\r
3019             type: 'none'\r
3020           },\r
3021         },\r
3022         caption: {\r
3023           type: 'none',\r
3024         },\r
3025         summary: {\r
3026           type: 'template',\r
3027           name: 'summary',\r
3028         },\r
3029         edit: {\r
3030           type: 'none'\r
3031         },\r
3032       },\r
3033       sheet: {\r
3034         symbol: {\r
3035           type: 'image',\r
3036           name: '<%= asset_path('item.png') %>',\r
3037         },\r
3038         caption: {\r
3039           type: 'column',\r
3040           name: 'caption',\r
3041           link: {\r
3042             type: 'action'\r
3043             name: 'play',\r
3044           },\r
3045         },\r
3046         summary: {\r
3047           type: 'template',\r
3048           name: 'summary',\r
3049         },\r
3050         edit: {\r
3051           type: 'default',\r
3052         },\r
3053       },\r
3054       sheet_panel: {\r
3055         symbol: {\r
3056           type: 'image',\r
3057           name: '<%= asset_path('item.png') %>',\r
3058           link: {\r
3059             type: 'none'\r
3060           },\r
3061         },\r
3062         caption: {\r
3063           type: 'none',\r
3064         },\r
3065         summary: {\r
3066           type: 'template',\r
3067           name: 'summary',\r
3068         },\r
3069         edit: {\r
3070           type: 'none'\r
3071         },\r
3072       },\r
3073       panel: {\r
3074         symbol: {\r
3075           type: 'image',\r
3076           name: '<%= asset_path('item.png') %>',\r
3077         },\r
3078         caption: {\r
3079           type: 'method',\r
3080           name: 'plain_scenario',\r
3081           link: {\r
3082             type: 'none'\r
3083           },\r
3084         },\r
3085         summary: {\r
3086           type: 'template',\r
3087           name: 'summary',\r
3088         },\r
3089         edit: {\r
3090           type: 'default',\r
3091         },\r
3092       },\r
3093       panel_picture: {\r
3094         symbol: {\r
3095           type: 'picture',\r
3096           name: 'symbol_option',\r
3097         },\r
3098         caption: {\r
3099           type: 'column',\r
3100           name: 'caption',\r
3101         },\r
3102         summary: {\r
3103           type: 'template',\r
3104           name: 'summary',\r
3105         },\r
3106         edit: {\r
3107           type: 'none',\r
3108         },\r
3109       },\r
3110       speech_balloon: {\r
3111         symbol: {\r
3112           type: 'picture',\r
3113           name: 'symbol_option',\r
3114         },\r
3115         caption: {\r
3116           type: 'method',\r
3117           name: 'plain_scenario',\r
3118           link: {\r
3119             type: 'none'\r
3120           },\r
3121         },\r
3122         summary: {\r
3123           type: 'template',\r
3124           name: 'summary',\r
3125         },\r
3126         edit: {\r
3127           type: 'none',\r
3128         },\r
3129       },\r
3130       speech: {\r
3131         symbol: {\r
3132           type: 'picture',\r
3133           name: 'symbol_option',\r
3134         },\r
3135         caption: {\r
3136           type: 'column',\r
3137           name: 'content',\r
3138           link: {\r
3139             type: 'none'\r
3140           },\r
3141         },\r
3142         summary: {\r
3143           type: 'template',\r
3144           name: 'summary',\r
3145         },\r
3146         edit: {\r
3147           type: 'none',\r
3148         },\r
3149       },\r
3150       balloon: {\r
3151         symbol: {\r
3152           type: 'picture',\r
3153           name: 'symbol_option',\r
3154         },\r
3155         caption: {\r
3156           type: 'none',\r
3157         },\r
3158         summary: {\r
3159           type: 'template',\r
3160           name: 'summary',\r
3161         },\r
3162         edit: {\r
3163           type: 'none',\r
3164         },\r
3165       },\r
3166       ground_picture: {\r
3167         symbol: {\r
3168           type: 'picture',\r
3169           name: 'symbol_option',\r
3170         },\r
3171         caption: {\r
3172           type: 'column',\r
3173           name: 'caption',\r
3174         },\r
3175         summary: {\r
3176           type: 'template',\r
3177           name: 'summary',\r
3178         },\r
3179         edit: {\r
3180           type: 'none',\r
3181         },\r
3182       },\r
3183       ground_color: {\r
3184         symbol: {\r
3185           type: 'template',\r
3186           name: 'symbol',\r
3187         },\r
3188         caption: {\r
3189           type: 'column',\r
3190           name: 'caption',\r
3191         },\r
3192         summary: {\r
3193           type: 'template',\r
3194           name: 'summary',\r
3195         },\r
3196         edit: {\r
3197           type: 'none',\r
3198         },\r
3199       },\r
3200       original_picture: {\r
3201         symbol: {\r
3202           type: 'picture',\r
3203           name: 'symbol_option',\r
3204         },\r
3205         caption: {\r
3206           type: 'method',\r
3207           name: 'revision',\r
3208           link: {\r
3209             type: 'action'\r
3210             name: 'history',\r
3211           },\r
3212         },\r
3213         summary: {\r
3214           type: 'template',\r
3215           name: 'summary',\r
3216         },\r
3217         edit: {\r
3218           type: 'template',\r
3219           name: 'publish',\r
3220         },\r
3221       },\r
3222       picture: {\r
3223         symbol: {\r
3224           type: 'picture',\r
3225           name: 'symbol_option',\r
3226         },\r
3227         caption: {\r
3228           type: 'column',\r
3229           name: 'revision',\r
3230         },\r
3231         summary: {\r
3232           type: 'template',\r
3233           name: 'summary',\r
3234         },\r
3235         edit: {\r
3236           type: 'none',\r
3237         },\r
3238       },\r
3239       resource_picture: {\r
3240         symbol: {\r
3241           type: 'picture',\r
3242           name: 'symbol_option',\r
3243         },\r
3244         caption: {\r
3245           type: 'none',\r
3246         },\r
3247         summary: {\r
3248           type: 'template',\r
3249           name: 'summary',\r
3250         },\r
3251         edit: {\r
3252           type: 'none',\r
3253         },\r
3254       },\r
3255       speech_balloon_template: {\r
3256         symbol: {\r
3257           type: 'picture',\r
3258           name: 'symbol_option',\r
3259         },\r
3260         caption: {\r
3261           type: 'column',\r
3262           name: 'caption',\r
3263         },\r
3264         summary: {\r
3265           type: 'none',\r
3266         },\r
3267         edit: {\r
3268           type: 'none',\r
3269         },\r
3270       },\r
3271       writing_format: {\r
3272         symbol: {\r
3273           type: 'image',\r
3274           name: '<%= asset_path('item.png') %>',\r
3275         },\r
3276         caption: {\r
3277           type: 'column',\r
3278           name: 'caption',\r
3279         },\r
3280         summary: {\r
3281           type: 'none',\r
3282         },\r
3283         edit: {\r
3284           type: 'none',\r
3285         },\r
3286       },\r
3287       license_group: {\r
3288         symbol: {\r
3289           type: 'image',\r
3290           name: '<%= asset_path('item.png') %>',\r
3291         },\r
3292         caption: {\r
3293           type: 'column',\r
3294           name: 'caption',\r
3295           link: {\r
3296             type: 'url_column'\r
3297             name: 'url',\r
3298           },\r
3299         },\r
3300         summary: {\r
3301           type: 'none',\r
3302         },\r
3303         edit: {\r
3304           type: 'none',\r
3305         },\r
3306       },\r
3307       license: {\r
3308         symbol: {\r
3309           type: 'image',\r
3310           name: '<%= asset_path('item.png') %>',\r
3311         },\r
3312         caption: {\r
3313           type: 'method',\r
3314           name: 'caption_with_group',\r
3315           link: {\r
3316             type: 'url_column'\r
3317             name: 'url',\r
3318           },\r
3319         },\r
3320         summary: {\r
3321           type: 'template',\r
3322           name: 'summary',\r
3323         },\r
3324         edit: {\r
3325           type: 'none',\r
3326         },\r
3327       },\r
3328       author: {\r
3329         symbol: {\r
3330           type: 'image',\r
3331           name: '<%= asset_path('item.png') %>',\r
3332         },\r
3333         caption: {\r
3334           type: 'column',\r
3335           name: 'name',\r
3336         },\r
3337         summary: {\r
3338           type: 'template',\r
3339           name: 'summary',\r
3340         },\r
3341         edit: {\r
3342           type: 'account',\r
3343         },\r
3344       },\r
3345       artist: {\r
3346         symbol: {\r
3347           type: 'image',\r
3348           name: '<%= asset_path('item.png') %>',\r
3349         },\r
3350         caption: {\r
3351           type: 'column',\r
3352           name: 'name',\r
3353         },\r
3354         summary: {\r
3355           type: 'template',\r
3356           name: 'summary',\r
3357         },\r
3358         edit: {\r
3359           type: 'account',\r
3360         },\r
3361       },\r
3362       system_picture: {\r
3363         symbol: {\r
3364           type: 'picture',\r
3365           name: 'symbol_option',\r
3366         },\r
3367         caption: {\r
3368           type: 'none',\r
3369         },\r
3370         summary: {\r
3371           type: 'none',\r
3372         },\r
3373         edit: {\r
3374           type: 'none',\r
3375         },\r
3376       },\r
3377     },\r
3378     elements: [\r
3379       {\r
3380         name: 'panel_picture',\r
3381         path_name: 'panel_pictures', \r
3382         parts: []\r
3383       },\r
3384       {\r
3385         name: 'speech_balloon',\r
3386         path_name: 'circle_speech_balloon/speech_balloons', \r
3387         parts: ['balloon', 'speech']\r
3388       },\r
3389       {\r
3390         name: 'ground_picture',\r
3391         path_name: 'ground_pictures', \r
3392         parts: []\r
3393       },\r
3394       {\r
3395         name: 'ground_color',\r
3396         path_name: 'ground_colors', \r
3397         parts: []\r
3398       },\r
3399     ],\r
3400     forms: {\r
3401       Panel: 'panel',\r
3402       panel: {\r
3403         attributes: {\r
3404           caption: {\r
3405             column: 'caption',\r
3406             type: 'text',\r
3407             label: {\r
3408             },\r
3409             options: {\r
3410               row_break: true\r
3411             }\r
3412           },\r
3413           width: {\r
3414             column: 'width',\r
3415             type: 'number',\r
3416             label: {\r
3417             },\r
3418             options: {\r
3419               size: 5, \r
3420             },\r
3421           },\r
3422           height: {\r
3423             column: 'height',\r
3424             type: 'number',\r
3425             label: {\r
3426             },\r
3427             options: {\r
3428               size: 5, \r
3429               row_break: true\r
3430             }, \r
3431           },\r
3432           border: {\r
3433             column: 'border',\r
3434             type: 'number',\r
3435             label: {\r
3436             },\r
3437             options: {\r
3438               size: 5, \r
3439             },\r
3440           },\r
3441           publish: {\r
3442             column: 'publish',\r
3443             type: 'select',\r
3444             label: {\r
3445             },\r
3446             options: {\r
3447               source: 'magic_number',\r
3448               key: 'comic_visible_items',\r
3449               size: 5, \r
3450               row_break: true\r
3451             }\r
3452           },\r
3453           id: {\r
3454             column: 'id',\r
3455             type: 'hidden',\r
3456             label: {\r
3457               type: 'hidden'\r
3458             },\r
3459             options: {\r
3460             }\r
3461           },\r
3462           author_id: {\r
3463             column: 'author_id',\r
3464             type: 'hidden',\r
3465             label: {\r
3466               type: 'hidden'\r
3467             },\r
3468             options: {\r
3469             }\r
3470           },\r
3471         },\r
3472         fields: [\r
3473           'caption',\r
3474           'width',\r
3475           'height',\r
3476           'border',\r
3477           'publish',\r
3478           'id',\r
3479           'author_id',\r
3480         ]\r
3481       },\r
3482       PanelPicture: 'panel_picture',\r
3483       panel_picture: {\r
3484         attributes: {\r
3485           caption: {\r
3486             column: 'caption',\r
3487             type: 'text',\r
3488             label: {\r
3489             },\r
3490             options: {\r
3491               row_break: true\r
3492             }\r
3493           },\r
3494           x: {\r
3495             column: 'x',\r
3496             type: 'number',\r
3497             label: {\r
3498             },\r
3499             options: {\r
3500               size: 5, \r
3501             }\r
3502           },\r
3503           y: {\r
3504             column: 'y',\r
3505             type: 'number',\r
3506             label: {\r
3507             },\r
3508             options: {\r
3509               size: 5, \r
3510               row_break: true\r
3511             }\r
3512           },\r
3513           width: {\r
3514             column: 'width',\r
3515             type: 'number',\r
3516             label: {\r
3517             },\r
3518             options: {\r
3519               size: 5, \r
3520               row_break: true\r
3521             },\r
3522             helpers: {\r
3523               size: {\r
3524                 path: 'panels/size_helper',\r
3525                 options: {\r
3526                   class: 'panel_picture_width_tool', \r
3527                 }\r
3528               }\r
3529             },\r
3530           },\r
3531           height: {\r
3532             column: 'height',\r
3533             type: 'number',\r
3534             label: {\r
3535             },\r
3536             options: {\r
3537               size: 5, \r
3538               row_break: true\r
3539             }, \r
3540             helpers: {\r
3541               size: {\r
3542                 path: 'panels/size_helper',\r
3543                 options: {\r
3544                   class: 'panel_picture_height_tool', \r
3545                 }\r
3546               }\r
3547             },\r
3548           },\r
3549           link: {\r
3550             column: 'link',\r
3551             type: 'text',\r
3552             label: {\r
3553             },\r
3554             options: {\r
3555               row_break: true\r
3556             }\r
3557           },\r
3558           id: {\r
3559             column: 'id',\r
3560             type: 'hidden',\r
3561             label: {\r
3562               type: 'hidden'\r
3563             },\r
3564             options: {\r
3565             }\r
3566           },\r
3567           panel_id: {\r
3568             column: 'panel_id',\r
3569             type: 'hidden',\r
3570             label: {\r
3571               type: 'hidden'\r
3572             },\r
3573             options: {\r
3574             }\r
3575           },\r
3576           picture_id: {\r
3577             column: 'picture_id',\r
3578             type: 'hidden',\r
3579             label: {\r
3580             },\r
3581             helpers: {\r
3582               popup: {\r
3583                 path: 'panels/popup_helper',\r
3584                 source: 'pictures',\r
3585                 options: {\r
3586                 }\r
3587               }\r
3588             }\r
3589             options: {\r
3590             }\r
3591           },\r
3592           z: {\r
3593             column: 'z',\r
3594             type: 'hidden',\r
3595             label: {\r
3596               type: 'hidden'\r
3597             },\r
3598             options: {\r
3599             }\r
3600           },\r
3601           t: {\r
3602             column: 't',\r
3603             type: 'hidden',\r
3604             label: {\r
3605               type: 'hidden'\r
3606             },\r
3607             options: {\r
3608             }\r
3609           },\r
3610         },\r
3611         fields: [\r
3612           'caption',\r
3613           'x',\r
3614           'y',\r
3615           'width',\r
3616           'height',\r
3617           'link',\r
3618           'id',\r
3619           'panel_id',\r
3620           'picture_id',\r
3621           'z',\r
3622           't',\r
3623         ]\r
3624       },\r
3625       speech_balloon: {\r
3626         attributes: {\r
3627           'speech_balloon.id': {\r
3628             column: 'id',\r
3629             type: 'hidden',\r
3630             label: {\r
3631               type: 'hidden'\r
3632             },\r
3633             options: {\r
3634             }\r
3635           },\r
3636           'speech_balloon.panel_id': {\r
3637             column: 'panel_id',\r
3638             type: 'hidden',\r
3639             label: {\r
3640               type: 'hidden'\r
3641             },\r
3642             options: {\r
3643             }\r
3644           },\r
3645           'speech_balloon.speech_balloon_template_id': {\r
3646             column: 'speech_balloon_template_id',\r
3647             type: 'hidden',\r
3648             label: {\r
3649               type: 'hidden'\r
3650             },\r
3651             options: {\r
3652             }\r
3653           },\r
3654           'speech_balloon.caption': {\r
3655             column: 'caption',\r
3656             type: 'text',\r
3657             label: {\r
3658             },\r
3659             options: {\r
3660               row_break: true\r
3661             }\r
3662           },\r
3663           'speech_balloon.z': {\r
3664             column: 'z',\r
3665             type: 'hidden',\r
3666             label: {\r
3667               type: 'hidden'\r
3668             },\r
3669             options: {\r
3670             }\r
3671           },\r
3672           'speech_balloon.t': {\r
3673             column: 't',\r
3674             type: 'hidden',\r
3675             label: {\r
3676               type: 'hidden'\r
3677             },\r
3678             options: {\r
3679             }\r
3680           },\r
3681           'speech_balloon.classname': {\r
3682             column: 'classname',\r
3683             type: 'hidden',\r
3684             label: {\r
3685               type: 'hidden'\r
3686             },\r
3687             options: {\r
3688             }\r
3689           },\r
3690           'speech_balloon.settings': {\r
3691             column: 'settings',\r
3692             type: 'hidden',\r
3693             label: {\r
3694               type: 'hidden'\r
3695             },\r
3696             options: {\r
3697             }\r
3698           },\r
3699           'balloon.id': {\r
3700             model: 'balloon',\r
3701             part: 'balloon',\r
3702             column: 'id',\r
3703             type: 'hidden',\r
3704             label: {\r
3705               type: 'hidden'\r
3706             },\r
3707             options: {\r
3708             }\r
3709           },\r
3710           'balloon.speech_balloon_id': {\r
3711             model: 'balloon',\r
3712             part: 'balloon',\r
3713             column: 'speech_balloon_id',\r
3714             type: 'hidden',\r
3715             label: {\r
3716               type: 'hidden'\r
3717             },\r
3718             options: {\r
3719             }\r
3720           },\r
3721           'balloon.system_picture_id': {\r
3722             model: 'balloon',\r
3723             part: 'balloon',\r
3724             column: 'system_picture_id',\r
3725             type: 'hidden',\r
3726             label: {\r
3727               type: 'hidden'\r
3728             },\r
3729             options: {\r
3730             }\r
3731           },\r
3732           'balloon.r': {\r
3733             model: 'balloon',\r
3734             part: 'balloon',\r
3735             column: 'r',\r
3736             type: 'number',\r
3737             label: {\r
3738             },\r
3739             options: {\r
3740               size: 5, \r
3741               row_break: true\r
3742             },\r
3743             helpers: {\r
3744               tail_angle: {\r
3745                 path: 'panels/tail_angle_helper',\r
3746                 options: {\r
3747                 }\r
3748               }\r
3749             }\r
3750           },\r
3751           'balloon.x': {\r
3752             model: 'balloon',\r
3753             part: 'balloon',\r
3754             column: 'x',\r
3755             type: 'number',\r
3756             label: {\r
3757             },\r
3758             options: {\r
3759               size: 5, \r
3760             }\r
3761           },\r
3762           'balloon.y': {\r
3763             model: 'balloon',\r
3764             part: 'balloon',\r
3765             column: 'y',\r
3766             type: 'number',\r
3767             label: {\r
3768             },\r
3769             options: {\r
3770               size: 5, \r
3771               row_break: true\r
3772             }\r
3773           },\r
3774           'balloon.width': {\r
3775             model: 'balloon',\r
3776             part: 'balloon',\r
3777             column: 'width',\r
3778             type: 'number',\r
3779             label: {\r
3780             },\r
3781             options: {\r
3782               size: 5, \r
3783             }\r
3784           },\r
3785           'balloon.height': {\r
3786             model: 'balloon',\r
3787             part: 'balloon',\r
3788             column: 'height',\r
3789             type: 'number',\r
3790             label: {\r
3791             },\r
3792             options: {\r
3793               size: 5, \r
3794               row_break: true\r
3795             }\r
3796           },\r
3797           'balloon.settings': {\r
3798             model: 'balloon',\r
3799             part: 'balloon',\r
3800             column: 'settings',\r
3801             type: 'hidden',\r
3802             label: {\r
3803               type: 'hidden'\r
3804             },\r
3805             options: {\r
3806             }\r
3807           },\r
3808           'speech.id': {\r
3809             model: 'speech',\r
3810             part: 'speech',\r
3811             column: 'id',\r
3812             type: 'hidden',\r
3813             label: {\r
3814               type: 'hidden'\r
3815             },\r
3816             options: {\r
3817             }\r
3818           },\r
3819           'speech.speech_balloon_id': {\r
3820             model: 'speech',\r
3821             part: 'speech',\r
3822             column: 'speech_balloon_id',\r
3823             type: 'hidden',\r
3824             label: {\r
3825               type: 'hidden'\r
3826             },\r
3827             options: {\r
3828             }\r
3829           },\r
3830           'speech.x': {\r
3831             model: 'speech',\r
3832             part: 'speech',\r
3833             column: 'x',\r
3834             type: 'hidden',\r
3835             label: {\r
3836               type: 'hidden'\r
3837             },\r
3838             options: {\r
3839             }\r
3840           },\r
3841           'speech.y': {\r
3842             model: 'speech',\r
3843             part: 'speech',\r
3844             column: 'y',\r
3845             type: 'hidden',\r
3846             label: {\r
3847               type: 'hidden'\r
3848             },\r
3849             options: {\r
3850             }\r
3851           },\r
3852           'speech.width': {\r
3853             model: 'speech',\r
3854             part: 'speech',\r
3855             column: 'width',\r
3856             type: 'hidden',\r
3857             label: {\r
3858               type: 'hidden'\r
3859             },\r
3860             options: {\r
3861             }\r
3862           },\r
3863           'speech.height': {\r
3864             model: 'speech',\r
3865             part: 'speech',\r
3866             column: 'height',\r
3867             type: 'hidden',\r
3868             label: {\r
3869               type: 'hidden'\r
3870             },\r
3871             options: {\r
3872             }\r
3873           },\r
3874           'speech.writing_format_id': {\r
3875             model: 'speech',\r
3876             part: 'speech',\r
3877             column: 'writing_format_id',\r
3878             type: 'select',\r
3879             label: {\r
3880             },\r
3881             options: {\r
3882               source: 'model',\r
3883               model: 'writing_format',\r
3884               method: 'enable_list',\r
3885               caption: 'caption'\r
3886             }\r
3887           },\r
3888           'speech.font_size': {\r
3889             model: 'speech',\r
3890             part: 'speech',\r
3891             column: 'font_size',\r
3892             type: 'select',\r
3893             label: {\r
3894             },\r
3895             options: {\r
3896               source: 'magic_number',\r
3897               key: 'speech_font_size_items',\r
3898               row_break: true\r
3899             }\r
3900           },\r
3901           'speech.text_align': {\r
3902             model: 'speech',\r
3903             part: 'speech',\r
3904             column: 'text_align',\r
3905             type: 'select',\r
3906             label: {\r
3907             },\r
3908             options: {\r
3909               source: 'magic_number',\r
3910               key: 'speech_text_align_items',\r
3911             }\r
3912           },\r
3913           'speech.quotes': {\r
3914             model: 'speech',\r
3915             part: 'speech',\r
3916             column: 'quotes',\r
3917             type: 'text',\r
3918             label: {\r
3919             },\r
3920             options: {\r
3921               size: 5, \r
3922             }\r
3923           },\r
3924           'speech.content': {\r
3925             model: 'speech',\r
3926             part: 'speech',\r
3927             column: 'content',\r
3928             type: 'text_area',\r
3929             label: {\r
3930               row_break: true\r
3931             },\r
3932             options: {\r
3933               size: '45x5', \r
3934             }\r
3935           },\r
3936           'speech.fore_color': {\r
3937             model: 'speech',\r
3938             part: 'speech',\r
3939             column: 'fore_color',\r
3940             type: 'hidden',\r
3941             label: {\r
3942               row_break: true\r
3943             },\r
3944             options: {\r
3945             },\r
3946             helpers: {\r
3947               color: {\r
3948                 path: 'panels/color_helper',\r
3949                 options: {\r
3950                 },\r
3951                 wrapper: 'speech-fore_color-wrap'\r
3952               }\r
3953             }\r
3954           },\r
3955           'speech.settings': {\r
3956             model: 'speech',\r
3957             part: 'speech',\r
3958             column: 'settings',\r
3959             type: 'hidden',\r
3960             label: {\r
3961               type: 'hidden'\r
3962             },\r
3963             options: {\r
3964             }\r
3965           },\r
3966         },\r
3967       },\r
3968       CircleSpeechBalloon: 'circle_speech_balloon',\r
3969       circle_speech_balloon: {\r
3970         base: 'speech_balloon',\r
3971         attributes: {\r
3972         },\r
3973         fields: [\r
3974             'speech_balloon.caption',\r
3975             'balloon.r',\r
3976             'balloon.x',\r
3977             'balloon.y',\r
3978             'balloon.width',\r
3979             'balloon.height',\r
3980             'balloon.id',\r
3981             'balloon.speech_balloon_id',\r
3982             'balloon.system_picture_id',\r
3983             'balloon.settings',\r
3984             'speech.writing_format_id',\r
3985             'speech.font_size',\r
3986             'speech.text_align',\r
3987             'speech.quotes',\r
3988             'speech.content',\r
3989             'speech.fore_color',\r
3990             'speech.id',\r
3991             'speech.speech_balloon_id',\r
3992             'speech.x',\r
3993             'speech.y',\r
3994             'speech.width',\r
3995             'speech.height',\r
3996             'speech.settings',\r
3997             'speech_balloon.id',\r
3998             'speech_balloon.panel_id',\r
3999             'speech_balloon.speech_balloon_template_id',\r
4000             'speech_balloon.classname',\r
4001             'speech_balloon.z',\r
4002             'speech_balloon.t',\r
4003             'speech_balloon.settings',\r
4004         ]\r
4005       },\r
4006       PlainSpeechBalloon: 'plain_speech_balloon',\r
4007       plain_speech_balloon: {\r
4008         base: 'speech_balloon',\r
4009         attributes: {\r
4010           'balloon.r': {\r
4011             model: 'balloon',\r
4012             part: 'balloon',\r
4013             column: 'r',\r
4014             type: 'hidden',\r
4015             label: {\r
4016               type: 'hidden'\r
4017             },\r
4018             options: {\r
4019             },\r
4020           },\r
4021         },\r
4022         fields: [\r
4023           'speech_balloon.caption',\r
4024           'balloon.r',\r
4025           'balloon.x',\r
4026           'balloon.y',\r
4027           'balloon.width',\r
4028           'balloon.height',\r
4029           'balloon.id',\r
4030           'balloon.speech_balloon_id',\r
4031           'balloon.system_picture_id',\r
4032           'balloon.settings',\r
4033           'speech.writing_format_id',\r
4034           'speech.font_size',\r
4035           'speech.text_align',\r
4036           'speech.quotes',\r
4037           'speech.content',\r
4038           'speech.fore_color',\r
4039           'speech.id',\r
4040           'speech.speech_balloon_id',\r
4041           'speech.x',\r
4042           'speech.y',\r
4043           'speech.width',\r
4044           'speech.height',\r
4045           'speech.settings',\r
4046           'speech_balloon.id',\r
4047           'speech_balloon.panel_id',\r
4048           'speech_balloon.speech_balloon_template_id',\r
4049           'speech_balloon.classname',\r
4050           'speech_balloon.z',\r
4051           'speech_balloon.t',\r
4052           'speech_balloon.settings',\r
4053         ]\r
4054       },\r
4055       SquareSpeechBalloon: 'square_speech_balloon',\r
4056       square_speech_balloon: {\r
4057         base: 'speech_balloon',\r
4058         attributes: {\r
4059           'balloon.r': {\r
4060             model: 'balloon',\r
4061             part: 'balloon',\r
4062             column: 'r',\r
4063             type: 'hidden',\r
4064             label: {\r
4065               type: 'hidden'\r
4066             },\r
4067             options: {\r
4068             },\r
4069           },\r
4070         },\r
4071         fields: [\r
4072           'speech_balloon.caption',\r
4073           'balloon.r',\r
4074           'balloon.x',\r
4075           'balloon.y',\r
4076           'balloon.width',\r
4077           'balloon.height',\r
4078           'balloon.id',\r
4079           'balloon.speech_balloon_id',\r
4080           'balloon.system_picture_id',\r
4081           'balloon.settings',\r
4082           'speech.writing_format_id',\r
4083           'speech.font_size',\r
4084           'speech.text_align',\r
4085           'speech.quotes',\r
4086           'speech.content',\r
4087           'speech.fore_color',\r
4088           'speech.id',\r
4089           'speech.speech_balloon_id',\r
4090           'speech.x',\r
4091           'speech.y',\r
4092           'speech.width',\r
4093           'speech.height',\r
4094           'speech.settings',\r
4095           'speech_balloon.id',\r
4096           'speech_balloon.panel_id',\r
4097           'speech_balloon.speech_balloon_template_id',\r
4098           'speech_balloon.classname',\r
4099           'speech_balloon.z',\r
4100           'speech_balloon.t',\r
4101           'speech_balloon.settings',\r
4102         ]\r
4103       },\r
4104       GroundPicture: 'ground_picture',\r
4105       ground_picture: {\r
4106         attributes: {\r
4107           id: {\r
4108             column: 'id',\r
4109             type: 'hidden',\r
4110             label: {\r
4111               type: 'hidden'\r
4112             },\r
4113             options: {\r
4114             }\r
4115           },\r
4116           panel_id: {\r
4117             column: 'panel_id',\r
4118             type: 'hidden',\r
4119             label: {\r
4120               type: 'hidden'\r
4121             },\r
4122             options: {\r
4123             }\r
4124           },\r
4125           picture_id: {\r
4126             column: 'picture_id',\r
4127             type: 'hidden',\r
4128             label: {\r
4129               type: 'hidden'\r
4130             },\r
4131             options: {\r
4132             }\r
4133           },\r
4134           caption: {\r
4135             column: 'caption',\r
4136             type: 'text',\r
4137             label: {\r
4138             },\r
4139             options: {\r
4140               row_break: true\r
4141             }\r
4142           },\r
4143           repeat: {\r
4144             column: 'repeat',\r
4145             type: 'select',\r
4146             label: {\r
4147             },\r
4148             options: {\r
4149               source: 'magic_number',\r
4150               key: 'ground_picture_repeat_items',\r
4151               row_break: true\r
4152             }\r
4153           },\r
4154           x: {\r
4155             column: 'x',\r
4156             type: 'number',\r
4157             label: {\r
4158             },\r
4159             options: {\r
4160               size: 5, \r
4161             }\r
4162           },\r
4163           y: {\r
4164             column: 'y',\r
4165             type: 'number',\r
4166             label: {\r
4167             },\r
4168             options: {\r
4169               size: 5, \r
4170               row_break: true\r
4171             }\r
4172           },\r
4173           z: {\r
4174             column: 'z',\r
4175             type: 'hidden',\r
4176             label: {\r
4177               type: 'hidden'\r
4178             },\r
4179             options: {\r
4180             }\r
4181           },\r
4182           t: {\r
4183             column: 't',\r
4184             type: 'hidden',\r
4185             label: {\r
4186               type: 'hidden'\r
4187             },\r
4188             options: {\r
4189             }\r
4190           },\r
4191         },\r
4192         fields: [\r
4193           'caption',\r
4194           'repeat',\r
4195           'x',\r
4196           'y',\r
4197           'z',\r
4198           't',\r
4199           'id',\r
4200           'panel_id',\r
4201           'picture_id',\r
4202         ]\r
4203       },\r
4204       GroundColor: 'ground_color',\r
4205       ground_color: {\r
4206         attributes: {\r
4207           id: {\r
4208             column: 'id',\r
4209             type: 'hidden',\r
4210             label: {\r
4211               type: 'hidden'\r
4212             },\r
4213             options: {\r
4214             }\r
4215           },\r
4216           panel_id: {\r
4217             column: 'panel_id',\r
4218             type: 'hidden',\r
4219             label: {\r
4220               type: 'hidden'\r
4221             },\r
4222             options: {\r
4223             }\r
4224           },\r
4225           caption: {\r
4226             column: 'caption',\r
4227             type: 'text',\r
4228             label: {\r
4229             },\r
4230             options: {\r
4231               row_break: true\r
4232             }\r
4233           },\r
4234           code: {\r
4235             column: 'code',\r
4236             type: 'hidden',\r
4237             label: {\r
4238               row_break: true\r
4239             },\r
4240             options: {\r
4241               row_break: true\r
4242             }\r
4243             helpers: {\r
4244               color: {\r
4245                 path: 'panels/color_helper',\r
4246                 options: {\r
4247                 },\r
4248                 wrapper: 'ground_color-code-wrap'\r
4249               }\r
4250             },\r
4251           },\r
4252           orientation: {\r
4253             column: 'orientation',\r
4254             type: 'select',\r
4255             label: {\r
4256             },\r
4257             options: {\r
4258               source: 'magic_number',\r
4259               key: 'ground_color_orientation_items',\r
4260               row_break: true\r
4261             }\r
4262           },\r
4263           xy: {\r
4264             column: 'xy',\r
4265             type: 'number',\r
4266             label: {\r
4267             },\r
4268             options: {\r
4269               size: 5, \r
4270             }\r
4271           },\r
4272           wh: {\r
4273             column: 'wh',\r
4274             type: 'number',\r
4275             label: {\r
4276             },\r
4277             options: {\r
4278               size: 5, \r
4279               row_break: true\r
4280             }\r
4281           },\r
4282           z: {\r
4283             column: 'z',\r
4284             type: 'hidden',\r
4285             label: {\r
4286               type: 'hidden'\r
4287             },\r
4288             options: {\r
4289             }\r
4290           },\r
4291           t: {\r
4292             column: 't',\r
4293             type: 'hidden',\r
4294             label: {\r
4295               type: 'hidden'\r
4296             },\r
4297             options: {\r
4298             }\r
4299           },\r
4300         },\r
4301         fields: [\r
4302           'id',\r
4303           'panel_id',\r
4304           'caption',\r
4305           'code',\r
4306           'orientation',\r
4307           'xy',\r
4308           'wh',\r
4309           'z',\r
4310           't',\r
4311         ]\r
4312       }\r
4313     },\r
4314   },\r
4315   locales: {\r
4316     ja: {\r
4317     }\r
4318   },\r
4319 }\r
4320 \r
4321 @repeat_texts = ['repeat', 'repeat-x', 'repeat-y', 'no-repeat']\r
4322 \r
4323 @text_align_texts = ['left', 'left', 'right', 'center']\r
4324 \r