public static function duplicate($id) { global $wpdb; $values = self::getOne($id); $new_values = array(); $new_values['item_key'] = FrmAppHelper::get_unique_key('', $wpdb->prefix . 'frm_items', 'item_key'); $new_values['name'] = $values->name; $new_values['is_draft'] = $values->is_draft; $new_values['user_id'] = $new_values['updated_by'] = (int) $values->user_id; $new_values['form_id'] = $values->form_id ? (int) $values->form_id : null; $new_values['created_at'] = $new_values['updated_at'] = current_time('mysql', 1); $query_results = $wpdb->insert($wpdb->prefix . 'frm_items', $new_values); if (!$query_results) { return false; } $entry_id = $wpdb->insert_id; global $frm_vars; if (!isset($frm_vars['saved_entries'])) { $frm_vars['saved_entries'] = array(); } $frm_vars['saved_entries'][] = (int) $entry_id; FrmEntryMeta::duplicate_entry_metas($id, $entry_id); self::clear_cache(); do_action('frm_after_duplicate_entry', $entry_id, $new_values['form_id'], array('old_id' => $id)); return $entry_id; }