Test harness for template fragments

Author Message

Sol Millin

Monday 14 April 2003 2:50:43 pm

Could one of you 'gurus' please tell me how to test fragments of templates.

For example, here is some code from you manual...

My limited knowledge suggests I'd need a database, a site, and some override templates... but which ones??

I suppose I would run it as a URI on localhost (I've got ez3 installed on my laptop)

Forgive my lack of knowledge... but I'm trying...

Sol Millin
byron bay
australia

h2>Showing the template variables for different loop types</h2>
<p>For each iteration you can see the template variables which are set by the section function,
they are <b>index</b>:<b>number</b>:<b>key</b></p>

<h3>Looping an array of numbers</h3>

{section name=Num loop=$numbers offset=2 max=2}
{$Num:index}:{$Num:number}:{$Num:key} Number: {$Num:item}<br/>

{/section}

<h3>Looping an associative array</h3>

{section name=Num loop=$assoc}
{$Num:index}:{$Num:number}:{$Num:key} Text: {$Num:item}<br/>

{/section}

<h3>Iterating 5 times</h3>

{section name=Num loop=5 sequence=array(red,blue)}
{section-exclude match=$Num:item|gt(3)}
{section-exclude match=$Num:item|lt(3)}
{section-include match=$Num:item|lt(2)}
{$Num:sequence}-{$Num:index}:{$Num:number}:{$Num:key} Number: {$Num:item}<br/>

{/section}

<h3>Iterating 5 times, backwards</h3>

{section name=Num loop=-5}
{$Num:index}:{$Num:number}:{$Num:key} Number: {$Num:item}<br/>

{/section}

<br/>

<h3>Looping over a multi-dim array</h3>
{* Looping over a multi-dim array and with a sequence *}
<table>
<th>URI</th><th>Name</th>
{section name=Loop loop=$menu:items sequence=array(odd,even)}
<tr><td>{$Loop:sequence} - {$Loop:item.uri}</td><td class={$Loop:sequence}>{$Loop:item.name}</td></tr>
{/section}
</table>

{* This section is controlled by the show parameter, if true the section is used (in this case false) *}
<p>Show list={$show_list|choose('off','on')}</p>
<p>{section name=Loop loop=$menu:items show=$show_list}
{$Loop:item.uri} : {$Loop:item.name}<br />
{/section}</p>

{* This section will only show the {section-else} part since the show item is false *}
{section name=Loop show=0}
<p>abc {$Loop:item} def</p>
{section-else}
<p>Shown for zero or empty vars</p>
{/section}

{* Numeric looping, also shows the use of the {delimiter} function *}
<h2>Loop 5 times</h2>
{section name=Loop loop=5}
{$Loop:item}
{delimiter}.{/delimiter}
{/section}

<h2>Loop 5 times negative</h2>
{section name=Loop loop=-5}
{$Loop:key}
{delimiter}::{/delimiter}
{/section}

Gunnstein Lye

Friday 02 May 2003 7:52:11 am

I suggest simply using design/admin/templates/pagelayout.tpl if you want to test these temaplate fragments. Put them at the top of the file.
Yes, you need a working site to test this.

Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2014 eZ Systems AS (except where otherwise noted). All rights reserved.

eZ debug

Timing: Jan 18 2025 05:21:15
Script start
Timing: Jan 18 2025 05:21:15
Module start 'layout'
Timing: Jan 18 2025 05:21:15
Module start 'content'
Timing: Jan 18 2025 05:21:16
Module end 'content'
Timing: Jan 18 2025 05:21:16
Script end

Main resources:

Total runtime0.9792 sec
Peak memory usage4,096.0000 KB
Database Queries54

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0076 587.9141152.6250
Module start 'layout' 0.00760.0049 740.539139.4609
Module start 'content' 0.01260.9650 780.0000513.4922
Module end 'content' 0.97760.0015 1,293.492212.1563
Script end 0.9791  1,305.6484 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00350.3567160.0002
Check MTime0.00160.1589160.0001
Mysql Total
Database connection0.00100.106410.0010
Mysqli_queries0.916093.5445540.0170
Looping result0.00090.0895520.0000
Template Total0.932495.220.4662
Template load0.00270.273520.0013
Template processing0.929794.946520.4648
Template load and register function0.00010.014810.0001
states
state_id_array0.00160.160310.0016
state_identifier_array0.00110.114620.0006
Override
Cache load0.00240.2493680.0000
Sytem overhead
Fetch class attribute can translate value0.00070.066520.0003
Fetch class attribute name0.00250.254330.0008
XML
Image XML parsing0.00050.054620.0003
class_abstraction
Instantiating content class attribute0.00000.000730.0000
General
dbfile0.00130.1330160.0001
String conversion0.00000.001240.0000
Note: percentages do not add up to 100% because some accumulators overlap

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
2content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
13content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
12content/datatype/view/ezxmltags/line.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/line.tplEdit templateOverride template
1content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
1print_pagelayout.tpl<No override>extension/community/design/community/templates/print_pagelayout.tplEdit templateOverride template
 Number of times templates used: 30
 Number of unique templates used: 6

Time used to render debug report: 0.0001 secs