Mercurial > libervia-templates
changeset 325:8c779fb46384
bulma (components/block): interests_grid is more customisable:
- new `delete_icon` argument can be set to `false` if delete icon is not desired
- the macro can now be called, the caller then get 2 arguments: part to customise and
current interest. Part to customise can be:
* `header-title`: markup to put in the title
* `content`: car content (replaces the default `interest.name`)
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 01 May 2021 18:44:47 +0200 |
parents | 580fa5482e88 |
children | f3c8a6af4ee2 |
files | sat_templates/templates/bulma/components/block.html |
diffstat | 1 files changed, 21 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/sat_templates/templates/bulma/components/block.html Sat May 01 18:41:11 2021 +0200 +++ b/sat_templates/templates/bulma/components/block.html Sat May 01 18:44:47 2021 +0200 @@ -46,18 +46,29 @@ </div> {% endmacro %} -{% macro interests_grid(interests, default_icon_name) %} +{% macro interests_grid(interests, default_icon_name, delete_icon=true) %} {# display list of interests + + Can be called, in which call caller is called with 2 arguments: + - part: par to fill, can be "header-title" or "content" + - interest: current interest @param interests: list of interests @param default_icon_name: name of a defined icon to use when no thumb_url is available + @param delete_icon: unset to remove the icon #} <div class="columns is-multiline"> {% for interest in interests %} <div class="column is-4 item" data-item='{{interest|tojson}}'> <div class="card"> <div class="card-header"> - <div class="card-header-title"></div> - <div class="card-header-icon"><button class="delete action_delete"></button></div> + <div class="card-header-title"> + {% if caller is defined %} + {{ caller("header-title", interest) }} + {% endif %} + </div> + {% if delete_icon %} + <div class="card-header-icon"><button class="delete action_delete"></button></div> + {% endif %} </div> <div class="card-image is-photo-thumbnail-container is-flex has-items-centered has-background-light"> <a href="{{interest.url}}"> @@ -71,9 +82,13 @@ </a> </div> <div class="card-content has-text-centered x-is-hoverable"> - <a href="{{interest.url}}"> - <span><em>{{ interest.name|default(_("unnamed")) }}</em></span> - </a> + {% if caller is defined %} + {{ caller("content", interest) }} + {% else %} + <a href="{{interest.url}}"> + <span><em>{{ interest.name|default(_("unnamed")) }}</em></span> + </a> + {% endif %} </div> </div> </div>