[Form] Optimize rendering when the block to render is known

This commit is contained in:
Victor Berchet 2011-06-20 10:39:56 +02:00
parent 41e07c96e3
commit 8670995574
11 changed files with 28 additions and 20 deletions

View File

@ -83,7 +83,7 @@
{% block date_widget %}
{% spaceless %}
{% if widget == 'single_text' %}
{{ form_widget(form) }}
{{ block('field_widget') }}
{% else %}
<div {{ block('widget_container_attributes') }}>
{{ date_pattern|replace({
@ -107,37 +107,42 @@
{% block number_widget %}
{% spaceless %}
{# type="number" doesn't work with floats #}
{{ form_widget(form, {"type": type|default('text')}) }}
{% set type = type|default('text') %}
{{ block('field_widget') }}
{% endspaceless %}
{% endblock number_widget %}
{% block integer_widget %}
{% spaceless %}
{{ form_widget(form, {"type": type|default('number')}) }}
{% set type = type|default('number') %}
{{ block('field_widget') }}
{% endspaceless %}
{% endblock integer_widget %}
{% block money_widget %}
{% spaceless %}
{{ money_pattern|replace({ '{{ widget }}': form_widget(form) })|raw }}
{{ money_pattern|replace({ '{{ widget }}': block('field_widget') })|raw }}
{% endspaceless %}
{% endblock money_widget %}
{% block url_widget %}
{% spaceless %}
{{ form_widget(form, {"type": type|default('url')}) }}
{% set type = type|default('url') %}
{{ block('field_widget') }}
{% endspaceless %}
{% endblock url_widget %}
{% block search_widget %}
{% spaceless %}
{{ form_widget(form, {"type": type|default('search')}) }}
{% set type = type|default('search') %}
{{ block('field_widget') }}
{% endspaceless %}
{% endblock search_widget %}
{% block percent_widget %}
{% spaceless %}
{{ form_widget(form, {"type": type|default('text')}) }} %
{% set type = type|default('text') %}
{{ block('field_widget') }} %
{% endspaceless %}
{% endblock percent_widget %}
@ -150,17 +155,20 @@
{% block password_widget %}
{% spaceless %}
{{ form_widget(form, {"type": type|default('password')}) }}
{% set type = type|default('password') %}
{{ block('field_widget') }}
{% endspaceless %}
{% endblock password_widget %}
{% block hidden_widget %}
{{ form_widget(form, {"type": type|default('hidden')}) }}
{% set type = type|default('hidden') %}
{{ block('field_widget') }}
{% endblock hidden_widget %}
{% block email_widget %}
{% spaceless %}
{{ form_widget(form, {"type": type|default('email')}) }}
{% set type = type|default('email') %}
{{ block('field_widget') }}
{% endspaceless %}
{% endblock email_widget %}

View File

@ -1,5 +1,5 @@
<?php if ($widget == 'single_text'): ?>
<?php echo $view['form']->widget($form); ?>
<?php echo $view['form']->renderBlock('field_widget'); ?>
<?php else: ?>
<div <?php echo $view['form']->renderBlock('container_attributes') ?>>
<?php echo str_replace(array('{{ year }}', '{{ month }}', '{{ day }}'), array(

View File

@ -1 +1 @@
<?php echo $view['form']->widget($form, array('type' => isset($type) ? $type : 'email')) ?>
<?php echo $view['form']->renderBlock('field_widget', array('type' => isset($type) ? $type : 'email')) ?>

View File

@ -1 +1 @@
<?php echo $view['form']->widget($form, array('type' => isset($type) ? $type : "hidden")) ?>
<?php echo $view['form']->renderBlock('field_widget', array('type' => isset($type) ? $type : "hidden")) ?>

View File

@ -1 +1 @@
<?php echo $view['form']->widget($form, array('type' => isset($type) ? $type : "number")) ?>
<?php echo $view['form']->renderBlock('field_widget', array('type' => isset($type) ? $type : "number")) ?>

View File

@ -1 +1 @@
<?php echo str_replace('{{ widget }}', $view['form']->widget($form), $money_pattern) ?>
<?php echo str_replace('{{ widget }}', $view['form']->renderBlock('field_widget'), $money_pattern) ?>

View File

@ -1 +1 @@
<?php echo $view['form']->widget($form, array('type' => isset($type) ? $type : "text")) ?>
<?php echo $view['form']->renderBlock('field_widget', array('type' => isset($type) ? $type : "text")) ?>

View File

@ -1 +1 @@
<?php echo $view['form']->widget($form, array('type' => isset($type) ? $type : "password")) ?>
<?php echo $view['form']->renderBlock('field_widget', array('type' => isset($type) ? $type : "password")) ?>

View File

@ -1 +1 @@
<?php echo $view['form']->widget($form, array('type' => isset($type) ? $type : "text")) ?> %
<?php echo $view['form']->renderBlock('field_widget', array('type' => isset($type) ? $type : "text")) ?> %

View File

@ -1 +1 @@
<?php echo $view['form']->widget($form, array('type' => isset($type) ? $type : "search")) ?>
<?php echo $view['form']->renderBlock('field_widget', array('type' => isset($type) ? $type : "search")) ?>

View File

@ -1 +1 @@
<?php echo $view['form']->widget($form, array('type' => isset($type) ? $type : "url")) ?>
<?php echo $view['form']->renderBlock('field_widget', array('type' => isset($type) ? $type : "url")) ?>