Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision eae4302d

Von Hans Peter Schlaepfer vor fast 6 Jahren hinzugefügt

  • ID eae4302db1c133d0925af7d5da2bb93840589664
  • Vorgänger 551b5ac6
  • Nachfolger dfaa036e

Neues kivitendo Design restliche Aenderungen in templates/webpages/b*

Dateien in background_job/* bankimport/* bp/* und buchungsgruppen/*

Unterschiede anzeigen:

templates/webpages/background_job/form.html
1
[% USE HTML %][% USE L %][% USE LxERP %]
1
[% USE HTML %]
2
[% USE L %]
3
[% USE LxERP %]
2 4

  
3
 <h1>[% FORM.title %]</h1>
5
<h1>[% FORM.title %]</h1>
4 6

  
5
[%- INCLUDE 'common/flash.html' %]
7
[% INCLUDE 'common/flash.html' %]
6 8

  
7
 <form method="post" action="controller.pl" id="form">
9
<form method="post" action="controller.pl" id="form">
8 10
  [% L.hidden_tag("id", SELF.background_job.id) %]
9 11
  [% L.hidden_tag("back_to", SELF.back_to) %]
10 12

  
11 13
  <table>
12
   <tr>
13
    <th align="right">[%- LxERP.t8('Active') %]</th>
14
    <td>[% L.yes_no_tag("background_job.active", SELF.background_job.active) %]</td>
15
   </tr>
16

  
17
   <tr>
18
    <th align="right">[%- LxERP.t8('Execution type') %]</th>
19
    <td>
20
      [% L.select_tag('background_job.type', [
21
                [ 'once', LxERP.t8('one-time execution') ],
22
                [ 'interval', LxERP.t8('repeated execution') ]
23
              ],
24
              'default' = SELF.background_job.type) %]
25
    </td>
26
   </tr>
27

  
28
   <tr>
29
    <th align="right">[%- LxERP.t8('Package name') %]</th>
30
    <td>[% L.select_tag("background_job.package_name", JOB_CLASSES, 'default' => SELF.background_job.package_name) %]</td>
31
   </tr>
32

  
33
   <tr>
34
    <th align="right">[%- LxERP.t8('Execution schedule') %]</th>
35
    <td>[% L.input_tag("background_job.cron_spec", SELF.background_job.cron_spec, 'size' => 40) %]</td>
36
   </tr>
37

  
38
   <tr>
39
    <th align="right" valign="top">[%- LxERP.t8('Data') %]</th>
40
    <td valign="top">[% L.textarea_tag("background_job.data", SELF.background_job.data, 'cols' => 80, 'rows' => 10) %]</td>
41
   </tr>
42

  
14
    <tbody>
15
       <tr>
16
        <th>[% LxERP.t8('Active') %]</th>
17
        <td>[% L.yes_no_tag("background_job.active", SELF.background_job.active) %]</td>
18
       </tr>
19
       <tr>
20
        <th>[% LxERP.t8('Execution type') %]</th>
21
        <td>[% 
22
          L.select_tag('background_job.type', [
23
            [ 'once', LxERP.t8('one-time execution') ],
24
            [ 'interval', LxERP.t8('repeated execution') ]
25
          ],
26
          'default' = SELF.background_job.type) 
27
        %]</td>
28
       </tr>
29
       <tr>
30
        <th>[% LxERP.t8('Package name') %]</th>
31
        <td>[% L.select_tag("background_job.package_name", JOB_CLASSES, 'default' => SELF.background_job.package_name) %]</td>
32
       </tr>
33
       <tr>
34
        <th>[% LxERP.t8('Execution schedule') %]</th>
35
        <td>[% L.input_tag("background_job.cron_spec", SELF.background_job.cron_spec, 'size' => 40) %]</td>
36
       </tr>
37
       <tr>
38
        <th>[% LxERP.t8('Data') %]</th>
39
        <td>[% L.textarea_tag("background_job.data", SELF.background_job.data, 'cols' => 80, 'rows' => 10) %]</td>
40
       </tr>
41
    </tbody>
43 42
  </table>
44
 </form>
43

  
44
</form>
templates/webpages/background_job/list.html
1
[% USE HTML %][% USE L %][% USE LxERP %]
1
[% USE HTML %]
2
[% USE L %]
3
[% USE LxERP %]
2 4

  
3
 <h1>[% FORM.title %]</h1>
5
<h1>[% FORM.title %]</h1>
4 6

  
5
[%- INCLUDE 'common/flash.html' %]
7
[% INCLUDE 'common/flash.html' %]
6 8

  
7
  [% IF !BACKGROUND_JOBS.size %]
8
   <p>
9
    [%- LxERP.t8('No background job has been created yet.') %]
10
   </p>
9
[% IF !BACKGROUND_JOBS.size %]
10
  <p>[% LxERP.t8('No background job has been created yet.') %]</p>
11 11

  
12
  [%- ELSE %]
13
   <table id="background_job_list" width="100%">
12
[% ELSE %]
13
  <table id="background_job_list" width="100%">
14 14
    <thead>
15
     <tr class="listheading">
16
      <th>[% L.sortable_table_header('package_name') %]</th>
17
      <th>[% L.sortable_table_header('type') %]</th>
18
      <th>[% L.sortable_table_header('active') %]</th>
19
      <th>[% L.sortable_table_header('cron_spec') %]</th>
20
      <th>[% L.sortable_table_header('last_run_at') %]</th>
21
      <th>[% L.sortable_table_header('next_run_at') %]</th>
22
     </tr>
15
      <tr>
16
        <th>[% L.sortable_table_header('package_name') %]</th>
17
        <th>[% L.sortable_table_header('type') %]</th>
18
        <th>[% L.sortable_table_header('active') %]</th>
19
        <th>[% L.sortable_table_header('cron_spec') %]</th>
20
        <th>[% L.sortable_table_header('last_run_at') %]</th>
21
        <th>[% L.sortable_table_header('next_run_at') %]</th>
22
      </tr>
23 23
    </thead>
24 24

  
25 25
    <tbody>
26
    [%- FOREACH background_job = BACKGROUND_JOBS %]
27
    <tr class="listrow[% loop.count % 2 %]" id="background_job_id_[% background_job.id %]">
28
     <td>
29
      <a href="[% SELF.url_for(action => 'edit', id => background_job.id, back_to => SELF.get_callback) %]">
30
       [%- HTML.escape(background_job.package_name) %]
31
      </a>
32
     </td>
33
     <td>
34
      [%- IF background_job.type == 'once' %]
35
       [%- LxERP.t8('one-time execution') %]
36
      [%- ELSIF background_job.type == 'interval' %]
37
       [%- LxERP.t8('repeated execution') %]
38
      [% ELSE %]
39
       [%- HTML.escape(background_job.type) %]
40
      [%- END %]
41
     </td>
42
     <td align="right">[% IF background_job.active %][%- LxERP.t8('yes') %][% ELSE %][%- LxERP.t8('no') %][%- END %]</td>
43
     <td>[%- HTML.escape(background_job.cron_spec) %]</td>
44
     <td>
45
      [%- IF background_job.last_run_at %]
46
       [%- HTML.escape(background_job.last_run_at.to_lxoffice('precision' => 'second')) %]
47
      [%- ELSE %]
48
       [%- LxERP.t8('never') %]
49
      [%- END %]
50
     </td>
26
    [% FOREACH background_job = BACKGROUND_JOBS %]
27
      <tr class="listrow[% loop.count % 2 %]" id="background_job_id_[% background_job.id %]">
28
        <td><a href="[% SELF.url_for(action => 'edit', id => background_job.id, back_to => SELF.get_callback) %]">[% HTML.escape(background_job.package_name) %]</a></td>
29
        <td>
30
          [% IF background_job.type == 'once' %]
31
            [% LxERP.t8('one-time execution') %]
32
          [% ELSIF background_job.type == 'interval' %]
33
            [% LxERP.t8('repeated execution') %]
34
          [% ELSE %]
35
            [% HTML.escape(background_job.type) %]
36
          [% END %]
37
        </td>
38
        <td>[% IF background_job.active %][% LxERP.t8('yes') %][% ELSE %][% LxERP.t8('no') %][% END %]</td>
39
        <td>[% HTML.escape(background_job.cron_spec) %]</td>
40
        <td>
41
          [% IF background_job.last_run_at %]
42
            [% HTML.escape(background_job.last_run_at.to_lxoffice('precision' => 'second')) %]
43
          [% ELSE %]
44
            [% LxERP.t8('never') %]
45
          [% END %]
46
        </td>
51 47

  
52
     <td>
53
      [%- IF background_job.next_run_at %]
54
       [%- HTML.escape(background_job.next_run_at.to_lxoffice('precision' => 'second')) %]
55
      [%- ELSE %]
56
       [%- LxERP.t8('not set') %]
57
      [%- END %]
58
     </td>
59
    </tr>
60
    [%- END %]
48
        <td>
49
          [% IF background_job.next_run_at %]
50
            [% HTML.escape(background_job.next_run_at.to_lxoffice('precision' => 'second')) %]
51
          [% ELSE %]
52
            [% LxERP.t8('not set') %]
53
          [% END %]
54
        </td>
55
      </tr>
56
    [% END %]
61 57
    </tbody>
62
   </table>
63
  [%- END %]
58
  </table>
59
[% END %]
64 60

  
65
  [% L.paginate_controls %]
61
[% L.paginate_controls %]
templates/webpages/background_job_history/_filter.html
1
[%- USE L %][%- USE LxERP %][%- USE HTML %]
1
[% USE L %]
2
[% USE LxERP %]
3
[% USE HTML %]
4

  
2 5
<form action="controller.pl" method="post" id="filter_form">
3
 <div class="filter_toggle">
4
  <a href="#" onClick="javascript:$('.filter_toggle').toggle()">[% LxERP.t8('Show Filter') %]</a>
5
  [% IF SELF.filter_summary %]([% LxERP.t8("Current filter") %]: [% SELF.filter_summary %])[% END %]
6
 </div>
7

  
8
 <div class="filter_toggle" style="display:none">
9
  <a href="#" onClick="javascript:$('.filter_toggle').toggle()">[% LxERP.t8('Hide Filter') %]</a>
10
  <table id="filter_table">
11
   <tr>
12
    <th align="right">[% LxERP.t8('Package name') %]</th>
13
    <td>[% L.input_tag('filter.package_name:substr::ilike', filter.package_name_substr__ilike, size = 20) %]</td>
14
   </tr>
15
   <tr>
16
    <th align="right">[% LxERP.t8('Result') %]</th>
17
    <td>[% L.input_tag('filter.result:substr::ilike', filter.result_substr__ilike, size = 20) %]</td>
18
   </tr>
19
   <tr>
20
    <th align="right">[% LxERP.t8('Error') %]</th>
21
    <td>[% L.input_tag('filter.error:substr::ilike', filter.error_substr__ilike, size = 20) %]</td>
22
   </tr>
23
   <tr>
24
    <th align="right">[% LxERP.t8('Status') %]</th>
25
    <td>[% L.select_tag('filter.status:eq_ignore_empty', [ [ '', '' ], [ 'failure', LxERP.t8('failed') ], [ 'success', LxERP.t8('succeeded') ] ], default=filter.status_eq_ignore_empty) %]</td>
26
   </tr>
27
   <tr>
28
    <th align="right">[% LxERP.t8('Execution date from') %]</th>
29
    <td>[% L.date_tag('filter.run_at:date::ge', filter.run_at_date__ge) %]</td>
30
   </tr>
31
   <tr>
32
    <th align="right">[% LxERP.t8('Execution date to') %]</th>
33
    <td>[% L.date_tag('filter.run_at:date::le', filter.run_at_date__le) %]</td>
34
   </tr>
35
  </table>
36

  
37
  [% L.hidden_tag('action', 'BackgroundJobHistory/dispatch') %]
38
  [% L.hidden_tag('sort_by', FORM.sort_by) %]
39
  [% L.hidden_tag('sort_dir', FORM.sort_dir) %]
40
  [% L.hidden_tag('page', FORM.page) %]
41
  [% L.submit_tag('action_list', LxERP.t8('Continue'))%]
42 6

  
7
<div class="wrapper">
8

  
9
[% BLOCK filter_toggle_panel %]
10
<table id="filter_table" class="tbl-horizontal">
11
  <tr>
12
    <th>[% LxERP.t8('Package name') %]</th>
13
    <td>[% L.input_tag('filter.package_name:substr::ilike', filter.package_name_substr__ilike, size = 10, class='wi-lightwide') %]</td>
14
  </tr>
15
  <tr>
16
    <th>[% LxERP.t8('Result') %]</th>
17
    <td>[% L.input_tag('filter.result:substr::ilike', filter.result_substr__ilike, size = 10, class='wi-lightwide') %]</td>
18
  </tr>
19
  <tr>
20
    <th>[% LxERP.t8('Error') %]</th>
21
    <td>[% L.input_tag('filter.error:substr::ilike', filter.error_substr__ilike, size = 10, class='wi-lightwide') %]</td>
22
  </tr>
23
  <tr>
24
    <th>[% LxERP.t8('Status') %]</th>
25
    <td>[% L.select_tag('filter.status:eq_ignore_empty', [ [ '', '' ], [ 'failure', LxERP.t8('failed') ], [ 'success', LxERP.t8('succeeded') ] ], default=filter.status_eq_ignore_empty, class='wi-lightwide') %]</td>
26
  </tr>
27
  <tr>
28
    <th>[% LxERP.t8('Execution date from') %]</th>
29
    <td>[% L.date_tag('filter.run_at:date::ge', filter.run_at_date__ge, class='wi-date') %]</td>
30
  </tr>
31
  <tr>
32
    <th>[% LxERP.t8('Execution date to') %]</th>
33
    <td>[% L.date_tag('filter.run_at:date::le', filter.run_at_date__le, class='wi-date') %]</td>
34
  </tr>
35
</table>
36

  
37

  
38
[% L.hidden_tag('action', 'BackgroundJobHistory/dispatch') %]
39
[% L.hidden_tag('sort_by', FORM.sort_by) %]
40
[% L.hidden_tag('sort_dir', FORM.sort_dir) %]
41
[% L.hidden_tag('page', FORM.page) %]
42
<div class="buttons">
43
  [% L.submit_tag('action_list', LxERP.t8('Continue'))%]
43 44
  [% L.button_tag("\$('#filter_form').resetForm();", LxERP.t8('Reset')) %]
45
</div>
46

  
47
[% END # /BLOCK filter_toggle_panel %]
48

  
49
[% INCLUDE 'common/toggle_panel.html' %]
50
</div><!-- /.wrapper -->
44 51

  
45
 </div>
46 52

  
47 53
</form>
templates/webpages/background_job_history/list.html
1
[% USE HTML %][% USE L %][% USE LxERP %]
1
[% USE HTML %]
2
[% USE L %]
3
[% USE LxERP %]
2 4

  
3 5
<h1>[% FORM.title %]</h1>
4 6

  
5
[%- INCLUDE 'common/flash.html' %]
7
[% INCLUDE 'common/flash.html' %]
6 8

  
7
[%- PROCESS 'background_job_history/_filter.html' filter=SELF.models.filtered.laundered %]
9
[% PROCESS 'background_job_history/_filter.html' filter=SELF.models.filtered.laundered %]
8 10

  
11
<div class="wrapper">
9 12
[% IF !ENTRIES.size %]
10
 <p>
11
  [%- LxERP.t8('There are no entries in the background job history.') %]
12
 </p>
13

  
14
[%- ELSE %]
15
 <table id="background_job_history_list" class="background_job_list" width="100%">
16
  <thead>
17
   <tr class="listheading">
18
    <th>[% L.sortable_table_header('package_name') %]</th>
19
    <th>[% L.sortable_table_header('run_at') %]</th>
20
    <th>[% L.sortable_table_header('status') %]</th>
21
    <th>[% L.sortable_table_header('result') %]</th>
22
    <th>[% L.sortable_table_header('error') %]</th>
23
   </tr>
24
  </thead>
25

  
26
  <tbody>
27
  [%- FOREACH entry = ENTRIES %]
28
  <tr class="listrow[% loop.count % 2 %]" id="background_job_history_id_[% entry.id %]">
29
   <td>
30
    <a href="[% SELF.url_for(action => 'show', id => entry.id, back_to => SELF.models.get_callback) %]">
31
     [%- HTML.escape(entry.package_name) %]
32
    </a>
33
   </td>
34
   <td>[%- HTML.escape(entry.run_at.to_lxoffice('precision' => 'second')) %]</td>
35
   <td>
36
    [%- IF entry.status == 'success' %]
37
     [%- LxERP.t8('succeeded') %]
38
    [%- ELSIF entry.status == 'failure' %]
39
     [%- LxERP.t8('failed') %]
40
    [%- ELSE %]
41
     [%- HTML.escape(entry.status) %]
42
    [%- END %]
43
   </td>
44
   <td>[%- HTML.escape(entry.result) %]</td>
45
   <td>[% IF entry.error_col %]<pre>[%- HTML.escape(L.truncate(entry.error_col)) %]</pre>[%- END %]</td>
46
  </tr>
47
  [%- END %]
48
  </tbody>
49
 </table>
50
[%- END %]
13
  <p>[% LxERP.t8('There are no entries in the background job history.') %]</p>
14

  
15
[% ELSE %]
16
  <table id="background_job_history_list" class="background_job_list tbl-list wi-moderate">
17
    <thead>
18
      <tr>
19
        <th>[% L.sortable_table_header('package_name') %]</th>
20
        <th>[% L.sortable_table_header('run_at') %]</th>
21
        <th>[% L.sortable_table_header('status') %]</th>
22
        <th>[% L.sortable_table_header('result') %]</th>
23
        <th>[% L.sortable_table_header('error') %]</th>
24
      </tr>
25
    </thead>
26

  
27
    <tbody>
28
    [% FOREACH entry = ENTRIES %]
29
      <tr class="listrow[% loop.count % 2 %]" id="background_job_history_id_[% entry.id %]">
30
        <td><a href="[% SELF.url_for(action => 'show', id => entry.id, back_to => SELF.models.get_callback) %]">[% HTML.escape(entry.package_name) %]</a></td>
31
        <td>[% HTML.escape(entry.run_at.to_lxoffice('precision' => 'second')) %]</td>
32
        <td>
33
          [% IF entry.status == 'success' %]
34
            [% LxERP.t8('succeeded') %]
35
          [% ELSIF entry.status == 'failure' %]
36
            [% LxERP.t8('failed') %]
37
          [% ELSE %]
38
            [% HTML.escape(entry.status) %]
39
          [% END %]
40
        </td>
41
        <td>[% HTML.escape(entry.result) %]</td>
42
        <td>[% IF entry.error_col %]<pre>[% HTML.escape(L.truncate(entry.error_col)) %]</pre>[% END %]</td>
43
      </tr>
44
    [% END %]
45
    </tbody>
46
  </table>
47

  
48
[% END %]
51 49

  
52 50
[% L.paginate_controls %]
51
</div><!-- /.wrapper -->
52

  
templates/webpages/background_job_history/show.html
1
[% USE HTML %][% USE L %][% USE LxERP %]
1
[% USE HTML %]
2
[% USE L %]
3
[% USE LxERP %]
2 4

  
3
 <h1>[% FORM.title %]</h1>
5
<h1>[% FORM.title %]</h1>
4 6

  
5
[%- INCLUDE 'common/flash.html' %]
7
[% INCLUDE 'common/flash.html' %]
6 8

  
7
 <table id="background_job_history_details" class="background_job_details">
9
<table id="background_job_history_details" class="background_job_details">
8 10
  <tbody>
9
   <tr class="listrow0">
10
    <th>[%- LxERP.t8('Package name') %]</th>
11
    <td>[%- HTML.escape(SELF.history.package_name) %]</td>
12
   </tr>
13

  
14
   <tr class="listrow1">
15
    <th>[%- LxERP.t8('Run at') %]</th>
16
    <td>[%- HTML.escape(SELF.history.run_at.to_lxoffice('precision' => 'second')) %]</td>
17
   </tr>
18

  
19
   <tr class="listrow0">
20
    <th>[%- LxERP.t8('Execution status') %]</th>
21
    <td>
22
     [%- IF SELF.history.status == 'success' %]
23
     [%- LxERP.t8('succeeded') %]
24
     [%- ELSIF SELF.history.status == 'failed' %]
25
     [%- LxERP.t8('failed') %]
26
     [%- ELSE %]
27
     [%- HTML.escape(SELF.history.status) %]
28
     [%- END %]
29
    </td>
30
   </tr>
31

  
32
   <tr class="listrow1">
33
    <th>[%- LxERP.t8('Result') %]</th>
34
    <td>[%- HTML.escape(SELF.history.result) %]</td>
35
   </tr>
36

  
37
   <tr class="listrow0">
38
    <th>[%- LxERP.t8('Error') %]</th>
39
    <td>[% IF SELF.history.error_col %]<pre>[%- HTML.escape(SELF.history.error_col) %]</pre>[%- END %]</td>
40
   </tr>
41

  
42
   <tr class="listrow1">
43
    <th>[%- LxERP.t8('Data') %]</th>
44
    <td>[% IF SELF.history.data %]<pre>[%- HTML.escape(SELF.history.data) %]</pre>[%- END %]</td>
45
   </tr>
11
    <tr>
12
      <th>[% LxERP.t8('Package name') %]</th>
13
      <td>[% HTML.escape(SELF.history.package_name) %]</td>
14
    </tr>
15
    <tr>
16
      <th>[% LxERP.t8('Run at') %]</th>
17
      <td>[% HTML.escape(SELF.history.run_at.to_lxoffice('precision' => 'second')) %]</td>
18
    </tr>
19
    <tr>
20
     <th>[% LxERP.t8('Execution status') %]</th>
21
      <td>
22
        [% IF SELF.history.status == 'success' %]
23
          [% LxERP.t8('succeeded') %]
24
        [% ELSIF SELF.history.status == 'failed' %]
25
          [% LxERP.t8('failed') %]
26
        [% ELSE %]
27
          [% HTML.escape(SELF.history.status) %]
28
        [% END %]
29
      </td>
30
    </tr>
31
    <tr>
32
      <th>[% LxERP.t8('Result') %]</th>
33
      <td>[% HTML.escape(SELF.history.result) %]</td>
34
    </tr>
35
    <tr>
36
      <th>[% LxERP.t8('Error') %]</th>
37
      <td>[% IF SELF.history.error_col %]<pre>[% HTML.escape(SELF.history.error_col) %]
38
      </pre>
39
      [% END %]</td>
40
    </tr>
41
    <tr>
42
      <th>[% LxERP.t8('Data') %]</th>
43
      <td>[% IF SELF.history.data %]<pre>[% HTML.escape(SELF.history.data) %]
44
      </pre>
45
      [% END %]</td>
46
    </tr>
46 47
  </tbody>
47 48
 </table>
templates/webpages/bankimport/form.html
1
[%- USE HTML %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE T8 %]
1
[% USE HTML %]
2
[% USE LxERP %]
3
[% USE L %]
4
[% USE T8 %]
5 5

  
6
 <div class="listtop">[% FORM.title %]</div>
6
<h1>[% FORM.title %]</h1>
7 7

  
8
 [% IF profile %]
9
 <p>
10
 [% "Import a MT940 file:" | $T8 %]
11
 </p>
12

  
13
 <form method="post" action="controller.pl" enctype="multipart/form-data" id="form">
8
<div class="wrapper">
9
[% IF profile %]
10
  <h3 class="caption">[% "Import a MT940 file" | $T8 %]</h3>
11
  <form method="post" action="controller.pl" enctype="multipart/form-data" id="form" class="box">
14 12
    [% L.input_tag('file', '', type => 'file', accept => '*') %]
15
 </form>
16
 [% ELSE %]
17
 <p>
18
 [% "Please create a CSV import profile called \"MT940\" for the import type bank transactions:" | $T8 %] <a href="[% SELF.url_for(controller => 'CsvImport', action => 'new', 'profile.type' => 'bank_transactions' ) %]">CsvImport</a>
19
 </p>
20
 [% END %]
13
  </form>
14
[% ELSE %]
15
  <p>[% "Please create a CSV import profile called \"MT940\" for the import type bank transactions:" | $T8 %] <a href="[% SELF.url_for(controller => 'CsvImport', action => 'new', 'profile.type' => 'bank_transactions' ) %]">CsvImport</a></p>
16
[% END %]
17
</div>
templates/webpages/bp/list_spool.html
1
[%- USE L %]
2
[%- USE HTML %]
3
[%- USE LxERP %]
4
[%- USE T8 %]
5
[%- USE url %]
6
[%- SET list_spool__callback = href _ '&sort=' _ sort %]
1
[% USE L %]
2
[% USE HTML %]
3
[% USE LxERP %]
4
[% USE T8 %]
5
[% USE url %]
6
[% SET list_spool__callback = href _ '&sort=' _ sort %]
7 7

  
8 8
<h1>[% title | html %]</h1>
9 9

  
10 10
<form method="post" action="bp.pl" id="form">
11 11

  
12
<p>
13
 [% LxERP.t8("Printer") %]: [% L.select_tag('printer', ALL_PRINTERS, title_key = 'printer_description') %]
14
</p>
15

  
16
<p>
17
[% FOREACH option IN options %]
18
  [% option %]
19
  [% ', ' UNLESS loop.last %]
20
[% END %]
21
</p>
22

  
23
<table width=100%>
24
 <tr>
25
  <td class="listheading">[% L.checkbox_tag('checkall_box', checkall='input.check_all') %]</td>
26
  <td class="listheading">[% L.link(href _ '&sort=transdate', LxERP.t8('Date')) %]</td>
27
[%- IF is_invoice %]
28
  <td class="listheading">[% L.link(href _ '&sort=invoice', LxERP.t8('Invoice')) %]</td>
29
[%- END %]
30
[%- IF is_order %]
31
  <td class="listheading">[% L.link(href _ '&sort=ordnumber', LxERP.t8('Order')) %]</td>
32
[%- END %]
33
[%- IF is_quotation %]
34
  <td class="listheading">[% L.link(href _ '&sort=quonumber', LxERP.t8('Quotation')) %]</td>
35
[%- END %]
36
  <td class="listheading">[% L.link(href _ '&sort=name', vc == 'customer' ? LxERP.t8('Customer') : LxERP.t8('Vendor')) %]</td>
37
  <td class="listheading">[% 'Spoolfile' | $T8 %]</td>
38
 </tr>
39
[%- FOREACH row = SPOOL %]
40
 <tr class="listrow[% loop.count %]">
41
  <td>[% SET list_spool__checked='checked_' _ loop.count; L.checkbox_tag(list_spool__checked, checked=$list_spool__checked, class='check_all') IF row.new_file %]</td>
42
  <td>[% row.transdate %]</td>
43
[%- IF is_invoice %]
44
  <td>[% L.link(url(row.module _ '.pl', action='edit' ,type=type, callback=list_spool__callback, id=row.id), row.invnumber) %]</td>
45
[%- END %]
46
[%- IF is_order %]
47
  <td>[% L.link(url(row.module _ '.pl', action='edit' ,type=type, callback=list_spool__callback, id=row.id), row.ordnumber) %]</td>
48
[%- END %]
49
[%- IF is_quotation %]
50
  <td>[% L.link(url(row.module _ '.pl', action='edit' ,type=type, callback=list_spool__callback, id=row.id), row.quonumber) %]</td>
51
[%- END %]
52
  <td>[% row.name | html %]</td>
53
  <td>[% L.link(LXCONFIG.paths.spool _ '/' _ row.spoolfile, row.spoolfile) %][% L.hidden_tag('spoolfile_' _ loop.count, row.spoolfile) %]</td>
54
 </tr>
55
[%- END %]
12
<div class="wrapper">
13
<table class="tbl-horizontal">
14
  <tr>
15
    <th>[% LxERP.t8("Printer") %]</th>
16
    <td>[% L.select_tag('printer', ALL_PRINTERS, title_key = 'printer_description') %]</td>
17
  </tr>
18
  <tr>
19
    <th>[% 'Options' | $T8 %]</th>
20
    <td>[% FOREACH option IN options %][% option %][% ', ' UNLESS loop.last %][% END %]</td>
21
  </tr>
22
</table>
23
</div>
56 24

  
57
[% L.hidden_tag('rowcount', SPOOL.size) %]
25
<div class="wrapper">
58 26

  
27
<table class="tbl-list">
28
  <thead>
29
    <tr>
30
      <th>[% L.checkbox_tag('checkall_box', checkall='input.check_all') %]</td>
31
      <th>[% L.link(href _ '&sort=transdate', LxERP.t8('Date')) %]</td>
32
    [% IF is_invoice %]
33
      <th>[% L.link(href _ '&sort=invoice', LxERP.t8('Invoice')) %]</td>
34
    [% END %]
35
    [% IF is_order %]
36
      <th>[% L.link(href _ '&sort=ordnumber', LxERP.t8('Order')) %]</td>
37
    [% END %]
38
    [% IF is_quotation %]
39
      <th>[% L.link(href _ '&sort=quonumber', LxERP.t8('Quotation')) %]</td>
40
    [% END %]
41
      <th>[% L.link(href _ '&sort=name', vc == 'customer' ? LxERP.t8('Customer') : LxERP.t8('Vendor')) %]</td>
42
      <th>[% 'Spoolfile' | $T8 %]</td>
43
    </tr>
44
  </thead>
45
  <tbody>
46
    [% FOREACH row = SPOOL %]
47
      <tr>
48
        <td>[% SET list_spool__checked='checked_' _ loop.count; L.checkbox_tag(list_spool__checked, checked=$list_spool__checked, class='check_all') IF row.new_file %]</td>
49
        <td>[% row.transdate %]</td>
50
      [% IF is_invoice %]
51
        <td>[% L.link(url(row.module _ '.pl', action='edit' ,type=type, callback=list_spool__callback, id=row.id), row.invnumber) %]</td>
52
      [% END %]
53
      [% IF is_order %]
54
        <td>[% L.link(url(row.module _ '.pl', action='edit' ,type=type, callback=list_spool__callback, id=row.id), row.ordnumber) %]</td>
55
      [% END %]
56
      [% IF is_quotation %]
57
        <td>[% L.link(url(row.module _ '.pl', action='edit' ,type=type, callback=list_spool__callback, id=row.id), row.quonumber) %]</td>
58
      [% END %]
59
        <td>[% row.name | html %]</td>
60
        <td>[% L.link(LXCONFIG.paths.spool _ '/' _ row.spoolfile, row.spoolfile) %][% L.hidden_tag('spoolfile_' _ loop.count, row.spoolfile) %]</td>
61
      </tr>
62
    [% END %]
63
  </tbody>
59 64
</table>
65
[% L.hidden_tag('rowcount', SPOOL.size) %]
60 66

  
61 67
[% L.hidden_tag('callback', callback) %]
62 68
[% L.hidden_tag('title', title) %]
......
72 78
[% L.hidden_tag('quonumber', quonumber) %]
73 79
[% L.hidden_tag('customer', customer) %]
74 80
[% L.hidden_tag('vendor', vendor) %]
81

  
82
</div><!-- /.wrapper -->
75 83
</form>
templates/webpages/bp/search.html
1
[%- USE L %]
2
[%- USE T8 %]
3
[%- USE LxERP %]
4
[%- USE HTML %]
1
[% USE L %]
2
[% USE T8 %]
3
[% USE LxERP %]
4
[% USE HTML %]
5

  
6
<h1>[% 'Print' | $T8 %] [% label.$type.title %]</h1>
7

  
5 8
<form method="post" action="bp.pl" id="form">
6 9

  
7
<h1>[% 'Print' | $T8 %] [% label.$type.title %]</h1>[% L.hidden_tag('title', LxERP.t8('Print') _ ' ' _ label.$type.title) %]
10
[% L.hidden_tag('title', LxERP.t8('Print') _ ' ' _ label.$type.title) %]
8 11

  
9
<table>
10
  <tr>
11
    <th align=right>[% 'Customer' | $T8 %]</th>
12
    <td colspan=3>[% L.input_tag(vc, '', size=35) %]</td>
13
  </tr>
14
[% IF show_accounts %]
15
  <tr>
16
    <th align=right>[% 'Account' | $T8 %]</th>
17
    <td colspan=3>[% L.select_tag('account', accounts, value_title_sub=\account_sub) %]</td>
18
  </tr>
19
[% END %]
20
[%- IF label.$type.invnumber %]
21
  <tr>
22
    <th align=right nowrap>[% 'Invoice Number' | $T8 %]</th>
23
    <td colspan=3>[% L.input_tag('invnumber', '', size=20) %]</td>
24
  </tr>
25
[%- END %]
26
[%- IF label.$type.ordnumber %]
27
  <tr>
28
    <th align=right nowrap>[% 'Order Number' | $T8 %]</th>
29
    <td colspan=3>[% L.input_tag('ordnumber', '', size=20) %]</td>
30
  </tr>
31
[%- END %]
32
[%- IF label.$type.quonumber %]
33
  <tr>
34
    <th align=right nowrap>[% 'Quotation Number' | $T8 %]</th>
35
    <td colspan=3>[% L.input_tag('quonumber', '', size=20) %]</td>
36
  </tr>
37
[%- END %]
38
[%- IF label.$type.donumber %]
39
  <tr>
40
    <th align=right nowrap>[% 'Delivery Order Number' | $T8 %]</th>
41
    <td colspan=3>[% L.input_tag('donumber', '', size=20) %]</td>
42
  </tr>
43
[%- END %]
44
[%- IF label.$type.chknumber %]
45
  <tr>
46
    <th align=right nowrap>[% 'Reference' | $T8 %]</th>
47
    <td colspan=3>[% L.input_tag('chknumber', '', size=20) %]</td>
48
  </tr>
49
[%- END %]
50
  <tr>
51
    <th align=right nowrap>[% 'From' | $T8 %]</th>
52
    <td>[% L.date_tag('transdatefrom') %]</td>
53
    <th align=right>[% 'Bis' | $T8 %]</th>
54
    <td>[% L.date_tag('transdateto') %]</td>
55
  </tr>
56
</table>
12
<div class="wrapper">
57 13

  
14
<table class="tbl-horizontal">
15
  <colgroup><col class="wi-small"><col class="wi-verywide"></colgroup>
16
  <tbody>
17
    <tr>
18
      <th>[% 'Customer' | $T8 %]</th>
19
      <td>[% L.input_tag(vc, '', class='wi-normal') %]</td>
20
    </tr>
21
    [% IF show_accounts %]
22
    <tr>
23
      <th>[% 'Account' | $T8 %]</th>
24
      <td>[% L.select_tag('account', accounts, value_title_sub=\account_sub, class='wi-verywide') %]</td>
25
    </tr>
26
    [% END %]
27
    [% IF label.$type.invnumber %]
28
    <tr>
29
      <th>[% 'Invoice Number' | $T8 %]</th>
30
      <td>[% L.input_tag('invnumber', '', class='wi-normal') %]</td>
31
    </tr>
32
    [% END %]
33
    [% IF label.$type.ordnumber %]
34
    <tr>
35
      <th>[% 'Order Number' | $T8 %]</th>
36
      <td>[% L.input_tag('ordnumber', '', class='wi-normal') %]</td>
37
    </tr>
38
    [% END %]
39
    [% IF label.$type.quonumber %]
40
    <tr>
41
      <th>[% 'Quotation Number' | $T8 %]</th>
42
      <td>[% L.input_tag('quonumber', '', class='wi-normal') %]</td>
43
    </tr>
44
    [% END %]
45
    [% IF label.$type.donumber %]
46
    <tr>
47
      <th>[% 'Delivery Order Number' | $T8 %]</th>
48
      <td>[% L.input_tag('donumber', '', class='wi-normal') %]</td>
49
    </tr>
50
    [% END %]
51
    [% IF label.$type.chknumber %]
52
    <tr>
53
      <th>[% 'Reference' | $T8 %]</th>
54
      <td>[% L.input_tag('chknumber', '', class='wi-normal') %]</td>
55
    </tr>
56
    [% END %]
57
    <tr>
58
      <th>[% 'Date' | $T8 %] [% 'from' | $T8 %] </th>
59
      <td class="wi-date">[% L.date_tag('transdatefrom') %] [% 'Bis' | $T8 %] [% L.date_tag('transdateto') %]</td>
60
    </tr>
61
  </tbody>
62
</table>
58 63

  
59 64
[% L.hidden_tag('sort', 'transdate') %]
60 65
[% L.hidden_tag('vc', vc) %]
61 66
[% L.hidden_tag('type', type) %]
67
</div>
62 68
</form>
templates/webpages/buchungsgruppen/form.html
1
[%- USE HTML -%][%- USE LxERP -%][%- USE L -%][%- USE T8 -%][%- USE P -%]
1
[% USE HTML %]
2
[% USE LxERP %]
3
[% USE L %]
4
[% USE T8 %]
5
[% USE P %]
6

  
2 7
[% SET style="width: 400px" %]
3 8

  
4 9
<h1>[% HTML.escape(title) %]</h1>
5 10

  
6 11
<form action="controller.pl" method="post" id="form">
7
[%- L.hidden_tag("id", SELF.config.id) %]
12
[% L.hidden_tag("id", SELF.config.id) %]
13

  
14
<div class="wrapper">
15

  
16
  <table class="tbl-horizontal">
17
    <caption>[% 'Entry Group' | $T8 %]</caption>
18
    <tbody>
19
    <tr>
20
      <th>[% 'Description' | $T8 %]</th>
21
      <td>[% L.input_tag("config.description", SELF.config.description, "data-validate"="required", "data-title"=LxERP.t8("Description")) %]</td>
22
    </tr>
23
    <tr>
24
      <th>[% 'Inventory Account' | $T8 %]</th>
25
      [% IF NOT SELF.config.id %]
26
        <td>[% P.chart.picker("config.inventory_accno_id", SELF.defaults.inventory_accno_id, choose=1, type='IC', style=style) %]</td>
27
      [% ELSIF SELF.config.id AND SELF.config.orphaned %]
28
        <td>[% P.chart.picker("config.inventory_accno_id", SELF.config.inventory_accno_id, choose=1, type='IC', style=style) %]</td>
29
      [% ELSE %]
30
        <td>[% CHARTLIST.inventory_accno_description %]</td>
31
      [% END %]
32
    </tr>
33
    [% FOREACH tz = TAXZONES %]
34
      <tr>
35
        <th>[% 'Revenue' | $T8 %]</th><th>[% HTML.escape(tz.description) %]</th>
36
        [% IF NOT SELF.config.id %]
37
          <td>[% P.chart.picker('income_accno_id_' _ tz.id, SELF.defaults.income_accno_id, choose=1, type='IC_income,IC_sale', style=style) %]</td>
38
        [% ELSIF SELF.config.id AND SELF.config.orphaned %]
39
          <td>[% P.chart.picker('income_accno_id_' _ tz.id, CHARTLIST.${tz.id}.income_accno_id, choose=1, type='IC_income,IC_sale', style=style) %]</td>
40
        [% ELSE %]
41
          <td>[% CHARTLIST.${tz.id}.income_accno_description %]</td>
42
        [% END %]
43
      </tr>
44
      <tr>
45
        <th>[% 'Expense' | $T8 %]</th><th>[% HTML.escape(tz.description) %]</th>
46
        [% IF NOT SELF.config.id %]
47
          <td>[% P.chart.picker('expense_accno_id_' _ tz.id, SELF.defaults.expense_accno_id, choose=1, type='IC_expense,IC_cogs', style=style) %]</td>
48
        [% ELSIF SELF.config.id AND SELF.config.orphaned %]
49
          <td>[% P.chart.picker('expense_accno_id_' _ tz.id, CHARTLIST.${tz.id}.expense_accno_id, choose=1, type='IC_expense,IC_cogs', style=style) %]</td>
50
        [% ELSE %]
51
          <td>[% CHARTLIST.${tz.id}.expense_accno_description %]</td>
52
        [% END %]
53
      </tr>
54
    [% END %]
55
    <tbody>
56
  </table>
57

  
58
</div><!-- /.wrapper -->
8 59

  
9
<table>
10
  <tr>
11
    <th align="right">[% 'Description' | $T8 %]</th>
12
    <td>[%- L.input_tag("config.description", SELF.config.description, "data-validate"="required", "data-title"=LxERP.t8("Description")) %]</td>
13
  </tr>
14
  <tr>
15
    <th align="right">[% 'Inventory Account' | $T8 %]</th>
16
    [%- IF NOT SELF.config.id %]
17
    <td>[% P.chart.picker("config.inventory_accno_id", SELF.defaults.inventory_accno_id, choose=1, type='IC', style=style) %]</td>
18
    [%- ELSIF SELF.config.id AND SELF.config.orphaned %]
19
    <td>[% P.chart.picker("config.inventory_accno_id", SELF.config.inventory_accno_id, choose=1, type='IC', style=style) %]</td>
20
    [%- ELSE %]
21
      <td>[%- CHARTLIST.inventory_accno_description %]</td>
22
    [%- END %]
23
  </tr>
24
[%- FOREACH tz = TAXZONES %]
25
  <tr>
26
    <th align="right">[% 'Revenue' | $T8 %] [% HTML.escape(tz.description) %]</th>
27
    [%- IF NOT SELF.config.id %]
28
    <td>[% P.chart.picker('income_accno_id_' _ tz.id, SELF.defaults.income_accno_id, choose=1, type='IC_income,IC_sale', style=style) %]</td>
29
    [%- ELSIF SELF.config.id AND SELF.config.orphaned %]
30
    <td>[% P.chart.picker('income_accno_id_' _ tz.id, CHARTLIST.${tz.id}.income_accno_id, choose=1, type='IC_income,IC_sale', style=style) %]</td>
31
    [%- ELSE %]
32
      <td>[% CHARTLIST.${tz.id}.income_accno_description %]</td>
33
    [%- END %]
34
  </tr>
35
  <tr>
36
    <th align="right">[% 'Expense' | $T8 %] [% HTML.escape(tz.description) %]</th>
37
    [%- IF NOT SELF.config.id %]
38
      <td>[% P.chart.picker('expense_accno_id_' _ tz.id, SELF.defaults.expense_accno_id, choose=1, type='IC_expense,IC_cogs', style=style) %]</td>
39
    [%- ELSIF SELF.config.id AND SELF.config.orphaned %]
40
      <td>[% P.chart.picker('expense_accno_id_' _ tz.id, CHARTLIST.${tz.id}.expense_accno_id, choose=1, type='IC_expense,IC_cogs', style=style) %]</td>
41
    [%- ELSE %]
42
      <td>[% CHARTLIST.${tz.id}.expense_accno_description %]</td>
43
    [%- END %]
44
  </tr>
45
[%- END %]
46
</table>
47 60
</form>
templates/webpages/buchungsgruppen/list.html
1
[%- USE HTML -%][%- USE LxERP -%][%- USE L -%][%- USE T8 -%][%- INCLUDE 'common/flash.html' %]
1
[% USE HTML %]
2
[% USE LxERP %]
3
[% USE L %]
4
[% USE T8 %]
5
[% INCLUDE 'common/flash.html' %]
2 6

  
3 7
<h1>[% title %]</h1>
4 8

  
5
<p>
6
 <table width="100%" id="buchungsgruppen_list">
9
<table id="buchungsgruppen_list" class="tbl-list wi-moderate">
7 10
  <thead>
8
   <tr class="listheading">
9
    <th align="center" width="1%"><img src="image/updown.png" alt="[%- LxERP.t8('reorder item') %]"></th>
10
    <th width="20%">[% 'Description' | $T8 %]</th>
11
    <th width="20%">[% 'Inventory Account' | $T8 %]</th>
12
     [%- FOREACH tz = TAXZONES %]
13
        <th width="20%">[% 'Revenue' | $T8 %] [% HTML.escape(tz.description) %]</th>
14
        <th width="20%">[% 'Expense' | $T8 %] [% HTML.escape(tz.description) %]</th>
15
     [%- END %]
16
   </tr>
11
    <tr>
12
      <th><img src="image/updown.png" alt="[% LxERP.t8('reorder item') %]"></th>
13
      <th>[% 'Description' | $T8 %]</th>
14
      <th>[% 'Inventory Account' | $T8 %]</th>
15
    [% FOREACH tz = TAXZONES %]
16
      <th>[% 'Revenue' | $T8 %] [% HTML.escape(tz.description) %]</th>
17
      <th>[% 'Expense' | $T8 %] [% HTML.escape(tz.description) %]</th>
18
    [% END %]
19
    </tr>
17 20
  </thead>
18

  
19 21
  <tbody>
20
   [%- FOREACH bg = BUCHUNGSGRUPPEN %]
21
    <tr class="listrow" id="bg_id_[% bg.id %]">
22
     <td align="center" class="dragdrop"><img src="image/updown.png" alt="[%- LxERP.t8('reorder item') %]"></td>
23
     <td><a href="[% SELF.url_for(action='edit', id=bg.id) %]">[% HTML.escape(bg.description) %]</a></td>
24
     <td>[% HTML.escape(CHARTLIST.${bg.id}.inventory_accno) %]</td>
25
     [%- FOREACH tz = TAXZONES %]
26
        <td>[% HTML.escape(CHARTLIST.${bg.id}.${tz.id}.income_accno) %]</td>
27
        <td>[% HTML.escape(CHARTLIST.${bg.id}.${tz.id}.expense_accno) %]</td>
28
     [%- END %]
29
   [%- END %]
22
  [% FOREACH bg = BUCHUNGSGRUPPEN %]
23
    <tr id="bg_id_[% bg.id %]">
24
      <td class="center dragdrop"><img src="image/updown.png" alt="[% LxERP.t8('reorder item') %]"></td>
25
      <td class="nowrap"><a href="[% SELF.url_for(action='edit', id=bg.id) %]">[% HTML.escape(bg.description) %]</a></td>
26
      <td>[% HTML.escape(CHARTLIST.${bg.id}.inventory_accno) %]</td>
27
    [% FOREACH tz = TAXZONES %]
28
      <td>[% HTML.escape(CHARTLIST.${bg.id}.${tz.id}.income_accno) %]</td>
29
      <td>[% HTML.escape(CHARTLIST.${bg.id}.${tz.id}.expense_accno) %]</td>
30
    [% END %]
31
  [% END %]
30 32
  </tbody>
31
 </table>
32
</p>
33
</table>
33 34

  
34 35
[% L.sortable_element('#buchungsgruppen_list tbody', url=SELF.url_for(action='reorder'), with='bg_id') %]

Auch abrufbar als: Unified diff