OSDN Git Service

t#:
[pettanr/pettanr.git] / app / views / panels / _form.html.erb
1 <div id="template" >
2 </div>
3 <div id="tabs" class="panel-editor" panel_id="<%= @panel.tag_panel_id -%>" current="1">
4   <ul>
5     <li id="tabs-1-tab"><a href="#tabs-1">panel</a></li>
6     <li id="tabs-2-tab"><a href="#tabs-2">elements</a></li>
7     <li id="tabs-3-tab"><a href="#tabs-3">t order</a></li>
8     <li id="tabs-4-tab"><a href="#tabs-4">z order</a></li>
9     <li id="tabs-5-tab"><a href="#tabs-5">new</a></li>
10   </ul>
11   <div id="tabs-1">
12     <%= form_for(@panel, :html => @panel.tag_attributes('form', 'data-form-name' => 'panel')) do |f| %>
13       <%= render 'system/error_explanation', :obj => @panel %>
14
15       <div class="field">
16         <%= f.label :caption %>
17         <%= f.text_field :caption, @panel.field_tag_attributes(:caption, 'data-model' => 'panel') -%>
18       </div>
19       <div class="row_break">
20       </div>
21       <div class="field">
22         <%= f.label :width %>
23         <%= f.number_field :width, @panel.field_tag_attributes(:width, :size => 5, 'data-model' => 'panel') %>
24       </div>
25       <div class="field">
26         <%= f.label :height %>
27         <%= f.number_field :height, @panel.field_tag_attributes(:height, :size => 5, 'data-model' => 'panel') %>
28       </div>
29       <div class="row_break">
30       </div>
31       <div class="field">
32         <%= f.label :border %>
33         <%= f.number_field :border, @panel.field_tag_attributes(:border, :size => 5, 'data-model' => 'panel') %>
34       </div>
35       <div class="field">
36         <%= f.label :publish %>
37         <%= f.select :publish, t_select_items(manifest.select_items['magic_number']['panel_visible_items']), *@panel.select_tag_attributes(@panel.publish, :publish, 'data-model' => 'panel') %>
38       </div>
39       <div class="row_break">
40       </div>
41       <% unless @panel.new_record?  %>
42         <%= f.hidden_field :id, @panel.field_tag_attributes(:id, 'data-model' => 'panel') %>
43       <% end %>
44       <div class="actions">
45         <%= f.submit 'panels.submit', :class => "submit" %>
46       </div>
47     <% end %>
48   </div>
49   <div id="tabs-2">
50     <div id="elements-tabs">
51       <ul>
52         <% @panel.panel_elements.each do |elm| %>
53           <%= render 'element_tab', :elm => elm %>
54         <% end %>
55       </ul>
56       <% mounted = true %>
57       <% @panel.panel_elements.each do |element| %>
58         <div <%= raw element.tag_attr(:tab_panel) -%>>
59           <div id="elements-tabs-<%= element.t -%>">
60             <% form_manager = Pettanr::Application::manifest.form_managers[element.form_name] %>
61             <% form = form_manager.open element, @operators, mounted %>
62             <%= render 'element_form', :form => form %>
63             <%= hidden_field_tag '_destroy', '', element.field_tag_attributes(:_destroy, 0) %>
64           </div>
65         </div>
66       <% end %>
67     </div>
68   </div>
69   <div id="tabs-3">
70     <div class="tsort-box">
71       <ul class="tsort tsort-tabs-nav" <%= raw @panel.tag_attr(:tsort) -%>>
72         <% @panel.panel_elements.each do |elm| %>
73           <li <%= raw elm.tag_attr(:tsort) -%>>
74             <div class="elements-tab">
75               <%= render elm.path_name + '/element_face', :elm => elm %>
76             </div>
77           </li>
78         <% end %>
79       </ul>
80     </div>
81     <div class="scenario" <%= raw @panel.tag_attr(:scenario) -%>>
82       <% @panel.panel_elements.each do |elm| %>
83         <div <%= raw elm.tag_attr() -%>>
84           <%= render elm.scenario_template, :elm => elm, :no_attr => 0 %>
85         </div>
86       <% end %>
87     </div>
88     <div class="tsort-row-break">
89     </div>
90   </div>
91   <div id="tabs-4">
92     <div class="zsort-box">
93       <ul class="zsort zsort-tabs-nav" <%= raw @panel.tag_attr(:zsort) -%>>
94         <% @panel.zorderd_elements.each do |elm| %>
95           <li <%= raw elm.tag_attr(:zsort) -%>>
96             <div class="elements-tab">
97               <%= render elm.class.to_s.tableize + '/element_face', :elm => elm %>
98             </div>
99           </li>
100         <% end %>
101       </ul>
102     </div>
103   </div>
104   <div id="tabs-5">
105     <div id="new-element-tabs">
106       <ul>
107       <% i = 0 %>
108         <% Panel.each_element_classes do |k| %>
109           <li>
110             <a href="#new-element-tabs-<%= i -%>">
111               <div class="new-element-tab">
112                 <%= t_m k.to_s %>
113               </div>
114             </a>
115           </li>
116         <% i += 1 %>
117         <% end %>
118       </ul>
119       <% i = 0 %>
120       <% mounted = false %>
121       <% Panel.each_element_classes do |k| %>
122         <div>
123           <div id="new-element-tabs-<%= i -%>">
124             <% case k.to_s %>
125             <% when 'PanelPicture' %>
126             <% when 'SpeechBalloon' %>
127               <div id="new-speech_balloon-tabs">
128                 <ul>
129                   <% SpeechBalloonTemplate.enable_list().each_with_index do |sbt, index| %>
130                     <li>
131                       <a href="#new-speech_balloon-tabs-<%= index -%>">
132                         <div class="new-speech_balloon-tab">
133                           <%= tag(:img, sbt.system_picture.tmb_opt_img_tag) %>
134                           <div>
135                             <%= h(sbt.caption) %>
136                           </div>
137                         </div>
138                       </a>
139                     </li>
140                   <% end %>
141                 </ul>
142                 <% SpeechBalloonTemplate.enable_list().each_with_index do |sbt, index| %>
143                   <div id="new-speech_balloon-tabs-<%= index -%>">
144                     <% elm = SpeechBalloon.new :panel_id => @panel.id, :speech_balloon_template_id => sbt.id %>
145                     <% 
146                       elm.new_panel = @panel
147                       elm.boost
148                       elm.supply_default
149                       elm.balloon.supply_default 
150                       elm.speech.supply_default 
151                     %>
152                     <%# render elm.form_template, :elm => elm, :no_attr => 1 %>
153                   </div>
154                 <% end %>
155             <% when 'GroundPicture' %>
156             <% when 'GroundColor' %>
157               <% element = GroundColor.new :panel_id => @panel.id %>
158               <% element.new_panel = @panel ; element.boost ; element.supply_default %>
159               <% form_manager = Pettanr::Application::manifest.form_managers[element.form_name] %>
160               <% form = form_manager.open element, @operators, mounted %>
161               <%= render 'element_form', :form => form %>
162             <% end %>
163           </div>
164         </div>
165         <% i += 1 %>
166       <% end %>
167     </div>
168   </div>
169 </div>
170 <%= form_for(@panel, :html => {:jqform => 'pettanr-panel-form'}) do |f| %>
171   <%= render 'system/error_explanation', :obj => @panel %>
172
173   <%= text_field_tag "json", '', :id => 'pettanr-panel-json' %>
174   <div>
175     <%= submit_tag t('panels.create_from_json'), :id => 'pettanr-panel-submit' -%>
176   </div>
177 <% end %>
178 <div id="writing_formats">
179   <% WritingFormat.enable_list().each do |wf| %>
180     <div id="writing_format-<%= wf.id -%>" writing_format_id="<%= wf.id -%>" writing_format_engine_name="<%= wf.engine_name -%>">
181     </div>
182   <% end %>
183 </div>
184 <div id="speech_balloon_templates">
185   <% SpeechBalloonTemplate.enable_list().each do |sbt| %>
186     <div id="speech_balloon_template-<%= sbt.id -%>" speech_balloon_template_id="<%= sbt.id -%>" engine_name="<%= sbt.engine_name -%>" settings="<%= sbt.parsed_settings.to_json -%>">
187     </div>
188   <% end %>
189 </div>
190 <div <%= raw @panel.tag_attr('popup') -%> style="display: none;" >
191 </div>