public static function update($id, $values) { global $wpdb, $frm_vars; if (isset($frm_vars['saved_entries']) && is_array($frm_vars['saved_entries']) && in_array((int) $id, (array) $frm_vars['saved_entries'])) { return; } $values = apply_filters('frm_pre_update_entry', $values, $id); $user_ID = get_current_user_id(); $item_name = self::get_new_entry_name($values); $new_values = array('name' => $item_name, 'form_id' => isset($values['form_id']) ? (int) $values['form_id'] : null, 'is_draft' => isset($values['frm_saving_draft']) && $values['frm_saving_draft'] == 1 || isset($values['is_draft']) && $values['is_draft'] == 1 ? 1 : 0, 'updated_at' => current_time('mysql', 1), 'updated_by' => isset($values['updated_by']) ? $values['updated_by'] : $user_ID); if (isset($values['post_id'])) { $new_values['post_id'] = (int) $values['post_id']; } if (isset($values['item_key'])) { $new_values['item_key'] = FrmAppHelper::get_unique_key($values['item_key'], $wpdb->prefix . 'frm_items', 'item_key', $id); } if (isset($values['parent_item_id'])) { $new_values['parent_item_id'] = (int) $values['parent_item_id']; } if (isset($values['frm_user_id']) && is_numeric($values['frm_user_id'])) { $new_values['user_id'] = $values['frm_user_id']; } $new_values = apply_filters('frm_update_entry', $new_values, $id); $query_results = $wpdb->update($wpdb->prefix . 'frm_items', $new_values, compact('id')); if ($query_results) { self::clear_cache(); } if (!isset($frm_vars['saved_entries'])) { $frm_vars['saved_entries'] = array(); } $frm_vars['saved_entries'][] = (int) $id; if (isset($values['item_meta'])) { FrmEntryMeta::update_entry_metas($id, $values['item_meta']); } do_action('frm_after_update_entry', $id, $new_values['form_id']); do_action('frm_after_update_entry_' . $new_values['form_id'], $id); return $query_results; }
/** * Perform some actions right after updating an entry * * @since 2.0.16 * @param boolean|int $query_results * @param int $id * @param array $values * @param array $new_values */ private static function after_update_entry($query_results, $id, $values, $new_values) { if ($query_results) { self::clear_cache(); } global $frm_vars; if (!isset($frm_vars['saved_entries'])) { $frm_vars['saved_entries'] = array(); } $frm_vars['saved_entries'][] = (int) $id; if (isset($values['item_meta'])) { FrmEntryMeta::update_entry_metas($id, $values['item_meta']); } do_action('frm_after_update_entry', $id, $new_values['form_id']); do_action('frm_after_update_entry_' . $new_values['form_id'], $id); }