function views_view_field_handler_include_view::render in Views PDF 7.3
Same name and namespace in other branches
- 8 modules/views_view_field/views_view_field_handler_include_view.inc \views_view_field_handler_include_view::render()
- 6 modules/views_view_field/views_view_field_handler_include_view.inc \views_view_field_handler_include_view::render()
- 7 modules/views_view_field/views_view_field_handler_include_view.inc \views_view_field_handler_include_view::render()
- 7.2 modules/views_view_field/views_view_field_handler_include_view.inc \views_view_field_handler_include_view::render()
Renders the field. For rendering the new views is created an added. For PDF displays the two PDF classes where merged.
Overrides views_handler_field::render
File
- modules/
views_view_field/ views_view_field_handler_include_view.inc, line 128 - Plugin for the views include field
Class
- views_view_field_handler_include_view
- This class contains the functionality to add a view as a new field in another view.
Code
function render($values) {
if (!empty($this->options['exclude'])) {
return '';
}
$displayType = $this->view->display_handler
->get_style_type();
$currentDisplay = $this->view->current_display;
$tokens = $this
->get_render_tokens('');
$args = array();
foreach ($this->options['args'] as $arg) {
$args[] = str_replace(array_keys($tokens), $tokens, $arg);
}
$view_name = $this->options['view'];
$view = views_get_view($view_name);
// look for a display named pdf_X.
$pdf_display = NULL;
foreach ($view->display as $display) {
if (preg_match('/^pdf_/', $display->id)) {
// found a PDF display so break out of loop.
$pdf_display = $display->id;
break;
}
}
// Set the found PDF display or automatically revert to default if it's
// not found.
$view
->set_display($pdf_display);
$view
->pre_execute($args);
$view
->init_style();
// Important only for pdf views. With this action we assign the
// PDF document to the new view
if (isset($this->view->pdf) && is_object($this->view->pdf)) {
$view->pdf =& $this->view->pdf;
$output = $view
->render($view->display_handler->display->id);
}
else {
$output = $view->display_handler
->execute();
}
return $output;
}