/** * Vloží prvek do sloupce formuláře. * * @param mixed $input Vstupní prvek * @param string $caption Popisek * @param string $placeholder předvysvětlující text * @param string $helptext Dodatečná nápověda */ public function addInput($input, $caption = null, $placeholder = null, $helptext = null) { if ($this->row->getItemsCount() > $this->itemsPerRow) { $this->row = $this->addItem(new EaseTWBRow()); } return $this->row->addItem(new EaseTWBCol($this->colsize, new EaseTWBFormGroup($caption, $input, $placeholder, $helptext))); }
/** * Zobrazí přehled právě přihlášených a spodek stránky */ public function finalize() { if (!defined('HIDEFOOTER')) { $this->SetTagID('footer'); $this->addItem('<hr>'); $star = '<iframe src="https://ghbtns.com/github-btn.html?user=Vitexus&repo=icinga_configurator&type=star&count=true" frameborder="0" scrolling="0" width="170px" height="20px"></iframe>'; $footrow = new EaseTWBRow(); $footrow->addColumn(4, '<a href="https://www.vitexsoftware.cz/monitoring.php">Icinga Editor</a> v.: ' . constant('IE_VERSION') . ' © 2012-2015 <a href="http://vitexsoftware.cz/">Vitex Software</a>'); $footrow->addColumn(4, '<a href="http://www.austro-bohemia.cz/"><img style="position: relative;top: -2px; left: -10px; height: 25px" align="right" style="border:0" src="images/austro-bohemia-logo.png" alt="ABSRO" title="Pasivní checky napsány pro společnost Austro Bohemia s.r.o." /></a>'); $footrow->addColumn(4, '<a href="http://www.spoje.net"><img style="position: relative; top: -7px; left: -10px;" align="right" style="border:0" src="img/spojenet_small_white.gif" alt="SPOJE.NET" title="Housing zajišťují SPOJE.NET s.r.o." /></a>'); $this->addItem($footrow); // $Foot->addItem('<a href="https://twitter.com/VSMonitoring" class="twitter-follow-button" data-show-count="true" data-lang="cs">Sledovat @VSMonitoring</a>'); } else { $this->addItem('<hr>Icinga Editor v.: ' . constant('IE_VERSION')); } }
/** * Zobrazí přehled záznamu. * * @param ABBase $recordObject */ public function __construct($recordObject) { parent::__construct(); $row = new EaseTWBRow(); $this->addItem(new EaseHtmlH3Tag($recordObject->getName())); $recordObject->setData($recordObject->htmlizeRow($recordObject->getData())); foreach ($recordObject->keywordsInfo as $keyword => $kinfo) { if ($keyword == $recordObject->nameColumn) { continue; } if (isset($kinfo['title'])) { $def = new EaseHtmlDlTag(); $def->addDef($kinfo['title'], $recordObject->getDataValue($keyword)); $row->addItem(new EaseTWBCol(4, $def)); } } $this->addItem($row); }
$form->addItem(new EaseTWSubmitButton(_('Uložit'), 'success')); } break; } $oPage->addItem(new IEPageBottom()); $infopanel = new IEInfoBox($script); $tools = new EaseTWBPanel(_('Nástroje'), 'warning'); if ($script->getId()) { $tools->addItem($script->deleteButton()); $tools->addItem(new EaseTWBPanel(_('Transfer'), 'warning', $script->transferForm())); $command = new IECommand(); $usages = $command->getColumnsFromMySQL(array($command->getMyKeyColumn(), $command->nameColumn), array('script_id' => $command->getId()), $command->nameColumn, $command->getMyKeyColumn()); if (count($usages)) { $usedBy = new EaseTWBPanel(_('Používající příkazy')); $listing = new EaseHtmlUlTag(null, array('class' => 'list-group')); foreach ($usages as $usage) { if (!isset($usage[$command->nameColumn])) { $usage[$command->nameColumn] = 'n/a'; } $listing->addItem(new EaseHtmlLiTag(new EaseHtmlATag('command.php?command_id=' . $usage['command_id'], $usage[$command->nameColumn]), array('class' => 'list-group-item'))); } EaseContainer::addItemCustom($listing, $usedBy); $infopanel->addItem($usedBy); } } $pageRow = new EaseTWBRow(); $pageRow->addColumn(2, $infopanel); $pageRow->addColumn(6, new EaseTWBPanel(_('Skript') . ' <strong>' . $script->getName() . '</strong>', 'default', $form)); $pageRow->addColumn(4, $tools); $oPage->container->addItem($pageRow); $oPage->draw();
break; } $delcnt = $oPage->getGetValue('delcontact'); if ($delcnt) { $host->delMember('contacts', $oPage->getGetValue('contact_id', 'int'), $delcnt); $host->saveToMySql(); } $addcnt = $oPage->getGetValue('addcontact'); if ($addcnt) { $host->addMember('contacts', $oPage->getGetValue('contact_id', 'int'), $addcnt); $host->saveToMySql(); } $oPage->addItem(new IEPageTop(_('Editace hosta') . ' ' . $host->getName())); $infopanel = new IEInfoBox($host); $tools = new EaseTWBPanel(_('Nástroje'), 'warning'); $pageRow = new EaseTWBRow(); $pageRow->addColumn(2, $infopanel); $mainPanel = $pageRow->addColumn(6); $pageRow->addColumn(4, $tools); $oPage->container->addItem($pageRow); $hostPanel = $mainPanel->addItem(new EaseTWBPanel(new EaseHtmlH1Tag($host->getDataValue('alias') . ' <small>' . $host->getName() . '</small>'), 'info', null, nl2br(trim($host->getDataValue('notes'))))); $hostTabs = $hostPanel->addItem(new EaseTWBTabs('hostTabs')); $commonTab = $hostTabs->addTab(_('Obecné')); $hostParams = $hostTabs->addTab(_('Konfigurace')); switch ($oPage->getRequestValue('action')) { case 'parent': require_once 'classes/IEParentSelector.php'; $commonTab->addItem(new IEParentSelector($host)); break; case 'icon': $commonTab->addItem(new IEIconSelector($host));
/** * Stav senzoru a jeho nastavení * * @param IEHost $host */ public function __construct($host) { $commonWell = new EaseTWBWell(); $commonRow = new EaseTWBRow(); $hostColumn = $commonRow->addColumn(6, new EaseHtmlATag('host.php?host_id=' . $host->getId(), new EaseHtmlH1Tag($host->getName()))); $hostColumn->addItem($host); $hostColumn->addItem($host->sensorStatusLabel()); $commonWell->addItem($commonRow); $commonRow->addColumn(4, new EaseTWBPanel(_('Ruční nastavení stavu senzoru'), 'info', new IESensorConfirmForm($host))); $sensorTabs = new EaseTWBTabs('sensorTabs'); switch ($host->getDataValue('platform')) { case 'windows': $pltIco = 'logos/base/win40.gif'; $cfgGenerator = new IENSCPConfigGenerator($host); if ($host->getCfgValue('active_checks_enabled')) { $windowsActiveTab = $sensorTabs->addTab(_('Windows NRPE')); $windowsActiveTab->addItem(new EaseHtmlH1Tag('<img src="' . $pltIco . '">' . _('aktivní NRPE pro NSC++'))); $windowsActiveTab->addItem(new EaseTWBLinkButton('http://www.nsclient.org/download/', ' NSC++ ' . EaseTWBPart::GlyphIcon('download'), 'success', array('style' => "background-image:url('img/nscpp.png'); width: 212px; height: 60px; ", 'title' => 'Download'))); $windowsActiveTab->addItem(new EaseTWBLinkButton('host.php?action=populate&host_id=' . $host->getID(), _('Oskenovat a sledovat služby'), null, array('onClick' => "\$('#preload').css('visibility', 'visible');"))); $windowsActiveTab->addItem(new EaseTWBLinkButton('nscpcfggen.php?host_id=' . $host->getId(), $host->getName() . '_nscp.bat ' . EaseTWBPart::GlyphIcon('download'), 'success')); $windowsActiveTab->addItem(new EaseTWBContainer('<pre>' . htmlspecialchars($cfgGenerator->getCfg(false)) . '</pre>', array('font-face' => 'fixed'))); } if ($host->getCfgValue('passive_checks_enabled')) { $windowsPassiveTab = $sensorTabs->addTab(_('Windows NSCA')); $windowsPassiveTab->addItem(new EaseHtmlH1Tag('<img src="' . $pltIco . '">' . _('pasivní NSCA pro NSC++'))); $windowsPassiveTab->addItem(new EaseTWBLinkButton('http://www.nsclient.org/download/', ' NSC++ ' . EaseTWBPart::GlyphIcon('download'), 'success', array('style' => "background-image:url('img/nscpp.png'); width: 212px; height: 60px; ", 'title' => 'Download'))); $windowsPassiveTab->addItem(new EaseTWBLinkButton('nscpcfggen.php?host_id=' . $host->getId(), $host->getName() . '_nscp.bat ' . EaseTWBPart::GlyphIcon('download'), 'success')); $windowsPassiveTab->addItem(new EaseTWBWell('<pre>' . htmlspecialchars($cfgGenerator->getCfg(false), ENT_QUOTES) . '</pre>', array('font-face' => 'fixed'))); } break; case 'linux': $pltIco = 'logos/base/linux40.gif'; $preferences = new IEPreferences(); $prefs = $preferences->getPrefs(); if ($host->getCfgValue('active_checks_enabled')) { $nrpe_cfgGenerator = new IENRPEConfigGenerator($host); $linuxActiveTab = $sensorTabs->addTab(_('Linux NRPE')); $linuxActiveTab->addItem(new EaseHtmlH1Tag('<img src="' . $pltIco . '">' . _('aktivní NRPE pro NRPE Server'))); $linuxActiveTab->addItem(new EaseHtmlPTag(_('Nainstalujte nejprve senzor tímto příkazem') . ':')); $linuxActiveTab->addItem(new EaseHtmlDiv('<pre>sudo aptitude -y install nagios-nrpe-server</pre>', array('class' => 'code'))); $linuxActiveTab->addItem(new EaseTWBLinkButton('nrpecfggen.php?host_id=' . $host->getId(), $host->getName() . '_nrpe.sh ' . EaseTWBPart::GlyphIcon('download'), 'success')); $linuxActiveTab->addItem(new EaseTWBContainer('<pre>' . htmlspecialchars($nrpe_cfgGenerator->getCfg(false)) . '</pre>', array('font-face' => 'fixed'))); $linuxActiveTab->addItem(new EaseTWBLinkButton('host.php?action=populate&host_id=' . $host->getID(), _('Oskenovat a sledovat služby'), null, array('onClick' => "\$('#preload').css('visibility', 'visible');"))); } if ($host->getCfgValue('passive_checks_enabled')) { $linuxPassiveTab = $sensorTabs->addTab(_('Linux NSCA')); $linuxPassiveTab->addItem(new EaseHtmlH1Tag('<img src="' . $pltIco . '">' . _('pasivní NSCA pro NSCP Senzor'))); $linuxPassiveTab->addItem(new EaseTWBLinkButton('nscpcfggen.php?host_id=' . $host->getId(), $host->getName() . '_nscp.sh ' . EaseTWBPart::GlyphIcon('download'), 'success')); $cfgGenerator = new IENSCPConfigGenerator($host); $linuxPassiveTab->addItem(new EaseTWBContainer('<pre>' . htmlspecialchars($cfgGenerator->getCfg(false)) . '</pre>', array('font-face' => 'fixed'))); } break; default: $pltIco = 'logos/unknown.gif'; if ($host->getCfgValue('active_checks_enabled')) { $genericActiveTab = $sensorTabs->addTab(_('Generic Active')); $genericActiveTab->addItem(new EaseTWBLinkButton('host.php?action=populate&host_id=' . $host->getID(), _('Oskenovat a sledovat služby'), null, array('onClick' => "\$('#preload').css('visibility', 'visible');"))); } if ($host->getCfgValue('passive_checks_enabled')) { $genericPassiveTab = $sensorTabs->addTab(_('Generic Passive')); } break; } parent::__construct($commonWell); $this->addItem($sensorTabs); }
} else { $oUser->addStatusMessage(_('Skupina služeb byla uložena'), 'success'); } } $serviceGroup->saveMembers(); $delete = $oPage->getGetValue('delete', 'bool'); if ($delete == 'true') { $serviceGroup->delete(); } $oPage->addItem(new IEPageTop(_('Editace skupiny služeb') . ' ' . $serviceGroup->getName())); $servicegroupEdit = new IECfgEditor($serviceGroup); $form = new EaseHtmlForm('Servicegroup', 'servicegroup.php', 'POST', $servicegroupEdit, array('class' => 'form-horizontal')); $form->setTagID($form->getTagName()); if (!is_null($serviceGroup->getMyKey())) { $form->addItem(new EaseHtmlInputHiddenTag($serviceGroup->getmyKeyColumn(), $serviceGroup->getMyKey())); } $form->addItem('<br>'); $form->addItem(new EaseTWSubmitButton(_('Uložit'), 'success')); $oPage->addItem(new IEPageBottom()); $infopanel = new IEInfoBox($serviceGroup); $tools = new EaseTWBPanel(_('Nástroje'), 'warning'); if ($serviceGroup->getId()) { $tools->addItem($serviceGroup->deleteButton()); $tools->addItem(new EaseTWBPanel(_('Transfer'), 'warning', $serviceGroup->transferForm())); } $pageRow = new EaseTWBRow(); $pageRow->addColumn(2, $infopanel); $pageRow->addColumn(6, new EaseTWBPanel(_('Příkaz') . ' <strong>' . $serviceGroup->getName() . '</strong>', 'default', $form)); $pageRow->addColumn(4, $tools); $oPage->container->addItem($pageRow); $oPage->draw();
$hostgroup->delete(); $oPage->redirect('hostgroups.php'); exit; } break; } $oPage->addItem(new IEPageTop(_('Editace skupiny hostů') . ' ' . $hostgroup->getName())); $hostgroupEdit = new IECfgEditor($hostgroup); $form = new EaseTWBForm('Hostgroup', 'hostgroup.php', 'POST', $hostgroupEdit, array('class' => 'form-horizontal')); $form->setTagID($form->getTagName()); if (!is_null($hostgroup->getMyKey())) { $form->addItem(new EaseHtmlInputHiddenTag($hostgroup->getmyKeyColumn(), $hostgroup->getMyKey())); } $form->addItem(new EaseTWSubmitButton(_('Uložit'), 'success')); $oPage->addItem(new IEPageBottom()); $infopanel = new IEInfoBox($hostgroup); $tools = new EaseTWBPanel(_('Nástroje'), 'warning'); if ($hostgroup->getId()) { $tools->addItem($hostgroup->deleteButton()); $tools->addItem(new EaseTWBPanel(_('Transfer'), 'warning', $hostgroup->transferForm())); } $pageRow = new EaseTWBRow(); $pageRow->addColumn(2, $infopanel); $pageRow->addColumn(6, new EaseTWBPanel(new EaseHtmlH1Tag($hostgroup->getDataValue('alias') . ' <small>' . $hostgroup->getName() . '</small>'), 'default', $form)); $pageRow->addColumn(4, $tools); $oPage->container->addItem($pageRow); $operations = $tools->addItem(new EaseTWBPanel(_('Hromadné operace')), 'success'); $operations->addItem(new IEContactAsignForm()); $tools->addItem(new EaseTWBLinkButton('wizard-host.php?hostgroup_id=' . $hostgroup->getId(), EaseTWBPart::GlyphIcon('plus') . _('nový host ve skupině'), 'success')); //$tools->addItem(new EaseTWBLinkButton('hglayouteditor.php?hostgroup_id=' . $hostgroup->getId(), EaseTWBPart::GlyphIcon('globe') . _('Rozvržení topologie'), 'info')); $oPage->draw();
$host = new IEHost(); $allHosts = $host->getListing(); foreach ($allHosts as $hostId => $hostInfo) { $host->dataReset(); $host->loadFromMySQL((int) $hostId); $host->setDataValue('config_hash', $host->getConfigHash()); $host->saveToMySQL(); } $oPage->addStatusMessage(sprintf(_('Stavy %s senzorů byly nastaveny'), count($allHosts)), 'success'); } } $oPage->addItem(new IEPageTop(_('Reset objekt'))); $resetForm = new EaseTWBForm('reset'); $resetForm->addInput(new IEYesNoSwitch('host', FALSE), _('Hosti'), null, _('Smaže hosty, ale nechá předlohy')); $resetForm->addInput(new IEYesNoSwitch('hostgroup', FALSE), _('Skupiny hostů'), null, _('Smaže skupiny hostů')); $resetForm->addInput(new IEYesNoSwitch('contact', FALSE), _('Kontakty'), null, _('Smaže kontakty')); $resetForm->addInput(new IEYesNoSwitch('contactgroup', FALSE), _('Skupiny kontaktů'), null, _('Smaže skupiny kontaktů')); $resetForm->addInput(new IEYesNoSwitch('service', FALSE), _('Služby'), null, _('Smaže služby')); $resetForm->addInput(new IEYesNoSwitch('servicegroup', FALSE), _('Skupiny služeb'), null, _('Smaže skupiny služeb')); $resetForm->addItem(new EaseTWSubmitButton(_('Vymazat všechna data'), 'danger')); $toolRow = new EaseTWBRow(); $toolRow->addColumn(6, new EaseTWBWell($resetForm)); $resyncForm = new EaseTWBForm('resync'); $resyncForm->addInput(new IEYesNoSwitch('desync', FALSE), _('Rozhodit Hash'), null, _('Všechny hosty s nasazeným senzorem budou hlásat zastaralou konfiguraci')); $resyncForm->addInput(new IEYesNoSwitch('sync', FALSE), _('Nastavit Hash'), null, _('Všechny hosty s nasazeným senzorem budou hlásat aktuální konfiguraci')); $resyncForm->addItem(new EaseTWSubmitButton(_('Provést operaci'), 'warning', array('onClick' => "\$('#preload').css('visibility', 'visible');"))); $toolRow->addColumn(6, new EaseTWBWell($resyncForm)); $oPage->container->addItem(new EaseTWBPanel(_('Pročištění databáze'), 'danger', $toolRow)); EaseShared::webPage()->addItem(new EaseHtmlDivTag('preload', new IEFXPreloader(), array('class' => 'fuelux'))); $oPage->addItem(new IEPageBottom()); $oPage->draw();
if (is_null($ContactgroupID)) { $oUser->addStatusMessage(_('Skupina kontaktů nebyla uložena'), 'warning'); } else { $oUser->addStatusMessage(_('Skupina kontaktů byla uložena'), 'success'); } } $contactgroup->saveMembers(); $delete = $oPage->getGetValue('delete', 'bool'); if ($delete == 'true') { $contactgroup->delete(); } $contactgroupEdit = new IECfgEditor($contactgroup); $form = new EaseTWBForm('Contactgroup', 'contactgroup.php', 'POST', $contactgroupEdit, array('class' => 'form-horizontal')); $form->setTagID($form->getTagName()); if (!is_null($contactgroup->getMyKey())) { $form->addItem(new EaseHtmlInputHiddenTag($contactgroup->getmyKeyColumn(), $contactgroup->getMyKey())); } $form->addItem('<br>'); $form->addItem(new EaseTWSubmitButton(_('Uložit'), 'success')); $oPage->addItem(new IEPageBottom()); $infopanel = new IEInfoBox($contactgroup); $tools = new EaseTWBPanel(_('Nástroje'), 'warning'); if ($contactgroup->getId()) { $tools->addItem($contactgroup->deleteButton()); } $pageRow = new EaseTWBRow(); $pageRow->addColumn(2, $infopanel); $pageRow->addColumn(6, new EaseTWBPanel(_('Skupina kontaktů') . ' <strong>' . $contactgroup->getName() . '</strong>', 'default', $form)); $pageRow->addColumn(4, $tools); $oPage->container->addItem($pageRow); $oPage->draw();