# WebGIS Poverty Map Aplikasi WebGIS PHP + MySQL untuk pemetaan data kemiskinan, fasilitas, laporan warga, dan analisis blank spot bantuan. ## Stack - PHP 8.2 Apache - MySQL/MariaDB - Leaflet - PDO MySQL ## Deploy Coolify 1. Buat database MySQL/MariaDB di Coolify. 2. Import `database/webgis_db.sql` ke database tersebut. 3. Buat aplikasi baru dari repo ini. 4. Pilih build menggunakan `Dockerfile` di root repository. 5. Set environment variable: ```env APP_BASE_PATH= SESSION_SECURE=true CORS_ALLOWED_ORIGIN= DB_HOST=nama-service-database DB_PORT=3306 DB_DATABASE=webgis_db DB_USERNAME=user_database DB_PASSWORD=password_database ``` Root aplikasi menampilkan halaman pemilih progres dari `index.html`. Versi final berjalan di `/project_final`, jadi gunakan `APP_BASE_PATH=/project_final` untuk deploy Coolify ini. `CORS_ALLOWED_ORIGIN` boleh dikosongkan untuk same-origin deployment. Isi dengan domain aplikasi jika API memang perlu diakses dari origin lain. ## Akun Awal (4 Role SKPL) Sistem memakai 4 peran sesuai SKPL: **Publik, Enumerator, Operator, Pimpinan**. Database lama yang sudah dimigrasi (`database/migrations/001_fase_a_roles.sql`): - Operator: `admin / admin123` (akun lama `admin`, kini role operator) - Pimpinan: `pengguna / user123` (akun lama `user`, kini role pimpinan) - Enumerator: `enumerator / user123` Install baru (`database/webgis_db.sql`) memakai username yang lebih jelas: - Operator: `operator / admin123` - Pimpinan: `pimpinan / user123` - Enumerator: `enumerator / user123` Publik tidak perlu login — akses langsung `peta_publik.php`. Ganti password akun demo setelah deploy jika aplikasi dibuka publik. ## Migrasi Database Untuk DB existing, jalankan berurutan: ``` mysql -u root webgis_db < database/migrations/001_fase_a_roles.sql mysql -u root webgis_db < database/migrations/002_wilayah.sql ``` Install baru cukup import `database/webgis_db.sql` (sudah mencakup semuanya). ## Struktur Penting - `index.html` - halaman awal untuk memilih progres. - `01/`, `02/`, `03/`, `final/` - progres pertemuan. - `project_final/` - aplikasi final yang berjalan di `/project_final`. - `database/webgis_db.sql` - struktur dan seed database lengkap. - `Dockerfile` - image PHP Apache untuk Coolify. - `.env.example` - contoh environment variable deploy. ## Local XAMPP Untuk menjalankan dari XAMPP seperti struktur lama, set base path: ```env APP_BASE_PATH=/project/project_final DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=webgis_db DB_USERNAME=root DB_PASSWORD= ``` Import `database/webgis_db.sql`, lalu buka `/project/project_final/login.php`.