PHP code example of postare / filament-contact-logs

1. Go to this page and download the library: Download postare/filament-contact-logs library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

postare / filament-contact-logs example snippets


return [
    /*
     * When the clean-command is executed, all recording activities older than
     * the number of days specified here will be deleted.
     */
    'delete_records_older_than_days' => 365,

    /*
     * Model to use to log activity.
     */
    'contact_log_model' => \Postare\FilamentContactLogs\Models\ContactLog::class,

    /*
     * List of Models associated with contact messages, it is not mandatory
     * to specify them, it is for obtaining a more user-friendly table.
     */
    'mappings' => [
        //        EXAMPLE:
        //        'App\Models\Property' => [
        //            'type' => 'Property',
        //            'pluralType' => 'Properties',
        //            'label' => 'ID: {id}',
        //            'titleField' => 'name',
        //            'route' => 'property',
        //            'record_identifier' => 'slug',
        //        ],
    ],
];

// app\Providers\Filament\AdminPanelProvider.php
$panel
    ...
    ->plugins([
        ...
        \Postare\FilamentContactLogs\FilamentContactLogsPlugin::make(),
    ]);

// Use HasContactLogs trait in your model
use Postare\FilamentContactLogs\Traits\HasContactLogs;

Property::find(1)->addContactLog([
    'content' => 'A beautiful message',
    'subject' => 'A subject',
    'sender_id' => auth()?->id(),       // optional
    'sender_email' => '[email protected]',
    'sender_name' => 'John Doe',
    'sender_phone' => '1234567890',     // optional
]);

contactLog([
    'content' => 'A beautiful message',
    'subject' => 'A subject',
    'sender_id' => auth()?->id(),       // optional
    'sender_email' => '[email protected]',
    'sender_name' => 'John Doe',
    'sender_phone' => '1234567890',     // optional
]);

// Add the following to your app\Console\Kernel.php
protected function schedule(Schedule $schedule): void
{
    $schedule->command('contact-logs:clean')->daily();
}
bash
php artisan vendor:publish --tag="filament-contact-logs-migrations"
php artisan migrate
bash
php artisan vendor:publish --tag="filament-contact-logs-config"