Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision c245a50f

Von Sven Schöling vor etwa 2 Jahren hinzugefügt

  • ID c245a50f8468b44bec0a5860a3d2e68ad3cbd385
  • Vorgänger bf2b5e5d
  • Nachfolger 06f142fc

design40: nicht angepasste templates dedupliziert.

Generiert mit:

$ cd templates/design_webpages
$ find . -type f -exec diff -s -q -u {} ../webpages/{} \; 2> /dev/null | grep identical | sed -e 's/Files \(.*\) and .*$/\1/' | xargs git rm

Unterschiede anzeigen:

templates/design40_webpages/acc_trans/acc_trans.html
1
[% acc_trans_table %]
2
<p></p>
3
[% balances_table %]
4

  
templates/design40_webpages/acctranscorrections/analyze_filter.html
1
[%- USE T8 %]
2
[% USE HTML %]
3
[%- USE L %]
4
 <h1>[% title %]</h1>
5

  
6
 <p>
7
  [% 'Earlier versions of kivitendo contained bugs which might have led to wrong entries in the general ledger.' | $T8 %]
8
  [% 'These wrong entries cannot be fixed automatically.' | $T8 %]
9
  [% 'This module can help you identify and correct such entries by analyzing the general ledger and presenting you likely solutions but also allowing you to fix problems yourself.' | $T8 %]
10
 </p>
11

  
12
 <form name="filter" method="post" action="acctranscorrections.pl" id="form">
13

  
14
  <p>[% 'Time period for the analysis:' | $T8 %]</p>
15

  
16
  <p>
17
   <table>
18
    <tr>
19
     <td><input type="radio" name="scope" id="scope_full" value="full" checked></td>
20
     <td><label for="scope_full">[% 'All general ledger entries' | $T8 %]</label></td>
21
    </tr>
22

  
23
    <tr>
24
     <td><input type="radio" name="scope" id="scope_period" value="period"></td>
25
     <td>
26
      [% 'Period:' | $T8 %]
27
      [% 'from (time)' | $T8 %]
28
      [% L.date_tag('transdate_from') %]
29
      [% 'to (time)' | $T8 %]
30
      [% L.date_tag('transdate_to') %]
31
     </td>
32
    </tr>
33
   </table>
34
  </p>
35

  
36
  <input type="hidden" name="action" value="analyze">
37
 </form>
templates/design40_webpages/acctranscorrections/delete_transaction.html
1
[%- USE T8 %]
2
[% USE HTML %]
3
[% USE LxERP %]
4
 <h1>[% title %]</h1>
5

  
6
 <p>
7
  [%- IF module == 'ar' %]
8
  [%- LxERP.t8('The AR transaction #1 has been deleted.', reference) | html %]
9
  [%- ELSIF module == 'ap' %]
10
  [%- LxERP.t8('The AP transaction #1 has been deleted.', reference) | html %]
11
  [%- ELSE %]
12
  [%- LxERP.t8('The GL transaction #1 has been deleted.', reference) | html %]
13
  [%- END %]
14
 </p>
15

  
16
 <p>
17
  <form method="post" action="acctranscorrections.pl">
18

  
19
   <input type="hidden" name="action" value="redirect">
20
   <input type="hidden" name="callback" value="[% HTML.escape(callback) %]">
21
   <input type="submit" value="[% 'Re-run analysis' | $T8 %]">
22
  </form>
23
 </p>
templates/design40_webpages/acctranscorrections/delete_transaction_confirmation.html
1
[%- USE T8 %]
2
[% USE HTML %]
3
[% USE LxERP %]
4
 <h1>[% title %]</h1>
5

  
6
 <p>
7
  [%- IF module == 'ar' %]
8
  [%- LxERP.t8('Do you really want to delete AR transaction #1?', reference) | html %]
9
  [%- ELSIF module == 'ap' %]
10
  [%- LxERP.t8('Do you really want to delete AP transaction #1?', reference) | html %]
11
  [%- ELSE %]
12
  [%- LxERP.t8('Do you really want to delete GL transaction #1?', reference) | html %]
13
  [%- END %]
14
 </p>
15

  
16
 <p>
17
  <form method="post" action="acctranscorrections.pl">
18

  
19
   <input type="hidden" name="callback" value="[% HTML.escape(callback) %]">
20
   <input type="hidden" name="trans_id" value="[% HTML.escape(trans_id) %]">
21
   <input type="hidden" name="module" value="[% HTML.escape(module) %]">
22
   <input type="hidden" name="reference" value="[% HTML.escape(reference) %]">
23

  
24
   <input type="hidden" name="confirmation" value="1">
25
   <input type="hidden" name="action" value="delete_transaction">
26

  
27
   <input type="submit" value="[% 'Yes' | $T8 %]">
28
   <input type="button" onclick="history.back()" value="[% 'No' | $T8 %]">
29
  </form>
30
 </p>
templates/design40_webpages/acctranscorrections/fix_ap_ar_wrong_taxkeys.html
1
[%- USE T8 %]
2
[% USE HTML %]
3
 <h1>[% title %]</h1>
4

  
5
 <p>
6
  [% 'The wrong taxkeys for AP and AR transactions have been fixed.' | $T8 %]
7

  
8
  [% 'Please re-run the analysis for broken general ledger entries by clicking this button:' | $T8 %]
9
 </p>
10

  
11
 <p>
12
  <form action="acctranscorrections.pl" method="post">
13

  
14
   <input type="hidden" name="action" value="redirect">
15
   <input type="hidden" name="callback" value="[% HTML.escape(callback) %]">
16
   <input type="submit" value="[% 'Re-run analysis' | $T8 %]">
17
  </form>
18
 </p>
19

  
templates/design40_webpages/acctranscorrections/fix_invoice_inventory_with_taxkeys.html
1
[%- USE T8 %]
2
[% USE HTML %]
3
 <h1>[% title %]</h1>
4

  
5
 <p>
6
  [% 'The wrong taxkeys for inventory transactions for sales and purchase invoices have been fixed.' | $T8 %]
7

  
8
  [% 'Please re-run the analysis for broken general ledger entries by clicking this button:' | $T8 %]
9
 </p>
10

  
11
 <p>
12
  <form action="acctranscorrections.pl" method="post">
13

  
14
   <input type="hidden" name="action" value="redirect">
15
   <input type="hidden" name="callback" value="[% HTML.escape(callback) %]">
16
   <input type="submit" value="[% 'Re-run analysis' | $T8 %]">
17
  </form>
18
 </p>
19

  
templates/design40_webpages/acctranscorrections/fix_wrong_taxkeys.html
1
[%- USE T8 %]
2
[% USE HTML %]
3
 <h1>[% title %]</h1>
4

  
5
 <p>
6
  [% 'The wrong taxkeys have been fixed.' | $T8 %]
7

  
8
  [% 'Please re-run the analysis for broken general ledger entries by clicking this button:' | $T8 %]
9
 </p>
10

  
11
 <p>
12
  <form action="acctranscorrections.pl" method="post">
13

  
14
   <input type="hidden" name="action" value="redirect">
15
   <input type="hidden" name="callback" value="[% HTML.escape(callback) %]">
16
   <input type="submit" value="[% 'Re-run analysis' | $T8 %]">
17
  </form>
18
 </p>
19

  
templates/design40_webpages/ar/ar_transactions_header.html
1
<form method="post" action="controller.pl" id="report_form">
templates/design40_webpages/chart/_chart_picker_result.html
1
[%- USE T8 %]
2
[%- USE HTML %]
3
[%- USE L %]
4
[%- USE LxERP %]
5

  
6
[% FOREACH chart = SELF.charts %]
7
<div class='chart_picker_chart [% FORM.hide_chart_details ? 'cpc_line' : 'cpc_block' %]'>
8
  <input type='hidden' class='chart_picker_id' value='[% chart.id %]'>
9
  <input type='hidden' class='chart_picker_description' value='[% chart.displayable_name %]'>
10
  <span class='cpc_block_number'>[% chart.accno | html %]</span>
11
  <span class='cpc_block_description'>[% chart.description | html %]</span>
12
  [% UNLESS FORM.hide_chart_details %]
13
    <span class='cpc_block_balance'>[% chart.formatted_balance_dc | html %]</span>
14
    <div style='clear:both;'></div>
15
    <span class='cpc_block_second_row'>[% LxERP.t8("Chart Type") %]: [% chart.displayable_category %] &nbsp;&nbsp;&nbsp; [% IF chart.has_transaction %][% LxERP.t8("Last transaction")%]: [% chart.date_of_last_transaction.to_kivitendo %][% END %]</span>
16
  [% END %]
17
</div>
18
[%- END %]
19

  
20
<div style='clear:both'></div>
21

  
22
[% L.paginate_controls(target='#chart_picker_result', selector='#chart_picker_result', models=SELF.models) %]
23
<script type='text/javascript'>
24
  kivi.ChartPicker($('#'+$('#chart_picker_real_id').val())).init_results()
25
</script>
templates/design40_webpages/chart/test_page.html
1
[% USE L %]
2
[% USE P %]
3
[% SET style="width: 400px" %]
4

  
5
<h1>Chart Picker Testpage</h1>
6

  
7
<div>
8

  
9
<p>
10
All charts: [% P.chart.picker('chart_id', '', style=style) %]text after icon<br>
11
Only booked charts: [% P.chart.picker('chart_id_booked', '', booked=1, style=style) %]<br>
12
All charts choose: [% P.chart.picker('chart_id_choose', '', choose=1, style=style) %]<br>
13
</p>
14

  
15
<p>
16
Filter by link:<br>
17
AR_paid: [% P.chart.picker('chart_id_ar_paid', undef, type='AR_paid', category='I,A' style=style) %]<br>
18
AR: [% P.chart.picker('chart_id_ar', undef, type='AR', style=style) %]<br>
19
AP: [% P.chart.picker('chart_id_ap', undef, type='AP', style=style) %]<br>
20
AR or AP: [% P.chart.picker('chart_id_arap', undef, type='AR,AP', style=style) %]<br>
21
IC_income,IC_sale: [% P.chart.picker('chart_id_icis', undef, type='IC_income,IC_sale', style=style) %]<br>
22
IC_expense,IC_cogs: [% P.chart.picker('chart_id_icco', undef, type='IC_expense,IC_cogs', style=style) %]<br>
23
IC: [% P.chart.picker('chart_id_ic', undef, type='IC', style=style) %]<br>
24
</p>
25

  
26
<p>
27
Filter by category:<br>
28
I: [% P.chart.picker('chart_id_i', undef, category='I', style=style) %]<br>
29
IE: [% P.chart.picker('chart_id_ie', undef, category='I,E', style=style) %]<br>
30
AQL: [% P.chart.picker('chart_id_aql', undef, category='A,Q,L', style=style) %]<br>
31
</p>
32

  
33
<p>
34
Filter by special type:<br>
35
GuV: [% P.chart.picker('chart_id_guv', undef, type='guv', style=style) %]<br>
36
</p>
37

  
38
<p>bank (fat): [% P.chart.picker('bank_id', '', type='bank', fat_set_item=1, choose=1, style=style) %]
39
</p>
40
<p id="banktext"></p>
41

  
42

  
43
<p>
44
[% FOREACH i IN [ 1 2 3 4 5 6 ] %]
45
S [% i %]: [% P.chart.picker('credit_' _ i) %] - &nbsp;&nbsp;  H [% i %]: [% P.chart.picker('debit' _ i) %] <br>
46
[% END %]
47
</p>
48

  
49
<p>
50
Pre-filled chart object: [% P.chart.picker('pre_filled_chart_object', pre_filled_chart, style=style) %]<br>
51
Pre-filled chart ID: [% P.chart.picker('pre_filled_chart_id', pre_filled_chart.id, style=style) %]<br>
52
</p>
53

  
54
</div>
55

  
56
<script type='text/javascript'>
57
  $(function(){
58
      // do something when a chartpicker with fat_set_item and a certain id changes
59
      $('#bank_id').on('set_item:ChartPicker', function (e, item) {
60
        console.log(item)
61
        $('#banktext').html('Selected fat item with category ' + item.category);
62
      })
63
  });
64

  
65
</script>
templates/design40_webpages/common/search_history.html
1
[%- USE T8 %]
2
[%- USE L %]
3
[% USE HTML %]
4
<h1>[% 'history search engine' | $T8 %]</h1>
5

  
6
<form method="post" action="am.pl" id="form">
7

  
8
<input type="hidden" name="action" value="show_am_history">
9

  
10
<table>
11
  <tr>
12
    <td>[% '<b>What</b> do you want to look for?' | $T8 %]:</td>
13
    <td>
14
      <select name="what2search" id="what2search">
15
        <option name="Artikelnummer" value="Artikelnummer" id="Artikelnummer">[% 'Part Number' | $T8 %]</option>
16
        <option name="Kundennummer" value="Kundennummer" id="Kundennummer">[% 'Customer Number' | $T8 %]</option>
17
        <option name="Lieferantennummer" value="Lieferantennummer" id="Lieferantennummer">[% 'Vendor Number' | $T8 %]</option>
18
        <option name="Projektnummer" value="Projektnummer" id="Projektnummer">[% 'Project Number' | $T8 %]</option>
19
        <option name="Auftragsnummer" value="Auftragsnummer" id="Auftragsnummer">[% 'Order Number' | $T8 %]</option>
20
        <option name="Angebotsnummer" value="Angebotsnummer" id="Angebotsnummer">[% 'Quotation Number' | $T8 %]</option>
21
        <option name="Eingangsrechnungnummer" value="Eingangsrechnungnummer" id="Eingangsrechnungnummer">[% 'Incoming invoice number' | $T8 %]</option>
22
        <option name="Ausgangsrechnungnummer" value="Ausgangsrechnungnummer" id="Ausgangsrechnungnummer">[% 'Sales invoice number' | $T8 %]</option>
23
        <option name="Mahnungsnummer" value="Mahnungsnummer" id="Mahnungsnummer">[% 'Dunning number' | $T8 %]</option>
24
        <option name="Buchungsnummer" value="Buchungsnummer" id="Buchungsnummer">[% 'ID' | $T8 %]</option>
25
      </select>
26
    </td>
27
  </tr>
28
  <tr>
29
    <td>[% 'What <b>term</b> you are looking for?' | $T8 %]</td>
30
    <td><input type="text" name="searchid" id="searchid" value="[% searchid  | html %]"></td>
31
  </tr>
32
  <tr>
33
    <td valign="top">[% 'Do you want to <b>limit</b> your search?' | $T8 %]</td>
34
    <td>
35
      <table>
36
        <tr>
37
          <td>
38
            <div id="initForm">
39
              <a id='show_extended_options' href='#'>[% 'Yes' | $T8 %]</a>
40
            </div>
41
            <div id="selectTable" style="display:none;">
42
              <select id='selectForm'>
43
              </select>
44
            </div>
45
            <div id="inputHead" style="display:none;"><b>[% 'You\'ve already chosen the following limitations:' | $T8 %]</b></div>
46
            <div id="inputText" style="display:none;"></div>
47
          </td>
48
        </tr>
49
        <tr>
50
          <td>
51
            <div id="selectEmployee" style="display:none;">
52
              <b>Mitarbeiter:</b>&nbsp; <input type="text" name="mitarbeiter" id="mitarbeiter">
53
            </div>
54
          </td>
55
        </tr>
56
        <tr>
57
          <td>
58
            <div id="selectDate" style="display:none;">
59
                  <b>[% 'Period' | $T8 %]:&nbsp;</b>
60
                     [% 'from (time)' | $T8 %]:&nbsp; [% L.date_tag('fromdate', todate) %]
61
                     [% 'to (time)' | $T8 %]:&nbsp; [% L.date_tag('todate', todate) %]
62
            </div>
63
          </td>
64
        </tr>
65
      </table>
66
      <input type="hidden" name="einschraenkungen" id="einschraenkungen" value="">
67
    </td>
68
  </tr>
69
</table>
70
</form>
71

  
72
<script type="text/javascript">
73
  <!--
74
  var defaults = ['SAVED', 'DELETED', 'ADDED', 'PAYMENT POSTED', 'POSTED',
75
  'POSTED AS NEW', 'SAVED FOR DUNNING', 'DUNNING STARTED', 'PRINTED',
76
  'QUEUED', 'CANCELED' ,'IMPORT', 'UNIMPORT' ];
77
  var available;
78
  var selected;
79
  var translated = {
80
    'SAVED'             : '[% 'SAVED' | $T8 %]',
81
    'SCREENED'          : '[% 'SCREENED' | $T8 %]',
82
    'DELETED'           : '[% 'DELETED' | $T8 %]',
83
    'ADDED'             : '[% 'ADDED' | $T8 %]',
84
    'PAYMENT POSTED'    : '[% 'PAYMENT POSTED' | $T8 %]',
85
    'POSTED'            : '[% 'POSTED' | $T8 %]',
86
    'POSTED AS NEW'     : '[% 'POSTED AS NEW' | $T8 %]',
87
    'SAVED FOR DUNNING' : '[% 'SAVED FOR DUNNING' | $T8 %]',
88
    'DUNNING STARTED'   : '[% 'DUNNING STARTED' | $T8 %]',
89
    'PRINTED'           : '[% 'PRINTED' | $T8 %]',
90
    'QUEUED'            : '[% 'QUEUED' | $T8 %]',
91
    'CANCELED'          : '[% 'CANCELED' | $T8 %]',
92
    'IMPORT'            : '[% 'IMPORT' | $T8 %]',
93
    'UNIMPORT'          : '[% 'UNIMPORT' | $T8 %]',
94
  };
95

  
96
  function addForm(index) {
97
    $('#inputHead').show();
98
    selected.push(available.splice(index.index-1, 1));
99
    $('#inputText').html($(selected).map(function(){ return translated[this]; }).get().join('<br>'));
100
    $('#einschraenkungen').val(selected.join(','));
101

  
102
    showForm();
103
  }
104

  
105
  function showForm() {
106
    $('#selectForm').empty();
107
    $('<option/>').appendTo('#selectForm');
108
    $(available).map(function(){
109
      $('<option/>').val(this).text(translated[this]).click(function(){ addForm(this) }).appendTo('#selectForm');
110
    });
111
  }
112

  
113
  function resetAll() {
114
    available = defaults.slice(0);
115
    selected  = [];
116
    initForm();
117

  
118
    $('#inputForm').empty();
119
    $('#inputText').html('');
120
    $('#selectTable, #inputHead, #inputText, #selectEmployee, #selectDate').hide();
121
    $('#initForm').show();
122
  }
123

  
124
  function initForm() {
125
    showForm();
126

  
127
    $('#selectTable, #inputText, #selectEmployee, #selectDate').show();
128
    $('#initForm').hide();
129
  }
130

  
131
  $(function(){
132
    resetAll();
133
    $('#show_extended_options').click(initForm);
134
    $('#reset_button').click(resetAll);
135
  });
136
  //-->
137
</script>
templates/design40_webpages/common/select_warehouse_bin.html
1
[%- USE T8 %]
2
[%- USE HTML %]
3
[%- USE LxERP %]
4
[%- USE JavaScript -%]
5
 <script type="text/javascript" src="js/common.js"></script>
6
 <script type="text/javascript">
7
  <!--
8
      warehouses = new Array();
9
      [%- USE WAREHOUSES_it = Iterator(WAREHOUSES) %][%- FOREACH warehouse = WAREHOUSES_it %]
10
      warehouses[[% WAREHOUSES_it.count - 1 %]] = new Array();
11
      warehouses[[% WAREHOUSES_it.count - 1 %]]['id'] = [% warehouse.id %];
12
      warehouses[[% WAREHOUSES_it.count - 1 %]]['bins'] = new Array();
13
      warehouses[[% WAREHOUSES_it.count - 1 %]]['bins'][0] = new Array();
14
      warehouses[[% WAREHOUSES_it.count - 1 %]]['bins'][0]['description'] = "---";
15
      warehouses[[% WAREHOUSES_it.count - 1 %]]['bins'][0]['id'] = "";
16
      [% USE BINS_it = Iterator(warehouse.BINS) %][% FOREACH bin = BINS_it %]
17
      warehouses[[% WAREHOUSES_it.count - 1 %]]['bins'][[% BINS_it.count %]] = new Array();
18
      warehouses[[% WAREHOUSES_it.count - 1 %]]['bins'][[% BINS_it.count %]]['description'] = "[% JavaScript.escape(bin.description) %]";
19
      warehouses[[% WAREHOUSES_it.count - 1 %]]['bins'][[% BINS_it.count %]]['id'] = [% bin.id %];
20
      [% END %]
21
      [% END %]
22

  
23
      function warehouse_selected(warehouse_id, bin_id) {
24
        var control = document.getElementById("bin_id");
25

  
26
        for (var i = control.options.length - 1; i >= 0; i--) {
27
          control.options[i] = null;
28
        }
29

  
30
        var warehouse_index = 0;
31

  
32
        for (i = 0; i < warehouses.length; i++)
33
          if (warehouses[i]['id'] == warehouse_id) {
34
            warehouse_index = i;
35
            break;
36
          }
37

  
38
        var warehouse = warehouses[warehouse_index];
39
        var bin_index = 0;
40

  
41
        for (i = 0; i < warehouse['bins'].length; i++)
42
          if (warehouse['bins'][i]['id'] == bin_id) {
43
            bin_index = i;
44
            break;
45
          }
46

  
47
        for (i = 0; i < warehouse['bins'].length; i++) {
48
          control.options[i] = new Option(warehouse['bins'][i]['description'], warehouse['bins'][i]['id']);
49
        }
50

  
51

  
52
        control.options[bin_index].selected = true;
53
      }
54

  
55
      $(function() {
56
        warehouse_selected([% warehouse_id %], [% bin_id %]);
57
      })
58
    -->
59
 </script>
templates/design40_webpages/csv_import/_deferred_report.html
1
[% INCLUDE 'common/flash.html' %]
2
<div id='csv_import_report'></div>
3

  
4
<script type='text/javascript'>
5
  function get_report(target, source, data){
6
    $.ajax({
7
      url:        source,
8
      success:    function (rsp) {
9
        $(target).html(rsp);
10
        $(target).find('.paginate').find('a').click(function(event){ redirect_event(event, target) });
11
      },
12
      data:       data,
13
    });
14
  };
15

  
16
  function redirect_event(event, target){
17
    event.preventDefault();
18
    get_report(target, event.target + '', {});
19
  }
20

  
21
  $(document).ready(function(){
22
    [%- IF SELF.background_job.data_as_hash.report_id %]
23
      get_report('#csv_import_report', 'controller.pl', { action: 'CsvImport/report', 'no_layout': 1, 'id': [% SELF.background_job.data_as_hash.report_id %] });
24
    [%- END %]
25
  });
26

  
27

  
28
</script>
templates/design40_webpages/csv_import/_form_artransactions.html
1
[% USE LxERP %]
2
[% USE L %]
3
<tr>
4
 <th align="right">[%- LxERP.t8('AR Transaction/AccTrans Item row names') %]:</th>
5
 <td colspan="10">
6
  [% L.input_tag('settings.ar_column', SELF.profile.get('ar_column'), size => "10") %]
7
  [% L.input_tag('settings.transaction_column',  SELF.profile.get('transaction_column'),  size => "20") %]
8
 </td>
9

  
10
<tr>
11
 <th align="right">[%- LxERP.t8('Maximal amount difference') %]:</th>
12
 <td colspan="10">
13
  [% L.input_tag('settings.max_amount_diff', LxERP.format_amount(SELF.profile.get('max_amount_diff')), size => "5") %]
14
 </td>
15
</tr>
templates/design40_webpages/csv_import/_form_contacts.html
1
[%- USE LxERP -%][%- USE L -%]
2
<tr>
3
 <th align="right">[%- LxERP.t8("Existing contacts (with column 'cp_id')") %]:</th>
4
 <td colspan="10">
5
  [% opts = [ [ 'update_existing', LxERP.t8('Update properties of existing entries') ], [ 'insert_new', LxERP.t8('Insert with new database ID') ], [ 'skip', LxERP.t8('Skip entry') ] ] %]
6
  [% L.select_tag('settings.update_policy', opts, default = SELF.profile.get('update_policy'), style = 'width: 300px') %]
7
 </td>
8
</tr>
templates/design40_webpages/csv_import/_form_delivery_orders.html
1
[% USE LxERP %]
2
[% USE L %]
3
<tr>
4
 <th align="right">[%- LxERP.t8('Order/Item/Stock row name') %]:</th>
5
 <td colspan="10">
6
  [% L.input_tag('settings.order_column', SELF.profile.get('order_column'), size => "10") %]
7
  [% L.input_tag('settings.item_column',  SELF.profile.get('item_column'),  size => "10") %]
8
  [% L.input_tag('settings.stock_column', SELF.profile.get('stock_column'), size => "10") %]
9
 </td>
10
<tr>
11
 <th align="right">[%- LxERP.t8('Error handling') %]:</th>
12
 <td colspan="10">
13
  [% L.checkbox_tag('settings.ignore_faulty_positions',
14
                    label   => LxERP.t8('Ignore faulty positions'),
15
                    checked => SELF.profile.get('ignore_faulty_positions')) %]
16
 </td>
17
</tr>
templates/design40_webpages/csv_import/_form_inventories.html
1
[% USE LxERP %]
2
[% USE L %]
3
<tr>
4
 <th align="right" valign="top">[%- LxERP.t8('Warehouse') %]/[%- LxERP.t8('Bin') %]:</th>
5
 <td colspan="2" valign="top">
6
  [% L.input_tag('settings.warehouse', SELF.profile.get('warehouse'), style = 'width: 300px') %]
7
  <br>
8
  [% opts = [ [ 'never', LxERP.t8('Do not set this warehouse') ],[ 'missing', LxERP.t8('Apply to transfers without warehouse') ], [ 'all', LxERP.t8('Apply to all transfers') ] ] %]
9
  [% L.select_tag('settings.apply_warehouse', opts, default = SELF.profile.get('apply_warehouse'), style = 'width: 300px') %]
10
 </td>
11
 <td colspan="8" valign="top">
12
  [% L.input_tag('settings.bin', SELF.profile.get('bin'), style = 'width: 300px') %]
13
  <br>
14
  [% opts = [ [ 'never', LxERP.t8('Do not set this bin') ], [ 'missing', LxERP.t8('Apply to transfers without bin') ], [ 'all', LxERP.t8('Apply to all transfers') ] ] %]
15
  [% L.select_tag('settings.apply_bin', opts, default = SELF.profile.get('apply_bin'), style = 'width: 300px') %]
16
 </td>
17
</tr>
18

  
19
<tr>
20
</tr>
21

  
22
<tr>
23
 <th align="right" valign="top">[%- LxERP.t8('Comment') %]:</th>
24
 <td colspan="10" valign="top">
25
  [% L.input_tag('settings.comment', SELF.profile.get('comment'), style = 'width: 300px') %]
26
  <br>
27
  [% opts = [ [ 'never', LxERP.t8('Do not set this comment') ], [ 'missing', LxERP.t8('Apply to transfers without comment') ], [ 'all', LxERP.t8('Apply to all transfers') ] ] %]
28
  [% L.select_tag('settings.apply_comment', opts, default = SELF.profile.get('apply_comment'), style = 'width: 300px') %]
29
 </td>
30
</tr>
templates/design40_webpages/csv_import/_form_orders.html
1
[% USE LxERP %]
2
[% USE L %]
3
<tr>
4
 <th align="right">[%- LxERP.t8('Order/Item row name') %]:</th>
5
 <td colspan="10">
6
  [% L.input_tag('settings.order_column', SELF.profile.get('order_column'), size => "10") %]
7
  [% L.input_tag('settings.item_column',  SELF.profile.get('item_column'),  size => "10") %]
8
 </td>
9
</tr>
10

  
11
<tr>
12
 <th align="right">[%- LxERP.t8('Maximal amount difference') %]:</th>
13
 <td colspan="10">
14
  [% L.input_tag('settings.max_amount_diff', LxERP.format_amount(SELF.profile.get('max_amount_diff')), size => "5") %]
15
 </td>
16
</tr>
templates/design40_webpages/csv_import/_form_parts.html
1
[% USE LxERP %]
2
[% USE L %]
3
[% USE P %]
4
<tr>
5
 <th align="right">[%- LxERP.t8('Parts with existing part numbers') %]:</th>
6
 <td colspan="10">
7
  [% opts = [[ 'update_parts', LxERP.t8('Update properties of existing entries') ], [ 'update_parts_sn', LxERP.t8('Update properties of existing entries / skip non-existent') ], [ 'update_prices', LxERP.t8('Update prices of existing entries') ],[ 'update_prices_sn', LxERP.t8('Update prices of existing entries / skip non-existent') ] ,[ 'insert_new', LxERP.t8('Insert with new part number') ], [ 'skip', LxERP.t8('Skip entry') ] ] %]
8
  [% L.select_tag('settings.article_number_policy', opts, default = SELF.profile.get('article_number_policy'), style = 'width: 300px') %]
9
 </td>
10
</tr>
11

  
12
<tr>
13
 <th align="right">[%- LxERP.t8('Sellprice significant places') %]:</th>
14
 <td colspan="10">
15
  [% L.select_tag('settings.sellprice_places', [ 0, 1, 2, 3, 4, 5 ], default = SELF.profile.get('sellprice_places'), style = 'width: 300px') %]
16
 </td>
17
</tr>
18

  
19
<tr>
20
 <th align="right">[%- LxERP.t8('Sellprice adjustment') %]:</th>
21
 <td colspan="10">
22
  [% L.input_tag('settings.sellprice_adjustment', LxERP.format_amount(SELF.profile.get('sellprice_adjustment')), size => "5") %]
23
  [% opts = [ [ 'percent', LxERP.t8('percental') ], [ 'absolute', LxERP.t8('absolute') ] ] %]
24
  [% L.select_tag('settings.sellprice_adjustment_type', opts, default = SELF.profile.get('sellprice_adjustment_type')) %]
25
 </td>
26
</tr>
27

  
28
<tr>
29
 <th align="right">[%- LxERP.t8('Mark as shop article if column missing') %]:</th>
30
 <td colspan="10">
31
  [% opts = [ [ '1', LxERP.t8('yes') ], [ '0', LxERP.t8('no') ] ] %]
32
  [% L.select_tag('settings.shoparticle_if_missing', opts, default = SELF.profile.get('shoparticle_if_missing'), style = 'width: 300px') %]
33
 </td>
34
</tr>
35

  
36
<tr>
37
 <th align="right">[%- LxERP.t8('Type') %]:</th>
38
 <td colspan="10">
39
  [% opts = [ [ 'part', LxERP.t8('Parts') ], [ 'service', LxERP.t8('Services') ], [ 'mixed', LxERP.t8('Mixed (requires column "type" or "pclass")') ] ] %]
40
  [% L.select_tag('settings.part_type', opts, default = SELF.profile.get('part_type'), style = 'width: 300px') %]
41
 </td>
42
</tr>
43
<tr>
44
 <th align="right">[%- LxERP.t8('Parts Classification') %]:</th>
45
 <td colspan="10">
46
  [% P.part.select_classification('settings.part_classification', default = SELF.profile.get('part_classification'), style = 'width: 300px') %]
47
 </td>
48
</tr>
49

  
50
<tr>
51
 <th align="right" valign="top">[%- LxERP.t8('Default booking group') %]:</th>
52
 <td colspan="10" valign="top">
53
  [% L.select_tag('settings.default_buchungsgruppe', SELF.all_buchungsgruppen, title_key = 'description', default = SELF.profile.get('default_buchungsgruppe'), style => 'width: 300px') %]
54
  <br>
55
  [% opts = [ [ 'never', LxERP.t8('Do not set default booking group') ], [ 'all', LxERP.t8('Apply to all parts') ], [ 'missing', LxERP.t8('Apply to parts without booking group') ] ] %]
56
  [% L.select_tag('settings.apply_buchungsgruppe', opts, default = SELF.profile.get('apply_buchungsgruppe'), style = 'width: 300px') %]
57
 </td>
58
</tr>
59

  
60
<tr>
61
 <th align="right" valign="top">[%- LxERP.t8('Default unit') %]:</th>
62
 <td colspan="10" valign="top">
63
  [% L.select_tag('settings.default_unit', SELF.all_units, title_key='name', value_key='name', default=SELF.profile.get('default_unit'), style = 'width: 300px') %]
64
 </td>
65
</tr>
templates/design40_webpages/cti/calling.html
1
<body>
2
[% INCLUDE 'common/flash.html' %]
3
</body>
4
</html>
templates/design40_webpages/custom_data_export/empty_result_set.html
1
[% USE HTML %][% USE L %][% USE LxERP %]
2

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

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

  
7
<p>
8
 [% LxERP.t8("The query did not return any data.") %]
9
</p>
templates/design40_webpages/custom_data_export/export.html
1
[% USE HTML %][% USE L %][% USE LxERP %]
2

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

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

  
7
<form method="post" action="controller.pl" id="form">
8
 [% L.hidden_tag("id", SELF.query.id) %]
9
 [% L.hidden_tag("format", "csv") %]
10

  
11
 [% IF !SELF.parameters.size %]
12
  <p>
13
   [% LxERP.t8("The SQL query does not contain any parameter that need to be configured.") %]
14
  </p>
15

  
16
 [% ELSE %]
17

  
18
 <table>
19
  <thead>
20
   <tr class="listheading">
21
    <th>[% LxERP.t8("Variable Name") %]</th>
22
    <th>[% LxERP.t8("Type") %]</th>
23
    <th>[% LxERP.t8("Value") %]</th>
24
    <th>[% LxERP.t8("Description") %]</th>
25
   </tr>
26
  </thead>
27

  
28
  <tbody>
29
   [% FOREACH parameter = SELF.parameters %]
30
    <tr class="listrow">
31
     <td>
32
      [% HTML.escape(parameter.name) %]
33
     </td>
34

  
35
     [% SET value = parameter.calculate_default_value %]
36

  
37
     [% IF parameter.parameter_type == "number" %]
38
      <td>[% LxERP.t8("Number") %]</td>
39
      <td>[% L.input_tag("parameters." _ parameter.name, value, style="width: 300px", "data-validate"="required") %]</td>
40

  
41
     [% ELSIF parameter.parameter_type == "date" %]
42
      <td>[% LxERP.t8("Date") %]</td>
43
      <td>[% L.date_tag("parameters." _ parameter.name, value, style="width: 300px", "data-validate"="required") %]</td>
44

  
45
     [% ELSE %]
46
      <td>[% LxERP.t8("Text") %]</td>
47
      <td>[% L.input_tag("parameters." _ parameter.name, value, style="width: 300px", "data-validate"="required") %]</td>
48
     [% END %]
49

  
50
     <td>[% HTML.escape(parameter.description) %]</td>
51
    </tr>
52
   [% END %]
53
  </tbody>
54
 [% END %]
55
</form>
templates/design40_webpages/custom_data_export/list.html
1
[% USE HTML %][% USE L %][% USE LxERP %]
2

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

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

  
7
[% IF !SELF.queries.size %]
8
 <p>
9
  [%- LxERP.t8("You do not have access to any custom data export.") %]
10
 </p>
11

  
12
[%- ELSE %]
13
 <table width="100%">
14
  <thead>
15
   <tr class="listheading">
16
    <th>[% LxERP.t8("Name") %]</th>
17
    <th>[% LxERP.t8("Description") %]</th>
18
   </tr>
19
  </thead>
20

  
21
  <tbody>
22
   [%- FOREACH query = SELF.queries %]
23
    <tr class="listrow">
24
     <td>[% L.link(SELF.url_for(action="export", id=query.id), query.name) %]</td>
25
     <td>[% IF query.description %][% L.link(SELF.url_for(action="export", id=query.id), query.description) %][% END %]</td>
26
    </tr>
27
   [%- END %]
28
  </tbody>
29
 </table>
30
[%- END %]
templates/design40_webpages/custom_data_export_designer/edit.html
1
[% USE HTML %][% USE L %][% USE LxERP %]
2

  
3
<h1>[% FORM.title %] — [% LxERP.t8("Step #1/#2", 1, 2) %] — [% LxERP.t8("Basic Data") %]</h1>
4

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

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

  
10
 <table>
11
  <tr>
12
   <th align="right">[%- LxERP.t8("Name") %]</th>
13
   <td>[% L.input_tag("query.name", SELF.query.name, style="width: 800px", "data-validate"="required") %]</td>
14
  </tr>
15

  
16
  <tr>
17
   <th align="right">[%- LxERP.t8("Required access right") %]</th>
18
   <td>[% L.select_tag("query.access_right", SELF.access_rights, default=SELF.query.access_right, style="width: 800px") %]</td>
19
  </tr>
20

  
21
  <tr>
22
   <th valign="top" align="right">[%- LxERP.t8("Description") %]</th>
23
   <td valign="top">[% L.textarea_tag("query.description", SELF.query.description, rows=5, style="width: 800px") %]</td>
24
  </tr>
25

  
26
  <tr>
27
   <th valign="top" align="right">[%- LxERP.t8("SQL query") %]</th>
28
   <td valign="top">[% L.textarea_tag("query.sql_query", SELF.query.sql_query, rows=20, style="width: 800px", "data-validate"="required") %]</td>
29
  </tr>
30
 </table>
31
</form>
32

  
33
<p>
34
 [% LxERP.t8("The SQL query can be parameterized with variables named as follows: <%name%>.") %]
35
 [% LxERP.t8("On the next page the type of all variables can be set.") %]
36
 [% LxERP.t8("Note that parameter names must not be quoted.") %]
37
 [% LxERP.t8("Example") %]:
38
</p>
39

  
40
<pre>
41
SELECT extract(YEAR FROM oe.transdate) AS &quot;Jahr&quot;, SUM(oe.amount) AS &quot;Angebotssumme&quot;
42
FROM oe
43
LEFT JOIN employee ON (oe.employee_id = employee.id)
44
WHERE (oe.customer_id IS NOT NULL)
45
  AND COALESCE(oe.quotation, FALSE)
46
  AND (employee.login = &lt;%Benutzer-Login%&gt;)
47
GROUP BY &quot;Jahr&quot;
48
ORDER BY &quot;Jahr&quot;
49
</pre>
templates/design40_webpages/custom_data_export_designer/edit_parameters.html
1
[% USE HTML %][% USE L %][% USE LxERP %]
2

  
3
<h1>[% FORM.title %] — [% LxERP.t8("Step #1/#2", 2, 2) %] — [% LxERP.t8("Query parameters") %]</h1>
4

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

  
7
<form method="post" action="controller.pl" id="form">
8
 [% L.hidden_tag("id", SELF.query.id) %]
9
 [% L.hidden_tag("query.name", SELF.query.name) %]
10
 [% L.hidden_tag("query.access_right", SELF.query.access_right) %]
11
 [% L.hidden_tag("query.description", SELF.query.description) %]
12
 [% L.hidden_tag("query.sql_query", SELF.query.sql_query) %]
13

  
14
 [% IF !PARAMETERS.size %]
15
  <p>
16
   [% LxERP.t8("The SQL query does not contain any parameter that need to be configured.") %]
17
  </p>
18

  
19
 [% ELSE %]
20

  
21
 <table>
22
  <thead>
23
   <tr class="listheading">
24
    <th>[% LxERP.t8("Variable Name") %]</th>
25
    <th>[% LxERP.t8("Type") %]</th>
26
    <th>[% LxERP.t8("Description") %]</th>
27
    <th colspan="2">[% LxERP.t8("Default value") %]</th>
28
   </tr>
29
  </thead>
30

  
31
  <tbody>
32
   [% FOREACH parameter = PARAMETERS %]
33
    <tr class="listrow">
34
     <td valign="top">
35
      [% L.hidden_tag("parameters[+].name", parameter.name) %]
36
      [% HTML.escape(parameter.name) %]
37
     </td>
38
     <td valign="top">
39
      [% L.select_tag("parameters[].parameter_type", [ [ "text", LxERP.t8("Text") ], [ "number", LxERP.t8("Number") ], [ "date", LxERP.t8("Date") ] ], default=parameter.parameter_type) %]
40
     </td>
41
     <td valign="top">[% L.input_tag("parameters[].description", parameter.description, size=100) %]</td>
42
     <td valign="top">
43
      [% L.select_tag("parameters[].default_value_type",
44
                      [ [ "none", LxERP.t8("No default value") ], [ "current_user_login", LxERP.t8("Current user's login") ], [ "sql_query", LxERP.t8("Result of SQL query") ],
45
                        [ "fixed_value", LxERP.t8("Fixed value") ] ],
46
                      default=parameter.default_value_type,
47
                      id="default_value_type_" _ loop.count) %]
48
     </td>
49
     <td valign="top">
50
      [% SET disabled = (parameter.default_value_type == "none") || (parameter.default_value_type == "current_user_login") ? "disabled" : "" %]
51
      [% L.textarea_tag("parameters[].default_value", parameter.default_value, id="default_value_" _ loop.count, cols=80, rows=3, disabled=disabled) %]
52
     </td>
53
    </tr>
54
   [% END %]
55
  </tbody>
56
 [% END %]
57
</form>
templates/design40_webpages/custom_data_export_designer/list.html
1
[% USE HTML %][% USE L %][% USE LxERP %]
2

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

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

  
7
[% IF !SELF.queries.size %]
8
 <p>
9
  [%- LxERP.t8("No custom data exports have been created yet.") %]
10
 </p>
11

  
12
[%- ELSE %]
13
 <table width="100%">
14
  <thead>
15
   <tr class="listheading">
16
    <th>[% LxERP.t8("Name") %]</th>
17
    <th>[% LxERP.t8("Description") %]</th>
18
   </tr>
19
  </thead>
20

  
21
  <tbody>
22
   [%- FOREACH query = SELF.queries %]
23
    <tr class="listrow">
24
     <td>[% L.link(SELF.url_for(action="edit", id=query.id), query.name) %]</td>
25
     <td>[% IF query.description %][% L.link(SELF.url_for(action="edit", id=query.id), query.description) %][% END %]</td>
26
    </tr>
27
   [%- END %]
28
  </tbody>
29
 </table>
30
[%- END %]
templates/design40_webpages/customer_vendor/tabs/price_list.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE HTML %]
4
[%- USE L %]
5

  
6
<div id="price_list">
7
  [%- LxERP.t8("Loading...") %]
8
</div>
templates/design40_webpages/customer_vendor_turnover/_list_open_items.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE HTML %]
5

  
6
<div id="sales_report">
7
  <table width="100%">
8
    <caption class="listtop">[%- HTML.escape(title) %]</caption>
9
    <tbody>
10
      <tr>
11
        <td class="listheading">[% 'Type' | $T8 %]</td>
12
        <td class="listheading">[% 'Invoice Number' | $T8 %]</td>
13
        <td class="listheading">[% 'Invoice Date' | $T8 %]</td>
14
        <td class="listheading">[% 'Amount' | $T8 %]</td>
15
        <td class="listheading">[% 'Inv. Duedate' | $T8 %]</td>
16
        <td class="listheading">[% 'Paid' | $T8 %]</td>
17
        <td class="listheading">[% 'Open Amount' | $T8 %]</td>
18
        [% IF FORM.db == 'customer' %]
19
          <td class="listheading">[% 'Dunnings (Id -- Dunning Date --Dunning Level -- Dunning Fee)' | $T8 %]</td>
20
        [% END %]
21
      </tr>
22

  
23
      [%- FOREACH row = OPEN_ITEMS %]
24
        [% IF FORM.db == 'customer' %]
25
          [% IF row.type == 'invoice' %]
26
            [% SET type = 'Invoice (one letter abbreviation)' %]
27
            [% SET link = 'is.pl' %]
28
          [% ELSIF row.type == 'credit_note' %]
29
            [% SET type = 'Credit note (one letter abbreviation)' %]
30
            [% SET link = 'is.pl' %]
31
          [% ELSE %]
32
            [% SET type = 'AR Transaction (abbreviation)' %]
33
            [% SET link = 'ar.pl' %]
34
          [% END %]
35
        [% ELSE %]
36
          [% IF row.invoice %]
37
            [% SET type = 'Invoice (one letter abbreviation)' %]
38
            [% SET link = 'ir.pl' %]
39
          [% ELSE %]
40
            [% SET type = 'AP Transaction (abbreviation)' %]
41
            [% SET link = 'ap.pl' %]
42
          [% END %]
43
        [% END %]
44
        <tr class="listrow[% loop.count % 2 %]">
45
          <td>[% type | $T8 %]</td>
46
          <td><a href="[% link %]?action=edit&id=[% row.id %]">[% row.invnumber | html %]</a></td>
47
          <td>[% row.transdate.to_kivitendo | html %]</td>
48
          <td class="numeric">[%- LxERP.format_amount(row.amount, 2) %]</td>
49
          <td>[% row.duedate.to_kivitendo | html %]</td>
50
          <td class="numeric">[%- LxERP.format_amount(row.paid, 2) %]</td>
51
          <td class="numeric">[%- LxERP.format_amount(row.amount - row.paid,2) %]
52
          [% IF FORM.db == 'customer' %]
53
            <td>
54
            [%- IF row.dunning_config_id != '' %]
55
              [%- FOREACH dun = row.dunnings %]
56
              [% dun.dunning_id | html %] -- [% dun.transdate.to_kivitendo | html %] -- [% dun.dunning_level | html %] -- [%- LxERP.format_amount(dun.fee, 2) %]<br>
57
              [% END %]
58
            [% END %]
59
            </td>
60
          [% END %]
61
        </tr>
62
      [% END %]
63
    </tbody>
64
  </table>
65
</div>
templates/design40_webpages/customer_vendor_turnover/_list_open_orders.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE HTML %]
5

  
6
<div id="orders_report">
7
  <table width="100%">
8
    <caption class="listtop">[%- HTML.escape(title) %]</caption>
9
    <tbody>
10
      <tr>
11
        <td class="listheading">[% 'Type' | $T8 %]</td>
12
        <td class="listheading">[% 'Order/RFQ Number' | $T8 %]</td>
13
        <td class="listheading">[% 'Date' | $T8 %]</td>
14
        <td class="listheading">[% 'Amount' | $T8 %]</td>
15
        <td class="listheading">[% 'Salesman' | $T8 %]</td>
16
        <td class="listheading">[% 'Transaction description' | $T8 %]</td>
17
      </tr>
18

  
19
      [%- FOREACH row = orders %]
20
      <tr class="listrow[% loop.count % 2 %]">
21
        <td>[% IF row.quotation %]
22
          [% IF FORM.db == 'customer' %][% 'Sales quotation' | $T8 %][% ELSE %][% 'RFQ' | $T8 %][% END %]</td>
23
              [%- IF INSTANCE_CONF.get_feature_experimental_order -%]
24
                <td>[% IF row.id %]<a href='controller.pl?action=Order/edit&type=[% IF FORM.db == "customer" %]sales_quotation[% ELSE %]request_quotation[% END %]&id=[% HTML.escape(row.id) %]'>
25
                    [% END %][% HTML.escape(row.quonumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
26
              [%- ELSE -%]
27
                <td>[% IF row.id %]<a href='oe.pl?action=edit&type=[% IF FORM.db == "customer" %]sales_quotation[% ELSE %]request_quotation[% END %]&vc=[% FORM.db %]&id=[% HTML.escape(row.oe_id) %]'>
28
                    [% END %][% HTML.escape(row.quonumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
29
              [%- END -%]
30
            [% ELSE %]
31
            [% IF FORM.db == 'customer' %][% 'Sales Order' | $T8 %][% ELSE %][% 'Purchase Order' | $T8 %][% END %]</td>
32
              [%- IF INSTANCE_CONF.get_feature_experimental_order -%]
33
                <td>[% IF row.id %]<a href='controller.pl?action=Order/edit&type=[% IF FORM.db == "customer" %]sales_order[% ELSE %]purchase_order[% END %]&id=[% HTML.escape(row.id) %]'>
34
                    [% END %][% HTML.escape(row.ordnumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
35
              [%- ELSE -%]
36
                <td>[% IF row.id %]<a href='oe.pl?action=edit&type=[% IF FORM.db == "customer" %]sales_order[% ELSE %]purchase_order[% END %]&vc=[% FORM.db %]&id=[% HTML.escape(row.oe_id) %]'>
37
                    [% END %][% HTML.escape(row.ordnumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
38
              [%- END -%]
39
            [% END %]
40
        <td>[% row.transdate.to_kivitendo | html %]</td>
41
        <td class="numeric">[%- LxERP.format_amount(row.amount, 2) %]</td>
42
        <td>[% row.employee.name | html %]</td>
43
        <td>[% row.transaction_description | html %]</td>
44
      </tr>
45
      [% END %]
46
    </tbody>
47
  </table>
48
</div>
templates/design40_webpages/customer_vendor_turnover/_statistic_tabs.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE HTML %]
5
<script type="text/javascript">
6
  $(function() {
7
    $ ( "#statistic_tabs" ).tabs();
8
  });
9
</script>
10
<div class="tabwidget" id="statistic_tabs">
11
  <ul>
12
    <li><a href="#turnover_stat">[% 'Turnoverstatistic' | $T8 %]</a></li>
13
    [% IF FORM.db == "customer" %]<li><a href="#dun_stat">[% 'Dunningstatistic' | $T8 %]</a></li>[% END %]
14
    <li><a href="#quotations" onclick="kivi.CustomerVendorTurnover.get_sales_quotations();">[% IF FORM.db == "customer" %][% 'Sales Quotations' | $T8 %][% ELSE %][% 'Request Quotations' | $T8 %][% END %]</a></li>
15
    <li><a href="#orders" onclick="kivi.CustomerVendorTurnover.get_orders();">[% 'Orders' | $T8 %]</a></li>
16
    <li><a href="#invoices" onclick="kivi.CustomerVendorTurnover.get_invoices();">[% 'Invoices' | $T8 %]</a></li>
17
    <li><a href="#mails" onclick="kivi.CustomerVendorTurnover.get_mails();">[% 'Mails' | $T8 %]</a></li>
18
    <li><a href="#letters" onclick="kivi.CustomerVendorTurnover.get_letters();">[% 'Letters' | $T8 %]</a></li>
19
  </ul>
20
  <div id="turnover_stat">[% PROCESS "customer_vendor_turnover/turnover_statistic.html" %]</div>
21
  <div id="dun_stat">[% PROCESS "customer_vendor_turnover/dun_statistic.html" %]</div>
22
  <div id="quotations"></div>
23
  <div id="orders"></div>
24
  <div id="invoices"></div>
25
  <div id="mails"></div>
26
  <div id="letters"></div>
27
</div>
templates/design40_webpages/customer_vendor_turnover/count_open_items_by_year.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE HTML %]
5
<div id="dun_statistic">
6
  <table width="100%">
7
    <tbody>
8
      <tr>
9
        <td class="listheading">[% 'Month/Year' | $T8 %]</td>
10
        <td class="listheading">[% 'Dunnings' | $T8 %]</td>
11
        <td class="listheading">[% 'Highest Dunninglevel' | $T8 %]</td>
12
      </tr>
13

  
14
      [%- FOREACH row = SELF.dun_statistic %]
15
      <tr class="listrow[% loop.count % 2 %]">
16
        <td>[% row.date_part | html %]</td>
17
        <td>[% row.count | html %]</td>
18
        <td>[% row.max | html %]</td>
19
      </tr>
20
      [% END %]
21
    </tbody>
22
  </table>
23
</div>
templates/design40_webpages/customer_vendor_turnover/count_turnover.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE HTML %]
5
<div id="turnover_statistic">
6
  <table width="100%">
7
    <tbody>
8
      <tr>
9
        <td class="listheading">[% 'Month/Year' | $T8 %]</td>
10
        <td class="listheading">[% 'Invoices' | $T8 %]</td>
11
        <td class="listheading">[% 'Turnover' | $T8 %]</td>
12
        <td class="listheading">[% 'Net.Turnover' | $T8 %]</td>
13
        <td class="listheading">[% 'Paid' | $T8 %]</td>
14
      </tr>
15
      [%- FOREACH row = SELF.turnover_statistic %]
16
      <tr class="listrow[% loop.count % 2 %]">
17
        <td>[% row.date_part | html %]</td>
18
        <td>[% row.count | html %]</td>
19
        <td class="numeric">[%- LxERP.format_amount(row.amount,2) %]</td>
20
        <td class="numeric">[%- LxERP.format_amount(row.netamount,2) %]</td>
21
        <td class="numeric">[%- LxERP.format_amount(row.paid,2) %]</td>
22
      </tr>
23
      [% END %]
24

  
25
    </tbody>
26
  </table>
27
</div>
templates/design40_webpages/customer_vendor_turnover/dun_statistic.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE HTML %]
5

  
6
<p>
7
[% L.radio_button_tag('period', value='year', label= LxERP.t8('Year'), onclick='kivi.CustomerVendorTurnover.show_dun_stat("y");') %]
8

  
9
[% L.radio_button_tag('period', value='month', label= LxERP.t8('Month'), onclick='kivi.CustomerVendorTurnover.show_dun_stat("m");') %]
10
</p>
11
<div id="duns"></div>
templates/design40_webpages/customer_vendor_turnover/email_statistic.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE HTML %]
5
[%- USE Dumper %]
6

  
7
<div id="invoice_statistic">
8
  <table width="100%">
9
    <tbody>
10
      <tr>
11
        <td class="listheading">[% 'Sent on' | $T8 %]</td>
12
        <td class="listheading">[% 'Subject' | $T8 %]</td>
13
        <td class="listheading">[% 'Record Type' | $T8 %]</td>
14
        <td class="listheading">[% 'Record number' | $T8 %]</td>
15
        <td class="listheading">[% 'From' | $T8 %]</td>
16
        <td class="listheading">[% 'To' | $T8 %]</td>
17
        <td class="listheading">[% 'Status' | $T8 %]</td>
18
      </tr>
19

  
20
      [%- FOREACH row = emails %]
21
      <tr class="listrow[% loop.count % 2 %]">
22
        <td>[% row.sent_on | html %]</td>
23
        <td>
24
          <a href="[% SELF.url_for(controller='controller.pl', action => 'EmailJournal/show', id => row.id, back_to => SELF.get_callback) %]">
25
           [%- HTML.escape(row.subject) %]
26
          </a></td>
27
        <td>[% row.type | $T8 %]</td>
28
        <td>[% row.recordnumber | html %]</td>
29
        <td>[% row.from %]</td>
30
        <td>[% row.recipients %]</td>
31
        <td>[% row.status %]</td>
32
      </tr>
33
      [% END %]
34
    </tbody>
35
  </table>
36

  
37

  
38
    </tbody>
39
  </table>
40
</div>
templates/design40_webpages/customer_vendor_turnover/invoices_statistic.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE HTML %]
5
<div id="invoice_statistic">
6
  <table width="100%">
7
    <tbody>
8
      <tr>
9
        <td class="listheading">[% 'Type' | $T8 %]</td>
10
        <td class="listheading">[% 'Invoice Number' | $T8 %]</td>
11
        <td class="listheading">[% 'Invoice Date' | $T8 %]</td>
12
        <td class="listheading">[% 'Amount' | $T8 %]</td>
13
        <td class="listheading">[% 'Inv. Duedate' | $T8 %]</td>
14
        <td class="listheading">[% 'Paid' | $T8 %]</td>
15
        <td class="listheading">[% 'Open Amount' | $T8 %]</td>
16
      </tr>
17

  
18
      [%- FOREACH row = invoices %]
19
        [% IF FORM.db == 'customer' %]
20
          [% IF row.type == 'invoice' %]
21
            [% SET type = 'Invoice (one letter abbreviation)' %]
22
            [% SET link = 'is.pl' %]
23
          [% ELSIF row.type == 'credit_note' %]
24
            [% SET type = 'Credit note (one letter abbreviation)' %]
25
            [% SET link = 'is.pl' %]
26
          [% ELSE %]
27
            [% SET type = 'AR Transaction (abbreviation)' %]
28
            [% SET link = 'ar.pl' %]
29
          [% END %]
30
        [% ELSE %]
31
          [% IF row.invoice %]
32
            [% SET type = 'Invoice (one letter abbreviation)' %]
33
            [% SET link = 'ir.pl' %]
34
          [% ELSE %]
35
            [% SET type = 'AP Transaction (abbreviation)' %]
36
            [% SET link = 'ap.pl' %]
37
          [% END %]
38
        [% END %]
39
        <tr class="listrow[% loop.count % 2 %]">
40
          <td>[% type | $T8 %]</td>
41
          <td><a href="[% link %]?action=edit&id=[% row.id %]">[% row.invnumber | html %]</a></td>
42
          <td>[% row.transdate.to_kivitendo | html %]</td>
43
          <td class="numeric">[%- LxERP.format_amount(row.amount, 2) %]</td>
44
          <td>[% row.duedate.to_kivitendo | html %]</td>
45
          <td class="numeric">[%- LxERP.format_amount(row.paid, 2) %]</td>
46
          <td class="numeric">[%- LxERP.format_amount(row.amount - row.paid, 2) %]
47
        </tr>
48
      [% END %]
49
    </tbody>
50
  </table>
51

  
52

  
53
    </tbody>
54
  </table>
55
</div>
templates/design40_webpages/customer_vendor_turnover/letter_statistic.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE HTML %]
5
[%- USE Dumper %]
6

  
7
<div id="invoice_statistic">
8
  <table width="100%">
9
    <tbody>
10
      <tr>
11
        <td class="listheading">[% 'Date' | $T8 %]</td>
12
        <td class="listheading">[% 'Subject' | $T8 %]</td>
13
        <td class="listheading">[% 'Letternumber' | $T8 %]</td>
14
        <td class="listheading">[% 'Contact' | $T8 %]</td>
15
        <td class="listheading">[% 'Author' | $T8 %]</td>
16
      </tr>
17

  
18
      [%- FOREACH row = letters %]
19
      [% IF row.customer_id %]
20
        [% SET is_sales = 1 %]
21
      [% ELSE %]
22
        [% SET is_sales = 0 %]
23
      [% END %]
24
      <tr class="listrow[% loop.count % 2 %]">
25
        <td>[% row.date.to_kivitendo | html %]</td>
26
        <td>
27
          <a href="[% SELF.url_for(controller='controller.pl', action => 'Letter/edit', 'letter.id' => row.id, is_sales=is_sales, back_to => SELF.get_callback) %]">
28
           [%- HTML.escape(row.subject) %]
29
          </a>
30
        </td>
31
        <td>
32
          <a href="[% SELF.url_for(controller='controller.pl', action => 'Letter/edit', 'letter.id' => row.id, is_sales=is_sales, back_to => SELF.get_callback) %]">
33
          [% row.letternumber | html %]
34
          </a>
35
        </td>
36
        <td>[% row.contact.cp_givenname %] [% row.contact.cp_name %]</td>
37
        <td>[% row.employee.name %]</td>
38
      </tr>
39
      [% END %]
40
    </tbody>
41
  </table>
42

  
43

  
44
    </tbody>
45
  </table>
46
</div>
templates/design40_webpages/customer_vendor_turnover/order_statistic.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE HTML %]
5
<div id="invoice_statistic">
6
  <table width="100%">
7
    <tbody>
8
      <tr>
9
        <td class="listheading">[% 'Order Number' | $T8 %]</td>
10
        <td class="listheading">[% 'Order Date' | $T8 %]</td>
11
        <td class="listheading">[% 'Amount' | $T8 %]</td>
12
        <td class="listheading">[% 'Delivery Date' | $T8 %]</td>
13
        <td class="listheading">[% 'Transaction description' | $T8 %]</td>
14
      </tr>
15

  
16
      [%- FOREACH row = orders %]
17
      <tr class="listrow[% loop.count % 2 %]">
18
        [%- IF INSTANCE_CONF.get_feature_experimental_order -%]
19
          <td>[% IF row.id %]<a href='controller.pl?action=Order/edit&type=[% IF FORM.db == "customer" %]sales_order[% ELSE %]purchase_order[% END %]&id=[% HTML.escape(row.id) %]'>[% END %][% HTML.escape(row.ordnumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
20
        [%- ELSE -%]
21
          <td>[% IF row.id %]<a href='oe.pl?action=edit&type=[% IF FORM.db == "customer" %]sales_order[% ELSE %]purchase_order[% END %]&vc=[% FORM.db %]&id=[% HTML.escape(row.id) %]'>[% END %][% HTML.escape(row.ordnumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
22
        [%- END -%]
23
        <td>[% row.transdate.to_kivitendo | html %]</td>
24
        <td class="numeric">[%- LxERP.format_amount(row.amount, 2) %]</td>
25
        <td>[% row.reqdate.to_kivitendo | html %]</td>
26
        <td>[% row.transaction_description %]</td>
27
      </tr>
28
      [% END %]
29
    </tbody>
30
  </table>
31

  
32

  
33
    </tbody>
34
  </table>
35
</div>
templates/design40_webpages/customer_vendor_turnover/quotation_statistic.html
1
[%- USE T8 %]
2
[%- USE LxERP %]
3
[%- USE L %]
4
[%- USE HTML %]
5
<div id="invoice_statistic">
6
  <table width="100%">
7
    <tbody>
8
      <tr>
9
        <td class="listheading">[% IF FORM.db == 'customer' %][% 'Quotation Number' | $T8 %][% ELSE %][% 'RFQ Number' | $T8 %][% END %]</td>
10
        <td class="listheading">[% IF FORM.db == 'customer' %][% 'Quotation Date' | $T8 %][% ELSE %][% 'RFQ Date' | $T8 %][% END %]</td>
11
        <td class="listheading">[% 'Amount' | $T8 %]</td>
12
        <td class="listheading">[% 'Delivery Date' | $T8 %]</td>
13
        <td class="listheading">[% 'Transaction description' | $T8 %]</td>
14
      </tr>
15

  
16
      [%- FOREACH row = orders %]
17
      <tr class="listrow[% loop.count % 2 %]">
18
        [%- IF INSTANCE_CONF.get_feature_experimental_order -%]
19
          <td>[% IF row.id %]<a href='controller.pl?action=Order/edit&type=[% IF FORM.db == "customer" %]sales_quotation[% ELSE %]request_quotation[% END %]&id=[% HTML.escape(row.id) %]'>
20
              [% END %][% HTML.escape(row.quonumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
21
        [%- ELSE -%]
22
          <td>[% IF row.id %]<a href='oe.pl?action=edit&type=[% IF FORM.db == "customer" %]sales_quotation[% ELSE %]request_quotation[% END %]&vc=[% FORM.db %]&id=[% HTML.escape(row.id) %]'>
23
              [% END %][% HTML.escape(row.quonumber)   || '&nbsp;' %][% IF row.id %]</a>[% END %]</td>
24
        [%- END -%]
25
        <td>[% row.transdate.to_kivitendo | html %]</td>
26
        <td class="numeric">[%- LxERP.format_amount(row.amount, 2) %]</td>
... Dieser Diff wurde abgeschnitten, weil er die maximale Anzahl anzuzeigender Zeilen überschreitet.

Auch abrufbar als: Unified diff