public function Validate() { $errors = array(); if (!Mode::isValidValue($this->mode)) { array_push($errors, "Invalid mode: " . $this->mode); } if (!is_int($this->width)) { array_push($errors, "Invalid width: " . $this->width); } if (!is_int($this->height)) { array_push($errors, "Invalid height: " . $this->height); } if (!is_int($this->top)) { array_push($errors, "Invalid top: " . $this->top); } if (!is_int($this->left)) { array_push($errors, "Invalid left: " . $this->left); } if (!is_int($this->brightness)) { array_push($errors, "Invalid brightness: " . $this->brightness); } if (!is_int($this->contrast)) { array_push($errors, "Invalid contrast: " . $this->contrast); } if ($this->top + $this->height > Config::MaximumScanHeightInMm) { array_push($errors, "Top + height exceed maximum dimensions"); } /////////// MORE HERE /////////////// ///////////////////////////////////// return $errors; }