aboutsummaryrefslogtreecommitdiff
path: root/database
diff options
context:
space:
mode:
Diffstat (limited to 'database')
-rw-r--r--database/factories/BookmarkCategoryFactory.php23
-rw-r--r--database/factories/BookmarkSiteFactory.php27
-rw-r--r--database/migrations/2024_01_31_204815_create_guestbook__bans_table.php29
-rw-r--r--database/migrations/2024_01_31_210227_populate_bookmark__categories_table.php34
-rw-r--r--database/migrations/2024_02_13_230402_create_bookmark__categories_table.php (renamed from database/migrations/2024_01_31_204730_create_bookmark__categories_table.php)4
-rw-r--r--database/migrations/2024_02_13_230457_create_bookmark__sites_table.php (renamed from database/migrations/2024_01_31_204742_create_bookmark__sites_table.php)18
-rw-r--r--database/migrations/2024_02_25_151527_create_guestbook__entries_table.php (renamed from database/migrations/2024_01_31_204820_create_guestbook__entries_table.php)13
-rw-r--r--database/seeders/BookmarkCategoriesTableSeeder.php30
-rw-r--r--database/seeders/DatabaseSeeder.php22
9 files changed, 98 insertions, 102 deletions
diff --git a/database/factories/BookmarkCategoryFactory.php b/database/factories/BookmarkCategoryFactory.php
new file mode 100644
index 0000000..ca49ce5
--- /dev/null
+++ b/database/factories/BookmarkCategoryFactory.php
@@ -0,0 +1,23 @@
+<?php
+
+namespace Database\Factories;
+
+use Illuminate\Database\Eloquent\Factories\Factory;
+
+/**
+ * @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\BookmarkCategory>
+ */
+class BookmarkCategoryFactory extends Factory
+{
+ /**
+ * Define the model's default state.
+ *
+ * @return array<string, mixed>
+ */
+ public function definition(): array
+ {
+ return [
+ 'name' => $this->faker->word,
+ ];
+ }
+}
diff --git a/database/factories/BookmarkSiteFactory.php b/database/factories/BookmarkSiteFactory.php
new file mode 100644
index 0000000..c77c011
--- /dev/null
+++ b/database/factories/BookmarkSiteFactory.php
@@ -0,0 +1,27 @@
+<?php
+
+namespace Database\Factories;
+
+use Illuminate\Database\Eloquent\Factories\Factory;
+use App\Models\BookmarkCategory;
+
+/**
+ * @extends \Illuminate\Database\Eloquent\Factories\Factory<\App\Models\BookmarkSite>
+ */
+class BookmarkSiteFactory extends Factory
+{
+ /**
+ * Define the model's default state.
+ *
+ * @return array<string, mixed>
+ */
+ public function definition(): array
+ {
+ return [
+ 'name' => $this->faker->name,
+ 'description' => $this->faker->sentence,
+ 'url' => $this->faker->url,
+ 'category' => BookmarkCategory::factory(),
+ ];
+ }
+}
diff --git a/database/migrations/2024_01_31_204815_create_guestbook__bans_table.php b/database/migrations/2024_01_31_204815_create_guestbook__bans_table.php
deleted file mode 100644
index 6f0a959..0000000
--- a/database/migrations/2024_01_31_204815_create_guestbook__bans_table.php
+++ /dev/null
@@ -1,29 +0,0 @@
-<?php
-
-use Illuminate\Database\Migrations\Migration;
-use Illuminate\Database\Schema\Blueprint;
-use Illuminate\Support\Facades\Schema;
-
-return new class extends Migration
-{
- /**
- * Run the migrations.
- */
- public function up(): void
- {
- Schema::create('guestbook__bans', function (Blueprint $table) {
- $table->increments('id');
- $table->string('ip_address', 40);
- $table->string('reason', 50);
- $table->timestamps();
- });
- }
-
- /**
- * Reverse the migrations.
- */
- public function down(): void
- {
- Schema::dropIfExists('guestbook__bans');
- }
-};
diff --git a/database/migrations/2024_01_31_210227_populate_bookmark__categories_table.php b/database/migrations/2024_01_31_210227_populate_bookmark__categories_table.php
deleted file mode 100644
index fb81e1f..0000000
--- a/database/migrations/2024_01_31_210227_populate_bookmark__categories_table.php
+++ /dev/null
@@ -1,34 +0,0 @@
-<?php
-
-use Illuminate\Database\Migrations\Migration;
-use Illuminate\Database\Schema\Blueprint;
-use Illuminate\Support\Facades\DB;
-use Illuminate\Support\Facades\Schema;
-
-return new class extends Migration
-{
- /**
- * Run the migrations.
- */
- public function up(): void
- {
- // Check if table exists and is empty
- if (Schema::hasTable('bookmark__categories') && DB::table('bookmark__categories')->count() == 0) {
- // Insert placeholder categories
- DB::table('bookmark__categories')->insert([
- ['name' => 'Friends\' Websites', 'priority' => 1],
- ['name' => 'Cool Projects', 'priority' => 2],
- ['name' => 'Other Cool Sites', 'priority' => 3],
- ['name' => 'Miscellaneous Resources', 'priority' => 4]
- ]);
- }
- }
-
- /**
- * Reverse the migrations.
- */
- public function down(): void
- {
- //
- }
-};
diff --git a/database/migrations/2024_01_31_204730_create_bookmark__categories_table.php b/database/migrations/2024_02_13_230402_create_bookmark__categories_table.php
index 68bf949..bb1799b 100644
--- a/database/migrations/2024_01_31_204730_create_bookmark__categories_table.php
+++ b/database/migrations/2024_02_13_230402_create_bookmark__categories_table.php
@@ -12,9 +12,9 @@ return new class extends Migration
public function up(): void
{
Schema::create('bookmark__categories', function (Blueprint $table) {
- $table->increments('id');
+ $table->id();
$table->string('name');
- $table->float('priority');
+ $table->unsignedBigInteger('priority')->nullable();
$table->timestamps();
});
}
diff --git a/database/migrations/2024_01_31_204742_create_bookmark__sites_table.php b/database/migrations/2024_02_13_230457_create_bookmark__sites_table.php
index 775c6bb..f016f43 100644
--- a/database/migrations/2024_01_31_204742_create_bookmark__sites_table.php
+++ b/database/migrations/2024_02_13_230457_create_bookmark__sites_table.php
@@ -12,13 +12,15 @@ return new class extends Migration
public function up(): void
{
Schema::create('bookmark__sites', function (Blueprint $table) {
- $table->increments('id');
- $table->string('name', 50);
- $table->string('description', 150);
- $table->string('url', 100);
- $table->float('priority');
- $table->integer('category_id')->unsigned();
- $table->foreign('category_id')->references('id')->on('bookmark__categories');
+ $table->id();
+ $table->string('name');
+ $table->text('description')->nullable();
+ $table->string('url');
+ $table->unsignedBigInteger('category');
+ $table->foreign('category')
+ ->references('id')
+ ->on('bookmark__categories')
+ ->onDelete('cascade');
$table->timestamps();
});
}
@@ -28,6 +30,6 @@ return new class extends Migration
*/
public function down(): void
{
- Schema::dropIfExists('bookmark__sites');
+ Schema::dropIfExists('bookmarks');
}
};
diff --git a/database/migrations/2024_01_31_204820_create_guestbook__entries_table.php b/database/migrations/2024_02_25_151527_create_guestbook__entries_table.php
index baaf862..f1b2a11 100644
--- a/database/migrations/2024_01_31_204820_create_guestbook__entries_table.php
+++ b/database/migrations/2024_02_25_151527_create_guestbook__entries_table.php
@@ -12,13 +12,12 @@ return new class extends Migration
public function up(): void
{
Schema::create('guestbook__entries', function (Blueprint $table) {
- $table->increments('id');
- $table->string('name', 255);
- $table->bigInteger('timestamp');
- $table->string('ip_address', 40);
- $table->string('agent', 2048)->default('Agent unavailable');
- $table->boolean('site_owner')->default(0);
- $table->string('message', 512);
+ $table->id();
+ $table->string('name');
+ $table->string('ip');
+ $table->string('agent');
+ $table->longText('message');
+ $table->boolean('admin');
$table->timestamps();
});
}
diff --git a/database/seeders/BookmarkCategoriesTableSeeder.php b/database/seeders/BookmarkCategoriesTableSeeder.php
new file mode 100644
index 0000000..5c8ea2f
--- /dev/null
+++ b/database/seeders/BookmarkCategoriesTableSeeder.php
@@ -0,0 +1,30 @@
+<?php
+
+namespace Database\Seeders;
+
+use App\Models\BookmarkCategory;
+use App\Models\BookmarkSite;
+use Illuminate\Database\Seeder;
+
+class BookmarkCategoriesTableSeeder extends Seeder
+{
+ /**
+ * Run the database seeds.
+ */
+ public function run(): void {
+// BookmarkCategory::factory()->count(5)->create()->each(function ($category) {
+// $category->sites()->saveMany(BookmarkSite::factory()->count(3)->make());
+// });
+ $category = new BookmarkCategory([
+ 'name' => 'cool people',
+ ]);
+ $category->save();
+ $site = new BookmarkSite([
+ 'name' => 'campos',
+ 'description' => 'Cool brazilian dude, does programming and stuff',
+ 'url' => 'https://campos02.me/',
+ 'category' => 1,
+ ]);
+ $site->save();
+ }
+}
diff --git a/database/seeders/DatabaseSeeder.php b/database/seeders/DatabaseSeeder.php
deleted file mode 100644
index a9f4519..0000000
--- a/database/seeders/DatabaseSeeder.php
+++ /dev/null
@@ -1,22 +0,0 @@
-<?php
-
-namespace Database\Seeders;
-
-// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
-use Illuminate\Database\Seeder;
-
-class DatabaseSeeder extends Seeder
-{
- /**
- * Seed the application's database.
- */
- public function run(): void
- {
- // \App\Models\User::factory(10)->create();
-
- // \App\Models\User::factory()->create([
- // 'name' => 'Test User',
- // 'email' => 'test@example.com',
- // ]);
- }
-}