function ctools_access_admin_render_table
Render the table. This is used both to render it initially and to rerender it upon ajax response.
4 calls to ctools_access_admin_render_table()
- ctools_access_admin_form in includes/
context-access-admin.inc - Administrative form for access control.
- ctools_access_ajax_add in includes/
context-access-admin.inc - AJAX callback to add a new access test to the list.
- ctools_access_ajax_delete in includes/
context-access-admin.inc - AJAX command to remove an access control item.
- ctools_access_ajax_edit in includes/
context-access-admin.inc - AJAX callback to edit an access test in the list.
File
-
includes/
context-access-admin.inc, line 187
Code
function ctools_access_admin_render_table($access, $fragment, $contexts) {
ctools_include('ajax');
ctools_include('modal');
$rows = array();
if (empty($access['plugins'])) {
$access['plugins'] = array();
}
foreach ($access['plugins'] as $id => $test) {
$row = array();
$plugin = ctools_get_access_plugin($test['name']);
$title = isset($plugin['title']) ? $plugin['title'] : t('Broken/missing access plugin %plugin', array(
'%plugin' => $test['name'],
));
$row[] = array(
'data' => $title,
'class' => array(
'ctools-access-title',
),
);
$description = ctools_access_summary($plugin, $contexts, $test);
$row[] = array(
'data' => $description,
'class' => array(
'ctools-access-description',
),
);
$operations = ctools_modal_image_button(ctools_image_path('icon-configure.png'), "ctools/context/ajax/access/configure/{$fragment}/{$id}", t('Configure settings for this item.'));
$operations .= ctools_ajax_image_button(ctools_image_path('icon-delete.png'), "ctools/context/ajax/access/delete/{$fragment}/{$id}", t('Remove this item.'));
$row[] = array(
'data' => $operations,
'class' => array(
'ctools-access-operations',
),
'align' => 'right',
);
$rows[] = $row;
}
$header = array(
array(
'data' => t('Title'),
'class' => array(
'ctools-access-title',
),
),
array(
'data' => t('Description'),
'class' => array(
'ctools-access-description',
),
),
array(
'data' => '',
'class' => array(
'ctools-access-operations',
),
'align' => 'right',
),
);
if (empty($rows)) {
$rows[] = array(
array(
'data' => t('No criteria selected, this test will pass.'),
'colspan' => count($header),
),
);
}
ctools_modal_add_js();
return theme('table', array(
'header' => $header,
'rows' => $rows,
'attributes' => array(
'id' => 'ctools-access-table',
),
));
}