1{strip}
2	{if $heading ne 'n'}
3		{if $showItemId ne 'n'}
4			{assign var='comma' value='y'}
5			{$delimitorL}itemId{$delimitorR}
6		{/if}
7		{if $showStatus ne 'n'}
8			{if $comma eq 'y'}{$separator}{else}{assign var='comma' value='y'}{/if}
9			{$delimitorL}status{$delimitorR}
10		{/if}
11		{if $showCreated ne 'n'}
12			{if $comma eq 'y'}{$separator}{else}{assign var='comma' value='y'}{/if}
13			{$delimitorL}created{$delimitorR}
14		{/if}
15		{if $showLastModif ne 'n'}
16			{if $comma eq 'y'}{$separator}{else}{assign var='comma' value='y'}{/if}
17			{$delimitorL}lastModif{$delimitorR}
18		{/if}
19		{if !empty($listfields)}
20			{if $comma eq 'y'}{$separator}{else}{assign var='comma' value='y'}{/if}
21			{foreach item=field key=fieldId from=$listfields name=list}
22				{$delimitorL}{$field.name} -- {$fieldId}{$delimitorR}
23				{if !$smarty.foreach.list.last}{$separator}{/if}
24			{/foreach}
25		{/if}
26		{assign var='comma' value='n'}
27	{/if}
28{/strip}{* this empty line below is necessary to make data starts on the line after the headers *}
29
30{foreach from=$items item=item}
31{strip}{* DO NOT ident this strip - the line must not begin with space *}
32		{assign var='comma' value='n'}
33		{if $showItemId ne 'n'}
34			{assign var='comma' value='y'}
35			{$delimitorL}{$item.itemId}{$delimitorR}
36		{/if}
37		{if $showStatus eq 'y'}
38			{if $comma eq 'y'}{$separator}{else}{assign var='comma' value='y'}{/if}
39			{$delimitorL}{$item.status}{$delimitorR}
40		{/if}
41		{if $showCreated ne 'n'}
42			{if $comma eq 'y'}{$separator}{else}{assign var='comma' value='y'}{/if}
43			{$delimitorL}{$item.created|tiki_short_datetime}{$delimitorR}
44		{/if}
45		{if $showLastModif ne 'n'}
46			{if $comma eq 'y'}{$separator}{else}{assign var='comma' value='y'}{/if}
47			{$delimitorL}{$item.lastModif|tiki_short_datetime}{$delimitorR}
48		{/if}
49		{if !empty($listfields)}
50			{if $comma eq 'y'}{$separator}{else}{assign var='comma' value='y'}{/if}
51			{foreach item=field_value from=$item.field_values name=list}
52				{if $field_value.isHidden ne 'c' or ($field_value.isHidden eq 'c' and (in_array($user, $item.itemUsers) or $tiki_p_admin_trackers eq 'y'))}
53					{capture name="line"}
54						{trackeroutput field=$field_value item=$item list_mode='csv' showlinks='n'}
55					{/capture}
56					{$delimitorL}{$smarty.capture.line|replace:"\r\n":"$CR"|replace:"\n":"$CR"|replace:"<br>":"$CR"|replace:"$delimitorL":"$delimitorL$delimitorL"|replace:"$delimitorR":"$delimitorR$delimitorR"}{$delimitorR}
57				{else}
58					{$delimitorL}{$delimitorR}
59				{/if}
60				{if !$smarty.foreach.list.last}{$separator}{/if}
61			{/foreach}
62		{/if}
63	{/strip}{* this empty line below is necessary to make separate rows - but make sure there are no empty lines after the /foreach end tag to avoid empty rows being generated after every 100th row *}
64
65{/foreach}