/** * Adds a new property * * @param vProperty $new_property The new property to append to the set, or a string with the name * @param string $value The value of the new property (default: param 1 is an vProperty with everything * @param array $parameters The key/value parameter pairs (default: none, or param 1 is an vProperty with everything) */ function AddProperty($new_property, $value = null, $parameters = null) { if (isset($this->rendered)) { unset($this->rendered); } if (isset($value) && gettype($new_property) == 'string') { $new_prop = new vProperty(); $new_prop->Name($new_property); $new_prop->Value($value); if ($parameters != null) { $new_prop->Parameters($parameters); } dbg_error_log('vComponent', " Adding new property '%s'", $new_prop->Render()); $this->properties[] = $new_prop; } else { if (gettype($new_property)) { $this->properties[] = $new_property; } } }