Action Log
Adalah module untuk menyimpan informasi log perubahan object pada aplikasi.
Instalasi
Jalankan perintah di bawah di folder aplikasi:
mim app install lib-action-log
Penggunaan
Module ini menambah satu library dengan nama LibActionLog\Library\Logger yang memiliki
static method create.
create(array $data): bool
Contoh cara menambahkan satu log adalah sebagai berikut:
use LibActionLog\Library\Logger;
$data = [
'user' => 1,
'object' => 1,
'parent' => 1,
'method' => 2,
'type' => 1,
'original' => (object)[
'id' => 2,
'name' => 'user-name',
'fullname' => 'User Full Name',
'password' => 'abc',
'updated' => date('Y-m-d H:i:s'),
'created' => date('Y-m-d H:i:s')
],
'changes' => (object)[
'name' => 'new-name',
'fullname' => 'New User Fullname',
'password' => 'abc'
]
];
if(!Logger::create($data))
deb( Logger::lastError() );
Parameter $data fungsi create adalah sebagai berikut:
user
Informasi user id yang melakukan perubahanobject
Object id yang berubah/dibuat/dihapus.parent
Parent id jika ada, atau null jika tidak memiliki parentmethod
Metode perubahan. Properti ini menerima nilai1untuk create,2untuk update, dan3untuk hapus.type
Tipe object yang berubah, contohnyapost,post-category, dan lain-lain.original
Nilai properti object sebelum berubah, properti ini harus null untuk method1, dan object untuk lainnya.changes
Nilai properti object yang berubah, properti ini harus null untuk method3dan object untuk lainnya.
Sebagai catatan, properti id, updated, dan created ( jika ada ) tidak dianggap sebagai perubahan dan pun tidak adak disimpan
sebagai properti perubahan.