mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-12-27 17:18:54 +01:00
fix: title in checkbox_multiselect was (only) set for the checkbox, not the whole label
This commit is contained in:
parent
26066d742c
commit
82af1db4bd
@ -199,7 +199,7 @@ class html
|
|||||||
* @param array $arr array with items to select, eg. $arr = array ( 'y' => 'yes','n' => 'no','m' => 'maybe');
|
* @param array $arr array with items to select, eg. $arr = array ( 'y' => 'yes','n' => 'no','m' => 'maybe');
|
||||||
* @param boolean $no_lang NOT run the labels of the options through lang(), default false=use lang()
|
* @param boolean $no_lang NOT run the labels of the options through lang(), default false=use lang()
|
||||||
* @param string $options additional options (e.g. 'width')
|
* @param string $options additional options (e.g. 'width')
|
||||||
* @param int $multiple number of lines for a multiselect, default 0 = no multiselect
|
* @param int $multiple number of lines for a multiselect, default 0 = no multiselect, < 0 sets size without multiple
|
||||||
* @return string to set for a template or to echo into html page
|
* @return string to set for a template or to echo into html page
|
||||||
*/
|
*/
|
||||||
function select($name, $key, $arr=0,$no_lang=false,$options='',$multiple=0)
|
function select($name, $key, $arr=0,$no_lang=false,$options='',$multiple=0)
|
||||||
@ -216,12 +216,16 @@ class html
|
|||||||
$name .= '[]';
|
$name .= '[]';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
elseif($multiple < 0)
|
||||||
|
{
|
||||||
|
$options .= ' size="'.abs($multiple).'"';
|
||||||
|
}
|
||||||
$out = "<select name=\"$name\" $options>\n";
|
$out = "<select name=\"$name\" $options>\n";
|
||||||
|
|
||||||
if (!is_array($key))
|
if (!is_array($key))
|
||||||
{
|
{
|
||||||
// explode on ',' only if multiple values expected and the key contains just numbers and commas
|
// explode on ',' only if multiple values expected and the key contains just numbers and commas
|
||||||
$key = $multiple && preg_match('/^[,0-9]+$/',$key) ? explode(',',$key) : array($key);
|
$key = $multiple > 0 && preg_match('/^[,0-9]+$/',$key) ? explode(',',$key) : array($key);
|
||||||
}
|
}
|
||||||
foreach($arr as $k => $data)
|
foreach($arr as $k => $data)
|
||||||
{
|
{
|
||||||
@ -319,8 +323,8 @@ class html
|
|||||||
if (strlen($label) > $max_len) $max_len = strlen($label);
|
if (strlen($label) > $max_len) $max_len = strlen($label);
|
||||||
|
|
||||||
$html .= $this->label($this->checkbox($name,in_array($val,$key),$val,$options_no_id.
|
$html .= $this->label($this->checkbox($name,in_array($val,$key),$val,$options_no_id.
|
||||||
' id="'.$base_name.'['.$val.']'.'" '.($title ? 'title="'.$this->htmlspecialchars($title).'" ':'')).
|
' id="'.$base_name.'['.$val.']'.'"').$this->htmlspecialchars($label),
|
||||||
$this->htmlspecialchars($label),$base_name.'['.$val.']')."<br />\n";
|
$base_name.'['.$val.']','',($title ? 'title="'.$this->htmlspecialchars($title).'" ':''))."<br />\n";
|
||||||
}
|
}
|
||||||
if ($style && substr($style,-1) != ';') $style .= '; ';
|
if ($style && substr($style,-1) != ';') $style .= '; ';
|
||||||
if (!strstr($style,'height')) $style .= 'height: '.(1.7*$multiple).'em; ';
|
if (!strstr($style,'height')) $style .= 'height: '.(1.7*$multiple).'em; ';
|
||||||
|
Loading…
Reference in New Issue
Block a user