PluginProbe
Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More / trunk
Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More vtrunk
6.35 6.34 6.33.1 6.33 6.32.1 6.32 6.31 6.25 6.25.1 6.26 6.26.1 6.27 6.28 6.29 6.3 6.3.1 6.3.2 6.30 6.4 6.4.1 6.4.2 6.5 6.5.1 6.5.2 6.5.3 All 141 releases
← All changes | classes/models/FrmInbox.php +26 -20 6.27 → trunk View file →
@@ -53,9 +53,9 @@
53 53
54 54 /**
55 55 * @since 4.05
56 56 *
57 - * @param array|false $filter
57 + * @param false|string $filter
58 58 *
59 59 * @return array
60 60 */
61 61 public function get_messages( $filter = false ) {
@@ -111,10 +111,10 @@
111 111 * @return void
112 112 */
113 113 public function add_message( $message ) {
114 114 if ( ! is_array( $message ) || ! isset( $message['key'] ) ) {
115 - // if the API response is invalid, $message may not be an array.
116 - // if there are no messages from the API, it is returning a "No Entries Found" item with no key, so check for a key as well.
115 + // If the API response is invalid, $message may not be an array.
116 + // If there are no messages from the API, it is returning a "No Entries Found" item with no key, so check for a key as well.
117 117 return;
118 118 }
119 119
120 120 if ( isset( self::$messages[ $message['key'] ] ) && ! isset( $message['force'] ) ) {
@@ -172,12 +172,14 @@
172 172 foreach ( self::$messages as $t => $message ) {
173 173 $read = ! empty( $message['read'] ) && isset( $message['read'][ get_current_user_id() ] ) && $message['read'][ get_current_user_id() ] < strtotime( '-1 month' );
174 174 $dismissed = ! empty( $message['dismissed'] ) && isset( $message['dismissed'][ get_current_user_id() ] ) && $message['dismissed'][ get_current_user_id() ] < strtotime( '-1 week' ); // phpcs:ignore SlevomatCodingStandard.Files.LineLength.LineTooLong
175 175
176 - if ( $read || $dismissed || ! $this->within_valid_timeframe( $message ) ) {
177 - unset( self::$messages[ $t ] );
178 - $removed = true;
176 + if ( ! $read && ! $dismissed && $this->within_valid_timeframe( $message ) ) {
177 + continue;
179 178 }
179 +
180 + unset( self::$messages[ $t ] );
181 + $removed = true;
180 182 }
181 183
182 184 if ( $removed ) {
183 185 $this->update_list();
@@ -195,9 +197,9 @@
195 197
196 198 foreach ( $messages as $k => $message ) {
197 199 $dismissed = isset( $message['dismissed'] ) && isset( $message['dismissed'][ $user_id ] );
198 200
199 - if ( empty( $k ) || ! $this->within_valid_timeframe( $message ) || ( $type === 'dismissed' ) !== $dismissed ) {
201 + if ( ! $k || ! $this->within_valid_timeframe( $message ) || ( $type === 'dismissed' ) !== $dismissed ) {
200 202 unset( $messages[ $k ] );
201 203 } elseif ( ! $this->is_for_user( $message ) ) {
202 204 unset( $messages[ $k ] );
203 205 }
@@ -228,9 +230,9 @@
228 230 *
229 231 * @return bool
230 232 */
231 233 private function has_started( $message ) {
232 - return empty( $message['starts'] ) ? true : $message['starts'] <= time();
234 + return ! empty( $message['starts'] ) ? $message['starts'] <= time() : true;
233 235 }
234 236
235 237 /**
236 238 * @param array $message
@@ -294,12 +296,14 @@
294 296 */
295 297 public function mark_unread( $key ) {
296 298 $is_read = isset( self::$messages[ $key ] ) && isset( self::$messages[ $key ]['read'] ) && isset( self::$messages[ $key ]['read'][ get_current_user_id() ] );
297 299
298 - if ( $is_read ) {
299 - unset( self::$messages[ $key ]['read'][ get_current_user_id() ] );
300 - $this->update_list();
300 + if ( ! $is_read ) {
301 + return;
301 302 }
303 +
304 + unset( self::$messages[ $key ]['read'][ get_current_user_id() ] );
305 + $this->update_list();
302 306 }
303 307
304 308 /**
305 309 * @param string $key
@@ -395,12 +399,14 @@
395 399 *
396 400 * @return void
397 401 */
398 402 public function remove( $key ) {
399 - if ( isset( self::$messages[ $key ] ) ) {
400 - unset( self::$messages[ $key ] );
401 - $this->update_list();
403 + if ( ! isset( self::$messages[ $key ] ) ) {
404 + return;
402 405 }
406 +
407 + unset( self::$messages[ $key ] );
408 + $this->update_list();
403 409 }
404 410
405 411 /**
406 412 * @return void
@@ -405,9 +411,9 @@
405 411 /**
406 412 * @return void
407 413 */
408 414 private function update_list() {
409 - update_option( $this->option, self::$messages, 'no' );
415 + update_option( $this->option, self::$messages, false );
410 416 }
411 417
412 418 /**
413 419 * Show a banner message if one is available.
@@ -414,9 +420,9 @@
414 420 *
415 421 * @return bool True if a banner is available and shown.
416 422 */
417 423 public static function maybe_show_banner() {
418 - if ( empty( self::$banner_messages ) ) {
424 + if ( ! self::$banner_messages ) {
419 425 return false;
420 426 }
421 427
422 428 $message = end( self::$banner_messages );
@@ -446,15 +452,15 @@
446 452 *
447 453 * @return string
448 454 */
449 455 function ( $matches ) {
450 - $url = $matches[2];
451 - $parts = parse_url( $url );
456 + $url = $matches[2];
452 457
453 458 if ( '#' === $url ) {
454 459 return 'href="#"';
455 460 }
456 461
462 + $parts = parse_url( $url );
457 463 $query = array();
458 464
459 465 if ( isset( $parts['query'] ) ) {
460 466 parse_str( $parts['query'], $query );
@@ -461,9 +467,9 @@
461 467 }
462 468
463 469 $query['utm_medium'] = 'banner';
464 470 $parts['query'] = http_build_query( $query );
465 - return 'href="' . $parts['scheme'] . '://' . $parts['host'] . $parts['path'] . '?' . $parts['query'] . '"';
471 + return 'href="' . esc_url( $parts['scheme'] . '://' . $parts['host'] . $parts['path'] . '?' . $parts['query'] ) . '"';
466 472 },
467 473 $cta
468 474 );
469 475 }
@@ -474,9 +480,9 @@
474 480 public static function maybe_disable_screen_options() {
475 481 self::$banner_messages = self::get_banner_messages();
476 482
477 483 if ( self::$banner_messages ) {
478 - // disable screen options tab when displaying banner messages because it gets in the way of the banner.
484 + // Disable screen options tab when displaying banner messages because it gets in the way of the banner.
479 485 add_filter( 'screen_options_show_screen', '__return_false' );
480 486 }
481 487 }
482 488