eveseat/services

View on GitHub
src/Settings/Seat.php

Summary

Maintainability
A
0 mins
Test Coverage
<?php

/*
 * This file is part of SeAT
 *
 * Copyright (C) 2015 to present Leon Jacobs
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License along
 * with this program; if not, write to the Free Software Foundation, Inc.,
 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 */

namespace Seat\Services\Settings;

use Seat\Services\Models\GlobalSetting;

/**
 * Class Seat.
 *
 * @package Seat\Services\Settings
 */
class Seat extends Settings
{
    /**
     * The options available for this Setting type.
     *
     * @var array
     */
    public static $options = [

        'registration'       => ['yes', 'no'],
        'force_min_mask'     => ['yes', 'no'],
        'allow_sso'          => ['yes', 'no'],
        'allow_tracking'     => ['yes', 'no'],
        'require_activation' => ['yes', 'no'],
        'cleanup_data'       => ['yes', 'no'],
    ];

    /**
     * @var string
     */
    protected static $prefix = 'seat';

    /**
     * @var
     */
    protected static $model = GlobalSetting::class;

    /**
     * @var string
     */
    protected static $scope = 'global';

    /**
     * @var array
     */
    protected static $defaults = [

        // User Registration
        'registration'       => 'yes',

        // Admin contact
        'admin_contact'      => 'seatadmin@localhost.local',

        // Cleanup data in the database for users
        // that have been deleted.
        'cleanup_data'       => 'no',

        // The number of workers to spawn.
        'queue_workers'      => 4,

        // Allow Usage Tracking
        'allow_tracking'     => 'yes',

        // Currently Installed SDE Version
        'installed_sde'      => null,

        // API Updater Class Constraint. This value should
        // be stored as a json string!
        'api_constraint'     => '',

        // Require Email Activation
        'require_activation' => 'yes',

        // Default Scopes asked for SSO Authentication
        'sso_scopes'         => [
            [
                'id'      => 0,
                'name'    => 'default',
                'default' => true,
                'scopes'  => [
                    'publicData',
                    'esi-alliances.read_contacts.v1',
                    'esi-assets.read_assets.v1',
                    'esi-assets.read_corporation_assets.v1',
                    'esi-bookmarks.read_character_bookmarks.v1',
                    'esi-bookmarks.read_corporation_bookmarks.v1',
                    'esi-calendar.read_calendar_events.v1',
                    'esi-characters.read_agents_research.v1',
                    'esi-characters.read_blueprints.v1',
                    'esi-characters.read_chat_channels.v1',
                    'esi-characters.read_contacts.v1',
                    'esi-characters.read_corporation_roles.v1',
                    'esi-characters.read_fatigue.v1',
                    'esi-characters.read_fw_stats.v1',
                    'esi-characters.read_loyalty.v1',
                    'esi-characters.read_medals.v1',
                    'esi-characters.read_notifications.v1',
                    'esi-characters.read_opportunities.v1',
                    'esi-characters.read_standings.v1',
                    'esi-characters.read_titles.v1',
                    'esi-characterstats.read.v1',
                    'esi-clones.read_clones.v1',
                    'esi-clones.read_implants.v1',
                    'esi-contracts.read_character_contracts.v1',
                    'esi-contracts.read_corporation_contracts.v1',
                    'esi-corporations.read_blueprints.v1',
                    'esi-corporations.read_contacts.v1',
                    'esi-corporations.read_container_logs.v1',
                    'esi-corporations.read_corporation_membership.v1',
                    'esi-corporations.read_divisions.v1',
                    'esi-corporations.read_facilities.v1',
                    'esi-corporations.read_fw_stats.v1',
                    'esi-corporations.read_medals.v1',
                    'esi-corporations.read_standings.v1',
                    'esi-corporations.read_starbases.v1',
                    'esi-corporations.read_structures.v1',
                    'esi-corporations.read_titles.v1',
                    'esi-corporations.track_members.v1',
                    'esi-fittings.read_fittings.v1',
                    'esi-fleets.read_fleet.v1',
                    'esi-industry.read_character_jobs.v1',
                    'esi-industry.read_character_mining.v1',
                    'esi-industry.read_corporation_jobs.v1',
                    'esi-industry.read_corporation_mining.v1',
                    'esi-killmails.read_corporation_killmails.v1',
                    'esi-killmails.read_killmails.v1',
                    'esi-location.read_location.v1',
                    'esi-location.read_online.v1',
                    'esi-location.read_ship_type.v1',
                    'esi-mail.read_mail.v1',
                    'esi-markets.read_character_orders.v1',
                    'esi-markets.read_corporation_orders.v1',
                    'esi-markets.structure_markets.v1',
                    'esi-planets.manage_planets.v1',
                    'esi-planets.read_customs_offices.v1',
                    'esi-search.search_structures.v1',
                    'esi-skills.read_skillqueue.v1',
                    'esi-skills.read_skills.v1',
                    'esi-ui.open_window.v1',
                    'esi-universe.read_structures.v1',
                    'esi-wallet.read_character_wallet.v1',
                    'esi-wallet.read_corporation_wallets.v1',
                ],
            ],
        ],
    ];
}