function save() { $parent_id = array(); foreach ($this->getLevelObjs() as $level) { $level->save($parent_id, null, false); $parent_id[$level->getType()] = $level->getId(); $bind[$level->getType() . '_id'] = $level->getId(); } $finder = new Elite_Vaf_Model_Vehicle_Finder($this->schema); if ($finder->vehicleExists($this->toTitleArray())) { $vehicle = $finder->findOneByLevels($this->toTitleArray()); return $this->row->id = $vehicle->getId(); } // doesnt exist, insert it try { $insertAdapter = new Elite_Vaf_Model_Db_Adapter_InsertWrapper($this->getReadAdapter()); $insertAdapter->insert('elite_definition', $bind); } catch (Exception $e) { echo $e->getMessage(); print_r($bind); print_r($this->toTitleArray()); echo $e->getTraceAsString(); exit; } $this->row->id = $this->getReadAdapter()->lastInsertId(); }
function save() { $bind = array(); foreach( $this->getLevelObjs() as $level ) { if(!$level->getTitle()) { $bind[$level->getType().'_id'] = 0; continue; } $level->save( null, null, false ); $bind[str_replace(' ','_',$level->getType()).'_id'] = $level->getId(); } $finder = new VF_Vehicle_Finder($this->schema); if( $finder->vehicleExists($this->toTitleArray()) ) { $vehicle = $finder->findOneByLevels($this->toTitleArray()); return $this->row->id = $vehicle->getId(); } // doesnt exist, insert it $insertAdapter = new Elite_Vaf_Model_Db_Adapter_InsertWrapper($this->getReadAdapter()); $insertAdapter->insert( $this->schema()->definitionTable(), $bind ); $this->row->id = $this->getReadAdapter()->lastInsertId(); }