/** * Smaže záznam */ public function delete($id = null) { if (!is_null($id)) { $this->loadFromMySQL($id); } $hostGroup = new IEHostgroup(); $hostGroup->deleteHost($this->getName()); $delAll = true; $service = new IEService(); $servicesAssigned = $service->myDbLink->queryToArray('SELECT ' . $service->myKeyColumn . ',' . $service->nameColumn . ' FROM ' . $service->myTable . ' WHERE ' . 'host_name' . ' LIKE \'%"' . $this->getName() . '"%\'', $service->myKeyColumn); foreach ($servicesAssigned as $ServiceID => $ServiceInfo) { $service->loadFromMySQL($ServiceID); $service->delHostName($this->getId(), $this->getName()); if (!$service->saveToMySQL()) { $this->addStatusMessage(sprintf(_('Nepodařilo se odregistrovat %s ze služby %s'), $this->getName(), $service->getName()), 'Error'); $delAll = false; } } $childsOfMe = $this->myDbLink->queryToArray('SELECT ' . $this->myKeyColumn . ',' . $this->nameColumn . ' FROM ' . $this->myTable . ' WHERE parents ' . ' LIKE \'%' . $this->getName() . '%\'', $this->myKeyColumn); foreach ($childsOfMe as $chid_id => $child_info) { $child = new IEHost($chid_id); if ($child->delMember('parents', $this->getId(), $this->getName()) && $child->saveToMySQL()) { $this->addStatusMessage(sprintf(_('%s již není rodičem %s'), $this->getName(), $child->getName()), 'success'); } else { $this->addStatusMessage(sprintf(_('%s je stále rodičem %s'), $this->getName(), $child->getName()), 'warning'); } } if ($delAll) { return parent::delete(); } return false; }
/** * Uloží položky * * @param array $Request */ public static function saveMembers($Request) { $Service = new IEService(); if (isset($Request[$Service->myKeyColumn])) { if ($Service->loadFromMySQL($Request[$Service->myKeyColumn])) { if (isset($Request['addservice']) || isset($Request['delservice'])) { if (isset($Request['addservice'])) { $Service->addHostName($Request['host_id'], $Request['host_name']); if ($Service->saveToMySQL()) { $Service->addStatusMessage(sprintf(_('položka %s byla přidána'), $Request['addservice']), 'success'); } else { $Service->addStatusMessage(sprintf(_('položka %s nebyla přidána'), $Request['addservice']), 'warning'); } } if (isset($Request['delservice'])) { $Service->delHostName($Request['host_id'], $Request['host_name']); if ($Service->saveToMySQL()) { $Service->addStatusMessage(sprintf(_('položka %s byla odebrána'), $Request['delservice']), 'success'); } else { $Service->addStatusMessage(sprintf(_('položka %s nebyla odebrána'), $Request['delservice']), 'warning'); } } } } } }