protected function applyAutoFilters()
{
if (isset($this->autofilter_conf) && is_array($this->autofilter_conf)) {
foreach ($this->autofilter_conf as $key => $val) {
// get universal filter key
if ($key == '*') {
// get filters for this key
$uni_filters = explode(',', $this->autofilter_conf[$key]);
array_walk($uni_filters, 'trim');
// apply uni filters
foreach ($uni_filters as $this_filter) {
foreach ($this->source as $key => $val2) {
$this->source[$key] = $this->{$this_filter}($key);
}
}
} elseif ($val == $this->keyExists($key)) {
// get filters for this key
$filters = explode(',', $this->autofilter_conf[$key]);
array_walk($filters, 'trim');
// apply filters
foreach ($filters as $this_filter) {
$this->setValue($key, $this->{$this_filter}($key));
}
}
}
}
}