|
13 | 13 |
|
14 | 14 | require __DIR__ . DS . 'init.php'; |
15 | 15 |
|
| 16 | +/* |
| 17 | +|-------------------------------------------------------------------------- |
| 18 | +| Muat helpers dan autoloader awal untuk debugger |
| 19 | +|-------------------------------------------------------------------------- |
| 20 | +| |
| 21 | +| Muat helpers dan autoloader sebelum core untuk inisialisasi debugger early. |
| 22 | +| |
| 23 | +*/ |
| 24 | + |
| 25 | +require path('system') . 'helpers.php'; |
| 26 | +require_once path('system') . 'autoloader.php'; |
| 27 | +spl_autoload_register(['\System\Autoloader', 'load']); |
| 28 | +\System\Autoloader::namespaces(['System' => path('system')]); |
| 29 | + |
| 30 | +/* |
| 31 | +|-------------------------------------------------------------------------- |
| 32 | +| Inisialisasi debugger awal |
| 33 | +|-------------------------------------------------------------------------- |
| 34 | +| |
| 35 | +| Enable debugger sebelum boot package untuk tangkap error early seperti |
| 36 | +| koneksi Redis yang gagal saat session init. |
| 37 | +| |
| 38 | +*/ |
| 39 | + |
| 40 | +use System\Foundation\Oops\Debugger; |
| 41 | + |
| 42 | +if (file_exists($debugger = path('app') . 'config' . DS . 'debugger.php')) { |
| 43 | + $debugger = require $debugger; |
| 44 | + Debugger::$productionMode = (false === (bool) $debugger['activate']); |
| 45 | + Debugger::enable(null, path('storage') . 'logs'); |
| 46 | + unset($debugger); |
| 47 | +} |
| 48 | + |
16 | 49 | /* |
17 | 50 | |-------------------------------------------------------------------------- |
18 | 51 | | Jalankan Core Boot |
|
27 | 60 |
|
28 | 61 | require __DIR__ . DS . 'core.php'; |
29 | 62 |
|
| 63 | +/* |
| 64 | +|-------------------------------------------------------------------------- |
| 65 | +| Load Config Debugger Base |
| 66 | +|-------------------------------------------------------------------------- |
| 67 | +| |
| 68 | +| Load base config debugger untuk set productionMode sebelum enable, |
| 69 | +| agar error early tidak tampil HTML debugger. |
| 70 | +| |
| 71 | +*/ |
| 72 | + |
| 73 | +$debugger = require path('app') . 'config' . DS . 'debugger.php'; |
| 74 | +Debugger::$productionMode = (false === (bool) $debugger['activate']); |
| 75 | +unset($debugger); |
| 76 | + |
| 77 | +/* |
| 78 | +|-------------------------------------------------------------------------- |
| 79 | +| Enable Debugger Lebih Awal |
| 80 | +|-------------------------------------------------------------------------- |
| 81 | +| |
| 82 | +| Enable debugger sebelum boot package untuk tangkap error early seperti |
| 83 | +| koneksi Redis yang gagal saat session init. |
| 84 | +| |
| 85 | +*/ |
| 86 | + |
| 87 | +Debugger::enable(null, path('storage') . 'logs'); |
30 | 88 | /* |
31 | 89 | |-------------------------------------------------------------------------- |
32 | 90 | | Mulai Paket 'application' |
|
47 | 105 | |-------------------------------------------------------------------------- |
48 | 106 | | |
49 | 107 | | Atur konfigurasi debugger sesuai data yang diberikan user di file |
50 | | -| application/config/debugger.php. |
| 108 | +| application/config/debugger.php. Config sudah dimuat awal, tapi set ulang |
| 109 | +| untuk memastikan konsistensi setelah package boot. |
51 | 110 | | |
52 | 111 | */ |
53 | 112 |
|
54 | | -use System\Foundation\Oops\Debugger; |
55 | | - |
56 | | -Debugger::enable(false, path('storage') . 'logs'); |
57 | | - |
58 | | -$debugger = Config::get('debugger'); |
| 113 | +$debugger = Config::get('debugger'); // Gunakan Config::get untuk konsistensi |
59 | 114 | $template = path('app') . 'views' . DS . 'error' . DS . '500.blade.php'; |
60 | 115 |
|
| 116 | +// ProductionMode sudah di-set awal, tapi pastikan sesuai config |
61 | 117 | Debugger::$productionMode = (false === (bool) $debugger['activate']); |
62 | 118 | Debugger::$strictMode = (bool) $debugger['strict']; |
63 | 119 | Debugger::$scream = (bool) $debugger['scream']; |
64 | 120 |
|
65 | | -Debugger::$showFirelog = false; |
66 | 121 | Debugger::$logSeverity = 0; |
67 | 122 | Debugger::$errorTemplate = is_file($template) ? $template : null; |
68 | 123 | Debugger::$time = RAKIT_START; |
69 | | -Debugger::$editor = false; |
70 | | -Debugger::$editorMapping = []; |
71 | | -Debugger::$customCssFiles = []; |
72 | | -Debugger::$customJsFiles = []; |
| 124 | + |
| 125 | + |
73 | 126 |
|
74 | 127 | Debugger::$showBar = (bool) $debugger['debugbar']; |
75 | 128 | Debugger::$showLocation = (bool) $debugger['location']; |
76 | 129 | Debugger::$maxDepth = (int) $debugger['depth']; |
77 | 130 | Debugger::$maxLength = (int) $debugger['length']; |
78 | 131 | Debugger::$email = (string) $debugger['email']; |
79 | 132 |
|
80 | | -unset($debugger, $template); |
| 133 | +unset($debugger, $template, $debugger); |
81 | 134 |
|
82 | 135 | /* |
83 | 136 | |-------------------------------------------------------------------------- |
|
0 commit comments