class views_oai_pmh_plugin_style in Views OAI-PMH 6.2
Same name and namespace in other branches
- 6 plugins/views_oai_pmh_plugin_style.inc \views_oai_pmh_plugin_style
- 7.3 plugins/views_oai_pmh_plugin_style.inc \views_oai_pmh_plugin_style
- 7 plugins/views_oai_pmh_plugin_style.inc \views_oai_pmh_plugin_style
- 7.2 plugins/views_oai_pmh_plugin_style.inc \views_oai_pmh_plugin_style
@file Definition of the views_oai_pmh_plugin_style class.
Hierarchy
- class \views_oai_pmh_plugin_style extends \views_plugin_style
Expanded class hierarchy of views_oai_pmh_plugin_style
2 string references to 'views_oai_pmh_plugin_style'
- views_oai_pmh_plugin_style_auto::_check_style_objects in plugins/
views_oai_pmh_plugin_style_auto.inc - Clones this object's properties into its style objects. Only performs this action the first time the function is called; subsequent calls just run the validity test.
- views_oai_pmh_views_plugins in ./
views_oai_pmh.views.inc - Implementation of hook_views_plugins().
File
- plugins/
views_oai_pmh_plugin_style.inc, line 7 - Definition of the views_oai_pmh_plugin_style class.
View source
class views_oai_pmh_plugin_style extends views_plugin_style {
protected $oai_args = array();
function render() {
$content = '';
$oai_resumption_token = '';
if ($this
->uses_row_plugin() && empty($this->row_plugin)) {
vpr('views_plugin_style_default: Missing row plugin');
return;
}
$this->oai_args = $this->display->handler
->get_oai_args();
if (!count($this->oai_args['errors'])) {
$content = $this
->render_content();
if (!empty($content) && isset($this->oai_args['verb']) && in_array($this->oai_args['verb'], array(
'ListRecords',
'ListIdentifiers',
'ListSets',
))) {
$oai_resumption_token = $this->display->handler
->build_oai_resumption_token();
}
}
if (empty($content) && isset($this->oai_args['verb']) && in_array($this->oai_args['verb'], array(
'ListRecords',
'ListIdentifiers',
))) {
$this->oai_args['errors'] = $this->display->handler
->oai_error('noRecordsMatch');
}
if (empty($content) && isset($this->oai_args['verb']) && $this->oai_args['verb'] == 'GetRecord') {
$this->oai_args['errors'] = $this->display->handler
->oai_error('idDoesNotExist', $this->oai_args['identifier']);
}
return theme('views_oai_pmh_response', array(
'view' => $this->view,
'options' => $this->options,
'oai_args' => $this->oai_args,
'oai_content' => $content,
'resumption_token' => $oai_resumption_token,
));
}
function render_content() {
switch ($this->oai_args['verb']) {
case 'Identify':
if (empty($this->display->handler->oai_errors)) {
return theme('views_oai_pmh_identify_body', $this->view);
}
break;
case "ListIdentifiers":
return $this
->render_identifiers();
break;
case 'ListMetadataFormats':
return theme('views_oai_pmh_metadataformats_body');
case 'GetRecord':
case 'ListRecords':
return $this
->render_records();
case 'ListSets':
default:
}
}
function render_identifiers() {
if (!empty($this->display->handler->oai_args['errors'])) {
return;
}
if ($this
->uses_row_plugin() && empty($this->row_plugin)) {
vpr('views_plugin_style_default: Missing row plugin');
return;
}
$records = '';
$rows = array();
foreach ($this->view->result as $row_index => $row) {
$records .= theme('views_oai_pmh_record_header', array(
'nid' => $row->nid,
'node_changed' => $row->node_changed,
));
}
return $records;
}
/**
* Provide a full list of possible theme templates used by this style.
*/
function theme_functions($hook = NULL) {
if (is_null($hook)) {
$hook = $this->definition['theme'];
}
return views_theme_functions($hook, $this->view, $this->display);
}
/**
* Get the nid of the result at the given row index.
*
* @param $index
* The index count of the row.
*/
function get_field_id($index) {
return $this->view->result[$index];
}
}
Members
Name![]() |
Modifiers | Type | Description | Overrides |
---|---|---|---|---|
views_oai_pmh_plugin_style:: |
protected | property | ||
views_oai_pmh_plugin_style:: |
function | Get the nid of the result at the given row index. | ||
views_oai_pmh_plugin_style:: |
function | |||
views_oai_pmh_plugin_style:: |
function | |||
views_oai_pmh_plugin_style:: |
function | |||
views_oai_pmh_plugin_style:: |
function | Provide a full list of possible theme templates used by this style. |