Add 'input-size' attribute to control the size of an input.

1.10.x
Julio Montoya 11 years ago
parent cb6393aef5
commit ec75dcc17d
  1. 63
      main/gradebook/lib/fe/scoredisplayform.class.php
  2. 23
      main/inc/lib/formvalidator/FormValidator.class.php
  3. 2
      main/inc/lib/pear/HTML/QuickForm/input.php
  4. 84
      main/inc/lib/pear/HTML/QuickForm/text.php

@ -50,7 +50,7 @@ class ScoreDisplayForm extends FormValidator
$this->addElement('text', 'scorecolpercent', array(get_lang('Below'), get_lang('WillColorRed'), '%'), array(
'size' => 5,
'maxlength' => 5,
'class'=>'span1',
'input-size' => 2
));
if (api_get_setting('teachers_can_change_score_settings') != 'true') {
@ -67,47 +67,72 @@ class ScoreDisplayForm extends FormValidator
if ($displayscore->is_custom()) {
$this->addElement('html', '<br /><b>' . get_lang('ScoringSystem') . '</b>');
$this->addElement('static', null, null, get_lang('ScoreInfo'));
$scorenull[]= & $this->createElement('static', null, null, get_lang('Between'));
$this->setDefaults(array (
$this->setDefaults(array(
'beginscore' => '0'
));
$scorenull[]= & $this->createElement('text', 'beginscore', null, array (
$this->addElement('text', 'beginscore', array(get_lang('Between'), null, '%'), array(
'size' => 5,
'maxlength' => 5,
'disabled' => 'disabled'
'disabled' => 'disabled',
'input-size' => 2
));
$scorenull[]= & $this->createElement('static', null, null, ' %');
$this->addGroup($scorenull, '', '', ' ');
for ($counter= 1; $counter <= 20; $counter++) {
$renderer =& $this->defaultRenderer();
$elementTemplateTwoLabel =
'<div id=' . $counter . ' style="display: '.(($counter<=$nr_items)?'inline':'none').';" class="control-group">
<p><!-- BEGIN required --><span class="form_required">*</span> <!-- END required -->
'<div id=' . $counter . ' style="display: '.(($counter<=$nr_items)?'inline':'none').';">
<!-- BEGIN required --><span class="form_required">*</span> <!-- END required -->
<label class="control-label">{label}</label>
<div class="controls"><!-- BEGIN error --><span class="form_error">{error}</span><br /><!-- END error --> <br/>&nbsp<b>'.get_lang('And').'</b>&nbsp&nbsp&nbsp&nbsp&nbsp{element}&nbsp%&nbsp&nbsp=';
<div class="form-group">
<label class="col-sm-2 control-label">
</label>
<div class="col-sm-1">
<!-- BEGIN error --><span class="form_error">{error}</span><br />
<!-- END error -->&nbsp<b>'.get_lang('And').'</b>
</div>
<div class="col-sm-2">
{element}
</div>
$elementTemplateTwoLabel2 =
'<!-- BEGIN error --><span class="form_error">{error}</span><br /><!-- END error -->&nbsp{element}
<div class="col-sm-1">
=
</div>
';
$elementTemplateTwoLabel2 ='
<div class="col-sm-2">
<!-- BEGIN error --><span class="form_error">{error}</span>
<!-- END error -->
{element}
</div>
<div class="col-sm-1">
<a href="javascript:plusItem(' . ($counter+1) . ')"><img style="display: '.(($counter>=$nr_items)?'inline':'none').';" id="plus-' . ($counter+1) . '" src="../img/icons/22/add.png" alt="'.get_lang('Add').'" title="'.get_lang('Add').'"></img></a>
<a href="javascript:minItem(' . ($counter) . ')"><img style="display: '.(($counter>=$nr_items && $counter!=1)?'inline':'none').';" id="min-' . $counter . '" src="../img/delete.png" alt="'.get_lang('Delete').'" title="'.get_lang('Delete').'"></img></a>
</div></p></div>';
</div>
</div>
</div>';
$scorebetw= array ();
$scorebetw = array();
$this->addElement('text', 'endscore[' . $counter . ']', null, array (
'size' => 5,
'maxlength' => 5,
'id' => 'txta-'.$counter,
'class' => 'span1',
'input-size' => 2
));
$this->addElement('text', 'displaytext[' . $counter . ']', null,array (
'size' => 40,
'maxlength' => 40,
'id' => 'txtb-'.$counter,
'class' => 'span',
'id' => 'txtb-'.$counter
));
$renderer->setElementTemplate($elementTemplateTwoLabel,'endscore[' . $counter . ']');
$renderer->setElementTemplate($elementTemplateTwoLabel2,'displaytext[' . $counter . ']');
$renderer->setElementTemplate($elementTemplateTwoLabel, 'endscore[' . $counter . ']');
$renderer->setElementTemplate($elementTemplateTwoLabel2, 'displaytext[' . $counter . ']');
$this->addRule('endscore[' . $counter . ']', get_lang('OnlyNumbers'), 'numeric');
$this->addRule(array ('endscore[' . $counter . ']', 'maxvalue'), get_lang('Over100'), 'compare', '<=');
$this->addRule(array ('endscore[' . $counter . ']', 'minvalue'), get_lang('UnderMin'), 'compare', '>');

@ -108,7 +108,7 @@ class FormValidator extends HTML_QuickForm
$renderer->setHeaderTemplate('<legend>{header}</legend>');
//Set required field template
HTML_QuickForm::setRequiredNote('<span class="form_required">*</span> <small>' . get_lang('ThisFieldIsRequired') . '</small>');
$this->setRequiredNote('<span class="form_required">*</span> <small>' . get_lang('ThisFieldIsRequired') . '</small>');
$noteTemplate = <<<EOT
<div class="form-group">
<div class="col-sm-2"></div>
@ -143,13 +143,9 @@ EOT;
<!-- BEGIN required --><span class="form_required">*</span><!-- END required -->
{label}
</label>
<div class="col-sm-10">
<div class="col-sm-8">
{element}
<!-- BEGIN label_3 -->
{label_3}
<!-- END label_3 -->
<!-- BEGIN label_2 -->
<p class="help-block">{label_2}</p>
<!-- END label_2 -->
@ -158,6 +154,11 @@ EOT;
<span class="help-inline">{error}</span>
<!-- END error -->
</div>
<div class="col-sm-2">
<!-- BEGIN label_3 -->
{label_3}
<!-- END label_3 -->
</div>
</div>';
}
@ -863,6 +864,16 @@ EOT;
return $result;
}
/**
* @return null
*/
public static function getDefaultRenderer()
{
return
isset($GLOBALS['_HTML_QuickForm_default_renderer']) ?
$GLOBALS['_HTML_QuickForm_default_renderer'] : null;
}
}
/**

@ -141,7 +141,7 @@ class HTML_QuickForm_input extends HTML_QuickForm_element
* @access public
* @return string
*/
function toHtml()
public function toHtml()
{
if ($this->_flagFrozen) {
return $this->getFrozenHtml();

@ -34,6 +34,8 @@
*/
class HTML_QuickForm_text extends HTML_QuickForm_input
{
private $inputSize;
/**
* Class constructor
*
@ -53,11 +55,69 @@ class HTML_QuickForm_text extends HTML_QuickForm_input
if (is_array($attributes) || empty($attributes)) {
$attributes['class'] = 'form-control';
}
$inputSize = isset($attributes['input-size']) ? $attributes['input-size'] : null;
$this->setInputSize($inputSize);
if (!empty($inputSize)) {
unset($attributes['input-size']);
}
HTML_QuickForm_input::HTML_QuickForm_input($elementName, $elementLabel, $attributes);
parent::__construct($elementName, $elementLabel, $attributes);
$this->_persistantFreeze = true;
$this->setType('text');
$renderer = FormValidator::getDefaultRenderer();
$renderer->setElementTemplate($this->getTemplate(), $elementName);
}
/**
* @return string
*/
public function getTemplate()
{
$size = $this->getInputSize();
$size = empty($size) ? '8' : $size;
return '
<div class="form-group {error_class}">
<label {label-for} class="col-sm-2 control-label" >
<!-- BEGIN required --><span class="form_required">*</span><!-- END required -->
{label}
</label>
<div class="col-sm-'.$size.'">
{element}
<!-- BEGIN label_2 -->
<p class="help-block">{label_2}</p>
<!-- END label_2 -->
<!-- BEGIN error -->
<span class="help-inline">{error}</span>
<!-- END error -->
</div>
<div class="col-sm-2">
<!-- BEGIN label_3 -->
{label_3}
<!-- END label_3 -->
</div>
</div>';
}
/**
* @return null
*/
public function getInputSize()
{
return $this->inputSize;
}
/**
* @param null $inputSize
*/
public function setInputSize($inputSize)
{
$this->inputSize = $inputSize;
}
/**
@ -68,9 +128,9 @@ class HTML_QuickForm_text extends HTML_QuickForm_input
* @access public
* @return void
*/
function setSize($size)
public function setSize($size)
{
$this->updateAttributes(array('size'=>$size));
$this->updateAttributes(array('size' => $size));
}
/**
@ -81,8 +141,20 @@ class HTML_QuickForm_text extends HTML_QuickForm_input
* @access public
* @return void
*/
function setMaxlength($maxlength)
public function setMaxlength($maxlength)
{
$this->updateAttributes(array('maxlength'=>$maxlength));
} //end func setMaxlength
$this->updateAttributes(array('maxlength' => $maxlength));
}
/**
* @return string
*/
public function toHtml()
{
if ($this->_flagFrozen) {
return $this->getFrozenHtml();
} else {
return '<input' . $this->_getAttrString($this->_attributes) . ' />';
}
}
}

Loading…
Cancel
Save