View source
<?php
function tmgmt_views_data() {
$data = array();
foreach (tmgmt_source_views_controller() as $controller) {
$data += $controller
->views_data();
}
return $data;
}
class TMGMTJobItemViewsController extends EntityDefaultViewsController {
public function views_data() {
$data = parent::views_data();
$data['tmgmt_job_item']['label'] = array(
'title' => t('Label'),
'help' => t('Displays a label of the job item.'),
'field' => array(
'handler' => 'tmgmt_handler_field_tmgmt_entity_label',
),
);
$data['tmgmt_job_item']['type'] = array(
'title' => t('Type'),
'help' => t('Displays a type of the job item.'),
'field' => array(
'handler' => 'tmgmt_handler_field_tmgmt_job_item_type',
),
);
$data['tmgmt_job_item']['progress'] = array(
'title' => t('Progress'),
'help' => t('Displays the progress of a job item.'),
'real field' => 'tjiid',
'field' => array(
'handler' => 'tmgmt_handler_field_tmgmt_progress',
),
);
$data['tmgmt_job_item']['operations'] = array(
'title' => t('Operations'),
'help' => t('Displays a list of options which are available for a job item.'),
'real field' => 'tjiid',
'field' => array(
'handler' => 'tmgmt_handler_field_tmgmt_job_item_operations',
),
);
return $data;
}
}
class TMGMTJobViewsController extends EntityDefaultViewsController {
public function views_data() {
$data = parent::views_data();
$data['tmgmt_job']['operations'] = array(
'title' => t('Operations'),
'help' => t('Displays a list of options which are available for a job.'),
'real field' => 'tjid',
'field' => array(
'handler' => 'tmgmt_handler_field_tmgmt_job_operations',
),
);
$data['tmgmt_job']['progress'] = array(
'title' => t('Progress'),
'help' => t('Displays the progress of a job.'),
'real field' => 'tjid',
'field' => array(
'handler' => 'tmgmt_handler_field_tmgmt_progress',
),
);
$data['tmgmt_job']['word_count'] = array(
'title' => t('Word count'),
'help' => t('Displays the word count of a job.'),
'real field' => 'tjid',
'field' => array(
'handler' => 'tmgmt_handler_field_tmgmt_wordcount',
),
);
$data['tmgmt_job']['label']['field']['handler'] = 'tmgmt_handler_field_tmgmt_entity_label';
$data['tmgmt_job']['translator']['field']['handler'] = 'tmgmt_handler_field_tmgmt_translator';
$data['tmgmt_job']['job_item'] = array(
'title' => t('Job items'),
'help' => t('Get the job items of the job'),
'relationship' => array(
'base' => 'tmgmt_job_item',
'base field' => 'tjid',
'real field' => 'tjid',
'label' => t('Job items'),
),
);
$data['tmgmt_job']['item_count'] = array(
'title' => t('Job item count'),
'help' => t('Show the amount of job items per job (per job item status)'),
'real field' => 'tjid',
'field' => array(
'handler' => 'tmgmt_handler_field_tmgmt_job_item_count',
),
);
return $data;
}
}
class TMGMTMessageViewsController extends EntityDefaultViewsController {
public function views_data() {
$data = parent::views_data();
$data['tmgmt_message']['message']['field']['handler'] = 'tmgmt_handler_field_tmgmt_message_message';
return $data;
}
}
interface TMGMTSourceViewsControllerInterface extends TMGMTPluginBaseInterface {
public function views_data();
}
class TMGMTDefaultSourceViewsController extends TMGMTPluginBase implements TMGMTSourceViewsControllerInterface {
public function views_data() {
return array();
}
}