mirror of
https://github.com/EGroupware/egroupware.git
synced 2024-12-23 15:18:58 +01:00
Get row category colors working
This commit is contained in:
parent
30e86a8195
commit
92dbd693d7
@ -299,12 +299,9 @@ class etemplate_widget_menupopup extends etemplate_widget
|
|||||||
'label' => $s,
|
'label' => $s,
|
||||||
'title' => empty($cat['description']) ? $s : $cat['description'],
|
'title' => empty($cat['description']) ? $s : $cat['description'],
|
||||||
);
|
);
|
||||||
// For multi-select, send data too
|
// Send data too
|
||||||
if($rows > 1)
|
|
||||||
{
|
|
||||||
$options[$cat['id']] += $cat['data'];
|
$options[$cat['id']] += $cat['data'];
|
||||||
}
|
}
|
||||||
}
|
|
||||||
// preserv unavailible cats (eg. private user-cats)
|
// preserv unavailible cats (eg. private user-cats)
|
||||||
/* TODO
|
/* TODO
|
||||||
if ($value && ($unavailible = array_diff(is_array($value) ? $value : explode(',',$value),array_keys((array)$options))))
|
if ($value && ($unavailible = array_diff(is_array($value) ? $value : explode(',',$value),array_keys((array)$options))))
|
||||||
|
@ -428,7 +428,49 @@ var et2_nextmatch_rowProvider = Class.extend({
|
|||||||
// TODO: Implement other fields than "class"
|
// TODO: Implement other fields than "class"
|
||||||
if (_data["class"])
|
if (_data["class"])
|
||||||
{
|
{
|
||||||
_tr.setAttribute("class", _mgrs["content"].expandName(_data["class"]));
|
var classes = _mgrs["content"].expandName(_data["class"]);
|
||||||
|
|
||||||
|
// Get fancy with categories
|
||||||
|
var cats = [];
|
||||||
|
if(_data["class"].indexOf("cat") !== false)
|
||||||
|
{
|
||||||
|
cats = classes.match(/(cat_)?([0-9]+)/);
|
||||||
|
var invalid = typeof cats[1] == 'undefined';
|
||||||
|
if(invalid) egw().debug("warn", "Invalid class '%s', prefixed with 'cat_'",cats[0]);
|
||||||
|
cats = [cats[2]];
|
||||||
|
|
||||||
|
field = _data["class"].match(/\[(.*?cat.*?)\]/);
|
||||||
|
|
||||||
|
// Get category info
|
||||||
|
if(!this.categories)
|
||||||
|
{
|
||||||
|
if(field.length > 1)
|
||||||
|
{
|
||||||
|
var categories = _mgrs["sel_options"].getEntry(field[1]);
|
||||||
|
if(!categories) categories = _mgrs["sel_options"].getEntry('${row}'+field[0]);
|
||||||
|
}
|
||||||
|
// Cache
|
||||||
|
if(categories) this.categories = categories;
|
||||||
|
}
|
||||||
|
for(var i = 0; i < cats.length; i++)
|
||||||
|
{
|
||||||
|
// Need cat_, classes can't start with a number
|
||||||
|
var cat_class = 'cat_'+cats[i];
|
||||||
|
|
||||||
|
// Check for existing class
|
||||||
|
|
||||||
|
|
||||||
|
// Create class
|
||||||
|
if(this.categories[cats[i]] && this.categories[cats[i]].color)
|
||||||
|
{
|
||||||
|
var cat = this.categories[cats[i]];
|
||||||
|
egw().css('.'+cat_class, "background-color: " + cat.color + ";");
|
||||||
|
}
|
||||||
|
classes = classes.replace(cats[i], cat_class);
|
||||||
|
}
|
||||||
|
classes += " row_category";
|
||||||
|
}
|
||||||
|
_tr.setAttribute("class", classes);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user