OSDN Git Service

diet manifest
[pettanr/pettanr.git] / app / assets / javascripts / manifest / work / models.js.coffee.erb
1 #マニフェスト\r
2 @models = {\r
3   scroll: {\r
4     associations: {\r
5       belongs_to: {\r
6         author: {\r
7         }, \r
8       },\r
9       has_many: {\r
10         scroll_panels: {\r
11         }, \r
12         panels: {\r
13           through: 'scroll_panel',\r
14         }, \r
15       },\r
16     },\r
17     attributes: {\r
18       title: {\r
19         type: 'text',\r
20         rules : {\r
21           required: true,\r
22         }\r
23       },\r
24       description: {\r
25         type: 'text',\r
26         rules : {\r
27         }\r
28       },\r
29       visible: {\r
30         type: 'number',\r
31         rules : {\r
32           required: true,\r
33           number: true,\r
34         },\r
35         source: {\r
36           type: 'magic_number',\r
37           args: {\r
38             select_item_name: 'scroll_visible_items',\r
39           },\r
40         },\r
41       },\r
42       author_id: {\r
43         type: 'number',\r
44         rules : {\r
45           required: true,\r
46           number: true,\r
47         },\r
48       },\r
49     },\r
50     lists: {\r
51       public: {\r
52         type: 'public',\r
53       },\r
54       private: {\r
55         type: 'private',\r
56       },\r
57       by_author: {\r
58         type: 'filter',\r
59         args: {\r
60         },\r
61       },\r
62       by_panel: {\r
63         type: 'through_filter',\r
64         args: {\r
65           through: 'scroll_panels',\r
66         },\r
67       },\r
68       play: {\r
69         type: 'play',\r
70         args: {\r
71           filter_item_name: 'scroll',\r
72           filter_model_name: 'scroll_panel',\r
73           filter_key: 'scroll_id',\r
74         },\r
75       },\r
76     },\r
77   },\r
78   scroll_panel: {\r
79     associations: {\r
80       belongs_to: {\r
81         panel: {\r
82         }, \r
83         scroll: {\r
84         }, \r
85       },\r
86       has_many: {\r
87       },\r
88     },\r
89     attributes: {\r
90       scroll_id: {\r
91         type: 'number',\r
92         rules : {\r
93           required: true,\r
94           number: true,\r
95         }\r
96       },\r
97       panel_id: {\r
98         type: 'number',\r
99         rules : {\r
100           required: true,\r
101           number: true,\r
102         }\r
103       },\r
104       t: {\r
105         type: 'number',\r
106         rules : {\r
107           required: true,\r
108           number: true,\r
109           min: 0,\r
110         }\r
111       },\r
112       author_id: {\r
113         type: 'number',\r
114         rules : {\r
115           required: true,\r
116           number: true,\r
117         }\r
118       },\r
119     },\r
120     tree: {\r
121       owner: 'scroll',\r
122     },\r
123     lists: {\r
124       public: {\r
125         type: 'public',\r
126       },\r
127       private: {\r
128         type: 'private',\r
129       },\r
130       by_scroll: {\r
131         type: 'filter',\r
132       },\r
133       by_panel: {\r
134         type: 'filter',\r
135       },\r
136     },\r
137   },\r
138   comic: {\r
139     associations: {\r
140       belongs_to: {\r
141         author: {\r
142         }, \r
143       },\r
144       has_many: {\r
145         stories: {\r
146         }, \r
147       },\r
148     },\r
149     attributes: {\r
150       title: {\r
151         type: 'text',\r
152         rules : {\r
153           required: true,\r
154         }\r
155       },\r
156       description: {\r
157         type: 'text',\r
158         rules : {\r
159         }\r
160       },\r
161       visible: {\r
162         type: 'number',\r
163         rules : {\r
164           required: true,\r
165           number: true,\r
166         },\r
167         source: {\r
168           type: 'magic_number',\r
169           args: {\r
170             select_item_name: 'comic_visible_items',\r
171           },\r
172         },\r
173       },\r
174       author_id: {\r
175         type: 'number',\r
176         rules : {\r
177           required: true,\r
178           number: true,\r
179         }\r
180       },\r
181     },\r
182     lists: {\r
183       public: {\r
184         type: 'public',\r
185       },\r
186       private: {\r
187         type: 'private',\r
188       },\r
189       by_author: {\r
190         type: 'filter',\r
191       },\r
192     },\r
193   },\r
194   story: {\r
195     associations: {\r
196       belongs_to: {\r
197         comic: {\r
198         }, \r
199       },\r
200       has_many: {\r
201         story_sheets: {\r
202         }, \r
203         sheets: {\r
204           through: 'story_sheets',\r
205         }, \r
206       },\r
207     },\r
208     attributes: {\r
209       comic_id: {\r
210         type: 'number',\r
211         rules : {\r
212           number: true,\r
213         }\r
214       },\r
215       title: {\r
216         type: 'text',\r
217         rules : {\r
218         }\r
219       },\r
220       description: {\r
221         type: 'text',\r
222         rules : {\r
223         }\r
224       },\r
225       t: {\r
226         type: 'number',\r
227         rules : {\r
228           required: true,\r
229           number: true,\r
230           min: 0,\r
231         }\r
232       },\r
233       visible: {\r
234         type: 'number',\r
235         rules : {\r
236           required: true,\r
237           number: true,\r
238         },\r
239         source: {\r
240           type: 'magic_number',\r
241           args: {\r
242             select_item_name: 'story_visible_items',\r
243           },\r
244         },\r
245       },\r
246     },\r
247     tree: {\r
248       owner: 'comic',\r
249     },\r
250     lists: {\r
251       public: {\r
252         type: 'public',\r
253       },\r
254       private: {\r
255         type: 'private',\r
256       },\r
257       by_comic: {\r
258         type: 'filter',\r
259       },\r
260       by_sheet: {\r
261         type: 'through_filter',\r
262         args: {\r
263           through: 'story_sheets',\r
264         },\r
265       },\r
266       by_author: {\r
267         type: 'foreign_filter',\r
268       },\r
269       play: {\r
270         type: 'play',\r
271       },\r
272     },\r
273   },\r
274   story_sheet: {\r
275     associations: {\r
276       belongs_to: {\r
277         story: {\r
278         }, \r
279         sheet: {\r
280         }, \r
281       },\r
282       has_many: {\r
283       },\r
284     },\r
285     attributes: {\r
286       story_id: {\r
287         type: 'number',\r
288         rules : {\r
289           number: true,\r
290         }\r
291       },\r
292       sheet_id: {\r
293         type: 'number',\r
294         rules : {\r
295           number: true,\r
296         }\r
297       },\r
298       t: {\r
299         type: 'number',\r
300         rules : {\r
301           required: true,\r
302           number: true,\r
303           min: 0,\r
304         }\r
305       },\r
306       author_id: {\r
307         type: 'number',\r
308         rules : {\r
309           required: true,\r
310           number: true,\r
311         }\r
312       },\r
313     },\r
314     tree: {\r
315       owner: 'story',\r
316     },\r
317     lists: {\r
318       public: {\r
319         type: 'public',\r
320       },\r
321       private: {\r
322         type: 'private',\r
323       },\r
324       by_story: {\r
325         type: 'filter',\r
326       },\r
327       by_sheet: {\r
328         type: 'filter',\r
329       },\r
330     },\r
331   },\r
332   sheet: {\r
333     associations: {\r
334       belongs_to: {\r
335         author: {\r
336         }, \r
337       },\r
338       has_many: {\r
339         story_sheets: {\r
340         }, \r
341         stories: {\r
342           through: 'story_sheets',\r
343         }, \r
344         sheet_panels: {\r
345         }, \r
346         panels: {\r
347           through: 'sheet_panels',\r
348         }, \r
349       },\r
350     },\r
351     attributes: {\r
352       caption: {\r
353         type: 'text',\r
354         rules : {\r
355         }\r
356       },\r
357       width: {\r
358         type: 'number',\r
359         rules : {\r
360           required: true,\r
361           number: true,\r
362         }\r
363       },\r
364       height: {\r
365         type: 'number',\r
366         rules : {\r
367           required: true,\r
368           number: true,\r
369         }\r
370       },\r
371       visible: {\r
372         type: 'number',\r
373         rules : {\r
374           required: true,\r
375           number: true,\r
376         },\r
377         source: {\r
378           type: 'magic_number',\r
379           args: {\r
380             select_item_name: 'sheet_visible_items',\r
381           },\r
382         },\r
383       },\r
384       author_id: {\r
385         type: 'number',\r
386         rules : {\r
387           required: true,\r
388           number: true,\r
389         }\r
390       },\r
391     },\r
392     lists: {\r
393       public: {\r
394         type: 'public',\r
395       },\r
396       private: {\r
397         type: 'private',\r
398       },\r
399       by_story: {\r
400         type: 'through_filter',\r
401         args: {\r
402           through: 'story_sheets',\r
403         },\r
404       },\r
405       by_panel: {\r
406         type: 'through_filter',\r
407         args: {\r
408           through: 'sheet_panels',\r
409         },\r
410       },\r
411       by_author: {\r
412         type: 'filter',\r
413       },\r
414       play: {\r
415         type: 'play',\r
416       },\r
417     },\r
418   },\r
419   sheet_panel: {\r
420     associations: {\r
421       belongs_to: {\r
422         sheet: {\r
423         }, \r
424         panel: {\r
425         }, \r
426       },\r
427       has_many: {\r
428       },\r
429     },\r
430     attributes: {\r
431       sheet_id: {\r
432         type: 'number',\r
433         rules : {\r
434           number: true,\r
435         }\r
436       },\r
437       panel_id: {\r
438         type: 'number',\r
439         rules : {\r
440           number: true,\r
441         }\r
442       },\r
443       x: {\r
444         type: 'number',\r
445         rules : {\r
446           required: true,\r
447           number: true,\r
448         }\r
449       },\r
450       y: {\r
451         type: 'number',\r
452         rules : {\r
453           required: true,\r
454           number: true,\r
455         }\r
456       },\r
457       z: {\r
458         type: 'number',\r
459         rules : {\r
460           required: true,\r
461           number: true,\r
462           min: 1,\r
463         }\r
464       },\r
465       t: {\r
466         type: 'number',\r
467         rules : {\r
468           required: true,\r
469           number: true,\r
470           min: 0,\r
471         }\r
472       },\r
473       author_id: {\r
474         type: 'number',\r
475         rules : {\r
476           number: true,\r
477         }\r
478       },\r
479     },\r
480     tree: {\r
481       owner: 'sheet',\r
482     },\r
483     lists: {\r
484       public: {\r
485         type: 'public',\r
486       },\r
487       private: {\r
488         type: 'private',\r
489       },\r
490       by_sheet: {\r
491         type: 'filter',\r
492       },\r
493       by_panel: {\r
494         type: 'filter',\r
495       },\r
496     },\r
497   },\r
498   panel: {\r
499     associations: {\r
500       belongs_to: {\r
501         author: {\r
502         }, \r
503       },\r
504       has_many: {\r
505         scroll_panels: {\r
506         }, \r
507         scrolls: {\r
508           through: 'scroll_panels',\r
509         }, \r
510         sheet_panels: {\r
511         }, \r
512         sheets: {\r
513           through: 'sheet_panels',\r
514         }, \r
515         panel_pictures: {\r
516         }, \r
517         speech_balloons: {\r
518         }, \r
519         ground_pictures: {\r
520         }, \r
521         ground_colors: {\r
522         }, \r
523       },\r
524     },\r
525     attributes: {\r
526       width: {\r
527         type: 'number',\r
528         rules : {\r
529           required: true,\r
530           number: true,\r
531           min: 1,\r
532         }\r
533       },\r
534       height: {\r
535         type: 'number',\r
536         rules : {\r
537           required: true,\r
538           number: true,\r
539           min: 1,\r
540         }\r
541       },\r
542       border: {\r
543         type: 'number',\r
544         rules : {\r
545           required: true,\r
546           number: true,\r
547           min: 0,\r
548         }\r
549       },\r
550       caption: {\r
551         type: 'text',\r
552         rules : {\r
553         }\r
554       },\r
555       publish: {\r
556         type: 'number',\r
557         rules : {\r
558           required: true,\r
559           number: true,\r
560         },\r
561         source: {\r
562           type: 'magic_number',\r
563           args: {\r
564             select_item_name: 'panel_visible_items',\r
565           },\r
566         },\r
567       },\r
568       author_id: {\r
569         type: 'number',\r
570         rules : {\r
571           required: true,\r
572           number: true,\r
573         }\r
574       },\r
575     },\r
576     lists: {\r
577       public: {\r
578         type: 'public',\r
579       },\r
580       private: {\r
581         type: 'private',\r
582       },\r
583       by_scroll: {\r
584         type: 'through_filter',\r
585         args: {\r
586           through: 'scroll_panels',\r
587         },\r
588       },\r
589       by_sheet: {\r
590         type: 'through_filter',\r
591         args: {\r
592           through: 'sheet_panels',\r
593         },\r
594       },\r
595       by_author: {\r
596         type: 'filter',\r
597       },\r
598       by_speech_balloon_template: {\r
599         type: 'through_filter',\r
600       },\r
601     },\r
602   },\r
603   panel_picture: {\r
604     associations: {\r
605       belongs_to: {\r
606         panel: {\r
607         }, \r
608       },\r
609       has_many: {\r
610       },\r
611     },\r
612     attributes: {\r
613       panel_id: {\r
614         type: 'number',\r
615         rules : {\r
616           number: true,\r
617         }\r
618       },\r
619       picture_id: {\r
620         type: 'number',\r
621         rules : {\r
622           required: true,\r
623           number: true,\r
624         }\r
625       },\r
626       caption: {\r
627         type: 'text',\r
628         rules : {\r
629         }\r
630       },\r
631       x: {\r
632         type: 'number',\r
633         rules : {\r
634           required: true,\r
635           number: true,\r
636         }\r
637       },\r
638       y: {\r
639         type: 'number',\r
640         rules : {\r
641           required: true,\r
642           number: true,\r
643         }\r
644       },\r
645       width: {\r
646         type: 'number',\r
647         rules : {\r
648           required: true,\r
649           number: true,\r
650         }\r
651       },\r
652       height: {\r
653         type: 'number',\r
654         rules : {\r
655           required: true,\r
656           number: true,\r
657         }\r
658       },\r
659       link: {\r
660         type: 'text',\r
661         rules : {\r
662           url: true,\r
663         }\r
664       },\r
665       z: {\r
666         type: 'number',\r
667         rules : {\r
668           required: true,\r
669           number: true,\r
670           min: 1,\r
671         }\r
672       },\r
673       t: {\r
674         type: 'number',\r
675         rules : {\r
676           required: true,\r
677           number: true,\r
678           min: 0,\r
679         }\r
680       },\r
681     },\r
682     tree: {\r
683       owner: 'panel',\r
684       panel: 'panel',\r
685     },\r
686     lists: {\r
687       public: {\r
688         type: 'public',\r
689       },\r
690       private: {\r
691         type: 'private',\r
692       },\r
693       by_panel: {\r
694         type: 'filter',\r
695         args: {\r
696           where_name: 'public_list_where',\r
697         },\r
698       },\r
699       by_author: {\r
700         type: 'foreign_filter',\r
701         args: {\r
702           tree_name: 'owner',\r
703         },\r
704       },\r
705     },\r
706   },\r
707   speech_balloon: {\r
708     extend: 'classname', \r
709     associations: {\r
710       belongs_to: {\r
711         panel: {\r
712         }, \r
713       },\r
714       has_many: {\r
715       },\r
716       has_one: {\r
717         balloon: {\r
718         }, \r
719         speech: {\r
720         }, \r
721       },\r
722     },\r
723     attributes: {\r
724       panel_id: {\r
725         type: 'number',\r
726         rules : {\r
727           number: true,\r
728         }\r
729       },\r
730       speech_balloon_template_id: {\r
731         type: 'number',\r
732         rules : {\r
733           required: true,\r
734           number: true,\r
735         }\r
736       },\r
737       classname: {\r
738         type: 'text',\r
739         rules : {\r
740           required: true,\r
741         }\r
742       },\r
743       z: {\r
744         type: 'number',\r
745         rules : {\r
746           required: true,\r
747           number: true,\r
748           min: 1,\r
749         }\r
750       },\r
751       t: {\r
752         type: 'number',\r
753         rules : {\r
754           required: true,\r
755           number: true,\r
756           min: 0,\r
757         }\r
758       },\r
759       settings: {\r
760         type: 'text',\r
761         rules : {\r
762         }\r
763       },\r
764       caption: {\r
765         type: 'text',\r
766         rules : {\r
767         }\r
768       },\r
769     },\r
770     tree: {\r
771       owner: 'panel',\r
772       panel: 'panel',\r
773     },\r
774     lists: {\r
775       public: {\r
776         type: 'public',\r
777       },\r
778       private: {\r
779         type: 'private',\r
780       },\r
781       by_panel: {\r
782         type: 'filter',\r
783       },\r
784       by_speech_balloon_template: {\r
785         type: 'filter',\r
786       },\r
787       by_author: {\r
788         type: 'foreign_filter',\r
789       },\r
790     },\r
791   }, \r
792   balloon: {\r
793     associations: {\r
794       belongs_to: {\r
795         speech_balloon: {\r
796         }, \r
797         system_picture: {\r
798         }, \r
799       },\r
800       has_many: {\r
801       },\r
802     },\r
803     attributes: {\r
804       speech_balloon_id: {\r
805         type: 'number',\r
806         rules : {\r
807           number: true,\r
808         }\r
809       },\r
810       system_picture_id: {\r
811         type: 'number',\r
812         rules : {\r
813           required: true,\r
814           number: true,\r
815         }\r
816       },\r
817       x: {\r
818         type: 'number',\r
819         rules : {\r
820           required: true,\r
821           number: true,\r
822         }\r
823       },\r
824       y: {\r
825         type: 'number',\r
826         rules : {\r
827           required: true,\r
828           number: true,\r
829         }\r
830       },\r
831       width: {\r
832         type: 'number',\r
833         rules : {\r
834           required: true,\r
835           number: true,\r
836           min: 1,\r
837         }\r
838       },\r
839       height: {\r
840         type: 'number',\r
841         rules : {\r
842           required: true,\r
843           number: true,\r
844           min: 1,\r
845         }\r
846       },\r
847       r: {\r
848         type: 'number',\r
849         rules : {\r
850           required: true,\r
851           number: true,\r
852         }\r
853       },\r
854       settings: {\r
855         type: 'text',\r
856         rules : {\r
857         }\r
858       },\r
859     },\r
860     tree: {\r
861       owner: 'speech_balloon',\r
862       panel: 'speech_balloon',\r
863     },\r
864     lists: {\r
865       public: {\r
866         type: 'public',\r
867       },\r
868       private: {\r
869         type: 'private',\r
870       },\r
871       by_panel: {\r
872         type: 'filter',\r
873       },\r
874       by_speech_balloon: {\r
875         type: 'filter',\r
876       },\r
877       by_author: {\r
878         type: 'foreign_filter',\r
879       },\r
880     },\r
881   },\r
882   speech: {\r
883     associations: {\r
884       belongs_to: {\r
885         speech_balloon: {\r
886         }, \r
887         writing_format: {\r
888         }, \r
889       },\r
890       has_many: {\r
891       },\r
892     },\r
893     attributes: {\r
894       speech_balloon_id: {\r
895         type: 'number',\r
896         rules : {\r
897           number: true,\r
898         }\r
899       },\r
900       writing_format_id: {\r
901         type: 'number',\r
902         source: {\r
903           type: 'model',\r
904         },\r
905         rules : {\r
906           required: true,\r
907           number: true,\r
908         }\r
909       },\r
910       content: {\r
911         type: 'text',\r
912         rules : {\r
913         }\r
914       },\r
915       font_size: {\r
916         type: 'float',\r
917         rules : {\r
918           required: true,\r
919           number: true,\r
920           min: 0,\r
921         },\r
922         source: {\r
923           type: 'magic_number',\r
924           args: {\r
925             select_item_name: 'speech_font_size_items',\r
926           },\r
927         },\r
928       },\r
929       text_align: {\r
930         type: 'number',\r
931         rules : {\r
932           required: true,\r
933           number: true,\r
934           range: [0, 3],\r
935         },\r
936         source: {\r
937           type: 'magic_number',\r
938           args: {\r
939             select_item_name: 'speech_text_align_items',\r
940           },\r
941         },\r
942       },\r
943       fore_color: {\r
944         type: 'number',\r
945         rules : {\r
946           required: true,\r
947           number: true,\r
948           range: [0, 0xffffff],\r
949         }\r
950       },\r
951       x: {\r
952         type: 'number',\r
953         rules : {\r
954           required: true,\r
955           number: true,\r
956         }\r
957       },\r
958       y: {\r
959         type: 'number',\r
960         rules : {\r
961           required: true,\r
962           number: true,\r
963         }\r
964       },\r
965       width: {\r
966         type: 'number',\r
967         rules : {\r
968           required: true,\r
969           number: true,\r
970           min: 1,\r
971         }\r
972       },\r
973       height: {\r
974         type: 'number',\r
975         rules : {\r
976           required: true,\r
977           number: true,\r
978           min: 1,\r
979         }\r
980       },\r
981       quotes: {\r
982         type: 'text',\r
983         rules : {\r
984         }\r
985       },\r
986       settings: {\r
987         type: 'text',\r
988         rules : {\r
989         }\r
990       },\r
991     },\r
992     tree: {\r
993       owner: 'speech_balloon',\r
994       panel: 'speech_balloon',\r
995     },\r
996     lists: {\r
997       public: {\r
998         type: 'public',\r
999       },\r
1000       by_speech_balloon: {\r
1001         type: 'filter',\r
1002       },\r
1003       by_writing_format: {\r
1004         type: 'filter',\r
1005       },\r
1006     },\r
1007   },\r
1008   ground_picture: {\r
1009     associations: {\r
1010       belongs_to: {\r
1011         panel: {\r
1012         }, \r
1013       },\r
1014       has_many: {\r
1015       },\r
1016     },\r
1017     attributes: {\r
1018       panel_id: {\r
1019         type: 'number',\r
1020         rules : {\r
1021           number: true,\r
1022         }\r
1023       },\r
1024       picture_id: {\r
1025         type: 'number',\r
1026         rules : {\r
1027           required: true,\r
1028           number: true,\r
1029         }\r
1030       },\r
1031       caption: {\r
1032         type: 'text',\r
1033         rules : {\r
1034         }\r
1035       },\r
1036       repeat: {\r
1037         type: 'number',\r
1038         rules : {\r
1039           required: true,\r
1040           number: true,\r
1041           range: [0, 3],\r
1042         },\r
1043         source: {\r
1044           type: 'magic_number',\r
1045           args: {\r
1046             select_item_name: 'ground_picture_repeat_items',\r
1047           },\r
1048         },\r
1049       },\r
1050       x: {\r
1051         type: 'number',\r
1052         rules : {\r
1053           required: true,\r
1054           number: true,\r
1055         }\r
1056       },\r
1057       y: {\r
1058         type: 'number',\r
1059         rules : {\r
1060           required: true,\r
1061           number: true,\r
1062         }\r
1063       },\r
1064       z: {\r
1065         type: 'number',\r
1066         rules : {\r
1067           required: true,\r
1068           number: true,\r
1069           min: 1,\r
1070         }\r
1071       },\r
1072       t: {\r
1073         type: 'number',\r
1074         rules : {\r
1075           required: true,\r
1076           number: true,\r
1077           min: 0,\r
1078         }\r
1079       },\r
1080     },\r
1081     tree: {\r
1082       owner: 'panel',\r
1083       panel: 'panel',\r
1084     },\r
1085     lists: {\r
1086       public: {\r
1087         type: 'public',\r
1088       },\r
1089       private: {\r
1090         type: 'private',\r
1091       },\r
1092       by_panel: {\r
1093         type: 'filter',\r
1094       },\r
1095       by_author: {\r
1096         type: 'foreign_filter',\r
1097       },\r
1098     },\r
1099   },\r
1100   ground_color: {\r
1101     associations: {\r
1102       belongs_to: {\r
1103         panel: {\r
1104         }, \r
1105       },\r
1106       has_many: {\r
1107       },\r
1108     },\r
1109     attributes: {\r
1110       panel_id: {\r
1111         type: 'number',\r
1112         rules : {\r
1113           number: true,\r
1114         }\r
1115       },\r
1116       caption: {\r
1117         type: 'text',\r
1118         rules : {\r
1119         }\r
1120       },\r
1121       code: {\r
1122         type: 'number',\r
1123         rules : {\r
1124           required: true,\r
1125           number: true,\r
1126           range: [0, 0xffffff],\r
1127         }\r
1128       },\r
1129       orientation: {\r
1130         type: 'number',\r
1131         rules : {\r
1132           required: true,\r
1133           number: true,\r
1134           range: [0, 1],\r
1135         },\r
1136         source: {\r
1137           type: 'magic_number',\r
1138           args: {\r
1139             select_item_name: 'ground_color_orientation_items',\r
1140           },\r
1141         },\r
1142       },\r
1143       xy: {\r
1144         type: 'number',\r
1145         rules : {\r
1146           number: true,\r
1147         }\r
1148       },\r
1149       wh: {\r
1150         type: 'number',\r
1151         rules : {\r
1152           number: true,\r
1153         }\r
1154       },\r
1155       z: {\r
1156         type: 'number',\r
1157         rules : {\r
1158           required: true,\r
1159           number: true,\r
1160           min: 1,\r
1161         }\r
1162       },\r
1163       t: {\r
1164         type: 'number',\r
1165         rules : {\r
1166           required: true,\r
1167           number: true,\r
1168           min: 0,\r
1169         }\r
1170       },\r
1171     },\r
1172     tree: {\r
1173       owner: 'panel',\r
1174       panel: 'panel',\r
1175     },\r
1176     lists: {\r
1177       public: {\r
1178         type: 'public',\r
1179       },\r
1180       private: {\r
1181         type: 'private',\r
1182       },\r
1183       by_panel: {\r
1184         type: 'filter',\r
1185       },\r
1186       by_author: {\r
1187         type: 'foreign_filter',\r
1188       },\r
1189     },\r
1190   },\r
1191   original_picture: {\r
1192     associations: {\r
1193       belongs_to: {\r
1194         artist: {\r
1195         }, \r
1196       },\r
1197       has_many: {\r
1198         pictures: {\r
1199         }, \r
1200       },\r
1201       has_one: {\r
1202         resource_picture: {\r
1203         }, \r
1204       },\r
1205     },\r
1206     attributes: {\r
1207       ext: {\r
1208         type: 'text',\r
1209         rules : {\r
1210           required: true,\r
1211         }\r
1212       },\r
1213       width: {\r
1214         type: 'number',\r
1215         rules : {\r
1216           required: true,\r
1217           number: true,\r
1218         }\r
1219       },\r
1220       height: {\r
1221         type: 'number',\r
1222         rules : {\r
1223           required: true,\r
1224           number: true,\r
1225         }\r
1226       },\r
1227       filesize: {\r
1228         type: 'number',\r
1229         rules : {\r
1230           required: true,\r
1231           number: true,\r
1232         }\r
1233       },\r
1234       artist_id: {\r
1235         type: 'number',\r
1236         rules : {\r
1237           required: true,\r
1238           number: true,\r
1239         }\r
1240       },\r
1241       md5: {\r
1242         type: 'text',\r
1243         rules : {\r
1244           required: true,\r
1245           required: true,\r
1246         }\r
1247       },\r
1248       uploaded_at: {\r
1249         type: 'datetime',\r
1250       },\r
1251       published_at: {\r
1252         type: 'datetime',\r
1253       },\r
1254       stopped_at: {\r
1255         type: 'datetime',\r
1256       },\r
1257     },\r
1258     lists: {\r
1259       private: {\r
1260         type: 'private',\r
1261       },\r
1262     },\r
1263   },\r
1264   picture: {\r
1265     associations: {\r
1266       belongs_to: {\r
1267         license: {\r
1268         }, \r
1269         artist: {\r
1270         }, \r
1271       },\r
1272       has_many: {\r
1273       },\r
1274       has_one: {\r
1275       },\r
1276     },\r
1277     attributes: {\r
1278       original_picture_id: {\r
1279         type: 'number',\r
1280         rules : {\r
1281           required: true,\r
1282           number: true,\r
1283         }\r
1284       },\r
1285       revision: {\r
1286         type: 'number',\r
1287         rules : {\r
1288           required: true,\r
1289           number: true,\r
1290         }\r
1291       },\r
1292       ext: {\r
1293         type: 'text',\r
1294         rules : {\r
1295           required: true,\r
1296         }\r
1297       },\r
1298       width: {\r
1299         type: 'number',\r
1300         rules : {\r
1301           required: true,\r
1302           number: true,\r
1303         }\r
1304       },\r
1305       height: {\r
1306         type: 'number',\r
1307         rules : {\r
1308           required: true,\r
1309           number: true,\r
1310         }\r
1311       },\r
1312       filesize: {\r
1313         type: 'number',\r
1314         rules : {\r
1315           required: true,\r
1316           number: true,\r
1317         }\r
1318       },\r
1319       artist_id: {\r
1320         type: 'number',\r
1321         rules : {\r
1322           required: true,\r
1323           number: true,\r
1324         }\r
1325       },\r
1326       license_id: {\r
1327         type: 'number',\r
1328         rules : {\r
1329           required: true,\r
1330           number: true,\r
1331         }\r
1332       },\r
1333       md5: {\r
1334         type: 'text',\r
1335         rules : {\r
1336           required: true,\r
1337         }\r
1338       },\r
1339       artist_name: {\r
1340         type: 'text',\r
1341         rules : {\r
1342           required: true,\r
1343         }\r
1344       },\r
1345       credit: {\r
1346         type: 'text',\r
1347         rules : {\r
1348         }\r
1349       },\r
1350       settings: {\r
1351         type: 'text',\r
1352         rules : {\r
1353         }\r
1354       },\r
1355       classname: {\r
1356         type: 'text',\r
1357         rules : {\r
1358           required: true,\r
1359         }\r
1360       },\r
1361     }\r
1362   },\r
1363   resource_picture: {\r
1364     associations: {\r
1365       belongs_to: {\r
1366         original_picture: {\r
1367         }, \r
1368         license: {\r
1369         }, \r
1370         artist: {\r
1371         }, \r
1372       },\r
1373       has_many: {\r
1374       },\r
1375       has_one: {\r
1376       },\r
1377     },\r
1378     attributes: {\r
1379       original_picture_id: {\r
1380         type: 'number',\r
1381         rules : {\r
1382           required: true,\r
1383           number: true,\r
1384         }\r
1385       },\r
1386       revision: {\r
1387         type: 'number',\r
1388         rules : {\r
1389           required: true,\r
1390           number: true,\r
1391         }\r
1392       },\r
1393       ext: {\r
1394         type: 'text',\r
1395         rules : {\r
1396           required: true,\r
1397         }\r
1398       },\r
1399       width: {\r
1400         type: 'number',\r
1401         rules : {\r
1402           required: true,\r
1403           number: true,\r
1404         }\r
1405       },\r
1406       height: {\r
1407         type: 'number',\r
1408         rules : {\r
1409           required: true,\r
1410           number: true,\r
1411         }\r
1412       },\r
1413       filesize: {\r
1414         type: 'number',\r
1415         rules : {\r
1416           required: true,\r
1417           number: true,\r
1418         }\r
1419       },\r
1420       artist_id: {\r
1421         type: 'number',\r
1422         rules : {\r
1423           required: true,\r
1424           number: true,\r
1425         }\r
1426       },\r
1427       license_id: {\r
1428         type: 'number',\r
1429         rules : {\r
1430           required: true,\r
1431           number: true,\r
1432         }\r
1433       },\r
1434       md5: {\r
1435         type: 'text',\r
1436         rules : {\r
1437           required: true,\r
1438         }\r
1439       },\r
1440       artist_name: {\r
1441         type: 'text',\r
1442         rules : {\r
1443           required: true,\r
1444         }\r
1445       },\r
1446       credit: {\r
1447         type: 'text',\r
1448         rules : {\r
1449         }\r
1450       },\r
1451       settings: {\r
1452         type: 'text',\r
1453         rules : {\r
1454         }\r
1455       },\r
1456       picture_id: {\r
1457         type: 'number',\r
1458         rules : {\r
1459           required: true,\r
1460           number: true,\r
1461         }\r
1462       },\r
1463       classname: {\r
1464         type: 'text',\r
1465         rules : {\r
1466           required: true,\r
1467         }\r
1468       },\r
1469     },\r
1470     lists: {\r
1471       public: {\r
1472         type: 'public',\r
1473       },\r
1474       private: {\r
1475         type: 'private',\r
1476       },\r
1477       by_license: {\r
1478         type: 'filter',\r
1479       },\r
1480       by_artist: {\r
1481         type: 'filter',\r
1482       },\r
1483     },\r
1484   },\r
1485   speech_balloon_template: {\r
1486     associations: {\r
1487       belongs_to: {\r
1488         system_picture: {\r
1489         }, \r
1490       },\r
1491       has_many: {\r
1492         speech_balloons: {\r
1493         }, \r
1494         panels: {\r
1495           through: 'speech_balloons',\r
1496         }, \r
1497       },\r
1498       has_one: {\r
1499       },\r
1500     },\r
1501     attributes: {\r
1502       name: {\r
1503         type: 'text',\r
1504         rules : {\r
1505           required: true,\r
1506         }\r
1507       },\r
1508       classname: {\r
1509         type: 'text',\r
1510         rules : {\r
1511           required: true,\r
1512         }\r
1513       },\r
1514       caption: {\r
1515         type: 'text',\r
1516         rules : {\r
1517           required: true,\r
1518         }\r
1519       },\r
1520       t: {\r
1521         type: 'number',\r
1522         rules : {\r
1523           required: true,\r
1524           number: true,\r
1525           min: 0,\r
1526         }\r
1527       },\r
1528       system_picture_id: {\r
1529         type: 'number',\r
1530         rules : {\r
1531           required: true,\r
1532           number: true,\r
1533         }\r
1534       },\r
1535       settings: {\r
1536         type: 'text',\r
1537         rules : {\r
1538           required: true,\r
1539         }\r
1540       },\r
1541     },\r
1542     lists: {\r
1543       public: {\r
1544         type: 'public',\r
1545       },\r
1546       select_items: {\r
1547         type: 'system_resource',\r
1548         args: {\r
1549           select_item_name: 'panel_visible_items',\r
1550         },\r
1551       },\r
1552     },\r
1553   },\r
1554   writing_format: {\r
1555     associations: {\r
1556       belongs_to: {\r
1557         system_picture: {\r
1558         }, \r
1559       },\r
1560       has_many: {\r
1561         speeches: {\r
1562         }, \r
1563       },\r
1564       has_one: {\r
1565       },\r
1566     },\r
1567     attributes: {\r
1568       name: {\r
1569         type: 'text',\r
1570         rules : {\r
1571           required: true,\r
1572         }\r
1573       },\r
1574       classname: {\r
1575         type: 'text',\r
1576         rules : {\r
1577           required: true,\r
1578         }\r
1579       },\r
1580       caption: {\r
1581         type: 'text',\r
1582         rules : {\r
1583           required: true,\r
1584         }\r
1585       },\r
1586       system_picture_id: {\r
1587         type: 'number',\r
1588         rules : {\r
1589           required: true,\r
1590           number: true,\r
1591         }\r
1592       },\r
1593       settings: {\r
1594         type: 'text',\r
1595         rules : {\r
1596           required: true,\r
1597         }\r
1598       },\r
1599     },\r
1600     lists: {\r
1601       public: {\r
1602         type: 'public',\r
1603       },\r
1604       select_items: {\r
1605         type: 'system_resource',\r
1606       },\r
1607       by_system_picture: {\r
1608         type: 'filter',\r
1609       },\r
1610     },\r
1611   },\r
1612   license_group: {\r
1613     associations: {\r
1614       belongs_to: {\r
1615       },\r
1616       has_many: {\r
1617         licenses: {\r
1618         }, \r
1619       },\r
1620       has_one: {\r
1621       },\r
1622     },\r
1623     attributes: {\r
1624       name: {\r
1625         type: 'text',\r
1626         rules : {\r
1627           required: true,\r
1628         }\r
1629       },\r
1630       classname: {\r
1631         type: 'text',\r
1632         rules : {\r
1633           required: true,\r
1634         }\r
1635       },\r
1636       caption: {\r
1637         type: 'text',\r
1638         rules : {\r
1639           required: true,\r
1640         }\r
1641       },\r
1642       url: {\r
1643         type: 'text',\r
1644         rules : {\r
1645           required: true,\r
1646         }\r
1647       },\r
1648     },\r
1649     lists: {\r
1650       public: {\r
1651         type: 'public',\r
1652       },\r
1653       select_items: {\r
1654         type: 'system_resource',\r
1655       },\r
1656     },\r
1657   },\r
1658   license: {\r
1659     associations: {\r
1660       belongs_to: {\r
1661         license_group: {\r
1662         }, \r
1663         system_picture: {\r
1664         }, \r
1665       },\r
1666       has_many: {\r
1667         resource_pictures: {\r
1668         }, \r
1669       },\r
1670       has_one: {\r
1671       },\r
1672     },\r
1673     attributes: {\r
1674       license_group_id: {\r
1675         type: 'number',\r
1676         rules : {\r
1677           number: true,\r
1678         }\r
1679       },\r
1680       name: {\r
1681         type: 'text',\r
1682         rules : {\r
1683           required: true,\r
1684         }\r
1685       },\r
1686       caption: {\r
1687         type: 'text',\r
1688         rules : {\r
1689           required: true,\r
1690         }\r
1691       },\r
1692       system_picture_id: {\r
1693         type: 'number',\r
1694         rules : {\r
1695           required: true,\r
1696           number: true,\r
1697         }\r
1698       },\r
1699       url: {\r
1700         type: 'text',\r
1701         rules : {\r
1702           required: true,\r
1703         }\r
1704       },\r
1705       settings: {\r
1706         type: 'text',\r
1707         rules : {\r
1708         }\r
1709       },\r
1710       credit_pictures: {\r
1711         type: 'text',\r
1712         rules : {\r
1713         }\r
1714       },\r
1715     },\r
1716     lists: {\r
1717       public: {\r
1718         type: 'public',\r
1719       },\r
1720       by_license_group: {\r
1721         type: 'filter',\r
1722       },\r
1723       by_system_picture: {\r
1724         type: 'filter',\r
1725       },\r
1726     },\r
1727   },\r
1728   author: {\r
1729     associations: {\r
1730       belongs_to: {\r
1731       },\r
1732       has_many: {\r
1733         scrolls: {\r
1734         }, \r
1735         comics: {\r
1736         }, \r
1737         stories: {\r
1738         }, \r
1739         sheets: {\r
1740         }, \r
1741         panels: {\r
1742         }, \r
1743       },\r
1744       has_one: {\r
1745       },\r
1746     },\r
1747     attributes: {\r
1748       name: {\r
1749         type: 'text',\r
1750         rules : {\r
1751           required: true,\r
1752         }\r
1753       },\r
1754       user_id: {\r
1755         type: 'number',\r
1756         rules : {\r
1757           required: true,\r
1758           number: true,\r
1759         }\r
1760       },\r
1761     },\r
1762     lists: {\r
1763       public: {\r
1764         type: 'public',\r
1765       },\r
1766     },\r
1767   },\r
1768   artist: {\r
1769     associations: {\r
1770       belongs_to: {\r
1771       },\r
1772       has_many: {\r
1773         resource_pictures: {\r
1774         }, \r
1775       },\r
1776       has_one: {\r
1777       },\r
1778     },\r
1779     attributes: {\r
1780       name: {\r
1781         type: 'text',\r
1782         rules : {\r
1783           required: true,\r
1784         }\r
1785       },\r
1786       author_id: {\r
1787         type: 'number',\r
1788         rules : {\r
1789           required: true,\r
1790           number: true,\r
1791         }\r
1792       },\r
1793     },\r
1794     lists: {\r
1795       public: {\r
1796         type: 'public',\r
1797       },\r
1798     },\r
1799   },\r
1800   system_picture: {\r
1801     associations: {\r
1802       belongs_to: {\r
1803       },\r
1804       has_many: {\r
1805         balloons: {\r
1806         }, \r
1807         speech_balloon_templates: {\r
1808         }, \r
1809         licenses: {\r
1810         }, \r
1811       },\r
1812       has_one: {\r
1813       },\r
1814     },\r
1815     attributes: {\r
1816       ext: {\r
1817         type: 'text',\r
1818         rules : {\r
1819           required: true,\r
1820         }\r
1821       },\r
1822       width: {\r
1823         type: 'number',\r
1824         rules : {\r
1825           required: true,\r
1826           number: true,\r
1827         }\r
1828       },\r
1829       height: {\r
1830         type: 'number',\r
1831         rules : {\r
1832           required: true,\r
1833           number: true,\r
1834         }\r
1835       },\r
1836       filesize: {\r
1837         type: 'number',\r
1838         rules : {\r
1839           required: true,\r
1840           number: true,\r
1841         }\r
1842       },\r
1843       md5: {\r
1844         type: 'text',\r
1845         rules : {\r
1846           required: true,\r
1847           required: true,\r
1848         }\r
1849       },\r
1850     },\r
1851     lists: {\r
1852       public: {\r
1853         type: 'public',\r
1854       },\r
1855     },\r
1856   },\r
1857 }\r
1858 \r