PluginProbe
Elementor Website Builder – more than just a page builder / 4.0.0-dev2
Elementor Website Builder – more than just a page builder v4.0.0-dev2
4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 4.1.0-beta1 4.1.0-dev1 4.0.7 All 451 releases
← All changes | modules/interactions/validation.php +12 -2 4.2.0-dev24.0.0-dev2 View file →
@@ -16,9 +16,9 @@
16 16 private $max_number_of_interactions = 5;
17 17
18 18 private const VALID_EFFECTS = [ 'fade', 'slide', 'scale', 'custom' ];
19 19 private const VALID_TYPES = [ 'in', 'out' ];
20 - private const VALID_DIRECTIONS = [ '', 'left', 'right', 'top', 'bottom', 'top-left', 'top-right', 'bottom-left', 'bottom-right' ];
20 + private const VALID_DIRECTIONS = [ '', 'left', 'right', 'top', 'bottom' ];
21 21 private const VALID_REPEAT_MODES = [ '', 'loop', 'times' ];
22 22
23 23 public function sanitize( $document ) {
24 24 return $this->sanitize_document_data( $document );
@@ -238,9 +238,19 @@
238 238 if ( ! isset( $data['config'] ) || ! is_array( $data['config'] ) ) {
239 239 return false;
240 240 }
241 241
242 - $config_value = $data['config']['value'];
242 + $config = $data['config'];
243 +
244 + if ( ! isset( $config['$$type'] ) || 'config' !== $config['$$type'] ) {
245 + return false;
246 + }
247 +
248 + if ( ! isset( $config['value'] ) || ! is_array( $config['value'] ) ) {
249 + return false;
250 + }
251 +
252 + $config_value = $config['value'];
243 253
244 254 if ( isset( $config_value['replay'] ) && ! $this->is_valid_boolean_prop( $config_value, 'replay' ) ) {
245 255 return false;
246 256 }