From b878740f80ce7cfe2a0bc53956e3f7e4e0aa2f78 Mon Sep 17 00:00:00 2001 From: Igor Scheller Date: Sun, 10 Nov 2019 21:30:26 +0100 Subject: News: Bug fixes, cleanup, comments & formatting Use more magically available methods and properties Fixed atom feed and stats not using the new model --- .../2019_10_15_000000_create_news_table.php | 43 ++++++++++++++-------- 1 file changed, 28 insertions(+), 15 deletions(-) (limited to 'db') diff --git a/db/migrations/2019_10_15_000000_create_news_table.php b/db/migrations/2019_10_15_000000_create_news_table.php index d6b93265..c87972ef 100644 --- a/db/migrations/2019_10_15_000000_create_news_table.php +++ b/db/migrations/2019_10_15_000000_create_news_table.php @@ -1,10 +1,12 @@ schema->hasTable('News'); if ($hasPreviousNewsTable) { - // rename because some SQL DBMS handle identifiers case insensitive + // Rename because some SQL DBMS handle identifiers case insensitive $this->schema->rename('News', 'PreviousNews'); } @@ -47,7 +50,7 @@ class CreateNewsTable extends Migration */ public function down(): void { - // rename because some SQL DBMS handle identifiers case insensitive + // Rename as some SQL DBMS handle identifiers case insensitive $this->schema->rename('news', 'new_news'); $this->createPreviousNewsTable(); @@ -59,9 +62,13 @@ class CreateNewsTable extends Migration 'ID', 'unsignedInteger' ); + $this->schema->drop('new_news'); } + /** + * @return void + */ private function createNewNewsTable(): void { $this->schema->create('news', function (Blueprint $table) { @@ -74,17 +81,20 @@ class CreateNewsTable extends Migration }); } + /** + * @return void + */ private function copyPreviousToNewNewsTable(): void { + $connection = $this->schema->getConnection(); /** @var stdClass[] $previousNewsRecords */ - $previousNewsRecords = $this->schema - ->getConnection() + $previousNewsRecords = $connection ->table('PreviousNews') ->get(); foreach ($previousNewsRecords as $previousNews) { $date = Carbon::createFromTimestamp($previousNews->Datum); - $this->schema->getConnection()->table('news')->insert([ + $connection->table('news')->insert([ 'id' => $previousNews->ID, 'title' => $previousNews->Betreff, 'text' => $previousNews->Text, @@ -96,6 +106,9 @@ class CreateNewsTable extends Migration } } + /** + * @return void + */ private function createPreviousNewsTable(): void { $this->schema->create('News', function (Blueprint $table) { @@ -104,19 +117,19 @@ class CreateNewsTable extends Migration $table->string('Betreff', 150) ->default(''); $table->text('Text'); - $table->boolean('Treffen'); - $table->unsignedInteger('UID'); - $table->foreign('UID') - ->references('id') - ->on('users'); + $this->references($table, 'users', 'UID'); + $table->boolean('Treffen')->default(false); }); } + /** + * @return void + */ private function copyNewToPreviousNewsTable(): void { - /** @var stdClass[] $newsRecords */ - $newsRecords = $this->schema - ->getConnection() + $connection = $this->schema->getConnection(); + /** @var Collection[]|stdClass[] $newsRecords */ + $newsRecords = $connection ->table('new_news') ->get(); @@ -124,7 +137,7 @@ class CreateNewsTable extends Migration $date = Carbon::createFromFormat('Y-m-d H:i:s', $newsRecord->created_at) ->getTimestamp(); - $this->schema->getConnection()->table('News')->insert([ + $connection->table('News')->insert([ 'ID' => $newsRecord->id, 'Datum' => $date, 'Betreff' => $newsRecord->title, -- cgit v1.2.3-54-g00ecf