# age-gate/3.7.3/src/Admin/Controller/AdvancedController.php

Age Gate, version 3.7.3. 53 lines.

- Page: https://pluginprobe.com/plugins/age-gate/3.7.3/code/src/Admin/Controller/AdvancedController.php
- Raw: https://pluginprobe.com/plugins/age-gate/3.7.3/raw/src/Admin/Controller/AdvancedController.php
- Modified: 2022-09-11T18:42:32+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/age-gate/3.7.3/code/src/Admin/Controller/AdvancedController.php#L10-L20`.

```php
<?php

namespace AgeGate\Admin\Controller;

use Asylum\Utility\Storage;
use AgeGate\Admin\Settings\Advanced;
use AgeGate\Common\Admin\AbstractController;
use AgeGate\Common\Immutable\Constants as Immutable;

class AdvancedController extends AbstractController
{
    use Advanced;
    public const PERMISSION = Immutable::ADVANCED;
    public const OPTION = Immutable::OPTION_ADVANCED;

    public function register(): void
    {
        $this->menu(__('Advanced', 'age-gate'), self::PERMISSION);
    }

    protected function required(): bool
    {
        return current_user_can(self::PERMISSION);
    }

    protected function data(): array
    {
        return get_option(Immutable::OPTION_ADVANCED, []) ?: [];
    }

    protected function fields(): array
    {
        return $this->getAdvancedFields();
    }

    protected function rules() : array
    {
        return [
            'method' => 'alpha',
            'munge' => 'boolean',
            'in_header' => 'boolean',
            'preload' => 'boolean',
            'focus' => 'boolean',
            'dev_tools' => 'boolean',
            'rta' => 'boolean',
            'toolbar' => 'boolean',
            'anonymous' => 'boolean',
            'cookie_name' => 'ag_alpha_underscore',
            'css_type' => "alpha_numeric",
        ];
    }
}

```
