block-admin-display-form.tpl.php — шаблон формирующий страницу настройки блока.
$block_regions
— массив регионов (снабжён ключами, значением которых является заголовок блока)$block_listing
— массив блоков (снабжён ключами, значением которых является регион, а затем дельта)$form_submit
— кнопка отправки формыКаждая переменная $block_listing[$region]
содержит массив блоков своего региона. Содержание переменной $data
в переменной $block_listing[$region]
:
$data->region_title
— заголовок региона$data->block_title
— заголовок блока$data->region_select
— раскрывающееся меню выбора региона (назначение региона блоку)$data->weight_select
— раскрывающееся меню выбора веса блока (назначение веса блоку)$data->configure_link
— ссылка на страницу настройки блока$data->delete_link
— ссылка для удаления блока (удалить можно только те блоки, которые добавлены пользователем; для удаления блоков у которых нет ссылки на их удаление, необходимо отключить модули генерирующие эти блоки)<?php
// Add table javascript.
drupal_add_js('misc/tableheader.js');
drupal_add_js(drupal_get_path('module', 'block') . '/block.js');
foreach ($block_regions as $region => $title) {
drupal_add_tabledrag('blocks', 'match', 'sibling', 'block-region-select', 'block-region-' . $region, NULL, FALSE);
drupal_add_tabledrag('blocks', 'order', 'sibling', 'block-weight', 'block-weight-' . $region);
}
?>
<table id="blocks" class="sticky-enabled">
<thead>
<tr>
<th><?php print t('Block'); ?></th>
<th><?php print t('Region'); ?></th>
<th><?php print t('Weight'); ?></th>
<th colspan="2"><?php print t('Operations'); ?></th>
</tr>
</thead>
<tbody>
<?php $row = 0; ?>
<?php foreach ($block_regions as $region => $title): ?>
<tr class="region-title region-title-<?php print $region?>">
<td colspan="5"><?php print $title; ?></td>
</tr>
<tr class="region-message region-<?php print $region?>-message <?php print empty($block_listing[$region]) ? 'region-empty' : 'region-populated'; ?>">
<td colspan="5"><em><?php print t('No blocks in this region'); ?></em></td>
</tr>
<?php foreach ($block_listing[$region] as $delta => $data): ?>
<tr class="draggable <?php print $row % 2 == 0 ? 'odd' : 'even'; ?><?php print $data->row_class ? ' ' . $data->row_class : ''; ?>">
<td class="block"><?php print $data->block_title; ?></td>
<td><?php print $data->region_select; ?></td>
<td><?php print $data->weight_select; ?></td>
<td><?php print $data->configure_link; ?></td>
<td><?php print $data->delete_link; ?></td>
</tr>
<?php $row++; ?>
<?php endforeach; ?>
<?php endforeach; ?>
</tbody>
</table>
<?php print $form_submit; ?>