2 function chLocation(newLocation) { document.location = newLocation; }
5 {$forms.reportForm.open}
8 <table border="0" cellpadding="3" cellspacing="1" width="100%">
10 <td valign="top" class="sectionHeaderNoBorder" align="center">{$i18n.form.report.export} {if file_exists('WEB-INF/lib/tcpdf')}<a href="topdf.php">PDF</a>,{/if} <a href="tofile.php?type=xml">XML</a> {$i18n.label.or} <a href="tofile.php?type=csv">CSV</a></td>
13 <table border="0" cellpadding="3" cellspacing="1" width="100%">
14 <!-- totals only report -->
15 {if $bean->getAttribute('chtotalsonly')}
17 <td class="tableHeader">{$group_by_header|escape:'html'}</td>
18 {if $bean->getAttribute('chduration')}<td class="tableHeaderCentered" width="5%">{$i18n.label.duration}</td>{/if}
19 {if $bean->getAttribute('chcost')}<td class="tableHeaderCentered" width="5%">{$i18n.label.cost}</td>{/if}
21 {foreach $subtotals as $subtotal}
22 <tr class="rowReportSubtotal">
23 <td class="cellLeftAlignedSubtotal">{if $subtotal['name']}{$subtotal['name']|escape:'html'}{else} {/if}</td>
24 {if $bean->getAttribute('chduration')}<td class="cellRightAlignedSubtotal">{$subtotal['time']}</td>{/if}
25 {if $bean->getAttribute('chcost')}<td class="cellRightAlignedSubtotal">{if $user->canManageTeam() || $user->isClient()}{$subtotal['cost']}{else}{$subtotal['expenses']}{/if}</td>{/if}
29 <tr><td> </td></tr>
30 <tr class="rowReportSubtotal">
31 <td class="cellLeftAlignedSubtotal">{$i18n.label.total}</td>
32 {if $bean->getAttribute('chduration')}<td nowrap class="cellRightAlignedSubtotal">{$totals['time']}</td>{/if}
33 {if $bean->getAttribute('chcost')}<td nowrap class="cellRightAlignedSubtotal">{$user->currency|escape:'html'} {if $user->canManageTeam() || $user->isClient()}{$totals['cost']}{else}{$totals['expenses']}{/if}</td>{/if}
36 <!-- normal report -->
38 <td class="tableHeader">{$i18n.label.date}</td>
39 {if $user->canManageTeam() || $user->isClient()}<td class="tableHeader">{$i18n.label.user}</td>{/if}
40 {if $bean->getAttribute('chclient')}<td class="tableHeader">{$i18n.label.client}</td>{/if}
41 {if $bean->getAttribute('chproject')}<td class="tableHeader">{$i18n.label.project}</td>{/if}
42 {if $bean->getAttribute('chtask')}<td class="tableHeader">{$i18n.label.task}</td>{/if}
43 {if $bean->getAttribute('chcf_1')}<td class="tableHeader">{$custom_fields->fields[0]['label']|escape:'html'}</td>{/if}
44 {if $bean->getAttribute('chstart')}<td class="tableHeaderCentered" width="5%">{$i18n.label.start}</td>{/if}
45 {if $bean->getAttribute('chfinish')}<td class="tableHeaderCentered" width="5%">{$i18n.label.finish}</td>{/if}
46 {if $bean->getAttribute('chduration')}<td class="tableHeaderCentered" width="5%">{$i18n.label.duration}</td>{/if}
47 {if $bean->getAttribute('chnote')}<td class="tableHeader">{$i18n.label.note}</td>{/if}
48 {if $bean->getAttribute('chcost')}<td class="tableHeaderCentered" width="5%">{$i18n.label.cost}</td>{/if}
49 {if $bean->getAttribute('chinvoice')}<td class="tableHeader">{$i18n.label.invoice}</td>{/if}
51 {foreach $report_items as $item}
52 <!-- print subtotal for a block of grouped values -->
53 {$cur_date = $item.date}
55 {$cur_grouped_by = $item.grouped_by}
56 {if $cur_grouped_by != $prev_grouped_by && !$first_pass}
57 <tr class="rowReportSubtotal">
58 <td class="cellLeftAlignedSubtotal">{$i18n.label.subtotal}
59 {if $user->canManageTeam() || $user->isClient()}<td class="cellLeftAlignedSubtotal">{if $group_by == 'user'}{$subtotals[$prev_grouped_by]['name']|escape:'html'}</td>{/if}{/if}
60 {if $bean->getAttribute('chclient')}<td class="cellLeftAlignedSubtotal">{if $group_by == 'client'}{$subtotals[$prev_grouped_by]['name']|escape:'html'}</td>{/if}{/if}
61 {if $bean->getAttribute('chproject')}<td class="cellLeftAlignedSubtotal">{if $group_by == 'project'}{$subtotals[$prev_grouped_by]['name']|escape:'html'}</td>{/if}{/if}
62 {if $bean->getAttribute('chtask')}<td class="cellLeftAlignedSubtotal">{if $group_by == 'task'}{$subtotals[$prev_grouped_by]['name']|escape:'html'}</td>{/if}{/if}
63 {if $bean->getAttribute('chcf_1')}<td class="cellLeftAlignedSubtotal">{if $group_by == 'cf_1'}{$subtotals[$prev_grouped_by]['name']|escape:'html'}</td>{/if}{/if}
64 {if $bean->getAttribute('chstart')}<td></td>{/if}
65 {if $bean->getAttribute('chfinish')}<td></td>{/if}
66 {if $bean->getAttribute('chduration')}<td class="cellRightAlignedSubtotal">{$subtotals[$prev_grouped_by]['time']}</td>{/if}
67 {if $bean->getAttribute('chnote')}<td></td>{/if}
68 {if $bean->getAttribute('chcost')}<td class="cellRightAlignedSubtotal">{if $user->canManageTeam() || $user->isClient()}{$subtotals[$prev_grouped_by]['cost']}{else}{$subtotals[$prev_grouped_by]['expenses']}{/if}</td>{/if}
69 {if $bean->getAttribute('chinvoice')}<td></td>{/if}
71 <tr><td> </td></tr>
75 <!-- print regular row -->
76 {if $cur_date != $prev_date}
77 {if $report_row_class == 'rowReportItem'} {$report_row_class = 'rowReportItemAlt'} {else} {$report_row_class = 'rowReportItem'} {/if}
79 <tr class="{$report_row_class}">
80 <td class="cellLeftAligned">{$item.date}</td>
81 {if $user->canManageTeam() || $user->isClient()}<td class="cellLeftAligned">{$item.user|escape:'html'}</td>{/if}
82 {if $bean->getAttribute('chclient')}<td class="cellLeftAligned">{$item.client|escape:'html'}</td>{/if}
83 {if $bean->getAttribute('chproject')}<td class="cellLeftAligned">{$item.project|escape:'html'}</td>{/if}
84 {if $bean->getAttribute('chtask')}<td class="cellLeftAligned">{$item.task|escape:'html'}</td>{/if}
85 {if $bean->getAttribute('chcf_1')}<td class="cellLeftAligned">{$item.cf_1|escape:'html'}</td>{/if}
86 {if $bean->getAttribute('chstart')}<td nowrap class="cellRightAligned">{$item.start}</td>{/if}
87 {if $bean->getAttribute('chfinish')}<td nowrap class="cellRightAligned">{$item.finish}</td>{/if}
88 {if $bean->getAttribute('chduration')}<td class="cellRightAligned">{$item.duration}</td>{/if}
89 {if $bean->getAttribute('chnote')}<td class="cellLeftAligned">{$item.note|escape:'html'}</td>{/if}
90 {if $bean->getAttribute('chcost')}<td class="cellRightAligned">{if $user->canManageTeam() || $user->isClient()}{$item.cost}{else}{$item.expense}{/if}</td>{/if}
91 {if $bean->getAttribute('chinvoice')}
92 <td class="cellRightAligned">{$item.invoice|escape:'html'}</td>
94 {if 1 == $item.type}<td bgcolor="white"><input type="checkbox" name="log_id_{$item.id}"></td>{/if}
95 {if 2 == $item.type}<td bgcolor="white"><input type="checkbox" name="item_id_{$item.id}"></td>{/if}
99 {$prev_date = $item.date}
100 {if $print_subtotals} {$prev_grouped_by = $item.grouped_by} {/if}
102 <!-- print a terminating subtotal -->
103 {if $print_subtotals}
104 <tr class="rowReportSubtotal">
105 <td class="cellLeftAlignedSubtotal">{$i18n.label.subtotal}
106 {if $user->canManageTeam() || $user->isClient()}<td class="cellLeftAlignedSubtotal">{if $group_by == 'user'}{$subtotals[$cur_grouped_by]['name']|escape:'html'}</td>{/if}{/if}
107 {if $bean->getAttribute('chclient')}<td class="cellLeftAlignedSubtotal">{if $group_by == 'client'}{$subtotals[$cur_grouped_by]['name']|escape:'html'}</td>{/if}{/if}
108 {if $bean->getAttribute('chproject')}<td class="cellLeftAlignedSubtotal">{if $group_by == 'project'}{$subtotals[$cur_grouped_by]['name']|escape:'html'}</td>{/if}{/if}
109 {if $bean->getAttribute('chtask')}<td class="cellLeftAlignedSubtotal">{if $group_by == 'task'}{$subtotals[$cur_grouped_by]['name']|escape:'html'}</td>{/if}{/if}
110 {if $bean->getAttribute('chcf_1')}<td class="cellLeftAlignedSubtotal">{if $group_by == 'cf_1'}{$subtotals[$cur_grouped_by]['name']|escape:'html'}</td>{/if}{/if}
111 {if $bean->getAttribute('chstart')}<td></td>{/if}
112 {if $bean->getAttribute('chfinish')}<td></td>{/if}
113 {if $bean->getAttribute('chduration')}<td class="cellRightAlignedSubtotal">{$subtotals[$cur_grouped_by]['time']}</td>{/if}
114 {if $bean->getAttribute('chnote')}<td></td>{/if}
115 {if $bean->getAttribute('chcost')}<td class="cellRightAlignedSubtotal">{if $user->canManageTeam() || $user->isClient()}{$subtotals[$cur_grouped_by]['cost']}{else}{$subtotals[$cur_grouped_by]['expenses']}{/if}</td>{/if}
116 {if $bean->getAttribute('chinvoice')}<td></td>{/if}
119 <!-- print totals -->
120 <tr><td> </td></tr>
121 <tr class="rowReportSubtotal">
122 <td class="cellLeftAlignedSubtotal">{$i18n.label.total}</td>
123 {if $user->canManageTeam() || $user->isClient()}<td></td>{/if}
124 {if $bean->getAttribute('chclient')}<td></td>{/if}
125 {if $bean->getAttribute('chproject')}<td></td>{/if}
126 {if $bean->getAttribute('chtask')}<td></td>{/if}
127 {if $bean->getAttribute('chcf_1')}<td></td>{/if}
128 {if $bean->getAttribute('chstart')}<td></td>{/if}
129 {if $bean->getAttribute('chfinish')}<td></td>{/if}
130 {if $bean->getAttribute('chduration')}<td class="cellRightAlignedSubtotal">{$totals['time']}</td>{/if}
131 {if $bean->getAttribute('chnote')}<td></td>{/if}
132 {if $bean->getAttribute('chcost')}<td nowrap class="cellRightAlignedSubtotal">{$user->currency|escape:'html'} {if $user->canManageTeam() || $user->isClient()}{$totals['cost']}{else}{$totals['expenses']}{/if}</td>{/if}
133 {if $bean->getAttribute('chinvoice')}<td></td>{/if}
140 {if $use_checkboxes && $report_items}
141 <table width="720" cellspacing="4" cellpadding="4" border="0">
145 <tr><td>{$forms.reportForm.recent_invoice.control} {$forms.reportForm.btn_submit.control}</td></tr>
151 {$forms.reportForm.close}
153 <table width="720" cellspacing="4" cellpadding="4" border="0">
158 <td><input type="button" onclick="chLocation('report_send.php');" value="{$i18n.button.send_by_email}"></td>