| @@ -33,8 +33,9 @@ | ||
| 33 | 33 | } |
| 34 | 34 | |
| 35 | 35 | /** |
| 36 | 36 | * @param mixed $settings |
| 37 | + * | |
| 37 | 38 | * @return void |
| 38 | 39 | */ |
| 39 | 40 | public function set_default_options( $settings = false ) { |
| 40 | 41 | $default_settings = $this->default_options(); |
| @@ -59,8 +60,11 @@ | ||
| 59 | 60 | } |
| 60 | 61 | } |
| 61 | 62 | } |
| 62 | 63 | |
| 64 | + /** | |
| 65 | + * @return object | |
| 66 | + */ | |
| 63 | 67 | public function get_options() { |
| 64 | 68 | $settings = get_option( 'frm_' . $this->param() . '_options' ); |
| 65 | 69 | |
| 66 | 70 | if ( is_object( $settings ) ) { |
| @@ -77,8 +81,9 @@ | ||
| 77 | 81 | } |
| 78 | 82 | |
| 79 | 83 | /** |
| 80 | 84 | * @param array $params |
| 85 | + * | |
| 81 | 86 | * @return void |
| 82 | 87 | */ |
| 83 | 88 | public function update( $params ) { |
| 84 | 89 | $settings = $this->default_options(); |
| @@ -83,11 +88,21 @@ | ||
| 83 | 88 | public function update( $params ) { |
| 84 | 89 | $settings = $this->default_options(); |
| 85 | 90 | |
| 86 | 91 | foreach ( $settings as $setting => $default ) { |
| 87 | - if ( isset( $params[ 'frm_' . $this->param() . '_' . $setting ] ) ) { | |
| 88 | - $this->settings->{$setting} = trim( sanitize_text_field( $params[ 'frm_' . $this->param() . '_' . $setting ] ) ); | |
| 92 | + if ( ! isset( $params[ 'frm_' . $this->param() . '_' . $setting ] ) ) { | |
| 93 | + continue; | |
| 89 | 94 | } |
| 95 | + | |
| 96 | + $value = $params[ 'frm_' . $this->param() . '_' . $setting ]; | |
| 97 | + | |
| 98 | + // Clean up any accumulated backslashes from previous bug. | |
| 99 | + // @see https://github.com/Strategy11/formidable-pro/issues/6294 | |
| 100 | + if ( 'processing_message' === $setting ) { | |
| 101 | + $value = str_replace( '\\', '', $value ); | |
| 102 | + } | |
| 103 | + | |
| 104 | + $this->settings->{$setting} = sanitize_text_field( $value ); | |
| 90 | 105 | } |
| 91 | 106 | |
| 92 | 107 | $this->settings->test_mode = isset( $params['frm_strp_test_mode'] ) ? absint( $params['frm_strp_test_mode'] ) : 0; |
| 93 | 108 | } |