<?php

namespace ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Admin\Product\Sections\Lxc;

use ModulesGarden\Servers\ProxmoxCloudVps\App\UI\Admin\Product\Sections\TwiceColumnSection;
use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Interfaces\AdminArea;
use ModulesGarden\Servers\ProxmoxCloudVps\Core\UI\Widget\Forms\Fields\Text;

class DefaultConfigurationSection extends TwiceColumnSection implements AdminArea
{
    protected $id = 'defaultConfigurationSection';
    protected $name = 'defaultConfigurationSection';
    protected $title = 'defaultConfigurationSection';


    protected function initFields()
    {
        //CPU Limit
        $field = new Text('customconfigoption[cpulimit]');
        $field->setDefaultValue(10);
        $field->setDescription('tip');
        $this->addField($field);
        //Cores
        $field = new Text('customconfigoption[cores]');
        $field->setDescription('tip');
        $field->setDefaultValue(10);
        $this->addField($field);
        //SWAP For the VM in MB
        $field = new Text('customconfigoption[swap]');
        $field->setDescription('tip');
        $field->setDefaultValue(3000);
        $this->addField($field);
        //CPU Weight For The VM
        $field = new Text('customconfigoption[cpuunits]');
        $field->setDefaultValue(10240);
        $field->setDescription('tip');
        $this->addField($field);
        //Memory
        $field = new Text('customconfigoption[memory]');
        $field->setDescription('tip');
        $field->setDefaultValue(3000);
        $this->addField($field);
        //Disk Size
        $field = new Text('customconfigoption[storageSize]');
        $field->setDescription('tip');
        $field->setDefaultValue(300);
        $this->addField($field);
        //Network Rate Limit
        $field = new Text('customconfigoption[rate]');
        $field->setDescription('tip');
        $this->addField($field);
        //Minimum Network Rate Limit
        $field = new Text('customconfigoption[minimumRate]');
        $field->setDescription('tip');
        $this->addField($field);
        //Amount of IPv4 Addresses
        $field = new Text('customconfigoption[ipv4]');
        $field->setDefaultValue(10);
        $field->setDescription('tip');
        $field->setDefaultValue(10);
        $this->addField($field);
        //Amount of IPv6 Addresses
        $field = new Text('customconfigoption[ipv6]');
        $field->setDefaultValue(0);
        $field->setDescription('tip');
        $field->setDefaultValue(0);
        $this->addField($field);
        //Backups Size Limit
        $field = new Text('customconfigoption[backupMaxSize]');
        $field->setDescription('tip');
        $this->addField($field);
        //Backup Files Limit
        $field = new Text('customconfigoption[backupMaxFiles]');
        $field->setDescription('tip');
        $this->addField($field);
        //Bandwidth Limit
        $field = new Text('customconfigoption[bandwidth]');
        $field->setDescription('tip');
        $this->addField($field);
        //Snapshots Limit
        $field = new Text('customconfigoption[snapshotMaxFiles]');
        $field->setDescription('tip');
        $this->addField($field);
        //virtualNetworks
        $field = new Text('customconfigoption[virtualNetworks]');
        $field->setDescription('tip');
        $field->setDefaultValue(1);
        $this->addField($field);
    }

}
