/**
  * This function performs the validation work for complex object models.
  *
  * In addition to checking the current object, all related objects will
  * also be validated.  If all pass then <code>true</code> is returned; otherwise
  * an aggreagated array of ValidationFailed objects will be returned.
  *
  * @param      array $columns Array of column names to validate.
  * @return mixed <code>true</code> if all validations pass; array of <code>ValidationFailed</code> objets otherwise.
  */
 protected function doValidate($columns = null)
 {
     if (!$this->alreadyInValidation) {
         $this->alreadyInValidation = true;
         $retval = null;
         $failureMap = array();
         // We call the validate 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->aPlan !== null) {
             if (!$this->aPlan->validate($columns)) {
                 $failureMap = array_merge($failureMap, $this->aPlan->getValidationFailures());
             }
         }
         if ($this->aTipodoc !== null) {
             if (!$this->aTipodoc->validate($columns)) {
                 $failureMap = array_merge($failureMap, $this->aTipodoc->getValidationFailures());
             }
         }
         if ($this->aReparticion !== null) {
             if (!$this->aReparticion->validate($columns)) {
                 $failureMap = array_merge($failureMap, $this->aReparticion->getValidationFailures());
             }
         }
         if ($this->aLocalidad !== null) {
             if (!$this->aLocalidad->validate($columns)) {
                 $failureMap = array_merge($failureMap, $this->aLocalidad->getValidationFailures());
             }
         }
         if (($retval = AfiliadoPeer::doValidate($this, $columns)) !== true) {
             $failureMap = array_merge($failureMap, $retval);
         }
         $this->alreadyInValidation = false;
     }
     return !empty($failureMap) ? $failureMap : true;
 }
Beispiel #2
0
<?php

include "header.php";
try {
    $plan = new Plan();
    if (!$user->level) {
        throw new LoginException("You must be logged in to use this feature.");
    }
    list($plan->name, $plan->description, $cash, $cents, $plan->period, $plan->hidden, $plan->plancolor) = $input->getInputValues('name', 'description', 'cash', 'cents', 'period', 'hidden', 'plancolor');
    if (!$cents) {
        $cents = "00";
    }
    $plan->price = $cash . "." . $cents;
    if ($plan->name[0]) {
        // Throws InputException on failure
        $plan->validate();
        if ($plan->save()) {
            flash("The plan was created successfully.");
        } else {
            throw new Exception("The plan could not be added to the database.");
        }
    }
    include "../views/addplan.php";
} catch (LoginException $e) {
    $redirect = "addplan.php";
    include "../views/login.php";
    throw $e;
} catch (InputException $e) {
    include "../views/addplan.php";
    throw $e;
} catch (Exception $e) {
Beispiel #3
0
    $updatePlans->name = $_POST['name'];
    $updatePlans->id = $_POST['id'];
    $updatePlans->price = $_POST['price'];
    $updatePlans->description = $_POST['description'];
    $updatePlans->period = $_POST['period'];
    $updatePlans->hidden = $_POST['hidden'];
    if ($delete) {
        $input->digits($delete, 'Deletion ID of Variable');
        if ($plan->delete($delete)) {
            flash("Plan (" . $delete . ") Deleted Successfully");
        } else {
            throw new Exception("The specified plan could not be removed.");
        }
    }
    if (is_array($updatePlans->id) && $updatePlans->id[0]) {
        $updatePlans->validate();
        $updatePlans->save_all();
    }
    $plan->load_all();
    include "../views/manageplans.php";
} catch (LoginException $e) {
    $redirect = "welcome.php";
    include "../views/login.php";
    throw $e;
} catch (InputException $e) {
    include "../views/manageplans.php";
    throw $e;
} catch (Exception $e) {
    include "../views/manageplans.php";
    throw $e;
}