This repository has been archived on 2024-12-01. You can view files and clone it, but cannot push or open issues or pull requests.
factuges_web/www/protected/extensions/bootstrap/widgets/input/TbInputVertical.php

171 lines
4.5 KiB
PHP
Raw Normal View History

<?php
/**
* TbInputVertical class file.
* @author Christoffer Niska <ChristofferNiska@gmail.com>
* @copyright Copyright &copy; Christoffer Niska 2011-
* @license http://www.opensource.org/licenses/bsd-license.php New BSD License
* @package bootstrap.widgets.input
*/
Yii::import('bootstrap.widgets.input.BootInput');
/**
* Bootstrap vertical form input widget.
* @since 0.9.8
*/
class TbInputVertical extends TbInput
{
/**
* Renders a checkbox.
* @return string the rendered content
*/
protected function checkBox()
{
$attribute = $this->attribute;
echo '<label class="checkbox" for="'.$this->getAttributeId($attribute).'">';
echo $this->form->checkBox($this->model, $this->attribute, $this->htmlOptions).PHP_EOL;
echo $this->model->getAttributeLabel($attribute);
echo $this->getError().$this->getHint();
echo '</label>';
}
/**
* Renders a list of checkboxes.
* @return string the rendered content
*/
protected function checkBoxList()
{
echo $this->getLabel();
echo $this->form->checkBoxList($this->model, $this->attribute, $this->data, $this->htmlOptions);
echo $this->getError().$this->getHint();
}
/**
* Renders a list of inline checkboxes.
* @return string the rendered content
*/
protected function checkBoxListInline()
{
$this->htmlOptions['inline'] = true;
$this->checkBoxList();
}
/**
* Renders a drop down list (select).
* @return string the rendered content
*/
protected function dropDownList()
{
echo $this->getLabel();
echo $this->form->dropDownList($this->model, $this->attribute, $this->data, $this->htmlOptions);
echo $this->getError().$this->getHint();
}
/**
* Renders a file field.
* @return string the rendered content
*/
protected function fileField()
{
echo $this->getLabel();
echo $this->form->fileField($this->model, $this->attribute, $this->htmlOptions);
echo $this->getError().$this->getHint();
}
/**
* Renders a password field.
* @return string the rendered content
*/
protected function passwordField()
{
echo $this->getLabel();
echo $this->getPrepend();
echo $this->form->passwordField($this->model, $this->attribute, $this->htmlOptions);
echo $this->getAppend();
echo $this->getError().$this->getHint();
}
/**
* Renders a radio button.
* @return string the rendered content
*/
protected function radioButton()
{
$attribute = $this->attribute;
echo '<label class="radio" for="'.$this->getAttributeId($attribute).'">';
echo $this->form->radioButton($this->model, $this->attribute, $this->htmlOptions).PHP_EOL;
echo $this->model->getAttributeLabel($attribute);
echo $this->getError().$this->getHint();
echo '</label>';
}
/**
* Renders a list of radio buttons.
* @return string the rendered content
*/
protected function radioButtonList()
{
echo $this->getLabel();
echo $this->form->radioButtonList($this->model, $this->attribute, $this->data, $this->htmlOptions);
echo $this->getError().$this->getHint();
}
/**
* Renders a list of inline radio buttons.
* @return string the rendered content
*/
protected function radioButtonListInline()
{
$this->htmlOptions['inline'] = true;
$this->radioButtonList();
}
/**
* Renders a textarea.
* @return string the rendered content
*/
protected function textArea()
{
echo $this->getLabel();
echo $this->form->textArea($this->model, $this->attribute, $this->htmlOptions);
echo $this->getError().$this->getHint();
}
/**
* Renders a text field.
* @return string the rendered content
*/
protected function textField()
{
echo $this->getLabel();
echo $this->getPrepend();
echo $this->form->textField($this->model, $this->attribute, $this->htmlOptions);
echo $this->getAppend();
echo $this->getError().$this->getHint();
}
/**
* Renders a CAPTCHA.
* @return string the rendered content
*/
protected function captcha()
{
echo $this->getLabel().'<div class="captcha">';
echo '<div class="widget">'.$this->widget('CCaptcha', $this->captchaOptions, true).'</div>';
echo $this->form->textField($this->model, $this->attribute, $this->htmlOptions);
echo $this->getError().$this->getHint();
echo '</div>';
}
/**
* Renders an uneditable field.
* @return string the rendered content
*/
protected function uneditableField()
{
echo $this->getLabel();
echo CHtml::tag('span', $this->htmlOptions, $this->model->{$this->attribute});
echo $this->getError().$this->getHint();
}
}