Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 50b4e051

Von Tamino Steinert vor 8 Monaten hinzugefügt

  • ID 50b4e0513ea3c4150a9455aff41487cf09ce7c18
  • Vorgänger f846a634
  • Nachfolger 96ff2c0b

EmailJournal: Basisfunktionalität fürs Verlinken und Neu erstellen von Belegen

Unterschiede anzeigen:

templates/design40_webpages/email_journal/show.html
2 2
[% USE L %]
3 3
[% USE LxERP %]
4 4
[% USE P %]
5
[% USE T8 %]
5 6

  
6
<h1>[% FORM.title %]</h1>
7

  
8
[% INCLUDE 'common/flash.html' %]
9

  
10
<div class="wrapper" id="wrapper-0">
11

  
12
<div class="input-panel" style="vertical-align:top;" id="wrapper-1">
13

  
7
[% BLOCK filter_toggle_panel # can't change name %]
14 8
<table id="email_journal_details" class="tbl-horizontal">
15 9
  <tbody>
16 10
    <tr>
17
      <th>[% LxERP.t8("From") %]</th>
18
      <td>[% L.input_tag('from', HTML.escape(SELF.entry.from), style="color:black", class="wi-verywide", disabled=1) %]</td>
11
      <th>[% 'From' | $T8 %]</th>
12
      <td>[% L.input_tag('from',  SELF.entry.from, style="color:black", class="wi-verywide", disabled=1) %]</td>
19 13
    </tr>
20 14
    <tr>
21
      <th>[% LxERP.t8("Recipients") %]</th>
22
      <td>[% L.input_tag('recipients', HTML.escape(SELF.entry.recipients), style="color:black", class="wi-verywide", disabled=1) %]</td>
15
      <th>[% 'Recipients' | $T8 %]</th>
16
      <td>[% L.input_tag('recipients', SELF.entry.recipients, style="color:black", class="wi-verywide", disabled=1) %]</td>
23 17
    </tr>
24 18
    <tr>
25
      <th>[% LxERP.t8("Subject") %]</th>
26
      <td>[% L.input_tag('subject', HTML.escape(SELF.entry.subject), style="color:black", class="wi-verywide", disabled=1) %]</td>
19
      <th>[% 'Subject' | $T8 %]</th>
20
      <td>[% L.input_tag('subject', SELF.entry.subject, style="color:black", class="wi-verywide", disabled=1) %]</td>
27 21
    </tr>
28 22
    <tr>
29
      <th>[% LxERP.t8("Sent on") %]</th>
30
      <td>[% L.input_tag('sent_on', HTML.escape(SELF.entry.sent_on.to_lxoffice("precision" => "second")), style="color:black", class="wi-verywide", disabled=1) %]</td>
23
      <th>[% 'Sent on' | $T8 %]</th>
24
      <td>[% L.input_tag('sent_on', SELF.entry.sent_on.to_lxoffice("precision" => "second"), style="color:black", class="wi-verywide", disabled=1) %]</td>
31 25
    </tr>
32 26
    <tr>
33
      <th>[% LxERP.t8("Status") %]</th>
27
      <th>[% 'Status' | $T8 %]</th>
34 28
      <td>[% L.input_tag('status', P.email_journal.entry_status(SELF.entry), style="color:black", class="wi-verywide", disabled=1) %]</td>
35 29
    </tr>
36 30
    <tr>
37
      <th>[% LxERP.t8("Extended status") %]</th>
31
      <th>[% 'Extended status' | $T8 %]</th>
38 32
      <td>
39
        [% L.textarea_tag('extended_status', HTML.escape(SELF.entry.extended_status), wrap="soft", style="color:black; height:25px", class="wi-verywide", disabled=1) %]
33
        [% L.textarea_tag('extended_status', SELF.entry.extended_status, wrap="soft", style="color:black; height:25px", class="wi-verywide", disabled=1) %]
40 34
      </td>
41 35
    </tr>
42 36
    <tr>
43
      <th>[% LxERP.t8("Headers") %]</th>
37
      <th>[% 'Headers' | $T8 %]</th>
44 38
      <td>
45 39
        [% L.textarea_tag('headers', HTML.escape(SELF.entry.headers), wrap="soft", style="color:black; height:25px", class="wi-verywide", disabled=1) %]
46 40
      </td>
47 41
    </tr>
48 42
    <tr>
49
      <th>[% LxERP.t8("Body") %]</th>
43
      <th>[% 'Body' | $T8 %]</th>
50 44
      <td>
51 45
        [% IF SELF.entry.headers.match('(?i)content-type:.*text/html') %]
52 46
          <div style="border:1px solid black;">
53 47
          [% P.restricted_html(SELF.entry.body) %]
54 48
          </div>
55 49
        [% ELSE %]
56
          [% L.textarea_tag('body', HTML.escape(SELF.entry.body), wrap="soft", style="color:black; height:200px", class="wi-verywide", disabled=1) %]
50
          [% L.textarea_tag('body', SELF.entry.body, wrap="soft", style="color:black; height:200px", class="wi-verywide", disabled=1) %]
57 51
        [% END %]
58 52
      </td>
59 53
    </tr>
60 54
  </tbody>
61 55
</table>
56
[% END %]
57

  
58

  
59

  
60
<h1>[% FORM.title %]</h1>
61

  
62
[% INCLUDE 'common/flash.html' %]
63

  
64
<div class="wrapper" id="wrapper-0">
65

  
66
<div class="wrapper">
67
  [%
68
    display_status = 'open';
69
    button_closed  = LxERP.t8('Show Email');
70
    button_open    = LxERP.t8('Hide Email');
71
    INCLUDE 'common/toggle_panel.html';
72
  %]
73
</div><!-- /.wrapper -->
62 74

  
63
</div> <!-- wrapper-1 -->
64 75

  
65 76
[% SET attachments = SELF.entry.attachments_sorted %]
66 77

  
......
68 79

  
69 80
[% IF attachments.size %]
70 81
<table id="email_journal_details" class="tbl-list">
71
  <caption>[% LxERP.t8("Attachments") %]</caption>
82
  <caption>[% 'Attachments' | $T8 %]</caption>
72 83
  <thead>
73 84
    <tr>
74
      <th>[% LxERP.t8("Attachment name") %]</th>
75
      <th>[% LxERP.t8("MIME type") %]</th>
76
      <th>[% LxERP.t8("Size") %]</th>
85
      <th>[% 'Attachment name' | $T8 %]</th>
86
      <th>[% 'MIME type' | $T8 %]</th>
87
      <th>[% 'Size' | $T8 %]</th>
77 88
    </tr>
78 89
  </thead>
79 90
  <tbody>
......
88 99
</table>
89 100
[% END %]
90 101

  
91
<form method="post" action="controller.pl" id="attachment_form">
92
  [% L.hidden_tag('id', SELF.entry.id) %]
93
  [% L.select_tag('attachment_id',
94
       attachments, value_key='id', title_key='name',
95
       with_empty=1, empty_value='', empty_title=LxERP.t8("No attachment"),
96
       'data-title'=LxERP.t8("Attachment"), class="wi-normal",
97
       onchange='kivi.EmailJournal.update_attachment_preview();'
98
       )
99
    %]
100
  [% L.select_tag('record_type', [ ["value", "Name"] ], class="wi-normal") %]
101

  
102
  [% L.button_tag('kivi.EmailJournal.create_record();', LxERP.t8('Create Record with Attachment')) %]
102
[% IF SELF.entry.status == 'imported' || SELF.entry.status == 'record_imported' %]
103
<form method="post" action="controller.pl" id="record_action_form">
104
  [% L.hidden_tag('email_journal_id', SELF.entry.id) %]
105

  
106
  <div id="action_div" class="input-panel">
107

  
108
    <div class="col">
109
    [% L.select_tag('attachment_id',
110
         attachments, value_key='id', title_key='name',
111
         default = attachments.0.id,
112
         with_empty=1, empty_value='', empty_title=LxERP.t8("No attachment"),
113
         'data-title'=LxERP.t8("Attachment"), class="wi-normal",
114
         onchange='kivi.EmailJournal.update_attachment_preview();'
115
         )
116
      %]
117
    </div>
118

  
119
    <div class="col">
120
    [% L.select_tag('record_action',
121
       # id has to start with customer_ or vendor_ for picker selection
122
       [
123
         [ LxERP.t8("Hard linking"), [
124
           {id => "link_sales_quotation",           name => LxERP.t8("Link to sales quotation")},
125
           {id => "link_sales_order_intake",        name => LxERP.t8("Link to sales order intake")},
126
           {id => "link_sales_order",               name => LxERP.t8("Link to sales order")},
127
           {id => "link_request_quotation",         name => LxERP.t8("Link to request quotation")},
128
           {id => "link_purchase_quotation_intake", name => LxERP.t8("Link to purchase quotation intake")},
129
           {id => "link_purchase_order",            name => LxERP.t8("Link to purchase order")},
130

  
131
         ] ],
132
         [ LxERP.t8("Sales"), [
133
             {id => "customer_sales_order",  name => LxERP.t8("Create sales order")},
134
             {id => "customer_sales_order_intake",  name => LxERP.t8("Create sales order intake")},
135
             {id => "customer_sales_quotation",  name => LxERP.t8("Create sales quotation")},
136
         ] ],
137
         [ LxERP.t8("Purchase"), [
138
             {id => "vendor_purchase_order", name => LxERP.t8("Create purchase order")},
139
             {id => "vendor_purchase_quotation_intake", name => LxERP.t8("Create purchase quotation intake")},
140
             {id => "vendor_request_quotation", name => LxERP.t8("Create request quotation")},
141

  
142
         ] ],
143
       ],
144
       value_key='id', title_key='name',
145
       with_empty=1, empty_value='', empty_title=LxERP.t8("No action"),
146
       with_optgroups=1,
147
       class="wi-normal",
148
       onchange='kivi.EmailJournal.update_extra_div_selection();'
149
       ) %]
150
    </div>
151

  
152
    [% FOREACH cv_type_name = [['customer', 'Customer'], ['vendor', 'Vendor']] %]
153
    [% SET cv_type = cv_type_name.0 %]
154
    [% SET cv_name = cv_type_name.1 %]
155
    <div id="[% cv_type _ "_div" %]" class="col" style="display:none">
156
      [% P.customer_vendor.picker(
157
           cv_type _ "_id", SELF.find_cv_from_email(cv_type, SELF.entry),
158
           type=cv_type, class="wi-normal", placeholder=LxERP.t8(cv_name)
159
           ) %]
160
    </div>
161
    [% END %]
162
    [% FOREACH record_type  = [
163
         'sales_quotation', 'sales_order_intake', 'sales_order',
164
         'request_quotation', 'purchase_quotation_intake', 'purchase_order'
165
         ] %]
166
    <div id="[% "link_" _ record_type _ "_div" %]" class="col" style="display:none">
167
      [% L.input_tag(record_type _ "_id", '',
168
           style="color:black", class="wi-normal",
169
           placeholder=record_type _ " id") %]
170
    </div>
171
    [% END %]
172
    <div id="placeholder_div" class="col" style="display:block">
173
      [% L.input_tag('cv_placeholder', '',
174
           style="color:black", class="wi-normal", disabled=1,
175
           placeholder=LxERP.t8("Select action first"),
176
           ) %]
177
    </div>
178

  
179
    <div class="col">
180
      [% L.button_tag('kivi.EmailJournal.apply_record_action();', LxERP.t8('Apply with Attachment')) %]
181
    </div>
182
  </div> <!-- action_div -->
103 183
</form>
104 184

  
105
<!--  <div id="attachment_preview"> -->
106
[% P.email_journal.attachment_preview(attachments.0,
107
     style="width:489px;border:1px solid black;margin:9px") %]
185
<!-- kivi.EmailJournal.update_attachment_preview -->
186
<div id="attachment_preview"></div>
187
[% END %]
108 188

  
109 189
</div> <!-- wrapper-2 -->
110 190

  

Auch abrufbar als: Unified diff