From c6a16818762f2f881dcf9facc4472029b87a409b Mon Sep 17 00:00:00 2001 From: myrmidex Date: Fri, 1 May 2026 23:27:38 +0200 Subject: [PATCH] 37 - Flatten docker/dev structure and relax onboarding completion check --- app/Models/User.php | 15 +++++++-------- docker/dev/{podman => }/Dockerfile | 0 docker/dev/{podman => }/container-start.sh | 0 docker/dev/{podman => }/docker-compose.yml | 4 +--- docker/dev/{podman => }/podman-sail-alias.sh | 8 ++++---- docker/dev/{podman => }/start-dev.sh | 6 +++--- shell.nix | 2 +- 7 files changed, 16 insertions(+), 19 deletions(-) rename docker/dev/{podman => }/Dockerfile (100%) rename docker/dev/{podman => }/container-start.sh (100%) rename docker/dev/{podman => }/docker-compose.yml (96%) rename docker/dev/{podman => }/podman-sail-alias.sh (68%) rename docker/dev/{podman => }/start-dev.sh (86%) diff --git a/app/Models/User.php b/app/Models/User.php index eb0dc63..ef412a4 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -3,17 +3,19 @@ namespace App\Models; // use Illuminate\Contracts\Auth\MustVerifyEmail; +use App\Models\Transactions\Purchase; +use Database\Factories\UserFactory; use Illuminate\Database\Eloquent\Factories\HasFactory; use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Foundation\Auth\User as Authenticatable; use Illuminate\Notifications\Notifiable; /** - * @property int $asset_id + * @property int|null $asset_id */ class User extends Authenticatable { - /** @use HasFactory<\Database\Factories\UserFactory> */ + /** @use HasFactory */ use HasFactory, Notifiable; /** @@ -55,19 +57,16 @@ public function asset(): BelongsTo public function hasCompletedOnboarding(): bool { - // Check if user has asset, purchases, and milestones - return $this->asset_id !== null - && $this->hasPurchases() - && $this->hasMilestones(); + return $this->hasPurchases() && $this->hasMilestones(); } public function hasPurchases(): bool { - return \App\Models\Transactions\Purchase::totalShares() > 0; + return Purchase::totalShares() > 0; } public function hasMilestones(): bool { - return \App\Models\Milestone::count() > 0; + return Milestone::count() > 0; } } diff --git a/docker/dev/podman/Dockerfile b/docker/dev/Dockerfile similarity index 100% rename from docker/dev/podman/Dockerfile rename to docker/dev/Dockerfile diff --git a/docker/dev/podman/container-start.sh b/docker/dev/container-start.sh similarity index 100% rename from docker/dev/podman/container-start.sh rename to docker/dev/container-start.sh diff --git a/docker/dev/podman/docker-compose.yml b/docker/dev/docker-compose.yml similarity index 96% rename from docker/dev/podman/docker-compose.yml rename to docker/dev/docker-compose.yml index 9d61b6f..63e2b4d 100644 --- a/docker/dev/podman/docker-compose.yml +++ b/docker/dev/docker-compose.yml @@ -1,10 +1,8 @@ -version: '3.8' - services: app: build: context: ../../.. - dockerfile: docker/dev/podman/Dockerfile + dockerfile: docker/dev/Dockerfile container_name: incr-dev-app restart: unless-stopped working_dir: /var/www/html diff --git a/docker/dev/podman/podman-sail-alias.sh b/docker/dev/podman-sail-alias.sh similarity index 68% rename from docker/dev/podman/podman-sail-alias.sh rename to docker/dev/podman-sail-alias.sh index abd4463..3540194 100644 --- a/docker/dev/podman/podman-sail-alias.sh +++ b/docker/dev/podman-sail-alias.sh @@ -2,7 +2,7 @@ # Podman aliases for Laravel Sail compatibility # Source this file to use Sail commands with Podman -# Usage: source docker/dev/podman/podman-sail-alias.sh +# Usage: source docker/dev/podman-sail-alias.sh # Create docker alias pointing to podman alias docker='podman' @@ -12,10 +12,10 @@ alias docker-compose='podman-compose' # Sail wrapper function that uses podman-compose sail() { - if [[ -f docker/dev/podman/docker-compose.yml ]]; then - podman-compose -f docker/dev/podman/docker-compose.yml "$@" + if [[ -f docker/dev/docker-compose.yml ]]; then + podman-compose -f docker/dev/docker-compose.yml "$@" else - echo "❌ Podman compose file not found at docker/dev/podman/docker-compose.yml" + echo "❌ Podman compose file not found at docker/dev/docker-compose.yml" return 1 fi } diff --git a/docker/dev/podman/start-dev.sh b/docker/dev/start-dev.sh similarity index 86% rename from docker/dev/podman/start-dev.sh rename to docker/dev/start-dev.sh index a997713..20bb267 100644 --- a/docker/dev/podman/start-dev.sh +++ b/docker/dev/start-dev.sh @@ -22,7 +22,7 @@ fi # Start services echo "🔧 Starting services..." -podman-compose -f docker/dev/podman/docker-compose.yml up -d +podman-compose -f docker/dev/docker-compose.yml up -d # Wait for database to be ready echo "⏳ Waiting for database to be ready..." @@ -48,5 +48,5 @@ echo "🌐 Application: http://localhost:8000" echo "🔥 Vite dev server: http://localhost:5173" echo "💾 Database: localhost:3307" echo "" -echo "To stop: podman-compose -f docker/dev/podman/docker-compose.yml down" -echo "To view logs: podman-compose -f docker/dev/podman/docker-compose.yml logs -f" \ No newline at end of file +echo "To stop: podman-compose -f docker/dev/docker-compose.yml down" +echo "To view logs: podman-compose -f docker/dev/docker-compose.yml logs -f" \ No newline at end of file diff --git a/shell.nix b/shell.nix index da6d35a..05c0f13 100644 --- a/shell.nix +++ b/shell.nix @@ -25,7 +25,7 @@ pkgs.mkShell { export PODMAN_USERNS=keep-id # Compose file location - COMPOSE_FILE="$PWD/docker/dev/podman/docker-compose.yml" + COMPOSE_FILE="$PWD/docker/dev/docker-compose.yml" # =================== # ALIASES