Refactoring: SL::Template: Parameterübergabe als Hash, nicht positionsabhängig
[kivitendo-erp.git] / templates / webpages / requirement_spec_text_block / _form.html
index 1fde6e5..8976478 100644 (file)
@@ -1,9 +1,22 @@
 [%- USE LxERP -%][%- USE L -%][%- USE HTML -%][%- USE JavaScript -%][% SET style="width: 500px" %]
 [% DEFAULT id_base = 'edit_text_block_' _ SELF.text_block.id %]
 <form method="post" id="[% id_base %]_form">
- [% L.hidden_tag(id_base _ '_id',                  SELF.text_block.id) %]
+ <h2>
+  [%- IF SELF.text_block.id %]
+   [%- SET title = SELF.text_block.title || '(' _ LxERP.t8('No title yet') _ ')' %]
+   [%- LxERP.t8("Edit text block '#1'", title) %]
+  [%- ELSE %]
+   [%- LxERP.t8("Add text block") %]
+  [%- END %]
+ </h2>
+
+ [% L.hidden_tag('form_prefix',                    id_base,            id=id_base _ '_form_prefix') %]
+ [% L.hidden_tag('id',                             SELF.text_block.id, id=id_base _ '_id') %]
  [% L.hidden_tag(id_base _ '.requirement_spec_id', SELF.text_block.requirement_spec_id) %]
  [% L.hidden_tag(id_base _ '.output_position',     SELF.text_block.output_position) %]
+ [% IF insert_after %]
+  [% L.hidden_tag(id_base _ '.insert_after',       insert_after) %]
+ [% END %]
 
  <table>
   <tr>
    <td>[% L.input_tag(id_base _ '.title', SELF.text_block.title, style = style) %]</td>
   </tr>
 
- [%- IF PREDEFINED_TEXTS.size %]
+ [%- IF SELF.predefined_texts.size %]
   <tr>
-   <th align="right">[%- LxERP.t8("Pre-defined text block") %]:</th>
+   <th align="right">[%- LxERP.t8("Pre-defined Texts") %]:</th>
    <td>
-    [%- L.select_tag(id_base _ '_predefined_text_block', PREDEFINED_TEXTS, title_key='description', style=style) %]
+    [%- L.select_tag(id_base _ '_predefined_text_block', SELF.predefined_texts, title_key='description', style=style) %]
     <a href="#" onclick="insert_selected_predefined_text()">[%- LxERP.t8("Insert") %]</a>
    </td>
   </tr>
 
   <tr>
    <th align="right" valign="top">[%- LxERP.t8("Description") %]:</th>
-   <td valign="top">[% L.textarea_tag(id_base _ '.text', SELF.text_block.text, style = style, rows = 10) %]</td>
+   <td valign="top">[% L.textarea_tag(id_base _ '.text_as_restricted_html', SELF.text_block.text_as_restricted_html, id = id_base _ '_text', style = style _ '; height: 200px', class='texteditor') %]</td>
   </tr>
  </table>
 
  <p>
-  [% L.button_tag('submit_edit_text_block_form("' _ id_base _ '")', LxERP.t8('Save')) %]
-  <a href="#" onclick="cancel_edit_text_block_form('[% id_base %]')">[%- LxERP.t8("Cancel") %]</a>
+  [%- L.ajax_submit_tag('controller.pl?action=RequirementSpecTextBlock/ajax_' _ (SELF.text_block.id ? 'update' : 'create'), '#' _ id_base _ '_form', LxERP.t8('Save')) %]
+  <a href="#" onclick="kivi.requirement_spec.cancel_edit_text_block_form('[% id_base %]')">[%- LxERP.t8("Cancel") %]</a>
  </p>
 
-[%- IF PREDEFINED_TEXTS.size %]
+[%- IF SELF.predefined_texts.size %]
  <script type="text/javascript">
 <!--
 function insert_selected_predefined_text() {
   var data = {
-[%- FOREACH pt = PREDEFINED_TEXTS %]
+[%- FOREACH pt = SELF.predefined_texts %]
     [% HTML.escape(pt.id) %]: {
       title: "[% JavaScript.escape(pt.title) %]",
       text: "[% JavaScript.escape(pt.text) %]"
@@ -54,19 +67,13 @@ function insert_selected_predefined_text() {
 
   var title_ctrl = $('#[% id_base %]_title');
 
-  if (   ((title_ctrl.val() || '') != '')
-      && ((pt.title         || '') != '')
-      && confirm('[%- LxERP.t8("Do you want to overwrite your current title?") %]'))
+  if (   ((pt.title         || '') != '')
+      && (   ((title_ctrl.val() || '') == '')
+          || confirm('[%- LxERP.t8("Do you want to overwrite your current title?") %]')))
     title_ctrl.val(pt.title);
 
-  if ((pt.text || '') != '') {
-    var text_ctrl = $('#[% id_base %]_text');
-    var text      = text_ctrl.val() || '';
-    if (text != '')
-      text += "\n\n";
-
-    text_ctrl.val(text + pt.text);
-  }
+  if ((pt.text || '') != '')
+    $('#[% id_base %]_text').ckeditorGet().insertHtml(pt.text);
 
   return false;
 }