diff --git a/libraries/classes/CentralColumns.php b/libraries/classes/CentralColumns.php
index 22fb42e255..14de6e180c 100644
--- a/libraries/classes/CentralColumns.php
+++ b/libraries/classes/CentralColumns.php
@@ -764,47 +764,10 @@ class CentralColumns
*/
private function getHtmlForEditTableRow(array $row, int $row_num): string
{
- $tableHtml = '
'
- . ''
- . '| '
- . $this->template->render('columns_definitions/column_name', [
- 'column_number' => $row_num,
- 'ci' => 0,
- 'ci_offset' => 0,
- 'column_meta' => [
- 'Field' => $row['col_name'],
- ],
- 'cfg_relation' => ['centralcolumnswork' => false],
- 'max_rows' => $this->maxRows,
- ])
- . ' | ';
- $tableHtml .=
- ''
- . $this->template->render('columns_definitions/column_type', [
- 'column_number' => $row_num,
- 'ci' => 1,
- 'ci_offset' => 0,
- 'type_upper' => mb_strtoupper($row['col_type']),
- 'column_meta' => [],
- ])
- . ' | ';
- $tableHtml .=
- ''
- . $this->template->render('columns_definitions/column_length', [
- 'column_number' => $row_num,
- 'ci' => 2,
- 'ci_offset' => 0,
- 'length_values_input_size' => 8,
- 'length_to_display' => $row['col_length'],
- ])
- . ' | ';
$meta = [];
if (! isset($row['col_default']) || $row['col_default'] == '') {
$meta['DefaultType'] = 'NONE';
- } elseif ($row['col_default'] === 'CURRENT_TIMESTAMP'
- || $row['col_default'] === 'current_timestamp()'
- ) {
+ } elseif ($row['col_default'] === 'CURRENT_TIMESTAMP' || $row['col_default'] === 'current_timestamp()') {
$meta['DefaultType'] = 'CURRENT_TIMESTAMP';
} elseif ($row['col_default'] === 'NULL') {
$meta['DefaultType'] = $row['col_default'];
@@ -812,77 +775,20 @@ class CentralColumns
$meta['DefaultType'] = 'USER_DEFINED';
$meta['DefaultValue'] = $row['col_default'];
}
- $tableHtml .=
- ''
- . $this->template->render('columns_definitions/column_default', [
- 'column_number' => $row_num,
- 'ci' => 3,
- 'ci_offset' => 0,
- 'type_upper' => mb_strtoupper((string) $row['col_default']),
- 'column_meta' => $meta,
- 'char_editing' => $this->charEditing,
- ])
- . ' | ';
- $tableHtml .= '';
- $tableHtml .= '' . "\n";
- $tableHtml .= ' | ';
- $tableHtml .=
- ''
- . $this->template->render('columns_definitions/column_attribute', [
- 'column_number' => $row_num,
- 'ci' => 5,
- 'ci_offset' => 0,
- 'extracted_columnspec' => [
- 'attribute' => $row['col_attribute'],
- ],
- 'column_meta' => [],
- 'submit_attribute' => false,
- 'attribute_types' => $this->dbi->types->getAttributes(),
- ])
- . ' | ';
- $tableHtml .=
- ''
- . $this->template->render('columns_definitions/column_null', [
- 'column_number' => $row_num,
- 'ci' => 6,
- 'ci_offset' => 0,
- 'column_meta' => [
- 'Null' => $row['col_isNull'],
- ],
- ])
- . ' | ';
- $tableHtml .=
- ''
- . $this->template->render('columns_definitions/column_extra', [
- 'column_number' => $row_num,
- 'ci' => 7,
- 'ci_offset' => 0,
- 'column_meta' => ['Extra' => $row['col_extra']],
- ])
- . ' | ';
- $tableHtml .= '
';
-
- return $tableHtml;
+ return $this->template->render('database/central_columns/edit_table_row', [
+ 'row_num' => $row_num,
+ 'row' => $row,
+ 'max_rows' => $this->maxRows,
+ 'meta' => $meta,
+ 'char_editing' => $this->charEditing,
+ 'charsets' => $charsets,
+ 'collations' => $collations,
+ 'attribute_types' => $this->dbi->types->getAttributes(),
+ ]);
}
/**
diff --git a/templates/database/central_columns/edit_table_row.twig b/templates/database/central_columns/edit_table_row.twig
new file mode 100644
index 0000000000..f63ef575e6
--- /dev/null
+++ b/templates/database/central_columns/edit_table_row.twig
@@ -0,0 +1,90 @@
+
+
+ |
+ {% include 'columns_definitions/column_name.twig' with {
+ 'column_number': row_num,
+ 'ci': 0,
+ 'ci_offset': 0,
+ 'column_meta': {'Field': row['col_name']},
+ 'cfg_relation': {'centralcolumnswork': false},
+ 'max_rows': max_rows
+ } only %}
+ |
+
+
+ {% include 'columns_definitions/column_type.twig' with {
+ 'column_number': row_num,
+ 'ci': 1,
+ 'ci_offset': 0,
+ 'column_meta': [],
+ 'type_upper': row['col_type']|upper
+ } only %}
+ |
+
+
+ {% include 'columns_definitions/column_length.twig' with {
+ 'column_number': row_num,
+ 'ci': 2,
+ 'ci_offset': 0,
+ 'length_values_input_size': 8,
+ 'length_to_display': row['col_length']
+ } only %}
+ |
+
+
+ {% include 'columns_definitions/column_default.twig' with {
+ 'column_number': row_num,
+ 'ci': 3,
+ 'ci_offset': 0,
+ 'column_meta': meta,
+ 'type_upper': row['col_default']|upper,
+ 'default_value': '',
+ 'char_editing': char_editing
+ } only %}
+ |
+
+
+
+ |
+
+
+ {% include 'columns_definitions/column_attribute.twig' with {
+ 'column_number': row_num,
+ 'ci': 5,
+ 'ci_offset': 0,
+ 'column_meta': [],
+ 'extracted_columnspec': {'attribute': row['col_attribute']},
+ 'submit_attribute': false,
+ 'attribute_types': attribute_types
+ } only %}
+ |
+
+
+ {% include 'columns_definitions/column_null.twig' with {
+ 'column_number': row_num,
+ 'ci': 6,
+ 'ci_offset': 0,
+ 'column_meta': {'Null': row['col_isNull']}
+ } only %}
+ |
+
+
+ {% include 'columns_definitions/column_extra.twig' with {
+ 'column_number': row_num,
+ 'ci': 7,
+ 'ci_offset': 0,
+ 'column_meta': {'Extra': row['col_extra']}
+ } only %}
+ |
+