/** * Get most recent changes. * @return array|string */ public function get_changes() { $wpdb = $this->table->get_database()->get_wpdb(); $sql = "SELECT cs.id AS changeset_id, c.id AS change_id, date_and_time, " . "user_nicename, table_name, record_ident, column_name, old_value, " . "new_value, comment " . "FROM " . ChangeTracker::changes_name() . " c " . " JOIN " . ChangeTracker::changesets_name() . " cs ON (c.changeset_id=cs.id) " . " JOIN {$wpdb->prefix}users u ON (u.ID=cs.user_id) " . "WHERE table_name = %s AND record_ident = %s" . "ORDER BY date_and_time DESC, cs.id DESC " . "LIMIT 15 "; $params = array($this->table->get_name(), $this->get_primary_key()); return $wpdb->get_results($wpdb->prepare($sql, $params)); }
public static function generate_table_query(Table $table) { $query = sprintf('CREATE TABLE IF NOT EXISTS `%s`(', $table->get_name()); $fields_number = count($table->get_fields()); $i = 0; foreach ($table->get_fields() as $field) { if (++$i != $fields_number) { $query .= self::generate_field_query($field) . ','; } else { $query .= self::generate_field_query($field); } } $query .= ');'; return $query; }