diff --git a/src/Command/AuditLogCleanupCommand.php b/src/Command/AuditLogCleanupCommand.php
index 45ed71d2..cc89ed20 100755
--- a/src/Command/AuditLogCleanupCommand.php
+++ b/src/Command/AuditLogCleanupCommand.php
@@ -10,95 +10,101 @@
/**
* Custom AuditLog Clean Drush command.
*/
-class AuditLogCleanupCommand extends DrushCommands {
+class AuditLogCleanupCommand extends DrushCommands
+{
- /**
- * The configuration service.
- *
- * @var \Drupal\Core\Config\ConfigFactoryInterface
- */
- protected $configFactory;
+ /**
+ * The configuration service.
+ *
+ * @var \Drupal\Core\Config\ConfigFactoryInterface
+ */
+ protected $configFactory;
- /**
- * Constructs a AuditLogCleanupCommand object.
- *
- * @param \Drupal\Core\Config\ConfigFactoryInterface $config_factory
- * The configuration service.
- */
- public function __construct(ConfigFactoryInterface $config_factory) {
- $this->configFactory = $config_factory;
- }
-
- /**
- * {@inheritdoc}
- */
- public static function create(ContainerInterface $container) {
- return new static(
- $container->get('config.factory')
- );
- }
+ /**
+ * Constructs a AuditLogCleanupCommand object.
+ *
+ * @param \Drupal\Core\Config\ConfigFactoryInterface $config_factory
+ * The configuration service.
+ */
+ public function __construct(ConfigFactoryInterface $config_factory)
+ {
+ $this->configFactory = $config_factory;
+ }
- /**
- * Removes log entries older than the configured retention period.
- *
- * @command tide_core:auditlog-cleanup
- * @aliases tcl
- * @description Cleans up audittrail logs older than the configured retention period.
- *
- * @option force-cleanup Skip confirmation and run the cleanup immediately.
- */
- public function cleanupLogs($options = ['force-cleanup' => FALSE]) {
- // Check if the user passed the --force-cleanup option.
- if (!$options['force-cleanup']) {
- // If the force-cleanup flag isn't passed, ask for confirmation.
- $confirmation = $this->confirmCleanup();
- if (!$confirmation) {
- $this->output()->writeln('Cleanup operation cancelled.');
- return;
- }
+ /**
+ * {@inheritdoc}
+ */
+ public static function create(ContainerInterface $container)
+ {
+ return new static(
+ $container->get('config.factory')
+ );
}
- $config = $this->configFactory->get('tide_core.settings');
- define('DEFAULT_LOG_RETENTION_DAYS', 30);
- $log_retention_days = $config->get('log_retention_days') ?: DEFAULT_LOG_RETENTION_DAYS;
- // Get current date and time.
- $current_time = new DateTime();
- $current_time->sub(new DateInterval("P{$log_retention_days}D"));
- $threshold_timestamp = $current_time->getTimestamp();
- // Connect to the database.
- $database = Database::getConnection();
- $deleted = $database->delete('admin_audit_trail')
- ->condition('created', $threshold_timestamp, '<')
- ->execute();
- // Output the result.
- $this->output()->writeln("Deleted $deleted log entries older than $log_retention_days days.");
- // Run a database optimization command to recover space.
- $this->optimizeDatabase();
- }
+ /**
+ * Removes log entries older than the configured retention period.
+ *
+ * @command tide_core:auditlog-cleanup
+ * @aliases tcl
+ * @description Cleans up audittrail logs older than the configured retention period.
+ *
+ * @option force-cleanup Skip confirmation and run the cleanup immediately.
+ */
+ public function cleanupLogs($options = ['force-cleanup' => false])
+ {
+ // Check if the user passed the --force-cleanup option.
+ if (!$options['force-cleanup']) {
+ // If the force-cleanup flag isn't passed, ask for confirmation.
+ $confirmation = $this->confirmCleanup();
+ if (!$confirmation) {
+ $this->output()->writeln('Cleanup operation cancelled.');
+ return;
+ }
+ }
+ $config = $this->configFactory->get('tide_core.settings');
+ define('DEFAULT_LOG_RETENTION_DAYS', 30);
+ $log_retention_days = $config->get('log_retention_days') ?: DEFAULT_LOG_RETENTION_DAYS;
+ // Get current date and time.
+ $current_time = new DateTime();
+ $current_time->sub(new DateInterval("P{$log_retention_days}D"));
+ $threshold_timestamp = $current_time->getTimestamp();
+ // Connect to the database.
+ $database = Database::getConnection();
+ $deleted = $database->delete('admin_audit_trail')
+ ->condition('created', $threshold_timestamp, '<')
+ ->execute();
+
+ // Output the result.
+ $this->output()->writeln("Deleted $deleted log entries older than $log_retention_days days.");
+ // Run a database optimization command to recover space.
+ $this->optimizeDatabase();
+ }
- /**
- * Ask for confirmation before proceeding with the cleanup.
- *
- * @return bool
- * TRUE if the user confirms, FALSE if the user cancels.
- */
- private function confirmCleanup() {
- $question = 'Are you sure you want to delete log entries older than the configured retention period? (y/n): ';
- $confirmation = $this->io()->ask($question, 'n');
- $confirmation = strtolower($confirmation);
- // Return TRUE if the user answers 'y' or 'yes'.
- return in_array($confirmation, ['y', 'yes']);
- }
+ /**
+ * Ask for confirmation before proceeding with the cleanup.
+ *
+ * @return bool
+ * TRUE if the user confirms, FALSE if the user cancels.
+ */
+ private function confirmCleanup()
+ {
+ $question = 'Are you sure you want to delete log entries older than the configured retention period? (y/n): ';
+ $confirmation = $this->io()->ask($question, 'n');
+ $confirmation = strtolower($confirmation);
+ // Return TRUE if the user answers 'y' or 'yes'.
+ return in_array($confirmation, ['y', 'yes']);
+ }
- /**
- * Run database optimization (optional).
- *
- * @return void
- * TRUE write the message.
- */
- private function optimizeDatabase() {
- $database = Database::getConnection();
- $database->query('OPTIMIZE TABLE {admin_audit_trail}');
- $this->output()->writeln("Database optimized to recover space.");
- }
+ /**
+ * Run database optimization (optional).
+ *
+ * @return void
+ * TRUE write the message.
+ */
+ private function optimizeDatabase()
+ {
+ $database = Database::getConnection();
+ $database->query('OPTIMIZE TABLE {admin_audit_trail}');
+ $this->output()->writeln("Database optimized to recover space.");
+ }
}