From 34c560e9725e5c5989b9a453e5bd6e1a96290b63 Mon Sep 17 00:00:00 2001 From: root Date: Sun, 21 Jun 2026 13:51:54 -0400 Subject: [PATCH] Fix index check migration for SQLite compatibility --- .env.bak | 132 ++++++++++++++++++ .env.bak2 | 6 + ...entory_item_id_to_purchase_order_items.php | 8 +- 3 files changed, 142 insertions(+), 4 deletions(-) create mode 100644 .env.bak create mode 100644 .env.bak2 diff --git a/.env.bak b/.env.bak new file mode 100644 index 00000000..7ed864a9 --- /dev/null +++ b/.env.bak @@ -0,0 +1,132 @@ +APP_NAME=Alrahma_API +APP_ENV=local +APP_KEY=base64:RfIZKqgXC9seghl2Jqs2MgLh1X1Z7APRsnhUK8CgWx8= +APP_DEBUG=true +APP_TIMEZONE=America/New_York +APP_URL=http://localhost:8080 + +APP_LOCALE=en +APP_FALLBACK_LOCALE=en +APP_FAKER_LOCALE=en_US + +APP_MAINTENANCE_DRIVER=file + +LOG_CHANNEL=stack +LOG_LEVEL=debug +LOG_DEPRECATIONS_CHANNEL=null + +# ---------------------------- +# DATABASE +# ---------------------------- +DB_CONNECTION=mysql +DB_HOST=127.0.0.1 +DB_PORT=3306 +DB_DATABASE=school_api +DB_USERNAME=root +DB_PASSWORD=PMPS5k0D7rUeJOk0NkhI5bRtoGjkUqjK +APP_URL=http://127.0.0.1:8000 + +# ---------------------------- +# SESSION +# ---------------------------- +SESSION_DRIVER=file +SESSION_LIFETIME=120 +SESSION_ENCRYPT=false +SESSION_PATH=/ +SESSION_DOMAIN=null + +# ---------------------------- +# CACHE & QUEUE +# ---------------------------- +CACHE_STORE=file +QUEUE_CONNECTION=sync + +# ---------------------------- +# REDIS +# ---------------------------- +REDIS_CLIENT=phpredis +REDIS_HOST=127.0.0.1 +REDIS_PASSWORD=null +REDIS_PORT=6379 + +# ---------------------------- +# MAIL +# ---------------------------- +MAIL_MAILER=log +MAIL_PROFILE_DEFAULT=default +MAIL_DEFAULT_HOST=smtp.gmail.com +MAIL_DEFAULT_PORT=587 +MAIL_DEFAULT_USER=alrahma.sunday.school@gmail.com +MAIL_DEFAULT_PASS="psnp emdq dykw ypul" +MAIL_DEFAULT_ENCRYPTION=tls +MAIL_DEFAULT_FROM_EMAIL="alrahma.sunday.school@gmail.com" +MAIL_DEFAULT_FROM_NAME="Alrahma API" +MAIL_DEFAULT_REPLY_TO="alrahma.isgl@gmail.com" +MAIL_DEFAULT_REPLY_TO_NAME="Al Rahma Sunday School" +MAIL_COMMUNICATION_REPLY_TO="alrahma.isgl@gmail.com" +MAIL_COMMUNICATION_REPLY_TO_NAME="School Communications" +MAIL_PAYMENT_REPLY_TO="alrahma.isgl@gmail.com" +MAIL_PAYMENT_REPLY_TO_NAME="School Payments" +MAIL_SENDERS='{"general":{"name":"Alrahma API","email":"alrahma.sunday.school@gmail.com"},"communication":{"name":"School Communications","email":"alrahma.sunday.school@gmail.com"},"payment":{"name":"School Payments","email":"alrahma.sunday.school@gmail.com"}}' + +# Laravel mailer compatibility +MAIL_HOST="${MAIL_DEFAULT_HOST}" +MAIL_PORT="${MAIL_DEFAULT_PORT}" +MAIL_USERNAME="${MAIL_DEFAULT_USER}" +MAIL_PASSWORD="${MAIL_DEFAULT_PASS}" +MAIL_ENCRYPTION="${MAIL_DEFAULT_ENCRYPTION}" +MAIL_FROM_ADDRESS="${MAIL_DEFAULT_FROM_EMAIL}" +MAIL_FROM_NAME="${MAIL_DEFAULT_FROM_NAME}" + +# Legacy fallback keys still read by some services +SMTP_HOST="${MAIL_DEFAULT_HOST}" +SMTP_USER="${MAIL_DEFAULT_USER}" +SMTP_PASS="${MAIL_DEFAULT_PASS}" +SMTP_PORT="${MAIL_DEFAULT_PORT}" +SMTP_ENCRYPTION="${MAIL_DEFAULT_ENCRYPTION}" + +# ---------------------------- +# FILESYSTEM +# ---------------------------- +FILESYSTEM_DISK=local + +# ---------------------------- +# AWS STORAGE +# ---------------------------- +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= +AWS_DEFAULT_REGION=us-east-1 +AWS_BUCKET= +AWS_USE_PATH_STYLE_ENDPOINT=false + +# ---------------------------- +# JWT +# ---------------------------- +JWT_SECRET=Uj8rGnYcXMgeRc5qCIn9Wn03tYo1pCsBz1Biou8T9zWtaNxBYi3P4NP5vuFiXHmd +JWT_ALGO=HS256 +JWT_TTL=60 +JWT_REFRESH_TTL=20160 +JWT_BLACKLIST_ENABLED=true +JWT_BLACKLIST_GRACE_PERIOD=0 + +# ---------------------------- +# DOCS +# ---------------------------- +DOCS_CLIENT_URL=http://localhost:3000 +DOCS_INDEX_TITLE="Alrahma API Documentation" +DOCS_INDEX_DESCRIPTION= + +# ---------------------------- +# BADGE +# ---------------------------- +BADGE_SCHOOL_NAME="Al Rahma Sunday School" +BADGE_HEADER_SUBTITLE= +BADGE_MOTTO= +BADGE_MOTTO_FALLBACK= +BADGE_ROLE_LABEL=Student +BADGE_FOOTER_ADDRESS="5 Courthouse Lane, Chelmsford, MA 01824, USA" + +# ---------------------------- +# FRONT-END +# ---------------------------- +VITE_APP_NAME="${APP_NAME}" diff --git a/.env.bak2 b/.env.bak2 new file mode 100644 index 00000000..bbc2b9a8 --- /dev/null +++ b/.env.bak2 @@ -0,0 +1,6 @@ +APP_ENV=testing +APP_KEY=base64:test1234567890test1234567890test12= +DB_CONNECTION=sqlite +DB_DATABASE=:memory: +CACHE_DRIVER=array +SESSION_DRIVER=array diff --git a/database/migrations/2026_06_11_074642_add_inventory_item_id_to_purchase_order_items.php b/database/migrations/2026_06_11_074642_add_inventory_item_id_to_purchase_order_items.php index f76723d5..593cf785 100644 --- a/database/migrations/2026_06_11_074642_add_inventory_item_id_to_purchase_order_items.php +++ b/database/migrations/2026_06_11_074642_add_inventory_item_id_to_purchase_order_items.php @@ -18,13 +18,13 @@ return new class extends Migration } }); - // Add index if it doesn't exist (SQLite-compatible check) - $schema = DB::connection()->getDoctrineSchemaManager(); - $indexes = $schema->listTableIndexes('purchase_order_items'); - if (! isset($indexes['po_items_inventory_item_idx'])) { + // Add index if it doesn't exist (SQLite-compatible) + try { Schema::table('purchase_order_items', function (Blueprint $table) { $table->index('inventory_item_id', 'po_items_inventory_item_idx'); }); + } catch (\Exception $e) { + // Index likely already exists — ignore duplicate index error } }