[2026-06-28 00:00:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:00:13] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 00:00:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:00:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 00:00:57] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:00:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/journal | {"method":"GET","uri":"/accounting/journal","query":[],"ip":"::1"}
[2026-06-28 00:00:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:00:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 00:01:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:01:02] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 00:01:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:01:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:01:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:01:02] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 00:01:02] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 00:01:02] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 00:01:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:01:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 00:01:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:01:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 00:01:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:01:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 00:02:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:02:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:02:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 00:02:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 00:02:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:02:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 00:02:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:02:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 00:03:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:03:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:03:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 00:03:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 00:03:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:03:25] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 00:03:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:03:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 00:04:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:04:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:04:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 00:04:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 00:04:25] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:04:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 00:04:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:04:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 00:05:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:05:02] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 00:05:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 00:05:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:18:30] [info] [EnvLoader.php:47] [IP:127.0.0.1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:18:30] [info] [EnvLoader.php:47] [IP:127.0.0.1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:18:30] [debug] [index.php:283] [IP:127.0.0.1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"127.0.0.1"}
[2026-06-28 10:18:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:18:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:18:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:18:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:18:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:18:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:19:01] [info] [EnvLoader.php:47] [IP:127.0.0.1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:19:02] [info] [EnvLoader.php:47] [IP:127.0.0.1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:19:02] [debug] [index.php:283] [IP:127.0.0.1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"127.0.0.1"}
[2026-06-28 10:19:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:19:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:19:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:19:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:19:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:19:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:20:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:20:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:20:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:20:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:20:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:20:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:21:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:21:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:21:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:21:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:21:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:21:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:22:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:22:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:22:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:22:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:22:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:22:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:23:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:23:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:23:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:23:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:23:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:23:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:24:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:24:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:24:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:24:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:24:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:24:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:25:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:25:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:25:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:25:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:25:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:25:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:26:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:26:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:26:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:26:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:26:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:26:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:27:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:27:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:27:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:27:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:27:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:27:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:28:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:28:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:28:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:28:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:28:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:28:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:29:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:29:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:29:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:29:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:29:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:29:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:30:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:30:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:30:20] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:30:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:30:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:30:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:30:43] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:30:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:30:43] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:31:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:31:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:31:13] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:31:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:31:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:31:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:31:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:31:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:31:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:32:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:32:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:32:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:32:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:32:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:32:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:33:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:33:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:33:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:33:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:33:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:33:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:34:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:34:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:34:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:34:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:34:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:34:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:35:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:35:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:35:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:35:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:35:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:35:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:36:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:36:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:36:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:36:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:36:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:36:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:37:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:37:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:37:16] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:37:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:37:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:37:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:37:42] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:37:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:37:43] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:38:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:38:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:38:12] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:38:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:38:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:38:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:38:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:38:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:38:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:39:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:39:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:39:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:39:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:39:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:39:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:40:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:40:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:40:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:40:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:40:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:40:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:41:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:41:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:41:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:41:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:41:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:41:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:42:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:42:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:42:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:42:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:42:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:42:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:43:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:43:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:43:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:43:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:43:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:43:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:44:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:44:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:44:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:44:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:44:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:44:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:45:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:45:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:45:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:45:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:45:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:45:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:46:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:46:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:46:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:46:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:46:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:46:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:47:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:47:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:47:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:47:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:47:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:47:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:48:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:48:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:48:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:48:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:48:50] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:48:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:48:52] [debug] [index.php:283] [IP:::1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 10:49:01] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:49:01] [debug] [index.php:283] [IP:::1] Request: POST /login | {"method":"POST","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 10:49:02] [warning] [Database.php:328] [IP:::1] SLOW QUERY (538.77ms): SELECT u.*, r.name as role_name, b.name as branch_name, b.code as branch_code 
             FROM users u 
             JOIN roles r ON u.role_id = r.id 
             JOIN branches b ON u.branch_id = b.id 
             WHERE u.phone = ? AND u.status = 'active' | {"params":["9999999999"]}
[2026-06-28 10:49:02] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: auth.login — User logged in | {"module":"auth","action":"login","old_data":null,"new_data":null}
[2026-06-28 10:49:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:49:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 10:49:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:49:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:49:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:49:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 10:49:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 10:49:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 10:49:05] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:49:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 10:49:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:49:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:50:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:50:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:50:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 10:50:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:50:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:50:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:51:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:51:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:51:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 10:51:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:51:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:51:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:52:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:52:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:52:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 10:52:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:52:05] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:52:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 10:52:05] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:52:05] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:52:05] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:52:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 10:52:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 10:52:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 10:52:07] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:52:07] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 10:52:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:52:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:53:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:53:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:53:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:53:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 10:53:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:53:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:54:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:54:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:54:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:54:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 10:54:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:54:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:55:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:55:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:55:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:55:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 10:55:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:55:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:56:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:56:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 10:56:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:56:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:56:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:56:21] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 10:56:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:56:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:56:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:56:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 10:56:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 10:56:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 10:56:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:56:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 10:56:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:56:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:57:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:57:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:57:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:57:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 10:57:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:57:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:58:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:58:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:58:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:58:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 10:58:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:58:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:59:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:59:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:59:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 10:59:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 10:59:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:59:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 10:59:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:59:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:59:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:59:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 10:59:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 10:59:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 10:59:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 10:59:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:00:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:00:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:00:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:00:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:00:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:00:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:01:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:01:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:01:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:01:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:01:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:01:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:02:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:02:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:02:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:02:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:02:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:02:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:03:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:03:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:03:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:03:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:03:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:03:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:04:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:04:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:04:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:04:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:05:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:05:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:05:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:05:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:06:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:06:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:06:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:06:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:07:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:07:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:07:24] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:07:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:07:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:07:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:07:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:08:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:08] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 11:08:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:09] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:09] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 11:08:09] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 11:08:09] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 11:08:11] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:11] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:08:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":{"branch":"1"},"ip":"::1"}
[2026-06-28 11:08:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 11:08:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 11:08:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 11:08:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:08:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":{"branch":"2"},"ip":"::1"}
[2026-06-28 11:08:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 11:08:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 11:08:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 11:08:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:08:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":{"branch":"all"},"ip":"::1"}
[2026-06-28 11:08:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 11:08:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 11:08:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 11:08:28] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:28] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:08:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 11:08:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 11:08:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 11:08:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 11:08:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:08:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:09:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:09:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:09:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:09:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 11:09:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:09:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:09:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:09:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 11:09:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 11:09:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 11:09:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:09:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:09:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:09:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 11:09:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:09:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:09:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:09:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/create | {"method":"GET","uri":"/loans/create","query":[],"ip":"::1"}
[2026-06-28 11:09:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:09:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:10:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:10:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:11:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:11:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:12:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:12:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:13:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:13:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:14:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:14:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:15:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:15:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:16:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:16:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:16:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:16:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/create | {"method":"GET","uri":"/loans/create","query":[],"ip":"::1"}
[2026-06-28 11:16:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:16:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:17:00] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:17:01] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers | {"method":"GET","uri":"/customers","query":[],"ip":"::1"}
[2026-06-28 11:17:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:17:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:17:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:17:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/create | {"method":"GET","uri":"/loans/create","query":[],"ip":"::1"}
[2026-06-28 11:17:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:17:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:17:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:17:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"BIJAY SARKAR"},"ip":"::1"}
[2026-06-28 11:17:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:17:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/previous-loan/10012 | {"method":"GET","uri":"/customers/previous-loan/10012","query":[],"ip":"::1"}
[2026-06-28 11:17:27] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:17:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"BIJAY SARKAR"},"ip":"::1"}
[2026-06-28 11:17:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:17:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"BIJAY SAR"},"ip":"::1"}
[2026-06-28 11:17:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:17:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/previous-loan/10012 | {"method":"GET","uri":"/customers/previous-loan/10012","query":[],"ip":"::1"}
[2026-06-28 11:18:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:18:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:19:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:19:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:20:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:20:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:21:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:21:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:22:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:22:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:23:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:23:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:24:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:24:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:25:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:25:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:25:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:25:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/create | {"method":"GET","uri":"/loans/create","query":[],"ip":"::1"}
[2026-06-28 11:25:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:25:21] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:25:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:25:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"bik"},"ip":"::1"}
[2026-06-28 11:25:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:25:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"bi"},"ip":"::1"}
[2026-06-28 11:25:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:25:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"bij"},"ip":"::1"}
[2026-06-28 11:25:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:25:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"bija"},"ip":"::1"}
[2026-06-28 11:25:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:25:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/previous-loan/10012 | {"method":"GET","uri":"/customers/previous-loan/10012","query":[],"ip":"::1"}
[2026-06-28 11:25:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:25:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/store | {"method":"POST","uri":"/loans/store","query":[],"ip":"::1"}
[2026-06-28 11:25:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:25:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/create | {"method":"GET","uri":"/loans/create","query":[],"ip":"::1"}
[2026-06-28 11:26:00] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:26:00] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:26:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:26:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 11:26:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:26:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:26:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:26:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /schemes | {"method":"GET","uri":"/schemes","query":[],"ip":"::1"}
[2026-06-28 11:26:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:26:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:27:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:27:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:28:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:28:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:28:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:28:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/create | {"method":"GET","uri":"/loans/create","query":[],"ip":"::1"}
[2026-06-28 11:28:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:28:47] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:28:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:28:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"bi"},"ip":"::1"}
[2026-06-28 11:28:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:28:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"bij"},"ip":"::1"}
[2026-06-28 11:28:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:28:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/previous-loan/10012 | {"method":"GET","uri":"/customers/previous-loan/10012","query":[],"ip":"::1"}
[2026-06-28 11:29:05] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:29:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/store | {"method":"POST","uri":"/loans/store","query":[],"ip":"::1"}
[2026-06-28 11:29:05] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: loan.create — Created loan EMDA2806260001 for customer BIJAY SARKAR | {"module":"loan","action":"create","old_data":null,"new_data":null}
[2026-06-28 11:29:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:29:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 11:29:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:29:08] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:30:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:30:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:31:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:31:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:32:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:32:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:32:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:32:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/32/verify | {"method":"POST","uri":"/loans/32/verify","query":[],"ip":"::1"}
[2026-06-28 11:32:48] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: loan.verify — Loan #32 — field_visit verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 11:32:48] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #32 stage: field_visit status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 11:32:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:32:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 11:32:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:32:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:32:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:32:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/32/verify | {"method":"POST","uri":"/loans/32/verify","query":[],"ip":"::1"}
[2026-06-28 11:32:52] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: loan.verify — Loan #32 — document_check verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 11:32:52] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #32 stage: document_check status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 11:32:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:32:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 11:32:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:32:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:32:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/32/verify | {"method":"POST","uri":"/loans/32/verify","query":[],"ip":"::1"}
[2026-06-28 11:32:54] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: loan.verify — Loan #32 — credit_check verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 11:32:54] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #32 stage: credit_check status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 11:32:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:32:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:32:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 11:32:56] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:32:56] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:32:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:33:00] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/32/approve | {"method":"POST","uri":"/loans/32/approve","query":[],"ip":"::1"}
[2026-06-28 11:33:00] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: loan.approve — Approved loan #EMDA2806260001, EMI start: 2026-06-26 | {"module":"loan","action":"approve","old_data":null,"new_data":null}
[2026-06-28 11:33:00] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:33:00] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 11:33:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:33:02] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:33:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:33:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 11:33:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:33:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:33:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:33:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/create | {"method":"GET","uri":"/loans/create","query":[],"ip":"::1"}
[2026-06-28 11:33:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:33:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 11:33:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:33:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:33:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:33:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:33:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:33:56] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 11:33:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:33:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:34:05] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/32/disburse | {"method":"POST","uri":"/loans/32/disburse","query":[],"ip":"::1"}
[2026-06-28 11:34:06] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: loan.disburse — Disbursed loan ID: 32 via cash | {"module":"loan","action":"disburse","old_data":null,"new_data":null}
[2026-06-28 11:34:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 11:34:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:08] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:34:27] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/32/collect | {"method":"POST","uri":"/loans/32/collect","query":[],"ip":"::1"}
[2026-06-28 11:34:27] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: notification.whatsapp — Whatsapp to 917001203481 — queued | {"module":"notification","action":"whatsapp","old_data":null,"new_data":null}
[2026-06-28 11:34:27] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: loan.collect — Collected ₹116.84 for loan 32, EMI #1 | {"module":"loan","action":"collect","old_data":null,"new_data":null}
[2026-06-28 11:34:28] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:28] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 11:34:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:34:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 11:34:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 11:34:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:34:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 11:34:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 11:34:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 11:34:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:34:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:35:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:35:11] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:35:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:35:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:35:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:35:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:35:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:35:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:35:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:35:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 11:35:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:35:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:35:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:35:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 11:35:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:35:55] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:36:01] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:01] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"100"},"ip":"::1"}
[2026-06-28 11:36:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:07] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"20"},"ip":"::1"}
[2026-06-28 11:36:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:13] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"25"},"ip":"::1"}
[2026-06-28 11:36:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:13] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"40"},"ip":"::1"}
[2026-06-28 11:36:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"45"},"ip":"::1"}
[2026-06-28 11:36:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"55"},"ip":"::1"}
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"70"},"ip":"::1"}
[2026-06-28 11:36:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"60"},"ip":"::1"}
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"80"},"ip":"::1"}
[2026-06-28 11:36:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"85"},"ip":"::1"}
[2026-06-28 11:36:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"90"},"ip":"::1"}
[2026-06-28 11:36:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"100"},"ip":"::1"}
[2026-06-28 11:36:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"95"},"ip":"::1"}
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"65"},"ip":"::1"}
[2026-06-28 11:36:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"40"},"ip":"::1"}
[2026-06-28 11:36:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"50"},"ip":"::1"}
[2026-06-28 11:36:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"45"},"ip":"::1"}
[2026-06-28 11:36:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"35"},"ip":"::1"}
[2026-06-28 11:36:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"55"},"ip":"::1"}
[2026-06-28 11:36:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"70"},"ip":"::1"}
[2026-06-28 11:36:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"25"},"ip":"::1"}
[2026-06-28 11:36:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"30"},"ip":"::1"}
[2026-06-28 11:36:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"80"},"ip":"::1"}
[2026-06-28 11:36:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"20"},"ip":"::1"}
[2026-06-28 11:36:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"1.5","rebate_enabled":"1","rebate_pct":"20"},"ip":"::1"}
[2026-06-28 11:36:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"1","rebate_enabled":"1","rebate_pct":"20"},"ip":"::1"}
[2026-06-28 11:36:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0.5","rebate_enabled":"1","rebate_pct":"20"},"ip":"::1"}
[2026-06-28 11:36:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"20"},"ip":"::1"}
[2026-06-28 11:36:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"10"},"ip":"::1"}
[2026-06-28 11:36:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"5"},"ip":"::1"}
[2026-06-28 11:36:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"0"},"ip":"::1"}
[2026-06-28 11:36:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:36:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"5"},"ip":"::1"}
[2026-06-28 11:36:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"10"},"ip":"::1"}
[2026-06-28 11:36:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"15"},"ip":"::1"}
[2026-06-28 11:36:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"20"},"ip":"::1"}
[2026-06-28 11:36:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"15"},"ip":"::1"}
[2026-06-28 11:36:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"10"},"ip":"::1"}
[2026-06-28 11:36:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"15"},"ip":"::1"}
[2026-06-28 11:36:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:36:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:36:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32/foreclosure-calc | {"method":"GET","uri":"/loans/32/foreclosure-calc","query":{"fee_rate":"0","rebate_enabled":"1","rebate_pct":"20"},"ip":"::1"}
[2026-06-28 11:37:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:37:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/32/foreclose | {"method":"POST","uri":"/loans/32/foreclose","query":[],"ip":"::1"}
[2026-06-28 11:37:04] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: loan.foreclose — Foreclosed loan 32. Settled: ₹10,765.46, rebate: ₹217.70 | {"module":"loan","action":"foreclose","old_data":null,"new_data":null}
[2026-06-28 11:37:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:37:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 11:37:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:37:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:37:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:37:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 11:37:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:37:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:37:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:37:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 11:37:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 11:37:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 11:37:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:37:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:37:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:37:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:37:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:37:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:38:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:38:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:38:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:38:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:38:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:38:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:38:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:38:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:39:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:39:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:39:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:39:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:39:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:39:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:39:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:39:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:40:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:40:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/dashboard | {"method":"GET","uri":"/loans/dashboard","query":[],"ip":"::1"}
[2026-06-28 11:40:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:40:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:40:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:40:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:40:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:40:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:40:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:40:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:40:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:40:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 11:40:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:40:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:40:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:40:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 11:40:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 11:40:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 11:40:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:40:47] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:41:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:41:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:41:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:41:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:41:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:41:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:41:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:41:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:42:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:42:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:42:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:42:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:42:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:42:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:42:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:42:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:43:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:43:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:43:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:43:31] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:43:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:43:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:43:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:43:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:44:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:44:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:44:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:44:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:44:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:44:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:44:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:44:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:45:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:45:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:45:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:45:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:45:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:45:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:46:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:46:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:46:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:46:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:46:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:46:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:47:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:47:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:47:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:47:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:47:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:47:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:48:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:48:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:48:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:48:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:49:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:49:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:49:38] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:49:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:49:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:49:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:49:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:49:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:49:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:50:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:50:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:50:39] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:50:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:50:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:50:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:50:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:50:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:50:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:51:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:51:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:51:40] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:51:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:51:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:51:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:51:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:51:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:51:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:52:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:52:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:52:41] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:52:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:52:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:52:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:52:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:52:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:52:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:54:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:47] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:54:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:47] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:54:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:47] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:54:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:47] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:54:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:54:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:48] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:54:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:49] [debug] [index.php:283] [IP:::1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:54:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:58] [debug] [index.php:283] [IP:::1] Request: POST /login | {"method":"POST","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 11:54:58] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: auth.login — User logged in | {"module":"auth","action":"login","old_data":null,"new_data":null}
[2026-06-28 11:54:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 11:54:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:54:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 11:54:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 11:54:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 11:55:01] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:55:01] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 11:55:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:55:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:55:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:55:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:55:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:55:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:55:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:55:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:56:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:56:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:56:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:56:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:56:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:56:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:56:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:56:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:57:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:57:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:57:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:57:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:57:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:57:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:57:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:57:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:58:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:58:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:58:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:58:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:58:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:58:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:58:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:58:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:59:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:59:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:59:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:59:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 11:59:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:59:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 11:59:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 11:59:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:00:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:00:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:00:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:00:47] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:00:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:00:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:00:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:00:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:01:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:01:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:01:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:01:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:01:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:01:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:01:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:01:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:02:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:02:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:02:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:02:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:02:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:02:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:02:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:02:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:03:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:03:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:03:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:03:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:03:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:03:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:03:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:03:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:04:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:04:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:04:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:04:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 12:04:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:04:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:04:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:04:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:04:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:04:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 12:04:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 12:04:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 12:04:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:04:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:05:11] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:11] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 12:05:11] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:11] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:11] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 12:05:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 12:05:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 12:05:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 12:05:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:05:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 12:05:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 12:05:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 12:05:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:05:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:05:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:05:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:06:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:06:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:06:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:06:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:06:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:06:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:06:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:06:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:07:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:07:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:07:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:07:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:07:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:07:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:07:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:07:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:08:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:08:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:08:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:08:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:08:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:08:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:08:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:08:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:09:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:09:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:09:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:09:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:09:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:09:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:09:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:09:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:10:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:10:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:10:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:10:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:10:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:10:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:10:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:10:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:11:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:11:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:11:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:11:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:11:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:11:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:11:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:11:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:12:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:12:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:12:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:12:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:12:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:12:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:13:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:13:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:13:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:13:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:13:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:13:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:14:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:14:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:14:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:14:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:14:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:14:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:15:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:15:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:15:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:15:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:15:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:15:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:16:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:16:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:16:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:16:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:16:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:16:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:17:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:17:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:17:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:17:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:17:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:17:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:18:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:18:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:18:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:18:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:18:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:18:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:19:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:19:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:19:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:19:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:19:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:19:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:20:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:20:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:20:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:20:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:20:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:20:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:21:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:21:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:21:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:21:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:21:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:21:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:22:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:22:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:22:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:22:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:22:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:22:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:23:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:23:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:23:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:23:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:23:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:23:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:24:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:24:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:24:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:24:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:24:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:24:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:25:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:25:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:25:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:25:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:25:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:25:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:26:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:26:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:26:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:26:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:26:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:26:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:27:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:27:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:27:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:27:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:27:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:27:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:28:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:28:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:28:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:28:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:28:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:28:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:29:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:29:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:29:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:29:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:29:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:29:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:30:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:30:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:30:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:30:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:30:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:30:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:31:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:31:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:31:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:31:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:31:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:31:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:32:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:32:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:32:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:32:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:32:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:32:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:33:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:33:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:33:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 12:33:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:33:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:33:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /reports/collection | {"method":"GET","uri":"/reports/collection","query":[],"ip":"::1"}
[2026-06-28 12:33:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:33:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:33:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:33:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /reports/overdue | {"method":"GET","uri":"/reports/overdue","query":[],"ip":"::1"}
[2026-06-28 12:33:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:33:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:33:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:33:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /reports/due | {"method":"GET","uri":"/reports/due","query":[],"ip":"::1"}
[2026-06-28 12:33:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:33:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:33:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:33:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:33:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:33:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /reports | {"method":"GET","uri":"/reports","query":[],"ip":"::1"}
[2026-06-28 12:33:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:33:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:34:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:34:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:34:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:34:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:35:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:35:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:35:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:35:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:36:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:36:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:36:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:36:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:37:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:37:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:37:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:37:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:38:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:38:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:38:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:38:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:39:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:39:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:39:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:39:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:40:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:40:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:40:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:40:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:41:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:41:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:41:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:41:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:42:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:42:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:42:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:42:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:43:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:43:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:43:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:43:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:44:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:44:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:44:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:44:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:45:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:45:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:45:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:45:55] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:46:01] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:46:01] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /reports | {"method":"GET","uri":"/reports","query":[],"ip":"::1"}
[2026-06-28 12:46:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:46:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:46:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:46:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:47:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:47:02] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:47:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:47:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /reports | {"method":"GET","uri":"/reports","query":[],"ip":"::1"}
[2026-06-28 12:47:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:47:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:47:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:47:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /reports/expected-closures | {"method":"GET","uri":"/reports/expected-closures","query":[],"ip":"::1"}
[2026-06-28 12:47:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:47:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:47:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:47:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:48:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:48:13] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 12:48:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:48:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:48:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:48:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 12:48:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 12:48:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 12:48:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:48:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:48:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:48:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /rd/create | {"method":"GET","uri":"/rd/create","query":[],"ip":"::1"}
[2026-06-28 12:48:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:48:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:48:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:49:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:49:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /rd/store | {"method":"POST","uri":"/rd/store","query":[],"ip":"::1"}
[2026-06-28 12:49:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:49:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /rd/create | {"method":"GET","uri":"/rd/create","query":[],"ip":"::1"}
[2026-06-28 12:49:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:49:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:49:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:49:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /rd/schemes | {"method":"GET","uri":"/rd/schemes","query":[],"ip":"::1"}
[2026-06-28 12:49:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:49:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:49:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:49:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:50:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:50:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:50:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:50:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:51:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /rd/create | {"method":"GET","uri":"/rd/create","query":[],"ip":"::1"}
[2026-06-28 12:51:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:51:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 12:51:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /rd/store | {"method":"POST","uri":"/rd/store","query":[],"ip":"::1"}
[2026-06-28 12:51:33] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: rd.create — Opened RD account #12 | {"module":"rd","action":"create","old_data":null,"new_data":null}
[2026-06-28 12:51:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /rd/12 | {"method":"GET","uri":"/rd/12","query":[],"ip":"::1"}
[2026-06-28 12:51:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:51:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /rd/12/transfer-staff | {"method":"POST","uri":"/rd/12/transfer-staff","query":[],"ip":"::1"}
[2026-06-28 12:51:48] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: rd.transfer_staff — RD #RD260600002 staff transferred: - (ID:) → Test Staff (ID:207) | {"module":"rd","action":"transfer_staff","old_data":null,"new_data":null}
[2026-06-28 12:51:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /rd/12 | {"method":"GET","uri":"/rd/12","query":[],"ip":"::1"}
[2026-06-28 12:51:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:51:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:55] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 12:51:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:55] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 12:51:56] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 12:51:56] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 12:51:57] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:51:57] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 12:57:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:57:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:57:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:57:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 12:57:16] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 14:31:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:41] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 14:31:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 14:31:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 14:31:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 14:31:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:56] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:56] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 14:31:56] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:56] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 14:31:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:31:58] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 14:32:00] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:00] [debug] [index.php:283] [IP:::1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 14:32:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:14] [debug] [index.php:283] [IP:::1] Request: POST /login | {"method":"POST","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 14:32:14] [info] [helpers.php:886] [IP:::1] [USER:1] Audit: auth.login — User logged in | {"module":"auth","action":"login","old_data":null,"new_data":null}
[2026-06-28 14:32:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 14:32:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 14:32:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 14:32:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 14:32:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 14:32:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 14:32:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 14:32:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 14:32:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 14:32:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 14:32:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:32:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:32:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:33:00] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:33:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:33:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:33:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:33:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:33:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:33:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:33:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:34:00] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:34:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:34:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:34:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:34:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:34:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:34:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:35:00] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:35:00] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:35:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:35:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:35:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:35:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:35:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:35:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:36:00] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:36:00] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:36:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:36:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:36:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:36:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:36:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:36:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:37:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:37:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:37:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:37:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:37:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:37:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:44:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:44:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:44:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:44:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:44:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:44:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:44:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:44:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 14:44:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:44:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:44:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:44:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 14:44:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 14:44:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 14:44:56] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:44:56] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 14:45:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:45:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:45:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:45:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:45:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:45:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:45:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:45:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:46:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:46:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:46:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:46:47] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:46:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:46:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:46:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:46:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:47:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:47:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:47:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:47:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:47:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:47:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:47:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:47:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:48:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:48:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:50:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:50:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:50:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:50:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:50:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:50:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:50:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:50:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:50:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:50:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:51:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:51:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:51:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:51:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:51:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:51:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:52:25] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:52:25] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:52:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:52:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:53:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:53:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:53:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:53:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:53:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:53:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:54:27] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:54:27] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:54:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:54:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:54:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:54:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:55:28] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:55:28] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:55:28] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:55:28] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:55:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:55:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:56:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:56:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:56:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:56:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:56:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:56:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:57:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:57:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:57:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:57:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:57:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:57:47] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:58:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:58:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:58:31] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:58:31] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:58:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:58:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:59:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:59:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:59:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 14:59:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 14:59:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 14:59:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:00:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:00:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:00:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:00:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:00:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:00:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:01:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:01:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:01:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:01:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:01:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:01:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:02:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:02:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:02:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:02:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:02:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:02:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:03:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:03:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:03:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:03:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:03:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:03:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:04:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:04:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:04:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:04:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:04:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:04:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:05:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:05:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:05:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:05:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:05:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:05:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:06:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:06:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:06:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:06:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:06:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:06:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:07:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:07:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:07:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:07:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:07:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:07:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:08:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:08:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:08:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:08:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:08:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:08:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:09:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:09:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:09:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:09:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:09:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:09:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:10:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:10:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:10:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:10:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:10:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:10:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:11:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:11:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:11:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:11:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:11:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:11:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:12:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:12:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:12:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:12:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:12:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:12:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:13:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:13:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:13:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:13:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:13:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:13:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:14:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:14:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:14:47] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:14:47] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:14:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:14:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:15:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:15:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:15:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:15:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:15:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:15:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:16:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:16:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:16:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:16:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:16:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:16:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:17:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:17:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:17:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:17:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:17:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:17:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:18:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:18:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:18:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:18:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:18:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:18:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:19:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:19:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:19:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:19:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:19:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:19:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:20:07] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:07] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:07] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 15:20:07] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:20:09] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:09] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 15:20:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 15:20:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 15:20:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 15:20:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:20:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 15:20:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:13] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 15:20:13] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 15:20:13] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 15:20:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:20:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:20:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:20:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:20:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 15:20:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 15:20:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 15:20:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 15:20:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:55] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:20:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:20:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/create | {"method":"GET","uri":"/loans/create","query":[],"ip":"::1"}
[2026-06-28 15:21:00] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:00] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:21:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:02] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"bij"},"ip":"::1"}
[2026-06-28 15:21:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/previous-loan/10012 | {"method":"GET","uri":"/customers/previous-loan/10012","query":[],"ip":"::1"}
[2026-06-28 15:21:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/store | {"method":"POST","uri":"/loans/store","query":[],"ip":"::1"}
[2026-06-28 15:21:17] [info] [helpers.php:909] [IP:::1] [USER:1] Audit: loan.create — Created loan EMDA2806260002 for customer BIJAY SARKAR | {"module":"loan","action":"create","old_data":null,"new_data":null}
[2026-06-28 15:21:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 15:21:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:21:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/33/verify | {"method":"POST","uri":"/loans/33/verify","query":[],"ip":"::1"}
[2026-06-28 15:21:20] [info] [helpers.php:909] [IP:::1] [USER:1] Audit: loan.verify — Loan #33 — field_visit verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 15:21:20] [info] [helpers.php:909] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #33 stage: field_visit status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 15:21:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 15:21:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/33/verify | {"method":"POST","uri":"/loans/33/verify","query":[],"ip":"::1"}
[2026-06-28 15:21:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:22] [info] [helpers.php:909] [IP:::1] [USER:1] Audit: loan.verify — Loan #33 — document_check verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 15:21:22] [info] [helpers.php:909] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #33 stage: document_check status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 15:21:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:21:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 15:21:25] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:25] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:25] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/33/verify | {"method":"POST","uri":"/loans/33/verify","query":[],"ip":"::1"}
[2026-06-28 15:21:25] [info] [helpers.php:909] [IP:::1] [USER:1] Audit: loan.verify — Loan #33 — credit_check verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 15:21:25] [info] [helpers.php:909] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #33 stage: credit_check status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 15:21:25] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:21:25] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:25] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 15:21:27] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:21:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/33/approve | {"method":"POST","uri":"/loans/33/approve","query":[],"ip":"::1"}
[2026-06-28 15:21:33] [info] [helpers.php:909] [IP:::1] [USER:1] Audit: loan.approve — Approved loan #EMDA2806260002, EMI start: 2026-06-12 | {"module":"loan","action":"approve","old_data":null,"new_data":null}
[2026-06-28 15:21:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 15:21:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:21:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/33/disburse | {"method":"POST","uri":"/loans/33/disburse","query":[],"ip":"::1"}
[2026-06-28 15:21:39] [info] [helpers.php:909] [IP:::1] [USER:1] Audit: loan.disburse — Disbursed loan ID: 33 via cash | {"module":"loan","action":"disburse","old_data":null,"new_data":null}
[2026-06-28 15:21:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 15:21:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:21:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:21:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:22:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:22:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:22:25] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:22:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:22:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:22:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:23:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:23:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:23:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:23:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:24:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:24:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:24:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:24:31] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:25:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:25:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:25:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:25:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:26:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:26:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:26:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:26:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:26:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:26:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:26:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:26:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:26:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:26:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:26:25] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:26:25] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:26:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:26:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:27:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:27:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:27:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:27:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:28:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:28:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:28:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:28:31] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:28:40] [info] [EnvLoader.php:47] [IP:cli] [USER:1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:28:40] [debug] [index.php:283] [IP:cli] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":1,"fy_id":1},"ip":""}
[2026-06-28 15:28:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:28:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:28:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:28:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:29:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:29:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:29:30] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 15:29:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:29:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:29:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:29:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:29:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:29:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:29:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:29:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /assets/vendor/chartjs/chart.umd.min.js.map | {"method":"GET","uri":"/assets/vendor/chartjs/chart.umd.min.js.map","query":[],"ip":"::1"}
[2026-06-28 15:30:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:30:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:30:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:30:34] [debug] [index.php:283] [IP:::1] Request: POST /login | {"method":"POST","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 15:30:34] [info] [helpers.php:909] [IP:::1] Audit: auth.login_fail — Failed login attempt for phone 01711111111 from IP ::1 | {"module":"auth","action":"login_fail","old_data":null,"new_data":null}
[2026-06-28 15:30:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:30:34] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 15:30:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:30:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:31:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:31:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:31:34] [info] [EnvLoader.php:47] [IP:cli] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:31:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:31:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:32:10] [info] [EnvLoader.php:47] [IP:cli] [USER:1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:32:10] [debug] [index.php:283] [IP:cli] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":""}
[2026-06-28 15:32:30] [info] [EnvLoader.php:47] [IP:cli] [USER:1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:32:30] [debug] [index.php:283] [IP:cli] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":""}
[2026-06-28 15:32:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:32:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:32:36] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 15:32:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:32:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:32:39] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 15:32:53] [info] [EnvLoader.php:47] [IP:cli] [USER:1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:32:53] [debug] [index.php:283] [IP:cli] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":""}
[2026-06-28 15:33:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:13] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 15:33:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:15] [debug] [index.php:283] [IP:::1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:33:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:25] [debug] [index.php:283] [IP:::1] Request: POST /login | {"method":"POST","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 15:33:25] [info] [helpers.php:909] [IP:::1] [USER:1] Audit: auth.login — User logged in | {"module":"auth","action":"login","old_data":null,"new_data":null}
[2026-06-28 15:33:25] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 15:33:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 15:33:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 15:33:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 15:33:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:33:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:33:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:33:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:33:48] [info] [EnvLoader.php:47] [IP:cli] [USER:1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:33:48] [debug] [index.php:283] [IP:cli] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":""}
[2026-06-28 15:34:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:34:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:34:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:34:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:35:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:35:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:35:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:35:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:36:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:36:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:36:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:36:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:37:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:37:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:37:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:37:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:38:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:38:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:38:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:38:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:39:05] [info] [EnvLoader.php:47] [IP:cli] [USER:1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:39:05] [debug] [index.php:283] [IP:cli] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":""}
[2026-06-28 15:39:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:39:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:39:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:39:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:40:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:40:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:40:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:40:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:41:09] [info] [EnvLoader.php:47] [IP:cli] [USER:1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:41:09] [debug] [index.php:283] [IP:cli] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":""}
[2026-06-28 15:41:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:41:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:41:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:41:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:41:52] [info] [EnvLoader.php:47] [IP:cli] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:42:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:42:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:42:28] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:42:28] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:42:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:42:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:43:27] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:43:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:43:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:43:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:44:27] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:44:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:44:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:44:47] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:45:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:45:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:45:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:45:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:45:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:45:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:46:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:46:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:46:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:46:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:47:03] [info] [EnvLoader.php:47] [IP:cli] [USER:1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:47:03] [debug] [index.php:283] [IP:cli] [USER:1] Request: GET /accounting/financial-years/validate-company | {"method":"GET","uri":"/accounting/financial-years/validate-company","query":{"fy_id":1},"ip":""}
[2026-06-28 15:47:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:47:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:47:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:47:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:48:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:48:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:48:48] [debug] [index.php:283] [IP:::1] Request: HEAD /login | {"method":"HEAD","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 15:48:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:48:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:48:49] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 15:49:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:49:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:49:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:49:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:50:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:50:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:50:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:50:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:51:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:51:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:51:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:51:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:52:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:52:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:52:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:52:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:53:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:53:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:53:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:53:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:53:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:53:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:53:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:53:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 15:54:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:54:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:54:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:54:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:55:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:55:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:55:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:55:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:56:26] [info] [EnvLoader.php:47] [IP:cli] [USER:1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:56:26] [debug] [index.php:283] [IP:cli] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":""}
[2026-06-28 15:56:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:56:31] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:56:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:56:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:57:31] [info] [EnvLoader.php:47] [IP:cli] [USER:1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:57:31] [debug] [index.php:283] [IP:cli] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":1,"fy_id":1},"ip":""}
[2026-06-28 15:57:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:57:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:57:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:57:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:58:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:58:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:58:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:58:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:58:45] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 15:58:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:58:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:59:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:59:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:59:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:59:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 15:59:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:59:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 15:59:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 15:59:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:00:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:00:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:00:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:00:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:01:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:01:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:01:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:01:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:02:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:02:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:02:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:02:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:03:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:03:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:03:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:03:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:04:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:04:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:04:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:04:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:05:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:05:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:05:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:05:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:06:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:06:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:06:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:06:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:07:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:07:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:07:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:07:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:08:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:08:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 16:08:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:08:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:08:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:08:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/npa | {"method":"GET","uri":"/accounting/npa","query":[],"ip":"::1"}
[2026-06-28 16:08:47] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:08:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:08:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:08:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 16:08:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:08:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:09:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:09:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:10:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:10:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:11:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:11:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:12:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:12:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:13:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:13:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:14:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:14:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 16:14:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:14:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:14:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:14:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"1","fy_id":"1"},"ip":"::1"}
[2026-06-28 16:14:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:14:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"2","fy_id":"1"},"ip":"::1"}
[2026-06-28 16:15:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /accounting/financial-years/close-branch | {"method":"POST","uri":"/accounting/financial-years/close-branch","query":[],"ip":"::1"}
[2026-06-28 16:15:03] [error] [Logger.php:160] [IP:::1] [USER:1] Route dispatch failed: POST /accounting/financial-years/close-branch: TypeError: audit_log(): Argument #4 ($oldData) must be of type ?array, int given, called in C:\xampp\htdocs\ai_admin\app\Services\FinancialYearService.php on line 226 in C:\xampp\htdocs\ai_admin\app\Helpers\helpers.php:911
#0 C:\xampp\htdocs\ai_admin\app\Services\FinancialYearService.php(226): audit_log('close', 'financial_year', 'Branch 2 closed...', 1)
#1 C:\xampp\htdocs\ai_admin\app\Controllers\FinancialYearController.php(77): FinancialYearService::closeBranch(2, 1, 1)
#2 C:\xampp\htdocs\ai_admin\app\Core\Router.php(54): FinancialYearController->closeBranch()
#3 C:\xampp\htdocs\ai_admin\app\Core\Router.php(24): Router->callAction('FinancialYearCo...', 'closeBranch')
#4 C:\xampp\htdocs\ai_admin\public\index.php(292): Router->dispatch('POST', '/accounting/fin...')
#5 {main}
[2026-06-28 16:15:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:15:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 16:15:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:08] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:15:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:08] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"1","fy_id":"1"},"ip":"::1"}
[2026-06-28 16:15:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 16:15:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 16:15:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 16:15:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 16:15:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:15:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/create | {"method":"GET","uri":"/loans/create","query":[],"ip":"::1"}
[2026-06-28 16:15:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:26] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:15:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 16:15:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:15:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 16:15:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:15:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/33/collect | {"method":"POST","uri":"/loans/33/collect","query":[],"ip":"::1"}
[2026-06-28 16:15:40] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: notification.whatsapp — Whatsapp to 917001203481 — queued | {"module":"notification","action":"whatsapp","old_data":null,"new_data":null}
[2026-06-28 16:15:40] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.collect — Collected ₹116.84 for loan 33, EMI #1 | {"module":"loan","action":"collect","old_data":null,"new_data":null}
[2026-06-28 16:15:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 16:15:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:15:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/33/collect | {"method":"POST","uri":"/loans/33/collect","query":[],"ip":"::1"}
[2026-06-28 16:15:54] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: notification.whatsapp — Whatsapp to 917001203481 — queued | {"module":"notification","action":"whatsapp","old_data":null,"new_data":null}
[2026-06-28 16:15:54] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.collect — Collected ₹116.84 for loan 33, EMI #2 | {"module":"loan","action":"collect","old_data":null,"new_data":null}
[2026-06-28 16:15:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:55] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 16:15:57] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:15:57] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:16:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:16:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/33/part-payment | {"method":"POST","uri":"/loans/33/part-payment","query":[],"ip":"::1"}
[2026-06-28 16:16:20] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.part_payment — Part payment of ₹200.00 on loan 33 | {"module":"loan","action":"part_payment","old_data":null,"new_data":null}
[2026-06-28 16:16:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:16:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 16:16:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:16:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:17:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:17:21] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:18:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:18:21] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:19:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:19:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33/foreclosure-calc | {"method":"GET","uri":"/loans/33/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"100"},"ip":"::1"}
[2026-06-28 16:19:09] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:19:09] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33/foreclosure-calc | {"method":"GET","uri":"/loans/33/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"25"},"ip":"::1"}
[2026-06-28 16:19:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:19:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/33/foreclose | {"method":"POST","uri":"/loans/33/foreclose","query":[],"ip":"::1"}
[2026-06-28 16:19:16] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.foreclose — Foreclosed loan 33. Settled: ₹10,607.98, rebate: ₹266.34 | {"module":"loan","action":"foreclose","old_data":null,"new_data":null}
[2026-06-28 16:19:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:19:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 16:19:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:19:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:19:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:19:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 16:19:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:19:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:19:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:19:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 16:19:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 16:19:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 16:19:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:19:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:19:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:19:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 16:20:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:20:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:20:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:20:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 16:20:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:20:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 16:20:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:20:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:20:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:20:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 16:20:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:20:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:20:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:20:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 16:20:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:20:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:20:55] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:20:55] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 16:20:57] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:20:57] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:21:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:21:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 16:21:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:21:21] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:21:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:21:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 16:21:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:21:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:21:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:21:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:21:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:21:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 16:21:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:21:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:21:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:21:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 16:21:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 16:21:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 16:21:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:21:55] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:22:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:22:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 16:22:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:22:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:22:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:22:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:22:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:22:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 16:23:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:23:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 16:23:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:23:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:23:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:23:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:23:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:23:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 16:24:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:24:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 16:24:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:24:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:24:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:24:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:24:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 16:24:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:25:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:25:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 16:25:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:25:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:25:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:25:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 16:25:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:25:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:25:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:25:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 16:25:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:25:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:26:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:26:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:26:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:26:33] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33/noc | {"method":"GET","uri":"/loans/33/noc","query":[],"ip":"::1"}
[2026-06-28 16:26:34] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.document — Generated NOC for EMDA2806260002 | {"module":"loan","action":"document","old_data":null,"new_data":null}
[2026-06-28 16:26:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:26:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 16:26:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:26:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 16:26:49] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:26:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33/kfs | {"method":"GET","uri":"/loans/33/kfs","query":[],"ip":"::1"}
[2026-06-28 16:26:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 16:26:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 22:55:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:55:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:55:40] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 22:55:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:55:42] [debug] [index.php:283] [IP:::1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 22:55:56] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:55:56] [debug] [index.php:283] [IP:::1] Request: POST /login | {"method":"POST","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 22:55:57] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: auth.login — User logged in | {"module":"auth","action":"login","old_data":null,"new_data":null}
[2026-06-28 22:55:57] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:55:57] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 22:55:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:55:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:55:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:55:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 22:55:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 22:55:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 22:56:01] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:56:01] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 22:56:28] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:56:28] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 22:56:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:56:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:56:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 22:56:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 22:57:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:57:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 22:57:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:57:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 22:57:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:57:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-company | {"method":"GET","uri":"/accounting/financial-years/validate-company","query":{"fy_id":"1"},"ip":"::1"}
[2026-06-28 22:57:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:57:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"1","fy_id":"1"},"ip":"::1"}
[2026-06-28 22:57:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:57:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /accounting/financial-years/close-branch | {"method":"POST","uri":"/accounting/financial-years/close-branch","query":[],"ip":"::1"}
[2026-06-28 22:57:51] [error] [Logger.php:160] [IP:::1] [USER:1] Route dispatch failed: POST /accounting/financial-years/close-branch: TypeError: audit_log(): Argument #4 ($oldData) must be of type ?array, int given, called in C:\xampp\htdocs\ai_admin\app\Services\FinancialYearService.php on line 226 in C:\xampp\htdocs\ai_admin\app\Helpers\helpers.php:911
#0 C:\xampp\htdocs\ai_admin\app\Services\FinancialYearService.php(226): audit_log('close', 'financial_year', 'Branch 1 closed...', 1)
#1 C:\xampp\htdocs\ai_admin\app\Controllers\FinancialYearController.php(77): FinancialYearService::closeBranch(1, 1, 1)
#2 C:\xampp\htdocs\ai_admin\app\Core\Router.php(54): FinancialYearController->closeBranch()
#3 C:\xampp\htdocs\ai_admin\app\Core\Router.php(24): Router->callAction('FinancialYearCo...', 'closeBranch')
#4 C:\xampp\htdocs\ai_admin\public\index.php(292): Router->dispatch('POST', '/accounting/fin...')
#5 {main}
[2026-06-28 22:57:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:57:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 22:59:56] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:59:56] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /accounting/financial-years/close-branch | {"method":"POST","uri":"/accounting/financial-years/close-branch","query":[],"ip":"::1"}
[2026-06-28 22:59:56] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: financial_year.close — Branch 1 closed for FY FY2026-27 | {"module":"financial_year","action":"close","old_data":null,"new_data":null}
[2026-06-28 22:59:56] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:59:56] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 22:59:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 22:59:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:00:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/create | {"method":"GET","uri":"/loans/create","query":[],"ip":"::1"}
[2026-06-28 23:00:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:00:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"bui"},"ip":"::1"}
[2026-06-28 23:00:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"bu"},"ip":"::1"}
[2026-06-28 23:00:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"bij"},"ip":"::1"}
[2026-06-28 23:00:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/previous-loan/10012 | {"method":"GET","uri":"/customers/previous-loan/10012","query":[],"ip":"::1"}
[2026-06-28 23:00:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/store | {"method":"POST","uri":"/loans/store","query":[],"ip":"::1"}
[2026-06-28 23:00:51] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.create — Created loan EMDA2806260003 for customer BIJAY SARKAR | {"module":"loan","action":"create","old_data":null,"new_data":null}
[2026-06-28 23:00:51] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:51] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:00:53] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:53] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:00:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/verify | {"method":"POST","uri":"/loans/34/verify","query":[],"ip":"::1"}
[2026-06-28 23:00:54] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.verify — Loan #34 — field_visit verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:00:54] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #34 stage: field_visit status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:00:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:00:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:55] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/verify | {"method":"POST","uri":"/loans/34/verify","query":[],"ip":"::1"}
[2026-06-28 23:00:55] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.verify — Loan #34 — document_check verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:00:55] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #34 stage: document_check status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:00:56] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:56] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:00:57] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:57] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/verify | {"method":"POST","uri":"/loans/34/verify","query":[],"ip":"::1"}
[2026-06-28 23:00:57] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.verify — Loan #34 — credit_check verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:00:57] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #34 stage: credit_check status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:00:57] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:57] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:00:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:00:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:00:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:01:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/approve | {"method":"POST","uri":"/loans/34/approve","query":[],"ip":"::1"}
[2026-06-28 23:01:05] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.approve — Approved loan #EMDA2806260003, EMI start: 2026-03-31 | {"module":"loan","action":"approve","old_data":null,"new_data":null}
[2026-06-28 23:01:05] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:01:07] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:07] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:01:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:11] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/disburse | {"method":"POST","uri":"/loans/34/disburse","query":[],"ip":"::1"}
[2026-06-28 23:01:11] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.disburse — Disbursed loan ID: 34 via cash | {"module":"loan","action":"disburse","old_data":null,"new_data":null}
[2026-06-28 23:01:11] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:11] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:01:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:13] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:01:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/collect | {"method":"POST","uri":"/loans/34/collect","query":[],"ip":"::1"}
[2026-06-28 23:01:19] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: notification.whatsapp — Whatsapp to 917001203481 — queued | {"module":"notification","action":"whatsapp","old_data":null,"new_data":null}
[2026-06-28 23:01:19] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: loan.collect — Collected ₹116.84 for loan 34, EMI #1 | {"module":"loan","action":"collect","old_data":null,"new_data":null}
[2026-06-28 23:01:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:01:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:21] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:01:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 23:01:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 23:01:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 23:01:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 23:01:25] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:25] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:01:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:01:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:31] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"2","fy_id":"1"},"ip":"::1"}
[2026-06-28 23:01:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:31] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:01:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /accounting/financial-years/close-branch | {"method":"POST","uri":"/accounting/financial-years/close-branch","query":[],"ip":"::1"}
[2026-06-28 23:01:40] [info] [helpers.php:913] [IP:::1] [USER:1] Audit: financial_year.close — Branch 2 closed for FY FY2026-27 | {"module":"financial_year","action":"close","old_data":null,"new_data":null}
[2026-06-28 23:01:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:01:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:01:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 23:01:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:01:52] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:52] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:01:54] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:54] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:01:57] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:57] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/collect | {"method":"POST","uri":"/loans/34/collect","query":[],"ip":"::1"}
[2026-06-28 23:01:57] [error] [Logger.php:160] [IP:::1] [USER:1] Route dispatch failed: POST /loans/34/collect: Exception: Branch Financial Year is closed for this date. Backdated transaction is prohibited. in C:\xampp\htdocs\ai_admin\app\Helpers\helpers.php:238
#0 C:\xampp\htdocs\ai_admin\app\Controllers\LoanController.php(655): is_financial_year_open('2026-06-28', 2)
#1 C:\xampp\htdocs\ai_admin\app\Core\Router.php(54): LoanController->collectEmi('34')
#2 C:\xampp\htdocs\ai_admin\app\Core\Router.php(35): Router->callAction('LoanController', 'collectEmi', Array)
#3 C:\xampp\htdocs\ai_admin\public\index.php(292): Router->dispatch('POST', '/loans/34/colle...')
#4 {main}
[2026-06-28 23:01:59] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:01:59] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:05:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:05:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:05:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:05:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:05:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:05:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:05:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:05:21] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/collect | {"method":"POST","uri":"/loans/34/collect","query":[],"ip":"::1"}
[2026-06-28 23:05:21] [info] [helpers.php:905] [IP:::1] [USER:1] Audit: notification.whatsapp — Whatsapp to 917001203481 — queued | {"module":"notification","action":"whatsapp","old_data":null,"new_data":null}
[2026-06-28 23:05:21] [info] [helpers.php:905] [IP:::1] [USER:1] Audit: loan.collect — Collected ₹116.84 for loan 34, EMI #2 | {"module":"loan","action":"collect","old_data":null,"new_data":null}
[2026-06-28 23:05:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:05:21] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:05:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:05:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:05:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:05:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:05:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:05:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:06:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:06:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:06:55] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:06:55] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-company | {"method":"GET","uri":"/accounting/financial-years/validate-company","query":{"fy_id":"1"},"ip":"::1"}
[2026-06-28 23:07:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /accounting/financial-years/close-company | {"method":"POST","uri":"/accounting/financial-years/close-company","query":[],"ip":"::1"}
[2026-06-28 23:07:04] [info] [helpers.php:905] [IP:::1] [USER:1] Audit: financial_year.close — Company closed FY FY2026-27 and generated 2027-2028 | {"module":"financial_year","action":"close","old_data":null,"new_data":null}
[2026-06-28 23:07:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:07:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:07:23] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"1","fy_id":"2"},"ip":"::1"}
[2026-06-28 23:07:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 23:07:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 23:07:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 23:07:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 23:07:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:07:56] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:56] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 23:07:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:07:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:07:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:08:00] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:08:00] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:08:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:08:02] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/collect | {"method":"POST","uri":"/loans/34/collect","query":[],"ip":"::1"}
[2026-06-28 23:08:02] [error] [Logger.php:160] [IP:::1] [USER:1] Route dispatch failed: POST /loans/34/collect: Exception: Company Financial Year is closed for this date. Backdated transaction is prohibited. in C:\xampp\htdocs\ai_admin\app\Helpers\helpers.php:231
#0 C:\xampp\htdocs\ai_admin\app\Controllers\LoanController.php(655): is_financial_year_open('2026-06-28', 2)
#1 C:\xampp\htdocs\ai_admin\app\Core\Router.php(54): LoanController->collectEmi('34')
#2 C:\xampp\htdocs\ai_admin\app\Core\Router.php(35): Router->callAction('LoanController', 'collectEmi', Array)
#3 C:\xampp\htdocs\ai_admin\public\index.php(292): Router->dispatch('POST', '/loans/34/colle...')
#4 {main}
[2026-06-28 23:08:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:08:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:15:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:15:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/collect | {"method":"POST","uri":"/loans/34/collect","query":[],"ip":"::1"}
[2026-06-28 23:15:42] [error] [Logger.php:160] [IP:::1] [USER:1] Route dispatch failed: POST /loans/34/collect: Exception: Company Financial Year is closed for this date. Backdated transaction is prohibited. in C:\xampp\htdocs\ai_admin\app\Helpers\helpers.php:231
#0 C:\xampp\htdocs\ai_admin\app\Controllers\LoanController.php(655): is_financial_year_open('2026-06-28', 2)
#1 C:\xampp\htdocs\ai_admin\app\Core\Router.php(54): LoanController->collectEmi('34')
#2 C:\xampp\htdocs\ai_admin\app\Core\Router.php(35): Router->callAction('LoanController', 'collectEmi', Array)
#3 C:\xampp\htdocs\ai_admin\public\index.php(292): Router->dispatch('POST', '/loans/34/colle...')
#4 {main}
[2026-06-28 23:15:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:15:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:17:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:17:48] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:17:50] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:17:50] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:18:09] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:18:09] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:18:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:18:11] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:19:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:19:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:20:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:20:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:21:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:21:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:22:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:22:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:23:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:23:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:23:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:23:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:23:40] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 23:24:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:24:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:25:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:25:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:26:11] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:26:11] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:27:12] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:27:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:28:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:28:13] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:29:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:29:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:30:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:30:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:31:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:31:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:32:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:32:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:33:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:33:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:34:19] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:34:19] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:35:20] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:35:20] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:36:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:36:21] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:37:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:37:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:37:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:37:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:37:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:37:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:38:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:38:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:39:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:39:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:39:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:39:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:39:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:39:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-company | {"method":"GET","uri":"/accounting/financial-years/validate-company","query":{"fy_id":"2"},"ip":"::1"}
[2026-06-28 23:39:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:39:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"1","fy_id":"2"},"ip":"::1"}
[2026-06-28 23:40:27] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:40:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 23:40:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:40:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:40:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:40:31] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:40:33] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:40:34] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:40:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:40:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/collect | {"method":"POST","uri":"/loans/34/collect","query":[],"ip":"::1"}
[2026-06-28 23:40:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:40:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:40:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:40:38] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:40:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:40:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/collect | {"method":"POST","uri":"/loans/34/collect","query":[],"ip":"::1"}
[2026-06-28 23:40:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:40:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:40:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:40:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:41:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:02] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/collect | {"method":"POST","uri":"/loans/34/collect","query":[],"ip":"::1"}
[2026-06-28 23:41:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:02] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:41:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:41:11] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:11] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/penalty | {"method":"POST","uri":"/loans/34/penalty","query":[],"ip":"::1"}
[2026-06-28 23:41:11] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:12] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:41:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:41:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34/foreclosure-calc | {"method":"GET","uri":"/loans/34/foreclosure-calc","query":{"fee_rate":"2","rebate_enabled":"1","rebate_pct":"100"},"ip":"::1"}
[2026-06-28 23:41:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:21] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/foreclose | {"method":"POST","uri":"/loans/34/foreclose","query":[],"ip":"::1"}
[2026-06-28 23:41:21] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.foreclose — Foreclosed loan 34. Settled: ₹9,985.17, rebate: ₹1,076.94 | {"module":"loan","action":"foreclose","old_data":null,"new_data":null}
[2026-06-28 23:41:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:22] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:41:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:41:57] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:57] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/delete | {"method":"POST","uri":"/loans/34/delete","query":[],"ip":"::1"}
[2026-06-28 23:41:57] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:41:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 23:42:00] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:00] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:42:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/34 | {"method":"GET","uri":"/loans/34","query":[],"ip":"::1"}
[2026-06-28 23:42:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:07] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:42:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:13] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/34/delete | {"method":"POST","uri":"/loans/34/delete","query":[],"ip":"::1"}
[2026-06-28 23:42:13] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.delete — Deleted loan EMDA2806260003 (status: preclosed, amount: ₹10,000.00). Reason: ygy | {"module":"loan","action":"delete","old_data":{"id":34,"loan_no":"EMDA2806260003","customer_id":10012,"scheme_id":5,"branch_id":2,"staff_id":208,"amount":"10000.00","interest_rate":"11.00","interest_type":"flat","tenure":95,"emi_frequency":"daily","emi_amount":"116.84","total_interest":"1100.00","total_payable":"10218.85","processing_fee":"0.00","insurance_fee":"200.00","gst_amount":"0.00","application_fee":"0.00","membership_fee":"0.00","disbursed_amount":"9800.00","customer_location_name":null,"customer_latitude":null,"customer_longitude":null,"total_paid":"10218.85","total_penalty":"195.79","outstanding":"0.00","applied_date":"2026-06-28","approved_date":"2026-06-28","disbursed_date":"2026-06-28","first_emi_date":"2026-03-31","maturity_date":"2026-07-03","closed_date":"2026-06-28","status":"preclosed","approved_by":1,"remarks":null,"created_at":"2026-06-28 23:00:51","updated_at":"2026-06-28 23:41:21","parent_loan_id":null,"restructure_count":0,"dpd":0,"asset_class":"standard","npa_date":null,"provision_pct":"0.00","provision_amount":"0.00","written_off":0,"write_off_date":null,"write_off_amount":"0.00","recovered_after_writeoff":"0.00","writeoff_amount":"0.00","writeoff_date":null,"settlement_amount":"0.00","disbursement_mode":"cash","disbursement_ref":null,"disbursement_account":null,"workflow_stage":"committee","verification_score":null,"field_visit_date":"2026-06-28","field_visit_by":1,"credit_score":null,"credit_check_date":null,"recovery_stage":null,"recovery_assigned_to":null,"gold_loan":0,"gold_value":"0.00","gold_weight":"0.000","gold_ltv":"75.00","gold_market_rate":"0.00","margin_call_amount":"0.00"},"new_data":null}
[2026-06-28 23:42:13] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:13] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 23:42:15] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:42:16] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:16] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/33 | {"method":"GET","uri":"/loans/33","query":[],"ip":"::1"}
[2026-06-28 23:42:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:42:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/33/delete | {"method":"POST","uri":"/loans/33/delete","query":[],"ip":"::1"}
[2026-06-28 23:42:24] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.delete — Deleted loan EMDA2806260002 (status: preclosed, amount: ₹10,000.00). Reason: hjgyjh | {"module":"loan","action":"delete","old_data":{"id":33,"loan_no":"EMDA2806260002","customer_id":10012,"scheme_id":5,"branch_id":2,"staff_id":208,"amount":"10000.00","interest_rate":"11.00","interest_type":"flat","tenure":95,"emi_frequency":"daily","emi_amount":"116.84","total_interest":"1100.00","total_payable":"11041.66","processing_fee":"0.00","insurance_fee":"200.00","gst_amount":"0.00","application_fee":"0.00","membership_fee":"0.00","disbursed_amount":"9800.00","customer_location_name":null,"customer_latitude":null,"customer_longitude":null,"total_paid":"11041.66","total_penalty":"208.00","outstanding":"0.00","applied_date":"2026-06-28","approved_date":"2026-06-28","disbursed_date":"2026-06-28","first_emi_date":"2026-06-12","maturity_date":"2026-09-14","closed_date":"2026-06-28","status":"preclosed","approved_by":1,"remarks":null,"created_at":"2026-06-28 15:21:17","updated_at":"2026-06-28 16:19:16","parent_loan_id":null,"restructure_count":0,"dpd":0,"asset_class":"standard","npa_date":null,"provision_pct":"0.00","provision_amount":"0.00","written_off":0,"write_off_date":null,"write_off_amount":"0.00","recovered_after_writeoff":"0.00","writeoff_amount":"0.00","writeoff_date":null,"settlement_amount":"0.00","disbursement_mode":"cash","disbursement_ref":null,"disbursement_account":null,"workflow_stage":"committee","verification_score":null,"field_visit_date":"2026-06-28","field_visit_by":1,"credit_score":null,"credit_check_date":null,"recovery_stage":null,"recovery_assigned_to":null,"gold_loan":0,"gold_value":"0.00","gold_weight":"0.000","gold_ltv":"75.00","gold_market_rate":"0.00","margin_call_amount":"0.00"},"new_data":null}
[2026-06-28 23:42:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:24] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 23:42:26] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:42:27] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:27] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/32 | {"method":"GET","uri":"/loans/32","query":[],"ip":"::1"}
[2026-06-28 23:42:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:42:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/32/delete | {"method":"POST","uri":"/loans/32/delete","query":[],"ip":"::1"}
[2026-06-28 23:42:35] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.delete — Deleted loan EMDA2806260001 (status: preclosed, amount: ₹10,000.00). Reason: jhgfh | {"module":"loan","action":"delete","old_data":{"id":32,"loan_no":"EMDA2806260001","customer_id":10012,"scheme_id":5,"branch_id":2,"staff_id":208,"amount":"10000.00","interest_rate":"11.00","interest_type":"flat","tenure":95,"emi_frequency":"daily","emi_amount":"116.84","total_interest":"1100.00","total_payable":"10882.30","processing_fee":"0.00","insurance_fee":"200.00","gst_amount":"0.00","application_fee":"0.00","membership_fee":"0.00","disbursed_amount":"9800.00","customer_location_name":null,"customer_latitude":null,"customer_longitude":null,"total_paid":"10882.30","total_penalty":"0.00","outstanding":"0.00","applied_date":"2026-06-28","approved_date":"2026-06-28","disbursed_date":"2026-06-28","first_emi_date":"2026-06-26","maturity_date":"2026-09-28","closed_date":"2026-06-28","status":"preclosed","approved_by":1,"remarks":null,"created_at":"2026-06-28 11:29:05","updated_at":"2026-06-28 11:37:04","parent_loan_id":null,"restructure_count":0,"dpd":0,"asset_class":"standard","npa_date":null,"provision_pct":"0.00","provision_amount":"0.00","written_off":0,"write_off_date":null,"write_off_amount":"0.00","recovered_after_writeoff":"0.00","writeoff_amount":"0.00","writeoff_date":null,"settlement_amount":"0.00","disbursement_mode":"cash","disbursement_ref":null,"disbursement_account":null,"workflow_stage":"committee","verification_score":null,"field_visit_date":"2026-06-28","field_visit_by":1,"credit_score":null,"credit_check_date":null,"recovery_stage":null,"recovery_assigned_to":null,"gold_loan":0,"gold_value":"0.00","gold_weight":"0.000","gold_ltv":"75.00","gold_market_rate":"0.00","margin_call_amount":"0.00"},"new_data":null}
[2026-06-28 23:42:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 23:42:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:42:40] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:40] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/create | {"method":"GET","uri":"/loans/create","query":[],"ip":"::1"}
[2026-06-28 23:42:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:42:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/search | {"method":"GET","uri":"/customers/search","query":{"q":"bi"},"ip":"::1"}
[2026-06-28 23:42:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:42:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/previous-loan/10012 | {"method":"GET","uri":"/customers/previous-loan/10012","query":[],"ip":"::1"}
[2026-06-28 23:43:02] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/store | {"method":"POST","uri":"/loans/store","query":[],"ip":"::1"}
[2026-06-28 23:43:03] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.create — Created loan EMDA2806260001 for customer BIJAY SARKAR | {"module":"loan","action":"create","old_data":null,"new_data":null}
[2026-06-28 23:43:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:03] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/35 | {"method":"GET","uri":"/loans/35","query":[],"ip":"::1"}
[2026-06-28 23:43:05] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:43:22] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:23] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:43:24] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:25] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:43:28] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-company | {"method":"GET","uri":"/accounting/financial-years/validate-company","query":{"fy_id":"2"},"ip":"::1"}
[2026-06-28 23:43:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"1","fy_id":"2"},"ip":"::1"}
[2026-06-28 23:43:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"2","fy_id":"2"},"ip":"::1"}
[2026-06-28 23:43:46] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:46] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"2","fy_id":"2"},"ip":"::1"}
[2026-06-28 23:43:56] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:56] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans | {"method":"GET","uri":"/loans","query":[],"ip":"::1"}
[2026-06-28 23:43:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:43:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/35 | {"method":"GET","uri":"/loans/35","query":[],"ip":"::1"}
[2026-06-28 23:43:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:44:00] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:00] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:44:01] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:01] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/35/verify | {"method":"POST","uri":"/loans/35/verify","query":[],"ip":"::1"}
[2026-06-28 23:44:01] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.verify — Loan #35 — field_visit verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:44:01] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #35 stage: field_visit status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:44:01] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:01] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/35 | {"method":"GET","uri":"/loans/35","query":[],"ip":"::1"}
[2026-06-28 23:44:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:03] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/35/verify | {"method":"POST","uri":"/loans/35/verify","query":[],"ip":"::1"}
[2026-06-28 23:44:04] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.verify — Loan #35 — document_check verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:44:04] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #35 stage: document_check status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:44:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:44:04] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:04] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/35 | {"method":"GET","uri":"/loans/35","query":[],"ip":"::1"}
[2026-06-28 23:44:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:44:07] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:07] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/35/verify | {"method":"POST","uri":"/loans/35/verify","query":[],"ip":"::1"}
[2026-06-28 23:44:07] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.verify — Loan #35 — credit_check verification: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:44:07] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.verify — Verified loan #35 stage: credit_check status: passed | {"module":"loan","action":"verify","old_data":null,"new_data":null}
[2026-06-28 23:44:07] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:07] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/35 | {"method":"GET","uri":"/loans/35","query":[],"ip":"::1"}
[2026-06-28 23:44:09] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:09] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:44:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:14] [debug] [index.php:283] [IP:::1] [USER:1] Request: POST /loans/35/approve | {"method":"POST","uri":"/loans/35/approve","query":[],"ip":"::1"}
[2026-06-28 23:44:14] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: loan.approve — Approved loan #EMDA2806260001, EMI start: 2026-06-23 | {"module":"loan","action":"approve","old_data":null,"new_data":null}
[2026-06-28 23:44:14] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:15] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /loans/35 | {"method":"GET","uri":"/loans/35","query":[],"ip":"::1"}
[2026-06-28 23:44:17] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:17] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:44:28] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:44:29] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:29] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:44:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:30] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:44:31] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:31] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:44:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:32] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"2","fy_id":"2"},"ip":"::1"}
[2026-06-28 23:44:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:41] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:44:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:44:44] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:44] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"2","fy_id":"2"},"ip":"::1"}
[2026-06-28 23:44:48] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:49] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"1","fy_id":"2"},"ip":"::1"}
[2026-06-28 23:44:58] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:44:58] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"2","fy_id":"2"},"ip":"::1"}
[2026-06-28 23:45:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:45:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:46:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:46:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:47:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:47:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:48:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:48:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:49:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:49:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:50:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:50:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years | {"method":"GET","uri":"/accounting/financial-years","query":[],"ip":"::1"}
[2026-06-28 23:50:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:50:08] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:50:11] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:50:11] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"2","fy_id":"1"},"ip":"::1"}
[2026-06-28 23:50:18] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:50:18] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"2","fy_id":"1"},"ip":"::1"}
[2026-06-28 23:50:21] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:50:21] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /accounting/financial-years/validate-branch | {"method":"GET","uri":"/accounting/financial-years/validate-branch","query":{"branch_id":"2","fy_id":"1"},"ip":"::1"}
[2026-06-28 23:50:34] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:50:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 23:50:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:50:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:50:35] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:50:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 23:50:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 23:50:35] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 23:50:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:50:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:51:05] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:51:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 23:51:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:51:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:51:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:51:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 23:52:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:52:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 23:52:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:52:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:52:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 23:52:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:53:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:53:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 23:53:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:53:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:53:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:53:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 23:54:06] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:54:06] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 23:54:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:54:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:54:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:54:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 23:55:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:55:36] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:55:37] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:55:37] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 23:56:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:56:36] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:56:36] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 23:56:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:56:38] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:56:38] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 23:57:27] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:57:27] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:57:27] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 23:57:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:57:30] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:57:30] [debug] [index.php:283] [IP:::1] Request: GET /login | {"method":"GET","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 23:57:32] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:57:32] [debug] [index.php:283] [IP:::1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:57:41] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:57:41] [debug] [index.php:283] [IP:::1] Request: POST /login | {"method":"POST","uri":"/login","query":[],"ip":"::1"}
[2026-06-28 23:57:42] [info] [helpers.php:922] [IP:::1] [USER:1] Audit: auth.login — User logged in | {"module":"auth","action":"login","old_data":null,"new_data":null}
[2026-06-28 23:57:42] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:57:42] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 23:57:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:57:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:57:43] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:57:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 23:57:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 23:57:43] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 23:57:45] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:57:45] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:58:05] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:58:05] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /customers/create | {"method":"GET","uri":"/customers/create","query":[],"ip":"::1"}
[2026-06-28 23:58:07] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:58:07] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:58:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:58:08] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET / | {"method":"GET","uri":"/","query":[],"ip":"::1"}
[2026-06-28 23:58:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:58:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:58:08] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:58:08] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"monthly_comparison"},"ip":"::1"}
[2026-06-28 23:58:08] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"loan_status"},"ip":"::1"}
[2026-06-28 23:58:08] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/charts | {"method":"GET","uri":"/dashboard/charts","query":{"type":"collection_trend"},"ip":"::1"}
[2026-06-28 23:58:10] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:58:10] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /sw.js | {"method":"GET","uri":"/sw.js","query":{"zone":"officer"},"ip":"::1"}
[2026-06-28 23:58:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:58:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 23:59:09] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:59:09] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:59:09] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /notifications/count | {"method":"GET","uri":"/notifications/count","query":[],"ip":"::1"}
[2026-06-28 23:59:09] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
[2026-06-28 23:59:39] [info] [EnvLoader.php:47] [IP:::1] Environment loaded via vlucas/phpdotenv
[2026-06-28 23:59:39] [debug] [index.php:283] [IP:::1] [USER:1] Request: GET /dashboard/stats | {"method":"GET","uri":"/dashboard/stats","query":[],"ip":"::1"}
