<form action="[% c.uri_for() %]" METHOD="POST"> <select name="country"> <option value="">--</option> [% FOREACH country = c.model('Mirrors').country_list_with_mirror %] <option value="[% country.code %]" [% "selected=select" IF country.code == c.req.param('country') %]>[% country.name | html %]</option> [% END %] </select> <select name="protocol"> <option value="">--</option> [% FOREACH p = c.model('Mirrors').protocol_list %] <option value="[% p %]" [% "selected=select" IF p == c.req.param('protocol') %]>[% p %]</option> [% END %] </select> <input type="submit"> </form> [% db = c.model('Mirrors') %] [% mirrorslist = db.find_mirrors({ 'protocol' => c.req.param('protocol'), 'country' => c.req.param('country'), }) %] [% FOREACH item = mirrorslist %] [% IF loop.first %] <table border=1> <tr> <th>Server name</th> <th>Location</th> <th>Bandwidth</th> <th>Source</th> <th>Urls</th> <tr> [% END %] <tr> [% urls = db.find_urls({ "hostname" => item.hostname }) %] <td> <a href="[% c.uri_for('/mirrors', item.hostname) %]">[% item.hostname | html %]</a> </td> <td> [% IF item.name %] [% item.continent | html %], [% item.name | html %] [% END %] </td> <td> [% c.model('Mirrors').bandwidth_name(item.bandwidth) | html %] </td> <td> [% item.syncfrom | html %] </td> <td> [% IF item.public %] [% FOREACH u = urls %] [% IF u.valid %] <a href="[% u.url %]">[% u.protocol %]</a> [% ELSE %] <span style="color: red">[% u.protocol %]</span> [% END %] [% END %] [% ELSE %] Private access [% END %] </td> </tr> [% IF loop.last %] </table> [% END %] [% END %]