item_id); $me = new User(); $me->loadMe(); $this->edit_by = $me->id; if(!is_array($new_value) && ($new_value === null || strlen($new_value) == 0)) { $this->int = null; $this->number = null; $this->string = null; return true; } if($item->multiple) { if(!is_array($new_value)) { $new_value = [$new_vale]; } $json_array = []; foreach($new_value as $v) { if($v) { $json_array[] = $v; } } $this->json = json_encode($json_array); } elseif($item->type == "int") { if(!is_numeric($new_value)) return false; $this->int = $new_value; } elseif($item->type == "decimal") { if(!is_float($new_value) && !is_numeric($new_value)) return false; $this->number = $new_value; } elseif(is_scalar($new_value)) { $this->string = $new_value; } else { return false; } return true; } public function getProperty($name) { if($this->$name == null) { if(!$this->id) { return null; } if($name == "item") { $this->item = new ContractconfigItem($this->item_id); if(!$this->item->id) { return null; } return $this->item; } $classname = ucfirst($name); $idfield = $name."_id"; $this->$name = new $classname($this->$idfield); if($this->$name->id) { return $this->$name; } else { return null; } } return $this->$name; } }