OSDN Git Service

Merge branch 'v06' of git.sourceforge.jp:/gitroot/pettanr/pettanr into v06
[pettanr/pettanr.git] / app / assets / javascripts / manifest / work / models.js.coffee.erb
1 #マニフェスト\r
2 @models = {\r
3   scroll: {\r
4     class_name: 'Scroll',\r
5     table_name: 'scrolls',\r
6     associations: {\r
7       belongs_to: {\r
8         author: {\r
9           id_column: 'author_id'\r
10         }, \r
11       },\r
12       has_many: {\r
13         scroll_panels: {\r
14           foreign_key: 'scroll_id',\r
15           model_name: 'scroll_panel',\r
16         }, \r
17         panels: {\r
18           through: 'scroll_panel',\r
19           foreign_key: 'scroll_id',\r
20           model_name: 'panel',\r
21         }, \r
22       },\r
23     },\r
24     attributes: {\r
25       id: {\r
26         type: 'number',\r
27         primary_key: 1,\r
28         rules : {\r
29           number: true,\r
30         }\r
31       },\r
32       title: {\r
33         type: 'text',\r
34         rules : {\r
35           required: true,\r
36         }\r
37       },\r
38       description: {\r
39         type: 'text',\r
40         rules : {\r
41         }\r
42       },\r
43       visible: {\r
44         type: 'number',\r
45         rules : {\r
46           required: true,\r
47           number: true,\r
48         },\r
49         source: {\r
50           type: 'magic_number',\r
51           args: {\r
52             select_item_name: 'scroll_visible_items',\r
53           },\r
54         },\r
55       },\r
56       author_id: {\r
57         type: 'number',\r
58         rules : {\r
59           required: true,\r
60           number: true,\r
61         },\r
62       },\r
63       created_at: {\r
64         type: 'datetime',\r
65       },\r
66       updated_at: {\r
67         type: 'datetime',\r
68       }\r
69     },\r
70     lists: {\r
71       public_list: {\r
72         type: 'public',\r
73       },\r
74       private_list: {\r
75         type: 'private',\r
76       },\r
77       by_author: {\r
78         type: 'filter',\r
79         args: {\r
80           filter_item_name: 'author',\r
81           filter_key: 'author_id',\r
82         },\r
83       },\r
84       by_panel: {\r
85         type: 'through_filter',\r
86         args: {\r
87           filter_item_name: 'panel',\r
88           through: 'scroll_panels',\r
89           filter_key: 'panel_id',\r
90         },\r
91       },\r
92       play: {\r
93         type: 'play',\r
94         args: {\r
95           filter_item_name: 'scroll',\r
96           filter_model_name: 'scroll_panel',\r
97           filter_key: 'scroll_id',\r
98         },\r
99       },\r
100     },\r
101   },\r
102   scroll_panel: {\r
103     class_name: 'ScrollPanel',\r
104     table_name: 'scroll_panels',\r
105     associations: {\r
106       belongs_to: {\r
107         panel: {\r
108           id_column: 'panel_id'\r
109         }, \r
110         scroll: {\r
111           id_column: 'scroll_id'\r
112         }, \r
113       },\r
114       has_many: {\r
115       },\r
116     },\r
117     attributes: {\r
118       id: {\r
119         type: 'number',\r
120         primary_key: 1,\r
121         rules : {\r
122           number: true,\r
123         }\r
124       },\r
125       scroll_id: {\r
126         type: 'number',\r
127         rules : {\r
128           required: true,\r
129           number: true,\r
130         }\r
131       },\r
132       panel_id: {\r
133         type: 'number',\r
134         rules : {\r
135           required: true,\r
136           number: true,\r
137         }\r
138       },\r
139       t: {\r
140         type: 'number',\r
141         rules : {\r
142           required: true,\r
143           number: true,\r
144           min: 0,\r
145         }\r
146       },\r
147       author_id: {\r
148         type: 'number',\r
149         rules : {\r
150           required: true,\r
151           number: true,\r
152         }\r
153       },\r
154       created_at: {\r
155         type: 'datetime',\r
156       },\r
157       updated_at: {\r
158         type: 'datetime',\r
159       }\r
160     },\r
161     lists: {\r
162       public_list: {\r
163         type: 'public',\r
164       },\r
165       private_list: {\r
166         type: 'private',\r
167       },\r
168       by_scroll: {\r
169         type: 'filter',\r
170       },\r
171       by_panel: {\r
172         type: 'filter',\r
173       },\r
174     },\r
175   },\r
176   comic: {\r
177     class_name: 'Comic',\r
178     table_name: 'comics',\r
179     associations: {\r
180       belongs_to: {\r
181         author: {\r
182           id_column: 'author_id'\r
183         }, \r
184       },\r
185       has_many: {\r
186         stories: {\r
187           foreign_key: 'comic_id',\r
188           model_name: 'story',\r
189         }, \r
190       },\r
191       has_many_through: {\r
192       },\r
193     },\r
194     attributes: {\r
195       id: {\r
196         type: 'number',\r
197         primary_key: 1,\r
198         rules : {\r
199           number: true,\r
200         }\r
201       },\r
202       title: {\r
203         type: 'text',\r
204         rules : {\r
205           required: true,\r
206         }\r
207       },\r
208       description: {\r
209         type: 'text',\r
210         rules : {\r
211         }\r
212       },\r
213       visible: {\r
214         type: 'number',\r
215         rules : {\r
216           required: true,\r
217           number: true,\r
218         },\r
219         source: {\r
220           type: 'magic_number',\r
221           args: {\r
222             select_item_name: 'comic_visible_items',\r
223           },\r
224         },\r
225       },\r
226       author_id: {\r
227         type: 'number',\r
228         rules : {\r
229           required: true,\r
230           number: true,\r
231         }\r
232       },\r
233       created_at: {\r
234         type: 'datetime',\r
235       },\r
236       updated_at: {\r
237         type: 'datetime',\r
238       }\r
239     },\r
240     lists: {\r
241       public_list: {\r
242         type: 'public',\r
243       },\r
244       private_list: {\r
245         type: 'private',\r
246       },\r
247       by_author: {\r
248         type: 'filter',\r
249       },\r
250     },\r
251   },\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           model_name: 'story_sheet',\r
265         }, \r
266         sheets: {\r
267           through: 'story_sheets',\r
268           foreign_key: 'story_id',\r
269           model_name: 'sheet',\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           args: {\r
314             select_item_name: 'story_visible_items',\r
315           },\r
316         },\r
317       },\r
318       created_at: {\r
319         type: 'datetime',\r
320       },\r
321       updated_at: {\r
322         type: 'datetime',\r
323       }\r
324     },\r
325     lists: {\r
326       public_list: {\r
327         type: 'public',\r
328       },\r
329       private_list: {\r
330         type: 'private',\r
331       },\r
332       by_comic: {\r
333         type: 'filter',\r
334       },\r
335       by_sheet: {\r
336         type: 'through_filter',\r
337       },\r
338       by_author: {\r
339         type: 'element_filter',\r
340       },\r
341       play: {\r
342         type: 'play',\r
343       },\r
344     },\r
345   },\r
346   story_sheet: {\r
347     class_name: 'StorySheet',\r
348     table_name: 'story_sheets',\r
349     associations: {\r
350       belongs_to: {\r
351         story: {\r
352           id_column: 'story_id'\r
353         }, \r
354         sheet: {\r
355           id_column: 'sheet_id'\r
356         }, \r
357       },\r
358       has_many: {\r
359       },\r
360     },\r
361     attributes: {\r
362       id: {\r
363         type: 'number',\r
364         primary_key: 1,\r
365         rules : {\r
366           number: true,\r
367         }\r
368       },\r
369       story_id: {\r
370         type: 'number',\r
371         rules : {\r
372           number: true,\r
373         }\r
374       },\r
375       sheet_id: {\r
376         type: 'number',\r
377         rules : {\r
378           number: true,\r
379         }\r
380       },\r
381       t: {\r
382         type: 'number',\r
383         rules : {\r
384           required: true,\r
385           number: true,\r
386           min: 0,\r
387         }\r
388       },\r
389       author_id: {\r
390         type: 'number',\r
391         rules : {\r
392           required: true,\r
393           number: true,\r
394         }\r
395       },\r
396       created_at: {\r
397         type: 'datetime',\r
398       },\r
399       updated_at: {\r
400         type: 'datetime',\r
401       }\r
402     },\r
403     lists: {\r
404       public_list: {\r
405         type: 'public',\r
406       },\r
407       private_list: {\r
408         type: 'private',\r
409       },\r
410       by_story: {\r
411         type: 'filter',\r
412       },\r
413       by_sheet: {\r
414         type: 'filter',\r
415       },\r
416     },\r
417   },\r
418   sheet: {\r
419     class_name: 'Sheet',\r
420     table_name: 'sheets',\r
421     associations: {\r
422       belongs_to: {\r
423         author: {\r
424           id_column: 'author_id'\r
425         }, \r
426       },\r
427       has_many: {\r
428         story_sheets: {\r
429           foreign_key: 'story_id',\r
430           model_name: 'story_sheet',\r
431         }, \r
432         stories: {\r
433           through: 'story_sheets',\r
434           foreign_key: 'sheet_id',\r
435           model_name: 'story',\r
436         }, \r
437         sheet_panels: {\r
438           foreign_key: 'sheet_id',\r
439           model_name: 'sheet_panel',\r
440         }, \r
441         panels: {\r
442           through: 'sheet_panels',\r
443           foreign_key: 'sheet_id',\r
444           model_name: 'panel',\r
445         }, \r
446       },\r
447     },\r
448     attributes: {\r
449       id: {\r
450         type: 'number',\r
451         primary_key: 1,\r
452         rules : {\r
453           number: true,\r
454         }\r
455       },\r
456       caption: {\r
457         type: 'text',\r
458         rules : {\r
459         }\r
460       },\r
461       width: {\r
462         type: 'number',\r
463         rules : {\r
464           required: true,\r
465           number: true,\r
466         }\r
467       },\r
468       height: {\r
469         type: 'number',\r
470         rules : {\r
471           required: true,\r
472           number: true,\r
473         }\r
474       },\r
475       visible: {\r
476         type: 'number',\r
477         rules : {\r
478           required: true,\r
479           number: true,\r
480         },\r
481         source: {\r
482           type: 'magic_number',\r
483           args: {\r
484             select_item_name: 'sheet_visible_items',\r
485           },\r
486         },\r
487       },\r
488       author_id: {\r
489         type: 'number',\r
490         rules : {\r
491           required: true,\r
492           number: true,\r
493         }\r
494       },\r
495       created_at: {\r
496         type: 'datetime',\r
497       },\r
498       updated_at: {\r
499         type: 'datetime',\r
500       }\r
501     },\r
502     lists: {\r
503       public_list: {\r
504         type: 'public',\r
505       },\r
506       private_list: {\r
507         type: 'private',\r
508       },\r
509       by_story: {\r
510         type: 'through_filter',\r
511       },\r
512       by_panel: {\r
513         type: 'through_filter',\r
514       },\r
515       by_author: {\r
516         type: 'filter',\r
517       },\r
518       play: {\r
519         type: 'play',\r
520       },\r
521     },\r
522   },\r
523   sheet_panel: {\r
524     class_name: 'SheetPanel',\r
525     table_name: 'sheet_panels',\r
526     associations: {\r
527       belongs_to: {\r
528         sheet: {\r
529           id_column: 'sheet_id'\r
530         }, \r
531         panel: {\r
532           id_column: 'panel_id'\r
533         }, \r
534       },\r
535       has_many: {\r
536       },\r
537     },\r
538     attributes: {\r
539       id: {\r
540         type: 'number',\r
541         primary_key: 1,\r
542         rules : {\r
543           number: true,\r
544         }\r
545       },\r
546       sheet_id: {\r
547         type: 'number',\r
548         rules : {\r
549           number: true,\r
550         }\r
551       },\r
552       panel_id: {\r
553         type: 'number',\r
554         rules : {\r
555           number: true,\r
556         }\r
557       },\r
558       x: {\r
559         type: 'number',\r
560         rules : {\r
561           required: true,\r
562           number: true,\r
563         }\r
564       },\r
565       y: {\r
566         type: 'number',\r
567         rules : {\r
568           required: true,\r
569           number: true,\r
570         }\r
571       },\r
572       z: {\r
573         type: 'number',\r
574         rules : {\r
575           required: true,\r
576           number: true,\r
577           min: 1,\r
578         }\r
579       },\r
580       t: {\r
581         type: 'number',\r
582         rules : {\r
583           required: true,\r
584           number: true,\r
585           min: 0,\r
586         }\r
587       },\r
588       author_id: {\r
589         type: 'number',\r
590         rules : {\r
591           number: true,\r
592         }\r
593       },\r
594       created_at: {\r
595         type: 'datetime',\r
596       },\r
597       updated_at: {\r
598         type: 'datetime',\r
599       }\r
600     },\r
601     lists: {\r
602       public_list: {\r
603         type: 'public',\r
604       },\r
605       private_list: {\r
606         type: 'private',\r
607       },\r
608       by_sheet: {\r
609         type: 'filter',\r
610       },\r
611       by_panel: {\r
612         type: 'filter',\r
613       },\r
614     },\r
615   },\r
616   panel: {\r
617     class_name: 'Panel',\r
618     table_name: 'panels',\r
619     associations: {\r
620       belongs_to: {\r
621         author: {\r
622           id_column: 'author_id'\r
623         }, \r
624       },\r
625       has_many: {\r
626         scroll_panels: {\r
627           foreign_key: 'panel_id',\r
628           model_name: 'scroll_panel',\r
629         }, \r
630         scrolls: {\r
631           through: 'scroll_panels',\r
632           foreign_key: 'panel_id',\r
633           model_name: 'scroll',\r
634         }, \r
635         sheet_panels: {\r
636           foreign_key: 'panel_id',\r
637           model_name: 'sheet_panel',\r
638         }, \r
639         sheets: {\r
640           through: 'sheet_panels',\r
641           foreign_key: 'panel_id',\r
642           model_name: 'sheet',\r
643         }, \r
644         panel_pictures: {\r
645           foreign_key: 'panel_id',\r
646           model_name: 'panel_picture',\r
647         }, \r
648         speech_balloons: {\r
649           foreign_key: 'panel_id',\r
650           model_name: 'speech_balloon',\r
651         }, \r
652         ground_pictures: {\r
653           foreign_key: 'panel_id',\r
654           model_name: 'ground_picture',\r
655         }, \r
656         ground_colors: {\r
657           foreign_key: 'panel_id',\r
658           model_name: 'ground_color',\r
659         }, \r
660       },\r
661     },\r
662     attributes: {\r
663       id: {\r
664         type: 'number',\r
665         primary_key: 1,\r
666         rules : {\r
667           number: true,\r
668         }\r
669       },\r
670       width: {\r
671         type: 'number',\r
672         rules : {\r
673           required: true,\r
674           number: true,\r
675           min: 1,\r
676         }\r
677       },\r
678       height: {\r
679         type: 'number',\r
680         rules : {\r
681           required: true,\r
682           number: true,\r
683           min: 1,\r
684         }\r
685       },\r
686       border: {\r
687         type: 'number',\r
688         rules : {\r
689           required: true,\r
690           number: true,\r
691           min: 0,\r
692         }\r
693       },\r
694       caption: {\r
695         type: 'text',\r
696         rules : {\r
697         }\r
698       },\r
699       publish: {\r
700         type: 'number',\r
701         rules : {\r
702           required: true,\r
703           number: true,\r
704         },\r
705         source: {\r
706           type: 'magic_number',\r
707           args: {\r
708             select_item_name: 'panel_visible_items',\r
709           },\r
710         },\r
711       },\r
712       author_id: {\r
713         type: 'number',\r
714         rules : {\r
715           required: true,\r
716           number: true,\r
717         }\r
718       },\r
719       created_at: {\r
720         type: 'datetime',\r
721       },\r
722       updated_at: {\r
723         type: 'datetime',\r
724       }\r
725     },\r
726     lists: {\r
727       public_list: {\r
728         type: 'public',\r
729       },\r
730       private_list: {\r
731         type: 'private',\r
732       },\r
733       by_scroll: {\r
734         type: 'through_filter',\r
735         args: {\r
736           filter_item_name: 'scroll',\r
737           through: 'scroll_panels',\r
738           filter_key: 'scroll_id',\r
739         },\r
740       },\r
741       by_sheet: {\r
742         type: 'through_filter',\r
743       },\r
744       by_author: {\r
745         type: 'filter',\r
746       },\r
747       by_speech_balloon_template: {\r
748         type: 'through_filter',\r
749       },\r
750     },\r
751   },\r
752   panel_picture: {\r
753     class_name: 'PanelPicture',\r
754     table_name: 'panel_pictures',\r
755     associations: {\r
756       belongs_to: {\r
757         panel: {\r
758           id_column: 'panel_id'\r
759         }, \r
760       },\r
761       has_many: {\r
762       },\r
763     },\r
764     attributes: {\r
765       id: {\r
766         type: 'number',\r
767         primary_key: 1,\r
768         rules : {\r
769           number: true,\r
770         }\r
771       },\r
772       panel_id: {\r
773         type: 'number',\r
774         rules : {\r
775           number: true,\r
776         }\r
777       },\r
778       picture_id: {\r
779         type: 'number',\r
780         rules : {\r
781           required: true,\r
782           number: true,\r
783         }\r
784       },\r
785       caption: {\r
786         type: 'text',\r
787         rules : {\r
788         }\r
789       },\r
790       x: {\r
791         type: 'number',\r
792         rules : {\r
793           required: true,\r
794           number: true,\r
795         }\r
796       },\r
797       y: {\r
798         type: 'number',\r
799         rules : {\r
800           required: true,\r
801           number: true,\r
802         }\r
803       },\r
804       width: {\r
805         type: 'number',\r
806         rules : {\r
807           required: true,\r
808           number: true,\r
809         }\r
810       },\r
811       height: {\r
812         type: 'number',\r
813         rules : {\r
814           required: true,\r
815           number: true,\r
816         }\r
817       },\r
818       link: {\r
819         type: 'text',\r
820         rules : {\r
821           url: true,\r
822         }\r
823       },\r
824       z: {\r
825         type: 'number',\r
826         rules : {\r
827           required: true,\r
828           number: true,\r
829           min: 1,\r
830         }\r
831       },\r
832       t: {\r
833         type: 'number',\r
834         rules : {\r
835           required: true,\r
836           number: true,\r
837           min: 0,\r
838         }\r
839       },\r
840       created_at: {\r
841         type: 'datetime',\r
842       },\r
843       updated_at: {\r
844         type: 'datetime',\r
845       }\r
846     },\r
847     lists: {\r
848       public_list: {\r
849         type: 'public',\r
850       },\r
851       private_list: {\r
852         type: 'private',\r
853       },\r
854       by_panel: {\r
855         type: 'filter',\r
856       },\r
857       by_author: {\r
858         type: 'element_filter',\r
859       },\r
860     },\r
861   },\r
862   speech_balloon: {\r
863     class_name: 'SpeechBalloon',\r
864     table_name: 'speech_balloons',\r
865     extend: 'classname', \r
866     associations: {\r
867       belongs_to: {\r
868         panel: {\r
869           id_column: 'panel_id'\r
870         }, \r
871       },\r
872       has_many: {\r
873       },\r
874       has_one: {\r
875         balloon: {\r
876           foreign_key: 'speech_balloon_id',\r
877           model_name: 'balloon',\r
878         }, \r
879         speech: {\r
880           foreign_key: 'speech_balloon_id',\r
881           model_name: 'speech',\r
882         }, \r
883       },\r
884     },\r
885     attributes: {\r
886       id: {\r
887         type: 'number',\r
888         primary_key: 1,\r
889         rules : {\r
890           number: true,\r
891         }\r
892       },\r
893       panel_id: {\r
894         type: 'number',\r
895         rules : {\r
896           number: true,\r
897         }\r
898       },\r
899       speech_balloon_template_id: {\r
900         type: 'number',\r
901         rules : {\r
902           required: true,\r
903           number: true,\r
904         }\r
905       },\r
906       classname: {\r
907         type: 'text',\r
908         rules : {\r
909           required: true,\r
910         }\r
911       },\r
912       z: {\r
913         type: 'number',\r
914         rules : {\r
915           required: true,\r
916           number: true,\r
917           min: 1,\r
918         }\r
919       },\r
920       t: {\r
921         type: 'number',\r
922         rules : {\r
923           required: true,\r
924           number: true,\r
925           min: 0,\r
926         }\r
927       },\r
928       settings: {\r
929         type: 'text',\r
930         rules : {\r
931         }\r
932       },\r
933       caption: {\r
934         type: 'text',\r
935         rules : {\r
936         }\r
937       },\r
938       created_at: {\r
939         type: 'datetime',\r
940       },\r
941       updated_at: {\r
942         type: 'datetime',\r
943       }\r
944     },\r
945     lists: {\r
946       public_list: {\r
947         type: 'public',\r
948       },\r
949       private_list: {\r
950         type: 'private',\r
951       },\r
952       by_panel: {\r
953         type: 'filter',\r
954       },\r
955       by_speech_balloon_template: {\r
956         type: 'filter',\r
957       },\r
958       by_author: {\r
959         type: 'element_filter',\r
960       },\r
961     },\r
962   }, \r
963   balloon: {\r
964     class_name: 'Balloon',\r
965     table_name: 'balloons',\r
966     associations: {\r
967       belongs_to: {\r
968         speech_balloon: {\r
969           id_column: 'speech_balloon_id'\r
970         }, \r
971         system_picture: {\r
972           id_column: 'system_picture_id'\r
973         }, \r
974       },\r
975       has_many: {\r
976       },\r
977     },\r
978     attributes: {\r
979       id: {\r
980         type: 'number',\r
981         primary_key: 1,\r
982         rules : {\r
983           number: true,\r
984         }\r
985       },\r
986       speech_balloon_id: {\r
987         type: 'number',\r
988         rules : {\r
989           number: true,\r
990         }\r
991       },\r
992       system_picture_id: {\r
993         type: 'number',\r
994         rules : {\r
995           required: true,\r
996           number: true,\r
997         }\r
998       },\r
999       x: {\r
1000         type: 'number',\r
1001         rules : {\r
1002           required: true,\r
1003           number: true,\r
1004         }\r
1005       },\r
1006       y: {\r
1007         type: 'number',\r
1008         rules : {\r
1009           required: true,\r
1010           number: true,\r
1011         }\r
1012       },\r
1013       width: {\r
1014         type: 'number',\r
1015         rules : {\r
1016           required: true,\r
1017           number: true,\r
1018           min: 1,\r
1019         }\r
1020       },\r
1021       height: {\r
1022         type: 'number',\r
1023         rules : {\r
1024           required: true,\r
1025           number: true,\r
1026           min: 1,\r
1027         }\r
1028       },\r
1029       r: {\r
1030         type: 'number',\r
1031         rules : {\r
1032           required: true,\r
1033           number: true,\r
1034         }\r
1035       },\r
1036       settings: {\r
1037         type: 'text',\r
1038         rules : {\r
1039         }\r
1040       },\r
1041       created_at: {\r
1042         type: 'datetime',\r
1043       },\r
1044       updated_at: {\r
1045         type: 'datetime',\r
1046       }\r
1047     },\r
1048     lists: {\r
1049       public_list: {\r
1050         type: 'public',\r
1051       },\r
1052       private_list: {\r
1053         type: 'private',\r
1054       },\r
1055       by_panel: {\r
1056         type: 'filter',\r
1057       },\r
1058       by_speech_balloon: {\r
1059         type: 'filter',\r
1060       },\r
1061       by_author: {\r
1062         type: 'element_filter',\r
1063       },\r
1064     },\r
1065   },\r
1066   speech: {\r
1067     class_name: 'Speech',\r
1068     table_name: 'speeches',\r
1069     associations: {\r
1070       belongs_to: {\r
1071         speech_balloon: {\r
1072           id_column: 'speech_balloon_id'\r
1073         }, \r
1074         writing_format: {\r
1075           id_column: 'writing_format_id'\r
1076         }, \r
1077       },\r
1078       has_many: {\r
1079       },\r
1080     },\r
1081     attributes: {\r
1082       id: {\r
1083         type: 'number',\r
1084         primary_key: 1,\r
1085         rules : {\r
1086           number: true,\r
1087         }\r
1088       },\r
1089       speech_balloon_id: {\r
1090         type: 'number',\r
1091         rules : {\r
1092           number: true,\r
1093         }\r
1094       },\r
1095       writing_format_id: {\r
1096         type: 'number',\r
1097         source: {\r
1098           type: 'model',\r
1099         },\r
1100         rules : {\r
1101           required: true,\r
1102           number: true,\r
1103         }\r
1104       },\r
1105       content: {\r
1106         type: 'text',\r
1107         rules : {\r
1108         }\r
1109       },\r
1110       font_size: {\r
1111         type: 'float',\r
1112         rules : {\r
1113           required: true,\r
1114           number: true,\r
1115           min: 0,\r
1116         },\r
1117         source: {\r
1118           type: 'magic_number',\r
1119           args: {\r
1120             select_item_name: 'speech_font_size_items',\r
1121           },\r
1122         },\r
1123       },\r
1124       text_align: {\r
1125         type: 'number',\r
1126         rules : {\r
1127           required: true,\r
1128           number: true,\r
1129           range: [0, 3],\r
1130         },\r
1131         source: {\r
1132           type: 'magic_number',\r
1133           args: {\r
1134             select_item_name: 'speech_text_align_items',\r
1135           },\r
1136         },\r
1137       },\r
1138       fore_color: {\r
1139         type: 'number',\r
1140         rules : {\r
1141           required: true,\r
1142           number: true,\r
1143           range: [0, 0xffffff],\r
1144         }\r
1145       },\r
1146       x: {\r
1147         type: 'number',\r
1148         rules : {\r
1149           required: true,\r
1150           number: true,\r
1151         }\r
1152       },\r
1153       y: {\r
1154         type: 'number',\r
1155         rules : {\r
1156           required: true,\r
1157           number: true,\r
1158         }\r
1159       },\r
1160       width: {\r
1161         type: 'number',\r
1162         rules : {\r
1163           required: true,\r
1164           number: true,\r
1165           min: 1,\r
1166         }\r
1167       },\r
1168       height: {\r
1169         type: 'number',\r
1170         rules : {\r
1171           required: true,\r
1172           number: true,\r
1173           min: 1,\r
1174         }\r
1175       },\r
1176       quotes: {\r
1177         type: 'text',\r
1178         rules : {\r
1179         }\r
1180       },\r
1181       settings: {\r
1182         type: 'text',\r
1183         rules : {\r
1184         }\r
1185       },\r
1186       created_at: {\r
1187         type: 'datetime',\r
1188       },\r
1189       updated_at: {\r
1190         type: 'datetime',\r
1191       }\r
1192     },\r
1193     lists: {\r
1194       public_list: {\r
1195         type: 'public',\r
1196       },\r
1197       by_speech_balloon: {\r
1198         type: 'filter',\r
1199       },\r
1200       by_writing_format: {\r
1201         type: 'filter',\r
1202       },\r
1203     },\r
1204   },\r
1205   ground_picture: {\r
1206     class_name: 'GroundPicture',\r
1207     table_name: 'ground_pictures',\r
1208     associations: {\r
1209       belongs_to: {\r
1210         panel: {\r
1211           id_column: 'panel_id'\r
1212         }, \r
1213       },\r
1214       has_many: {\r
1215       },\r
1216     },\r
1217     attributes: {\r
1218       id: {\r
1219         type: 'number',\r
1220         primary_key: 1,\r
1221         rules : {\r
1222           number: true,\r
1223         }\r
1224       },\r
1225       panel_id: {\r
1226         type: 'number',\r
1227         rules : {\r
1228           number: true,\r
1229         }\r
1230       },\r
1231       picture_id: {\r
1232         type: 'number',\r
1233         rules : {\r
1234           required: true,\r
1235           number: true,\r
1236         }\r
1237       },\r
1238       caption: {\r
1239         type: 'text',\r
1240         rules : {\r
1241         }\r
1242       },\r
1243       repeat: {\r
1244         type: 'number',\r
1245         rules : {\r
1246           required: true,\r
1247           number: true,\r
1248           range: [0, 3],\r
1249         },\r
1250         source: {\r
1251           type: 'magic_number',\r
1252           args: {\r
1253             select_item_name: 'ground_picture_repeat_items',\r
1254           },\r
1255         },\r
1256       },\r
1257       x: {\r
1258         type: 'number',\r
1259         rules : {\r
1260           required: true,\r
1261           number: true,\r
1262         }\r
1263       },\r
1264       y: {\r
1265         type: 'number',\r
1266         rules : {\r
1267           required: true,\r
1268           number: true,\r
1269         }\r
1270       },\r
1271       z: {\r
1272         type: 'number',\r
1273         rules : {\r
1274           required: true,\r
1275           number: true,\r
1276           min: 1,\r
1277         }\r
1278       },\r
1279       t: {\r
1280         type: 'number',\r
1281         rules : {\r
1282           required: true,\r
1283           number: true,\r
1284           min: 0,\r
1285         }\r
1286       },\r
1287       created_at: {\r
1288         type: 'datetime',\r
1289       },\r
1290       updated_at: {\r
1291         type: 'datetime',\r
1292       }\r
1293     },\r
1294     lists: {\r
1295       public_list: {\r
1296         type: 'public',\r
1297       },\r
1298       private_list: {\r
1299         type: 'private',\r
1300       },\r
1301       by_panel: {\r
1302         type: 'filter',\r
1303       },\r
1304       by_author: {\r
1305         type: 'element_filter',\r
1306       },\r
1307     },\r
1308   },\r
1309   ground_color: {\r
1310     class_name: 'GroundColor',\r
1311     table_name: 'ground_colors',\r
1312     associations: {\r
1313       belongs_to: {\r
1314         panel: {\r
1315           id_column: 'panel_id'\r
1316         }, \r
1317       },\r
1318       has_many: {\r
1319       },\r
1320     },\r
1321     attributes: {\r
1322       id: {\r
1323         type: 'number',\r
1324         primary_key: 1,\r
1325         rules : {\r
1326           number: true,\r
1327         }\r
1328       },\r
1329       panel_id: {\r
1330         type: 'number',\r
1331         rules : {\r
1332           number: true,\r
1333         }\r
1334       },\r
1335       caption: {\r
1336         type: 'text',\r
1337         rules : {\r
1338         }\r
1339       },\r
1340       code: {\r
1341         type: 'number',\r
1342         rules : {\r
1343           required: true,\r
1344           number: true,\r
1345           range: [0, 0xffffff],\r
1346         }\r
1347       },\r
1348       orientation: {\r
1349         type: 'number',\r
1350         rules : {\r
1351           required: true,\r
1352           number: true,\r
1353           range: [0, 1],\r
1354         },\r
1355         source: {\r
1356           type: 'magic_number',\r
1357           args: {\r
1358             select_item_name: 'ground_color_orientation_items',\r
1359           },\r
1360         },\r
1361       },\r
1362       xy: {\r
1363         type: 'number',\r
1364         rules : {\r
1365           number: true,\r
1366         }\r
1367       },\r
1368       wh: {\r
1369         type: 'number',\r
1370         rules : {\r
1371           number: true,\r
1372         }\r
1373       },\r
1374       z: {\r
1375         type: 'number',\r
1376         rules : {\r
1377           required: true,\r
1378           number: true,\r
1379           min: 1,\r
1380         }\r
1381       },\r
1382       t: {\r
1383         type: 'number',\r
1384         rules : {\r
1385           required: true,\r
1386           number: true,\r
1387           min: 0,\r
1388         }\r
1389       },\r
1390       created_at: {\r
1391         type: 'datetime',\r
1392       },\r
1393       updated_at: {\r
1394         type: 'datetime',\r
1395       }\r
1396     },\r
1397     lists: {\r
1398       public_list: {\r
1399         type: 'public',\r
1400       },\r
1401       private_list: {\r
1402         type: 'private',\r
1403       },\r
1404       by_panel: {\r
1405         type: 'filter',\r
1406       },\r
1407       by_author: {\r
1408         type: 'element_filter',\r
1409       },\r
1410     },\r
1411   },\r
1412   original_picture: {\r
1413     class_name: 'OriginalPicture',\r
1414     table_name: 'original_pictures',\r
1415     associations: {\r
1416       belongs_to: {\r
1417         artist: {\r
1418           id_column: 'artist_id'\r
1419         }, \r
1420       },\r
1421       has_many: {\r
1422         pictures: {\r
1423           foreign_key: 'original_picture_id',\r
1424           model_name: 'picture',\r
1425         }, \r
1426       },\r
1427       has_one: {\r
1428         resource_picture: {\r
1429           foreign_key: 'original_picture_id',\r
1430           model_name: 'resource_picture',\r
1431         }, \r
1432       },\r
1433     },\r
1434     attributes: {\r
1435       id: {\r
1436         type: 'number',\r
1437         primary_key: 1,\r
1438         rules : {\r
1439           number: true,\r
1440         }\r
1441       },\r
1442       ext: {\r
1443         type: 'text',\r
1444         rules : {\r
1445           required: true,\r
1446         }\r
1447       },\r
1448       width: {\r
1449         type: 'number',\r
1450         rules : {\r
1451           required: true,\r
1452           number: true,\r
1453         }\r
1454       },\r
1455       height: {\r
1456         type: 'number',\r
1457         rules : {\r
1458           required: true,\r
1459           number: true,\r
1460         }\r
1461       },\r
1462       filesize: {\r
1463         type: 'number',\r
1464         rules : {\r
1465           required: true,\r
1466           number: true,\r
1467         }\r
1468       },\r
1469       artist_id: {\r
1470         type: 'number',\r
1471         rules : {\r
1472           required: true,\r
1473           number: true,\r
1474         }\r
1475       },\r
1476       md5: {\r
1477         type: 'text',\r
1478         rules : {\r
1479           required: true,\r
1480           required: true,\r
1481         }\r
1482       },\r
1483       uploaded_at: {\r
1484         type: 'datetime',\r
1485       },\r
1486       published_at: {\r
1487         type: 'datetime',\r
1488       },\r
1489       stopped_at: {\r
1490         type: 'datetime',\r
1491       },\r
1492       created_at: {\r
1493         type: 'datetime',\r
1494       },\r
1495       updated_at: {\r
1496         type: 'datetime',\r
1497       }\r
1498     },\r
1499     lists: {\r
1500       private_list: {\r
1501         type: 'private',\r
1502       },\r
1503     },\r
1504   },\r
1505   picture: {\r
1506     class_name: 'Picture',\r
1507     table_name: 'pictures',\r
1508     associations: {\r
1509       belongs_to: {\r
1510         license: {\r
1511           id_column: 'license_id'\r
1512         }, \r
1513         artist: {\r
1514           id_column: 'artist_id'\r
1515         }, \r
1516       },\r
1517       has_many: {\r
1518       },\r
1519       has_one: {\r
1520       },\r
1521     },\r
1522     attributes: {\r
1523       id: {\r
1524         type: 'number',\r
1525         primary_key: 1,\r
1526         rules : {\r
1527           number: true,\r
1528         }\r
1529       },\r
1530       original_picture_id: {\r
1531         type: 'number',\r
1532         rules : {\r
1533           required: true,\r
1534           number: true,\r
1535         }\r
1536       },\r
1537       revision: {\r
1538         type: 'number',\r
1539         rules : {\r
1540           required: true,\r
1541           number: true,\r
1542         }\r
1543       },\r
1544       ext: {\r
1545         type: 'text',\r
1546         rules : {\r
1547           required: true,\r
1548         }\r
1549       },\r
1550       width: {\r
1551         type: 'number',\r
1552         rules : {\r
1553           required: true,\r
1554           number: true,\r
1555         }\r
1556       },\r
1557       height: {\r
1558         type: 'number',\r
1559         rules : {\r
1560           required: true,\r
1561           number: true,\r
1562         }\r
1563       },\r
1564       filesize: {\r
1565         type: 'number',\r
1566         rules : {\r
1567           required: true,\r
1568           number: true,\r
1569         }\r
1570       },\r
1571       artist_id: {\r
1572         type: 'number',\r
1573         rules : {\r
1574           required: true,\r
1575           number: true,\r
1576         }\r
1577       },\r
1578       license_id: {\r
1579         type: 'number',\r
1580         rules : {\r
1581           required: true,\r
1582           number: true,\r
1583         }\r
1584       },\r
1585       md5: {\r
1586         type: 'text',\r
1587         rules : {\r
1588           required: true,\r
1589         }\r
1590       },\r
1591       artist_name: {\r
1592         type: 'text',\r
1593         rules : {\r
1594           required: true,\r
1595         }\r
1596       },\r
1597       credit: {\r
1598         type: 'text',\r
1599         rules : {\r
1600         }\r
1601       },\r
1602       settings: {\r
1603         type: 'text',\r
1604         rules : {\r
1605         }\r
1606       },\r
1607       classname: {\r
1608         type: 'text',\r
1609         rules : {\r
1610           required: true,\r
1611         }\r
1612       },\r
1613       created_at: {\r
1614         type: 'datetime',\r
1615       },\r
1616       updated_at: {\r
1617         type: 'datetime',\r
1618       }\r
1619     }\r
1620   },\r
1621   resource_picture: {\r
1622     class_name: 'ResourcePicture',\r
1623     table_name: 'resource_pictures',\r
1624     associations: {\r
1625       belongs_to: {\r
1626         original_picture: {\r
1627           id_column: 'original_picture_id'\r
1628         }, \r
1629         license: {\r
1630           id_column: 'license_id'\r
1631         }, \r
1632         artist: {\r
1633           id_column: 'artist_id'\r
1634         }, \r
1635       },\r
1636       has_many: {\r
1637       },\r
1638       has_one: {\r
1639       },\r
1640     },\r
1641     attributes: {\r
1642       id: {\r
1643         type: 'number',\r
1644         primary_key: 1,\r
1645         rules : {\r
1646           number: true,\r
1647         }\r
1648       },\r
1649       original_picture_id: {\r
1650         type: 'number',\r
1651         rules : {\r
1652           required: true,\r
1653           number: true,\r
1654         }\r
1655       },\r
1656       revision: {\r
1657         type: 'number',\r
1658         rules : {\r
1659           required: true,\r
1660           number: true,\r
1661         }\r
1662       },\r
1663       ext: {\r
1664         type: 'text',\r
1665         rules : {\r
1666           required: true,\r
1667         }\r
1668       },\r
1669       width: {\r
1670         type: 'number',\r
1671         rules : {\r
1672           required: true,\r
1673           number: true,\r
1674         }\r
1675       },\r
1676       height: {\r
1677         type: 'number',\r
1678         rules : {\r
1679           required: true,\r
1680           number: true,\r
1681         }\r
1682       },\r
1683       filesize: {\r
1684         type: 'number',\r
1685         rules : {\r
1686           required: true,\r
1687           number: true,\r
1688         }\r
1689       },\r
1690       artist_id: {\r
1691         type: 'number',\r
1692         rules : {\r
1693           required: true,\r
1694           number: true,\r
1695         }\r
1696       },\r
1697       license_id: {\r
1698         type: 'number',\r
1699         rules : {\r
1700           required: true,\r
1701           number: true,\r
1702         }\r
1703       },\r
1704       md5: {\r
1705         type: 'text',\r
1706         rules : {\r
1707           required: true,\r
1708         }\r
1709       },\r
1710       artist_name: {\r
1711         type: 'text',\r
1712         rules : {\r
1713           required: true,\r
1714         }\r
1715       },\r
1716       credit: {\r
1717         type: 'text',\r
1718         rules : {\r
1719         }\r
1720       },\r
1721       settings: {\r
1722         type: 'text',\r
1723         rules : {\r
1724         }\r
1725       },\r
1726       picture_id: {\r
1727         type: 'number',\r
1728         rules : {\r
1729           required: true,\r
1730           number: true,\r
1731         }\r
1732       },\r
1733       classname: {\r
1734         type: 'text',\r
1735         rules : {\r
1736           required: true,\r
1737         }\r
1738       },\r
1739       created_at: {\r
1740         type: 'datetime',\r
1741       },\r
1742       updated_at: {\r
1743         type: 'datetime',\r
1744       }\r
1745     },\r
1746     lists: {\r
1747       public_list: {\r
1748         type: 'public',\r
1749       },\r
1750       private_list: {\r
1751         type: 'private',\r
1752       },\r
1753       by_license: {\r
1754         type: 'filter',\r
1755       },\r
1756       by_artist: {\r
1757         type: 'filter',\r
1758       },\r
1759     },\r
1760   },\r
1761   speech_balloon_template: {\r
1762     class_name: 'SpeechBalloonTemplate',\r
1763     table_name: 'speech_balloon_templates',\r
1764     associations: {\r
1765       belongs_to: {\r
1766         system_picture: {\r
1767           id_column: 'system_picture_id'\r
1768         }, \r
1769       },\r
1770       has_many: {\r
1771         speech_balloons: {\r
1772           foreign_key: 'speech_balloon_template_id',\r
1773           model_name: 'speech_balloon',\r
1774         }, \r
1775         panels: {\r
1776           through: 'speech_balloons',\r
1777           foreign_key: 'speech_balloon_template_id',\r
1778           model_name: 'panel',\r
1779         }, \r
1780       },\r
1781       has_one: {\r
1782       },\r
1783     },\r
1784     attributes: {\r
1785       id: {\r
1786         type: 'number',\r
1787         primary_key: 1,\r
1788         rules : {\r
1789           number: true,\r
1790         }\r
1791       },\r
1792       name: {\r
1793         type: 'text',\r
1794         rules : {\r
1795           required: true,\r
1796         }\r
1797       },\r
1798       classname: {\r
1799         type: 'text',\r
1800         rules : {\r
1801           required: true,\r
1802         }\r
1803       },\r
1804       caption: {\r
1805         type: 'text',\r
1806         rules : {\r
1807           required: true,\r
1808         }\r
1809       },\r
1810       t: {\r
1811         type: 'number',\r
1812         rules : {\r
1813           required: true,\r
1814           number: true,\r
1815           min: 0,\r
1816         }\r
1817       },\r
1818       system_picture_id: {\r
1819         type: 'number',\r
1820         rules : {\r
1821           required: true,\r
1822           number: true,\r
1823         }\r
1824       },\r
1825       settings: {\r
1826         type: 'text',\r
1827         rules : {\r
1828           required: true,\r
1829         }\r
1830       },\r
1831       created_at: {\r
1832         type: 'datetime',\r
1833       },\r
1834       updated_at: {\r
1835         type: 'datetime',\r
1836       }\r
1837     },\r
1838     lists: {\r
1839       public_list: {\r
1840         type: 'public',\r
1841       },\r
1842       select_items: {\r
1843         type: 'system_resource',\r
1844         args: {\r
1845           select_item_name: 'panel_visible_items',\r
1846         },\r
1847       },\r
1848     },\r
1849   },\r
1850   writing_format: {\r
1851     class_name: 'WritingFormat',\r
1852     table_name: 'writing_formats',\r
1853     associations: {\r
1854       belongs_to: {\r
1855         system_picture: {\r
1856           id_column: 'system_picture_id'\r
1857         }, \r
1858       },\r
1859       has_many: {\r
1860         speeches: {\r
1861           foreign_key: 'writing_format_id',\r
1862           model_name: 'speech',\r
1863         }, \r
1864       },\r
1865       has_one: {\r
1866       },\r
1867     },\r
1868     attributes: {\r
1869       id: {\r
1870         type: 'number',\r
1871         primary_key: 1,\r
1872         rules : {\r
1873           number: true,\r
1874         }\r
1875       },\r
1876       name: {\r
1877         type: 'text',\r
1878         rules : {\r
1879           required: true,\r
1880         }\r
1881       },\r
1882       classname: {\r
1883         type: 'text',\r
1884         rules : {\r
1885           required: true,\r
1886         }\r
1887       },\r
1888       caption: {\r
1889         type: 'text',\r
1890         rules : {\r
1891           required: true,\r
1892         }\r
1893       },\r
1894       system_picture_id: {\r
1895         type: 'number',\r
1896         rules : {\r
1897           required: true,\r
1898           number: true,\r
1899         }\r
1900       },\r
1901       settings: {\r
1902         type: 'text',\r
1903         rules : {\r
1904           required: true,\r
1905         }\r
1906       },\r
1907       created_at: {\r
1908         type: 'datetime',\r
1909       },\r
1910       updated_at: {\r
1911         type: 'datetime',\r
1912       }\r
1913     },\r
1914     lists: {\r
1915       public_list: {\r
1916         type: 'public',\r
1917       },\r
1918       select_items: {\r
1919         type: 'system_resource',\r
1920       },\r
1921       by_system_picture: {\r
1922         type: 'filter',\r
1923       },\r
1924     },\r
1925   },\r
1926   license_group: {\r
1927     class_name: 'LicenseGroup',\r
1928     table_name: 'license_groups',\r
1929     associations: {\r
1930       belongs_to: {\r
1931       },\r
1932       has_many: {\r
1933         licenses: {\r
1934           foreign_key: 'license_group_id',\r
1935           model_name: 'license',\r
1936         }, \r
1937       },\r
1938       has_one: {\r
1939       },\r
1940     },\r
1941     attributes: {\r
1942       id: {\r
1943         type: 'number',\r
1944         primary_key: 1,\r
1945         rules : {\r
1946           number: true,\r
1947         }\r
1948       },\r
1949       name: {\r
1950         type: 'text',\r
1951         rules : {\r
1952           required: true,\r
1953         }\r
1954       },\r
1955       classname: {\r
1956         type: 'text',\r
1957         rules : {\r
1958           required: true,\r
1959         }\r
1960       },\r
1961       caption: {\r
1962         type: 'text',\r
1963         rules : {\r
1964           required: true,\r
1965         }\r
1966       },\r
1967       url: {\r
1968         type: 'text',\r
1969         rules : {\r
1970           required: true,\r
1971         }\r
1972       },\r
1973       created_at: {\r
1974         type: 'datetime',\r
1975       },\r
1976       updated_at: {\r
1977         type: 'datetime',\r
1978       }\r
1979     },\r
1980     lists: {\r
1981       public_list: {\r
1982         type: 'public',\r
1983       },\r
1984       select_items: {\r
1985         type: 'system_resource',\r
1986       },\r
1987     },\r
1988   },\r
1989   license: {\r
1990     class_name: 'License',\r
1991     table_name: 'licenses',\r
1992     associations: {\r
1993       belongs_to: {\r
1994         license_group: {\r
1995           id_column: 'license_group_id'\r
1996         }, \r
1997         system_picture: {\r
1998           id_column: 'system_picture_id'\r
1999         }, \r
2000       },\r
2001       has_many: {\r
2002         resource_pictures: {\r
2003           foreign_key: 'license_id',\r
2004           model_name: 'resource_picture',\r
2005         }, \r
2006       },\r
2007       has_one: {\r
2008       },\r
2009     },\r
2010     attributes: {\r
2011       id: {\r
2012         type: 'number',\r
2013         primary_key: 1,\r
2014         rules : {\r
2015           number: true,\r
2016         }\r
2017       },\r
2018       license_group_id: {\r
2019         type: 'number',\r
2020         rules : {\r
2021           number: true,\r
2022         }\r
2023       },\r
2024       name: {\r
2025         type: 'text',\r
2026         rules : {\r
2027           required: true,\r
2028         }\r
2029       },\r
2030       caption: {\r
2031         type: 'text',\r
2032         rules : {\r
2033           required: true,\r
2034         }\r
2035       },\r
2036       system_picture_id: {\r
2037         type: 'number',\r
2038         rules : {\r
2039           required: true,\r
2040           number: true,\r
2041         }\r
2042       },\r
2043       url: {\r
2044         type: 'text',\r
2045         rules : {\r
2046           required: true,\r
2047         }\r
2048       },\r
2049       settings: {\r
2050         type: 'text',\r
2051         rules : {\r
2052         }\r
2053       },\r
2054       credit_pictures: {\r
2055         type: 'text',\r
2056         rules : {\r
2057         }\r
2058       },\r
2059       created_at: {\r
2060         type: 'datetime',\r
2061       },\r
2062       updated_at: {\r
2063         type: 'datetime',\r
2064       }\r
2065     },\r
2066     lists: {\r
2067       public_list: {\r
2068         type: 'public',\r
2069       },\r
2070       by_license_group: {\r
2071         type: 'filter',\r
2072       },\r
2073       by_system_picture: {\r
2074         type: 'filter',\r
2075       },\r
2076     },\r
2077   },\r
2078   author: {\r
2079     class_name: 'Author',\r
2080     table_name: 'authors',\r
2081     associations: {\r
2082       belongs_to: {\r
2083       },\r
2084       has_many: {\r
2085         scrolls: {\r
2086           foreign_key: 'author_id',\r
2087           model_name: 'scroll',\r
2088         }, \r
2089         comics: {\r
2090           foreign_key: 'author_id',\r
2091           model_name: 'comic',\r
2092         }, \r
2093         stories: {\r
2094           foreign_key: 'author_id',\r
2095           model_name: 'story',\r
2096         }, \r
2097         sheets: {\r
2098           foreign_key: 'author_id',\r
2099           model_name: 'sheet',\r
2100         }, \r
2101         panels: {\r
2102           foreign_key: 'author_id',\r
2103           model_name: 'panel',\r
2104         }, \r
2105       },\r
2106       has_one: {\r
2107       },\r
2108     },\r
2109     attributes: {\r
2110       id: {\r
2111         type: 'number',\r
2112         primary_key: 1,\r
2113         rules : {\r
2114           number: true,\r
2115         }\r
2116       },\r
2117       name: {\r
2118         type: 'text',\r
2119         rules : {\r
2120           required: true,\r
2121         }\r
2122       },\r
2123       user_id: {\r
2124         type: 'number',\r
2125         rules : {\r
2126           required: true,\r
2127           number: true,\r
2128         }\r
2129       },\r
2130       created_at: {\r
2131         type: 'datetime',\r
2132       },\r
2133       updated_at: {\r
2134         type: 'datetime',\r
2135       }\r
2136     },\r
2137     lists: {\r
2138       public_list: {\r
2139         type: 'public',\r
2140       },\r
2141     },\r
2142   },\r
2143   artist: {\r
2144     class_name: 'Artist',\r
2145     table_name: 'artists',\r
2146     associations: {\r
2147       belongs_to: {\r
2148       },\r
2149       has_many: {\r
2150         resource_pictures: {\r
2151           foreign_key: 'artist_id',\r
2152           model_name: 'resource_picture',\r
2153         }, \r
2154       },\r
2155       has_one: {\r
2156       },\r
2157     },\r
2158     attributes: {\r
2159       id: {\r
2160         type: 'number',\r
2161         primary_key: 1,\r
2162         rules : {\r
2163           number: true,\r
2164         }\r
2165       },\r
2166       name: {\r
2167         type: 'text',\r
2168         rules : {\r
2169           required: true,\r
2170         }\r
2171       },\r
2172       author_id: {\r
2173         type: 'number',\r
2174         rules : {\r
2175           required: true,\r
2176           number: true,\r
2177         }\r
2178       },\r
2179       created_at: {\r
2180         type: 'datetime',\r
2181       },\r
2182       updated_at: {\r
2183         type: 'datetime',\r
2184       }\r
2185     },\r
2186     lists: {\r
2187       public_list: {\r
2188         type: 'public',\r
2189       },\r
2190     },\r
2191   },\r
2192   system_picture: {\r
2193     class_name: 'SystemPicture',\r
2194     table_name: 'system_pictures',\r
2195     associations: {\r
2196       belongs_to: {\r
2197       },\r
2198       has_many: {\r
2199         balloons: {\r
2200           foreign_key: 'system_picture_id',\r
2201           model_name: 'balloon',\r
2202         }, \r
2203         balloon_templates: {\r
2204           foreign_key: 'system_picture_id',\r
2205           model_name: 'balloon_template',\r
2206         }, \r
2207         licenses: {\r
2208           foreign_key: 'system_picture_id',\r
2209           model_name: 'license',\r
2210         }, \r
2211       },\r
2212       has_one: {\r
2213       },\r
2214     },\r
2215     attributes: {\r
2216       id: {\r
2217         type: 'number',\r
2218         primary_key: 1,\r
2219         rules : {\r
2220           number: true,\r
2221         }\r
2222       },\r
2223       ext: {\r
2224         type: 'text',\r
2225         rules : {\r
2226           required: true,\r
2227         }\r
2228       },\r
2229       width: {\r
2230         type: 'number',\r
2231         rules : {\r
2232           required: true,\r
2233           number: true,\r
2234         }\r
2235       },\r
2236       height: {\r
2237         type: 'number',\r
2238         rules : {\r
2239           required: true,\r
2240           number: true,\r
2241         }\r
2242       },\r
2243       filesize: {\r
2244         type: 'number',\r
2245         rules : {\r
2246           required: true,\r
2247           number: true,\r
2248         }\r
2249       },\r
2250       md5: {\r
2251         type: 'text',\r
2252         rules : {\r
2253           required: true,\r
2254           required: true,\r
2255         }\r
2256       },\r
2257       created_at: {\r
2258         type: 'datetime',\r
2259       },\r
2260       updated_at: {\r
2261         type: 'datetime',\r
2262       }\r
2263     },\r
2264     lists: {\r
2265       public_list: {\r
2266         type: 'public',\r
2267       },\r
2268     },\r
2269   },\r
2270 }\r
2271 \r