The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
[% DEFAULT
    model = 'Employee',
    rows = [
        { name => "Carrie", age => 24 },
        { name => "agentzh", age => 25 },
        { name => "laser", age => 35 },
    ],
    pat = 'hello'
%]
[% SET op2name = {
        lt => '<',
        le => '<=',
        gt => '>',
        ge => '>=',
        eq => '=',
        ne => '<>',
   }
%]

[% BLOCK editable_row_value -%]
<span class="editable" [% type ? 'resty_type="' _ type _ '"' : "" %] resty_path="model/[% model %]/id/[% id %]" resty_key="[% key %]" resty_value="[% value | html %]">[% value | html %]</span>
[% END -%]


<div class="ttl">
    <span class="text">
        <a href="#model-[% model %]">[% model %]</a>
    </span>
    <span class="total-rows"></span>
</div>

<p style="padding-top: 5px; padding-left: 2em; text-align: left">
<a href="javascript:void(0);" onclick="$('.location-anchor')[0].id = null; $('.end-anchor')[0].id = savedAnchor; location.hash = savedAnchor">Go to end
</a></p>

<span class="search-box">
    <form onsubmit="searchRows('[% model %]');return false;">
        <label>Search rows</label>&nbsp; &nbsp;
        <input id="search-box-input" type="text" size="15" value="[% pat == '~' ? '' : pat | html %]"></input>
        [%- row = rows.first %]
            in
            <select id="search-in">
                    <option value="_all">All columns</option>
            [%- IF row %]
                [%- FOREACH key IN row.keys %]
                    <option value="[%- key | html %]"
                        [% key == column ? 'selected="selected"' : '' %]
                    >[% key | html %]</option>
                [%- END %]
            [%- ELSIF column != '_all' %]
                <option value="[% column %]" selected="selected">[% column | html %]</option>
            [%- END %]
            </select>
            using
            <select id="search-op">
                [%- FOREACH item IN ['contains', 'eq', 'lt', 'le', 'gt', 'ge', 'ne'] %]
                    <option value="[% item %]" [% item == operator ? 'selected="selected"' : '' %]>[% op2name.$item || item %]</option>
                [%- END %]
            </select>
            <input type="submit" value="  Go!  "></input>
    </form>
</span>

<div class="pager"></div>

<div class="listcon">
    <ul>
        [%- FOREACH row IN rows %]
            <li>
            [%- FOREACH key IN row.keys.sort %]
            [%- value = row.$key %]
            <b class="key">[%- key | html %]</b>: [% INCLUDE editable_row_value id=row.id %] <br/>
            [%- END %]

            <b><a href="javascript:void(0);" onclick="deleteModelRow('[% model %]', [% row.id %])">Delete</a></b>

            </li>
            <hr/>
        [%- END %]
    </ul>
</div>

<div class="pager"></div>

<p style="text-align: left; margin-left: 6em;">
<b><a href="javascript:void(0);" title="Add a new row" onclick="getModelRowForm('[% model %]')">Add a new row</a></b>
&nbsp; &nbsp; &nbsp; &nbsp;
<b><a href="javascript:void(0);" title="Add multiple new rows" onclick="getModelBulkRowForm('[% model %]')">Add multiple rows</a></b>
&nbsp; &nbsp; &nbsp; &nbsp;
<b><a href="javascript:void(0);" title="Delete all rows" onclick="deleteAllModelRows('[% model %]', '[% column | html %]', '[% operator | html %]')">Delete all rows</a></b>
&nbsp; &nbsp; &nbsp; &nbsp;
<b><a href="javascript:void(0);" title="Dump rows in JSON" onclick="dumpModelRows('[% model %]', '[% column | html %]', '[% operator | html %]', 'json')">Dump model rows in JSON</a> <span style="color: black">or</span>
<a href="javascript:void(0);" title="Dump rows in CSV" onclick="dumpModelRows('[% model %]', '[% column | html %]', '[% operator | html %]', 'csv')">CSV</a></b>

</p>
<br/>
<p style="text-align: left; margin-left: 6em;" id="new-row"></p>
<a name="" id="" class="end-anchor"></a>