popsu-d7/sites/all/modules/draggableviews/views/draggableviews.views.inc
Bachir Soussi Chiadmi 1bc61b12ad first import
2015-04-08 11:40:19 +02:00

45 lines
1.4 KiB
PHP

<?php
/**
* @file
* Views hooks implementations.
*/
/**
* Implements hook_views_data_alter().
*/
function draggableviews_views_data_alter(&$data) {
$data['draggableviews_structure']['weight'] = array(
'title' => t('Weight'),
'help' => t('Sort entities by the draggableviews weight table field.'),
'group' => t('Draggableviews'),
'sort' => array(
'handler' => 'draggableviews_handler_sort',
),
);
foreach (entity_get_info() as $entity_type => $info) {
if (isset($info['base table']) && isset($data[$info['base table']]['table'])) {
$data[$info['base table']]['draggableviews'] = array(
'title' => $data[$info['base table']]['table']['group'],
'group' => t('Draggableviews'),
'help' => t('Provide a draggable functionality.'),
'real field' => $info['entity keys']['id'],
'field' => array(
'handler' => 'draggableviews_handler_field_draggable',
'click sortable' => FALSE,
),
);
// Explain to every entity how to join with draggableviews structure table.
$data['draggableviews_structure']['table']['join'][$info['base table']] = array(
'handler' => 'draggableviews_join_handler',
'left_table' => $info['base table'], // Because this is a direct link it could be left out.
'left_field' => $info['entity keys']['id'],
'field' => 'entity_id',
);
}
}
}