OSDN Git Service

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