Esempio n. 1
0
             $escalation->setEscalationOptionsCritical(true);
         } else {
             $escalation->setEscalationOptionsCritical(false);
         }
         $escalation->save();
         $success = "Escalation modified.";
         unset($_GET['edit']);
     }
 } else {
     if ($_POST['request'] == 'add_contactgroup_command') {
         if ($lilac->escalation_has_contactgroup($_GET['id'], $_POST['escalation_manage']['contactgroup_add']['contactgroup_id'])) {
             $error = "That contact group already exists in that list!";
             unset($_POST['escalation_manage']);
         } else {
             $membership = new NagiosEscalationContactgroup();
             $membership->setNagiosEscalation($escalation);
             $membership->setContactgroup($_POST['escalation_manage']['contactgroup_add']['contactgroup_id']);
             $membership->save();
             $success = "New Escalation Contact Group Link added.";
             unset($_POST['escalation_manage']);
         }
     } else {
         if ($_POST['request'] == 'add_contact_command') {
             $c = new Criteria();
             $c->add(NagiosEscalationContactPeer::ESCALATION, $_GET['id']);
             $c->add(NagiosEscalationContactPeer::CONTACT, $_POST['escalation_manage']['contact_add']['contact_id']);
             $membership = NagiosEscalationContactPeer::doSelectOne($c);
             if ($membership) {
                 $error = "That contact already exists in that list!";
             } else {
                 $tempContact = NagiosContactPeer::retrieveByPk($_POST['escalation_manage']['contact_add']['contact_id']);
 private function __addContacts($escalation)
 {
     $job = $this->getEngine()->getJob();
     $config = $this->getEngine()->getConfig();
     $segment = $this->getSegment();
     $values = $segment->getValues();
     $fileName = $segment->getFilename();
     // Check if we need to bring in values from a template
     if (isset($values['use'])) {
         // We sure are using a template!
         // Okay, hokey multi-inheritance support for the importer
         $tempValues = $this->getTemplateValues($values['use'][0]['value']);
         // Okay, go through each
         foreach ($tempValues as $key => $val) {
             if (!isset($values[$key])) {
                 $values[$key] = $val;
             }
         }
     }
     if (isset($values['contacts'])) {
         $contactNames = explode(",", $values['contacts'][0]['value']);
         foreach ($contactNames as $contact_name) {
             $contact = NagiosContactPeer::getByName($contact_name);
             if (!$contact) {
                 return false;
             }
             $relationship = new NagiosEscalationContact();
             $relationship->setNagiosContact($contact);
             $relationship->setNagiosEscalation($escalation);
             $relationship->save();
             $contact->clearAllReferences(true);
         }
     }
     if (isset($values['contact_groups'])) {
         $contactGroupNames = explode(",", $values['contact_groups'][0]['value']);
         foreach ($contactGroupNames as $contactgroup_name) {
             $contactgroup = NagiosContactGroupPeer::getByName($contactgroup_name);
             if (!$contactgroup) {
                 return false;
             }
             $relationship = new NagiosEscalationContactgroup();
             $relationship->setNagiosContactGroup($contactgroup);
             $relationship->setNagiosEscalation($escalation);
             $relationship->save();
             $contactgroup->clearAllReferences(true);
         }
     }
     return true;
 }