Quick search:

PntDatabaseConnection
PntDbClassDescriptor
PntDbError
PntDbObject
PntQueryHandler
Template
initFromData
__construct
addDbFieldProps
addVerifyOnDeleteValues
checkValueInOptions
copyValuesOf
delete
getClassDescriptorClass
getDeleteErrorMessages
getFilters
getLabel
getLabelSeparator
getLabelSort
getOnDeleteErrorMessage
getOnDeleteProps
getPropsForCheckOptions
getPropsForRecurseCopy
getSaveErrorMessages
getTableName
getValueNoOptionErrorMessage
getValueWithIdNoOptionErrorMessage
initMissingFields
initPropertyDescriptors
isNew
isPersistent
loadData
newQueryHandler
pntDelete
pntSacve. If you need to * do aditional work that ::save normally does, you need to override this
recurseCopyFrom
recurseDelete
registerCopyFrom
save


	/** Initialize an existing object from an associative array retrieved from the datbase.
	*
	* @param $assocArray Associative Array with the columnNames as keys and the values as values
	* @param $fieldMap Associative Array with the fieldNames as keys and the corresponding columnNames as values
	* @returns Associative Array mapping the fields that where not in $assocArray
	*/
	function &initFromData($assocArray, &$fieldMap) {
		$missingFieldsMap = array();
		reset($fieldMap);
		if (get_magic_quotes_runtime()) {
			while (list($field) = each($fieldMap))
				if ( isSet( $assocArray[$fieldMap[$field]] ) ) {
					if (is_string($assocArray[$fieldMap[$field]]))
						$this->$field = stripSlashes($assocArray[$fieldMap[$field]]);
					else
						$this->$field = $assocArray[$fieldMap[$field]]; 
				} else {
					$missingFieldsMap[$field] = $fieldMap[$field];
				}
		} else {
			while (list($field) = each($fieldMap)) 
				if ( isSet( $assocArray[$fieldMap[$field]] ) ) {
					$this->$field = $assocArray[$fieldMap[$field]];
				} else {
					$missingFieldsMap[$field] = $fieldMap[$field];
				}
		}
		return $missingFieldsMap;
	}
Copyright (c) MetaClass, 2003-2013

This code is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This code is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

Click here for a copy of the license or see http://www.gnu.org/licenses/ .