1
0
mirror of synced 2025-02-01 04:51:45 +03:00
This commit is contained in:
zYne 2007-05-16 22:34:38 +00:00
parent 1b3e981737
commit 5d3660f285

View File

@ -178,39 +178,20 @@ class Doctrine_Record_Filter
*/ */
private function prepareIdentifiers($exists = true) private function prepareIdentifiers($exists = true)
{ {
switch ($this->_table->getIdentifierType()) { $id = $this->_table->getIdentifier();
case Doctrine_Identifier::AUTO_INCREMENT: $this->_id = array();
case Doctrine_Identifier::SEQUENCE: if (count($id) > 1) {
$name = $this->_table->getIdentifier(); foreach ($id as $name) {
if ($this->_data[$name] === self::$null) {
if ($exists) { $this->_id[$name] = null;
if (isset($this->_data[$name]) && $this->_data[$name] !== self::$null) { } else {
$this->_id[$name] = $this->_data[$name];
}
}
unset($this->_data[$name]);
break;
case Doctrine_Identifier::NORMAL:
$this->_id = array();
$name = $this->_table->getIdentifier();
if (isset($this->_data[$name]) && $this->_data[$name] !== self::$null) {
$this->_id[$name] = $this->_data[$name]; $this->_id[$name] = $this->_data[$name];
} }
break; }
case Doctrine_Identifier::COMPOSITE: } else {
$names = $this->_table->getIdentifier(); if (isset($this->_data[$id]) && $this->_data[$id] !== self::$null) {
$this->_id[$id] = $this->_data[$id];
foreach ($names as $name) { }
if ($this->_data[$name] === self::$null) {
$this->_id[$name] = null;
} else {
$this->_id[$name] = $this->_data[$name];
}
}
break;
} }
} }
/** /**