Changeset 24583
- Timestamp:
- 11/30/09 17:36:16 (3 years ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
plugins/ncPropelChangeLogBehaviorPlugin/lib/adapter/ncChangeLogUpdateChange.class.php
r23721 r24583 60 60 { 61 61 $tableMap = call_user_func(array($peerClassName , 'getTableMap')); 62 if (!is_null($tableMap) )62 if (!is_null($tableMap) && ($tableMap !== false) && ($tableMap->containsColumn($this->getFieldName()))) 63 63 { 64 64 $column = $tableMap->getColumn($this->getFieldName()); plugins/ncPropelChangeLogBehaviorPlugin/lib/ncPropelChangeLogBehavior.class.php
r23659 r24583 81 81 if (!$entry) 82 82 { 83 $entry = ncChangeLogEntryQueue::getInstance()->selectivePop(get_class($object), ncChangeLogEntryOperation::NC_CHANGE_LOG_ENTRY_OPERATION_INSERTION, null, $object->getCreatedAt(null));83 $entry = ncChangeLogEntryQueue::getInstance()->selectivePop(get_class($object), ncChangeLogEntryOperation::NC_CHANGE_LOG_ENTRY_OPERATION_INSERTION, null, method_exists($object, 'getCreatedAt')? $object->getCreatedAt(null) : null); 84 84 } 85 85 … … 145 145 } 146 146 $criteria->add(ncChangeLogEntryPeer::CLASS_NAME, get_class($object)); 147 $criteria->add(ncChangeLogEntryPeer::OBJECT_PK, $object->get Id());147 $criteria->add(ncChangeLogEntryPeer::OBJECT_PK, $object->getPrimaryKey()); 148 148 149 149 $results = array(); … … 255 255 if ($relatedClass == get_class($object)) 256 256 { 257 #FIXME: PONER UN 'OR' 258 $criteria->add(constant($class.'::'.$c->getName()), $object->getPrimaryKey()); 259 break; 257 $criterion = $criteria->getNewCriterion(constant($class.'::'.$c->getName()), $object->getPrimaryKey()); 258 $criteria->addOr($criterion); 260 259 } 261 260 } … … 273 272 foreach ($objects as $o) 274 273 { 275 try 274 $criteria = new Criteria(); 275 if (!is_null($from_date)) 276 $criteria->add(ncChangeLogEntryPeer::CREATED_AT, $from_date, Criteria::GREATER_THAN); 277 if (sfMixer::getCallable('Base'.get_class($o).':getChangeLog') && count($changes = $o->getChangeLog($criteria)) > 0) 276 278 { 277 //$relatedChangeLog[$tableName][strval($o)] = $o->getChangeLog(); 278 if (count($changes = $o->getChangeLog()) > 0) 279 if (method_exists($o, '__toString')) 279 280 $relatedChangeLog[$tableName][strval($o)] = $changes; 280 } catch (Exception $e) {281 null;281 else 282 $relatedChangeLog[$tableName][$o->getPrimaryKey()] = $changes; 282 283 } 283 284 }