PluginProbe
Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More / 5.4
Formidable Forms – WordPress Form Builder for Contact Forms, Calculators, Quizzes & More v5.4
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/FrmEntry.php +8 -34 6.35.4 View file →
@@ -250,30 +250,19 @@
250 250
251 251 return $query_results;
252 252 }
253 253
254 - /**
255 - * Delete an entry.
256 - *
257 - * @param string|int $id
258 - * @return bool True on success, false if nothing was deleted.
259 - */
260 254 public static function destroy( $id ) {
261 255 global $wpdb;
262 256 $id = (int) $id;
263 257
264 - $entry = self::getOne( $id, true ); // Item meta is required for conditional logic in actions with 'delete' events.
258 + $entry = self::getOne( $id );
265 259 if ( ! $entry ) {
266 260 $result = false;
261 +
267 262 return $result;
268 263 }
269 264
270 - /**
271 - * Trigger an action to run custom logic before the entry is deleted.
272 - *
273 - * @param int $id The id of the entry that was destroyed.
274 - * @param stdClass $entry The entry object.
275 - */
276 265 do_action( 'frm_before_destroy_entry', $id, $entry );
277 266
278 267 $wpdb->query( $wpdb->prepare( 'DELETE FROM ' . $wpdb->prefix . 'frm_item_metas WHERE item_id=%d', $id ) );
279 268 $result = $wpdb->query( $wpdb->prepare( 'DELETE FROM ' . $wpdb->prefix . 'frm_items WHERE id=%d', $id ) );
@@ -279,19 +268,8 @@
279 268 $result = $wpdb->query( $wpdb->prepare( 'DELETE FROM ' . $wpdb->prefix . 'frm_items WHERE id=%d', $id ) );
280 269
281 270 self::clear_cache();
282 271
283 - /**
284 - * Trigger an action to run custom logic after the entry is deleted.
285 - * Use this hook if you need to update caching after an entry is deleted.
286 - *
287 - * @since 5.4.1
288 - *
289 - * @param int $id The id of the entry that was destroyed.
290 - * @param stdClass $entry The entry object.
291 - */
292 - do_action( 'frm_after_destroy_entry', $id, $entry );
293 -
294 272 return $result;
295 273 }
296 274
297 275 public static function update_form( $id, $value, $form_id ) {
@@ -414,9 +392,9 @@
414 392 array(
415 393 'item_id' => $entry->id,
416 394 'field_id !' => 0,
417 395 ),
418 - 'field_id, meta_value, field_key, item_id, f.type'
396 + 'field_id, meta_value, field_key, item_id'
419 397 );
420 398
421 399 $entry->metas = array();
422 400
@@ -421,11 +399,10 @@
421 399 $entry->metas = array();
422 400
423 401 $include_key = apply_filters( 'frm_include_meta_keys', false, array( 'form_id' => $entry->form_id ) );
424 402 foreach ( $metas as $meta_val ) {
425 - FrmFieldsHelper::prepare_field_value( $meta_val->meta_value, $meta_val->type );
426 -
427 403 if ( $meta_val->item_id == $entry->id ) {
404 + FrmAppHelper::unserialize_or_decode( $meta_val->meta_value );
428 405 $entry->metas[ $meta_val->field_id ] = $meta_val->meta_value;
429 406 if ( $include_key ) {
430 407 $entry->metas[ $meta_val->field_key ] = $entry->metas[ $meta_val->field_id ];
431 408 }
@@ -436,8 +413,9 @@
436 413 if ( ! isset( $entry->metas[ $meta_val->field_id ] ) ) {
437 414 $entry->metas[ $meta_val->field_id ] = array();
438 415 }
439 416
417 + FrmAppHelper::unserialize_or_decode( $meta_val->meta_value );
440 418 $entry->metas[ $meta_val->field_id ][] = $meta_val->meta_value;
441 419
442 420 unset( $meta_val );
443 421 }
@@ -478,9 +456,9 @@
478 456 $cache_key = FrmAppHelper::maybe_json_encode( $where ) . $order_by . $limit . $inc_form;
479 457 $entries = wp_cache_get( $cache_key, 'frm_entry' );
480 458
481 459 if ( false === $entries ) {
482 - $fields = 'it.id, it.item_key, it.name, it.ip, it.form_id, it.post_id, it.user_id, it.parent_item_id, it.updated_by, it.created_at, it.updated_at, it.is_draft, it.description';
460 + $fields = 'it.id, it.item_key, it.name, it.ip, it.form_id, it.post_id, it.user_id, it.parent_item_id, it.updated_by, it.created_at, it.updated_at, it.is_draft';
483 461 $table = $wpdb->prefix . 'frm_items it ';
484 462
485 463 if ( $inc_form ) {
486 464 $fields = 'it.*, fr.name as form_name,fr.form_key as form_key';
@@ -517,13 +495,9 @@
517 495 } else {
518 496 $meta_where['item_id'] = array_keys( $entries );
519 497 }
520 498
521 - $metas = FrmDb::get_results(
522 - $wpdb->prefix . 'frm_item_metas it LEFT OUTER JOIN ' . $wpdb->prefix . 'frm_fields fi ON it.field_id = fi.id',
523 - $meta_where,
524 - 'item_id, meta_value, field_id, field_key, form_id, fi.type'
525 - );
499 + $metas = FrmDb::get_results( $wpdb->prefix . 'frm_item_metas it LEFT OUTER JOIN ' . $wpdb->prefix . 'frm_fields fi ON (it.field_id = fi.id)', $meta_where, 'item_id, meta_value, field_id, field_key, form_id' );
526 500
527 501 unset( $meta_where );
528 502
529 503 if ( ! $metas ) {
@@ -539,9 +513,9 @@
539 513 if ( ! isset( $entries[ $meta_val->item_id ]->metas ) ) {
540 514 $entries[ $meta_val->item_id ]->metas = array();
541 515 }
542 516
543 - FrmFieldsHelper::prepare_field_value( $meta_val->meta_value, $meta_val->type );
517 + FrmAppHelper::unserialize_or_decode( $meta_val->meta_value );
544 518 $entries[ $meta_val->item_id ]->metas[ $meta_val->field_id ] = $meta_val->meta_value;
545 519 unset( $m_key, $meta_val );
546 520 }
547 521