{% extends "page.twig" %}

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

{% block content %}
  {% if page.content %}

        {{ page.content }}

  {% endif %}

      Latest {{ posts[0].type.labels.name }}

    {% for post in posts %}
      {% include ["includes/teaser-" ~ post.post_type ~ ".twig", "includes/teaser.twig"] %}
    {% endfor %}

{% endblock %}

Set max width for home page posts


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

{% block content %}

Users with missing picks

                User
                Email
                PickSet

        {% for user in users %}

                {{ user.username }}
                {{ user.email }}
                {% set pickSet = league.getPickSetForUser(user) %}
                {{ pickSet.name }}

        {% endfor %}

Email address list

{{ emailList|join(', ') }}

{% endblock %}

Add first and last name to members without picksets

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

{% block content %}

Users with missing picks

                User
                Email
                First Name
                Last Name
                PickSet

        {% for user in users %}

                {{ user.username }}
                {{ user.email }}
                {% set pickSet = league.getPickSetForUser(user) %}
                {{ user.firstName ?: '--' }}
                {{ user.lastName ?: '--' }}
                {{ pickSet.name }}

        {% endfor %}

Email address list

{{ emailList|join(', ') }}

{% endblock %}


{#
 Copyright (C) 2015, BMW Car IT GmbH

 Permission is hereby granted, free of charge, to any person obtaining a
 copy of this software and associated documentation files (the "Software"),
 to deal in the Software without restriction, including without limitation
 the rights to use, copy, modify, merge, publish, distribute, sublicense,
 and/or sell copies of the Software, and to permit persons to whom the
 Software is furnished to do so, subject to the following conditions:

 The above copyright notice and this permission notice shall be included in
 all copies or substantial portions of the Software.

 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 DEALINGS IN THE SOFTWARE.
#}

{% macro init(id, options = null) %}
{% if options is not null %}
	{% set options = options|json_encode() %}
{% endif %}
$(document).ready( function () {
	$('#{{ id }}').DataTable({{ options|raw }});
});
{% endmacro %}

Make surrounding javascript method optional

{#
 Copyright (C) 2015, BMW Car IT GmbH

 Permission is hereby granted, free of charge, to any person obtaining a
 copy of this software and associated documentation files (the "Software"),
 to deal in the Software without restriction, including without limitation
 the rights to use, copy, modify, merge, publish, distribute, sublicense,
 and/or sell copies of the Software, and to permit persons to whom the
 Software is furnished to do so, subject to the following conditions:

 The above copyright notice and this permission notice shall be included in
 all copies or substantial portions of the Software.

 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 DEALINGS IN THE SOFTWARE.
#}

{% macro init(id, options = null, plain = false) %}
{% if options is not null %}
	{% set options = options|json_encode() %}
{% endif %}
{% if not plain %}
$(document).ready( function () {
{% endif %}
	$('#{{ id }}').DataTable({{ options|raw }});
{% if not plain %}
});
{% endif %}
{% endmacro %}


{% macro list(api_clients) %}

{% import 'SyliusResourceBundle:Macros:buttons.html.twig' as buttons %}
{% import 'SyliusWebBundle:Backend/Macros:alerts.html.twig' as alerts %}
{% import 'SyliusWebBundle:Backend/Macros:misc.html.twig' as misc %}

{% if api_clients|length > 0 %}

                {{ sylius_resource_sort('secret', 'sylius.api_client.secret'|trans) }}
                {{ sylius_resource_sort('updatedAt', 'sylius.api_client.updated_at'|trans) }}

        {% for api_client in api_clients %}

                {{ api_client.secret }}
                {{ api_client.updatedAt|date }}

                    {{ buttons.edit(path('sylius_backend_api_client_update', {'id': api_client.id})) }}
                    {{ buttons.delete(path('sylius_backend_api_client_delete', {'id': api_client.id})) }}

        {% endfor %}

{% else %}
{{ alerts.info('sylius.api_client.no_results'|trans) }}
{% endif %}

{% endmacro %}

Fix invalid ApiBundle "UpdatedAt" field in macros twig

{% macro list(api_clients) %}

{% import 'SyliusResourceBundle:Macros:buttons.html.twig' as buttons %}
{% import 'SyliusWebBundle:Backend/Macros:alerts.html.twig' as alerts %}
{% import 'SyliusWebBundle:Backend/Macros:misc.html.twig' as misc %}

{% if api_clients|length > 0 %}

                {{ sylius_resource_sort('secret', 'sylius.api_client.secret'|trans) }}

        {% for api_client in api_clients %}

                {{ api_client.secret }}

                    {{ buttons.edit(path('sylius_backend_api_client_update', {'id': api_client.id})) }}
                    {{ buttons.delete(path('sylius_backend_api_client_delete', {'id': api_client.id})) }}

        {% endfor %}

{% else %}
{{ alerts.info('sylius.api_client.no_results'|trans) }}
{% endif %}

{% endmacro %}


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

{% block content %}
    {% set packageCount = 0 %}

Statistics

Packages/versions over time

Totals

{{ packages|number_format(0, '.', " ") }} packages registered

{{ versions|number_format(0, '.', " ") }} versions available

{{ downloads == 'N/A' ? downloads : downloads|number_format(0, '.', " ") }} packages installed (since 2012-04-13)

{% endblock %}

Add warning about last data point not being up to date

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

{% block content %}
    {% set packageCount = 0 %}

Statistics

Packages/versions over time

The last data point is for the current month and shows partial data.

Totals

{{ packages|number_format(0, '.', " ") }} packages registered

{{ versions|number_format(0, '.', " ") }} versions available

{{ downloads == 'N/A' ? downloads : downloads|number_format(0, '.', " ") }} packages installed (since 2012-04-13)

{% endblock %}


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

{% block title %}
    {{ cache.title }}
{% endblock %}

{% block stylesheets %}
    {{ parent() }}

{% endblock %}

{% block content %}

                    {{ cache.title }}

{{ cache.message }}

                    <button id="clue-button" class="ui blue big button">

                        Show clue
                    </button>

                 Treasure left by {{ cache.author }}

                    Clue

{{ cache.clue }}

{% endblock %}

{% block javascript%}

{% endblock %}


{% extends "new.twig" %}

{% block title %}{% endblock %}

{% block header %}
    Edit page
{% endblock %}

{% block formAction %}
  /deneb/admin/update
{% endblock %}

{% block pathValue %}
  value="{{ path }}"
{% endblock %}

{% block linknameValue %}
  value="{{ page['meta']['linkname'] }}"
{% endblock %}

{% block titleValue %}
  value="{{ page['meta']['title'] }}"
{% endblock %}

{% block headerValue %}
  value="{{ page['meta']['header'] }}"
{% endblock %}

{% block dateValue %}
  value="{{ page['meta']['date'] }}"
{% endblock %}

{% block descriptionValue %}
  value="{{ page['meta']['description'] }}"
{% endblock %}

{% block categoryValue %}
  value="{{ page['meta']['category'] }}"
{% endblock %}

{% block displayDateTrue %}
  {% if page['meta']['displaydate'] == 'true' %}checked="checked"{% endif %}
{% endblock %}

{% block displayDateFalse %}
  {% if page['meta']['displaydate'] == 'false' %}checked="checked"{% endif %}
{% endblock %}

{% block contents %}
  {{ page['contents'] }}
{% endblock %}

Remove hardcoded deployment path from the form action URL, we extend from new.twig, which already prepends the {{ baseUrl }} to the formAction block

{% extends "new.twig" %}

{% block title %}{% endblock %}

{% block header %}
    Edit page
{% endblock %}

{% block formAction %}
/admin/update
{% endblock %}

{% block pathValue %}
  value="{{ path }}"
{% endblock %}

{% block linknameValue %}
  value="{{ page['meta']['linkname'] }}"
{% endblock %}

{% block titleValue %}
  value="{{ page['meta']['title'] }}"
{% endblock %}

{% block headerValue %}
  value="{{ page['meta']['header'] }}"
{% endblock %}

{% block dateValue %}
  value="{{ page['meta']['date'] }}"
{% endblock %}

{% block descriptionValue %}
  value="{{ page['meta']['description'] }}"
{% endblock %}

{% block categoryValue %}
  value="{{ page['meta']['category'] }}"
{% endblock %}

{% block displayDateTrue %}
  {% if page['meta']['displaydate'] == 'true' %}checked="checked"{% endif %}
{% endblock %}

{% block displayDateFalse %}
  {% if page['meta']['displaydate'] == 'false' %}checked="checked"{% endif %}
{% endblock %}

{% block contents %}
  {{ page['contents'] }}
{% endblock %}


    <button class="close" data-dismiss="modal">
        ×
    </button>

{{ trans('anomaly.module.users::message.choose_field_type') }}

        {% for field_type in field_types %}

                    {{ trans(field_type.getTitle()) }}

                    {{ trans(field_type.getDescription()) }}

        {% endfor %}

Fix issue in modals with styling


				Related Articles

		   	{% block related_articles %}
			     {% for item in items %}

		                {% include "@molecules/02-blocks/05-impact-story-small.twig" with {
		                    "color" : item.color,
		                    "date" : item.date,
		                    "text" : item.text,
		                    "category" : item.category,
		                    "link" : item.link
		                } %}

		        {% endfor %}
		   {% endblock %}

Add block for the label section

		{% block label %}

				Related Articles

		{% endblock %}

		   	{% block related_articles %}
			     {% for item in items %}

		                {% include "@molecules/02-blocks/05-impact-story-small.twig" with {
		                    "color" : item.color,
		                    "date" : item.date,
		                    "text" : item.text,
		                    "category" : item.category,
		                    "link" : item.link
		                } %}

		        {% endfor %}
		   {% endblock %}


{{ 'profile.show.username'|trans({}, 'FOSUserBundle') }}: {{ user.username }}

{{ 'profile.show.email'|trans({}, 'FOSUserBundle') }}: {{ user.email }}

    {% if user.githubId is null %}

{{ 'profile.show.github.connect'|trans }}

    {% else %}

{{ 'profile.show.github.id'|trans }}: {{ user.githubId }}

    {% endif %}

Fix connect existing account with github account


When you give to UCSF, you become something indispensable in our quest to provide great medicine: You become a partner — in every discovery, in the way we prepare future physicians and researchers, and in the care and hope we bring to people across the globe.

The spirit of partnership sets UCSF apart and makes us one of the world’s most innovative and productive sources of health care breakthroughs. We invite you to advance the world of science and medicine with us.

Make section intro text dynamic


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

{% trans_default_domain 'FOSUserBundle' %}

{% block head_style %}
    {{ parent() }}
    {% stylesheets '@DemontpxUserBundle/Resources/public/css/login.css' %}
    <link rel="stylesheet" type="text/css" href="{{ asset_url }}">
    {% endstylesheets %}
{% endblock %}

{% block content %}

    {% if error %}

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

    {% endif %}

    <form action="{{ path("demontpx_user_security_check") }}" method="post">
        <input type="hidden" name="_csrf_token" value="{{ csrf_token }}" />

        <input type="text" id="username" class="form-control input-lg" name="_username" placeholder="{{ 'demontpx_user.username'|trans }}" value="{{ last_username }}" required="required" autofocus/>
        <input type="password" id="password" class="form-control input-lg" name="_password" placeholder="{{ 'demontpx_user.security.password'|trans }}" required="required" />

            <input type="checkbox" id="remember_me" name="_remember_me" value="on" />
            {{ 'demontpx_user.security.remember_me'|trans }}

        <input type="submit" id="_submit" class="btn btn-primary btn-block btn-lg" name="_submit" value="{{ 'demontpx_user.security.sign_in'|trans }}" />
    </form>

{% endblock %}

Remove stylesheets block from login page

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

{% trans_default_domain 'FOSUserBundle' %}

{% block content %}

    {% if error %}

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

    {% endif %}

    <form action="{{ path("demontpx_user_security_check") }}" method="post">
        <input type="hidden" name="_csrf_token" value="{{ csrf_token }}" />

        <input type="text" id="username" class="form-control input-lg" name="_username" placeholder="{{ 'demontpx_user.username'|trans }}" value="{{ last_username }}" required="required" autofocus/>
        <input type="password" id="password" class="form-control input-lg" name="_password" placeholder="{{ 'demontpx_user.security.password'|trans }}" required="required" />

            <input type="checkbox" id="remember_me" name="_remember_me" value="on" />
            {{ 'demontpx_user.security.remember_me'|trans }}

        <input type="submit" id="_submit" class="btn btn-primary btn-block btn-lg" name="_submit" value="{{ 'demontpx_user.security.sign_in'|trans }}" />
    </form>

{% endblock %}


{% extends "layout.twig" %}

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

    {% if response.isSuccessful() %}

Congratulations, your request was successful!

    {% 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 support for GET redirects to example application

{% 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 %}


{% macro links(pages, collection, active, options, depth) %}
    {% for page in pages %}

        {% set children = collection.children(page) %}

                {{ page.title }}

            {% if not children.isEmpty() %}
                {% if depth+1 <= options.get('depth', 999) %}

                        {{ _self.links(children, collection, options, depth+1) }}

                {% endif %}
            {% endif %}

    {% endfor %}
{% endmacro %}

Add some more options for customizing page structure nav

{% macro links(pages, collection, active, options, depth) %}
    {% for page in pages %}

        {% set children = collection.children(page) %}

        <{{ options.link_tag ?: 'li' }} class="
            {{ children.isEmpty() ? '' : (options.dropdown_class ?: 'dropdown') }}
            {{ collection.hasActive(page, active) ? options.get('has_active_class', 'active') }}
            {{ page.id == active.id ? options.get('active_class', 'active') }}
            {{ options.item_class }}">

            <a href="{{ url(page.path) }}" class="{{ options.link_class }}">
                {{ page.title }}
            </a>

            {% if not children.isEmpty() %}
                {% if depth+1 <= options.get('depth', 999) %}
                    <{{ options.child_list_tag ?: options.list_tag ?: 'ul' }} class="{{ options.child_list_class }}">
                        {{ _self.links(children, collection, options, depth+1) }}
                    </{{ options.child_list_tag ?: options.list_tag ?: 'ul' }}>
                {% endif %}
            {% endif %}
        </{{ options.link_tag ?: 'li' }}>
    {% endfor %}
{% endmacro %}


{% if app.user %}
    <script type="text/javascript">
        require(['ororeminder/js/subscriber', 'oroui/js/mediator'], function(subscriber, mediator){
            mediator.once('page-rendered hash_navigation_request:complete', function () {
                subscriber.showReminders({{ oro_reminder_get_requested_reminders_data()|json_encode|raw }});
            });
        });
    </script>
{% endif %}

Stabilize reminders functionality - CR changes

{% set remindersData = oro_reminder_get_requested_reminders_data() %}
{% if app.user and remindersData|length %}
    <script type="text/javascript">
        require(['ororeminder/js/subscriber', 'oroui/js/mediator'], function(subscriber, mediator){
            mediator.once('page-rendered hash_navigation_request:complete', function () {
                subscriber.showReminders({{ remindersData|json_encode|raw }});
            });
        });
    </script>
{% endif %}


<!doctype html>
<!--[if IE 7 ]>
<html class="no-js ie ie7" lang="en"> <![endif]-->
<!--[if IE 8 ]>
<html class="no-js ie ie8" lang="en"> <![endif]-->
<!--[if IE 9 ]>
<html class="no-js ie ie9" lang="en"> <![endif]-->
<!--[if (gte IE 10)|!(IE)]><!-->
<html class="no-js" lang="en"> <!--<![endif]-->
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Form</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    {% block stylesheet %}
        <link rel="stylesheet" type="text/css" href="/css/oro.css"/>
        <style type="text/css">
            body {
                min-width: 0;
            }
        </style>
    {% endblock %}
    {% include 'OroRequireJSBundle::scripts.html.twig' with {compressed: not app.debug} %}
    {% block javascripts %}{% endblock %}
</head>
<body>
<div id="page">
    {% block page %} {% endblock %}
</div>
</body>
</html>

Move CSS needed for embedded forms to separate file

<!doctype html>
<!--[if IE 7 ]>
<html class="no-js ie ie7" lang="en"> <![endif]-->
<!--[if IE 8 ]>
<html class="no-js ie ie8" lang="en"> <![endif]-->
<!--[if IE 9 ]>
<html class="no-js ie ie9" lang="en"> <![endif]-->
<!--[if (gte IE 10)|!(IE)]><!-->
<html class="no-js" lang="en"> <!--<![endif]-->
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Form</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    {% block stylesheet %}
        <style type="text/css">
            body {
                min-width: 0;
            }
        </style>
    {% endblock %}
    {% include 'OroRequireJSBundle::scripts.html.twig' with {compressed: not app.debug} %}
    {% block javascripts %}{% endblock %}
</head>
<body>
<div id="page">
    {% block page %} {% endblock %}
</div>
</body>
</html>


  This video has share_description set to Share me!.

{% include "@bolt/video.twig" with {
  "videoId": "3861325118001",
  "accountId": "1900410236",
  "playerId": "r1CAdLzTW",
  "share_description": "Share me!"
} only %}


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

{% block content %}

                This is Fennec. It helps you add trait information from various sources to your community data.
                You can upload your own communities or just explore the database of organisms and traits.
                To see how many organisms and traits there are just look at the boxes below.

        {% include 'startpage/panelRow.html.twig' %}

{% endblock %}

Add link to user guide to startpage

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

{% block content %}

                    This is Fennec. It helps you add trait information from various sources to your community data.
                    You can upload your own communities or just explore the database of organisms and traits.
                    To see how many organisms and traits there are just look at the boxes below.

                    If you use FENNEC for the first time you can checkout this guide.

        {% include 'startpage/panelRow.html.twig' %}

{% endblock %}


<script type="text/javascript">
    document.addEventListener("DOMContentLoaded", function(event) {
        $('.selectpicker').selectpicker();
        $('#dbVersionPicker').selectpicker('val', '{{ dbversion }}');
        $('#dbVersionPicker').on('changed.bs.select', function () {
            {% set previous_params = app.request.get('_route_params') %}
            var route = '{{ path(app.request.get('_route'), previous_params|merge({'dbversion': dbversion})) }}';
            route = route.replace('dbversion', $('#dbVersionPicker').val());
            window.location.href = route;
        });
    });
</script>

Fix selectpicker to change dbversion

<script type="text/javascript">
    document.addEventListener("DOMContentLoaded", function(event) {
        $('.selectpicker').selectpicker();
        $('#dbVersionPicker').selectpicker('val', '{{ dbversion }}');
        $('#dbVersionPicker').on('changed.bs.select', function () {
            {% set previous_params = app.request.get('_route_params') %}
            var route = '{{ path(app.request.get('_route'), previous_params|merge({'dbversion': dbversion})) }}';
            route = route.replace('{{ dbversion }}', $('#dbVersionPicker').val());
            window.location.href = route;
        });
    });
</script>


<!DOCTYPE html>

    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="/assets/css/bootstrap.css" rel="stylesheet">
    <link href="/assets/css/bootstrap-responsive.css" rel="stylesheet">
    <link href="/assets/css/style.css" rel="stylesheet">

    <title>Drupal Release Date</title>

Drupal 8 Release

        Estimated to occur on

{{ estimate.value ? estimate.value : 'N/A' }}

{{ estimate.note }}

          Drupal core release cycle

       Built by gapple
       | On twitter @gappleca

    {% include('googleanalytics.twig') %}

Remove bootstrap-responsive.css since now using stripped down, custom build

<!DOCTYPE html>

    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="/assets/css/bootstrap.css" rel="stylesheet">
    <link href="/assets/css/style.css" rel="stylesheet">

    <title>Drupal Release Date</title>

Drupal 8 Release

        Estimated to occur on

{{ estimate.value ? estimate.value : 'N/A' }}

{{ estimate.note }}

          Drupal core release cycle

       Built by gapple
       | On twitter @gappleca

    {% include('googleanalytics.twig') %}


{% macro simple(paginator, options) %}
    {% if paginator.haveToPaginate() %}
        {{ pagerfanta(paginator, 'semantic_ui_translated', options|default({})) }}
    {% endif %}
{% endmacro %}

{% macro perPage(paginator, paginationLimits) %}

        {{ 'sylius.ui.show'|trans }} {{ paginator.maxPerPage }}

        {% for limit in paginationLimits|filter(limit => limit != paginator.maxPerPage) %}
            {% set path = path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')|merge(app.request.query)|merge({'limit': limit})) %}
            {{ limit }}
        {% endfor %}

{% endmacro %}

Use semantic ui view instead of deprecated semantic_ui_translated

{% macro simple(paginator, options) %}
    {% if paginator.haveToPaginate() %}
        {{ pagerfanta(paginator, 'semantic_ui', options|default({})) }}
    {% endif %}
{% endmacro %}

{% macro perPage(paginator, paginationLimits) %}

        {{ 'sylius.ui.show'|trans }} {{ paginator.maxPerPage }}

        {% for limit in paginationLimits|filter(limit => limit != paginator.maxPerPage) %}
            {% set path = path(app.request.attributes.get('_route'), app.request.attributes.get('_route_params')|merge(app.request.query)|merge({'limit': limit})) %}
            {{ limit }}
        {% endfor %}

{% endmacro %}


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

{% macro pageLinkName(text) %}{{ text|lower|replace({' ':'_'}) }}{% endmacro %}

{% block javascripts %}
	{% do assets.add('theme://js/singlePageNav.min.js') %}
	{{ parent() }}
{% endblock %}

{% block bottom %}
	{{ parent() }}

{% endblock %}

{% block header_navigation %}

    {% for module in page.collection() %}

            {% set current_module = (module.active or module.activeChild) ? 'active' : '' %}

{{ module.menu }}

    {% endfor %}

{% endblock %}

{% block content %}
    {{ page.content }}
    {% for module in page.collection() %}

        {{ module.content }}
    {% endfor %}
{% endblock %}

Make toggle option to enable/disable on-page menu

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

{% set show_onpage_menu = header.onpage_menu == true or header.onpage_menu is null %}
{% macro pageLinkName(text) %}{{ text|lower|replace({' ':'_'}) }}{% endmacro %}

{% block javascripts %}
    {% if show_onpage_menu %}
        {% do assets.add('theme://js/singlePageNav.min.js') %}
    {% endif %}
    {{ parent() }}
{% endblock %}

{% block bottom %}
    {{ parent() }}
    {% if show_onpage_menu %}

    {% endif %}
{% endblock %}

{% block header_navigation %}
    {% if show_onpage_menu %}

        {% for module in page.collection() %}

            {% set current_module = (module.active or module.activeChild) ? 'active' : '' %}

{{ module.menu }}

        {% endfor %}

    {% else %}
        {{  parent() }}
    {% endif %}
{% endblock %}

{% block content %}
    {{ page.content }}
    {% for module in page.collection() %}

        {{ module.content }}
    {% endfor %}
{% endblock %}


{% trans_default_domain 'CmsKernelAdminBridge' %}

{% set url = 'bengor_user_' ~ cms_kernel_admin_bridge.user_type ~ '_logout' %}

    {% if cms_kernel_admin_bridge.locales is not empty and cms_kernel_admin_bridge.locales[0] != null %}

            {% include '@CmsKernelAdminBridge/components/language_switcher.html.twig' %}

    {% endif %}

{{ 'cms_kernel_admin_bridge.header.me' | trans({'%email%': app.user.email}) }}

        {{- 'cms_kernel_admin_bridge.header.logout' | trans -}}

Hide language selector when the cms is monolingual

{% trans_default_domain 'CmsKernelAdminBridge' %}

{% set url = 'bengor_user_' ~ cms_kernel_admin_bridge.user_type ~ '_logout' %}

    {% if cms_kernel_admin_bridge.locales|length > 1 %}

            {% include '@CmsKernelAdminBridge/components/language_switcher.html.twig' %}

    {% endif %}

{{ 'cms_kernel_admin_bridge.header.me' | trans({'%email%': app.user.email}) }}

        {{- 'cms_kernel_admin_bridge.header.logout' | trans -}}


{# @var ea \EasyCorp\Bundle\EasyAdminBundle\Context\AdminContext #}
{% set ea_select2_locales = ['af', 'ar', 'az', 'bg', 'bn', 'bs', 'ca', 'cs', 'da', 'de', 'dsb', 'el', 'en', 'es', 'et', 'eu', 'fa', 'fi', 'fr', 'gl', 'he', 'hi', 'hr', 'hsb', 'hu', 'hy', 'id', 'is', 'it', 'ja', 'ka', 'km', 'ko', 'lt', 'lv', 'mk', 'ms', 'nb', 'ne', 'nl', 'pl', 'ps', 'pt', 'pt-BR', 'ro', 'ru', 'sk', 'sl', 'sq', 'sr', 'sr-Cyrl', 'sv', 'th', 'tk', 'tr', 'uk', 'vi', 'zh-CN', 'zh-TW'] %}

{% set ea_select2_locale = ea.i18n.locale in ea_select2_locales
    ? ea.i18n.locale
    : ea.i18n.language in ea_select2_locales ? ea.i18n.language : 'en'
%}

{% if ea_select2_locale != 'en' %}
    <script src="{{ asset('bundles/easyadmin/select2/i18n/' ~ ea_select2_locale ~ '.js') }}"></script>
{% endif %}

Use the HTML locale when dealing with Select2 locales

{# @var ea \EasyCorp\Bundle\EasyAdminBundle\Context\AdminContext #}
{% set ea_select2_locales = ['af', 'ar', 'az', 'bg', 'bn', 'bs', 'ca', 'cs', 'da', 'de', 'dsb', 'el', 'en', 'es', 'et', 'eu', 'fa', 'fi', 'fr', 'gl', 'he', 'hi', 'hr', 'hsb', 'hu', 'hy', 'id', 'is', 'it', 'ja', 'ka', 'km', 'ko', 'lt', 'lv', 'mk', 'ms', 'nb', 'ne', 'nl', 'pl', 'ps', 'pt', 'pt-BR', 'ro', 'ru', 'sk', 'sl', 'sq', 'sr', 'sr-Cyrl', 'sv', 'th', 'tk', 'tr', 'uk', 'vi', 'zh-CN', 'zh-TW'] %}

{% set ea_select2_locale = ea.i18n.htmlLocale in ea_select2_locales
    ? ea.i18n.htmlLocale
    : ea.i18n.language in ea_select2_locales ? ea.i18n.language : 'en'
%}

{% if ea_select2_locale != 'en' %}
    <script src="{{ asset('bundles/easyadmin/select2/i18n/' ~ ea_select2_locale ~ '.js') }}"></script>
{% endif %}


{% extends bap.layout is defined ? bap.layout : 'OroUIBundle:Default:index.html.twig' %}

{% block head %}
    {{ parent() }}

    {% block stylesheets %}{% endblock %}

    {% javascripts
        '@OroUIBundle/Resources/public/lib/underscore.js'
        '@OroUIBundle/Resources/public/lib/backbone.js'
        '@OroUIBundle/Resources/public/js/backbone/app.js'
        '@OroUIBundle/Resources/public/js/backbone/app/model.js'
        '@OroUIBundle/Resources/public/js/backbone/app/view.js'
        '@OroUIBundle/Resources/public/js/backbone/app/router.js'
        '@OroUIBundle/Resources/public/js/backbone/app/collection.js'
        '@OroUIBundle/Resources/public/js/backbone/setup.js'
        output='js/acme.all.js'
        %}
        <script type="text/javascript" src="{{ asset_url }}"></script>
    {% endjavascripts %}

    {% block javascripts %}{% endblock %}
{% endblock %}

{% block title %}Grid Bundle - {{ parent() }}{% endblock %}

Implement AJAX grid using backbons.js - use default layout in grid demo bundle

{% extends 'OroUIBundle:Default:index.html.twig' %}

{% block head %}
    {{ parent() }}

    {% block stylesheets %}{% endblock %}

    {% javascripts
        '@OroUIBundle/Resources/public/lib/underscore.js'
        '@OroUIBundle/Resources/public/lib/backbone.js'
        '@OroUIBundle/Resources/public/js/backbone/app.js'
        '@OroUIBundle/Resources/public/js/backbone/app/model.js'
        '@OroUIBundle/Resources/public/js/backbone/app/view.js'
        '@OroUIBundle/Resources/public/js/backbone/app/router.js'
        '@OroUIBundle/Resources/public/js/backbone/app/collection.js'
        '@OroUIBundle/Resources/public/js/backbone/setup.js'
        output='js/acme.all.js'
        %}
        <script type="text/javascript" src="{{ asset_url }}"></script>
    {% endjavascripts %}

    {% block javascripts %}{% endblock %}
{% endblock %}

{% block title %}Grid Bundle - {{ parent() }}{% endblock %}


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

{% block title %}{{ 'candidacy.step_verify.html_title'|trans }}{% endblock %}

{% form_theme form 'MunicipalesBundle:theme:forms.html.twig' %}

{% block appjsinline %}
{% endblock %}

{% block content %}

{{ 'candidacy.recover_password.header'|trans }}

 {{ 'candidacy.recover_password.h1_title'|trans }}

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

	                  				<button data-dismiss="alert" class="close" type="button">

			                        </button>
			                        {{ flashMessage }}

				  {% endfor %}

{% endblock %}


{% if stepBreadcrumbs is defined %}
    {% for stepBreadcrumbItem in stepBreadcrumbs.breadcrumbs %}

            {% if stepBreadcrumbItem.isEnabled and not stepBreadcrumbItem.isActive %}
                {{ stepBreadcrumbItem.title | trans }}
            {% else %}
                {{ stepBreadcrumbItem.title | trans }}
            {% endif %}

    {% endfor %}
{% endif %}

Use proper quotes for HTML values


	<select id="edit-date" name="date">
	    <option value="0">Choisissez une date</option>
	    {% for string, date in dates %}
	        <option value="{{string}}">{{date}}</option>
	    {% endfor %}
	</select>
	    Modifer
	</form>

Remove blank options for modification

	<select id="edit-date" name="date">
	    {% for string, date in dates %}
	        <option value="{{string}}">{{date}}</option>
	    {% endfor %}
	</select>
	    Modifer
	</form>


{# import du layout du bundle #}
{% extends "PortfolioRemyArticlesBundle::layout.html.twig" %}

{% block title %}
   {{ 'portfolioremy.articles.show'|trans }} - {{ parent() }}
{% endblock %}

{% block portfolioremyarticles_body %}

    {# les messages flash #}
    {% block portfolioremyarticles_flash %}
        {% include "PortfolioRemyArticlesBundle:Articles:flash.html.twig" %}
    {% endblock %}

    {# on inclut la vue article #}
    {% include "PortfolioRemyArticlesBundle:Articles:article.html.twig" %}

    {% block portfolioremyarticles_boutons %}
        {% include "PortfolioRemyArticlesBundle:Articles:articleBoutons.html.twig" %}
    {% endblock %}

{% endblock %}

Update title in head balise

{# import du layout du bundle #}
{% extends "PortfolioRemyArticlesBundle::layout.html.twig" %}

{% block title %}
   {{ article.titre }} - {{ parent() }}
{% endblock %}

{% block portfolioremyarticles_body %}

    {# les messages flash #}
    {% block portfolioremyarticles_flash %}
        {% include "PortfolioRemyArticlesBundle:Articles:flash.html.twig" %}
    {% endblock %}

    {# on inclut la vue article #}
    {% include "PortfolioRemyArticlesBundle:Articles:article.html.twig" %}

    {% block portfolioremyarticles_boutons %}
        {% include "PortfolioRemyArticlesBundle:Articles:articleBoutons.html.twig" %}
    {% endblock %}

{% endblock %}


{% extends 'SonataAdminBundle::standard_layout.html.twig' %}

{% block stylesheets %}
    {{ parent() }}
    <link href="{{ asset('bundles/vincecmssonataadmin/css/main.css') }}" type="text/css" rel="stylesheet" />
    {% if form is defined %}
        {{ form_stylesheets(form) }}
    {% endif %}
{% endblock %}

{% block footer %}
    {{ parent() }}
    {% if form is defined %}
        {% javascripts '@VinceCmsSonataAdminBundle/Resources/public/js/url.js' filter='?yui_js' %}
            <script type="text/javascript" src="{{ asset_url }}"></script>
        {% endjavascripts %}
        {{ form_javascripts(form) }}
    {% endif %}
{% endblock %}

Update sonata admin standard layout

{% extends 'SonataAdminBundle::standard_layout.html.twig' %}

{% block stylesheets %}
    {{ parent() }}
    <link href="{{ asset('bundles/vincecmssonataadmin/css/main.css') }}" type="text/css" rel="stylesheet" />
    {% if form is defined %}
        {{ form_stylesheets(form) }}
    {% endif %}
{% endblock %}

{% block sonata_page_content %}
    {{ parent() }}
    {% if form is defined %}
        {% javascripts '@VinceCmsSonataAdminBundle/Resources/public/js/url.js' filter='?yui_js' %}
            <script type="text/javascript" src="{{ asset_url }}"></script>
        {% endjavascripts %}
        {{ form_javascripts(form) }}
    {% endif %}
{% endblock %}


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

{% block body %}
     Hallo {{ name }}!
{% endblock %}

{% block description %}
	Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque nibh odio, cursus eu cursus placerat, pellentesque vitae justo. Cras eros mi, vehicula viverra pretium vel, sagittis a risus. Cras at lacus ipsum. Suspendisse potenti. In iaculis magna in risus auctor aliquam posuere nunc luctus.
{% endblock %}

{% block main %}

    	{% for source in sources %}

        	    {% for field in source %}

        		{{ field }}

		    	{% else %}

No fields

		    	{% endfor %}

    	{% else %}

No sources found

    	{% endfor %}

{% endblock %}

Add table headers to the sources table

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

{% block body %}
     Hallo {{ name }}!
{% endblock %}

{% block description %}
	Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque nibh odio, cursus eu cursus placerat, pellentesque vitae justo. Cras eros mi, vehicula viverra pretium vel, sagittis a risus. Cras at lacus ipsum. Suspendisse potenti. In iaculis magna in risus auctor aliquam posuere nunc luctus.
{% endblock %}

{% block main %}

    	{% for source in sources %}

        	    {% for field in source|keys %}

        		{{ field }}

		    	{% else %}

No keys

		    	{% endfor %}

        	    {% for field in source %}

        		{{ field }}

		    	{% else %}

No fields

		    	{% endfor %}

    	{% else %}

No sources found

    	{% endfor %}

{% endblock %}


{% block _page_footer_widget %}
    {% set attr = layout_attr_defaults(attr, {
        '~class': ' page-footer'
    }) %}

    <footer {{ block('block_attributes') }}>
        {{ block_widget(block) }}
    </footer>
{% endblock %}

{% block _page_footer_container_widget %}
    {% set attr = layout_attr_defaults(attr, {
        '~class': " page-footer-container"
    }) %}
    <div {{ block('block_attributes') }}>
        {{ block_widget(block) }}
    </div>
{% endblock %}

{% block _page_footer_base_widget %}
    {% set attr = layout_attr_defaults(attr, {
        '~class': " page-footer-container__base"
    }) %}
    <div {{ block('block_attributes') }}>
        {{ block_widget(block) }}
    </div>
{% endblock %}

{% block _page_footer_side_widget %}
    {% set attr = layout_attr_defaults(attr, {
        '~class': " page-footer-container__side"
    }) %}
    <div {{ block('block_attributes') }}>
        {{ block_widget(block) }}
    </div>
{% endblock %}

Improve ComponentManager using into separate layouts - fix ScrollTopView dispose

{% block _page_footer_widget %}
    {% set attr = layout_attr_defaults(attr, {
        '~class': ' page-footer',
        'data-page-footer': ''
    }) %}

    <footer {{ block('block_attributes') }}>
        {{ block_widget(block) }}
    </footer>
{% endblock %}

{% block _page_footer_container_widget %}
    {% set attr = layout_attr_defaults(attr, {
        '~class': " page-footer-container"
    }) %}
    <div {{ block('block_attributes') }}>
        {{ block_widget(block) }}
    </div>
{% endblock %}

{% block _page_footer_base_widget %}
    {% set attr = layout_attr_defaults(attr, {
        '~class': " page-footer-container__base"
    }) %}
    <div {{ block('block_attributes') }}>
        {{ block_widget(block) }}
    </div>
{% endblock %}

{% block _page_footer_side_widget %}
    {% set attr = layout_attr_defaults(attr, {
        '~class': " page-footer-container__side"
    }) %}
    <div {{ block('block_attributes') }}>
        {{ block_widget(block) }}
    </div>
{% endblock %}


{% extends 'ForkCMSInstallerBundle:Installer:base.html.twig' %}

{% block content %}

Installation complete

Fork CMS is installed! You can now log in using:

      Your e-mail
      {{ data.email }}

      Your password

        {{ data.password }}
        ••••••••••••
        <input type="checkbox" id="showPassword" name="showPassword" /> show password

    View your new website
    Log in to Fork CMS

{% endblock %}

Add info about removing the installer.

{% extends 'ForkCMSInstallerBundle:Installer:base.html.twig' %}

{% block content %}

Installation complete

Fork CMS is installed! You can now log in using:

      Your e-mail
      {{ data.email }}

      Your password

        {{ data.password }}
        ••••••••••••
        <input type="checkbox" id="showPassword" name="showPassword" /> show password

    You can disable the installer by removing the installer routes in app/config/routing.yml and clearing the cache.

    View your new website
    Log in to Fork CMS

{% endblock %}


{% trans_default_domain 'admin' %}

{{ form_errors(form) }}
{{ form_start(form, { 'attr': ajax_form ? { 'class': 'ajax' } : {} }) }}
{% for name, fields in field_groups %}

{{ (meta.baseTranslationPrefix ~ 'field_group.' ~ name) | trans }}

        {% for field, attr in fields %}
            {{ form_row(attribute(form, field)) }}
        {% endfor %}

{% endfor %}
{{ form_end(form) }}

Fix CRUD form widget template.

{% trans_default_domain 'admin' %}

{{ form_errors(form) }}
{{ form_start(form, { 'attr': ajax_form is defined and ajax_form ? { 'class': 'ajax' } : {} }) }}
{% for name, fields in field_groups %}

{{ (meta.baseTranslationPrefix ~ 'field_group.' ~ name) | trans }}

        {% for field, attr in fields %}
            {{ form_row(attribute(form, field)) }}
        {% endfor %}

{% endfor %}
{{ form_end(form) }}


{% extends '@SyliusUi/Layout/centered.html.twig' %}

{% block title %}Sylius | {{ 'sylius.ui.administration_panel_login'|trans }}{% endblock %}

{% block stylesheets %}
    {% include '@SyliusUi/_stylesheets.html.twig' with {'path': 'assets/admin/css/style.css'} %}
{% endblock %}

{% block content %}
    {{ sylius_template_event('sylius.admin.login.content', _context) }}
{% endblock %}

{% block javascripts %}
    {% include '@SyliusUi/_javascripts.html.twig' with {'path': 'assets/admin/js/app.js'} %}
{% endblock %}

Use the sylius_ui for css and js on login screen

{% extends '@SyliusUi/Layout/centered.html.twig' %}

{% block title %}Sylius | {{ 'sylius.ui.administration_panel_login'|trans }}{% endblock %}

{% block stylesheets %}
    {{ sylius_template_event('sylius.admin.layout.stylesheets') }}
{% endblock %}

{% block content %}
    {{ sylius_template_event('sylius.admin.login.content', _context) }}
{% endblock %}

{% block javascripts %}
    {{ sylius_template_event('sylius.admin.layout.javascripts') }}
{% endblock %}


{% extends "base.twig" %}

{% block content %}

{{post.title}}

        Posted by {{ post.author.name }}  on {{ post.post_date|date}}

        {{post.content}}

        {{ post.prev.title }}

        {{ post.next.title }}

{% endblock %}

{% block prefooter %}

    To Top

{% endblock %}

Check for the next and previous posts.

{% extends "base.twig" %}

{% block content %}

{{post.title}}

        Posted by {{ post.author.name }}  on {{ post.post_date|date}}

        {{post.content}}

      {% if post.prev %}

          {{ post.prev.title }}

      {% endif %}
      {% if post.next %}

          {{ post.next.title }}

      {% endif %}

{% endblock %}

{% block prefooter %}

    To Top

{% endblock %}


        Recent PSA Reads

                DJ
                Time Read
                PSA
                Campaign

            {% for read in psa_reads %}

                {{ read.dj_initials }}
                {{ read.time_read|date('M j, Y') }}
                {{ read.ad_name }}
                {{ read.campaign_name }}

            {% endfor %}

Put the table in a div.row.


{% trans_default_domain 'admin' %}

{{ admin_widget_actions(entity, { 'view_type': 'show' }) }}

            {% for item in view.items %}

                    {{ item.label | trans }}:
                    {{ item.content ? item.content | trans | raw : '-' }}

            {% endfor %}

Implement custom order entity admin show widget template.

{% trans_default_domain 'admin' %}

{% block widget_content %}
    {{ admin_widget_actions(entity, { 'view_type': 'show' }) }}

                    {% for item in view.items %}

                            {{ item.label | trans }}:
                            {{ item.content ? item.content | trans | raw : '-' }}

                    {% endfor %}

{% endblock %}


Add a template for including the raygun javascript client

{# NietonfirRaygunBundle/Resources/views/Static/raygun-js.html.twig #}
<script type="text/javascript">
  !function(a,b,c,d,e,f,g,h){a.RaygunObject=e,a[e]=a[e]||function(){
  (a[e].o=a[e].o||[]).push(arguments)},f=b.createElement(c),g=b.getElementsByTagName(c)[0],
  f.async=1,f.src=d,g.parentNode.insertBefore(f,g),h=a.onerror,a.onerror=function(b,c,d,f,g){
  h&&h(b,c,d,f,g),g||(g=new Error(b)),a[e].q=a[e].q||[],a[e].q.push({
  e:g})}}(window,document,"script","//cdn.raygun.io/raygun4js/raygun.min.js","rg4js");
</script>


        <form method="post"
              data-nohash="true"
              id="{{ form.vars.name }}"
              action="{{ path('oro_importexport_import_form', {entity: entityName}) }}"
              class="form-horizontal"
              {{ form_enctype(form) }}>

            <fieldset>
                {{ form_row(form.file, {'label': 'File'}) }}
                {{ form_row(form.processorAlias, {'label': 'Strategy'}) }}
                {{ form_rest(form) }}
            </fieldset>

                <button class="btn" type="reset">{{ 'Cancel'|trans }}</button>
                <button class="btn btn-primary" type="submit">{{ 'Submit'|trans }}</button>

        </form>

Create universal import/export controller - remove strategy from form


{% include 'SimplyTestableWebClientBundle:bs3/Partials/User/Account/Plan:summary.html.twig' %}

Allowances

{% include 'SimplyTestableWebClientBundle:bs3/Partials/User/Account/Plan:allowances.html.twig' %}

{% if (user_summary.getTeamSummary.isInTeam and team.leader == user.username) or not user_summary.getTeamSummary.isInTeam %}

Upgrade/downgrade

            Need to test larger sites or need to run a greater amount of tests?

        Change your plan

        View plan and pricing details

{% endif %}

Remove standard upgrade/downgrade options for custom plan users

{% include 'SimplyTestableWebClientBundle:bs3/Partials/User/Account/Plan:summary.html.twig' %}

Allowances

{% include 'SimplyTestableWebClientBundle:bs3/Partials/User/Account/Plan:allowances.html.twig' %}

{% if (user_summary.getTeamSummary.isInTeam and team.leader == user.username) or not user_summary.getTeamSummary.isInTeam %}

Upgrade/downgrade

        {% if user_summary.plan.accountPlan.isCustom %}

                You're on a custom plan. Contact us
                if you need to modify your plan.

        {% else %}

                Need to test larger sites or need to run a greater amount of tests?

            Change your plan

            View plan and pricing details
        {% endif %}

{% endif %}


{% macro list(products) %}

{% import 'SyliusWebBundle:Backend/Macros:alerts.html.twig' as alerts %}

{% for product in products %}
{% include 'SyliusWebBundle:Frontend/Product:_single.html.twig' %}
{% if not loop.last %}
{% endif %}
{% else %}
{{ alerts.info('sylius.product.no_results'|trans) }}
{% endfor %}

{% endmacro %}

{% macro grid(products, size = 3) %}

{% import 'SyliusWebBundle:Backend/Macros:alerts.html.twig' as alerts %}

    {% for product in products %}

            {% include 'SyliusWebBundle:Frontend/Product:_singleBox.html.twig' %}

        {% if 0 == loop.index % size %}

        {% endif %}
    {% else %}
        {{ alerts.info('sylius.product.no_results'|trans) }}
    {% endfor %}

{% endmacro %}

Fix HTML when no product


<?php

namespace {{ namespace }}\Controller;

{% block use_statements %}
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
{% if 'annotation' == format -%}
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
{% endif %}
{% endblock use_statements %}

{% block class_definition %}
class DefaultController extends Controller
{% endblock class_definition %}
{
{% block class_body %}
    {% if 'annotation' == format -%}
    /**
     * @Route("/", "home")
     * @Template()
     */
    {% endif -%}
    public function indexAction()
    {
        $request = $this->container->get('request');
        $bundleName = $request->attributes->get('_template')->get('bundle');

        {% if 'annotation' != format -%}
        return $this->render('{{ bundle }}:Default:index.html.twig', array('bundleName' => $bundleName));
        {%- else -%}
        return array('bundleName' => $bundleName);
        {%- endif %}

    }
{% endblock class_body %}
}

Fix wrong annotation at DefaultController skeleton

<?php

namespace {{ namespace }}\Controller;

{% block use_statements %}
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
{% if 'annotation' == format -%}
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;
{% endif %}
{% endblock use_statements %}

{% block class_definition %}
class DefaultController extends Controller
{% endblock class_definition %}
{
{% block class_body %}
    {% if 'annotation' == format -%}
    /**
     * @Route("/", name="home")
     * @Template()
     */
    {% endif -%}
    public function indexAction()
    {
        $request = $this->container->get('request');
        $bundleName = $request->attributes->get('_template')->get('bundle');

        {% if 'annotation' != format -%}
        return $this->render('{{ bundle }}:Default:index.html.twig', array('bundleName' => $bundleName));
        {%- else -%}
        return array('bundleName' => $bundleName);
        {%- endif %}

    }
{% endblock class_body %}
}


{
    "$schema": "http://json-schema.org/draft-04/hyper-schema#",
    "title": "{{ title }}",
    "type": "object",
    "properties": {
        "id": {
            "allOf": [
                { "$ref": "#/definitions/id" },
                { "readOnly": true }
            ]
        }
    },
    "required": ["id"],
    "definitions": {
        "id": {
            "type": "string",
            "links": [{ "rel": "full", "href": "/{{ type }}/{$}" }]
        }
    }
    "links": [
        { "rel": "instances", "href": "/{{ type }}/" },
        { "rel": "delete", "href": "/{{ type }}/{id}" },
        { "rel": "edit", "href": "/{{ type }}/{id}" }
    ]
}

Fix typo in crud template

{{ title }}


{% extends "template.html.twig" %}
{% block active %}friends{% endblock %}

{% block content %}

Friends

                    Name
                    Facebook

                {% for member in current_cohort.members %}

                        {{ member.name }}

                            {% if member.facebook and member.id != me.id and not me.facebook_friends_with(member) %}

                                    Add Friend

                            {% endif %}

                {% endfor %}

{% endblock %}

Add checkmark to friends page

{% extends "template.html.twig" %}
{% block active %}friends{% endblock %}

{% block content %}

Friends

                    Name
                    Facebook

                {% for member in current_cohort.members %}

                        {{ member.name }}

                            {% if member.facebook and member.id != me.id %}
                                {% if me.facebook_friends_with(member) %}
                                    ✓
                                {% else %}

                                    Add Friend

                                {% endif %}
                            {% endif %}

                {% endfor %}

{% endblock %}


        {% for entity in pagination %}

                    {% if entity.getImage %}

                    {% endif %}

{{ entity.title }}

                    {{ entity.abstract }}

        {% endfor %}

            {{ knp_pagination_render(pagination) }}

Tags

        hola

Fix for posts list on admin


{% extends 'KunstmaanAdminBundle:Default:layout.html.twig' %}

{% block content %}

    {% for key, value in fields %}

                {{ key }}

                {% if value.timezone is defined %}
                    {{ value|date() }}
                {% elseif value.id is defined %}
                    OBJECT
                {% else %}
                    {{ value }}
                {% endif %}

    {% endfor %}

{% endblock %}

Use getStringValue for adminlist view template

{% extends 'KunstmaanAdminBundle:Default:layout.html.twig' %}

{% block content %}

    {% for key, value in fields %}

                {{ key }}

                {{ adminlistconfigurator.getStringValue(entity, key) }}

    {% endfor %}

{% endblock %}


{% set channel_is_defined = (logs|first).channel is defined %}

            Level
            {% if channel_is_defined %}Channel	{% endif %}
            Message

    {% for log in logs %}

= 400 ? 'error' : log.priority >= 300 ? 'warning' : 'normal' }}">

                {{ log.priorityName }}
                {{ log.timestamp|date('H:i:s') }}

            {% if channel_is_defined %}

                    {{ log.channel }}

            {% endif %}
            {{ log.message|format_log_message(log.context) }}

    {% endfor %}

Make deprecations scream in logs

{% set channel_is_defined = (logs|first).channel is defined %}

            Level
            {% if channel_is_defined %}Channel	{% endif %}
            Message

    {% for log in logs %}
        {% if log.priority >= 400 %}
            {% set status = 'error' %}
        {% elseif log.priority >= 300 %}
            {% set status = 'warning' %}
        {% else %}
            {% set severity = log.context.exception.severity|default(false) %}
            {% set status = severity is constant('E_DEPRECATED') or severity is constant('E_USER_DEPRECATED') ? 'warning' : 'normal' %}
        {% endif %}

                {{ log.priorityName }}
                {{ log.timestamp|date('H:i:s') }}

            {% if channel_is_defined %}

                    {{ log.channel }}

            {% endif %}
            {{ log.message|format_log_message(log.context) }}

    {% endfor %}


{##
 # @version     0.1.0 28-Mar-16
 # @copyright   Copyright (c) 2016 by Andy Liebke. All rights reserved. (http://andysmiles4games.com)
 #}

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

{% block inner_body %}

Setup

            In case you have copied this system just on your server, you have to prepare the database
            to get ready to use this system. Just click on the install button and afterwards you
            can start writing your new blog entries.

            Back
            Install

{% endblock %}


{% for trait in traits %}
    {% set traitWithIcon = ['Plant Habit', 'Flower Color'] %}

                        {% if trait.name in traitWithIcon %}

                        {% else %}

                        {% endif %}

{{ trait.frequency }}

{{ trait.name }}

                    View Details

{% endfor %}

Fix wrong keys in template

{% for trait in traits %}
    {% set traitWithIcon = ['Plant Habit', 'Flower Color'] %}

                        {% if trait.type in traitWithIcon %}

                        {% else %}

                        {% endif %}

{{ trait.frequency }}

{{ trait.type }}

                    View Details

{% endfor %}


<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
    <channel>
        <title>Latest commits in {{ repo }}:{{ branch }}</title>
        <description>RSS provided by GitList</description>
        <link>{{ url('homepage') }}</link>

        {% for commit in commits %}
        <item>
            <title>{{ commit.message }}</title>
            <description>{{ commit.author.name }} authored {{ commit.shortHash }} in {{ commit.date | format_date }}</description>
            <link>{{ url('commit', {repo: repo, commit: commit.hash}) }}</link>
            <pubDate>{{ commit.date | date('r') }}</pubDate>
        </item>
        {% endfor %}
    </channel>
</rss>

Improve RSS Feed by adding author tag

<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
    <channel>
        <title>Latest commits in {{ repo }}:{{ branch }}</title>
        <description>RSS provided by GitList</description>
        <link>{{ url('homepage') }}</link>

        {% for commit in commits %}
        <item>
            <title>{{ commit.message }}</title>
            <description>{{ commit.author.name }} authored {{ commit.shortHash }} in {{ commit.date | format_date }}</description>
            <link>{{ url('commit', {repo: repo, commit: commit.hash}) }}</link>
            <pubDate>{{ commit.date | date('r') }}</pubDate>
            <author>{{ commit.author.email }} ({{ commit.author.name }})</author>
        </item>
        {% endfor %}
    </channel>
</rss>


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

{% block content %}

{{ header.title }}

    {% if page.parent.name == 'podcast-series.md' %}

An episode in the series {{page.parent.title}}

    {% endif %}

Posted {{ header.date|date('Y-m-d')|nicetime(false) }}

    {{ page.content }}
    {% if page.header.podcast.audio.meta %}

            <audio controls="1" alt="episode.title"><source src="{{page.header.podcast.audio.meta.guid}}">Your browser does not support the audio tag.</audio>

Download Audio

    {% endif %}

{% endblock %}

Fix for incorrect pathing of podcast-episode

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

{% block content %}

{{ header.title }}

    {% if page.parent.name == 'podcast-series.md' %}

An episode in the series {{page.parent.title}}

    {% endif %}

Posted {{ header.date|date('Y-m-d')|nicetime(false) }}

    {{ page.content }}
    {% if page.header.podcast.audio.meta %}

            {% set media_url = base_url ~ "/" ~ page.header.podcast.audio.meta.guid %}
            <audio controls="1" alt="episode.title"><source src="{{media_url}}">Your browser does not support the audio tag.</audio>

Download Audio

    {% endif %}

{% endblock %}


{#

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%}
    {{ value | number_format_currency(field_description.options.currency) }}
{% endblock %}

Fix list currency template if value is null

{#

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 value is not null %}
        {{ value | number_format_currency(field_description.options.currency) }}
    {% endif %}
{% endblock %}


---
title: PSR Evolution
markdown_source: fig-standards/bylaws/008-psr-evolution.md
use: [bylaws]
---

{{ parent() }}


{% set modalContent %}

{{ 'profile.my_connections.delete_connection.explanation'|trans }}

{{ 'profile.my_connections.delete_connection.warning'|trans }}

{% endset %}

{% set buttonText %}
    {{ 'profile.my_services.delete_button'|trans }}*
{% endset %}

{% set buttonRowContent %}

        {{ 'general.confirm'|trans }}

{% endset %}

{% include '@OpenConextProfile/helpers/modal.html.twig' with {
    buttonText: buttonText,
    linkIdPrefix: 'delete_service_',
    buttonClass: 'modalWindowButton buttonedTitle__button ',
    buttonDescription: 'service__deleteDescription' ~ loop.index,
    modalContent: modalContent,
    describedBy: 'description-part-1-' ~ loop.index ~ ' description-part-2-' ~ loop.index,
    modalHeader: 'profile.my_connections.delete_connection.title'|trans,
    buttonRowContent: buttonRowContent,
} %}

Set the entityId in the delete consent button href


{% extends getConfiguration('store.template') ~ '::Layout/_static.html.twig' %}

{% block title %}{{ page.title }}{% endblock title %}

{% block meta_tags %}
    <meta name="description" content="{{ page.metadescription }}">
    <meta name="keywords" content="{{ page.metakeywords }}">
{% endblock meta_tags %}

{% block content %}{{ page.content|raw }}{% endblock content %}

Rename `getConfiguration` to `elcodi_config` in twig

{% extends elcodi_config('store.template') ~ '::Layout/_static.html.twig' %}

{% block title %}{{ page.title }}{% endblock title %}

{% block meta_tags %}
    <meta name="description" content="{{ page.metadescription }}">
    <meta name="keywords" content="{{ page.metakeywords }}">
{% endblock meta_tags %}

{% block content %}{{ page.content|raw }}{% endblock content %}


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

{% block page_title %}{{ 'ss.registration.verify_email.title'|trans }}{% endblock %}

{% block page_header %}
    {{ parent() }}

    {% include 'SurfnetStepupSelfServiceSelfServiceBundle::Registration/partial/progressBar.html.twig' with {'progress': 75} only %}
{% endblock %}

{% block content %}

{{ block('page_title') }}

{{ 'ss.registration.verify_email.text.verification_failed'|trans }}

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

Remove remnant of old e-mail verification form.

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

{% block page_title %}{{ 'ss.registration.verify_email.title'|trans }}{% endblock %}

{% block page_header %}
    {{ parent() }}

    {% include 'SurfnetStepupSelfServiceSelfServiceBundle::Registration/partial/progressBar.html.twig' with {'progress': 75} only %}
{% endblock %}

{% block content %}

{{ block('page_title') }}

{{ 'ss.registration.verify_email.text.verification_failed'|trans }}

{% endblock %}


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

{% block body_id 'homepage' %}

{#
    the homepage is a special page which displays neither a header nor a footer.
    this is done with the 'trick' of defining empty Twig blocks without any content
#}
{% block header %}{% endblock %}
{% block footer %}{% endblock %}

{% block body %}

Welcome to the Symfony Demo On Roids application

                    {{ 'help.browse_app'|trans|raw }}

                         {{ 'action.browse_app'|trans }}

                    {{ 'help.browse_admin'|trans|raw }}

                         {{ 'action.browse_admin'|trans }}

{% endblock %}

Add GitHub icon +  to this repository


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

 {% block header %}
     {{ render(controller('AimeosShopBundle:Basket:miniHeader')) }}
     {{ render(controller('AimeosShopBundle:Catalog:stageHeader')) }}
     {{ render(controller('AimeosShopBundle:Catalog:detailHeader')) }}
     {{ render(controller('AimeosShopBundle:Catalog:sessionHeader')) }}
 {% endblock %}

 {% block head %}
     {{ render(controller('AimeosShopBundle:Basket:miniBody')) }}
 {% endblock %}

 {% block stage %}
     {{ render(controller('AimeosShopBundle:Catalog:stageBody')) }}
 {% endblock %}

 {% block body %}
     {{ render(controller('AimeosShopBundle:Catalog:detailBody')) }}
 {% endblock %}

 {% block aside %}
     {{ render(controller('AimeosShopBundle:Catalog:sessionBody')) }}
 {% endblock %}

Use Javascript files in catalog detail view directly

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

 {% block javascripts %}
    {{ parent() }}
    {% javascripts 'bundles/aimeosshop/classic/js/arcavias-image.js' %}
        <script type="text/javascript" src="{{ asset_url }}"></script>
    {% endjavascripts %}
    {% javascripts 'bundles/aimeosshop/classic/js/arcavias-detail.js' %}
        <script type="text/javascript" src="{{ asset_url }}"></script>
    {% endjavascripts %}
 {% endblock %}

 {% block header %}
     {{ render(controller('AimeosShopBundle:Basket:miniHeader')) }}
     {{ render(controller('AimeosShopBundle:Catalog:stageHeader')) }}
     {{ render(controller('AimeosShopBundle:Catalog:detailHeader')) }}
     {{ render(controller('AimeosShopBundle:Catalog:sessionHeader')) }}
 {% endblock %}

 {% block head %}
     {{ render(controller('AimeosShopBundle:Basket:miniBody')) }}
 {% endblock %}

 {% block stage %}
     {{ render(controller('AimeosShopBundle:Catalog:stageBody')) }}
 {% endblock %}

 {% block body %}
     {{ render(controller('AimeosShopBundle:Catalog:detailBody')) }}
 {% endblock %}

 {% block aside %}
     {{ render(controller('AimeosShopBundle:Catalog:sessionBody')) }}
 {% endblock %}


        Why Your Giving Matters

Make section title text dynamic


<?xml version="1.0" encoding="UTF-8"?>
<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" entityID="{{ metadata.entityId }}">
{% if metadata.hasIdPMetadata %}
    <md:IDPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
        <md:KeyDescriptor xmlns:ds="http://www.w3.org/2000/09/xmldsig#" use="signing">
            <ds:KeyInfo>
                <ds:X509Data>
                    <ds:X509Certificate>{{ metadata.idpCertificate }}</ds:X509Certificate>
                </ds:X509Data>
            </ds:KeyInfo>
        </md:KeyDescriptor>
        <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"
                                Location="{{ metadata.ssoUrl }}"/>
    </md:IDPSSODescriptor>
{% endif %}
{% if metadata.hasSpMetadata %}
    <md:SPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
        <md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
                                     Location="{{ metadata.assertionConsumerUrl }}"
                                     index="0"/>
    </md:SPSSODescriptor>
{% endif %}
</md:EntityDescriptor>

Add WantAuthnRequestsSigned="true" to the IDPSSODescriptor in the Metadata

<?xml version="1.0" encoding="UTF-8"?>
<md:EntityDescriptor xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata" entityID="{{ metadata.entityId }}">
{% if metadata.hasIdPMetadata %}
    <md:IDPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol" WantAuthnRequestsSigned="true">
        <md:KeyDescriptor xmlns:ds="http://www.w3.org/2000/09/xmldsig#" use="signing">
            <ds:KeyInfo>
                <ds:X509Data>
                    <ds:X509Certificate>{{ metadata.idpCertificate }}</ds:X509Certificate>
                </ds:X509Data>
            </ds:KeyInfo>
        </md:KeyDescriptor>
        <md:SingleSignOnService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-Redirect"
                                Location="{{ metadata.ssoUrl }}"/>
    </md:IDPSSODescriptor>
{% endif %}
{% if metadata.hasSpMetadata %}
    <md:SPSSODescriptor protocolSupportEnumeration="urn:oasis:names:tc:SAML:2.0:protocol">
        <md:AssertionConsumerService Binding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"
                                     Location="{{ metadata.assertionConsumerUrl }}"
                                     index="0"/>
    </md:SPSSODescriptor>
{% endif %}
</md:EntityDescriptor>


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

{% block body %}

                {% if error %}

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

                {% endif %}

                <form action="{{ path('login') }}" method="post">

                        Email Address:
                        <input class="form-control" type="text" id="username" name="_username" value="{{ last_username }}" />

                        Password:
                        <input class="form-control" type="password" id="password" name="_password" />

                    <input type="hidden" name="_csrf_token" value="{{ csrf_token('authenticate') }}" />
                    {% if redirect is not empty %}
                        <input type="hidden" name="_target_path" value="{{ redirect }}"/>
                    {% endif %}

                    <button class="pull-right btn btn-primary" type="submit">Login</button>
                </form>

{% endblock %}

Change label on login page 'email' to 'username'

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

{% block body %}

                {% if error %}

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

                {% endif %}

                <form action="{{ path('login') }}" method="post">

                        Username:
                        <input class="form-control" type="text" id="username" name="_username" value="{{ last_username }}" />

                        Password:
                        <input class="form-control" type="password" id="password" name="_password" />

                    <input type="hidden" name="_csrf_token" value="{{ csrf_token('authenticate') }}" />
                    {% if redirect is not empty %}
                        <input type="hidden" name="_target_path" value="{{ redirect }}"/>
                    {% endif %}

                    <button class="pull-right btn btn-primary" type="submit">Login</button>
                </form>

{% endblock %}


{% set images = (images is defined) ? images : block.images %}

    {% set images = sulu_resolve_medias(images, request.locale) %}
    {% for image in images %}

    {% endfor %}

Add alt attribute on image


                {{ __('contenttypes.generic.show-more', {'%contenttypes%': contenttype}) }} »

{{ __('contenttypes.generic.recently-edited', {'%contenttypes%': contenttype}) }}

        {% for content in multiplecontent %}
            {% set listing_vars = {
                'compact':       true,
                'content':       content,
                'excerptlength': 280,
                'permissions':   context.permissions[contenttype],
                'thumbsize':     54,
            } %}
            {{ include(['@bolt/custom/listing/' ~ content.contenttype.slug ~ '.twig', '@bolt/_sub/_listing.twig'],  listing_vars) }}
        {% endfor %}

Use that translation data for dashboard listings

                {{ __('contenttypes.generic.show-more', {'%contenttypes%': contenttype}) }} »

{{ __('contenttypes.generic.recently-edited', {'%contenttypes%': contenttype}) }}

{{ include('@bolt/_sub/_record_list_data.twig') }}

        {% for content in multiplecontent %}
            {% set listing_vars = {
                'compact':       true,
                'content':       content,
                'excerptlength': 280,
                'permissions':   context.permissions[contenttype],
                'thumbsize':     54,
            } %}
            {{ include(['@bolt/custom/listing/' ~ content.contenttype.slug ~ '.twig', '@bolt/_sub/_listing.twig'],  listing_vars) }}
        {% endfor %}


                {% if events.pagination.prev_page is defined %}

                         Previous

                {% else %}

                         Previous

                {% endif %}

Page {{ page }}

                {% if events.pagination.next_page is defined and events.pagination.count >= 10 %}

                        Next

                {% else %}

                        Next

                {% endif %}

Fix pager UI when there is no next page


{% extends "forms/field.html.twig" %}

{% block input %}
    <div class="form-display-wrapper {{ field.size }}">
        {% if field.markdown %}
            {{ field.content|markdown }}
        {% else %}
            {{ field.content }}
        {% endif %}
    </div>
{% endblock %}


{% block ewz_recaptcha_widget %}
{% apply spaceless %}
  {% if form.vars.ewz_recaptcha_enabled %}
    <script src="{{ form.vars.ewz_recaptcha_api_uri }}?render={{ form.vars.public_key }}"></script>

    {% if form.vars.ewz_recaptcha_hide_badge %}
      <link rel="stylesheet" href="{{ asset('/bundles/ewz_recaptcha/css/recaptcha.css') }}">
    {% endif %}

    <script{% if form.vars.script_nonce_csp is defined and form.vars.script_nonce_csp is not same as('') %} nonce="{{ form.vars.script_nonce_csp }}"{% endif %}>
      grecaptcha.ready(function () {
        grecaptcha.execute('{{ form.vars.public_key }}', { action: '{{ form.vars.action_name|default(constant('EWZ\\Bundle\\RecaptchaBundle\\Form\\Type\\EWZRecaptchaV3Type::DEFAULT_ACTION_NAME')) }}' }).then(function (token) {
          var recaptchaResponse = document.getElementById('{{ id }}');
          recaptchaResponse.value = token;
        });
      });
    </script>

    {{ form_label(form) }}
    {{ form_widget(form) }}
  {% endif %}
{% endapply %}
{% endblock %}

Fix the bundle name when including recaptcha.css

{% block ewz_recaptcha_widget %}
{% apply spaceless %}
  {% if form.vars.ewz_recaptcha_enabled %}
    <script src="{{ form.vars.ewz_recaptcha_api_uri }}?render={{ form.vars.public_key }}"></script>

    {% if form.vars.ewz_recaptcha_hide_badge %}
      <link rel="stylesheet" href="{{ asset('/bundles/ewzrecaptcha/css/recaptcha.css') }}">
    {% endif %}

    <script{% if form.vars.script_nonce_csp is defined and form.vars.script_nonce_csp is not same as('') %} nonce="{{ form.vars.script_nonce_csp }}"{% endif %}>
      grecaptcha.ready(function () {
        grecaptcha.execute('{{ form.vars.public_key }}', { action: '{{ form.vars.action_name|default(constant('EWZ\\Bundle\\RecaptchaBundle\\Form\\Type\\EWZRecaptchaV3Type::DEFAULT_ACTION_NAME')) }}' }).then(function (token) {
          var recaptchaResponse = document.getElementById('{{ id }}');
          recaptchaResponse.value = token;
        });
      });
    </script>

    {{ form_label(form) }}
    {{ form_widget(form) }}
  {% endif %}
{% endapply %}
{% endblock %}


{% import "@SyliusShop/Common/Macro/money.html.twig" as money %}

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

        {% include '@SyliusShop/Product/_mainImage.html.twig' with {'product': product} %}

        {{ product.name }}
        {% if not product.variants.empty() %}

{{ money.calculatePrice(product|sylius_resolve_variant) }}

        {% endif %}

Add event before / after product box on product listing

{% import "@SyliusShop/Common/Macro/money.html.twig" as money %}

{{ sonata_block_render_event('sylius.shop.product.index.before_box', {'product': product}) }}

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

        {% include '@SyliusShop/Product/_mainImage.html.twig' with {'product': product} %}

        {{ product.name }}
        {% if not product.variants.empty() %}

{{ money.calculatePrice(product|sylius_resolve_variant) }}

        {% endif %}

{{ sonata_block_render_event('sylius.shop.product.index.after_box', {'product': product}) }}


{{ 'blog'|trans }}

{{ 'stay_connected'|trans }}

{{ 'contact'|trans }}

{% if user_is_logged %}

{{ 'your_account'|trans }}

{% else %}

{{ 'connexion'|trans }}

{% endif %}

Refactor (Navbar): activate account link


{% if item.linksWithItems is not empty %}

Related items:

        {% for linkWithItems in item.linksWithItems %}

                {% for item in linkWithItems.items %}
                    {{ item.title }}
                    {% if not loop.last %},{% endif %}
                {% endfor %}
                (connected by: {{ linkWithItems.title }})

        {% endfor %}

{% endif %}

{% if item.linkedItems is not empty %}

Linked items:

        {% for item in link.linkedItems %}

                {{ item.title }}

        {% endfor %}

{% endif %}

Add text if item has no relations

{% if item.linksWithItems is not empty %}

Related items:

        {% for linkWithItems in item.linksWithItems %}

                {% for item in linkWithItems.items %}
                    {{ item.title }}
                    {% if not loop.last %},{% endif %}
                {% endfor %}
                (connected by: {{ linkWithItems.title }})

        {% endfor %}

{% elseif item.linkedItems is not empty %}

Linked items:

        {% for item in link.linkedItems %}

                {{ item.title }}

        {% endfor %}

{% else %}

This item has no relations.

{% endif %}


Create skeleton template for search action.

/**
{% block phpdoc_method_header %}
     * Displays a form to edit an existing {{ entity }} entity.
{% endblock phpdoc_method_header %}
     *
{% block phpdoc_method_annotations %}
{% if 'annotation' == format %}
     * @Route("/{id}/edit", name="{{ route_name_prefix }}_edit")
     * @Method("GET")
     * @Template()
{% endif %}
{% endblock phpdoc_method_annotations %}
     */
{% block method_definition %}
    public function editAction($id)
{% endblock method_definition %}
    {
{% block method_body %}
        $em = $this->getDoctrine()->getManager();

        ${{ entity|lower }} = $em->getRepository('{{ bundle }}:{{ entity }}')->find($id);

        if (!${{ entity|lower }}) {
            throw $this->createNotFoundException('Unable to find {{ entity }} entity.');
        }

        $editForm = $this->createEditForm(${{ entity|lower }});
{% endblock method_body %}

{% block method_return %}
{% if 'annotation' == format %}
        return array(
            '{{ entity|lower }}'      => ${{ entity|lower }},
            'edit_form'   => $editForm->createView(),
        );
{% else %}
        return $this->render('{{ bundle }}:{{ entity|replace({'\\': '/'}) }}:edit.html.twig', array(
            '{{ entity|lower }}'      => ${{ entity|lower }},
            'edit_form'   => $editForm->createView(),
        ));
{% endif %}
{% endblock method_return %}
    }

{% block form %}
    /**
    * Creates a form to edit a {{ entity }} entity.
    *
    * @param {{ entity_class }} ${{ entity|lower }} The entity
    *
    * @return \Symfony\Component\Form\Form The form
    */
    private function createEditForm({{ entity_class }} ${{ entity|lower }})
    {
        $form = $this->createForm(new {{ entity_class }}Type(), ${{ entity|lower }}, array(
            'action' => $this->generateUrl('{{ route_name_prefix }}_update', array('id' => ${{ entity|lower }}->getId())),
            'method' => 'PUT',
        ));

        $form->add('submit', 'submit', array('label' => 'Update'));

        return $form;
    }
{% endblock form %}


{% extends 'partials/shoppingcart_base.html.twig' %}

{% block javascripts %}
    {{ parent() }}
    {% do assets.addJs('plugin://shoppingcart/js/shoppingcart_checkout.js') %}
    {% do assets.addJs('plugin://shoppingcart/js/shoppingcart_checkout_events.js') %}
{% endblock %}

{% block content %}
    {% include 'partials/shoppingcart_cart.html.twig' %}

{{ 'PLUGIN_SHOPPINGCART.CHECKOUT_PAGE_TITLE'|t }}

        {% set form = config.plugins.shoppingcart.checkout_form %}
        <form name="{{ form.name }}"
              action="{{ form.action ? base_url ~ form.action : page.url }}"
              method="{{ method }}"{{ multipart }}>

        {% for field in form.fields %}
            {% set value = form.value(field.name) %}

                {% include "forms/fields/#{field.type}/#{field.type}.html.twig" %}

        {% endfor %}

          {% for button in form.buttons %}
              <button class="{{ button.classes|default('button') }}" type="{{ button.type|default('submit') }}">{{ button.value|t|default('Submit') }}</button>
          {% endfor %}

          {{ nonce_field('form', 'form-nonce') }}
        </form>

{% endblock %}

Remove Stripe.js hardcoding from checkout


{% if app.config.get('general/branding/provided_link') is not empty %}

        {{ __('general.phrase.provided-by-colon') }}
        {{ app.config.get('general/branding/provided_link')|raw }} –
         Bolt {{ context.bolt_version }}:
         {{ __('general.about') }} –
         Bolt.cm

{% else %}

         Bolt {{ context.bolt_version|replace({'alpha': 'α', ' beta ': 'β'}) }} –
         {{ __('general.about') }}

{% endif %}

Use constant() for Bolt version

{% if app.config.get('general/branding/provided_link') is not empty %}

        {{ __('general.phrase.provided-by-colon') }}
        {{ app.config.get('general/branding/provided_link')|raw }} –
         Bolt {{ constant('Bolt\\Version::VERSION') }}:
         {{ __('general.about') }} –
         Bolt.cm

{% else %}

         Bolt {{ constant('Bolt\\Version::VERSION')|replace({'alpha': 'α', ' beta ': 'β'}) }} –
         {{ __('general.about') }}

{% endif %}


Convert to Twig: SP's /admin/blogs/index

{% extends 'admin/layouts/default_sp.twig' %}
{% block title %}{{ _('List of blogs') }}{% endblock %}

{% block content %}

{{ _('List of blogs') }}

{{ _('Create a new blog') }}

{{ _('Blog ID') }}

        {% for blog in blogs %}

                {{ blog.id }}

        {% endfor %}

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

{% endblock %}


<link href="{{ prefix }}/jquery-ui/themes/{{ theme }}/jquery-ui.min.css" rel="stylesheet" type="text/css">
<link href="{{ prefix }}/elfinder/css/elfinder.min.css" rel="stylesheet" type="text/css">
<link href="{{ prefix }}/elfinder/css/theme.css" rel="stylesheet" type="text/css">

Fix css path for elfinder-component 2.0

<link href="{{ prefix }}/jquery-ui/themes/{{ theme }}/jquery-ui.min.css" rel="stylesheet" type="text/css">
<link href="{{ prefix }}/elfinder/dist/css/elfinder.min.css" rel="stylesheet" type="text/css">
<link href="{{ prefix }}/elfinder/dist/css/theme.css" rel="stylesheet" type="text/css">


{{ service.serviceName|lower }}:
    class: {{ service.className }}
{% if service.arguments|length > 0 %}
    arguments:
{% for argument in service.arguments %}
      - "{{ argument }}"
{% endfor %}
{% endif %}
{% if service.tags|length > 0 %}
    tags:
{% for tag in service.tags %}
      - {  {%- for key, value in tag -%}{{ key }}: {{ value }}{% if not loop.last %}, {% endif %}{% endfor %} }
{% endfor %}
{% endif %}

Add space to configuration output

{{ service.serviceName|lower }}:
    class: {{ service.className }}
{% if service.arguments|length > 0 %}
    arguments:
{% for argument in service.arguments %}
      - "{{ argument }}"
{% endfor %}
{% endif %}
{% if service.tags|length > 0 %}
    tags:
{% for tag in service.tags %}
      - { {% for key, value in tag -%}{{ key }}: {{ value }}{% if not loop.last %}, {% endif %}{% endfor %} }
{% endfor %}
{% endif %}


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

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

{{ 'candidacy.step2.h1_title'|trans }}

	Sube en formato PDF  las condiciones que regulan la candidatura ciudadana:
		(Estas condiciones deberán ser aceptadas por cada uno de los candidatos o candidatas)

	El programa de la candidatura        ejemplo

	Condiciones legales y veracidad de la información aportada de  candidatos y candidatas      ejemplo

	El mandato revocatorio del candidato        ejemplo

	El mandato participativo del candidato       ejemplo

	Las condiciones para poder participar como votante (censo y aceptación del sistema de votación)

	Las limitaciones técnicas y legales del sistema de voto.         ejemplo

{% endblock %}

Load file type in step 2 template

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

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

{{ 'candidacy.step2.h1_title'|trans }}

	Sube en formato PDF  las condiciones que regulan la candidatura ciudadana:
	(Estas condiciones deberán ser aceptadas por cada uno de los candidatos o candidatas)

		{{ form_label(form.program, 'candidacy.step2.program'|trans) }}
		{{ form_errors(form.program) }}
		{{ form_widget(form.program) }}
		ejemplo

		Condiciones legales y veracidad de la información aportada de  candidatos y candidatas      ejemplo

El mandato revocatorio del candidato        ejemplo

El mandato participativo del candidato       ejemplo

Las condiciones para poder participar como votante (censo y aceptación del sistema de votación)

Las limitaciones técnicas y legales del sistema de voto.         ejemplo

{% endblock %}


        <title>Mimoto.Aimless examples</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <link rel="stylesheet" type="text/css" href="/static/css/main.css">
        <link rel="stylesheet" type="text/css" href="/static/css/mimoto.cms.css">

{% block content %}{% endblock %}

Fix to show new css

        <title>Mimoto.Aimless examples</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <link rel="stylesheet" type="text/css" href="/static/css/main.css">
        <link rel="stylesheet" type="text/css" href="/static/css/mimoto.cms.css">
        <link rel="stylesheet" type="text/css" href="/static/css/mimoto.cms.min.css">

{% block content %}{% endblock %}


{% extends "pick-a/base.twig" %}

{% block right %}

        Select one of the form types at left.

        {%  if errors is not empty %}

            {% for error in errors %} {{ error }} {% endfor %}

        {% endif %}

    {% for label, manifestItem in manifest %}
        {% if not manifestItem is null %}

                {{ manifestItem|write|stripForm|raw }}

        {% endif %}
    {% endfor %}
{% endblock right %}

{% block left %}
    {% for label, manifestItem in manifest %}
        {% if manifestItem is null %}

{{ label }}

        {% else %}

                    <input type="radio" name="{{ hash }}" value="{{ label|slugify }}" {% if manifestItem is same as(selectedForm) %}checked{% endif %}>

{{ label }}

        {% endif %}
    {% endfor %}

{% endblock left %}

Refactor pick a form template to new id.

{% extends "pick-a/base.twig" %}

{% block right %}

        Select one of the form types at left.

        {%  if errors is not empty %}

            {% for error in errors %} {{ error }} {% endfor %}

        {% endif %}

    {% for label, manifestItem in manifest %}
        {% if not manifestItem is null %}

                {{ manifestItem|write|stripForm|raw }}

        {% endif %}
    {% endfor %}
{% endblock right %}

{% block left %}
    {% for label, manifestItem in manifest %}
        {% if manifestItem is null %}

{{ label }}

        {% else %}

                    <input type="radio" name="{{ id }}" value="{{ label|slugify }}" {% if manifestItem is same as(selectedForm) %}checked{% endif %}>

{{ label }}

        {% endif %}
    {% endfor %}

{% endblock left %}


{% extends '/Layout/Templates/base.html.twig' %}

{% block actionbar %}
  {% if showUsersAdd %}

        {{ macro.buttonIcon(geturl('add'), 'plus-square', 'lbl.Add'|trans|ucfirst) }}

  {% endif %}
{% endblock %}

{% block content %}

      {% if dataGrid %}

          {{ dataGrid|raw }}

      {% endif %}

{% endblock %}

Use the dataGrid macro in the Users module's index

{% extends '/Layout/Templates/base.html.twig' %}

{% block actionbar %}
  {% if showUsersAdd %}

        {{ macro.buttonIcon(geturl('add'), 'plus-square', 'lbl.Add'|trans|ucfirst) }}

  {% endif %}
{% endblock %}

{% block content %}
  {{ macro.dataGrid(dataGrid) }}
{% endblock %}


{% trans_default_domain 'admin' %}

{{ form_start(form, {'attr': {'class': 'edit_element copy js-form', 'data-reload-page': 1}}) }}
{{ form_widget(form) }}
<button type="submit"></button>
<span>{{ (translation_prefix ~ 'action.copy.submit')|trans }}</span>
{{ form_end(form) }}

Refactor copy form widget template.

{% trans_default_domain 'admin' %}

{{ form_start(form, {'attr': {'class': 'js-form', 'data-reload-page': 1}}) }}
{{ form_widget(form) }}
<button class="table-row__btn-clone" title="{{ (translation_prefix ~ 'action.copy.submit')|trans|e('html_attr') }}"> </button>
{{ form_end(form) }}


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

{% block body %}

Hosted events

                    Pavadinimas
                    Bendra suma

                {% for hosted_event in hosted_events %}

                        {{ hosted_event.name }}
                        {{ hosted_event.getTotalPrice() }}
                        Žiūrėti

                {% endfor %}

{% endblock %}

Add totalDebt column to user info table.

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

{% block body %}

Hosted events

                    Pavadinimas
                    Bendra suma
                    Bendra skola

                {% for hosted_event in hosted_events %}

                        {{ hosted_event.name }}
                        {{ hosted_event.totalPrice }}
                        {{ hosted_event.totalDebt }}
                        Žiūrėti

                {% endfor %}

{% endblock %}


{% set pagetitle = "Select your identity provider"|trans %}
{% extends "base.twig" %}

{% block content %}

{{ pagetitle }}

{{ "Please select the identity provider where you want to authenticate:" | trans }}

    <form method="get" action="{{ urlpattern }}">
        <input type="hidden" name="entityID" value="{{ entityID }}">
        <input type="hidden" name="return" value="{{ return }}">
        <input type="hidden" name="returnIDParam" value="{{ returnIDParam }}">
        <select id="dropdownlist" name="idpentityid" autofocus>
        {% for idpentry in idplist %}
            <option value="{{ idpentry.entityid }}"
            {% if idpentry.entityid == preferredidp %}
                 selected
            {% endif %}
            >{{ idpentry.name }}</option>
        {% endfor %}
        </select>
        <button class="btn" type="submit">{{ 'Select' | trans }}</button>
	{% if rememberenabled %}

<input type="checkbox" name="remember" id="remember" value="1">
            {{ 'Remember my choice' | trans }}
        {% endif %}
    </form>
{% endblock %}

Make styling more like rest of new UI

{% set pagetitle = "Select your identity provider"|trans %}
{% extends "base.twig" %}

{% block content %}

{{ pagetitle }}

{{ "Please select the identity provider where you want to authenticate:" | trans }}

    <form method="get" action="{{ urlpattern }}" class="pure-form">
        <input type="hidden" name="entityID" value="{{ entityID }}">
        <input type="hidden" name="return" value="{{ return }}">
        <input type="hidden" name="returnIDParam" value="{{ returnIDParam }}">

        <select id="dropdownlist" name="idpentityid" autofocus>
        {% for idpentry in idplist %}
            <option value="{{ idpentry.entityid }}"
            {% if idpentry.entityid == preferredidp %}
                 selected
            {% endif %}
            >{{ idpentry.name }}</option>
        {% endfor %}
        </select>
        <button class="btn pure-button" type="submit">{{ 'Select' | trans }}</button>

        {% if rememberenabled %}

            <input type="checkbox" name="remember" id="remember" value="1">
            {{ 'Remember my choice' | trans }}

        {% endif %}
    </form>
{% endblock %}


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

{% trans_default_domain 'FDPrivateMessageBundle' %}

{% block fd_private_message_content %}

{% for conversation in conversations %}

        {{ conversation.subject }} {{ conversation.created | date('Y-m-d H:i:s') }}

{% else %}

        You have no conversation yet.

{% endfor %}

{% endblock %}

Add link to start new conversation

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

{% trans_default_domain 'FDPrivateMessageBundle' %}

{% block fd_private_message_content %}
{{ 'conversation.create.new' | trans }}

{% for conversation in conversations %}

        {{ conversation.subject }} {{ conversation.created | date('Y-m-d H:i:s') }}

{% else %}

        You have no conversation yet.

{% endfor %}

{% endblock %}


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

{% block title %}Shuwee admin dashboard{% endblock %}

{% block header_title %}
    {{ 'dashboard' | trans({}, 'ShuweeAdminBundle') }}
{% endblock %}

{% block body %}

        {% for admin in admins %}
            {% if admin.isGranted('LIST') or admin.isGranted('CREATE') %}

                            {{ admin_get_label(admin, true) }}

                            {% if admin.isGranted('LIST') %}
                                {{ 'crud.list' | trans({}, 'ShuweeAdminBundle') }}
                            {% endif %}
                            {% if admin.isGranted('CREATE') %}
                                 {{ 'crud.create' | trans({}, 'ShuweeAdminBundle') }}

                            {% endif %}

            {% endif %}
        {% endfor %}

{% endblock %}

Add list icon on "List" links on dashboard


{%- if messages is defined -%}{% dump(conversation.seconds) %}
    {{ conversation.seconds|date_interval }}
    {%- if is_granted('ROLE_MODEL') %}
        = ${{ conversation.modelEarnings|number_format(2) }}
    {%- endif -%}
{%- endif -%}

Remove dump tag from template

{%- if messages is defined -%}
    {{ conversation.seconds|date_interval }}
    {%- if is_granted('ROLE_MODEL') %}
        = ${{ conversation.modelEarnings|number_format(2) }}
    {%- endif -%}
{%- endif -%}


{% extends 'AcmeDemoBundle::layout.bootstrap.html.twig' %}

{% block title %}Grid Bundle - {{ parent() }}{% endblock %}

Implement AJAX grid using backbons.js - change layout for AcmeDemoGridBundle to use latest theme

{% extends bap.layout is defined ? bap.layout : 'OroUIBundle:Default:index.html.twig' %}

{% block head %}
    {{ parent() }}

    {% block stylesheets %}{% endblock %}

    {% javascripts
        '//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js'
        '@OroUIBundle/Resources/public/lib/less-1.3.1.min.js'
        '@OroUIBundle/Resources/public/lib/bootstrap.min.js'
        '@OroUIBundle/Resources/public/js/layout.js'
        '@AcmeDemoBundle/Resources/public/js/jquery-ui-1.10.0.min.js'
        '@AcmeDemoBundle/Resources/public/js/main.js'
        '@OroUIBundle/Resources/public/lib/underscore.js'
        '@OroUIBundle/Resources/public/lib/backbone.js'
        '@OroUIBundle/Resources/public/js/backbone/app.js'
        '@OroUIBundle/Resources/public/js/backbone/app/model.js'
        '@OroUIBundle/Resources/public/js/backbone/app/view.js'
        '@OroUIBundle/Resources/public/js/backbone/app/router.js'
        '@OroUIBundle/Resources/public/js/backbone/app/collection.js'
        '@OroUIBundle/Resources/public/js/backbone/setup.js'
        output='js/acme.all.js'
        %}
        <script type="text/javascript" src="{{ asset_url }}"></script>
    {% endjavascripts %}

    {% block javascripts %}{% endblock %}
{% endblock %}

{% block title %}Grid Bundle - {{ parent() }}{% endblock %}


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

{% block content %}

        {{ page.content }}

        {{ instagram_feed() }}

{{ page.header.formtitle }}

        {% include "forms/form.html.twig" %}

{#
{% if config.plugins.simple_form.enabled %}
    {% set simple_form_config = page.header.simple_form ?: config.themes.tictactoc.simple_form %}

{{ page.header.simple_form.headline }}

            {{ simple_form(simple_form_config) }}

{% endif %} #}
{% endblock %}

Revert "Revert "nu page contact""

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

{% block content %}

        {{ page.content }}

        {{ instagram_feed() }}

{{ page.header.formtitle }}

        {% include "forms/form.html.twig" %}

{% endblock %}


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

{% block content %}

Welcome to my recipe book

Just have a look around

  {% include 'recipe/list.html.twig' %}
{% endblock %}

Add a recipe button in index

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

{% block content %}

Welcome to my recipe book

Just have a look around

    Add a recipe

  {% include 'recipe/list.html.twig' %}
{% endblock %}


{% import '@bolt/_macro/_buic.twig' as buic %}

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

{% set attributes_fieldset = {
    'class':            'form-group',
    'data-bolt-field':  block('fieldset_type'),
    'data-bolt-fconf':  fieldset_conf|default() is iterable ? fieldset_conf|json_encode : null,
    'id':               buid(),
} %}

{% set attributes_label = {
    class:  'main ' ~ block('fieldset_label_class') ~ (block('fieldset_label_class') == 'col-xs-12' ? '' : ' control-label'),
    for:    block('fieldset_label_for'),
} %}

{% if block('fieldset_label_info') %}
    {% set field_info = buic.info(block('fieldset_label_text'), block('fieldset_label_info')) %}
{% endif %}

{#=== OUTPUT =========================================================================================================#}

<fieldset{{ macro.attr(attributes_fieldset) }}>
    <legend class="sr-only">{% block fieldset_label_text %}{% endblock fieldset_label_text %}</legend>
    <label{{ macro.attr(attributes_label) }}>{{ block('fieldset_label_text') }}: {{ field_info|default('') }}</label>
    {% block fieldset_controls %}{% endblock fieldset_controls %}
</fieldset>

Allow to inject a fieldset uid

{% import '@bolt/_macro/_buic.twig' as buic %}

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

{% set attributes_fieldset = {
    'class':            'form-group',
    'data-bolt-field':  block('fieldset_type'),
    'data-bolt-fconf':  fieldset_conf|default() is iterable ? fieldset_conf|json_encode : null,
    'id':               block('fieldset_uid')|default(buid()),
} %}

{% set attributes_label = {
    class:  'main ' ~ block('fieldset_label_class') ~ (block('fieldset_label_class') == 'col-xs-12' ? '' : ' control-label'),
    for:    block('fieldset_label_for'),
} %}

{% if block('fieldset_label_info') %}
    {% set field_info = buic.info(block('fieldset_label_text'), block('fieldset_label_info')) %}
{% endif %}

{#=== OUTPUT =========================================================================================================#}

<fieldset{{ macro.attr(attributes_fieldset) }}>
    <legend class="sr-only">{% block fieldset_label_text %}{% endblock fieldset_label_text %}</legend>
    <label{{ macro.attr(attributes_label) }}>{{ block('fieldset_label_text') }}: {{ field_info|default('') }}</label>
    {% block fieldset_controls %}{% endblock fieldset_controls %}
</fieldset>


<?php
namespace {{ namespace }}{{ entity_namespace ? '\\' ~ entity_namespace : '' }};

{% block use_statements %}
use JMS\Serializer\Annotation\Type;
use Symfony\Component\Validator\Constraints as Assert;
{% endblock use_statements %}

/**
{% block phpdoc_class_header %}
 * {{ entityName }}
 *
 * This entity has been auto-generated by Cethyworks/SwaggerToolsBundle
 * Shape it to your needs.
 *
 * @ORM\Table()
 * @ORM\Entity
{% endblock phpdoc_class_header %}
 */
{% block class_definition %}
class {{ entityName }}
{% endblock class_definition %}
{
{% block class_body %}
{% include 'doctrine/_attributes.php.twig' %}

{%- for name, property in properties -%}
{% include 'doctrine/_setter.php.twig' %}{{- "\n" -}}
{% include 'doctrine/_getter.php.twig' %}{{- "\n" -}}

{%- endfor %}

{%- endblock class_body -%}{{- '}' -}}
{{- "\n" -}}

Fix use Doctrine in Entity template

<?php
namespace {{ namespace }}{{ entity_namespace ? '\\' ~ entity_namespace : '' }};

{% block use_statements %}
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use JMS\Serializer\Annotation\Type;
{% endblock use_statements %}

/**
{% block phpdoc_class_header %}
 * {{ entityName }}
 *
 * This entity has been auto-generated by Cethyworks/SwaggerToolsBundle
 * Shape it to your needs.
 *
 * @ORM\Table()
 * @ORM\Entity
{% endblock phpdoc_class_header %}
 */
{% block class_definition %}
class {{ entityName }}
{% endblock class_definition %}
{
{% block class_body %}
{% include 'doctrine/_attributes.php.twig' %}

{%- for name, property in properties -%}
{% include 'doctrine/_setter.php.twig' %}{{- "\n" -}}
{% include 'doctrine/_getter.php.twig' %}{{- "\n" -}}

{%- endfor %}

{%- endblock class_body -%}{{- '}' -}}
{{- "\n" -}}