Pflichtenhefttextblöcke: HTML nutzen
[kivitendo-erp.git] / templates / webpages / requirement_spec_text_block / _form.html
1 [%- USE LxERP -%][%- USE L -%][%- USE HTML -%][%- USE JavaScript -%][% SET style="width: 500px" %]
2 [% DEFAULT id_base = 'edit_text_block_' _ SELF.text_block.id %]
3 <form method="post" id="[% id_base %]_form">
4  <h2>
5   [%- IF SELF.text_block.id %]
6    [%- SET title = SELF.text_block.title || '(' _ LxERP.t8('No title yet') _ ')' %]
7    [%- LxERP.t8("Edit text block '#1'", title) %]
8   [%- ELSE %]
9    [%- LxERP.t8("Add text block") %]
10   [%- END %]
11  </h2>
12
13  [% L.hidden_tag('form_prefix',                    id_base,            id=id_base _ '_form_prefix') %]
14  [% L.hidden_tag('id',                             SELF.text_block.id, id=id_base _ '_id') %]
15  [% L.hidden_tag(id_base _ '.requirement_spec_id', SELF.text_block.requirement_spec_id) %]
16  [% L.hidden_tag(id_base _ '.output_position',     SELF.text_block.output_position) %]
17  [% IF insert_after %]
18   [% L.hidden_tag(id_base _ '.insert_after',       insert_after) %]
19  [% END %]
20
21  <table>
22   <tr>
23    <th align="right">[%- LxERP.t8("Title") %]:</th>
24    <td>[% L.input_tag(id_base _ '.title', SELF.text_block.title, style = style) %]</td>
25   </tr>
26
27  [%- IF SELF.predefined_texts.size %]
28   <tr>
29    <th align="right">[%- LxERP.t8("Pre-defined Texts") %]:</th>
30    <td>
31     [%- L.select_tag(id_base _ '_predefined_text_block', SELF.predefined_texts, title_key='description', style=style) %]
32     <a href="#" onclick="insert_selected_predefined_text()">[%- LxERP.t8("Insert") %]</a>
33    </td>
34   </tr>
35  [%- END %]
36
37   <tr>
38    <th align="right" valign="top">[%- LxERP.t8("Description") %]:</th>
39    <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>
40   </tr>
41  </table>
42
43  <p>
44   [%- L.ajax_submit_tag('controller.pl?action=RequirementSpecTextBlock/ajax_' _ (SELF.text_block.id ? 'update' : 'create'), '#' _ id_base _ '_form', LxERP.t8('Save')) %]
45   <a href="#" onclick="kivi.requirement_spec.cancel_edit_text_block_form('[% id_base %]')">[%- LxERP.t8("Cancel") %]</a>
46  </p>
47
48 [%- IF SELF.predefined_texts.size %]
49  <script type="text/javascript">
50 <!--
51 function insert_selected_predefined_text() {
52   var data = {
53 [%- FOREACH pt = SELF.predefined_texts %]
54     [% HTML.escape(pt.id) %]: {
55       title: "[% JavaScript.escape(pt.title) %]",
56       text: "[% JavaScript.escape(pt.text) %]"
57     }[% UNLESS loop.last %],[% END %]
58 [% END %]
59   }
60
61   var id = $('#[% id_base %]_predefined_text_block').val();
62   var pt = data[id];
63   if (!pt) {
64     console.log("insert: case 1; id: " + id);
65     return false;
66   }
67
68   var title_ctrl = $('#[% id_base %]_title');
69
70   if (   ((pt.title         || '') != '')
71       && (   ((title_ctrl.val() || '') == '')
72           || confirm('[%- LxERP.t8("Do you want to overwrite your current title?") %]')))
73     title_ctrl.val(pt.title);
74
75   if ((pt.text || '') != '')
76     $('#[% id_base %]_text').ckeditorGet().insertHtml(pt.text);
77
78   return false;
79 }
80 -->
81  </script>
82 [%- END %]
83 </form>