18 | */
19 | public function definition(): array
20 | {
21 | return [
22 | 'user_id' => User::factory(),
23 | 'notification_id' => Notification::factory(),
24 | 'status' => $this->faker->randomElement(['unread']),
25 | ];
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/database/factories/WaitListFactory.php:
--------------------------------------------------------------------------------
1 | $this->faker->name,
16 | 'email' => $this->faker->unique()->safeEmail,
17 | ];
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/database/migrations/2014_10_12_100000_create_password_reset_tokens_table.php:
--------------------------------------------------------------------------------
1 | string('email')->primary();
16 | $table->string('token');
17 | $table->timestamp('created_at')->nullable();
18 | });
19 | }
20 |
21 | /**
22 | * Reverse the migrations.
23 | */
24 | public function down(): void
25 | {
26 | Schema::dropIfExists('password_reset_tokens');
27 | }
28 | };
29 |
--------------------------------------------------------------------------------
/database/migrations/2019_08_19_000000_create_failed_jobs_table.php:
--------------------------------------------------------------------------------
1 | id();
16 | $table->string('uuid')->unique();
17 | $table->text('connection');
18 | $table->text('queue');
19 | $table->longText('payload');
20 | $table->longText('exception');
21 | $table->timestamp('failed_at')->useCurrent();
22 | });
23 | }
24 |
25 | /**
26 | * Reverse the migrations.
27 | */
28 | public function down(): void
29 | {
30 | Schema::dropIfExists('failed_jobs');
31 | }
32 | };
33 |
--------------------------------------------------------------------------------
/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php:
--------------------------------------------------------------------------------
1 | id();
16 | $table->morphs('tokenable');
17 | $table->string('name');
18 | $table->string('token', 64)->unique();
19 | $table->text('abilities')->nullable();
20 | $table->timestamp('last_used_at')->nullable();
21 | $table->timestamp('expires_at')->nullable();
22 | $table->timestamps();
23 | });
24 | }
25 |
26 | /**
27 | * Reverse the migrations.
28 | */
29 | public function down(): void
30 | {
31 | Schema::dropIfExists('personal_access_tokens');
32 | }
33 | };
34 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_18_200840_create_products_table.php:
--------------------------------------------------------------------------------
1 | uuid('product_id')->primary();
17 | $table->foreignUuid('user_id')->constrained()->onDelete('cascade')->onUpdate('cascade');
18 | $table->string('name');
19 | $table->text('description');
20 | $table->timestamps();
21 | });
22 | }
23 |
24 | /**
25 | * Reverse the migrations.
26 | */
27 | public function down(): void
28 | {
29 | Schema::dropIfExists('products');
30 | }
31 | };
32 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_18_202000_create_organisation_users_table.php:
--------------------------------------------------------------------------------
1 | uuid('organisation_user_id')->primary();
16 | $table->foreignUuid('org_id')->references('org_id')->on('organisations')->constrained()->onDelete('cascade')->onUpdate('cascade');
17 | $table->foreignUuid('user_id')->constrained()->onDelete('cascade')->onUpdate('cascade');
18 | });
19 | }
20 |
21 | /**
22 | * Reverse the migrations.
23 | */
24 | public function down(): void
25 | {
26 | Schema::dropIfExists('organisation_user');
27 | }
28 | };
29 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_20_121051_create_articles_table.php:
--------------------------------------------------------------------------------
1 | uuid('article_id')->primary();
13 | $table->foreignUuid('user_id')->constrained('users')->onDelete('cascade');
14 | $table->string('title')->unique();
15 | $table->text('content');
16 | $table->timestamps();
17 | });
18 | }
19 |
20 | public function down()
21 | {
22 | Schema::dropIfExists('articles');
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_20_131306_create_subscription_plans_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('name'); //basic or premium
17 | $table->decimal('price'); //stored as kobo
18 | $table->string('duration'); //monthly or yearly
19 | $table->text('features')->nullable();
20 | $table->text('description');
21 | $table->timestamps();
22 | });
23 | }
24 |
25 | /**
26 | * Reverse the migrations.
27 | */
28 | public function down(): void
29 | {
30 | Schema::dropIfExists('subscription_plans');
31 | }
32 | };
33 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_20_141031_create_features_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('feature');
17 | $table->string('description')->nullable();
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('features');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_20_142941_features_subscription_plans_table.php:
--------------------------------------------------------------------------------
1 | foreignUuid('feature_id')->constrained('features');
16 | $table->foreignUuid('subscription_plan_id')->constrained('subscription_plans');
17 | $table->integer('status');
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('features_subscription_plans');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_20_220105_create_categories_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
13 | $table->string('name');
14 | $table->text('description')->nullable();
15 | $table->string('slug')->unique();
16 | $table->timestamps();
17 | });
18 | }
19 |
20 | public function down()
21 | {
22 | Schema::dropIfExists('categories');
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_21_034529_create_jobs_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('title');
17 | $table->text('description');
18 | $table->string('location');
19 | $table->string('job_type')->nullable();
20 | $table->string('company')->nullable();
21 | $table->timestamps();
22 | });
23 | }
24 |
25 | /**
26 | * Reverse the migrations.
27 | */
28 | public function down(): void
29 | {
30 | Schema::dropIfExists('jobs');
31 | }
32 | };
33 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_21_042346_create_blogs_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->text('content');
17 | $table->string('imageUrl');
18 | $table->string('tags');
19 | $table->string('author');
20 | $table->timestamps();
21 | });
22 | }
23 |
24 | /**
25 | * Reverse the migrations.
26 | */
27 | public function down(): void
28 | {
29 | Schema::dropIfExists('blogs');
30 | }
31 | };
32 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_21_100956_add_columns_to_blogs_table.php:
--------------------------------------------------------------------------------
1 | string('title');
16 | });
17 | }
18 |
19 | /**
20 | * Reverse the migrations.
21 | */
22 | public function down(): void
23 | {
24 | Schema::table('blogs', function (Blueprint $table) {
25 | $table->dropColumn('title');
26 | });
27 | }
28 | };
29 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_21_115606_modify_content_length_in_blogs_table.php:
--------------------------------------------------------------------------------
1 | text('content')->change();
16 | });
17 | }
18 |
19 | /**
20 | * Reverse the migrations.
21 | */
22 | public function down(): void
23 | {
24 | Schema::table('blogs', function (Blueprint $table) {
25 | $table->text('content')->change();
26 | });
27 | }
28 | };
29 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_21_121534_create_permissions_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('name');
17 | $table->timestamp('deleted_at')->nullable();
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('permissions');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_21_121928_create_roles_permissions_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->foreignUuid('role_id')->constrained('roles', 'id')->cascadeOnDelete()->cascadeOnUpdate();
17 | $table->foreignUuid('permission_id')->constrained('permissions', 'id')->cascadeOnDelete()
18 | ->cascadeOnUpdate();
19 | $table->timestamps();
20 | });
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | */
26 | public function down(): void
27 | {
28 | Schema::dropIfExists('roles_permissions');
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_21_123053_create_users_permissions_table.php:
--------------------------------------------------------------------------------
1 | id();
16 | $table->foreignUuid('user_id')->constrained('users', 'id')->cascadeOnDelete()->cascadeOnUpdate();
17 | $table->foreignUuid('permission_id')->constrained('permissions', 'id')->cascadeOnDelete()->cascadeOnUpdate();
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('users_permissions');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_21_123058_create_users_roles_table.php:
--------------------------------------------------------------------------------
1 | id();
16 | $table->foreignUuid('user_id')->constrained('users', 'id')->cascadeOnDelete()->cascadeOnUpdate();
17 | $table->foreignUuid('role_id')->constrained('roles', 'id')->cascadeOnDelete()->cascadeOnUpdate();
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('users_roles');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_21_164302_create_job_users_table.php:
--------------------------------------------------------------------------------
1 | uuid('job_user_id')->primary();
16 | $table->foreignUuid('job_id')->references('id')->on('jobs')->constrained()->onDelete('cascade')->onUpdate('cascade');
17 | $table->foreignUuid('user_id')->constrained()->onDelete('cascade')->onUpdate('cascade');
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('job_users');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_21_201715_add_soft_delete_to_blogs_table.php:
--------------------------------------------------------------------------------
1 | softDeletes();
16 | });
17 | }
18 |
19 | /**
20 | * Reverse the migrations.
21 | */
22 | public function down(): void
23 | {
24 | Schema::table('blogs', function (Blueprint $table) {
25 | //
26 | });
27 | }
28 | };
29 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_23_091923_create_invitations_table.php:
--------------------------------------------------------------------------------
1 | uuid()->primary();
16 | $table->foreignUuid('org_id')->constrained('organisations', 'org_id')->cascadeOnDelete();
17 | $table->string('email')->nullable();
18 | $table->string('link')->unique();
19 | $table->timestamp('expires_at');
20 | $table->timestamps();
21 | });
22 | }
23 |
24 | /**
25 | * Reverse the migrations.
26 | */
27 | public function down(): void
28 | {
29 | Schema::dropIfExists('invitations');
30 | }
31 | };
32 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_23_171710_create_preferences_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->foreignUuid('user_id')->constrained('users', 'id')->cascadeOnDelete()->cascadeOnUpdate();
17 | $table->string('name');
18 | $table->string('value');
19 | $table->timestamps();
20 | });
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | */
26 | public function down(): void
27 | {
28 | Schema::dropIfExists('preferences');
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_24_011913_remove_column_from_blogs.php:
--------------------------------------------------------------------------------
1 | dropColumn(['tags', 'imageUrl']);
16 | });
17 | }
18 |
19 | /**
20 | * Reverse the migrations.
21 | */
22 | public function down(): void
23 | {
24 | Schema::table('blogs', function (Blueprint $table) {
25 | $table->string('tags')->default('default_value');
26 | $table->string('imageUrl')->default('default_value');
27 | });
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_24_012000_add_blog_tags_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('name');
17 | $table->string('blog_id');
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('blog_tags');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_24_014449_create_blog_images_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('blog_id');
17 | $table->string('image_url');
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('blog_images');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_24_113926_create_category_products_table.php:
--------------------------------------------------------------------------------
1 | uuid('category_product_id')->primary();
16 | $table->foreignUuid('category_id')->references('id')->on('categories')->constrained()->onDelete('cascade')->onUpdate('cascade');
17 | $table->foreignUuid('product_id')->constrained('products', 'product_id')->onDelete('cascade')->onUpdate('cascade');
18 | });
19 | }
20 |
21 | /**
22 | * Reverse the migrations.
23 | */
24 | public function down(): void
25 | {
26 | Schema::dropIfExists('category_product');
27 | }
28 | };
29 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_24_115628_create_blog_categories_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('name');
17 | $table->string('description')->nullable();
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('blog_categories');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_24_121551_create_billing_plans_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
17 | $table->string('name');
18 | $table->decimal('price', 8, 2);
19 | $table->json('features'); // Store features as JSON
20 | $table->text('description')->nullable();
21 | $table->timestamps(); });
22 | }
23 |
24 | /**
25 | * Reverse the migrations.
26 | */
27 | public function down(): void
28 | {
29 | Schema::dropIfExists('billing_plans');
30 | }
31 | };
32 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_24_122951_create_organisation_billing_plans_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
17 | $table->timestamps();
18 | $table->foreignUuid('organisation_id')->references('org_id')->on('organisations')->onDelete('cascade')->cascadeOnUpdate();
19 | $table->foreignUuid('billing_plan_id')->references('id')->on('billing_plans')->onDelete('cascade')->cascadeOnUpdate();
20 | });
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | */
26 | public function down(): void
27 | {
28 | Schema::dropIfExists('organisation_billing_plans');
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_24_143448_add_indexes_to_blogs_table.php:
--------------------------------------------------------------------------------
1 | index('author');
13 | $table->index('title');
14 | $table->index('created_at');
15 | });
16 | }
17 |
18 | public function down()
19 | {
20 | Schema::table('blogs', function (Blueprint $table) {
21 | $table->dropIndex(['author']);
22 | $table->dropIndex(['title']);
23 | $table->dropIndex(['created_at']);
24 | });
25 | }
26 | };
27 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_28_111524_create_cookie_preferences_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->foreignUuid('user_id')->constrained('users', 'id')->cascadeOnDelete()->cascadeOnUpdate();
17 | $table->json('preferences');
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('cookie_preferences');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_28_112025_create_job_applications_table.php:
--------------------------------------------------------------------------------
1 | id();
16 | $table->foreignUuid('job_id')->constrained('jobs', 'id')->cascadeOnDelete()->cascadeOnUpdate();
17 | $table->foreignUuid('user_id')->constrained('users', 'id')->cascadeOnDelete()->cascadeOnUpdate();
18 | $table->text('cv');
19 | $table->text('cover_letter');
20 | $table->timestamps();
21 | });
22 | }
23 |
24 | /**
25 | * Reverse the migrations.
26 | */
27 | public function down(): void
28 | {
29 | Schema::dropIfExists('job_applications');
30 | }
31 | };
32 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_28_130448_create_wait_lists_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('name');
17 | $table->string('email');
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('wait_lists');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_28_130545_create_squeeze_lists_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('name');
17 | $table->string('email');
18 | $table->string('company');
19 | $table->timestamps();
20 | });
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | */
26 | public function down(): void
27 | {
28 | Schema::dropIfExists('squeeze_lists');
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_28_130753_create_squeeze_pages_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('headline');
17 | $table->string('sub_headline');
18 | $table->string('hero_image');
19 | $table->string('content');
20 | $table->timestamps();
21 | });
22 | }
23 |
24 | /**
25 | * Reverse the migrations.
26 | */
27 | public function down(): void
28 | {
29 | Schema::dropIfExists('squeeze_pages');
30 | }
31 | };
32 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_28_170337_create_email_templates_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('title');
17 | $table->text('template');
18 | $table->boolean('status');
19 | $table->timestamps();
20 | });
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | */
26 | public function down(): void
27 | {
28 | Schema::dropIfExists('email_templates');
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_28_170700_create_notifications_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->enum('type', ['email', 'sms', 'push']);
17 | $table->string('title');
18 | $table->text('message');
19 | $table->timestamps();
20 | });
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | */
26 | public function down(): void
27 | {
28 | Schema::dropIfExists('notifications');
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_28_170956_create_user_notifications_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->foreignUuid('user_id')->constrained('users', 'id')->cascadeOnDelete()->cascadeOnUpdate();
17 | $table->foreignUuid('notification_id')->constrained('notifications', 'id')->cascadeOnDelete()->cascadeOnUpdate();
18 | $table->enum('status', ['sent', 'read', 'unread']);
19 | $table->timestamps();
20 | });
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | */
26 | public function down(): void
27 | {
28 | Schema::dropIfExists('user_notifications');
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_29_142639_alter_and_add_more_column_to_products.php:
--------------------------------------------------------------------------------
1 | string('quantity')->nullable()->change();
16 | $table->boolean('is_archived')->default(false);
17 | });
18 | }
19 |
20 | /**
21 | * Reverse the migrations.
22 | */
23 | public function down(): void
24 | {
25 | Schema::table('products', function (Blueprint $table) {
26 | $table->string('quantity')->change();
27 | $table->dropColumn('is_archived');
28 | });
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_29_142853_create_size_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->enum('size', ['small', 'standard', 'large']);
17 | $table->timestamps();
18 | });
19 | }
20 |
21 | /**
22 | * Reverse the migrations.
23 | */
24 | public function down(): void
25 | {
26 | Schema::dropIfExists('sizes');
27 | }
28 | };
29 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_30_105146_alter_product_add_orgid.php:
--------------------------------------------------------------------------------
1 | foreignUuid('org_id')->nullable()->references('org_id')->on('organisations')->constrained()->onDelete('cascade')->onUpdate('cascade');
17 | });
18 | }
19 |
20 | /**
21 | * Reverse the migrations.
22 | */
23 | public function down(): void
24 | {
25 | //
26 | Schema::table('products', function (Blueprint $table) {
27 | $table->dropColumn('org_id');
28 | });
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_30_114205_create_faqs_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('question');
17 | $table->text('answer');
18 | $table->boolean('status')->default(1);
19 | $table->timestamps();
20 | });
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | */
26 | public function down(): void
27 | {
28 | Schema::dropIfExists('faqs');
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_07_31_215939_create_inquiries_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('name');
17 | $table->string('email');
18 | $table->text('message');
19 | $table->boolean('status')->default(1);
20 | $table->timestamps();
21 | });
22 | }
23 |
24 | /**
25 | * Reverse the migrations.
26 | */
27 | public function down(): void
28 | {
29 | Schema::dropIfExists('inquiries');
30 | }
31 | };
32 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_01_051659_update_payments_table_add_transaction_id.php:
--------------------------------------------------------------------------------
1 | string('transaction_id')->nullable();
16 | $table->dropColumn('stripe_payment_id');
17 | $table->dropColumn('payment_method');
18 |
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::table('payments', function (Blueprint $table) {
28 | $table->dropColumn('transaction_id');
29 | $table->string('stripe_payment_id');
30 | $table->string('payment_method');
31 |
32 | });
33 | }
34 | };
35 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_01_085815_create_email_requests_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->foreignUuid('template_id')->constrained('email_templates')->onDelete('cascade');
17 | $table->string('subject');
18 | $table->string('recipient');
19 | $table->jsonb('variables')->nullable();
20 | $table->string('status');
21 | $table->timestamps();
22 | });
23 | }
24 |
25 | /**
26 | * Reverse the migrations.
27 | */
28 | public function down(): void
29 | {
30 | Schema::dropIfExists('email_requests');
31 | }
32 | };
33 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_01_143905_alter_columns_on_squeezes_table.php:
--------------------------------------------------------------------------------
1 | string('first_name')->nullable()->change();
16 | $table->string('last_name')->nullable()->change();
17 | });
18 | }
19 |
20 | /**
21 | * Reverse the migrations.
22 | */
23 | public function down(): void
24 | {
25 | Schema::table('squeezes', function (Blueprint $table) {
26 | $table->dropColumn('first_name');
27 | $table->dropColumn('last_name');
28 | });
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_02_114218_add_soft_delete_to_users_table.php:
--------------------------------------------------------------------------------
1 | softDeletes();
16 | });
17 | }
18 |
19 | /**
20 | * Reverse the migrations.
21 | */
22 | public function down(): void
23 | {
24 | Schema::table('users', function (Blueprint $table) {
25 | $table->dropSoftDeletes();
26 | });
27 | }
28 | };
29 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_02_142433_create_timezones_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('name');
17 | $table->string('offset');
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('timezones');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_02_142500_create_regions_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('name');
17 | $table->timestamps();
18 | });
19 | }
20 |
21 | /**
22 | * Reverse the migrations.
23 | */
24 | public function down(): void
25 | {
26 | Schema::dropIfExists('regions');
27 | }
28 | };
29 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_02_142513_create_languages_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('name');
17 | $table->timestamps();
18 | });
19 | }
20 |
21 | /**
22 | * Reverse the migrations.
23 | */
24 | public function down(): void
25 | {
26 | // Schema::dropIfExists('languages');
27 | if (Schema::hasTable('languages')) {
28 | Schema::dropIfExists('languages');
29 | }
30 | }
31 | };
32 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_06_085955_add_org_id_to_user_subscriptions.php:
--------------------------------------------------------------------------------
1 | foreignUuid('org_id')->constrained('organisations', 'org_id')->cascadeOnDelete()->cascadeOnUpdate();
16 | });
17 | }
18 |
19 |
20 | /**
21 | * Reverse the migrations.
22 | */
23 | public function down(): void
24 | {
25 |
26 | Schema::table('user_subscriptions', function (Blueprint $table) {
27 | $table->dropForeign(['org_id']);
28 | $table->dropColumn('org_id');
29 | });
30 | }
31 | };
32 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_06_184118_create_quests_table.php:
--------------------------------------------------------------------------------
1 | id();
16 | $table->string('title');
17 | $table->text('description');
18 | $table->timestamps();
19 | });
20 |
21 | }
22 |
23 | /**
24 | * Reverse the migrations.
25 | */
26 | public function down(): void
27 | {
28 | Schema::dropIfExists('quests');
29 | }
30 | };
31 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_06_184558_create_quest_messages_table.php:
--------------------------------------------------------------------------------
1 | id();
13 | $table->foreignId('quest_id')->constrained()->onDelete('cascade');
14 | $table->string('key');
15 | $table->text('question');
16 | $table->text('answer');
17 | $table->integer('sequence');
18 | $table->timestamps();
19 | });
20 | }
21 |
22 | public function down()
23 | {
24 | Schema::dropIfExists('quest_messages');
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_07_131402_alter_timezones_table_rename_and_add_columns.php:
--------------------------------------------------------------------------------
1 | renameColumn('name', 'timezone');
16 | $table->renameColumn('offset', 'gmtoffset');
17 | $table->string('description');
18 | });
19 | }
20 |
21 | public function down(): void
22 | {
23 | Schema::table('timezones', function (Blueprint $table) {
24 | $table->dropColumn('timezone');
25 | $table->dropColumn('gmtoffset');
26 | $table->dropColumn('description');
27 | });
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_07_213218_alter_languages_table.php:
--------------------------------------------------------------------------------
1 | string('language')->unique()->after('id');
13 | $table->string('code')->unique()->after('language');
14 | $table->text('description')->nullable()->after('code');
15 | $table->dropColumn('name');
16 | });
17 | }
18 |
19 | public function down()
20 | {
21 | Schema::table('languages', function (Blueprint $table) {
22 | $table->dropUnique(['language']);
23 | $table->dropUnique(['code']);
24 | $table->dropColumn(['language', 'code', 'description']);
25 | $table->string('name')->after('id');
26 | });
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_08_083933_update_faqs_table.php:
--------------------------------------------------------------------------------
1 | string('category')->nullable();
16 | });
17 | }
18 |
19 | /**
20 | * Reverse the migrations.
21 | */
22 | public function down(): void
23 | {
24 | Schema::table('faqs', function (Blueprint $table) {
25 | $table->dropColumn('category');
26 | });
27 | }
28 | };
29 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_08_115517_create_newsletter_subscriptions_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->text('email');
17 | $table->timestamps();
18 | $table->softDeletes();
19 | });
20 | }
21 |
22 | /**
23 | * Reverse the migrations.
24 | */
25 | public function down(): void
26 | {
27 | Schema::dropIfExists('newsletter_subscriptions');
28 | }
29 | };
30 |
--------------------------------------------------------------------------------
/database/migrations/2024_08_08_155430_create_squeeze_pages_user_table.php:
--------------------------------------------------------------------------------
1 | uuid('id')->primary();
16 | $table->string('firstname');
17 | $table->string('lastname');
18 | $table->string('email');
19 | $table->string('title');
20 | $table->timestamps();
21 | });
22 | }
23 |
24 | /**
25 | * Reverse the migrations.
26 | */
27 | public function down(): void
28 | {
29 | Schema::dropIfExists('squeeze_pages_user');
30 | }
31 | };
32 |
--------------------------------------------------------------------------------
/database/migrations/2025_03_01_052032_add_magic_link_columns_to_users_table.php:
--------------------------------------------------------------------------------
1 | string('magic_link_token', 100)->nullable()->after('remember_token');
17 | $table->timestamp('magic_link_expires_at')->nullable()->after('magic_link_token');
18 | });
19 | }
20 |
21 | /**
22 | * Reverse the migrations.
23 | */
24 | public function down(): void
25 | {
26 | Schema::table('users', function (Blueprint $table) {
27 | $table->dropColumn('magic_link_token');
28 | $table->dropColumn('magic_link_expires_at');
29 | });
30 | }
31 | }
--------------------------------------------------------------------------------
/database/seeders/CommentSeeder.php:
--------------------------------------------------------------------------------
1 | count(3)->create();
19 | User::factory()->count(3)->create();
20 | EmailRequest::factory()->count(3)->create();
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/database/seeders/EmailTemplateSeeder.php:
--------------------------------------------------------------------------------
1 | count(3)->create();
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/database/seeders/InvitationSeeder.php:
--------------------------------------------------------------------------------
1 | create();
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/database/seeders/OrderSeeder.php:
--------------------------------------------------------------------------------
1 | count(10)->create();
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/database/seeders/OrganisationBillingPlanSeeder.php:
--------------------------------------------------------------------------------
1 | create();
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/database/seeders/PaymentSeeder.php:
--------------------------------------------------------------------------------
1 | $permission]);
17 | }
18 | }
19 | }
--------------------------------------------------------------------------------
/database/seeders/PreferenceSeeder.php:
--------------------------------------------------------------------------------
1 | count(5)->create();
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/database/seeders/ProductVariantSeeder.php:
--------------------------------------------------------------------------------
1 | each(function ($product) {
18 | ProductVariant::factory()->count(3)->create([
19 | 'product_id' => $product->product_id,
20 | ]);
21 | });
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/database/seeders/ProductVariantSizeSeeder.php:
--------------------------------------------------------------------------------
1 | each(function ($variant) {
18 | ProductVariantSize::factory()->count(2)->create([
19 | 'product_variant_id' => $variant->id,
20 | ]);
21 | });
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/database/seeders/ProfileSeeder.php:
--------------------------------------------------------------------------------
1 | insert([
15 | 'title' => 'The Burning Building',
16 | 'description' => 'Welcome! A fire has broken out in an apartment building in your neighborhood. A baby is trapped inside and needs your help. Your mission: Go into the burning building and rescue the baby. Every second counts! To succeed, you must learn to understand and speak the words that would serve as your tool.',
17 | 'created_at' => now(),
18 | 'updated_at' => now(),
19 | ]);
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/database/seeders/RegionSeeder.php:
--------------------------------------------------------------------------------
1 | count(10)->create(); // Creates 10 regions
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/database/seeders/RoleSeeder.php:
--------------------------------------------------------------------------------
1 | create();
23 | foreach ($roles as $role) {
24 | $role = Role::firstOrCreate(['name' => $role[0], 'description' => $role[1], 'org_id' => $organisation->org_id]);
25 | Permission::inRandomOrder()->first()->roles()->attach($role->id);
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/database/seeders/SizeSeeder.php:
--------------------------------------------------------------------------------
1 | count(10)->create();
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/database/seeders/SqueezeListSeeder.php:
--------------------------------------------------------------------------------
1 | count(15)->create();
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/database/seeders/TimezoneSeeder.php:
--------------------------------------------------------------------------------
1 | getOffset(new \DateTime());
18 | $description = "Description for {$timezone}";
19 |
20 | Timezone::create([
21 | 'timezone' => $timezone,
22 | 'gmtoffset' => $gmtoffset,
23 | 'description' => $description,
24 | ]);
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/database/seeders/UserJobSeeder.php:
--------------------------------------------------------------------------------
1 | count(10)->create();
18 |
19 | foreach ($users as $user) {
20 | $jobs = Job::factory()->count(5)->create();
21 | foreach ($jobs as $job) {
22 | $user->jobs()->attach($job->id);
23 | }
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/database/seeders/UserNotificationSeeder.php:
--------------------------------------------------------------------------------
1 | count(5)->create();
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/database/seeders/WaitListSeeder.php:
--------------------------------------------------------------------------------
1 |
2 |
3 | Options -MultiViews -Indexes
4 |
5 |
6 | RewriteEngine On
7 |
8 | # Handle Authorization Header
9 | RewriteCond %{HTTP:Authorization} .
10 | RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
11 |
12 | # Redirect Trailing Slashes If Not A Folder...
13 | RewriteCond %{REQUEST_FILENAME} !-d
14 | RewriteCond %{REQUEST_URI} (.+)/$
15 | RewriteRule ^ %1 [L,R=301]
16 |
17 | # Send Requests To Front Controller...
18 | RewriteCond %{REQUEST_FILENAME} !-d
19 | RewriteCond %{REQUEST_FILENAME} !-f
20 | RewriteRule ^ index.php [L]
21 |
22 |
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/favicon.ico
--------------------------------------------------------------------------------
/public/robots.txt:
--------------------------------------------------------------------------------
1 | User-agent: *
2 | Disallow:
3 |
--------------------------------------------------------------------------------
/public/uploads/1722977096.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1722977096.jpg
--------------------------------------------------------------------------------
/public/uploads/1722977574.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1722977574.jpg
--------------------------------------------------------------------------------
/public/uploads/1722978653.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1722978653.jpg
--------------------------------------------------------------------------------
/public/uploads/1722978978.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1722978978.jpg
--------------------------------------------------------------------------------
/public/uploads/1722984249.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1722984249.jpg
--------------------------------------------------------------------------------
/public/uploads/1722986116.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1722986116.jpg
--------------------------------------------------------------------------------
/public/uploads/1722986951.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1722986951.jpg
--------------------------------------------------------------------------------
/public/uploads/1722987043.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1722987043.jpg
--------------------------------------------------------------------------------
/public/uploads/1722989699.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1722989699.jpg
--------------------------------------------------------------------------------
/public/uploads/1722989897.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1722989897.jpg
--------------------------------------------------------------------------------
/public/uploads/1722990809.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1722990809.jpg
--------------------------------------------------------------------------------
/public/uploads/1723005492.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723005492.jpg
--------------------------------------------------------------------------------
/public/uploads/1723005641.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723005641.jpg
--------------------------------------------------------------------------------
/public/uploads/1723005793.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723005793.jpg
--------------------------------------------------------------------------------
/public/uploads/1723006364.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723006364.jpg
--------------------------------------------------------------------------------
/public/uploads/1723006536.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723006536.jpg
--------------------------------------------------------------------------------
/public/uploads/1723006580.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723006580.jpg
--------------------------------------------------------------------------------
/public/uploads/1723007660.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723007660.jpg
--------------------------------------------------------------------------------
/public/uploads/1723037656.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723037656.jpg
--------------------------------------------------------------------------------
/public/uploads/1723038561.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723038561.jpg
--------------------------------------------------------------------------------
/public/uploads/1723041952.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723041952.jpg
--------------------------------------------------------------------------------
/public/uploads/1723050163.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723050163.jpg
--------------------------------------------------------------------------------
/public/uploads/1723050675.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723050675.jpg
--------------------------------------------------------------------------------
/public/uploads/1723051293.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723051293.jpg
--------------------------------------------------------------------------------
/public/uploads/1723052951.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723052951.jpg
--------------------------------------------------------------------------------
/public/uploads/1723053078.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723053078.jpg
--------------------------------------------------------------------------------
/public/uploads/1723053336.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723053336.jpg
--------------------------------------------------------------------------------
/public/uploads/1723063093.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723063093.jpg
--------------------------------------------------------------------------------
/public/uploads/1723065375.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723065375.jpg
--------------------------------------------------------------------------------
/public/uploads/1723065604.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723065604.jpg
--------------------------------------------------------------------------------
/public/uploads/1723066655.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723066655.jpg
--------------------------------------------------------------------------------
/public/uploads/1723066919.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723066919.jpg
--------------------------------------------------------------------------------
/public/uploads/1723068692.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723068692.jpg
--------------------------------------------------------------------------------
/public/uploads/1723076130.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723076130.jpg
--------------------------------------------------------------------------------
/public/uploads/1723077805.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723077805.jpg
--------------------------------------------------------------------------------
/public/uploads/1723099428.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723099428.jpg
--------------------------------------------------------------------------------
/public/uploads/1723107462.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723107462.jpg
--------------------------------------------------------------------------------
/public/uploads/1723108399.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723108399.jpg
--------------------------------------------------------------------------------
/public/uploads/1723108979.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723108979.jpg
--------------------------------------------------------------------------------
/public/uploads/1723109232.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723109232.jpg
--------------------------------------------------------------------------------
/public/uploads/1723122054.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723122054.jpg
--------------------------------------------------------------------------------
/public/uploads/1723124275.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723124275.jpg
--------------------------------------------------------------------------------
/public/uploads/1723126010.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723126010.jpg
--------------------------------------------------------------------------------
/public/uploads/1723128635.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723128635.jpg
--------------------------------------------------------------------------------
/public/uploads/1723134494.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723134494.jpg
--------------------------------------------------------------------------------
/public/uploads/1723135020.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723135020.jpg
--------------------------------------------------------------------------------
/public/uploads/1723135061.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723135061.jpg
--------------------------------------------------------------------------------
/public/uploads/1723135410.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723135410.jpg
--------------------------------------------------------------------------------
/public/uploads/1723137107.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723137107.jpg
--------------------------------------------------------------------------------
/public/uploads/1723144500.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723144500.jpg
--------------------------------------------------------------------------------
/public/uploads/1723194360.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1723194360.jpg
--------------------------------------------------------------------------------
/public/uploads/1724158752.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1724158752.jpg
--------------------------------------------------------------------------------
/public/uploads/1724159454.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1724159454.jpg
--------------------------------------------------------------------------------
/public/uploads/1724219479.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1724219479.jpg
--------------------------------------------------------------------------------
/public/uploads/1724226709.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1724226709.jpg
--------------------------------------------------------------------------------
/public/uploads/1724228441.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/1724228441.jpg
--------------------------------------------------------------------------------
/public/uploads/product_images/1724191282.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724191282.jpg
--------------------------------------------------------------------------------
/public/uploads/product_images/1724191434.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724191434.jpg
--------------------------------------------------------------------------------
/public/uploads/product_images/1724192878.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724192878.png
--------------------------------------------------------------------------------
/public/uploads/product_images/1724192919.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724192919.png
--------------------------------------------------------------------------------
/public/uploads/product_images/1724193022.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724193022.png
--------------------------------------------------------------------------------
/public/uploads/product_images/1724220452.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724220452.jpg
--------------------------------------------------------------------------------
/public/uploads/product_images/1724220476.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724220476.jpg
--------------------------------------------------------------------------------
/public/uploads/product_images/1724220589.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724220589.jpg
--------------------------------------------------------------------------------
/public/uploads/product_images/1724220628.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724220628.jpg
--------------------------------------------------------------------------------
/public/uploads/product_images/1724220685.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724220685.jpg
--------------------------------------------------------------------------------
/public/uploads/product_images/1724220790.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724220790.jpg
--------------------------------------------------------------------------------
/public/uploads/product_images/1724223912.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724223912.png
--------------------------------------------------------------------------------
/public/uploads/product_images/1724226700.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724226700.jpg
--------------------------------------------------------------------------------
/public/uploads/product_images/1724228045.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724228045.jpg
--------------------------------------------------------------------------------
/public/uploads/product_images/1724228438.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/uploads/product_images/1724228438.jpg
--------------------------------------------------------------------------------
/public/vendor/scribe/images/navbar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/public/vendor/scribe/images/navbar.png
--------------------------------------------------------------------------------
/resources/css/app.css:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/resources/css/app.css
--------------------------------------------------------------------------------
/resources/js/app.js:
--------------------------------------------------------------------------------
1 | import './bootstrap';
2 |
--------------------------------------------------------------------------------
/resources/views/emails/deactivated.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Account Deactivation Confirmation
5 |
6 |
7 | Account Deactivated
8 | Hello {{ $user->name }},
9 | Your account has been successfully deactivated.
10 | @if($user->deactivation_reason)
11 | Reason: {{ $user->deactivation_reason }}
12 | @endif
13 | Thank you for being with us.
14 |
15 |
16 |
--------------------------------------------------------------------------------
/resources/views/emails/generic.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Email
5 |
6 |
7 | {!! $content !!}
8 |
9 |
10 |
--------------------------------------------------------------------------------
/resources/views/emails/magic_link.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Magic Link Login
5 |
6 |
7 | Magic Link Login
8 | Click the link below to log in:
9 | Login with Magic Link
10 | This link will expire in 30 minutes.
11 |
12 |
--------------------------------------------------------------------------------
/resources/views/emails/newsletter_subcription.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Welcome to Our Newsletter!
6 |
7 |
8 | Welcome to Our Newsletter!
9 |
10 | Hello {{ $user->name }},
11 |
12 | Thank you for subscribing to our newsletter! We're excited to have you on board and keep you updated with the latest news and updates.
13 |
14 | If you have any questions, feel free to reply to this email.
15 |
16 | Thanks,
{{ config('app.name') }}
17 |
18 |
19 |
--------------------------------------------------------------------------------
/resources/views/emails/squeeze_template.blade.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Squeeze Template
6 |
7 |
8 |
9 | Dear {{ $first_name }},
10 | Thank you for your interest. Here is the template you requested.
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/resources/views/emails/waitlist_confirmation.blade.php:
--------------------------------------------------------------------------------
1 | Hello {{ $waitlist->name }},
2 | Thank you for joining our waitlist! We will notify you when we launch.
3 |
--------------------------------------------------------------------------------
/resources/views/mail/contact-inquiry-mail.blade.php:
--------------------------------------------------------------------------------
1 |
2 | ## Inquiry sent successfully, here is your message
3 |
4 | Name: {{ $name }}
5 | Email: {{ $email }}
6 | Message: {{ $message }}
7 |
8 | Thanks,
9 | {{-- {{ config('app.name') }} --}}
10 | Hng Boilerplate support team
11 |
12 |
--------------------------------------------------------------------------------
/role:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hngprojects/hng_boilerplate_php_laravel_web/0ed14e65c8e652470af4ad6ff19e23efe33dd776/role
--------------------------------------------------------------------------------
/routes/channels.php:
--------------------------------------------------------------------------------
1 | id === (int) $id;
18 | });
19 |
--------------------------------------------------------------------------------
/routes/console.php:
--------------------------------------------------------------------------------
1 | comment(Inspiring::quote());
19 | })->purpose('Display an inspiring quote');
20 |
--------------------------------------------------------------------------------
/routes/web.php:
--------------------------------------------------------------------------------
1 | group(function () {
24 | Route::get('/prometheus/metrics/' . env('PROMETHEUS_SECRET', 'tzUDnGrzj5j3vp0HSz0HKj3LNrYf1cj9'), [MetricsController::class, 'metrics']);
25 | });
26 |
27 |
--------------------------------------------------------------------------------
/storage/app/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !public/
3 | !.gitignore
4 |
--------------------------------------------------------------------------------
/storage/app/public/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/framework/.gitignore:
--------------------------------------------------------------------------------
1 | compiled.php
2 | config.php
3 | down
4 | events.scanned.php
5 | maintenance.php
6 | routes.php
7 | routes.scanned.php
8 | schedule-*
9 | services.json
10 |
--------------------------------------------------------------------------------
/storage/framework/cache/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !data/
3 | !.gitignore
4 |
--------------------------------------------------------------------------------
/storage/framework/cache/data/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/framework/sessions/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/framework/testing/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/framework/views/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/storage/logs/.gitignore:
--------------------------------------------------------------------------------
1 | *
2 | !.gitignore
3 |
--------------------------------------------------------------------------------
/tests/CreatesApplication.php:
--------------------------------------------------------------------------------
1 | make(Kernel::class)->bootstrap();
18 |
19 | return $app;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/tests/Feature/RetrieveAllSubscriptionPlansTest.php:
--------------------------------------------------------------------------------
1 | getJson('/api/v1/billing-plans');
16 | $response->assertStatus(200)
17 | ->assertJsonStructure([
18 | 'status',
19 | 'message',
20 | 'data' => [
21 | '*' => [
22 | 'id',
23 | 'name',
24 | 'price',
25 | 'created_at'
26 | ]
27 | ]
28 | ]);
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/tests/TestCase.php:
--------------------------------------------------------------------------------
1 |