| @@ -5,12 +5,9 @@ | ||
| 5 | 5 | |
| 6 | 6 | class FrmEntryMeta { |
| 7 | 7 | |
| 8 | 8 | /** |
| 9 | - * @param int $entry_id | |
| 10 | - * @param int $field_id | |
| 11 | - * @param string $meta_key usually set to '' as this parameter is no longer used. | |
| 12 | - * @param mixed $meta_value | |
| 9 | + * @param string $meta_key | |
| 13 | 10 | */ |
| 14 | 11 | public static function add_entry_meta( $entry_id, $field_id, $meta_key, $meta_value ) { |
| 15 | 12 | global $wpdb; |
| 16 | 13 | |
| @@ -159,25 +156,16 @@ | ||
| 159 | 156 | ); |
| 160 | 157 | FrmDb::get_where_clause_and_values( $where ); |
| 161 | 158 | |
| 162 | 159 | // Delete any leftovers |
| 163 | - $wpdb->query( $wpdb->prepare( 'DELETE FROM ' . $wpdb->prefix . 'frm_item_metas ' . $where['where'], $where['values'] ) ); // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared | |
| 160 | + $wpdb->query( $wpdb->prepare( 'DELETE FROM ' . $wpdb->prefix . 'frm_item_metas ' . $where['where'], $where['values'] ) ); // WPCS: unprepared SQL ok. | |
| 164 | 161 | self::clear_cache(); |
| 165 | 162 | } |
| 166 | 163 | |
| 167 | 164 | public static function duplicate_entry_metas( $old_id, $new_id ) { |
| 168 | 165 | $metas = self::get_entry_meta_info( $old_id ); |
| 169 | - | |
| 170 | - /** | |
| 171 | - * Allows changing entry duplicate values before save. | |
| 172 | - * | |
| 173 | - * @since 5.4.4 | |
| 174 | - * | |
| 175 | - * @param array $metas The list of entry meta values. | |
| 176 | - */ | |
| 177 | - $metas = apply_filters( 'frm_before_duplicate_entry_values', $metas ); | |
| 178 | 166 | foreach ( $metas as $meta ) { |
| 179 | - self::add_entry_meta( $new_id, $meta->field_id, '', $meta->meta_value ); | |
| 167 | + self::add_entry_meta( $new_id, $meta->field_id, null, $meta->meta_value ); | |
| 180 | 168 | unset( $meta ); |
| 181 | 169 | } |
| 182 | 170 | self::clear_cache(); |
| 183 | 171 | } |
| @@ -459,9 +447,9 @@ | ||
| 459 | 447 | break; |
| 460 | 448 | case 'day': |
| 461 | 449 | $value = '%' . $value . '%'; |
| 462 | 450 | } |
| 463 | - $where .= $wpdb->prepare( ' meta_value ' . $operator . ' %s and', $value ); // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared | |
| 451 | + $where .= $wpdb->prepare( ' meta_value ' . $operator . ' %s and', $value ); // WPCS: unprepared SQL ok. | |
| 464 | 452 | } |
| 465 | 453 | $where .= $wpdb->prepare( ' field_id=%d', $field_id ); |
| 466 | 454 | $query = 'SELECT DISTINCT item_id FROM ' . $wpdb->prefix . 'frm_item_metas' . FrmDb::prepend_and_or_where( ' WHERE ', $where ); |
| 467 | 455 | } else { |
| @@ -467,12 +455,12 @@ | ||
| 467 | 455 | } else { |
| 468 | 456 | if ( $operator == 'LIKE' ) { |
| 469 | 457 | $search = '%' . $search . '%'; |
| 470 | 458 | } |
| 471 | - $query = $wpdb->prepare( "SELECT DISTINCT item_id FROM {$wpdb->prefix}frm_item_metas WHERE meta_value {$operator} %s and field_id = %d", $search, $field_id ); // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared, WordPress.DB.PreparedSQL.InterpolatedNotPrepared | |
| 459 | + $query = $wpdb->prepare( "SELECT DISTINCT item_id FROM {$wpdb->prefix}frm_item_metas WHERE meta_value {$operator} %s and field_id = %d", $search, $field_id ); // WPCS: unprepared SQL ok. | |
| 472 | 460 | } |
| 473 | 461 | |
| 474 | - $results = $wpdb->get_col( $query, 0 ); // phpcs:ignore WordPress.DB.PreparedSQL.NotPrepared | |
| 462 | + $results = $wpdb->get_col( $query, 0 ); // WPCS: unprepared SQL ok. | |
| 475 | 463 | FrmDb::set_cache( $cache_key, $results, 'frm_entry' ); |
| 476 | 464 | |
| 477 | 465 | return $results; |
| 478 | 466 | } |