function views_plugin_style::render_fields

Same name in other branches
  1. 6.x-3.x plugins/views_plugin_style.inc \views_plugin_style::render_fields()

Render all of the fields for a given style and store them on the object.

Parameters

array $result: The result array from $view->result.

2 calls to views_plugin_style::render_fields()
views_plugin_style::get_field in plugins/views_plugin_style.inc
Get a rendered field.
views_plugin_style::render_grouping in plugins/views_plugin_style.inc
Group records as needed for rendering.

File

plugins/views_plugin_style.inc, line 545

Class

views_plugin_style
Base class to define a style plugin handler.

Code

public function render_fields($result) {
    if (!$this->uses_fields()) {
        return;
    }
    if (!isset($this->rendered_fields)) {
        $this->rendered_fields = array();
        $this->view->row_index = 0;
        $keys = array_keys($this->view->field);
        // If all fields have a field::access FALSE there might be no fields, so
        // there is no reason to execute this code.
        if (!empty($keys)) {
            foreach ($result as $count => $row) {
                $this->view->row_index = $count;
                foreach ($keys as $id) {
                    $this->rendered_fields[$count][$id] = $this->view->field[$id]
                        ->theme($row);
                }
                $this->row_tokens[$count] = $this->view->field[$id]
                    ->get_render_tokens(array());
            }
        }
        unset($this->view->row_index);
    }
    return $this->rendered_fields;
}