[% # This is a TT comment. The '-' at the end "chomps" the newline. You won't -%] [% # see this "chomping" in your browser because HTML ignores blank lines, but -%] [% # it WILL eliminate a blank line if you view the HTML source. It's purely -%] [%- # optional, but both the beginning and the ending TT tags support chomping. -%] [% # Provide a title to root/lib/site/header -%] [% META title = 'Book List' -%]
| Title | Rating | Author(s) | Links |
|---|---|---|---|
| [% book.title %] | [% book.rating %] | [% # First initialize a TT variable to hold a list. Then use a TT FOREACH -%] [% # loop in 'side effect notation' to load just the last names of the -%] [% # authors into the list. Note that the 'push' TT vmethod does not -%] [% # a value, so nothing will be printed here. But, if you have something -%] [% # in TT that does return a method and you don't want it printed, you -%] [% # can: 1) assign it to a bogus value, or 2) use the CALL keyword to -%] [% # call it and discard the return value. -%] [% tt_authors = [ ]; tt_authors.push(author.last_name) FOREACH author = book.authors %] [% # Now use a TT 'virtual method' to display the author count in parens -%] ([% tt_authors.size %]) [% # Use another TT vmethod to join & print the names & comma separators -%] [% tt_authors.join(', ') %] | [% # Add a link to delete a book %] Delete |
Hello [% Catalyst.user.username %], you have the following roles:
[% # Add some simple role-specific logic to template %] [% # Use $c->check_user_roles() to check authz -%] [% IF Catalyst.check_user_roles('user') %] [% # Give normal users a link for 'logout' %] Logout [% END %] [% # Can also use $c->user->check_roles() to check authz -%] [% IF Catalyst.check_user_roles('admin') %] [% # Give admin users a link for 'create' %] Create [% END %]