174 lines
8.2 KiB
PHTML
174 lines
8.2 KiB
PHTML
<?php
|
|
$partitionOptions = array('', 'HASH', 'LINEAR HASH', 'KEY', 'LINEAR KEY', 'RANGE', 'RANGE COLUMNS', 'LIST', 'LIST COLUMNS');
|
|
$subPartitionOptions = array('', 'HASH', 'LINEAR HASH', 'KEY', 'LINEAR KEY');
|
|
$valueTypeOptions = array('', 'LESS THAN', 'LESS THAN MAXVALUE', 'IN');
|
|
?>
|
|
|
|
<table id="partition_table">
|
|
<tr class="vmiddle">
|
|
<td><label for="partition_by"><?= __('Partition by:'); ?></label></td>
|
|
<td>
|
|
<select name="partition_by" id="partition_by">
|
|
<?php foreach ($partitionOptions as $option): ?>
|
|
<option value="<?= $option?>"
|
|
<?php if ($partitionDetails['partition_by'] == $option): ?>
|
|
selected="selected"
|
|
<?php endif; ?>
|
|
>
|
|
<?= $option; ?>
|
|
</option>
|
|
<?php endforeach; ?>
|
|
</select>
|
|
</td>
|
|
<td>(
|
|
<input name="partition_expr" type="text"
|
|
placeholder="<?= __('Expression or column list'); ?>"
|
|
value="<?= htmlspecialchars($partitionDetails['partition_expr']); ?>"/>
|
|
)</td>
|
|
</tr>
|
|
<tr class="vmiddle">
|
|
<td><label for="partition_count"><?= __('Partitions:'); ?></label></td>
|
|
<td>
|
|
<input name="partition_count" type="number" min="2"
|
|
value="<?= htmlspecialchars($partitionDetails['partition_count']); ?>" />
|
|
</td>
|
|
</tr>
|
|
<?php if ($partitionDetails['can_have_subpartitions']): ?>
|
|
<tr class="vmiddle">
|
|
<td><label for="subpartition_by"><?= __('Subpartition by:'); ?></label></td>
|
|
<td>
|
|
<select name="subpartition_by" id="subpartition_by">
|
|
<?php foreach ($subPartitionOptions as $option): ?>
|
|
<option value="<?= $option?>"
|
|
<?php if ($partitionDetails['subpartition_by'] == $option): ?>
|
|
selected="selected"
|
|
<?php endif; ?>
|
|
>
|
|
<?= $option; ?>
|
|
</option>
|
|
<?php endforeach; ?>
|
|
</select>
|
|
</td>
|
|
<td>(
|
|
<input name="subpartition_expr" type="text"
|
|
placeholder="<?= __('Expression or column list'); ?>"
|
|
value="<?= htmlspecialchars($partitionDetails['subpartition_expr']); ?>"/>
|
|
)</td>
|
|
</tr>
|
|
<tr class="vmiddle">
|
|
<td><label for="subpartition_count"><?= __('Subpartitions:'); ?></label></td>
|
|
<td>
|
|
<input name="subpartition_count" type="number" min="2"
|
|
value="<?= htmlspecialchars($partitionDetails['subpartition_count']); ?>" />
|
|
</td>
|
|
</tr>
|
|
<?php endif; ?>
|
|
</table>
|
|
|
|
<?php if ($partitionDetails['partition_count'] > 1): ?>
|
|
<table id="partition_definition_table">
|
|
<tr>
|
|
<th><?= __('Partition'); ?></th>
|
|
<?php if ($partitionDetails['value_enabled']): ?>
|
|
<th><?= __('Values'); ?></th>
|
|
<?php endif; ?>
|
|
<?php if ($partitionDetails['can_have_subpartitions'] && $partitionDetails['subpartition_count'] > 1): ?>
|
|
<th><?= __('Subpartition'); ?></th>
|
|
<?php endif; ?>
|
|
<th><?= __('Engine'); ?></th>
|
|
<th><?= __('Comment'); ?></th>
|
|
<th><?= __('Data directory'); ?></th>
|
|
<th><?= __('Index directory'); ?></th>
|
|
<th><?= __('Max rows'); ?></th>
|
|
<th><?= __('Min rows'); ?></th>
|
|
<th><?= __('Table space'); ?></th>
|
|
<th><?= __('Node group'); ?></th>
|
|
</tr>
|
|
<?php $odd = true; ?>
|
|
<?php foreach ($partitionDetails['partitions'] as $partition): ?>
|
|
<?php $rowspan = ! empty($partition['subpartition_count']) ? ($partition['subpartition_count'] + 1) : 2; ?>
|
|
<tr class="<?= ($odd ? 'odd' : 'even'); ?>">
|
|
<td rowspan="<?= $rowspan; ?>">
|
|
<input type="text" name="<?= $partition['prefix']; ?>[name]"
|
|
value="<?= htmlspecialchars($partition['name']); ?>" />
|
|
</td>
|
|
<?php if ($partitionDetails['value_enabled']): ?>
|
|
<td rowspan="<?= $rowspan; ?>" class="vmiddle">
|
|
<select class="partition_value"
|
|
name="<?= $partition['prefix']; ?>[value_type]">
|
|
<?php foreach ($valueTypeOptions as $option): ?>
|
|
<option value="<?= $option?>"
|
|
<?php if ($partition['value_type'] == $option): ?>
|
|
selected="selected"
|
|
<?php endif; ?>
|
|
>
|
|
<?= $option; ?>
|
|
</option>
|
|
<?php endforeach; ?>
|
|
</select>
|
|
<input type="text" class="partition_value"
|
|
name="<?= $partition['prefix']; ?>[value]"
|
|
value="<?= $partition['value']; ?>" />
|
|
</td>
|
|
<?php endif; ?>
|
|
</tr>
|
|
|
|
<?php
|
|
if (isset($partition['subpartitions'])):
|
|
$subpartitions = $partition['subpartitions'];
|
|
else:
|
|
$subpartitions = array($partition);
|
|
endif;
|
|
?>
|
|
|
|
<?php foreach ($subpartitions as $subpartition): ?>
|
|
<tr class="<?= ($odd ? 'odd' : 'even'); ?>">
|
|
<?php if ($partitionDetails['can_have_subpartitions'] && $partitionDetails['subpartition_count'] > 1): ?>
|
|
<td>
|
|
<input type="text" name="<?= $subpartition['prefix']; ?>[name]"
|
|
value="<?= htmlspecialchars($subpartition['name']); ?>" />
|
|
</td>
|
|
<?php endif; ?>
|
|
<td>
|
|
<?= PMA\libraries\StorageEngine::getHtmlSelect(
|
|
$subpartition['prefix'] . '[engine]',
|
|
null,
|
|
$subpartition['engine'],
|
|
false,
|
|
true
|
|
); ?>
|
|
</td>
|
|
<td>
|
|
<?php //Please keep this at one line to avoid extra spaces in textarea value. ?>
|
|
<textarea name="<?= $subpartition['prefix']; ?>[comment]"><?= htmlspecialchars($subpartition['comment']); ?></textarea>
|
|
</td>
|
|
<td>
|
|
<input type="text" name="<?= $subpartition['prefix']; ?>[data_directory]"
|
|
value="<?= htmlspecialchars($subpartition['data_directory']); ?>" />
|
|
</td>
|
|
<td>
|
|
<input type="text" name="<?= $subpartition['prefix']; ?>[index_directory]"
|
|
value="<?= htmlspecialchars($subpartition['index_directory']); ?>" />
|
|
</td>
|
|
<td>
|
|
<input type="number" name="<?= $subpartition['prefix']; ?>[max_rows]"
|
|
value="<?= htmlspecialchars($subpartition['max_rows']); ?>" />
|
|
</td>
|
|
<td>
|
|
<input type="number" min="0" name="<?= $subpartition['prefix']; ?>[min_rows]"
|
|
value="<?= htmlspecialchars($subpartition['min_rows']); ?>" />
|
|
</td>
|
|
<td>
|
|
<input type="text" min="0" name="<?= $subpartition['prefix']; ?>[tablespace]"
|
|
value="<?= htmlspecialchars($subpartition['tablespace']); ?>" />
|
|
</td>
|
|
<td>
|
|
<input type="text" name="<?= $subpartition['prefix']; ?>[node_group]"
|
|
value="<?= htmlspecialchars($subpartition['node_group']); ?>" />
|
|
</td>
|
|
</tr>
|
|
<?php endforeach; ?>
|
|
<?php $odd = !$odd; ?>
|
|
<?php endforeach; ?>
|
|
</table>
|
|
<?php endif; ?> |