ca7d16da16
- Add fallback env parsing directly from .env file in config/trello.php - Fixes issue where cached config prevents env() from reading .env values - Add artisan trello:test command to diagnose Trello configuration - Test command checks API credentials, board/list IDs, and connectivity - Test successfully creates and moves a test Trello card
52 lines
3.2 KiB
PHP
52 lines
3.2 KiB
PHP
<?php
|
|
|
|
// Load .env file directly if needed
|
|
if (!function_exists('env') || env('TRELLO_API_KEY') === null) {
|
|
$envFile = __DIR__ . '/../.env';
|
|
if (file_exists($envFile)) {
|
|
$lines = file($envFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
|
|
$env = [];
|
|
foreach ($lines as $line) {
|
|
if (strpos($line, '=') !== false && strpos($line, '#') !== 0) {
|
|
[$key, $value] = explode('=', $line, 2);
|
|
$env[trim($key)] = trim($value);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
return [
|
|
'api_key' => env('TRELLO_API_KEY') ?: ($env['TRELLO_API_KEY'] ?? null),
|
|
'api_token' => env('TRELLO_API_TOKEN') ?: ($env['TRELLO_API_TOKEN'] ?? null),
|
|
'board_id' => env('TRELLO_BOARD_ID') ?: ($env['TRELLO_BOARD_ID'] ?? null),
|
|
'webhook_secret' => env('TRELLO_WEBHOOK_SECRET') ?: ($env['TRELLO_WEBHOOK_SECRET'] ?? null),
|
|
|
|
'lists' => [
|
|
'standard' => [
|
|
'new_order' => env('TRELLO_LIST_ID_NEW_ORDER') ?: ($env['TRELLO_LIST_ID_NEW_ORDER'] ?? null),
|
|
'prep' => env('TRELLO_LIST_ID_PREP') ?: ($env['TRELLO_LIST_ID_PREP'] ?? null),
|
|
'printing' => env('TRELLO_LIST_ID_PRINTING') ?: ($env['TRELLO_LIST_ID_PRINTING'] ?? null),
|
|
'inspection' => env('TRELLO_LIST_ID_INSPECTION') ?: ($env['TRELLO_LIST_ID_INSPECTION'] ?? null),
|
|
'packing' => env('TRELLO_LIST_ID_PACKING') ?: ($env['TRELLO_LIST_ID_PACKING'] ?? null),
|
|
'ready_to_ship' => env('TRELLO_LIST_ID_READY_TO_SHIP') ?: ($env['TRELLO_LIST_ID_READY_TO_SHIP'] ?? null),
|
|
'awaiting_collection' => env('TRELLO_LIST_ID_AWAITING_COLLECTION') ?: ($env['TRELLO_LIST_ID_AWAITING_COLLECTION'] ?? null),
|
|
'in_transit' => env('TRELLO_LIST_ID_IN_TRANSIT') ?: ($env['TRELLO_LIST_ID_IN_TRANSIT'] ?? null),
|
|
'done' => env('TRELLO_LIST_ID_DONE') ?: ($env['TRELLO_LIST_ID_DONE'] ?? null),
|
|
],
|
|
'custom' => [
|
|
'new_custom_order' => env('TRELLO_LIST_ID_NEW_CUSTOM_ORDER') ?: ($env['TRELLO_LIST_ID_NEW_CUSTOM_ORDER'] ?? null),
|
|
'design' => env('TRELLO_LIST_ID_DESIGN') ?: ($env['TRELLO_LIST_ID_DESIGN'] ?? null),
|
|
'awaiting_approval' => env('TRELLO_LIST_ID_AWAITING_APPROVAL') ?: ($env['TRELLO_LIST_ID_AWAITING_APPROVAL'] ?? null),
|
|
'awaiting_balance' => env('TRELLO_LIST_ID_AWAITING_BALANCE') ?: ($env['TRELLO_LIST_ID_AWAITING_BALANCE'] ?? null),
|
|
'ready_for_print' => env('TRELLO_LIST_ID_READY_FOR_PRINT') ?: ($env['TRELLO_LIST_ID_READY_FOR_PRINT'] ?? null),
|
|
'printing' => env('TRELLO_LIST_ID_PRINTING') ?: ($env['TRELLO_LIST_ID_PRINTING'] ?? null),
|
|
'inspection' => env('TRELLO_LIST_ID_INSPECTION') ?: ($env['TRELLO_LIST_ID_INSPECTION'] ?? null),
|
|
'packing' => env('TRELLO_LIST_ID_PACKING') ?: ($env['TRELLO_LIST_ID_PACKING'] ?? null),
|
|
'ready_to_ship' => env('TRELLO_LIST_ID_READY_TO_SHIP') ?: ($env['TRELLO_LIST_ID_READY_TO_SHIP'] ?? null),
|
|
'awaiting_collection' => env('TRELLO_LIST_ID_AWAITING_COLLECTION') ?: ($env['TRELLO_LIST_ID_AWAITING_COLLECTION'] ?? null),
|
|
'in_transit' => env('TRELLO_LIST_ID_IN_TRANSIT') ?: ($env['TRELLO_LIST_ID_IN_TRANSIT'] ?? null),
|
|
'done' => env('TRELLO_LIST_ID_DONE') ?: ($env['TRELLO_LIST_ID_DONE'] ?? null),
|
|
],
|
|
],
|
|
];
|