Drop getColumnSetValueAndSelectSize()
Signed-off-by: Kamil Tekiela <tekiela246@gmail.com>
This commit is contained in:
parent
2d7617fe47
commit
fa7fe0da97
@ -480,30 +480,6 @@ class InsertEdit
|
||||
. '</textarea>';
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve column 'set' value and select size
|
||||
*
|
||||
* @param mixed[] $column description of column in given table
|
||||
* @param string[] $enumSetValues
|
||||
*
|
||||
* @return mixed[] $column['values'], $column['select_size']
|
||||
*/
|
||||
private function getColumnSetValueAndSelectSize(
|
||||
array $column,
|
||||
array $enumSetValues,
|
||||
): array {
|
||||
if (! isset($column['values'])) {
|
||||
$column['values'] = [];
|
||||
foreach ($enumSetValues as $val) {
|
||||
$column['values'][] = ['plain' => $val, 'html' => htmlspecialchars($val)];
|
||||
}
|
||||
|
||||
$column['select_size'] = min(4, count($column['values']));
|
||||
}
|
||||
|
||||
return [$column['values'], $column['select_size']];
|
||||
}
|
||||
|
||||
/**
|
||||
* Get HTML input type
|
||||
*
|
||||
@ -2032,10 +2008,10 @@ class InsertEdit
|
||||
}
|
||||
}
|
||||
} elseif ($column['pma_type'] === 'set') {
|
||||
[$columnSetValues, $setSelectSize] = $this->getColumnSetValueAndSelectSize(
|
||||
$column,
|
||||
$extractedColumnspec['enum_set_values'],
|
||||
);
|
||||
$columnSetValues = $column['values'] ?? $extractedColumnspec['enum_set_values'];
|
||||
$setSelectSize = ! isset($column['values'])
|
||||
? min(4, count($extractedColumnspec['enum_set_values']))
|
||||
: $column['select_size'];
|
||||
} elseif ($column['is_binary'] || $column['is_blob']) {
|
||||
$isColumnProtectedBlob = ($GLOBALS['cfg']['ProtectBinary'] === 'blob' && $column['is_blob'])
|
||||
|| ($GLOBALS['cfg']['ProtectBinary'] === 'all')
|
||||
|
||||
@ -4835,6 +4835,11 @@ parameters:
|
||||
count: 1
|
||||
path: libraries/classes/InsertEdit.php
|
||||
|
||||
-
|
||||
message: "#^Parameter \\#1 \\$value of function count expects array\\|Countable, mixed given\\.$#"
|
||||
count: 1
|
||||
path: libraries/classes/InsertEdit.php
|
||||
|
||||
-
|
||||
message: "#^Parameter \\#1 \\$value of static method PhpMyAdmin\\\\Util\\:\\:addMicroseconds\\(\\) expects string, mixed given\\.$#"
|
||||
count: 1
|
||||
@ -4855,11 +4860,6 @@ parameters:
|
||||
count: 1
|
||||
path: libraries/classes/InsertEdit.php
|
||||
|
||||
-
|
||||
message: "#^Parameter \\#2 \\$enumSetValues of method PhpMyAdmin\\\\InsertEdit\\:\\:getColumnSetValueAndSelectSize\\(\\) expects array\\<string\\>, mixed given\\.$#"
|
||||
count: 1
|
||||
path: libraries/classes/InsertEdit.php
|
||||
|
||||
-
|
||||
message: "#^Parameter \\#2 \\$foreignField of method PhpMyAdmin\\\\ConfigStorage\\\\Relation\\:\\:foreignDropdown\\(\\) expects string, mixed given\\.$#"
|
||||
count: 1
|
||||
|
||||
@ -8029,6 +8029,7 @@
|
||||
<code><![CDATA[$mimeMap[$tableColumn['Field']]]]></code>
|
||||
</MixedArrayOffset>
|
||||
<MixedAssignment>
|
||||
<code>$columnSetValues</code>
|
||||
<code><![CDATA[$column['pma_type']]]></code>
|
||||
<code><![CDATA[$column['values']]]></code>
|
||||
<code>$currCellEditedValues</code>
|
||||
@ -8045,6 +8046,7 @@
|
||||
<code>$isUnsigned</code>
|
||||
<code>$maxlength</code>
|
||||
<code>$maxlength</code>
|
||||
<code>$setSelectSize</code>
|
||||
<code>$singleQuery</code>
|
||||
<code>$specialChars</code>
|
||||
<code><![CDATA[$tmp['Default']]]></code>
|
||||
@ -8104,7 +8106,6 @@
|
||||
</PossiblyInvalidOperand>
|
||||
<PossiblyUndefinedArrayOffset>
|
||||
<code><![CDATA[$column['is_blob']]]></code>
|
||||
<code><![CDATA[$column['select_size']]]></code>
|
||||
</PossiblyUndefinedArrayOffset>
|
||||
<RedundantCast>
|
||||
<code><![CDATA[(int) $GLOBALS['cfg']['InsertRows']]]></code>
|
||||
@ -14891,8 +14892,6 @@
|
||||
<code>$result</code>
|
||||
<code>$result</code>
|
||||
<code>$result</code>
|
||||
<code>$result</code>
|
||||
<code>$result</code>
|
||||
</MixedAssignment>
|
||||
</file>
|
||||
<file src="test/classes/InternalRelationsTest.php">
|
||||
|
||||
@ -85,7 +85,7 @@
|
||||
<input type="hidden" name="fields_type[multi_edit][{{ row_id }}][{{ column.Field_md5 }}]" value="set">
|
||||
<select name="fields[multi_edit][{{ row_id }}][{{ column.Field_md5 }}][]" class="textfield" size="{{ set_select_size }}" id="field_{{ id_index }}_3" onchange="return verificationsAfterFieldChange('{{ column.Field_md5|escape('js') }}', '{{ row_id|escape('js') }}', '{{ column.pma_type }}')" multiple>
|
||||
{% for set_value in set_values %}
|
||||
<option value="{{ set_value.plain }}"{{ set_value.plain in data|split(',') ? ' selected' }}>{{ set_value.plain }}</option>
|
||||
<option value="{{ set_value }}"{{ set_value in data|split(',') ? ' selected' }}>{{ set_value }}</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
{% elseif column.is_binary or column.is_blob %}
|
||||
|
||||
@ -619,40 +619,6 @@ class InsertEditTest extends AbstractTestCase
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test for getColumnSetValueAndSelectSize
|
||||
*/
|
||||
public function testGetColumnSetValueAndSelectSize(): void
|
||||
{
|
||||
$column = [];
|
||||
$enumSetValues = ['a', '<'];
|
||||
$result = $this->callFunction(
|
||||
$this->insertEdit,
|
||||
InsertEdit::class,
|
||||
'getColumnSetValueAndSelectSize',
|
||||
[[], $enumSetValues],
|
||||
);
|
||||
|
||||
$this->assertEquals(
|
||||
[[['plain' => 'a', 'html' => 'a'], ['plain' => '<', 'html' => '<']], 2],
|
||||
$result,
|
||||
);
|
||||
|
||||
$column['values'] = [1, 2];
|
||||
$column['select_size'] = 3;
|
||||
$result = $this->callFunction(
|
||||
$this->insertEdit,
|
||||
InsertEdit::class,
|
||||
'getColumnSetValueAndSelectSize',
|
||||
[$column, $enumSetValues],
|
||||
);
|
||||
|
||||
$this->assertEquals(
|
||||
[[1, 2], 3],
|
||||
$result,
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Test for getHtmlInput
|
||||
*/
|
||||
|
||||
Loading…
Reference in New Issue
Block a user