public function update($input, $fields, &$errCount = 0) {
		$operation = $this->getUpdateOperation($input, $fields);
		$operation->validate($errCount);
		return $operation->runIfValid();
	}
public function update($input, $fields, &$errCount = 0) {
		$operation = $this->getUpdateOperation($input, $fields);
		$operation->validate($errCount);
		return $operation->runIfValid();
	}
public function update ( $ input , $ fields , & $ errCount = 0 ) { $ operation = $ this -> getUpdateOperation ( $ input , $ fields ) ; $ operation -> validate ( $ errCount ) ; return $ operation -> runIfValid ( ) ; }
Update this permanent object from input data array

@param    array $input The input data we will check and extract, used by children
@param    string[] $fields The array of fields to check
@param    int &$errCount Output parameter for the number of occurred errors validating fields.
@return   int 1 in case of success, else 0.
@see runForUpdate()

This method require to be overridden but it still be called too by the child classes.
Here $input is not used, it is reserved for child classes.
$data must contain a filled array of new data.
This method update the EDIT event log.
Before saving, runForUpdate() is called to let child classes to run custom instructions.
Parameter $fields is really useful to allow partial modification only (against form hack).
Update this permanent object from input data array