View .md

BackupPolicyEvent events

5 FeatherPanel plugin events on BackupPolicyEvent (5 emitted by the core): the event names, the arguments each listener gets, where they fire and a PHP listener for each.

Last synced from FeatherPanel 15b94e9 on .

On this page

Part of the plugin events reference. Listeners get the payload values as positional arguments in the order shown, cannot cancel the action, and must catch their own exceptions.

Setup

Import BackupPolicyEvent in your entry class and register listeners in processEvents():

<?php

namespace App\Addons\myplugin;

use App\App;
use App\Plugins\AppPlugin;
use App\Plugins\PluginEvents;
use App\Plugins\Events\Events\BackupPolicyEvent;

class MyPlugin implements AppPlugin
{
    public static function processEvents(PluginEvents $event): void
    {
        $event->on(BackupPolicyEvent::onBackupPolicyCreated(), function ($policy, $createdBy): void {
            App::getInstance(true)->getLogger()->info('[myplugin] featherpanel:admin:backup_policy:created');
        });
    }

    public static function pluginInstall(): void
    {
    }

    public static function pluginUninstall(): void
    {
    }
}

BackupPolicyEvent::onBackupPolicyCreated()

Name: featherpanel:admin:backup_policy:createdemitted at 1 siteCancel or modify: nodefinition
#Payload keyListener parameterType
1policy$policynot declared
2created_by$createdBynot declared
When it fires (1 site)
$event->on(BackupPolicyEvent::onBackupPolicyCreated(), function ($policy, $createdBy): void {
    App::getInstance(true)->getLogger()->info('[myplugin] featherpanel:admin:backup_policy:created');
});

BackupPolicyEvent::onBackupPolicyDeleted()

Name: featherpanel:admin:backup_policy:deletedemitted at 1 siteCancel or modify: nodefinition
#Payload keyListener parameterType
1policy$policynot declared
2deleted_by$deletedBynot declared
When it fires (1 site)
$event->on(BackupPolicyEvent::onBackupPolicyDeleted(), function ($policy, $deletedBy): void {
    App::getInstance(true)->getLogger()->info('[myplugin] featherpanel:admin:backup_policy:deleted');
});

BackupPolicyEvent::onBackupPolicyRunCompleted()

Name: featherpanel:admin:backup_policy:run:completedemitted at 2 sites2 payload shapesCancel or modify: nodefinition
#Payload keyListener parameterType
1policy$policyarray
2result$resultnot declared
3manual$manualnot at every sitebool
Arguments passedEmitted from
policy, result, manual
BackupSchedulesController::runNow
policy, result
AAdminBackupPolicyProcessor::processPolicy
When it fires (2 sites)
$event->on(BackupPolicyEvent::onBackupPolicyRunCompleted(), function ($policy, $result, ...$rest): void {
    App::getInstance(true)->getLogger()->info('[myplugin] featherpanel:admin:backup_policy:run:completed ' . json_encode(['policy' => $policy]));
});

BackupPolicyEvent::onBackupPolicyRunStarted()

Name: featherpanel:admin:backup_policy:run:startedemitted at 2 sites2 payload shapesCancel or modify: nodefinition
#Payload keyListener parameterType
1policy$policyarray
2manual$manualnot at every sitebool
3triggered_by$triggeredBynot at every sitenot declared
Arguments passedEmitted from
policy, manual, triggered_by
BackupSchedulesController::runNow
policy
AAdminBackupPolicyProcessor::processPolicy
When it fires (2 sites)
$event->on(BackupPolicyEvent::onBackupPolicyRunStarted(), function ($policy, ...$rest): void {
    App::getInstance(true)->getLogger()->info('[myplugin] featherpanel:admin:backup_policy:run:started ' . json_encode(['policy' => $policy]));
});

BackupPolicyEvent::onBackupPolicyUpdated()

Name: featherpanel:admin:backup_policy:updatedemitted at 1 siteCancel or modify: nodefinition
#Payload keyListener parameterType
1policy$policynot declared
2updated_by$updatedBynot declared
When it fires (1 site)
$event->on(BackupPolicyEvent::onBackupPolicyUpdated(), function ($policy, $updatedBy): void {
    App::getInstance(true)->getLogger()->info('[myplugin] featherpanel:admin:backup_policy:updated');
});