/**
  * Performs the work of inserting or updating the row in the database.
  *
  * If the object is new, it inserts it; otherwise an update is performed.
  * All related objects are also updated in this method.
  *
  * @param      PropelPDO $con
  * @return     int The number of rows affected by this insert/update and any referring fk objects' save() operations.
  * @throws     PropelException
  * @see        save()
  */
 protected function doSave(PropelPDO $con)
 {
     $affectedRows = 0;
     // initialize var to track total num of affected rows
     if (!$this->alreadyInSave) {
         $this->alreadyInSave = true;
         // We call the save method on the following object(s) if they
         // were passed to this object by their coresponding set
         // method.  This object relates to these object(s) by a
         // foreign key reference.
         if ($this->aNagiosService !== null) {
             if ($this->aNagiosService->isModified() || $this->aNagiosService->isNew()) {
                 $affectedRows += $this->aNagiosService->save($con);
             }
             $this->setNagiosService($this->aNagiosService);
         }
         if ($this->aNagiosServiceTemplateRelatedBySourceTemplate !== null) {
             if ($this->aNagiosServiceTemplateRelatedBySourceTemplate->isModified() || $this->aNagiosServiceTemplateRelatedBySourceTemplate->isNew()) {
                 $affectedRows += $this->aNagiosServiceTemplateRelatedBySourceTemplate->save($con);
             }
             $this->setNagiosServiceTemplateRelatedBySourceTemplate($this->aNagiosServiceTemplateRelatedBySourceTemplate);
         }
         if ($this->aNagiosServiceTemplateRelatedByTargetTemplate !== null) {
             if ($this->aNagiosServiceTemplateRelatedByTargetTemplate->isModified() || $this->aNagiosServiceTemplateRelatedByTargetTemplate->isNew()) {
                 $affectedRows += $this->aNagiosServiceTemplateRelatedByTargetTemplate->save($con);
             }
             $this->setNagiosServiceTemplateRelatedByTargetTemplate($this->aNagiosServiceTemplateRelatedByTargetTemplate);
         }
         if ($this->isNew()) {
             $this->modifiedColumns[] = NagiosServiceTemplateInheritancePeer::ID;
         }
         // If this object has been modified, then save it to the database.
         if ($this->isModified()) {
             if ($this->isNew()) {
                 $pk = NagiosServiceTemplateInheritancePeer::doInsert($this, $con);
                 $affectedRows += 1;
                 // we are assuming that there is only 1 row per doInsert() which
                 // should always be true here (even though technically
                 // BasePeer::doInsert() can insert multiple rows).
                 $this->setId($pk);
                 //[IMV] update autoincrement primary key
                 $this->setNew(false);
             } else {
                 $affectedRows += NagiosServiceTemplateInheritancePeer::doUpdate($this, $con);
             }
             $this->resetModified();
             // [HL] After being saved an object is no longer 'modified'
         }
         $this->alreadyInSave = false;
     }
     return $affectedRows;
 }
Exemplo n.º 2
0
include_once 'includes/config.inc';
if (isset($_POST['request'])) {
    if ($_POST['request'] == 'add_service_template') {
        // Check for pre-existing service template with same name
        if ($lilac->service_template_exists($_POST['template_name'])) {
            $error = "A service template with that name already exists!";
        } else {
            // Field Error Checking
            if ($_POST['template_name'] == '' || $_POST['template_description'] == '') {
                $addError = 1;
                $error = "Fields shown are required and cannot be left blank.";
            } else {
                $template = new NagiosServiceTemplate();
                $template->setName($_POST['template_name']);
                $template->setDescription($_POST['template_description']);
                $template->save();
                header("Location: service_template.php?id=" . $template->getId());
            }
        }
    }
}
print_header("Service Template Editor");
print_window_header("Add Service Template", "100%");
?>
<form name="service_template_add_form" method="post" action="add_service_template.php">
<input type="hidden" name="request" value="add_service_template" />
<?php 
double_pane_form_window_start();
?>
<tr bgcolor="f0f0f0">
	<td colspan="2" class="formcell">