parent
9dd29d0441
commit
5905ee4d17
@ -0,0 +1,67 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
|
||||
{% if mode == "portfolio" and (not (include_close_button is defined) or (include_close_button is same as(true))) %} |
||||
{% set actions = (actions ? actions : [])|merge([{ |
||||
"icon": "times", |
||||
"content": "Close Window", |
||||
"color": "primary", |
||||
"outline": false, |
||||
"close_button": true}]) %} |
||||
{% endif %} |
||||
|
||||
{% if actions %} |
||||
<div class="text-center mt-4"> |
||||
{% block actionscontent %} |
||||
{% for action in actions %} |
||||
{% if action.close_button %} |
||||
<button data-bs-dismiss="modal" |
||||
|
||||
{% block attributes %} |
||||
class="btn {{ |
||||
(mode == "social") |
||||
? 'btn-social mx-1' |
||||
: 'mx-1 my-1' |
||||
}} |
||||
{%- if mode != "social" and not action.close_button and action.size != "medium" |
||||
%} {% if action.size in ["small", "large", "xlarge"] -%} |
||||
{{- action.size|replace({"small": "btn-sm", "large": "btn-lg", "xlarge": "btn-xl"}) -}} |
||||
{% else %}btn-xl |
||||
{%- endif -%} |
||||
{%- endif %} btn-{{ |
||||
( |
||||
action.outline is same as(true) or |
||||
mode in ["about", "social"] |
||||
) ? 'outline-' }}{{ |
||||
(action.color in ["primary", "secondary", "success", "danger", "warning", "info", "light", "dark"]) |
||||
? action.color |
||||
: ( |
||||
(mode in ["about", "social"]) |
||||
? 'light' |
||||
: 'primary' |
||||
) |
||||
}}{% if action.disabled %} disabled{% endif %} |
||||
{%- if action.close_button %} d-block mx-auto mt-4{% endif %}" |
||||
{% if action.link and not action.disabled %} href="{{ action.link|url }}" {% endif %} |
||||
{% endblock attributes %} |
||||
> |
||||
|
||||
{% block contentlink %} |
||||
{% if action.icon %} |
||||
<i class="{{ [(action.brands ? 'fab' : 'fas'), 'fa-fw', ('fa-' ~ action.icon), (mode != 'social' ? 'me-2')]|join(' ')}}"></i> |
||||
{% endif %} |
||||
{{ mode != "social" ? action.content }} |
||||
{% endblock contentlink %} |
||||
|
||||
</button> |
||||
{% else %} |
||||
<a {{ block('attributes') }}> |
||||
{{ block('contentlink') }} |
||||
</a> |
||||
{% endif %} |
||||
{% endfor %} |
||||
{% endblock actionscontent %} |
||||
</div> |
||||
{% else %} |
||||
{{ block('actionscontent') }} |
||||
{% endif %} |
@ -0,0 +1,19 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
{% for paragraph in content|split("\n")|filter(e=>e is not empty) %} {# small mb-0 #} |
||||
{% if mode == "about" %} |
||||
<div class="col-lg-4{{ loop.first : " ms-auto" : "" }}{{ loop.last : " me-auto" : "" }}"> |
||||
{% block paragapheblock %} |
||||
<p class="{{ (mode == "about") ? "lead" : ( |
||||
(mode == "footer") ? "lead mb-0" : ( |
||||
(mode == "copyright") ? "small mb-0" : "" |
||||
) |
||||
) }}"> |
||||
{{ paragraph|markdown(singleLine=true) }} |
||||
</p> |
||||
{% endblock paragapheblock %} |
||||
</div> |
||||
{% else %} |
||||
{{ block('paragapheblock') }} |
||||
{% endif %} |
||||
{% endfor %} |
@ -0,0 +1,26 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
{% set known_video_types = { |
||||
"3gp":"video/3gpp", |
||||
"3g2":"video/3gpp2", |
||||
"avi":"video/x-msvideo", |
||||
"mpg":"video/mpeg", |
||||
"mpeg":"video/mpeg", |
||||
"mp4":"video/mp4", |
||||
"mov":"video/quicktime", |
||||
"ogv":"video/ogg", |
||||
"ts":"video/mp2t", |
||||
"qt":"video/quicktime", |
||||
"webm":"video/webm", |
||||
"wmv":"video/x-ms-wmv", |
||||
} %} |
||||
<video |
||||
class="img-fluid rounded d-block mx-auto{% if mode == "content" %} mb-5{% endif %}" |
||||
{% if image %} poster="{{ image|url }}" {% endif %} |
||||
{% if mode == "portfolio" %} autoplay muted loop {% else %} controls {% endif %}> |
||||
{% for source in (video is iterable and (not (video[1] starts with "video/") or ("." in video[1])) ? video : [video]) %} |
||||
{% set mime = (source is iterable) ? source[1] : known_video_types[source|split(".")|last] %} |
||||
<source src="{{ source is iterable ? source[0]|url : source|url }}" {% if mime %} type="{{ mime }}" {% endif %}> |
||||
{% endfor %} |
||||
Your browser does not support this video! |
||||
</video> |
@ -1,53 +0,0 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
{% macro actions(actions, mode, include_close_button = true) %} |
||||
{% set has_actions = actions ? true : false %} |
||||
{{ has_actions ? '<div class="text-center mt-4">' }} |
||||
{% if mode == "portfolio" and include_close_button %} |
||||
{% set close_button = {"icon": "times", "content": "Close Window", "color": "primary", "outline": false, "close_button": true} %} |
||||
{% set actions = actions ? actions|merge([close_button]) : [close_button] %} |
||||
{% endif %} |
||||
|
||||
{% for action in actions %} |
||||
{% set classes = ["btn"] %} |
||||
{% if mode == "social" %} |
||||
{% set classes = classes|merge(["btn-social","mx-1"]) %} |
||||
{% else %} |
||||
{% set classes = classes|merge(["mx-1", "my-1"]) %} |
||||
{% endif %} |
||||
{% set size = "btn-xl" %} |
||||
{% set color = mode in ["about", "social"] ? "light" : "primary" %} |
||||
{% set outline = mode in ["about", "social"] ? true : false %} |
||||
|
||||
{% if action.size in ["small", "large", "xlarge"] %} |
||||
{% set size = action.size|replace({"small": "btn-sm", "large": "btn-lg", "xlarge": "btn-xl"}) %} |
||||
{% endif %} |
||||
|
||||
{% if action.color in ["primary", "secondary", "success", "danger", "warning", "info", "light", "dark"] %} |
||||
{% set color = action.color %} |
||||
{% endif %} |
||||
|
||||
{% if action.outline is defined and action.outline in [true, false] %} |
||||
{% set outline = action.outline %} |
||||
{% endif %} |
||||
|
||||
{% if mode != "social" and not action.close_button and action.size != "medium" %}{% set classes = classes|merge([size]) %}{% endif %} |
||||
|
||||
{% set classes = classes|merge([["btn-", (outline ? "outline-"), color ]|join]) %} |
||||
|
||||
{% if action.disabled %}{% set classes = classes|merge(["disabled"]) %}{% endif %} |
||||
|
||||
{% if action.close_button %} |
||||
{% set classes = classes|merge(["d-block", "mx-auto", "mt-4"]) %} |
||||
{% endif %} |
||||
|
||||
{{ action.close_button ? '<button data-bs-dismiss="modal"' : "<a" }} class="{{ classes|join(" ") }}" {% if action.link and not action.disabled %} href="{{ action.link|url }}" {% endif %}> |
||||
{% if action.icon %} |
||||
<i class="{{ [(action.brands ? 'fab' : 'fas'), 'fa-fw', ('fa-' ~ action.icon), (mode != 'social' ? 'me-2')]|join(' ')}}"></i> |
||||
{% endif %} |
||||
{{ mode != "social" ? action.content }} |
||||
{{ action.close_button ? "</button>" : "</a>" }} |
||||
|
||||
{% endfor %} |
||||
{{ has_actions ? "</div>" }} |
||||
{% endmacro %} |
@ -1,30 +0,0 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
{% macro markdown_by_paragraph(content, mode) %} |
||||
{% set content_array = [] %} |
||||
{% for paragraph in content|split("\n") %} |
||||
{% if paragraph %} |
||||
{% set content_array = content_array|merge([paragraph]) %} |
||||
{% endif %} |
||||
{% endfor %} |
||||
|
||||
{% for paragraph in content_array %} {# small mb-0 #} |
||||
{% set p_class = [] %} |
||||
{% if mode == "footer" or mode == "about" %}{% set p_class = p_class|merge(["lead"]) %}{% endif %} |
||||
{% if mode == "copyright" %}{% set p_class = p_class|merge(["small"]) %}{% endif %} |
||||
{% if mode == "footer" or mode == "copyright" %}{% set p_class = p_class|merge(["mb-0"]) %}{% endif %} |
||||
|
||||
{% if mode == "about" %} |
||||
{% set div_class = ["col-lg-4"] %} |
||||
{% if loop.first %} |
||||
{% set div_class = div_class|merge(["ms-auto"]) %} |
||||
{% endif %} |
||||
{% if loop.last %} |
||||
{% set div_class = div_class|merge(["me-auto"]) %} |
||||
{% endif %} |
||||
<div class="{{ div_class|join(" ") }}"> |
||||
{% endif %} |
||||
<p class="{{ p_class|join(" ") }}">{{ paragraph|markdown(singleLine=true) }}</p> |
||||
{{ mode == "about" ? "</div>" }} |
||||
{% endfor %} |
||||
{% endmacro %} |
@ -1,37 +0,0 @@ |
||||
{# SPDX-License-Identifier: EUPL-1.2 #} |
||||
|
||||
{% macro video(video, image, mode, loop_index=0) %} |
||||
{% set known_video_types = { |
||||
"3gp":"video/3gpp", |
||||
"3g2":"video/3gpp2", |
||||
"avi":"video/x-msvideo", |
||||
"mpg":"video/mpeg", |
||||
"mpeg":"video/mpeg", |
||||
"mp4":"video/mp4", |
||||
"mov":"video/quicktime", |
||||
"ogv":"video/ogg", |
||||
"ts":"video/mp2t", |
||||
"qt":"video/quicktime", |
||||
"webm":"video/webm", |
||||
"wmv":"video/x-ms-wmv", |
||||
} %} |
||||
<video class="img-fluid rounded d-block mx-auto{% if mode == "content" %} mb-5{% endif %}" {% if image %} poster="{{ image|url }}" {% endif %} {% if mode == "portfolio" %} autoplay muted loop {% else %} controls {% endif %}> |
||||
{% set sources = video is iterable and (not (video[1] starts with "video/") or ("." in video[1])) ? video : [video] %} |
||||
{% for source in sources %} |
||||
{% if source is iterable %} |
||||
{% set mime = source[1] %} |
||||
{% else %} |
||||
{% set mime = known_video_types[source|split(".")|last] %} |
||||
{% endif %} |
||||
<source src="{{ source is iterable ? source[0]|url : source|url }}" {% if mime %} type="{{ mime }}" {% endif %}> |
||||
{% endfor %} |
||||
Your browser does not support this video! |
||||
</video> |
||||
{% if mode == "portfolio_modal" %} |
||||
<script> |
||||
jQuery('#portfolioModal{{ loop_index }}').on('hidden.bs.modal', function (e) { |
||||
jQuery('#portfolioModal{{ loop_index }} video').trigger('pause'); |
||||
}); |
||||
</script> |
||||
{% endif %} |
||||
{% endmacro %} |
Loading…
Reference in new issue