/home/ivoiecob/email.hirewise-va.com/modules/S3Filestorage/Settings.php
<?php
/**
 * This code is licensed under AGPLv3 license or Afterlogic Software License
 * if commercial version of the product was purchased.
 * For full statements of the licenses see LICENSE-AFTERLOGIC and LICENSE-AGPL3 files.
 */

namespace Aurora\Modules\S3Filestorage;

use Aurora\System\SettingsProperty;

/**
 * @property bool $Disabled
 * @property string $AccessKey
 * @property string $SecretKey
 * @property string $Region
 * @property string $Host
 * @property string $BucketPrefix
 * @property string $BucketLocation
 * @property int $PresignedLinkLifetimeMinutes
 * @property bool $RedirectToOriginalFileURLs
 * @property bool $UsePathStyleEndpoint
 */

class Settings extends \Aurora\System\Module\Settings
{
    protected function initDefaults()
    {
        $this->aContainer = [
            "Disabled" => new SettingsProperty(
                false,
                "bool",
                null,
                "Setting to true disables the module",
            ),
            "AccessKey" => new SettingsProperty(
                "",
                "string",
                null,
                "S3 storage access key",
            ),
            "SecretKey" => new SettingsProperty(
                "",
                "string",
                null,
                "S3 storage secret key",
            ),
            "Region" => new SettingsProperty(
                "",
                "string",
                null,
                "S3 storage region. For AWS S3, specify region value. For other S3-compatible services, for instance DigitalOcean Spaces, set to us-east-1 .",
            ),
            "Host" => new SettingsProperty(
                "",
                "string",
                null,
                "S3 storage hostname. For AWS S3, leave empty. For other S3-compatible services set to your endpoint value (e.g.: nyc1.digitaloceanspaces.com for Digital Ocean Spaces).",
            ),
            "BucketPrefix" => new SettingsProperty(
                "",
                "string",
                null,
                "Bucket prefix you wish to be used",
            ),
            "BucketLocation" => new SettingsProperty(
                "",
                "string",
                null,
                "By specifying a specific location (e.g., EUROPE-WEST6), the bucket will be created as a regional bucket, not a multi-region bucket.",
            ),
            "PresignedLinkLifetimeMinutes" => new SettingsProperty(
                60,
                "int",
                null,
                "Lifetime of links with authentication token built into those, for use by external services such as OnlyOffice",
            ),
            "RedirectToOriginalFileURLs" => new SettingsProperty(
                true,
                "bool",
                null,
                "If true, files on S3 storage are obtained via redirect to their actual URLs",
            ),
            "UsePathStyleEndpoint" => new SettingsProperty(
                false,
                "bool",
                null,
                "If true, send requests to an S3 path style endpoint"
            ),
        ];
    }
}