function views_gantt_plugin_style_gantt::views_gantt_get_field_value in Views Gantt 7.2
Same name and namespace in other branches
- 7 views_gantt_plugin_style_gantt.inc \views_gantt_plugin_style_gantt::views_gantt_get_field_value()
Returns value of specific field.
Parameters
object $row: Node object from view result array
string $field_options_name: Option key from views_gantt_plugin_style_gantt::option_definition()
Return value
string Field value from node object
2 calls to views_gantt_plugin_style_gantt::views_gantt_get_field_value()
File
- ./
views_gantt_plugin_style_gantt.inc, line 374 - Contains the list style plugin.
Class
- views_gantt_plugin_style_gantt
- Style plugin to render Gantt charts.
Code
function views_gantt_get_field_value($row, $field_options_name) {
$field_name = '';
$field_value = '';
if (isset($this->options[$field_options_name])) {
$field_name = $this->options[$field_options_name];
}
// If field value is array, we try to get it's raw value,
// if it's not possible, we get rendered value.
if ($field_name && isset($this->option_fields[$field_name]) && !empty($this->option_fields[$field_name])) {
$field_value = $row->{$this->option_fields[$field_name]};
if (is_array($field_value)) {
if ($field_options_name == 'end_date_field' && isset($field_value[0]['raw']['value2'])) {
$field_value = $field_value[0]['raw']['value2'];
}
elseif (isset($field_value[0]['raw']['value'])) {
$field_value = $field_value[0]['raw']['value'];
}
elseif (isset($field_value[0]['rendered']['#markup'])) {
$field_value = $field_value[0]['rendered']['#markup'];
}
}
// If field should provide date, we need to return it's
// value in specific date format (Y-m-d).
$date_fields = array(
'date_field',
'end_date_field',
'project_date_field',
);
if (!is_array($field_value) && in_array($field_options_name, $date_fields)) {
views_gantt_normalize_date_field($field_value);
}
}
return is_array($field_value) && empty($field_value) ? '' : $field_value;
}