diff options
author | William Desportes <williamdes@wdes.fr> | 2018-11-17 22:53:15 +0300 |
---|---|---|
committer | William Desportes <williamdes@wdes.fr> | 2018-11-25 15:57:58 +0300 |
commit | 2c407224ef964c29ebbfc28b0a5231df21a3a04b (patch) | |
tree | 9a9dbb02b828005a851d51300d27b0a0f52145e8 /libraries | |
parent | cc2665121d8931b702c08ff12182cde9c452ee43 (diff) |
phpstan level 2 - Fix plugins
The type is clearly a stdClass (see plugin template)
Signed-off-by: William Desportes <williamdes@wdes.fr>
Diffstat (limited to 'libraries')
31 files changed, 175 insertions, 134 deletions
diff --git a/libraries/classes/InsertEdit.php b/libraries/classes/InsertEdit.php index deca71156c..fea3d5cc56 100644 --- a/libraries/classes/InsertEdit.php +++ b/libraries/classes/InsertEdit.php @@ -2529,8 +2529,7 @@ class InsertEdit = $extra_data['transformations'][$cell_index] = $transformation_plugin->applyTransformation( $curr_cell_edited_values[$column_name], - $transform_options, - '' + $transform_options ); } } // end of loop for each transformation cell diff --git a/libraries/classes/Plugins.php b/libraries/classes/Plugins.php index e73d7d0b93..988a68eb00 100644 --- a/libraries/classes/Plugins.php +++ b/libraries/classes/Plugins.php @@ -461,37 +461,47 @@ class Plugins $ret .= '<p>' . self::getString($propertyItem->getText()) . '</p>'; break; case 'PhpMyAdmin\Properties\Options\Items\RadioPropertyItem': + /** + * @var \PhpMyAdmin\Properties\Options\Items\RadioPropertyItem $pitem + */ + $pitem = $propertyItem; + $default = self::getDefault( $section, - $plugin_name . '_' . $propertyItem->getName() + $plugin_name . '_' . $pitem->getName() ); - foreach ($propertyItem->getValues() as $key => $val) { + + foreach ($pitem->getValues() as $key => $val) { $ret .= '<li><input type="radio" name="' . $plugin_name - . '_' . $propertyItem->getName() . '" value="' . $key + . '_' . $pitem->getName() . '" value="' . $key . '" id="radio_' . $plugin_name . '_' - . $propertyItem->getName() . '_' . $key . '"'; + . $pitem->getName() . '_' . $key . '"'; if ($key == $default) { $ret .= ' checked="checked"'; } $ret .= ' />' . '<label for="radio_' . $plugin_name . '_' - . $propertyItem->getName() . '_' . $key . '">' + . $pitem->getName() . '_' . $key . '">' . self::getString($val) . '</label></li>'; } break; case 'PhpMyAdmin\Properties\Options\Items\SelectPropertyItem': + /** + * @var \PhpMyAdmin\Properties\Options\Items\SelectPropertyItem $pitem + */ + $pitem = $propertyItem; $ret .= '<li>' . "\n"; $ret .= '<label for="select_' . $plugin_name . '_' - . $propertyItem->getName() . '" class="desc">' - . self::getString($propertyItem->getText()) . '</label>'; + . $pitem->getName() . '" class="desc">' + . self::getString($pitem->getText()) . '</label>'; $ret .= '<select name="' . $plugin_name . '_' - . $propertyItem->getName() . '"' + . $pitem->getName() . '"' . ' id="select_' . $plugin_name . '_' - . $propertyItem->getName() . '">'; + . $pitem->getName() . '">'; $default = self::getDefault( $section, - $plugin_name . '_' . $propertyItem->getName() + $plugin_name . '_' . $pitem->getName() ); - foreach ($propertyItem->getValues() as $key => $val) { + foreach ($pitem->getValues() as $key => $val) { $ret .= '<option value="' . $key . '"'; if ($key == $default) { $ret .= ' selected="selected"'; @@ -502,23 +512,27 @@ class Plugins $ret .= '</select>'; break; case 'PhpMyAdmin\Properties\Options\Items\TextPropertyItem': + /** + * @var \PhpMyAdmin\Properties\Options\Items\TextPropertyItem $pitem + */ + $pitem = $propertyItem; $ret .= '<li>' . "\n"; $ret .= '<label for="text_' . $plugin_name . '_' - . $propertyItem->getName() . '" class="desc">' - . self::getString($propertyItem->getText()) . '</label>'; + . $pitem->getName() . '" class="desc">' + . self::getString($pitem->getText()) . '</label>'; $ret .= '<input type="text" name="' . $plugin_name . '_' - . $propertyItem->getName() . '"' + . $pitem->getName() . '"' . ' value="' . self::getDefault( $section, - $plugin_name . '_' . $propertyItem->getName() + $plugin_name . '_' . $pitem->getName() ) . '"' . ' id="text_' . $plugin_name . '_' - . $propertyItem->getName() . '"' - . ($propertyItem->getSize() != null - ? ' size="' . $propertyItem->getSize() . '"' + . $pitem->getName() . '"' + . ($pitem->getSize() != null + ? ' size="' . $pitem->getSize() . '"' : '') - . ($propertyItem->getLen() != null - ? ' maxlength="' . $propertyItem->getLen() . '"' + . ($pitem->getLen() != null + ? ' maxlength="' . $pitem->getLen() . '"' : '') . ' />'; break; diff --git a/libraries/classes/Plugins/Export/ExportPdf.php b/libraries/classes/Plugins/Export/ExportPdf.php index 339ec656ee..b148679b36 100644 --- a/libraries/classes/Plugins/Export/ExportPdf.php +++ b/libraries/classes/Plugins/Export/ExportPdf.php @@ -229,9 +229,9 @@ class ExportPdf extends ExportPlugin 'dbAlias' => $db_alias, 'tableAlias' => $table_alias, 'aliases' => $aliases, + 'purpose' => __('Dumping data') ]; $pdf->setAttributes($attr); - $pdf->purpose = __('Dumping data'); $pdf->mysqlReport($sql_query); return true; diff --git a/libraries/classes/Plugins/Export/ExportSql.php b/libraries/classes/Plugins/Export/ExportSql.php index 5f673e1230..e40c039d53 100644 --- a/libraries/classes/Plugins/Export/ExportSql.php +++ b/libraries/classes/Plugins/Export/ExportSql.php @@ -27,7 +27,7 @@ use PhpMyAdmin\Properties\Options\Items\TextPropertyItem; use PhpMyAdmin\SqlParser\Components\CreateDefinition; use PhpMyAdmin\SqlParser\Context; use PhpMyAdmin\SqlParser\Parser; -use PhpMyAdmin\SqlParser\Statements\SelectStatement; +use PhpMyAdmin\SqlParser\Statements\CreateStatement; use PhpMyAdmin\SqlParser\Token; use PhpMyAdmin\Transformations; use PhpMyAdmin\Util; @@ -1640,7 +1640,7 @@ class ExportSql extends ExportPlugin /** * `CREATE TABLE` statement. * - * @var SelectStatement + * @var CreateStatement */ $statement = $parser->statements[0]; @@ -2714,7 +2714,7 @@ class ExportSql extends ExportPlugin /** * The statement that represents the query. * - * @var \PhpMyAdmin\SqlParser\Statements\CreateStatement $statement + * @var CreateStatement $statement */ $statement = $parser->statements[0]; @@ -2766,6 +2766,7 @@ class ExportSql extends ExportPlugin $flag = true; } + /** @var \PhpMyAdmin\SqlParser\Components\CreateDefinition $field */ foreach ($statement->fields as $field) { // Column name. if (!empty($field->type)) { diff --git a/libraries/classes/Plugins/Import/ImportShp.php b/libraries/classes/Plugins/Import/ImportShp.php index 2069004def..d01b4543e0 100644 --- a/libraries/classes/Plugins/Import/ImportShp.php +++ b/libraries/classes/Plugins/Import/ImportShp.php @@ -208,7 +208,7 @@ class ImportShp extends ImportPlugin $num_rows = count($shp->records); // If .dbf file is loaded, the number of extra data columns - $num_data_cols = isset($shp->DBFHeader) ? count($shp->DBFHeader) : 0; + $num_data_cols = ! is_null($shp->getDBFHeader()) ? count($shp->getDBFHeader()) : 0; $rows = []; $col_names = []; @@ -222,8 +222,8 @@ class ImportShp extends ImportPlugin . $gis_obj->getShape($record->SHPData) . "')"; } - if (isset($shp->DBFHeader)) { - foreach ($shp->DBFHeader as $c) { + if (! is_null($shp->getDBFHeader())) { + foreach ($shp->getDBFHeader() as $c) { $cell = trim($record->DBFData[$c[0]]); if (!strcmp($cell, '')) { @@ -250,7 +250,7 @@ class ImportShp extends ImportPlugin // if they are available $col_names[] = 'SPATIAL'; for ($n = 0; $n < $num_data_cols; $n++) { - $col_names[] = $shp->DBFHeader[$n][0]; + $col_names[] = $shp->getDBFHeader()[$n][0]; } // Set table name based on the number of tables diff --git a/libraries/classes/Plugins/Schema/RelationStats.php b/libraries/classes/Plugins/Schema/RelationStats.php index 4a172878f3..848fbf47f6 100644 --- a/libraries/classes/Plugins/Schema/RelationStats.php +++ b/libraries/classes/Plugins/Schema/RelationStats.php @@ -9,6 +9,8 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Schema; +use PhpMyAdmin\Plugins\Schema\TableStats; + /** * Relations preferences/statistics * @@ -97,8 +99,8 @@ abstract class RelationStats /** * Gets arrows coordinates * - * @param \PhpMyAdmin\Plugins\Schema\TableStats $table The table - * @param string $column The relation column name + * @param TableStats $table The table + * @param string $column The relation column name * * @return array Arrows coordinates * diff --git a/libraries/classes/Plugins/Schema/Svg/SvgRelationSchema.php b/libraries/classes/Plugins/Schema/Svg/SvgRelationSchema.php index e24542fa85..f497dd506b 100644 --- a/libraries/classes/Plugins/Schema/Svg/SvgRelationSchema.php +++ b/libraries/classes/Plugins/Schema/Svg/SvgRelationSchema.php @@ -178,7 +178,7 @@ class SvgRelationSchema extends ExportRelationSchema /** * Sets X and Y minimum and maximum for a table cell * - * @param \PhpMyAdmin\Plugins\Schema\TableStats $table The table + * @param TableStatsSvg $table The table * * @return void */ diff --git a/libraries/classes/Plugins/Transformations/Abs/Bool2TextTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/Bool2TextTransformationsPlugin.php index 4cb02dbc0f..696aa64139 100644 --- a/libraries/classes/Plugins/Transformations/Abs/Bool2TextTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/Bool2TextTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; +use stdClass; /** * Provides common methods for all of the Bool2Text transformations plugins. @@ -36,13 +37,13 @@ abstract class Bool2TextTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { $cfg = $GLOBALS['cfg']; $options = $this->getOptions($options, $cfg['DefaultTransformations']['Bool2Text']); diff --git a/libraries/classes/Plugins/Transformations/Abs/CodeMirrorEditorTransformationPlugin.php b/libraries/classes/Plugins/Transformations/Abs/CodeMirrorEditorTransformationPlugin.php index 1784f8975a..33c3ad850e 100644 --- a/libraries/classes/Plugins/Transformations/Abs/CodeMirrorEditorTransformationPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/CodeMirrorEditorTransformationPlugin.php @@ -10,6 +10,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\IOTransformationsPlugin; +use stdClass; /** * Provides common methods for all the CodeMirror syntax highlighted editors @@ -21,13 +22,13 @@ abstract class CodeMirrorEditorTransformationPlugin extends IOTransformationsPlu /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { return $buffer; } diff --git a/libraries/classes/Plugins/Transformations/Abs/DateFormatTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/DateFormatTransformationsPlugin.php index 730bcc917c..0fcc39a5bc 100644 --- a/libraries/classes/Plugins/Transformations/Abs/DateFormatTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/DateFormatTransformationsPlugin.php @@ -13,6 +13,7 @@ namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; use PhpMyAdmin\Sanitize; use PhpMyAdmin\Util; +use stdClass; /** * Provides common methods for all of the date format transformations plugins. @@ -44,13 +45,13 @@ abstract class DateFormatTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { $buffer = (string) $buffer; // possibly use a global transform and feed it with special options diff --git a/libraries/classes/Plugins/Transformations/Abs/DownloadTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/DownloadTransformationsPlugin.php index 8952393b3a..fff74f5072 100644 --- a/libraries/classes/Plugins/Transformations/Abs/DownloadTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/DownloadTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; +use stdClass; /** * Provides common methods for all of the download transformations plugins. @@ -38,13 +39,13 @@ abstract class DownloadTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { global $row, $fields_meta; diff --git a/libraries/classes/Plugins/Transformations/Abs/ExternalTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/ExternalTransformationsPlugin.php index 9259dad59b..8101d01398 100644 --- a/libraries/classes/Plugins/Transformations/Abs/ExternalTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/ExternalTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; +use stdClass; /** * Provides common methods for all of the external transformations plugins. @@ -65,13 +66,13 @@ abstract class ExternalTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { // possibly use a global transform and feed it with special options diff --git a/libraries/classes/Plugins/Transformations/Abs/FormattedTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/FormattedTransformationsPlugin.php index 2eb8a62936..b40ffe3f7f 100644 --- a/libraries/classes/Plugins/Transformations/Abs/FormattedTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/FormattedTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; +use stdClass; /** * Provides common methods for all of the formatted transformations plugins. @@ -36,13 +37,13 @@ abstract class FormattedTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { return '<iframe srcdoc="' . strtr($buffer, '"', '\'') diff --git a/libraries/classes/Plugins/Transformations/Abs/HexTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/HexTransformationsPlugin.php index 29b9ab894c..69ce92db3e 100644 --- a/libraries/classes/Plugins/Transformations/Abs/HexTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/HexTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; +use stdClass; /** * Provides common methods for all of the hex transformations plugins. @@ -36,13 +37,13 @@ abstract class HexTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { // possibly use a global transform and feed it with special options $cfg = $GLOBALS['cfg']; diff --git a/libraries/classes/Plugins/Transformations/Abs/ImageLinkTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/ImageLinkTransformationsPlugin.php index 3a754847de..efcfdc50db 100644 --- a/libraries/classes/Plugins/Transformations/Abs/ImageLinkTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/ImageLinkTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; +use stdClass; /** * Provides common methods for all of the link transformations plugins. @@ -34,13 +35,13 @@ abstract class ImageLinkTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { // must disable the page loader, see // https://wiki.phpmyadmin.net/pma/Page_loader#Bypassing_the_page_loader diff --git a/libraries/classes/Plugins/Transformations/Abs/ImageUploadTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/ImageUploadTransformationsPlugin.php index 152f614873..da124d0731 100644 --- a/libraries/classes/Plugins/Transformations/Abs/ImageUploadTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/ImageUploadTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\IOTransformationsPlugin; +use stdClass; /** * Provides common methods for all of the image upload transformations plugins. @@ -36,13 +37,13 @@ abstract class ImageUploadTransformationsPlugin extends IOTransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { return $buffer; } diff --git a/libraries/classes/Plugins/Transformations/Abs/InlineTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/InlineTransformationsPlugin.php index fd403cbd78..95ebcf2efd 100644 --- a/libraries/classes/Plugins/Transformations/Abs/InlineTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/InlineTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; +use stdClass; /** * Provides common methods for all of the inline transformations plugins. @@ -35,13 +36,13 @@ abstract class InlineTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { $cfg = $GLOBALS['cfg']; $options = $this->getOptions($options, $cfg['DefaultTransformations']['Inline']); diff --git a/libraries/classes/Plugins/Transformations/Abs/LongToIPv4TransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/LongToIPv4TransformationsPlugin.php index 29433b324a..814a53a864 100644 --- a/libraries/classes/Plugins/Transformations/Abs/LongToIPv4TransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/LongToIPv4TransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; +use stdClass; /** * Provides common methods for all of the long to IPv4 transformations plugins. @@ -35,13 +36,13 @@ abstract class LongToIPv4TransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { if ($buffer < 0 || $buffer > 4294967295) { return htmlspecialchars($buffer); diff --git a/libraries/classes/Plugins/Transformations/Abs/PreApPendTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/PreApPendTransformationsPlugin.php index 4034e978f0..3dbf9d8b3c 100644 --- a/libraries/classes/Plugins/Transformations/Abs/PreApPendTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/PreApPendTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; +use stdClass; /** * Provides common methods for all of the prepend/append transformations plugins. @@ -37,13 +38,13 @@ abstract class PreApPendTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { $cfg = $GLOBALS['cfg']; $options = $this->getOptions($options, $cfg['DefaultTransformations']['PreApPend']); diff --git a/libraries/classes/Plugins/Transformations/Abs/RegexValidationTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/RegexValidationTransformationsPlugin.php index 4307e8b1cf..d49ac7bb68 100644 --- a/libraries/classes/Plugins/Transformations/Abs/RegexValidationTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/RegexValidationTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\IOTransformationsPlugin; +use stdClass; /** * Provides common methods for all of the regex validation @@ -38,13 +39,13 @@ abstract class RegexValidationTransformationsPlugin extends IOTransformationsPlu /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { // reset properties of object $this->reset(); diff --git a/libraries/classes/Plugins/Transformations/Abs/SQLTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/SQLTransformationsPlugin.php index 586678d73c..deb79610ba 100644 --- a/libraries/classes/Plugins/Transformations/Abs/SQLTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/SQLTransformationsPlugin.php @@ -12,6 +12,7 @@ namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; use PhpMyAdmin\Util; +use stdClass; /** * Provides common methods for all of the SQL transformations plugins. @@ -35,13 +36,13 @@ abstract class SQLTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { // see PMA_highlightSQL() $result = Util::formatSql($buffer); diff --git a/libraries/classes/Plugins/Transformations/Abs/SubstringTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/SubstringTransformationsPlugin.php index 2cce2f2539..339cd7f359 100644 --- a/libraries/classes/Plugins/Transformations/Abs/SubstringTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/SubstringTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; +use stdClass; /** * Provides common methods for all of the substring transformations plugins. @@ -38,13 +39,13 @@ abstract class SubstringTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { // possibly use a global transform and feed it with special options diff --git a/libraries/classes/Plugins/Transformations/Abs/TextFileUploadTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/TextFileUploadTransformationsPlugin.php index 0d6e9bd40e..183a0cd164 100644 --- a/libraries/classes/Plugins/Transformations/Abs/TextFileUploadTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/TextFileUploadTransformationsPlugin.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\IOTransformationsPlugin; +use stdClass; /** * Provides common methods for all of the text file upload @@ -37,13 +38,13 @@ abstract class TextFileUploadTransformationsPlugin extends IOTransformationsPlug /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { return $buffer; } diff --git a/libraries/classes/Plugins/Transformations/Abs/TextImageLinkTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/TextImageLinkTransformationsPlugin.php index 504d58668b..e6291c2b06 100644 --- a/libraries/classes/Plugins/Transformations/Abs/TextImageLinkTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/TextImageLinkTransformationsPlugin.php @@ -12,6 +12,7 @@ namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; use PhpMyAdmin\Sanitize; +use stdClass; /** * Provides common methods for all of the image link transformations plugins. @@ -37,13 +38,13 @@ abstract class TextImageLinkTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { $cfg = $GLOBALS['cfg']; $options = $this->getOptions($options, $cfg['DefaultTransformations']['TextImageLink']); diff --git a/libraries/classes/Plugins/Transformations/Abs/TextLinkTransformationsPlugin.php b/libraries/classes/Plugins/Transformations/Abs/TextLinkTransformationsPlugin.php index a0a2070f95..e29ff2c778 100644 --- a/libraries/classes/Plugins/Transformations/Abs/TextLinkTransformationsPlugin.php +++ b/libraries/classes/Plugins/Transformations/Abs/TextLinkTransformationsPlugin.php @@ -12,6 +12,7 @@ namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\TransformationsPlugin; use PhpMyAdmin\Sanitize; +use stdClass; /** * Provides common methods for all of the link transformations plugins. @@ -37,13 +38,13 @@ abstract class TextLinkTransformationsPlugin extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { $cfg = $GLOBALS['cfg']; $options = $this->getOptions($options, $cfg['DefaultTransformations']['TextLink']); diff --git a/libraries/classes/Plugins/Transformations/Input/Text_Plain_Iptobinary.php b/libraries/classes/Plugins/Transformations/Input/Text_Plain_Iptobinary.php index f8a5a4938c..e406be13ad 100644 --- a/libraries/classes/Plugins/Transformations/Input/Text_Plain_Iptobinary.php +++ b/libraries/classes/Plugins/Transformations/Input/Text_Plain_Iptobinary.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Input; use PhpMyAdmin\Plugins\IOTransformationsPlugin; +use stdClass; /** * Handles the IPv4/IPv6 to binary transformation for text plain @@ -36,15 +37,15 @@ class Text_Plain_Iptobinary extends IOTransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed. a binary string containing - * an IP address, as returned from MySQL's INET6_ATON - * function - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed. a binary string containing + * an IP address, as returned from MySQL's INET6_ATON + * function + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string IP address */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { $val = @inet_pton($buffer); if ($val !== false) { diff --git a/libraries/classes/Plugins/Transformations/Output/Text_Plain_Binarytoip.php b/libraries/classes/Plugins/Transformations/Output/Text_Plain_Binarytoip.php index e5729fa2ba..666d4874fb 100644 --- a/libraries/classes/Plugins/Transformations/Output/Text_Plain_Binarytoip.php +++ b/libraries/classes/Plugins/Transformations/Output/Text_Plain_Binarytoip.php @@ -11,6 +11,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Output; use PhpMyAdmin\Plugins\TransformationsPlugin; +use stdClass; /** * Handles the binary to IPv4/IPv6 transformation for text plain @@ -37,15 +38,15 @@ class Text_Plain_Binarytoip extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed. a binary string containing - * an IP address, as returned from MySQL's INET6_ATON - * function - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed. a binary string containing + * an IP address, as returned from MySQL's INET6_ATON + * function + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string IP address */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { $length = strlen($buffer); if ($length == 4 || $length == 16) { diff --git a/libraries/classes/Plugins/Transformations/Output/Text_Plain_Json.php b/libraries/classes/Plugins/Transformations/Output/Text_Plain_Json.php index 7ba16f5b50..6074e9f78d 100644 --- a/libraries/classes/Plugins/Transformations/Output/Text_Plain_Json.php +++ b/libraries/classes/Plugins/Transformations/Output/Text_Plain_Json.php @@ -12,6 +12,7 @@ namespace PhpMyAdmin\Plugins\Transformations\Output; use PhpMyAdmin\Plugins\TransformationsPlugin; use PhpMyAdmin\Response; +use stdClass; /** * Handles the json transformation for text plain @@ -53,13 +54,13 @@ class Text_Plain_Json extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { return '<code class="json"><pre>' . "\n" . htmlspecialchars($buffer) . "\n" diff --git a/libraries/classes/Plugins/Transformations/Output/Text_Plain_Xml.php b/libraries/classes/Plugins/Transformations/Output/Text_Plain_Xml.php index c387856011..a57c1cd9c3 100644 --- a/libraries/classes/Plugins/Transformations/Output/Text_Plain_Xml.php +++ b/libraries/classes/Plugins/Transformations/Output/Text_Plain_Xml.php @@ -12,6 +12,7 @@ namespace PhpMyAdmin\Plugins\Transformations\Output; use PhpMyAdmin\Plugins\TransformationsPlugin; use PhpMyAdmin\Response; +use stdClass; /** * Handles the XML transformation for text plain @@ -53,13 +54,13 @@ class Text_Plain_Xml extends TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string */ - public function applyTransformation($buffer, array $options = [], $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { return '<code class="xml"><pre>' . "\n" . htmlspecialchars($buffer) . "\n" diff --git a/libraries/classes/Plugins/Transformations/TEMPLATE_ABSTRACT b/libraries/classes/Plugins/Transformations/TEMPLATE_ABSTRACT index 94a4b227ba..6a31d28fda 100644 --- a/libraries/classes/Plugins/Transformations/TEMPLATE_ABSTRACT +++ b/libraries/classes/Plugins/Transformations/TEMPLATE_ABSTRACT @@ -13,6 +13,7 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins\Transformations\Abs; use PhpMyAdmin\Plugins\IOTransformationsPlugin; +use stdClass; /** * Provides common methods for all of the [TransformationName] transformations plugins. @@ -37,13 +38,13 @@ abstract class [TransformationName]TransformationsPlugin /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * - * @return void + * @return string */ - public function applyTransformation($buffer, $options = array(), $meta = '') + public function applyTransformation($buffer, array $options = [], ?stdClass $meta = null) { // possibly use a global transform and feed it with special options diff --git a/libraries/classes/Plugins/TransformationsPlugin.php b/libraries/classes/Plugins/TransformationsPlugin.php index 9f9bdab8b6..c0ac040db4 100644 --- a/libraries/classes/Plugins/TransformationsPlugin.php +++ b/libraries/classes/Plugins/TransformationsPlugin.php @@ -9,6 +9,8 @@ declare(strict_types=1); namespace PhpMyAdmin\Plugins; +use stdClass; + /** * Provides a common interface that will have to * be implemented by all of the transformations plugins. @@ -32,16 +34,16 @@ abstract class TransformationsPlugin implements TransformationsInterface /** * Does the actual work of each specific transformations plugin. * - * @param string $buffer text to be transformed - * @param array $options transformation options - * @param string $meta meta information + * @param string $buffer text to be transformed + * @param array $options transformation options + * @param stdClass|null $meta meta information * * @return string the transformed text */ abstract public function applyTransformation( $buffer, array $options = [], - $meta = '' + ?stdClass $meta = null ); /** |