public function CacheflushUIController::overviewTable in CacheFlush 7.3
Overrides EntityDefaultUIController::overviewTable().
Overrides EntityDefaultUIController::overviewTable
1 call to CacheflushUIController::overviewTable()
- CacheflushUIController::overviewForm in modules/
cacheflush_ui/ includes/ cacheflush_ui.class.inc - Overrides EntityDefaultUIController::overviewForm().
File
- modules/
cacheflush_ui/ includes/ cacheflush_ui.class.inc, line 201 - Contains the CacheflushUIController class.
Class
- CacheflushUIController
- Custom controller for the administrator UI.
Code
public function overviewTable($conditions = array()) {
$header = array(
array(
'data' => t('ID'),
'field' => 'id',
'sort' => 'DESC',
),
array(
'data' => t('Title'),
'field' => 'c.title',
),
array(
'data' => t('Author'),
'field' => 'c.uid',
),
array(
'data' => t('Status'),
'field' => 'c.status',
),
array(
'data' => t('Menu entry'),
'field' => 'c.menu',
),
array(
'data' => t('Created'),
'field' => 'c.created',
),
array(
'data' => t('Operations'),
),
);
$view_any = user_access('cacheflush view any');
$query = db_select('cacheflush', 'c')
->extend('TableSort')
->orderByHeader($header)
->fields('c', array(
'id',
));
if ($this->overviewPagerLimit) {
$query
->extend('PagerDefault')
->limit($this->overviewPagerLimit);
}
if (isset($conditions)) {
foreach ($conditions as $field => $value) {
$query
->condition('c.' . $field, $value['value'], $value['op']);
}
}
if (!$view_any) {
$query
->condition('c.uid', $GLOBALS['user']->uid, '=');
}
$ids = $query
->execute()
->fetchCol();
$rows = array();
$presets = cacheflush_load_multiple($ids);
foreach ($presets as $preset) {
$row = $operations = array();
$user = user_load($preset->uid);
$row[] = $preset->id;
$row[] = $preset->title;
$row[] = theme('username', array(
'account' => $user,
));
$row[] = $preset->status == 1 ? t('enabled') : t('disabled');
$row[] = $preset->menu == 1 ? t('Yes') : t('No');
$row[] = format_date($preset->created, 'short');
if (cacheflush_ui_access('update', $preset)) {
$operations['update'] = array(
'title' => t('Edit'),
'href' => 'cacheflush/' . $preset->id . '/edit',
'query' => drupal_get_destination(),
);
}
if (cacheflush_ui_access('delete', $preset)) {
$operations['delete'] = array(
'title' => t('Delete'),
'href' => 'cacheflush/' . $preset->id . '/delete',
'query' => drupal_get_destination(),
);
}
$row[] = array(
'data' => array(
'#theme' => 'links__node_operations',
'#links' => $operations,
'#attributes' => array(
'class' => array(
'links',
'inline',
),
),
),
);
$rows[$preset->id] = $row;
}
$render = array(
'#type' => 'tableselect',
'#options' => $rows,
'#header' => $header,
'#multiple' => TRUE,
'#empty' => t('No presets available.'),
);
return $render;
}