public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); if ($this->getIdentifier() == 'delete') { $view->setTemplate('Nethgui\\Template\\Table\\Delete'); } }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); $h = \NethServer\Module\Mail\Mailbox::getQuotaUiFunction($this->getPlatform()->getDatabase('configuration')); $h['unlimited'] = $view->translate('Unlimited_quota'); $view['MailQuotaCustomDatasource'] = \Nethgui\Renderer\AbstractRenderer::hashToDatasource($h); $view['MailSpamRetentionTimeDatasource'] = \Nethgui\Renderer\AbstractRenderer::hashToDatasource(array('1d' => $view->translate('${0} day', array(1)), '2d' => $view->translate('${0} days', array(2)), '4d' => $view->translate('${0} days', array(4)), '7d' => $view->translate('${0} days', array(7)), '15d' => $view->translate('${0} days', array(15)), '30d' => $view->translate('${0} days', array(30)), '60d' => $view->translate('${0} days', array(60)), '90d' => $view->translate('${0} days', array(90)), '180d' => $view->translate('${0} days', array(180)), 'infinite' => $view->translate('ever'))); }
public function nextPath() { // Workaround for LazyLoaderAdapter to reload table contents after mutation request if ($this->getRequest()->isMutation()) { return '/FirewallObjects/Services/read'; } return parent::nextPath(); }
public function process() { parent::process(); if ($this->getRequest()->isMutation()) { if ($this->getAdapter()->offsetExists('LeaseStatus')) { $this->getAdapter()->offsetUnset('LeaseStatus'); } } }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); if ($this->getIdentifier() == 'delete') { $view->setTemplate('Nethgui\\Template\\Table\\Delete'); } $view['DaysDatasource'] = array_map(function ($fmt) use($view) { return array($fmt, $view->translate($fmt . '_label')); }, $this->days); }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); $templates = array('create' => 'NethServer\\Template\\Providers\\Modify', 'update' => 'NethServer\\Template\\Providers\\Modify', 'delete' => 'Nethgui\\Template\\Table\\Delete'); $view->setTemplate($templates[$this->getIdentifier()]); if (!$this->interfaces) { $this->interfaces = $this->readInterfaces(); } $tmp = array(); foreach ($this->interfaces as $key) { $tmp[] = array($key, $key); } $view['interfaceDatasource'] = $tmp; }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); $view['DeviceDatasource'] = array_map(function ($fmt) use($view) { if ($fmt == '') { $label = $view->translate('any_label'); } else { $label = $fmt; } return array($fmt, $label); }, $this->listInterfaces()); $templates = array('create' => 'NethServer\\Template\\StaticRoutes\\Modify', 'update' => 'NethServer\\Template\\StaticRoutes\\Modify', 'delete' => 'Nethgui\\Template\\Table\\Delete'); $view->setTemplate($templates[$this->getIdentifier()]); }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); if ($this->getIdentifier() != 'delete') { $view->setTemplate('NethServer\\Template\\Proxy\\BypassModify'); } else { $view->setTemplate('Nethgui\\Template\\Table\\Delete'); } $this->prepareVars(); $h = $view->translate('Hosts_label'); $hg = $view->translate('HostGroups_label'); $hosts = $this->arrayToDatasource($this->hosts, 'host'); $groups = $this->arrayToDatasource($this->hostGroups, 'host-group'); $view['HostDatasource'] = array(array($hosts, $h), array($groups, $hg)); }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); if (!$this->getRequest()->isValidated()) { return; } $view['accessDatasource'] = array_map(function ($fmt) use($view) { $label = $view->translate($fmt . '_label'); if ($label == $fmt . '_label') { $label = $fmt; } return array($fmt, $label); }, $this->listZones()); $serviceRecord = $this->getPlatform()->getDatabase('configuration')->getKey($this->parameters['name']); $view['Config'] = self::getConfigForView($view, $serviceRecord); }
public function validate(\Nethgui\Controller\ValidationReportInterface $report) { $ips = explode(',', $this->parameters['AllowHosts']); $ipvalidator = $this->createValidator(Validate::IPv4_OR_EMPTY); $cidrvalidator = $this->createValidator(Validate::CIDR_BLOCK); foreach ($ips as $ip) { if (!$ipvalidator->evaluate($ip) && !$cidrvalidator->evaluate($ip)) { $report->addValidationErrorMessage($this, 'AllowHosts', 'AllowHosts_validator'); } } $ips = explode(',', $this->parameters['DenyHosts']); $ipvalidator = $this->createValidator(Validate::IPv4_OR_EMPTY); foreach ($ips as $ip) { if (!$ipvalidator->evaluate($ip) && !$cidrvalidator->evaluate($ip)) { $report->addValidationErrorMessage($this, 'DenyHosts', 'DenyHosts_validator'); } } parent::validate($report); }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); $templates = array('create' => 'NethServer\\Template\\SharedFolder\\Modify', 'update' => 'NethServer\\Template\\SharedFolder\\Modify', 'delete' => 'Nethgui\\Template\\Table\\Delete'); $view->setTemplate($templates[$this->getIdentifier()]); $owners = array(array('locals', $view->translate('locals_group_label'))); $subjects = array(array('locals', $view->translate('locals_group_label'))); foreach ($this->getPlatform()->getDatabase('accounts')->getAll('group') as $keyName => $props) { $entry = array($keyName, sprintf("%s (%s)", isset($props['Description']) ? $props['Description'] : $keyName, $keyName)); $owners[] = $entry; $subjects[] = $entry; } $view['OwningGroupDatasource'] = $owners; foreach ($this->getPlatform()->getDatabase('accounts')->getAll('user') as $keyName => $props) { $entry = array($keyName, sprintf("%s (%s)", trim($props['FirstName'] . ' ' . $props['LastName']), $keyName)); $subjects[] = $entry; } $view['AclSubjects'] = $subjects; $view['reset-permissions'] = $view->getModuleUrl('../reset-permissions/' . $this->getAdapter()->getKeyValue()); }
public function validate(\Nethgui\Controller\ValidationReportInterface $report) { parent::validate($report); if (!$this->getRequest()->isMutation() || $report->hasValidationErrors()) { return; } // check the "network" parameter is consistent with its "Mask" (only 0-bits in tail) $net = long2ip(ip2long($this->parameters['network']) & ip2long($this->parameters['Mask'])); if ($net != $this->parameters['network']) { $report->addValidationErrorMessage($this, 'network', 'invalid_network', array($this->parameters['network'])); return; } // check the network is not subnet of existing networks and vice-versa foreach ($this->getParent()->getAdapter() as $net => $props) { if ($this->isUsed($this->parameters['network'], $this->parameters['Mask'], $net, $props['Mask'])) { $report->addValidationErrorMessage($this, 'network', 'used_network', array($this->parameters['network'], $net)); return; } } }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); $templates = array('create' => 'NethServer\\Template\\VPN\\IpsecTunnels\\Modify', 'update' => 'NethServer\\Template\\VPN\\IpsecTunnels\\Modify', 'delete' => 'Nethgui\\Template\\Table\\Delete'); $view->setTemplate($templates[$this->getIdentifier()]); $view['ikecipherDatasource'] = array_map(function ($fmt) use($view) { return array($fmt, $view->translate($fmt . '_label')); }, $this->ciphers); $view['ikehashDatasource'] = array_map(function ($fmt) use($view) { return array($fmt, $view->translate($fmt . '_label')); }, $this->hashes); $view['ikepfsgroupDatasource'] = array_map(function ($fmt) use($view) { return array($fmt, $view->translate($fmt . '_label')); }, $this->pfsgroups); $view['espcipherDatasource'] = array_map(function ($fmt) use($view) { return array($fmt, $view->translate($fmt . '_label')); }, $this->ciphers); $view['esphashDatasource'] = array_map(function ($fmt) use($view) { return array($fmt, $view->translate($fmt . '_label')); }, $this->hashes); $view['esppfsgroupDatasource'] = array_map(function ($fmt) use($view) { return array($fmt, $view->translate($fmt . '_label')); }, $this->pfsgroups); $left = array(); foreach ($this->getNetworkInterfaces() as $key => $props) { if (isset($props['ipaddr']) && $props['ipaddr']) { $label = "{$key} - {$props['ipaddr']}"; } elseif (isset($props['bootproto']) && $props['bootproto'] === 'dhcp') { $label = "{$key} - DHCP"; } elseif (isset($props['type']) && $props['type'] === 'xdsl') { $label = "{$key} - PPPoE"; } else { continue; } $left[] = array("%{$key}", $label); } $view['leftDatasource'] = $left; }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); $view['contactDefaults'] = $this->getPlatform()->getDatabase('configuration')->getKey('OrganizationContact'); if (isset($this->parameters['username'])) { $view['ChangePassword'] = $view->getModuleUrl('../ChangePassword/' . $this->parameters['username']); $view['FormAction'] = $view->getModuleUrl($this->parameters['username']); } else { $view['ChangePassword'] = ''; } }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); $this->prepareVars(); if ($this->getIdentifier() == 'delete') { $view->setTemplate('Nethgui\\Template\\Table\\Delete'); } $view['FilterDatasource'] = $this->arrayToDatasource($this->filters, 'filter'); $tmp = $this->arrayToDatasource($this->times, 'time'); array_unshift($tmp, array('', $view->translate('always_label'))); $view['TimeDatasource'] = $tmp; $tmp = array(); $u = $view->translate('Users_label'); $ug = $view->translate('UserGroups_label'); $users = $this->arrayToDatasource($this->users, 'user'); if ($users) { $tmp[] = array($users, $u); } $groups = $this->arrayToDatasource($this->userGroups, 'group'); if ($groups) { $tmp[] = array($groups, $ug); } $h = $view->translate('Hosts_label'); $hg = $view->translate('HostGroups_label'); $hosts = $this->arrayToDatasource($this->hosts, 'host'); if ($hosts) { $tmp[] = array($hosts, $h); } $hgroups = $this->arrayToDatasource($this->hostGroups, 'host-group'); if ($hgroups) { $tmp[] = array($hgroups, $hg); } $i = $view->translate('IpRanges_label'); $ipranges = $this->arrayToDatasource($this->ipranges, 'iprange'); if ($ipranges) { $tmp[] = array($ipranges, $i); } $c = $view->translate('Cidrs_label'); $cidrs = $this->arrayToDatasource($this->cidrs, 'cidr'); if ($cidrs) { $tmp[] = array($cidrs, $c); } $roles = $this->arrayToDatasource($this->roles, 'role'); $zones = $this->arrayToDatasource($this->zones, 'zone'); $z = $view->translate('Zones_label'); if ($zones || $roles) { $tmp[] = array(array_merge($roles, $zones), $z); } $adu = $view->translate('ADUsers_label'); $adusers = array(); foreach ($this->ADUsers as $k) { $adusers[] = array($k, $k); } if ($adusers) { $tmp[] = array($adusers, $adu); } $view['SrcDatasource'] = $tmp; }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); if ($this->getIdentifier() == 'delete') { $view->setTemplate('Nethgui\\Template\\Table\\Delete'); } $view['BlockAllDatasource'] = array_map(function ($fmt) use($view) { return array($fmt, $view->translate($fmt . '_label')); }, array('enabled', 'disabled')); if (!$this->categories) { $this->readCategories(); } $tmp = array(); $lang = strtoupper($view->getTranslator()->getLanguageCode()); foreach ($this->categories as $cat) { $t = $cat; if (isset($this->index[$cat]["NAME {$lang}"])) { $t = $this->index[$cat]["NAME {$lang}"]; } else { if (isset($this->index[$cat]["NAME"])) { $t = $this->index[$cat]["NAME"]; } } $tmp[] = array($cat, ucfirst($t)); } usort($tmp, array($this, 'cmpcat')); $view['CategoriesDatasource'] = $tmp; }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); if ($this->getIdentifier() === 'create' && !$this->getRequest()->isMutation()) { $view['setPassword'] = '******'; } if (isset($this->parameters['username'])) { $view['ChangePassword'] = $view->getModuleUrl('../ChangePassword/' . $this->parameters['username']); $view['FormAction'] = $view->getModuleUrl($this->parameters['username']); } else { $view['ChangePassword'] = ''; } $tmp = array(); if ($this->getRequest()->isValidated()) { foreach ($this->getGroupProvider()->getGroups() as $key => $values) { $tmp[] = array($key, $key); } $view->getCommandList()->show(); // required by nextPath() method of this class } $view['isAD'] = $this->getGroupProvider()->isAD(); $view['groupsDatasource'] = $tmp; $view['domain'] = $this->getPlatform()->getDatabase('configuration')->getType('DomainName'); }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); $templates = array('create' => 'NethServer\\Template\\VPN\\Clients\\Modify', 'update' => 'NethServer\\Template\\VPN\\Clients\\Modify', 'delete' => 'Nethgui\\Template\\Table\\Delete'); $view->setTemplate($templates[$this->getIdentifier()]); $view['ModeDatasource'] = array_map(function ($fmt) use($view) { return array($fmt, $view->translate($fmt . '_label')); }, array('routed', 'bridged')); }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); $templates = array('create' => 'NethServer\\Template\\FirewallObjects\\HostGroups\\Modify', 'update' => 'NethServer\\Template\\FirewallObjects\\HostGroups\\Modify', 'delete' => 'Nethgui\\Template\\Table\\Delete'); $view->setTemplate($templates[$this->getIdentifier()]); }
/** * Delete the record after the event has been successfully completed * @param string $key */ protected function processDelete($key) { parent::processDelete($key); }
/** * Do not really delete the record, but change its type. * @param string $key */ protected function processDelete($key) { $accountDb = $this->getPlatform()->getDatabase('accounts'); $accountDb->setType($key, 'pseudonym-deleted'); $deleteProcess = $this->getPlatform()->signalEvent('pseudonym-delete', array($key)); if ($deleteProcess->getExitCode() === 0) { parent::processDelete($key); } }
public function prepareView(\Nethgui\View\ViewInterface $view) { parent::prepareView($view); $templates = array('create' => 'NethServer\\Template\\Group\\Modify', 'update' => 'NethServer\\Template\\Group\\Modify', 'delete' => 'Nethgui\\Template\\Table\\Delete'); $view->setTemplate($templates[$this->getIdentifier()]); $tmp = array(); if ($this->getRequest()->isValidated()) { foreach ($this->getUserProvider()->getUsers() as $key => $values) { $tmp[] = array($key, $key); } $view->getCommandList()->show(); // required by nextPath() method of this class } $view['membersDatasource'] = $tmp; $view['domain'] = $this->getPlatform()->getDatabase('configuration')->getType('DomainName'); }