summaryrefslogtreecommitdiffstats
path: root/application/forms/IcingaZoneForm.php
blob: bf27caef6c76e22e66255a92a61331275ad16354 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php

namespace Icinga\Module\Director\Forms;

use Icinga\Module\Director\Web\Form\DirectorObjectForm;

class IcingaZoneForm extends DirectorObjectForm
{
    public function setup()
    {
        $this->addHidden('object_type', 'object');

        $this->addElement('text', 'object_name', array(
            'label'       => $this->translate('Zone name'),
            'required'    => true,
            'description' => $this->translate(
                'Name for the Icinga zone you are going to create'
            )
        ));

        $this->addElement('select', 'is_global', array(
            'label'        => $this->translate('Global zone'),
            'description'  => $this->translate(
                'Whether this zone should be available everywhere. Please note that'
                . ' it rarely leads to the desired result when you try to distribute'
                . ' global zones in distrubuted environments'
            ),
            'multiOptions' => array(
                'n'  => $this->translate('No'),
                'y'  => $this->translate('Yes'),
            ),
            'required'     => true,
        ));

        $this->addElement('select', 'parent_id', array(
            'label'        => $this->translate('Parent Zone'),
            'description'  => $this->translate('Chose an (optional) parent zone'),
            'multiOptions' => $this->optionalEnum($this->db->enumZones()),
        ));

        $this->setButtons();
    }
}