Source for file block.form.php
Documentation is available at block.form.php
* smarty block:フォームタグ出力プラグイン
// 配列指定のフォームヘルパ用カウンタをリセットする
$view->resetFormCounter();
$tag_stack =
$smarty->_tag_stack;
if (isset
($params['default']) ===
false) {
// 1テンプレートに複数 {form} を指定する場合は、
$af =
$c->getActionForm();
// c.f. http://smarty.net/manual/en/plugins.block.functions.php
$tag_stack[count($tag_stack)-
1][1]['default'] =
$af->getArray(false);
$smarty->_tag_stack =
$tag_stack;
// 複数 {form} が置かれた場合に、それぞれを識別する役割を果たす
if (isset
($params['name']) ===
false) {
// c.f. http://smarty.php.net/manual/en/plugins.block.functions.php
$tag_stack[count($tag_stack)-
1][1]['name'] =
'default';
$smarty->_tag_stack =
$tag_stack;
if (isset
($params['ethna_action'])) {
$ethna_action =
$params['ethna_action'];
$view->addActionFormHelper($ethna_action, true);
// {form ethna_action=... }
if (isset
($params['ethna_action'])) {
$ethna_action =
$params['ethna_action'];
unset
($params['ethna_action']);
$view->addActionFormHelper($ethna_action);
$hidden =
$c->getActionRequest($ethna_action, 'hidden');
$content =
$hidden .
$content;
// 指定された場合は、submitされた {form}を識別する
// $params['name'] は formタグのnameタグになるため
if ($name !=
'default') {
$name_hidden =
sprintf('<input type="hidden" name="ethna_fid" value="%s" />',
$content =
$name_hidden .
$content;
if (isset
($params['enctype'])) {
if ($params['enctype'] ==
'file'
||
$params['enctype'] ==
'multipart') {
$params['enctype'] =
'multipart/form-data';
} else if ($params['enctype'] ==
'url') {
$params['enctype'] =
'application/x-www-form-urlencoded';
if (isset
($params['default'])) {
unset
($params['default']);
// $contentを囲む<form>ブロック全体を出力
return $view->getFormBlock($content, $params);
Documentation generated on Fri, 11 Nov 2011 03:57:42 +0900 by phpDocumentor 1.4.3