mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-12-26 16:48:49 +01:00
* InfoLog: status filter in index shows now cumulated list of all status translations, if no type is selected (as context menu does too)
This commit is contained in:
parent
cda03331e2
commit
ed5c5593c3
@ -24,6 +24,9 @@
|
|||||||
.inputFullWidth input {
|
.inputFullWidth input {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
.selectboxFullWidth select {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* mark input as required
|
* mark input as required
|
||||||
|
@ -1640,6 +1640,42 @@ class infolog_bo
|
|||||||
return $status;
|
return $status;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get status of a single or all types
|
||||||
|
*
|
||||||
|
* As status value can have different translations depending on type, we list all translations
|
||||||
|
*
|
||||||
|
* @param string $type=null
|
||||||
|
* @param array &$icons=null on return name of icons
|
||||||
|
* @return array value => (commaseparated) translations
|
||||||
|
*/
|
||||||
|
function get_status($type=null, array &$icons=null)
|
||||||
|
{
|
||||||
|
// if filtered by type, show only the stati of the filtered type
|
||||||
|
if ($type && isset($this->status[$type]))
|
||||||
|
{
|
||||||
|
$statis = $icons = $this->status[$type];
|
||||||
|
}
|
||||||
|
else // show all stati
|
||||||
|
{
|
||||||
|
$statis = $icons = array();
|
||||||
|
foreach($this->status as $t => $stati)
|
||||||
|
{
|
||||||
|
if ($t === 'defaults') continue;
|
||||||
|
foreach($stati as $val => $label)
|
||||||
|
{
|
||||||
|
$statis[$val][$label] = lang($label);
|
||||||
|
if (!isset($icons[$val])) $icons[$val] = $label;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
foreach($statis as $val => &$labels)
|
||||||
|
{
|
||||||
|
$labels = implode(', ', $labels);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $statis;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Activates an InfoLog entry (setting it's status from template or inactive depending on the completed percentage)
|
* Activates an InfoLog entry (setting it's status from template or inactive depending on the completed percentage)
|
||||||
*
|
*
|
||||||
|
@ -451,18 +451,8 @@ class infolog_ui
|
|||||||
//echo "rows=<pre>".print_r($rows,True)."</pre>\n";
|
//echo "rows=<pre>".print_r($rows,True)."</pre>\n";
|
||||||
|
|
||||||
// if filtered by type, show only the stati of the filtered type
|
// if filtered by type, show only the stati of the filtered type
|
||||||
if ($query['col_filter']['info_type'] && isset($this->bo->status[$query['col_filter']['info_type']]))
|
$rows['sel_options']['info_status'] = $this->bo->get_status($query['col_filter']['info_type']);
|
||||||
{
|
|
||||||
$rows['sel_options']['info_status'] = $this->bo->status[$query['col_filter']['info_type']];
|
|
||||||
}
|
|
||||||
else // show all stati
|
|
||||||
{
|
|
||||||
$rows['sel_options']['info_status'] = array();
|
|
||||||
foreach($this->bo->status as $typ => $stati)
|
|
||||||
{
|
|
||||||
if ($typ != 'defaults' && !empty($stati)) $rows['sel_options']['info_status'] += $stati;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if ($this->bo->history)
|
if ($this->bo->history)
|
||||||
{
|
{
|
||||||
$rows['sel_options']['info_status']['deleted'] = 'deleted';
|
$rows['sel_options']['info_status']['deleted'] = 'deleted';
|
||||||
@ -960,28 +950,7 @@ else
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// if filtered by type, show only the stati of the filtered type
|
$statis = $this->bo->get_status($query['col_filter']['info_type'], $icons);
|
||||||
if ($query['col_filter']['info_type'] && isset($this->bo->status[$query['col_filter']['info_type']]))
|
|
||||||
{
|
|
||||||
$statis = $icons = $this->bo->status[$query['col_filter']['info_type']];
|
|
||||||
}
|
|
||||||
else // show all stati
|
|
||||||
{
|
|
||||||
$statis = $icons = array();
|
|
||||||
foreach($this->bo->status as $type => $stati)
|
|
||||||
{
|
|
||||||
if ($type == 'defaults') continue;
|
|
||||||
foreach($stati as $val => $label)
|
|
||||||
{
|
|
||||||
$statis[$val][$label] = lang($label);
|
|
||||||
if (!isset($icons[$val])) $icons[$val] = $label;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
foreach($statis as $val => &$labels)
|
|
||||||
{
|
|
||||||
$labels = implode(', ', $labels);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
foreach($statis as $type => &$data)
|
foreach($statis as $type => &$data)
|
||||||
{
|
{
|
||||||
$data = array(
|
$data = array(
|
||||||
|
File diff suppressed because one or more lines are too long
@ -31,7 +31,7 @@
|
|||||||
<row class="th">
|
<row class="th">
|
||||||
<vbox options="0,0">
|
<vbox options="0,0">
|
||||||
<nextmatch-filterheader id="info_type" no_lang="1" options="Type"/>
|
<nextmatch-filterheader id="info_type" no_lang="1" options="Type"/>
|
||||||
<nextmatch-filterheader align="center" id="info_status" options="Status"/>
|
<nextmatch-filterheader align="center" id="info_status" options="Status" class="selectboxFullWidth"/>
|
||||||
<nextmatch-sortheader align="right" label="Completed" id="info_percent"/>
|
<nextmatch-sortheader align="right" label="Completed" id="info_percent"/>
|
||||||
</vbox>
|
</vbox>
|
||||||
<grid width="100%" spacing="0" padding="0">
|
<grid width="100%" spacing="0" padding="0">
|
||||||
|
Loading…
Reference in New Issue
Block a user