{% extends "layout.twig" %}

{% set title = gateway.name~": Response" %}
{% block content %}

    {% if response.isSuccessful() %}

Congratulations, your request was successful!

    {% elseif response.isRedirect() %}

Your request requires redirect to an off-site payment page.

Redirect Now

    {% else %}

Sorry, your request failed.

    {% endif %}

The response object had the following to say:

$request->isSuccessful()

{{ response.isSuccessful() ? "true" : "false" }}

$request->isRedirect()

{{ response.isRedirect() ? "true" : "false" }}

$request->getMessage()

{{ response.message }}

$request->getGatewayReference()

{{ response.gatewayReference }}

$request->getData()

{{ dump(response.data) }}

{% endblock %}

Add getRedirectUrl() and getFormData() to example app display

{% extends "layout.twig" %}

{% set title = gateway.name~": Response" %}
{% block content %}

    {% if response.isSuccessful() %}

Congratulations, your request was successful!

    {% elseif response.isRedirect() %}

Your request requires redirect to an off-site payment page.

Redirect Now

    {% else %}

Sorry, your request failed.

    {% endif %}

The response object had the following to say:

$request->isSuccessful()

{{ response.isSuccessful() ? "true" : "false" }}

$request->isRedirect()

{{ response.isRedirect() ? "true" : "false" }}

    {% if response.redirectUrl is defined %}

$request->getRedirectUrl()

{{ response.redirectUrl }}

    {% endif %}

    {% if response.formData is defined %}

$request->getFormData()

{{ dump(response.formData) }}

    {% endif %}

$request->getMessage()

{{ response.message }}

$request->getGatewayReference()

{{ response.gatewayReference }}

$request->getData()

{{ dump(response.data) }}

{% endblock %}


        {% include directory ~ "/components/title-line/title-line.html.twig" with {
        title:config.title
        } only %}

        {% for sponsorList in families %}
            {% include directory ~ '/components/title-line/title-line.html.twig' with {
            title:sponsorList.title,
            } only %}

                    {% for sponsor in sponsorList.sponsors %}

                    {% endfor %}

        {% endfor %}

Fix bug on family twig template

        {% include directory ~ "/components/title-line/title-line.html.twig" with {
        title:config.title
        } only %}

        {% for sponsorList in families %}
            {% include directory ~ '/components/title-line/title-line.html.twig' with {
            title:sponsorList.title,
            } only %}

                    {% for sponsor in sponsorList.families %}

                    {% endfor %}

        {% endfor %}


{% extends 'ClasticFrontBundle::layout.html.twig' %}

{% block clastic_front_content_title %}
    <h1>{{ record.node.title }}</h1>
{% endblock %}

{% block clastic_front_content %}
     {{ dump(record.node) }}
{% endblock %}

Remove dump as it breaks inheritance on non-dev.

{% extends 'ClasticFrontBundle::layout.html.twig' %}

{% block clastic_front_content_title %}
    <h1>{{ record.node.title }}</h1>
{% endblock %}

{% block clastic_front_content %}
     {# Implement detail #}
{% endblock %}


{% extends 'form_div_layout.html.twig' %}

{%- block form_row -%}
    <div class="filter_element">
        {{ form_label(form) }}
        {{ form_errors(form) }}
        {{ form_widget(form) }}
    </div>
{%- endblock form_row -%}

Configure order admin section filter.

{% extends 'form_div_layout.html.twig' %}

{%- block form_row -%}
    <div class="filter_element">
        {{ form_label(form) }}
        {{ form_errors(form) }}
        {{ form_widget(form) }}
    </div>
{%- endblock form_row -%}

{%- block widget_attributes -%}
    {% set attr = attr | merge({ 'class': (attr.class | default('') ~ ' ' ~ form.vars.block_prefixes[1]) | trim }) %}
    {{ parent() }}
{%- endblock widget_attributes -%}


{% if breadcrumbs|length %}

    {% for crumb in breadcrumbs %}
        {% set crumbPath = path(crumb.route, crumb.routeParameters) %}
        {% set crumbText = crumb.label|trans(crumb.labelParameters) %}

        {{ crumbText }}

    {% endfor %}

{% endif %}

Remove anchor from last crumb

{% if breadcrumbs|length %}

        {% for crumb in breadcrumbs %}
            {% set crumbText = crumb.label|trans(crumb.labelParameters) %}
            {% if crumb.route == app.request.get('_route') %}

                    {{ crumbText }}

            {% else %}
                {% set crumbPath = path(crumb.route, crumb.routeParameters) %}

                    {{ crumbText }}

            {% endif %}
        {% endfor %}

{% endif %}


{% trans_default_domain 'admin' %}

{% import _self as breadcrumbs %}

{% macro render_crumb_link(url, title) %}
    {{ title | trans }}
{% endmacro %}

{% macro render_crumb(crumb, route_type, title) %}
    {% import _self as breadcrumbs %}

    {{ breadcrumbs.render_crumb_link(
        admin_path(
            crumb.entity,
            route_type,
            crumb.meta.parent ? { (crumb.meta.parent.association ~ ''): app.request.query.get(crumb.meta.parent.association) } : {}
        ),
        title
    ) }}
{% endmacro %}

    {{ breadcrumbs.render_crumb_link('darvin_admin_homepage', 'homepage.action.homepage.link') }}
    {% for crumb in crumbs %}
        {{ breadcrumbs.render_crumb(
            crumb,
            constant('Darvin\\AdminBundle\\Route\\AdminRouter::TYPE_INDEX'),
            crumb.meta.baseTranslationPrefix ~ 'action.index.link'
        ) }}
        {% if not loop.last or render_last %}
            {{ breadcrumbs.render_crumb(crumb, entity_route, crumb.entity) }}
        {% endif %}
    {% endfor %}

Fix homepage link in breadcrumbs.

{% trans_default_domain 'admin' %}

{% import _self as breadcrumbs %}

{% macro render_crumb_link(url, title) %}
    {{ title | trans }}
{% endmacro %}

{% macro render_crumb(crumb, route_type, title) %}
    {% import _self as breadcrumbs %}

    {{ breadcrumbs.render_crumb_link(
        admin_path(
            crumb.entity,
            route_type,
            crumb.meta.parent ? { (crumb.meta.parent.association ~ ''): app.request.query.get(crumb.meta.parent.association) } : {}
        ),
        title
    ) }}
{% endmacro %}

    {{ breadcrumbs.render_crumb_link(path('darvin_admin_homepage'), 'homepage.action.homepage.link') }}
    {% for crumb in crumbs %}
        {{ breadcrumbs.render_crumb(
            crumb,
            constant('Darvin\\AdminBundle\\Route\\AdminRouter::TYPE_INDEX'),
            crumb.meta.baseTranslationPrefix ~ 'action.index.link'
        ) }}
        {% if not loop.last or render_last %}
            {{ breadcrumbs.render_crumb(crumb, entity_route, crumb.entity) }}
        {% endif %}
    {% endfor %}


#!/bin/sh
set -e

ROOT_PATH="$( cd "$( dirname "$0" )" && pwd )"

echo "# Enable rabbitmq_management plugin"
rabbitmq-plugins enable rabbitmq_management

if ! type "rabbitmqadmin" > /dev/null
then
    echo "# Installing rabbitmqadmin"
    curl -X GET http://127.0.0.1:15672/cli/rabbitmqadmin > /usr/local/bin/rabbitmqadmin
    chmod +x /usr/local/bin/rabbitmqadmin
fi

echo "# Importing mapping"
rabbitmqadmin import "$ROOT_PATH/config-rabbit.json"

Add some twig variables into config files

#!/bin/sh
set -e

echo "# Enable rabbitmq_management plugin"
rabbitmq-plugins enable rabbitmq_management

if ! type "rabbitmqadmin" > /dev/null
then
    echo "# Installing rabbitmqadmin"
    curl -X GET http://127.0.0.1:15672/cli/rabbitmqadmin > /usr/local/bin/rabbitmqadmin
    chmod +x /usr/local/bin/rabbitmqadmin
fi

echo "# Importing mapping"
rabbitmqadmin import "{{ path }}/bin/rabbit.json" -u {{ login }} -p {{ password }} -H {{ host }}


{% if tags|length > 0 %}

Tags

        {% for name,seriesOfTag in tags %}
            {% for tag in seriesOfTag %}

                    {{ name }}

                    {% if tag.type %}
                        {{ tag.type|route('class:short')|join('|')|raw }}
                    {% endif %}
                    {% if tag.reference %}
                        {{ tag.reference|route('class:short')|join('|')|raw }}
                    {% endif %}
                    {% if tag.link %}
                        {{ tag.link }}
                    {% endif %}

{{ tag.description|default('')|markdown }}

            {% endfor %}
        {% endfor %}

{% endif %}

Fix version and since tags in default template

{% if tags|length > 0 %}

Tags

        {% for name,seriesOfTag in tags %}
            {% for tag in seriesOfTag %}

                    {{ name }}

                    {% if tag.version %}
                        {{ tag.version }}
                    {% endif %}
                    {% if tag.type %}
                        {{ tag.type|route('class:short')|join('|')|raw }}
                    {% endif %}
                    {% if tag.reference %}
                        {{ tag.reference|route('class:short')|join('|')|raw }}
                    {% endif %}
                    {% if tag.link %}
                        {{ tag.link }}
                    {% endif %}

{{ tag.description|default('')|markdown }}

            {% endfor %}
        {% endfor %}

{% endif %}


{% extends 'DarvinAdminBundle::layout.html.twig' %}

{% trans_default_domain 'admin' %}

{% block breadcrumbs %}{{ admin_breadcrumbs(meta, parent_entity) }}{% endblock %}

{% block heading %}{{ (meta.baseTranslationPrefix ~ 'action.index.title')|trans }}{% endblock %}

{% block content %}
    {% if filter_form %}

        {% include 'DarvinAdminBundle:Crud/widget/filter:form.html.twig' with {
            'field_groups': meta.configuration.form.filter.field_groups,
            'form':         filter_form,
        } %}

    {% endif %}

    {% include 'DarvinAdminBundle:Crud/widget:index.html.twig' %}

    {% if new_form_widget %}
        <h3>{{ (meta.baseTranslationPrefix ~ 'action.new.title')|trans }}</h3>
        {{ new_form_widget|raw }}
    {% endif %}
{% endblock %}

Move new form widget on CRUD index page above the list.

{% extends 'DarvinAdminBundle::layout.html.twig' %}

{% trans_default_domain 'admin' %}

{% block breadcrumbs %}{{ admin_breadcrumbs(meta, parent_entity) }}{% endblock %}

{% block heading %}{{ (meta.baseTranslationPrefix ~ 'action.index.title')|trans }}{% endblock %}

{% block content %}
    {% if filter_form %}

        {% include 'DarvinAdminBundle:Crud/widget/filter:form.html.twig' with {
            'field_groups': meta.configuration.form.filter.field_groups,
            'form':         filter_form,
        } %}

    {% endif %}
    {% if new_form_widget %}
        <h3>{{ (meta.baseTranslationPrefix ~ 'action.new.title')|trans }}</h3>
        {{ new_form_widget|raw }}
    {% endif %}

    {% include 'DarvinAdminBundle:Crud/widget:index.html.twig' %}

{% endblock %}


{#
    Copyright (C) 2022 Damien Dart, <damiendart@pobox.com>.
    This file is distributed under the MIT licence. For more
    information, please refer to the accompanying "LICENCE" file.
#}

{% extends '.templates/base-markdown.html.twig' %}

{% if description is defined %}
    {% set description = description | smartypants | trim %}
{% endif %}

{% block heading %}

        <picture class="robot__robot" id="content">
            <source srcset="/assets/homepage-robot.webp, /assets/homepage-robot@2x.webp 2x" type="image/webp">

        </picture>

{% endblock %}

Update robot image alt text.


{% if class_name is defined %}
{{ module_name }}.{{form_id}}:
  path: '/{{ module_name }}/settings/{{ class_name }}'
  defaults:
    _form: '\Drupal\{{ module_name }}\Form\{{ class_name }}'
    _title: '{{ module_name }} {{ class_name }} Form'
  requirements:
    _permission: 'access administration pages'
{% endif %}

Set class_name only as _title

{% if class_name is defined %}
{{ module_name }}.{{form_id}}:
  path: '/{{ module_name }}/settings/{{ class_name }}'
  defaults:
    _form: '\Drupal\{{ module_name }}\Form\{{ class_name }}'
    _title: '{{ class_name }}'
  requirements:
    _permission: 'access administration pages'
{% endif %}


    {% trans with { '%email%': password_reset_token.user.email } %}password_reset_token.action.request.submitted{% endtrans %}
    {% if webmail_link %}

            {% if webmail_link.icon %}

            {% else %}
                {{ webmail_link.name }}
            {% endif %}

    {% endif %}

Fix password reset token submitted widget template HTML.


{% for month,items in archives_data %}

        {% if archives_show_count %}
        {{ items|length }}
        {% endif %}
        {{ month }}

{% endfor %}

Use the new config.plugins.archives.taxonomy_names.month param


{% extends "base.twig" %}

{% block main %}

    {% block content %}

{{post.title}}

{{post.content}}

    {% endblock %}

  {% if benefits %}

      {% block benefits %}
        {% for benefit in benefits %}
          {% set grid_sizes = [ [['col-sm-4', 360, 360, 768], ['col-xs-6', 346, 346]], 360, 360 ] %}
          {% include 'loop-benefit.twig' %}
        {% endfor %}
      {% endblock %}

  {% endif %}
{% endblock %}


{% extends "ForexWebBundle:Layout:nosidebar.html.twig" %}

{% block content %}

Who We Are

ForexCashBack was founded in May 2013 and is rapidly becoming a premier hub for traders shopping for forex brokers and products.

{% endblock %}

Update who we are page

{% extends "ForexWebBundle:Layout:nosidebar.html.twig" %}

{% block content %}

Who We Are

        ForexCashBack LLC was founded in May 2013 to act as an introducing broker for the leading foreign exchange brokers in the industry.

        A foreign exchange commodity trading advisor founded the company.

        We provide rebates to our customers from the commissions paid to brokers on every trade you make.

        In most cases the rebate is 60% of the commission we get paid for referring you to a broker.
        It can be as high as 80% if you refer other traders to the site.

        We profit together and want you to be a successful trader that is both pleased with your broker and us as your referring partner.

        We will try to assist you in choosing the best broker for you as each trader and broker are different.

        We take a personal approach to each client and try to respond to all questions within 24 hours.

        We are constantly striving to be the World Wide Leader in Forex Rebates and highly value not only our reputation, but also our extensive one on one support for each client.

        If you have any questions, please contact us.

{% endblock %}


{% extends "@Tsugi/Page.twig" %}

{% block content %}
<div class="container">
{{ data | raw }}
</div>
{% endblock %}

Add time data to discussions tool

{% extends "@Tsugi/Page.twig" %}

{% block content %}
<div class="container">
{{ data | raw }}
</div>
{% endblock %}
{% block footer %}
<script>$(document).ready(function() { jQuery("time.timeago").timeago(); });</script>
{% endblock %}


            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
                Toggle navigation

            </button>
            Intranet

Login

Add links in the navigation

            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
                Toggle navigation

            </button>
            Intranet

Connection

S'enregistrer


Add panels for guiding new user to extra template

                You use FENNEC for the first time and you want to learn the main features?

                    Then follow the user manual in the documentation.

                No idea what to do next?

                    Explore FENNEC's trait database
                    and organism database.

                You already have a community data table?

                    What are you waiting for? Upload your data
                    here.

                You have trait information?

                    Then upload your data and share it with other users
                    here.


{% extends bap.layout is defined ? bap.layout : 'OroUserBundle::layout.html.twig' %}

{% block head_script %}
    {{ parent() }}

    {% include 'OroGridBundle:Include:javascript.html.twig' with {'datagridView': datagridz, 'selector': '#users-grid'} %}
    {% include 'OroGridBundle:Include:stylesheet.html.twig' %}
{% endblock %}

{% block page_container %}

    {% block content %}

{{ 'Users overview'|trans }} {{ 'Add new'|trans }}

    {% endblock %}

{% endblock %}

Refactor all invocations of Datagrid::getForm - fixed datagrid variable name in user template

{% extends bap.layout is defined ? bap.layout : 'OroUserBundle::layout.html.twig' %}

{% block head_script %}
    {{ parent() }}

    {% include 'OroGridBundle:Include:javascript.html.twig' with {'datagridView': datagrid, 'selector': '#users-grid'} %}
    {% include 'OroGridBundle:Include:stylesheet.html.twig' %}
{% endblock %}

{% block page_container %}

    {% block content %}

{{ 'Users overview'|trans }} {{ 'Add new'|trans }}

    {% endblock %}

{% endblock %}


{{ form_errors(form) }}

            {{ form_errors(form) }}

                {{ form_row(form.code) }}
                {{ form_row(form.name) }}

            {{ form_row(form.description) }}
            {{ form_row(form.enabled) }}

                    {{ form_label(form.hostname) }}

http://

                        {{ form_widget(form.hostname) }}

                    {{ form_errors(form.hostname) }}

                {{ form_row(form.color) }}
                {{ form_row(form.themeName) }}

            {{ form_row(form.locales) }}
            {{ form_row(form.currencies) }}
            {{ form_row(form.shippingMethods) }}
            {{ form_row(form.paymentMethods) }}

Implement defaultTaxZone on channel feature in admin panel

{{ form_errors(form) }}

            {{ form_errors(form) }}

                {{ form_row(form.code) }}
                {{ form_row(form.name) }}

            {{ form_row(form.description) }}
            {{ form_row(form.enabled) }}

                    {{ form_label(form.hostname) }}

http://

                        {{ form_widget(form.hostname) }}

                    {{ form_errors(form.hostname) }}

                {{ form_row(form.color) }}
                {{ form_row(form.themeName) }}

            {{ form_row(form.locales) }}
            {{ form_row(form.currencies) }}
            {{ form_row(form.shippingMethods) }}
            {{ form_row(form.paymentMethods) }}
            {{ form_row(form.defaultTaxZone) }}


  {% for d in depts %}

        {{ d.name }}

      {% if dept and dept.id == d.id %}

          {% for s in subdepts %}

                {{ s.name }}

          {% endfor %}

      {% endif %}

  {% endfor %}

Add margin after active sidebar link


{% extends 'form_div_layout.html.twig' %}

{% block textarea_widget %}
{% set attr = attr|merge({'class': attr.class|default('') ~ ' form-control'}) %}
{{ parent() }}
{% endblock textarea_widget %}

{% block form_widget_simple %}
{% apply spaceless %}
    {% set attr = attr|merge({'class': attr.class|default('') ~ ' form-control'}) %}
    {% set type = type|default('text') %}

    {{ parent() }}
{% endapply %}
{% endblock form_widget_simple %}

{% block form_row %}
{% apply spaceless %}

 0 %} has-error{% endif %}">
        {{ form_label(form) }}

        {{ form_widget(form) }}

        {% for error in errors %}

                {{
                    error.messagePluralization is null
                    ? error.messageTemplate|trans(error.messageParameters, 'validators')
                    : error.messageTemplate|transchoice(error.messagePluralization, error.messageParameters, 'validators')
                }}

        {% endfor %}

{% endapply %}
{% endblock form_row %}

{% block form_errors %}
{% apply spaceless %}
    {% if errors|length > 0 %}
        {% for error in errors %}

{{ error.message }}

        {% endfor %}
    {% endif %}
{% endapply %}
{% endblock form_errors %}

Use whitespace controls instead of the spaceless filter

{% extends 'form_div_layout.html.twig' %}

{% block textarea_widget -%}
    {% set attr = attr|merge({class: (attr.class|default('') ~ ' form-control')|trim}) %}
    {{- parent() -}}
{%- endblock textarea_widget %}

{% block form_widget_simple -%}
    {% if type is not defined or type not in ['file', 'hidden'] %}
        {%- set attr = attr|merge({class: (attr.class|default('') ~ ' form-control')|trim}) -%}
    {% endif %}
    {%- set type = type|default('text') -%}
    {{- parent() -}}
{%- endblock form_widget_simple %}

{% block form_row -%}

        {{- form_label(form) }} {# -#}
        {{ form_widget(form) }} {# -#}
        {%- for error in errors -%}

                {{-
                error.messagePluralization is null
                ? error.messageTemplate|trans(error.messageParameters, 'validators')
                : error.messageTemplate|transchoice(error.messagePluralization, error.messageParameters, 'validators')
                -}}

        {%- endfor -%}

{%- endblock form_row %}

{% block form_errors -%}
    {% if errors|length > 0 -%}
        {%- for error in errors -%}

{{ error.message }}

        {%- endfor -%}
    {%- endif %}
{%- endblock form_errors %}


{# /Homepage/homepage.html.twig #}
{# Post List for logged in authors #}
{% extends '@LogBlog/layout.html.twig' %}

{% block page_content %}

Anzeigen: {{ post.title }}

Autor

{{ post.author }}

Veröffentlicht

            {% if post.published %}
                Ja, am {{ post.publishedAt | date }}
            {% else %}
                Nein
            {% endif %}

Zuletzt bearbeitet

{{ post.updatedAt | date }}

Erstellt am

{{ post.createdAt | date }}

        Inhalt:

        {{ post.content | nl2br }}

{% endblock %}

Put content into the definition list, too

{# /Homepage/homepage.html.twig #}
{# Post List for logged in authors #}
{% extends '@LogBlog/layout.html.twig' %}

{% block page_content %}

Anzeigen: {{ post.title }}

Autor

{{ post.author }}

Veröffentlicht

            {% if post.published %}
                Ja, am {{ post.publishedAt | date }}
            {% else %}
                Nein
            {% endif %}

Zuletzt bearbeitet

{{ post.updatedAt | date }}

Erstellt am

{{ post.createdAt | date }}

Inhalt

            {{ post.content | nl2br }}

{% endblock %}


{{ form_errors(form) }}

            {{ form_errors(form) }}

                {{ form_row(form.code) }}
                {{ form_row(form.name) }}

            {{ form_row(form.description) }}
            {{ form_row(form.enabled) }}

                    {{ form_label(form.hostname) }}

http://

                        {{ form_widget(form.hostname) }}

                    {{ form_errors(form.hostname) }}

                {{ form_row(form.contactEmail) }}

                {{ form_row(form.color) }}
                {{ form_row(form.themeName) }}

            {{ form_row(form.locales) }}
            {{ form_row(form.defaultLocale) }}
            {{ form_row(form.currencies) }}
            {{ form_row(form.baseCurrency) }}
            {{ form_row(form.defaultTaxZone) }}
            {{ form_row(form.taxCalculationStrategy) }}
            {{ form_row(form.skippingShippingStepAllowed) }}
            {{ form_row(form.disabledRegistrationVerification) }}

Rename property from disabledRegistrationVerification to accountVerificationRequired

{{ form_errors(form) }}

            {{ form_errors(form) }}

                {{ form_row(form.code) }}
                {{ form_row(form.name) }}

            {{ form_row(form.description) }}
            {{ form_row(form.enabled) }}

                    {{ form_label(form.hostname) }}

http://

                        {{ form_widget(form.hostname) }}

                    {{ form_errors(form.hostname) }}

                {{ form_row(form.contactEmail) }}

                {{ form_row(form.color) }}
                {{ form_row(form.themeName) }}

            {{ form_row(form.locales) }}
            {{ form_row(form.defaultLocale) }}
            {{ form_row(form.currencies) }}
            {{ form_row(form.baseCurrency) }}
            {{ form_row(form.defaultTaxZone) }}
            {{ form_row(form.taxCalculationStrategy) }}
            {{ form_row(form.skippingShippingStepAllowed) }}
            {{ form_row(form.accountVerificationRequired) }}


Explanation:

            {% for label in data[0]|keys %}
                {{ label }}
            {% endfor %}

        {% for row in data %}

            {% for key, item in row %}
                {{ 'possible_keys' == key ? item|replace({',': ', '}) : item }}
            {% endfor %}

        {% endfor %}

Improve the rendering of the query explanation for Postgres

Explanation:

{% if data[0]|length > 1 %}
    {# The platform returns a table for the explanation (e.g. MySQL), display all columns #}

                {% for label in data[0]|keys %}
                    {{ label }}
                {% endfor %}

            {% for row in data %}

                {% for key, item in row %}
                    {{ item|replace({',': ', '}) }}
                {% endfor %}

            {% endfor %}

{% else %}
    {# The Platform returns a single column for a textual explanation (e.g. PostgreSQL), display all lines #}

        {%- for row in data -%}
            {{ row|first }}{{ "\n" }}
        {%- endfor -%}

{% endif %}


<!DOCTYPE html>

<meta charset=utf-8 />
<title>{% block title %} Miguel Perez {% endblock %}</title>
<meta name="description" content="{% block description%}Miguel Perez Back-End developer residing in the New York area.{% endblock %}">
<meta name="keywords" content="{% block keywords%}Miguel Perez, PHP, Symfony2, Web Developer, New york, Back-End Devepoer, New York{% endblock %}">

{% block content %}

Coming soon!!!

{% endblock %}

Remove coming soon from layout

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset=utf-8 />
<title>{% block title %} Miguel Perez {% endblock %}</title>
<meta name="description" content="{% block description%}Miguel Perez Back-End developer residing in the New York area.{% endblock %}">
<meta name="keywords" content="{% block keywords%}Miguel Perez, PHP, Symfony2, Web Developer, New york, Back-End Devepoer, New York{% endblock %}">
</head>
<body {% if is_granted('ROLE_ADMIN') %}onLoad="javascript:_gaq.push(['_setVar','exclude_me'])"{% endif %} }>
{% block content %}
{% endblock %}
<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-24416295-1']);
  _gaq.push(['_setDomainName', 'mlpz.mp']);
  _gaq.push(['_setAllowHash', 'false']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script>
</body>
</html>


{% if order.billingAddress is not null %}

        {{ 'sylius.ui.billing_address'|trans }}

        {% include '@SyliusAdmin/Common/_address.html.twig' with {'address': order.billingAddress} %}

{% endif %}
{% if order.shippingAddress is not null %}

        {{ 'sylius.ui.shipping_address'|trans }}

        {% include '@SyliusAdmin/Common/_address.html.twig' with {'address': order.shippingAddress} %}

{% endif %}

         {{ 'sylius.ui.edit_addresses'|trans }}

Fix borders in order - show - addresses


{% extends "master.twig" %}

{% block titulo %}
Virtuagora - Portal
{% endblock %}

{% block body %}

Contenidos creados

            Título
            Autor
            Fecha

        {% for con in contenidos %}

                {{ con.titulo }}
                {{ con.autor.nombre }} {{ con.autor.apellido }}
                {{ con.created_at|date("m/d/Y") }}

        {% endfor %}

{% if esModerador %}
    Administrar organismos.

{% endif %}
{% if esFuncionario %}
    Crear propuesta.

    Crear partido.

    Listar partidos.

{% endif %}
    Crear problematica.

{% endblock %}

Fix de los links de los articulos


{% extends 'MunicipalesBundle:theme:layout.html.twig' %}

{% block title %}{{ 'candidate.html_title'|trans }}{% endblock %}
{% block content %}

{{ 'candidate.h1_title'|trans }}

			{{ form_start(form, { 'attr': {'class': 'form_settings'}}) }}

{{ form_errors(form) }}

				¿Cuál es el campo de tu experiencia laboral?	(Seleccione hasta tres opciones)

		·         Actividades físicas o deportivas
		·         Administración o gestión
		·         Agraria o pesquera
		·         Arte o artesanía
		·         Comercio y marketing
		·         Edificación, obra civil
		·         Energía o agua
		·         Mecánica, electricidad o electrónica
		·         Hostelería y turismo
		·         Informática o comunicaciones
		·         Industria
		·         Sanidad
		·         Medio Ambiente
		·         Educación o servicios a la comunidad
		·         Transporte
		·         Finanzas

			    {{ form_widget(form.continue, { 'label': 'candidate.step4.continue'|trans }) }}

			{{ form_rest(form) }}

			{{ form_end(form) }}

{% endblock %}

Fix display errors in step 4


{% extends "::mobile.html.twig" %}

{% block stylesheets %}
    {{parent()}}
    <link rel="stylesheet" href="{{ asset('css/mobileAdmin.css') }}" type="text/css" />
{% endblock %}

{% block nav %}

Celebrations

People

Events

Pages

Images

Locations

{% endblock %}

Remove Pages menu in mobile version

{% extends "::mobile.html.twig" %}

{% block stylesheets %}
    {{parent()}}
    <link rel="stylesheet" href="{{ asset('css/mobileAdmin.css') }}" type="text/css" />
{% endblock %}

{% block nav %}

Celebrations

People

Events

Images

Locations

{% endblock %}


{{ instance_name }}
Name: {{ user.FIRST_NAME }} {{ user.LAST_NAME }}
Permanent Number: {{ user.PERMANENT_NUMBER }}
Order #: {{ payment_id }}

{% for class in pending %}
{{ class.ORGANIZATION_ABBREVIATION }} / {{ class.TERM_ABBREVIATION }}
{{ class.SECTION_NUMBER }} {{ class.SECTION_NAME }}
{% for charge in class.billing %}
{{ charge.TRANSACTION_DESCRIPTION }} {{ charge.AMOUNT }}
{% endfor %}
{% endfor %}

Paid Amount: {{ merchant.ssl_amount }}
Date: {{ merchant.ssl_txn_time|date("m/d/Y") }}
Card: {{ merchant.ssl_card_number }}
Transaction ID: {{ merchant.ssl_txn_id }}
Auth: {{ merchant.ssl_approval_code }}

Add $ sign for money in email.

{{ instance_name }}
Name: {{ user.FIRST_NAME }} {{ user.LAST_NAME }}
Permanent Number: {{ user.PERMANENT_NUMBER }}
Order #: {{ payment_id }}

{% for class in pending %}
{{ class.ORGANIZATION_ABBREVIATION }} / {{ class.TERM_ABBREVIATION }}
{{ class.SECTION_NUMBER }} {{ class.SECTION_NAME }}
{% for charge in class.billing %}
{{ charge.TRANSACTION_DESCRIPTION }} ${{ charge.AMOUNT }}
{% endfor %}
{% endfor %}

Paid Amount: ${{ merchant.ssl_amount }}
Date: {{ merchant.ssl_txn_time|date("m/d/Y") }}
Card: {{ merchant.ssl_card_number }}
Transaction ID: {{ merchant.ssl_txn_id }}
Auth: {{ merchant.ssl_approval_code }}


{% extends 'base.html.twig' %}
{% block body %}
    {% if error %}

{{ error.messageKey|trans(error.messageData, 'security') }}

    {% endif %}

    <form action="{{ path('fback_user_login_check') }}" method="post">
        Email:
        <input type="text" id="email" name="_username" value="{{ last_username }}" />

        Mot de passe:
        <input type="password" id="password" name="_password" />

        <button type="submit">Connexion</button>
    </form>

        Mot de passe oublié

{% endblock %}

Add Admin Login (doen't work)

{% extends 'base.html.twig' %}
{% block body %}
    {% if error %}

{{ error.messageKey|trans(error.messageData, 'security') }}

    {% endif %}

    <form action="{{ path('back_admin_login_check') }}" method="post">
        Email:
        <input type="text" id="email" name="_username" value="{{ last_username }}" />

        Mot de passe:
        <input type="password" id="password" name="_password" />

        <button type="submit">Connexion</button>
    </form>

        Mot de passe oublié

{% endblock %}


<!DOCTYPE html>

		<meta charset="utf-8"/>
		<title>Simple Slim example</title>

Simple Slim example

This is being rendered from a Twig template.

Last friday was "{{ date|date('Y-m-d') }}".

Index template page now inherits from layout

{% extends 'layout.html.twig' %}

{% block content %}

Simple Slim example

This is being rendered from a Twig template.

Last friday was "{{ date|date('Y-m-d') }}".

{% endblock content %}


{% extends "base/class.php.twig" %}

{% block file_path %}
Drupal\account/{{ entity_class }}AccessController.
{% endblock %}

{% block namespace_class %}
namespace Drupal\{{module}};
{% endblock %}

{% block use_class %}
use Drupal\Core\Entity\EntityAccessControlHandler;
use Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Session\AccountInterface;
{% endblock %}

{% block class_declaration %}
/**
 * Access controller for the {{ entity_class }} entity.
 *
 * @see \Drupal\{{module}}\Entity\{{ entity_class }}.
 */
class {{ entity_class }}AccessControlHandler extends EntityAccessControlHandler
{% endblock %}

{% block class_methods %}
  /**
   * {@inheritdoc}
   */
  protected function checkAccess(EntityInterface $entity, $operation, $langcode, AccountInterface $account) {

    switch ($operation) {
      case 'view':
        return $account->hasPermission('view {{ entity_class }} entity');
        break;

      case 'edit':
        return $account->hasPermission('edit {{ entity_class }} entity');
        break;

      case 'delete':
        return $account->hasPermission('delete {{ entity_class }} entity');
        break;

    }

    return TRUE;
  }

  /**
   * {@inheritdoc}
   */
  protected function checkCreateAccess(AccountInterface $account, array $context, $entity_bundle = NULL) {
    return $account->hasPermission('add {{ entity_class }} entity');
  }
{% endblock %}

Replace / with \ on namespace

{% extends "base/class.php.twig" %}

{% block file_path %}
Drupal\account\{{ entity_class }}AccessController.
{% endblock %}

{% block namespace_class %}
namespace Drupal\{{module}};
{% endblock %}

{% block use_class %}
use Drupal\Core\Entity\EntityAccessControlHandler;
use Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Session\AccountInterface;
{% endblock %}

{% block class_declaration %}
/**
 * Access controller for the {{ entity_class }} entity.
 *
 * @see \Drupal\{{module}}\Entity\{{ entity_class }}.
 */
class {{ entity_class }}AccessControlHandler extends EntityAccessControlHandler
{% endblock %}

{% block class_methods %}
  /**
   * {@inheritdoc}
   */
  protected function checkAccess(EntityInterface $entity, $operation, $langcode, AccountInterface $account) {

    switch ($operation) {
      case 'view':
        return $account->hasPermission('view {{ entity_class }} entity');
        break;

      case 'edit':
        return $account->hasPermission('edit {{ entity_class }} entity');
        break;

      case 'delete':
        return $account->hasPermission('delete {{ entity_class }} entity');
        break;

    }

    return TRUE;
  }

  /**
   * {@inheritdoc}
   */
  protected function checkCreateAccess(AccountInterface $account, array $context, $entity_bundle = NULL) {
    return $account->hasPermission('add {{ entity_class }} entity');
  }
{% endblock %}


{% if close is not defined %}{% set close = false %}{% endif %}

{% for flashMessage in app.session.flashbag.get('alert') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('error') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('info') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('success') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage }}

{% endfor %}

Add translation support to flash messages

{% if close is not defined %}{% set close = false %}{% endif %}

{% for flashMessage in app.session.flashbag.get('alert') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('error') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('info') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('success') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans }}

{% endfor %}


Convert to Twig: SP's /admin/blog_plugins/official_search, share_search

{% extends 'admin/layouts/default_sp.twig' %}
{% block title %}{{ _('Plugin search') }}{% endblock %}

{% block content %}

{{ _('Plugin search') }}

{{ req_device_name }}

  {% for plugin in plugins %}

{{ t(plugin.title, 20) }}

{{ t(plugin.body, 20) }}

      {{ _('Add') }}
      {{ _('Preview') }}

  {% endfor %}

{% include('admin/common/paging_sp.twig') %}

{% endblock %}


{% trans_default_domain ea.i18n.translationDomain %}
{% if app.session is not null and app.session.started %}
    {% set flash_messages = app.session.flashbag.all %}

    {% if flash_messages|length > 0 %}

            {% for label, messages in flash_messages %}
                {% for message in messages %}

                        <button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
                        {{ message|trans|raw }}

                {% endfor %}
            {% endfor %}

    {% endif %}
{% endif %}

Check for ea variable when rendering flash messages

{# @var ea \EasyCorp\Bundle\EasyAdminBundle\Context\AdminContext #}
{# This template checks for 'ea' variable existence because it can
   be used in a EasyAdmin Dashboard controller, where 'ea' is defined
   or from any other Symfony controller, where 'ea' is not defined #}
{% trans_default_domain ea is defined ? ea.i18n.translationDomain : (translation_domain is defined ? translation_domain ?? 'messages') %}
{% if app.session is not null and app.session.started %}
    {% set flash_messages = app.session.flashbag.all %}

    {% if flash_messages|length > 0 %}

            {% for label, messages in flash_messages %}
                {% for message in messages %}

                        <button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Close"></button>
                        {{ message|trans|raw }}

                {% endfor %}
            {% endfor %}

    {% endif %}
{% endif %}


{% extends "forms/field.html.twig" %}
{% set defaults = config.plugins.form %}
{% set files = defaults.files|merge(field.files|default([])) %}

{% block input %}
    <div class="form-input-wrapper {{ field.size }}">
        <input
            {# required attribute structures #}
            name="{{ (scope ~ field.name)|fieldName ~ (files.multiple ? '[]' : '[]') }}"
            {% block input_attributes %}
                type="file"
                {% if files.multiple %}multiple="multiple"{% endif %}
                {% if files.accept %}accept="{{ files.accept|join(',') }}"{% endif %}
                {{ parent() }}
            {% endblock %}
         />
    </div>
{% endblock %}

Fix overriding the defaults for the file type in forms

{% extends "forms/field.html.twig" %}
{% set defaults = config.plugins.form %}
{% set files = defaults.files|merge(field|default([])) %}

{% block input %}
    <div class="form-input-wrapper {{ field.size }}">
        <input
            {# required attribute structures #}
            name="{{ (scope ~ field.name)|fieldName ~ (files.multiple ? '[]' : '[]') }}"
            {% block input_attributes %}
                type="file"
                {% if files.multiple %}multiple="multiple"{% endif %}
                {% if files.accept %}accept="{{ files.accept|join(',') }}"{% endif %}
                {{ parent() }}
            {% endblock %}
         />
    </div>
{% endblock %}


{% extends 'MunicipalesBundle:theme:layout.html.twig' %}

{% block title %}{{ 'candidate.html_title'|trans }}{% endblock %}

{% block content %}

{{ 'candidate.h1_title'|trans }}

{{ 'candidate.final_step.end'|trans }}

{% endblock %}

Fix design for final step candidacy

{% extends 'MunicipalesBundle:theme:layout.html.twig' %}

{% block title %}{{ 'candidate.html_title'|trans }}{% endblock %}

{% from 'MunicipalesBundle:macros:steps.html.twig' import steps_widget_candidate %}

{% block content %}

{{ 'home.step_h2'|trans }} 8

 {{ 'candidate.final_step.header'|trans }}

                  {{ steps_widget_candidate(8) }}

{{ 'candidate.final_step.header'|trans }}

{{ 'candidate.final_step.end'|trans }}

{% endblock %}


{% extends 'FDPrivateMessageBundle::layout.html.twig' %}

{% trans_default_domain 'FDPrivateMessageBundle' %}

{% block fd_private_message_content %}

{{ conversation.subject }}

{{ 'conversation.back' | trans }}

    {% if conversation.recipients | length > 1 %}
        {{ 'conversation.recipients' | trans }} :

        {% for recipient in conversation.recipients %}
            {{ recipient.username }}
        {% endfor %}
    {% else %}
        {{ 'conversation.alone' | trans }}
    {% endif %}

    {# A conversation MUST have messages #}
    {% for message in conversation.messages %}

{{ message.author.username }}, {{ message.created | date('Y-m-d H:i:s') }}

{{ message.body }}

    {% endfor %}

{{ form_start(form) }}
    {{ form_widget(form) }}

    <input type="submit" value="{{ 'private_message.create.submit' | trans }}">
{{ form_end(form) }}
{% endblock %}

Add link to leave conversation in main view

{% extends 'FDPrivateMessageBundle::layout.html.twig' %}

{% trans_default_domain 'FDPrivateMessageBundle' %}

{% block fd_private_message_content %}

{{ conversation.subject }}

{{ 'conversation.back' | trans }}
{{ 'conversation.leave' | trans }}

    {% if conversation.recipients | length > 1 %}
        {{ 'conversation.recipients' | trans }} :

        {% for recipient in conversation.recipients %}
            {{ recipient.username }}
        {% endfor %}
    {% else %}
        {{ 'conversation.alone' | trans }}
    {% endif %}

    {# A conversation MUST have messages #}
    {% for message in conversation.messages %}

{{ message.author.username }}, {{ message.created | date('Y-m-d H:i:s') }}

{{ message.body }}

    {% endfor %}

{{ form_start(form) }}
    {{ form_widget(form) }}

    <input type="submit" value="{{ 'private_message.create.submit' | trans }}">
{{ form_end(form) }}
{% endblock %}


{% if not has.tabs %}

{% endif %}

        {{ __('Relationships') }}
        {{ __('Info') }}

    {% if has.relations %}
        {% include 'editcontent/_relationships.twig' %}
    {% endif %}

    {# Output 'incoming' relations #}
    {% for reltype, ids in context.content.relation %}
        {% if context.contenttype.relations[reltype] is not defined %}

{{ __('This record is related to:') }}

                {% for id in ids %}
                    {% setcontent record = reltype ~ '/' ~ id %}
                    {% if record %}
                        {% set editable = isallowed('edit', record) %}
                        {% include ['_sub/_listing.twig'] with {'excerptlength': 280, 'thumbsize': 54, 'compact': true, 'content': record} %}
                    {% endif %}
                {% endfor %}

        {% endif %}
    {% endfor %}

Remove tabgrouping div from relations


{#

This file is part of the Sonata package.

(c) Thomas Rabaix <thomas.rabaix@sonata-project.org>

For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.

#}
{% for type in sonata_flashmessages_types() %}
    {% set domain = domain is defined ? domain : null %}
    {% for message in sonata_flashmessages_get(type, domain) %}
        <div class="alert alert-{{ type|sonata_status_class }}">
            {{ message|raw }}
        </div>
    {% endfor %}
{% endfor %}

Add support to dismissable alerts

{#

This file is part of the Sonata package.

(c) Thomas Rabaix <thomas.rabaix@sonata-project.org>

For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.

#}
{% for type in sonata_flashmessages_types() %}
    {% set domain = domain is defined ? domain : null %}
    {% for message in sonata_flashmessages_get(type, domain) %}
        <div class="alert alert-{{ type|sonata_status_class }} alert-dismissable">
            <button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
            {{ message|raw }}
        </div>
    {% endfor %}
{% endfor %}


{% extends "layouts/default.twig" %}
{% block content %}

Create your TrueNorthPHP Speaker's Account below

    {% include 'flash.twig' %}
    <form class="form-search" action="/signup" method="POST">
    <input name='email' type="text" value="{{ email }}" class="input-large search-query" placeholder="E-mail">

    <input name='password' type="password" class="input-large search-query" placeholder="Password, at least 5 characters">

    <input name='password2' type="password" class="input-large search-query" placeholder="Password (confirm)">

    <input name='first_name' type="text" value="{{ first_name}}" class="input-large search-query" placeholder="First name">

    <input name='last_name' type="text" value="{{ last_name}}" class="input-large search-query" placeholder="Last name">

    <textarea name="speaker_bio" class="search-query" rows=5 cols=50 placeholder="Put information about yourself into this field. Twitter, web site, etc.">{{speaker_bio}}</textarea>

    <textarea name="speaker_info" class="search-query" rows=5 cols=50 placeholder="Other information (Where you will be travelling from, special needs, can your employer cover travel expenses, etc.)">{{speaker_info}}</textarea>

    <button type="submit" class="btn">Create my account</button>
    </form>
{% endblock %}

Rework of templates to allow reuse of of a form

{% extends "layouts/default.twig" %}
{% block content %}

Create your TrueNorthPHP Speaker's Account below

    {% include 'flash.twig' %}
    {% include 'user_form.twig' %}
{% endblock %}


{% extends "_base.html.twig" %}

{% block type %}{{ parent() }} ({{ var.length }}){% endblock %}

{% block inline_value %}{{ var.inlineValue }}{% endblock %}

{% block header_extra %}

        {{ var.encoding }}

{% endblock %}

Change how encoding is shown

{% extends "_base.html.twig" %}

{% block type %}{{ parent() }} ({{ var.length }}){% endblock %}

{% block inline_value %}{{ var.inlineValue }}{% endblock %}

{% block header_extra %}

        {{ var.helpLink }}

{% endblock %}


<span class="choice-field">

    {% if choices|length <= 2 %}
        {% for choiceSlug, choice in choices %}
        <input type="radio" name="{{ slug }}" value="{{ choiceSlug }}" {% if choice == initial %}checked{% endif %}> {{ choice }}
        {% endfor %}
    {% else %}
        <select name="{{ slug }}">
            <option {% if required %}disabled{% endif %}></option>
        {% for choiceSlug, choice in choices %}
            <option value="{{ choiceSlug }}" {% if choice == initial %}selected{% endif %}> {{ choice }} </option>
        {% endfor %}
        </select>
    {% endif %}

</span>
{% include "field/errors.twig" %}

Select blank option by default in select input.

<span class="choice-field">

    {% if choices|length <= 2 %}
        {% for choiceSlug, choice in choices %}
        <input type="radio" name="{{ slug }}" value="{{ choiceSlug }}" {% if choice == initial %}checked{% endif %}> {{ choice }}
        {% endfor %}
    {% else %}
        <select name="{{ slug }}">
            <option {% if initial is empty %}selected{% endif %} {% if required %}disabled{% endif %}></option>
        {% for choiceSlug, choice in choices %}
            <option value="{{ choiceSlug }}" {% if choice == initial %}selected{% endif %}> {{ choice }} </option>
        {% endfor %}
        </select>
    {% endif %}

</span>
{% include "field/errors.twig" %}


{% if translation_domain is defined %}{% trans_default_domain translation_domain %}{% endif %}
{% if close is not defined %}{% set close = false %}{% endif %}

{% for flashMessage in app.session.flashbag.get('alert') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('error') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('info') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('success') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans }}

{% endfor %}

Add translation_domain to flash template

{% if translation_domain is not defined %}
    {% set translation_domain = null %}
{% endif %}
{% if close is not defined %}
    {% set close = false %}
{% endif %}

{% for flashMessage in app.session.flashbag.get('alert') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans({}, translation_domain) }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('error') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans({}, translation_domain) }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('info') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans({}, translation_domain) }}

{% endfor %}

{% for flashMessage in app.session.flashbag.get('success') %}

        {% if close %}<button type="button" class="close" data-dismiss="alert">×</button>{% endif %}
        {{ flashMessage|trans({}, translation_domain) }}

{% endfor %}


{% extends 'ClasticNodeBundle:Backoffice/Node:list.html.twig' %}

{% trans_default_domain 'clastic' %}

{% block page_title -%}
    Menu Item

{%- endblock %}

{% block list_header %}

        {{ 'list.title'|trans }}
        {{ 'list.status'|trans }}

{% endblock %}

{% block list_body %}

        {{ record.title }}

{% endblock %}

Fix create first menu item link.

{% extends 'ClasticNodeBundle:Backoffice/Node:list.html.twig' %}

{% trans_default_domain 'clastic' %}

{% block page_title -%}
    Menu Item

{%- endblock %}

{% block list_header %}

        {{ 'list.title'|trans }}
        {{ 'list.status'|trans }}

{% endblock %}

{% block list_body %}

        {{ record.title }}

{% endblock %}

{% block list_empty %}
    {{ 'list.no_results'|trans }} Create your first.
{% endblock %}


{% if error %}

{{ error.message }}

{% endif %}

<form action="{{ path('login_check') }}" method="post">
    Username:
    <input type="text" id="username" name="_username" value="{{ last_username }}" />

    Password:
    <input type="password" id="password" name="_password" />

    {#
        If you want to control the URL the user is redirected to on success (more details below)
        <input type="hidden" name="_target_path" value="/account" />
    #}

    <button type="submit">login</button>
</form>

Test commit on individual file.


{# This file is generated by the Spoon2Twig Converter #}

      {{ 'lbl.Faq'|trans|capitalize }}: {{ 'lbl.Feedback'|trans|capitalize }}

    {% if faqFeedback %}

        {% for _itr_12 in faqFeedback %}

          {{ _itr_12.text|truncate(150 ) }}

        {% endfor %}

    {% endif %}
    {% if not faqFeedback %}

{{ 'msg.NoFeedback'|trans }}

    {% endif %}

    {{ 'lbl.AllQuestions'|trans|capitalize }}

Fix double panel body faq widget when there are no questions


{% extends "master.twig" %}

{% block main_content %}

Next event

                        Mon December 1st 2014 6:05pm

                        Westbourne Library,

                        Alum Chine Road,

                        BH4 8DX

                    And then 7:00pm

                    The Libertine,

                    1 Alumhurst Road,

                    Bournemouth

                    BH4 8EL

{% endblock %}

Update Meetup after location to the Westbourne Pub

{% extends "master.twig" %}

{% block main_content %}

Next event

                        Mon December 1st 2014 6:05pm

                        Westbourne Library,

                        Alum Chine Road,

                        BH4 8DX

                    And then 7:00pm

                    ** The Westbourne **

                    45 Poole Road,

                    Bournemouth

                    BH4 9DN

{% endblock %}


<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>{% block title %}Fennec{% endblock %}</title>
        {% block stylesheets %}
            {# Bootstrap SB-Admin2 stylesheets #}
            <link rel="stylesheet" href="{{ asset('assets/vendor/bootstrap/dist/css/bootstrap.min.css') }}">
            <link rel="stylesheet" href="{{ asset('assets/vendor/startbootstrap-sb-admin-2/dist/css/sb-admin-2.css') }}">
            <link rel="stylesheet" href="{{ asset('assets/vendor/bower_components/font-awesome/css/font-awesome.min.css') }}">
        {% endblock %}
        <link rel="icon" type="image/x-icon" href="{{ asset('favicon.ico') }}" />
    </head>
    <body>
        {% block body %}{% endblock %}
        {% block javascripts %}{% endblock %}
    </body>
</html>

Add javascript files for sb-admin 2 template

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>{% block title %}Fennec{% endblock %}</title>
        {% block stylesheets %}
            {# Bootstrap SB-Admin2 stylesheets #}
            <link rel="stylesheet" href="{{ asset('assets/vendor/bootstrap/dist/css/bootstrap.min.css') }}">
            <link rel="stylesheet" href="{{ asset('assets/vendor/startbootstrap-sb-admin-2/dist/css/sb-admin-2.css') }}">
            <link rel="stylesheet" href="{{ asset('assets/vendor/bower_components/font-awesome/css/font-awesome.min.css') }}">
        {% endblock %}
        <link rel="icon" type="image/x-icon" href="{{ asset('favicon.ico') }}" />
    </head>
    <body>
        {% block body %}{% endblock %}
        {% block javascripts %}
            <script src="{{ asset('assets/vendor/jquery/dist/jquery.min.js') }}"></script>
            <script src="{{ asset('assets/vendor/bootstrap/dist/js/bootstrap.min.js') }}"></script>
            <script src="{{ asset('assets/vendor/startbootstrap-sb-admin-2/dist/js/sb-admin-2.js') }}"></script>
        {% endblock %}
    </body>
</html>


{% if paginator.totalPageCount > 1%}

    {% if paginator.previousButtonPage %}

            <

    {% endif %}

    {% for page in paginator.pageRange %}
    {% if page != paginator.currentPage %}

                {{ page }}

    {% else %}
    {{ page }}
    {% endif %}
    {% endfor %}

    {% if paginator.nextButtonPage %}

            >

    {% endif %}

{% endif %}

Add all grid paginator in block "kit_grid_paginator" to allow full customisation

{% if paginator.totalPageCount > 1%}
{% block kit_grid_paginator %}

    {% if paginator.previousButtonPage %}

            <

    {% endif %}

    {% for page in paginator.pageRange %}
    {% if page != paginator.currentPage %}

                {{ page }}

    {% else %}
    {{ page }}
    {% endif %}
    {% endfor %}

    {% if paginator.nextButtonPage %}

            >

    {% endif %}

{% endblock kit_grid_paginator %}
{% endif %}


{% extends 'base.html.twig' %}

{% block body %}

{{ 'page.work_with_us.header'|trans }}

                {{ 'page.work_with_us.text1'|trans|raw }}

                {{ 'page.work_with_us.text2'|trans|raw }}

{% endblock %}

Fix so that arabic page does not have the image and the text is still the same as before. The image should be the same in both languages. Clara approved! :)

{% extends 'base.html.twig' %}

{% block body %}

{{ 'page.work_with_us.header'|trans }}

                {% if app.request.locale != 'ar' %}
                {{ 'page.work_with_us.text1'|trans|raw }}

                {{ 'page.work_with_us.text2'|trans|raw }}
                {% else %}
                {{ 'page.work_with_us.text'|trans|raw }}
                {% endif %}

{% endblock %}


{#=== INIT ===========================================================================================================#}

{% if context.content.taxonomy[taxonomy.slug] is defined %}
    {% set tags = context.content.taxonomy[taxonomy.slug] %}
{% else %}
    {% set tags = [] %}
{% endif %}

{% set attributes = {
    taxonomy: {
        id:       'taxonomy-' ~ taxonomy.slug,
        name:     'taxonomy[' ~ taxonomy.slug ~ ']',
        multiple: true,
    }
} %}

{#=== FIELDSET =======================================================================================================#}

{% extends '_base/_fieldset.twig' %}

{% block fieldset_type 'tags' %}

{% set fieldset_conf = {
    slug:  taxonomy.slug,
}%}

{% block fieldset_label_text  taxonomy.name %}
{% block fieldset_label_class 'col-sm-3' %}

{% block fieldset_controls %}

        <select{{ macro.attr(attributes.taxonomy) }}>
            {% for tag in tags %}
                <option value="{{ tag }}" selected>{{ tag }}</option>
            {% endfor %}
        </select>

        {% if taxonomy.tagcloud %}

        {% endif %}

{% endblock fieldset_controls %}

Fix tag select deliver an array

{#=== INIT ===========================================================================================================#}

{% if context.content.taxonomy[taxonomy.slug] is defined %}
    {% set tags = context.content.taxonomy[taxonomy.slug] %}
{% else %}
    {% set tags = [] %}
{% endif %}

{% set attributes = {
    taxonomy: {
        id:       'taxonomy-' ~ taxonomy.slug,
        name:     'taxonomy[' ~ taxonomy.slug ~ '][]',
        multiple: true,
    }
} %}

{#=== FIELDSET =======================================================================================================#}

{% extends '_base/_fieldset.twig' %}

{% block fieldset_type 'tags' %}

{% set fieldset_conf = {
    slug:  taxonomy.slug,
}%}

{% block fieldset_label_text  taxonomy.name %}
{% block fieldset_label_class 'col-sm-3' %}

{% block fieldset_controls %}

        <select{{ macro.attr(attributes.taxonomy) }}>
            {% for tag in tags %}
                <option value="{{ tag }}" selected>{{ tag }}</option>
            {% endfor %}
        </select>

        {% if taxonomy.tagcloud %}

        {% endif %}

{% endblock fieldset_controls %}


{% block sidebar %}

  {% if post.post_type == 'page' %}
    {% if sidebar_img %}
      {% set grid_sizes = [ [['col-sm-4', 360, 0, '', 768], ['col-xs-12', 738, 0, '']], 360, 0, ''] %}
      {% include 'sidebar-image.twig' %}
    {% endif %}
  {% elseif post.post_type == 'solution' %}
    {% include 'sidebar-products.twig' %}
    {% include 'sidebar-downloads.twig' %}
  {% elseif post.post_type == 'case' %}
    {% include 'sidebar-solutions.twig' %}
    {% include 'sidebar-downloads.twig' %}
  {% elseif post.post_type == 'installation' %}
    {% include 'sidebar-products.twig' %}
    {% include 'sidebar-downloads.twig' %}
  {% else %}
    {{sidebar_primary}}
  {% endif %}

{% endblock %}

Add conditional for contact template

{% block sidebar %}
  {% if post.post_type == 'page' %}
    {% if sidebar_img %}
      {% set grid_sizes = [ [['col-sm-4', 360, 0, '', 768], ['col-xs-12', 738, 0, '']], 360, 0, ''] %}
      {% include 'sidebar-image.twig' %}
    {% endif %}
    {% if sidebar_content %}
      {% include 'sidebar-content.twig' %}
    {% endif %}
    {% if post._wp_page_template == 'template-contact.php' and options.social_media %}
      {% include 'sidebar-social.twig' %}
    {% endif %}
  {% elseif post.post_type == 'solution' %}
    {% include 'sidebar-products.twig' %}
    {% include 'sidebar-downloads.twig' %}
  {% elseif post.post_type == 'case' %}
    {% include 'sidebar-solutions.twig' %}
    {% include 'sidebar-downloads.twig' %}
  {% elseif post.post_type == 'installation' %}
    {% include 'sidebar-products.twig' %}
    {% include 'sidebar-downloads.twig' %}
  {% else %}
    {{sidebar_primary}}
  {% endif %}
{% endblock %}


         README.md

        {% if readme.getExtension == 'md' %}
            {{ markdown(readme.getContents) | raw }}
        {% else %}
            {{ readme.getContents | nl2br }}
        {% endif %}

Reduce README padding at smaller resolutions


{% macro api_object(dataType) %}
  {%- set object_url = '' -%}

  {% if collections.bzfs_api_objects[dataType] is defined %}
    {% set object_url = url(collections.bzfs_api_objects[dataType]) %}
  {% elseif collections.bzfs_api_enums[dataType] is defined %}
    {% set object_url = url(collections.bzfs_api_enums[dataType]) %}
  {% endif %}

  {% if object_url %}
    <a href="{{ object_url | replace({'.html': ''}) }}">
      {{ dataType }}
    </a>
  {% else %}
    {{ dataType }}
  {% endif %}
{% endmacro %}

Add support for all API entities to Twig macro

{% macro api_object(dataType) %}
  {%- set object_url = '' -%}
  {%- set object = (dataType[-1:1] == '*') ? dataType[:-1] : dataType -%}
  {%- set group = '' -%}

  {% for grouping in ['events', 'objects', 'enums', 'functions'] %}
    {% if collections['bzfs_api_' ~ grouping][object] is defined %}
      {% set group = grouping %}
      {% set object_url = url(collections['bzfs_api_' ~ grouping][object]) %}
    {% endif %}
  {% endfor %}

  {%- if object_url -%}
    <a href="{{ object_url | replace({'.html': ''}) }}">
      {{- dataType -}}{{- (group == 'functions') ? '()' : '' -}}
    </a>
  {%- else -%}
    {{- dataType -}}
  {%- endif -%}
{% endmacro %}


{% extends "SofaChampsCoreBundle::layout.html.twig" %}

{% block content %}

SofaChamps.com

Dominate without breaking a sweat ...or even getting off the couch

Active Games

SuperBowl Challenge

Make your picks now before kickoff!

 Click here to get started.

Upcoming Games

Bowl Mania

{% endblock %}

Update homepage to be consistent

{% extends "SofaChampsCoreBundle::layout.html.twig" %}

{% block content %}

SofaChamps.com

Dominate without breaking a sweat ...or even getting off the couch

Active Games

SuperBowl Challenge

Make your picks now before kickoff!

 Click here to get started.

Upcoming Games

College Bowl Mania

{% endblock %}


        {% if block.media|default %}

        {% else %}

        {% endif %}

{{ block.title|capitalize }}

            {{ block.value|raw }}

        <button class="btn btn-block btn-default">Selected</button>

Set default image filter on RichCheckItemBlock view


{% for organism in organisms %}

                        {{ organism.scientific_name }}

                {% if organism.common_name is defined %}

                    common name: {{ organism.common_name }}

                {% endif %}

                    rank: {{ organism.rank }}

{% endfor %}

Fix link in organism result page


{% set pagetitle = 'Incorrect Attributes' | trans %}
{% extends "base.twig" %}
{% block content %}

{{ pagetitle }}

{% trans 'One or more of the attributes supplied by your identity provider did not contain the expected number of values.' %}

{% trans 'The problematic attribute(s) are:' %}

{% for attr,issues in cardinalityErrorAttributes %}
  {% set got = issues[0] %}
  {% set want = issues[1] %}

{{ attr }}

{% trans %}got {{ got }} values, want {{ want }}{% endtrans %}

{% endfor %}

{% if LogoutURL is defined %}

{% trans 'Logout' %}

{% endif %}

{% endblock %}


{{ form_errors(form) }}

    {{ form_errors(form) }}

        {{ form_row(form.code) }}
        {{ form_row(form.gateway) }}

    {{ form_row(form.enabled) }}

    {% for locale, translationForm in form.translations %}

             {{ locale|sylius_locale_name }}

            {{ form_row(translationForm.name) }}
            {{ form_row(translationForm.description) }}

                     {{ 'sylius.ui.the_instructions_below_will_be_displayed_to_the_customer'|trans }}.

            {{ form_row(translationForm.instructions) }}

    {% endfor %}

Select channel on payment method form

{{ form_errors(form) }}

    {{ form_errors(form) }}

        {{ form_row(form.code) }}
        {{ form_row(form.gateway) }}
        {{ form_row(form.channels) }}

    {{ form_row(form.enabled) }}

    {% for locale, translationForm in form.translations %}

             {{ locale|sylius_locale_name }}

            {{ form_row(translationForm.name) }}
            {{ form_row(translationForm.description) }}

                     {{ 'sylius.ui.the_instructions_below_will_be_displayed_to_the_customer'|trans }}.

            {{ form_row(translationForm.instructions) }}

    {% endfor %}


  {% set langobj = grav['language'] %}
  {% set key = langswitcher.current %}
  {% set language = langswitcher.languages[key] %}
  {% set lang_url = base_url_simple ~ langobj.getLanguageURLPrefix(key)~langswitcher.page_route ?: '/' %}
   {{ language.nativeName|capitalize }}

    {% for key, language in langswitcher.languages %}
        {% if key != langswitcher.current %}
            {% set lang_url = base_url_simple ~ langobj.getLanguageURLPrefix(key)~langswitcher.page_route ?: '/' %}

{{ language.nativeName|capitalize }}

        {% endif %}
    {% endfor %}

 {{ "MSG_HELP_TRANSLATE"|t }}

Resolve issues with LangSwitcher update [v1.1.0 -> v1.2.1]

  {% set langobj = grav['language'] %}
  {% set key = langswitcher.current %}
  {% set language = langswitcher.languages[key] %}
  {% set lang_url = base_url_simple ~ langobj.getLanguageURLPrefix(key)~langswitcher.page_route ?: '/' %}
   {{ native_name(key)|capitalize }}

    {% for key in langswitcher.languages %}
        {% if key != langswitcher.current %}
            {% set lang_url = base_url_simple ~ langobj.getLanguageURLPrefix(key)~langswitcher.page_route ?: '/' %}

{{ native_name(key)|capitalize }}

        {% endif %}
    {% endfor %}

 {{ "MSG_HELP_TRANSLATE"|t }}


{% extends "ShuweeAdminBundle::page_content.html.twig" %}

{% form_theme form 'bootstrap_3_layout.html.twig' %}

{% block page_title %}{{ 'crud.create' | trans({}, 'ShuweeAdminBundle') }}{% endblock %}

{% block action_links %}
    {% if grants['list'] %}
     {{'nav.backtolist' | trans({}, 'ShuweeAdminBundle') }}
    {% endif %}
{%  endblock %}

{% block header_title %}
    {{ 'crud.create' | trans({}, 'ShuweeAdminBundle') }} {{ admin_get_label(admin) }}
{% endblock %}

{% block body %}
    {{ form(form) }}
{% endblock %}

Fix grant check on create content template

{% extends "ShuweeAdminBundle::page_content.html.twig" %}

{% form_theme form 'bootstrap_3_layout.html.twig' %}

{% block page_title %}{{ 'crud.create' | trans({}, 'ShuweeAdminBundle') }}{% endblock %}

{% block action_links %}
    {% if admin.isGranted('LIST') %}
     {{'nav.backtolist' | trans({}, 'ShuweeAdminBundle') }}
    {% endif %}
{%  endblock %}

{% block header_title %}
    {{ 'crud.create' | trans({}, 'ShuweeAdminBundle') }} {{ admin_get_label(admin) }}
{% endblock %}

{% block body %}
    {{ form(form) }}
{% endblock %}


{#
/**
 * Preparse Field plugin for Craft CMS 3.x
 *
 *  Field Input
 *
 * @author    Steadfast Design Firm
 * @copyright Copyright (c) Steadfast Design Firm
 * @link      https://www.steadfastdesignfirm.com/
 * @package   PreparseField
 * @since     1.0.0
 */
#}

{% import "_includes/forms" as forms %}

{% set displayType = displayType ?? 'hidden' %}

{% if displayType == 'hidden' %}
    <style>
        #{{ namespacedId }}-field {
            display: none;
        }
    </style>
{% else %}
    {# Setup our field #}
    {% if displayType == 'date' %}
        {{ forms.date({
            value: value,
            disabled: true
        }) }}
        {{ forms.time({
            value: value,
            disabled: true
        }) }}
    {% elseif displayType == 'textarea' %}
        {{ forms.textarea( {
            value: value,
            disabled: not field['allowSelect'],
            readonly: field['allowSelect'],
            rows: field['textareaRows']
        }) }}
    {% else %}
        {{ forms.text({
            value: value,
            disabled: not field['allowSelect'],
            readonly: field['allowSelect']
        }) }}
    {% endif %}
{% endif %}

Update input template to improve field layout

{#
/**
 * Preparse Field plugin for Craft CMS 3.x
 *
 *  Field Input
 *
 * @author    Steadfast Design Firm
 * @copyright Copyright (c) Steadfast Design Firm
 * @link      https://www.steadfastdesignfirm.com/
 * @package   PreparseField
 * @since     1.0.0
 */
#}

{% import "_includes/forms" as forms %}

{% set displayType = displayType ?? 'hidden' %}

{% if displayType == 'hidden' %}
    <style>
        #{{ namespacedId }}-field {
            display: none;
        }
    </style>
{% else %}
    {# Setup our field #}
    {% if displayType == 'date' %}
        {{ forms.dateTimeField({
            value: value,
            disabled: true,
        }) }}
        <style>
            #{{ namespacedId }}-field .clear-btn {
                display: none;
            }
        </style>
    {% elseif displayType == 'textarea' %}
        {{ forms.textarea({
            value: value,
            disabled: not field['allowSelect'],
            readonly: field['allowSelect'],
            rows: field['textareaRows']
        }) }}
    {% else %}
        {{ forms.text({
            value: value,
            disabled: not field['allowSelect'],
            readonly: field['allowSelect']
        }) }}
    {% endif %}
{% endif %}


Hoodie bitters iPhone mumblecore semester, try-hard actually small batch kinfolk trust fund

     Hoodie bitters iPhone mumblecore semester, try-hard actually small batch kinfolk trust fund

     Hoodie bitters iPhone mumblecore  semester, try-hard actually small batch kinfolk trust fund


{% import 'OroUIBundle::macros.html.twig' as UI %}
{% if buttons|length %}
    {% set renderedButtons = {} %}
    {% set groups = {} %}

    {% for button in buttons %}
        {% set groupName = button.group|default(null) %}
        {% if groupName %}
            {% set link %}

                    {% include button.template with button.getTemplateData({'onlyLink': true}) %}

            {% endset %}

            {% set groups = groups|merge({(groupName): groups[groupName]|default([])|merge([link])}) %}
        {% else %}
            {% set renderedButton %}
                {% include button.template with button.getTemplateData({'aClass' : 'btn'}) %}
            {% endset %}
            {% set renderedButtons = renderedButtons|merge([renderedButton]) %}
        {% endif %}
    {% endfor %}

            {% if renderedButtons|length %}
                {{ renderedButtons|join()|raw }}
            {% endif %}
            {% if groups|length %}
                {% for groupName, groupButtons in groups %}
                    {% if renderedButtons %}
                        {{ UI.dropdownButton({
                            'label': groupName|trans,
                            'html': groupButtons|join()
                        }) }}
                    {% endif %}
                {% endfor %}
            {% endif %}

{% endif %}

Add layout’s line_buttons_widget - Fixed typo

{% import 'OroUIBundle::macros.html.twig' as UI %}
{% if buttons|length %}
    {% set renderedButtons = {} %}
    {% set groups = {} %}

    {% for button in buttons %}
        {% set groupName = button.group|default(null) %}
        {% if groupName %}
            {% set link %}

                    {% include button.template with button.getTemplateData({'onlyLink': true}) %}

            {% endset %}

            {% set groups = groups|merge({(groupName): groups[groupName]|default([])|merge([link])}) %}
        {% else %}
            {% set renderedButton %}
                {% include button.template with button.getTemplateData({'aClass' : 'btn'}) %}
            {% endset %}
            {% set renderedButtons = renderedButtons|merge([renderedButton]) %}
        {% endif %}
    {% endfor %}

            {% if renderedButtons|length %}
                {{ renderedButtons|join()|raw }}
            {% endif %}
            {% if groups|length %}
                {% for groupName, groupButtons in groups %}
                    {% if groupButtons %}
                        {{ UI.dropdownButton({
                            'label': groupName|trans,
                            'html': groupButtons|join()
                        }) }}
                    {% endif %}
                {% endfor %}
            {% endif %}

{% endif %}


{% block elfinder_widget %}
    <input type="text" {{ block('widget_attributes') }} {% if value is not empty %}value="{{ value }}" {% endif %} data-type="elfinder-input-field" />
    {% if enable and instance is defined %}
        <script type="text/javascript" charset="utf-8">
            $('[data-type="elfinder-input-field"][id="{{ id }}"]').on("click",function() {
                var childWin = window.open("{{path('elfinder', {'instance': instance })}}?id={{ id }}", "popupWindow", "height=450, width=900");
            });
            function setValue(value, element_id) {
                $('[data-type="elfinder-input-field"]' + (element_id ? '[id="'+ element_id +'"]': '')).val(value);
            }
        </script>
    {% endif %}
{% endblock %}

Add triggering of change event

{% block elfinder_widget %}
    <input type="text" {{ block('widget_attributes') }} {% if value is not empty %}value="{{ value }}" {% endif %} data-type="elfinder-input-field" />
    {% if enable and instance is defined %}
        <script type="text/javascript" charset="utf-8">
            $('[data-type="elfinder-input-field"][id="{{ id }}"]').on("click",function() {
                var childWin = window.open("{{path('elfinder', {'instance': instance })}}?id={{ id }}", "popupWindow", "height=450, width=900");
            });
            function setValue(value, element_id) {
                $('[data-type="elfinder-input-field"]' + (element_id ? '[id="'+ element_id +'"]': '')).val(value).change();
            }
        </script>
    {% endif %}
{% endblock %}


 add comment

    <form id="form" class="comment-form" method="post" action="{{ site.url~'/wp-comments-post.php' }}">
        {% if  user %}
            <input type="hidden" name="email" value="{{ user.email }}">
            <input type="hidden" name="author" value="{{ user.name }}">
            <input type="hidden" name="url" value="{{ user.link }}">
        {% else %}

                 email
                <input required name="email" type="text" id="email"/>

                 username
                <input required name="author" type="text" id="author"/>

                 url
                <input name="url" id="url" type="text"/>

        {% endif %}

             comment
            <textarea placeholder="comment text" name="comment" cols="60" rows="3" id="comment"></textarea>

        <input name="comment_post_ID" value="{{ post.id }}" id="comment_post_ID" type="hidden">
        <input name="comment_parent" id="comment_parent" value="{{ comment.ID|default('0') }}" type="hidden">

            <button type="submit" name="Submit" class="btn"> send </button>
            <button type="reset"> cancel </button>

 Your comment will be revised by the site if needed.

    </form>

Update comment form action URL

 add comment

    <form id="form" class="comment-form" method="post" action="{{ site.site_url~'/wp-comments-post.php' }}">
        {% if  user %}
            <input type="hidden" name="email" value="{{ user.email }}">
            <input type="hidden" name="author" value="{{ user.name }}">
            <input type="hidden" name="url" value="{{ user.link }}">
        {% else %}

                 email
                <input required name="email" type="text" id="email"/>

                 username
                <input required name="author" type="text" id="author"/>

                 url
                <input name="url" id="url" type="text"/>

        {% endif %}

             comment
            <textarea placeholder="comment text" name="comment" cols="60" rows="3" id="comment"></textarea>

        <input name="comment_post_ID" value="{{ post.id }}" id="comment_post_ID" type="hidden">
        <input name="comment_parent" id="comment_parent" value="{{ comment.ID|default('0') }}" type="hidden">

            <button type="submit" name="Submit" class="btn"> send </button>
            <button type="reset"> cancel </button>

 Your comment will be revised by the site if needed.

    </form>


{% if block.media|default %}
<img src="{{ block.media.reference|default('fallback.jpeg')|imagine_filter('venue') }}">
{% endif %}

Fix Image Block imagine filter

{% if block.media|default %}
    <img src="{{ block.media.reference|default('fallback.jpeg')|imagine_filter('medialibrary') }}">
{% endif %}


{#

This file is part of the Sonata package.

(c) Thomas Rabaix <thomas.rabaix@sonata-project.org>

For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.

#}

{% extends 'SonataAdminBundle:CRUD:base_list_field.html.twig' %}

{% block field %}
    {% if object.username != app.user.username and sonata_user.impersonating %}

    {% else %}
        -
    {% endif %}
{% endblock %}

Fix exception when user list is accessed anonymously

{#

This file is part of the Sonata package.

(c) Thomas Rabaix <thomas.rabaix@sonata-project.org>

For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.

#}

{% extends 'SonataAdminBundle:CRUD:base_list_field.html.twig' %}

{% block field %}
    {% if app.user and object.username != app.user.username and sonata_user.impersonating %}

    {% else %}
        -
    {% endif %}
{% endblock %}


{% if showBanner %}

    {{ config|hiddenOptions }}

        {% if headline %}

            {{ headline }}

        {% endif %}
        {% if text %}

            {{ text }}

        {% endif %}

            {% if linktag.hasContent() %}
            {{ renderer.component(linktag) }}
                {{ moreText }}
            {% endif %}

            {% if linktag.hasContent() %}{% endif %}

        {{ acceptText }}

{% endif %}

Add classes to optbox for styling

{% if showBanner %}

    {{ config|hiddenOptions }}

        {% if headline %}

            {{ headline }}

        {% endif %}
        {% if text %}

            {{ text }}

        {% endif %}

            {% if linktag.hasContent() %}
            {{ renderer.component(linktag) }}
                {{ moreText }}
            {% endif %}

            {% if linktag.hasContent() %}{% endif %}

         0 %}{{ 'accept--hasText'|bemClass }}{% endif %}">
            {{ acceptText }}

{% endif %}


{% extends "base.twig" %}

{% block content %}

{{post.title}}

          {{broken_content[0]}}
          {% include 'cta.twig' with {'buttontext': 'Create A Dojo', 'target': 'https://zen.coderdojo.com/start-dojo' } %}

          {{broken_content[1]}}
            {% include 'video.twig' with {'videoOne': 'https://www.youtube.com/embed/c7ROVdcyk7s' } %}

        {{broken_content[2]}}
        {% include 'map.twig' %}

{% endblock %}

Remove map from start-dojo page

{% extends "base.twig" %}

{% block content %}

{{post.title}}

          {{broken_content[0]}}
          {% include 'cta.twig' with {'buttontext': 'Start A Dojo', 'target': 'https://zen.coderdojo.com/start-dojo' } %}

          {{broken_content[1]}}

        {{broken_content[2]}}

{% include 'cta.twig' with {'buttontext': 'Start a Dojo', 'target': 'https://zen.coderdojo.com/start-dojo' } %}

        {% include 'video.twig' with {'videoOne': 'https://www.youtube.com/embed/c7ROVdcyk7s' } %}

{% endblock %}


{% extends 'KorobiWebBundle::layout.html.twig' %}

{% set page_title = "Log" %}

{% block body %}

        {% for message in logs %}
            {{ message|raw }}
        {% endfor %}

{% endblock %}

Add line numbers to the HTML


Household ID, Postal Name, Last Name, First Name, Nametag Name, PriSec, Active, Primary Email
{% for household in entities %}
{% for member in household.persons %}
{{ household.id}}, "{{household.postalname}}", "{{member.firstname}}", "{{member.lastname}}", "{{member.nametagname}}", "{{member.secondary ? "Spouse" : "Retiree"}}", {{member.activenow ? "Yes" : "No"}}, "{{member.emailCanonical}}"
{% endfor %}
{% endfor %}

Fix household CSV export formatting

Household ID, Postal Name, Last Name, First Name, Nametag Name, PriSec, Active, Primary Email
{% for household in entities %}
{% for member in household.persons %}
"{{ household.id }}","{{ household.postalname }}","{{ member.firstname }}","{{ member.lastname }}","{{ member.nametagname }}","{{ member.secondary ? "Spouse" : "Retiree" }}","{{ member.activenow ? "Yes" : "No" }}","{{ member.emailCanonical }}"
{% endfor %}
{% endfor %}


{{ result.entityConfig.label }}

{{ result.recordTitle }}

    {{ result.recordText|highlight_trim(searchString)|raw }}

Fix and apply entities templates to render entities using templates on datagrid - fixed search result template

{#
    Available variables:
    * entity - instance of user entity Oro\Bundle\UserBundle\Entity\User
    * url    - url for current entity
#}
{% set user = entity %}
{% set format = get_user_value('oro_user.name_format') %}

{% import 'OroUserBundle::macros.html.twig' as macros %}

{{ user.fullname(format)|default('N/A') }}

                    {% if user.enabled %}

{{ 'Active'|trans }}

                    {% else %}

{{ 'Inactive'|trans }}

                    {% endif %}

{{ 'Created'|trans }}: {{ user.createdAt ? macros.time(user.createdAt) : 'N/A' }}

{{ 'Updated'|trans }}: {{ user.updatedAt ? macros.time(user.updatedAt) : 'N/A' }}

{{ 'Last logged in'|trans }}: {{ user.lastLogin ? macros.time(user.lastLogin) : 'N/A' }}

{{ 'Login count'|trans }}: {{ user.loginCount|default(0) }}


{#

This file is part of the Sonata package.

(c) Thomas Rabaix <thomas.rabaix@sonata-project.org>

For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.

#}

    {% if
            field_description.options.identifier is defined
        and field_description.options.route is defined
        and admin.isGranted(field_description.options.route.name == 'show' ? 'VIEW' : field_description.options.route.name|upper, object)
        and admin.hasRoute(field_description.options.route.name)
    %}

            {%- block field %}{{ value }}{% endblock -%}

    {% else %}
        {{ block('field') }}
    {% endif %}

Add an "identifier" class on list identifier link


{% if app.request.cookies.get('nao-cookies-policy') != 1 %}

            {{ 'cookies_explain'|trans|nl2br }}

            {{ 'i_agree'|trans }}
               {{ 'want_to_know_more'|trans }}

{% endif %}

Fix (Cookies): newline to end file


<i class="{{ data.code|slice(3, 2)|lower }} flag"></i> {{ data.name }}

Make all the form types up and running again

<i class="{{ data.code|slice(3, 2)|lower }} flag"></i> {{ data.code }} {{ data.name }}


{% for message in admin.messages %}

{{ message.message }}

{% endfor %}

{% if form.message %}

{{ form.message }}

{% endif %}

Fix for encoding issue in messages

{% for message in admin.messages %}

{{ message.message|raw }}

{% endfor %}

{% if form.message %}

{{ form.message|raw }}

{% endif %}


{{ placeholder.headline }}

    <form class="{{ 'form'|bemClass }}"
          action="{{ data.url }}"
          method="post"
    >
        {% block beforeView %}{% endblock %}
        {{ renderer.component(view) }}
        {% block sumRows %}
            {% for row in sumRows %}

                    {{ data.trlStaticExecute(row.text) }}

                        {{ row.amount | money }}

            {% endfor %}
        {% endblock %}
        {% if shop is defined and shop %}
            {{ renderer.componentLink(shop, placeholder.backToShop, 'back'|bemClass~' kwfUp-shopBackButton') }}
        {% endif %}
        {% block submit %}
            <input class="{{ 'submit'|bemClass }} kwfUp-shopSubmitButton"
                    name="{{ form.componentId }}"
                    type="submit"
                    value="{{ data.trlKwf('Update') }}"
            />
        {% endblock %}
        {% block checkout %}
            {% if countProducts is defined and countProducts %}
                {{ renderer.componentLink(checkout, placeholder.checkout, 'checkout'|bemClass~' kwfUp-shopCheckoutButton') }}
            {% endif %}
        {% endblock %}
        <input name="{{ form.componentId }}-post"
               type="hidden"
               value="post"
        />
    </form>

Change twig-block to wrap around view-component

{{ placeholder.headline }}

    <form class="{{ 'form'|bemClass }}"
          action="{{ data.url }}"
          method="post"
    >
        {% block view %}
        {{ renderer.component(view) }}
        {% endblock %}
        {% block sumRows %}
            {% for row in sumRows %}

                    {{ data.trlStaticExecute(row.text) }}

                        {{ row.amount | money }}

            {% endfor %}
        {% endblock %}
        {% if shop is defined and shop %}
            {{ renderer.componentLink(shop, placeholder.backToShop, 'back'|bemClass~' kwfUp-shopBackButton') }}
        {% endif %}
        {% block submit %}
            <input class="{{ 'submit'|bemClass }} kwfUp-shopSubmitButton"
                    name="{{ form.componentId }}"
                    type="submit"
                    value="{{ data.trlKwf('Update') }}"
            />
        {% endblock %}
        {% block checkout %}
            {% if countProducts is defined and countProducts %}
                {{ renderer.componentLink(checkout, placeholder.checkout, 'checkout'|bemClass~' kwfUp-shopCheckoutButton') }}
            {% endif %}
        {% endblock %}
        <input name="{{ form.componentId }}-post"
               type="hidden"
               value="post"
        />
    </form>


<!doctype html>

    <meta charset="utf-8" />
    <link href="microcms.css" rel="stylesheet" />
    <title>MicroCMS - Home</title>

MicroCMS

    {% autoescape %}
    {% for article in articles %}

{{ article.title }}

{{ article.content }}

    {% endfor %}
    {% endautoescape %}

        MicroCMS is a minimalistic CMS built as a showcase for modern PHP development.

Fix GitHub link in footer


Hola {{ name }},

Tu cuenta de administrador de candidatura ha sido creada.

Puedes acceder a tu cuenta desde el enlace http://municipales2015.listabierta.org/login

Update mail admin created template

{{ 'mail.admin_created.hello'|trans }} {{ name }},

{{ 'mail.admin_created.account'|trans }}.

{{ 'mail.admin_created.can_create'|trans }} {{ path('login') }}


            {{ form_row(form.code) }}

                {{ form_row(form.price) }}
                {{ form_row(form.originalPrice) }}

        {% if form.options is defined and form.options|length > 0 %}

{{ 'sylius.ui.options'|trans }}

            {% for option_form in form.options %}
                {{ form_row(option_form) }}
            {% endfor %}

        {% endif %}

{{ 'sylius.ui.inventory'|trans }}

            {{ form_row(form.onHand) }}

{{ 'sylius.ui.availability'|trans }}

                {{ form_row(form.availableOn) }}
                {{ form_row(form.availableUntil) }}

Create tracking feature for product variant

            {{ form_row(form.code) }}

                {{ form_row(form.price) }}
                {{ form_row(form.originalPrice) }}

        {% if form.options is defined and form.options|length > 0 %}

{{ 'sylius.ui.options'|trans }}

            {% for option_form in form.options %}
                {{ form_row(option_form) }}
            {% endfor %}

        {% endif %}

{{ 'sylius.ui.inventory'|trans }}

            {{ form_row(form.onHand) }}
            {{ form_row(form.tracked) }}

{{ 'sylius.ui.availability'|trans }}

                {{ form_row(form.availableOn) }}
                {{ form_row(form.availableUntil) }}


{% extends "MapbenderManagerBundle::manager.html.twig" %}

{% block title %}{{ "fom.user.acl.edit.edit_class_acl" | trans({'%name%': class_name}) }}{% endblock %}

{% block manager_content %}

{{ form_start(form, { 'action': path('fom_user_acl_update', { 'class': class }), 'method': 'POST', 'attr': {
    novalidate: 'novalidate', autocomplete: 'off', name: form_name
}}) }}

{{"fom.user.acl.edit.security" | trans }}

            {{ form_widget(form) }}

        {{ form_row(form._token) }}

      <input type="submit" value="{{ 'fom.user.acl.edit.save' | trans }}" class="button"/>
      {{ 'fom.user.acl.edit.cancel' | trans}}

{{ form_end(form) }}
{% endblock %}

Remove dangling nonfunctional collection item add icon under ACL widgets with empty ACE content

{% extends "MapbenderManagerBundle::manager.html.twig" %}

{% block title %}{{ "fom.user.acl.edit.edit_class_acl" | trans({'%name%': class_name}) }}{% endblock %}

{% block manager_content %}

{{ form_start(form, { 'action': path('fom_user_acl_update', { 'class': class }), 'method': 'POST', 'attr': {
    novalidate: 'novalidate', autocomplete: 'off', name: form_name
}}) }}

{{"fom.user.acl.edit.security" | trans }}

            {{ form_widget(form) }}

        {{ form_row(form._token) }}

      <input type="submit" value="{{ 'fom.user.acl.edit.save' | trans }}" class="button"/>
      {{ 'fom.user.acl.edit.cancel' | trans}}

{{ form_end(form, {'render_rest': false}) }}
{% endblock %}


{% extends "page.twig" %}

{% block header_title %}
  {{ site.description }}
{% endblock %}

{% block content %}
  {% if post.content %}

        {{ post.content }}

  {% endif %}

    {% include "components/title.twig" with { "content": "Latest News" } %}

    {% for post in posts %}

        {% include ["components/teaser-" ~ post.post_type ~ ".twig", "components/teaser.twig"] %}

    {% endfor %}

{% endblock %}

Increase bottom margin of title


{% extends "base.twig" %}

{% block content %}

        Mission

        {{ page.content }}

    {% if page.what_we_do %}

          What We Do

          {{ page.what_we_do }}

    {% endif %}

    {% if page.history %}

          History

          {{ page.history }}

    {% endif %}

{% endblock %}


{% if videos %}
	<input type="hidden" name="{{ name }}">

			{% for video in videos %}

					<input
						name="{{ name }}[]"
						type="hidden"
						value="{{ video.hashedId }}"
					>

						{{ video.name }}

			{% endfor %}

= settings.max %} disabled{% endif %}"
			{% if settings.max == '1' and videos|length %}
				style="display: none"
			{% endif %}
		>
			{{ 'Add a video'|t }}

	{% set jsSettings = {
		name: name|namespaceInputName,
		id: id|namespaceInputId,
		projectIds: settings.projects|join(','),
		limit: settings.max
	} %}

	{% includejs %}
		new Wistia.VideoSelectInput({{ jsSettings|json_encode|raw }});
	{% endincludejs %}
{% else %}
	{{ 'No videos available. Upload at least one video to your selected project(s).'|t }}
{% endif %}

Revert "Check for existence of videos"

{% if name is defined and name %}
	<input type="hidden" name="{{ name }}" value="">
{% endif -%}

		{% for video in videos %}

				<input
					name="{{ name }}[]"
					type="hidden"
					value="{{ video.hashedId }}"
				>

					{{ video.name }}

		{% endfor %}

= settings.max %} disabled{% endif %}"
		{% if settings.max == '1' and videos|length %}
			style="display: none"
		{% endif %}
	>
		{{ 'Add a video'|t }}

{% set jsSettings = {
	name: name|namespaceInputName,
	id: id|namespaceInputId,
	projectIds: settings.projects|join(','),
	limit: settings.max
} %}

{% includejs %}
	new Wistia.VideoSelectInput({{ jsSettings|json_encode|raw }});
{% endincludejs %}


{% extends "base.twig" %}
{% block content %}

{{post.title}}

          {{broken_content[0]}}

          {% include 'cta.twig' with {'buttontext': 'Find A Dojo', 'target': 'https://zen.coderdojo.com/' } %}

        {{broken_content[1]}}
        {% include 'map.twig' with {'purpose': 'find' } %}

{% endblock %}

Update link to zen / find Dojo

{% extends "base.twig" %}
{% block content %}

{{post.title}}

          {{broken_content[0]}}

          {% include 'cta.twig' with {'buttontext': 'Find A Dojo', 'target': 'https://zen.coderdojo.com/find' } %}

        {{broken_content[1]}}
        {% include 'map.twig' with {'purpose': 'find' } %}

{% endblock %}


preset: {{ level|lower }}

risky: false

linting: {{ linting ? 'true' : 'false' }}
{% if fixers is not empty %}

enabled:
    - {{ (fixers|join("\n    - "))|raw }}
{% endif %}
{% if disabled_fixers is not empty %}

disabled:
    - {{ (disabled_fixers|join("\n    - "))|raw }}
{% endif %}

finder:
{% for type in ['exclude', 'name', 'not_name', 'contains', 'not_contains', 'path', 'not_path', 'depth'] if finder[type] is not empty %}
    {{ type|replace('_', '-') }}:
        - "{{ (finder[type]|join("\n        - "))|raw }}"
{% endfor %}

Fix wrong indention for styleci config template

preset: {{ level|lower }}

risky: false

linting: {{ linting ? 'true' : 'false' }}
{% if fixers is not empty %}

enabled:
    - {{ (fixers|join("\n    - "))|raw }}
{% endif %}
{% if disabled_fixers is not empty %}

disabled:
    - {{ (disabled_fixers|join("\n    - "))|raw }}
{% endif %}

finder:
{% for type in ['exclude', 'name', 'not_name', 'contains', 'not_contains', 'path', 'not_path', 'depth'] if finder[type] is not empty %}
    {{ type|replace('_', '-') }}:
        - '{{ (finder[type]|join("'\n        - '"))|raw }}'
{% endfor %}


            {{ 'published_at'|trans({'%date%': comment.created|date("d/m/Y")}) }}
            {{ comment.user.name }}

{{ comment.content }}

Fix (avatar): Fix round avatar for comments


{#

This file is part of the Sonata package.

(c) Thomas Rabaix <thomas.rabaix@sonata-project.org>

For the full copyright and license information, please view the LICENSE
file that was distributed with this source code.

#}

    {% if
            field_description.options.identifier is defined
        and field_description.options.route is defined
        and admin.isGranted(field_description.options.route.name == 'show' ? 'VIEW' : field_description.options.route.name|upper, object)
        and admin.hasRoute(field_description.options.route.name)
    %}

            {%- block field %}{{ value }}{% endblock -%}

    {% else %}
        {{ block('field') }}
    {% endif %}

Document type model and fixtures


{% if trace.function %}
    at

        {{ trace.short_class }}
        {{ trace.type ~ trace.function }}

    ({{ trace.args|format_args }})

{% endif %}

{% if trace.file is defined and trace.line is defined %}
    in {{ trace.file|format_file(trace.line) }}
    {% spaceless %}

    {% endspaceless %}

        {{ trace.file|file_excerpt(trace.line) }}

{% endif %}

Fix trace to not show 'in at line' when file/line are empty.

{% if trace.function %}
    at

        {{ trace.short_class }}
        {{ trace.type ~ trace.function }}

    ({{ trace.args|format_args }})
{% endif %}

{% if trace.file is defined and trace.file and trace.line is defined and trace.line %}
    {{ trace.function ? '
' : '' }}
    in {{ trace.file|format_file(trace.line) }}
    {% spaceless %}

    {% endspaceless %}

        {{ trace.file|file_excerpt(trace.line) }}

{% endif %}


{% extends "::base.html.twig" %}

{% block title %}

	Welcome to {{ name }}'s page!

{% endblock %}

{% block body %}

	Hello {{ name }}!

{% endblock %}

Remove carriage returns and trim white space in title

{% extends "::base.html.twig" %}

{% block title -%}

	Welcome to {{ name }}'s page!

{%- endblock %}

{% block body %}

	Hello {{ name }}!

{% endblock %}


{% extends 'base.navigation.html.twig' %}
{% block content %}
{#call_webservice path="details/TraitOfProject" data=["trait_type_id"=>$trait_type_id, "dbversion"=>$DbVersion, "internal_project_id" => $internal_project_id] assign='data'#}

{{ trait.name }}

    {% if trait.trait_format == 'categorical_free' %}

        <button class="btn btn-primary" id="add-trait-to-project-button">Add trait to project</button>

    {% else %}

Unknown trait type

    {% endif %}

{% endblock %}

Add more semi-global variables and include script


                        Powered by

Fix our link to the Fork CMS website.


{% extends 'adminbase.html.twig' %}

{% block title %}Reports: Emails List{% endblock %}

{% block breadcrumbs %}

        Home
        Admin
        Reports
        Email List

{% endblock %}

{% block body %}

Email List

    {{ form_start(form) }}
        {{ form_widget(form.membershipType) }}
        <input type="submit" class="btn btn-primary" value="Go" />
    {{ form_end(form) }}

Regular Emails

        {{ regularEmailsString }}

Crappy BT Emails

        {{ btEmailsString }}

{% endblock %}

Allow email list to be filtered by membership type


MAIN NAVIGATION

                     Dashboard

                     All Sites

TOOLS

 phpMyAdmin

 Mailcatcher

 PHP Info

Add missing span to PHPInfo menu item


Test 1

Test 2

Test 3

Fix (tabs): tabs are no longer always displayed

{% if page.tabs is defined %}

Test 1

Test 2

Test 3

{% endif %}


{% embed '@BkstgSearch/Search/_search_result.html.twig' with {'link': url('bkstg_production_read', {'production_slug': result.slug})} %}
  {% trans_default_domain 'BkstgCoreBundle' %}
  {% block result %}

 {{ result }}

  {% endblock %}
{% endembed %}

Add description to search result.

{% embed '@BkstgSearch/Search/_search_result.html.twig' with {'link': url('bkstg_production_read', {'production_slug': result.slug})} %}
  {% trans_default_domain 'BkstgCoreBundle' %}
  {% block result %}

 {{ result }}

    {% if result.description is not empty %}

{{ result.description|striptags|truncate(300, true)|purify }}

    {% endif %}
  {% endblock %}
{% endembed %}


    <form action="{{ url(controller.route('cget')) }}">
        Search for groups

            <input id="dashboard_user_search" type="search" name="q" placeholder="Search for groups" class="form-control">

                <button type="submit" class="btn btn-default">{{ icon('search') }}Search groups</button>

    </form>

    {% for group in data %}
        {{ group.name }}
    {% endfor %}

Fix ids for group search on dashboard

    <form action="{{ url(controller.route('cget')) }}">
        Search for groups

            <input id="dashboard_group_search" type="search" name="q" placeholder="Search for groups" class="form-control">

                <button type="submit" class="btn btn-default">{{ icon('search') }}Search groups</button>

    </form>

    {% for group in data %}
        {{ group.name }}
    {% endfor %}