OSDN Git Service

t#31705:fix elements-tab-face
[pettanr/pettanr.git] / app / views / panels / _form.html.erb
index 08e6d60..a3e33a2 100644 (file)
-<%= form_tag( {:controller => 'panels',:action => "create"}) do %>
-  <% if @panel.errors.any? %>
-    <div id="error_explanation">
-      <h2><%= pluralize(@panel.errors.count, "error") %> prohibited this panel from being saved:</h2>
+<div id="tabs">
+  <ul>
+    <li><a href="#tabs-1">panel</a></li>
+    <li><a href="#tabs-2">elements</a></li>
+    <li><a href="#tabs-3">t order</a></li>
+    <li><a href="#tabs-4">z order</a></li>
+    <li><a href="#tabs-5">new</a></li>
+  </ul>
+  <div id="tabs-1">
+    <%= form_for(@panel) do |f| %>
+      <%= render 'system/error_explanation', :obj => @panel %>
 
+      <div class="field">
+        <%= f.label :caption %>
+        <%= f.text_field :caption, :id => @panel.field_tag_id(:caption), :panel_id => @panel.tag_panel_id, :column => :caption, :tree => @panel.field_tree(:caption) -%>
+      </div>
+      <div class="field">
+        <%= f.label :width %>
+        <%= f.number_field :width, :size => 5, :id => @panel.field_tag_id(:width), :panel_id => @panel.tag_panel_id, :column => :width, :tree => @panel.field_tree(:width) %>
+
+        <%= f.label :height %>
+        <%= f.number_field :height, :size => 5, :id => @panel.field_tag_id(:height), :panel_id => @panel.tag_panel_id, :column => :height, :tree => @panel.field_tree(:height) %>
+
+        <%= f.label :border %>
+        <%= f.number_field :border, :size => 5, :id => @panel.field_tag_id(:border), :panel_id => @panel.tag_panel_id, :column => :border, :tree => @panel.field_tree(:border) %>
+      </div>
+      <div class="field">
+        <%= f.label :publish %>
+        <%= 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, :tree => @panel.field_tree(:publish)} %>
+      </div>
+      <% unless @panel.new_record?  %>
+        <%= f.hidden_field :id, :id => @panel.field_tag_id(:id), :panel_id => @panel.tag_panel_id, :column => :id, :tree => @panel.field_tree(:id) %>
+      <% end %>
+      <div class="actions">
+        <%= f.submit 'panels.submit', :class => "submit" %>
+      </div>
+    <% end %>
+  </div>
+  <div id="tabs-2">
+    <div id="elements-tabs">
       <ul>
-      <% @panel.errors.full_messages.each do |msg| %>
-        <li><%= msg %></li>
+        <% @panel.panel_elements.each do |elm| %>
+          <li id="<%= elm.field_tag_id(:element_tab) -%>">
+            <a href="#elements-tabs-<%= elm.t -%>">
+              <div class="elements-tab">
+                <%= render elm.class.to_s.tableize + '/element_face', :elm => elm %>
+              </div>
+            </a>
+            <button class="ui-icon-destroy" id="<%= elm.field_tag_id(:_destroy_button) -%>" panel_id="<%= elm.tag_panel_id -%>" element_id="<%= elm.tag_element_id -%>" element_type="<%= elm.tag_element_type -%>"></button>
+          </li>
+        <% end %>
+      </ul>
+      <% @panel.panel_elements.each do |elm| %>
+        <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 -%>">
+          <div id="elements-tabs-<%= elm.t -%>">
+            <% case elm.class.to_s %>
+            <% when 'PanelPicture' %>
+              <%= render 'panel_pictures/form', :panel_picture => elm %>
+            <% when 'SpeechBalloon' %>
+              <% 
+                speech_balloon = elm
+                speech_balloon_template = speech_balloon.speech_balloon_template
+                balloon = speech_balloon.balloon 
+                speech = speech_balloon.speech 
+                speech_balloon.extend speech_balloon_template.engine_speech_balloon_module
+                balloon.extend speech_balloon_template.engine_balloon_module
+                speech.extend speech_balloon_template.engine_speech_module
+                
+                speech_balloon_extend = speech_balloon.extend_speech_balloon
+                balloon_extend = balloon.extend_balloon
+                speech_extend = speech.extend_speech
+              %>
+              <%= render elm.speech_balloon_template.engine_name + '/speech_balloons/form', :speech_balloon => speech_balloon, :balloon => balloon, :speech => speech, :speech_balloon_extend => speech_balloon_extend, :balloon_extend => balloon_extend, :speech_extend => speech_extend %>
+            <% when 'GroundPicture' %>
+              <%= render 'ground_pictures/form', :ground_picture => elm %>
+            <% when 'GroundColor' %>
+              <%= render 'ground_colors/form', :ground_color => elm %>
+            <% end %>
+            <%= 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, :tree => elm.field_tree(:_destroy) %>
+          </div>
+        </div>
+      <% end %>
+    </div>
+  </div>
+  <div id="tabs-3">
+    <div class="tsort-box">
+      <ul id="<%= @panel.tag_id -%>tsort" class="tsort tsort-tabs-nav" panel_id="<%= @panel.tag_panel_id -%>">
+        <% @panel.panel_elements.each do |elm| %>
+          <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 -%>">
+            <div class="elements-tab">
+              <%= render elm.class.to_s.tableize + '/element_face', :elm => elm %>
+            </div>
+          </li>
+        <% end %>
+      </ul>
+    </div>
+    <div id="<%= @panel.tag_id -%>scenario" class="scenario" panel_id="<%= @panel.tag_panel_id -%>">
+      <% @panel.panel_elements.each do |elm| %>
+        <div panel_id="<%= elm.tag_panel_id -%>" element_id="<%= elm.tag_element_id -%>" element_type="<%= elm.tag_element_type -%>">
+          <% case elm.class.to_s %>
+          <% when 'PanelPicture' %>
+            <%= render 'panel_pictures/scenario', :panel_picture => elm %>
+          <% when 'SpeechBalloon' %>
+            <%= render elm.speech_balloon_template.engine_name + '/speech_balloons/scenario', :speech_balloon => elm %>
+          <% when 'GroundPicture' %>
+            <%= render 'ground_pictures/scenario', :ground_picture => elm %>
+          <% when 'GroundColor' %>
+            <%= render 'ground_colors/scenario', :ground_color => elm %>
+          <% end %>
+        </div>
       <% end %>
+    </div>
+    <div class="tsort-row-break">
+    </div>
+  </div>
+  <div id="tabs-4">
+    <div class="zsort-box">
+      <ul id="<%= @panel.tag_id -%>zsort" class="zsort zsort-tabs-nav" panel_id="<%= @panel.tag_panel_id -%>">
+        <% @panel.zorderd_elements.each do |elm| %>
+          <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 -%>">
+            <div class="elements-tab">
+              <%= render elm.class.to_s.tableize + '/element_face', :elm => elm %>
+            </div>
+          </li>
+        <% end %>
       </ul>
     </div>
-  <% end %>
-  <label for="json">json data</label> <%= text_field_tag "json" %>
-  <%= submit_tag 'upload' -%>
-<% end -%>
+  </div>
+  <div id="tabs-5">
+    <script>
+    <!--
+      <% SpeechBalloonTemplate.list().each do |sbt| %>
+        var <%= h(sbt.engine_name) %>_settings = <%= raw sbt.parsed_settings.to_json -%>;
+      <% end %>
+    // -->
+    </script>
+    <% SpeechBalloonTemplate.list().each do |sbt| %>
+      <%= stylesheet_link_tag sbt.engine_name + "/application" %>
+      <%= javascript_include_tag sbt.engine_name + "/application" %>
+    <% end %>
+  </div>
+</div>
+<%= form_for(@panel, :html => {:jqform => 'pettanr-panel-form'}) do |f| %>
+  <%= render 'system/error_explanation', :obj => @panel %>
+
+  <%= text_field_tag "json", '', :id => 'pettanr-panel-json' %>
+  <div>
+    <%= submit_tag t('panels.create_from_json'), :id => 'pettanr-panel-submit' -%>
+  </div>
+<% end %>
+<script>
+<!--
+var pettanr_current_panel_id = <%= @panel.tag_panel_id -%>;
+// -->
+</script>