public static function unregister($entityTypeID, $entityID) { if (!is_int($entityTypeID)) { throw new Main\ArgumentTypeException('entityTypeID', 'integer'); } if (!is_int($entityID)) { throw new Main\ArgumentTypeException('entityID', 'integer'); } $dbResult = DuplicatePersonMatchCodeTable::getList(array('select' => array('ID'), 'order' => array('ID' => 'ASC'), 'filter' => array('ENTITY_TYPE_ID' => $entityTypeID, 'ENTITY_ID' => $entityID))); while ($fields = $dbResult->fetch()) { DuplicatePersonMatchCodeTable::delete($fields['ID']); } DuplicateEntityMatchHash::unregisterEntity($entityTypeID, $entityID, DuplicateIndexType::PERSON); }
public static function unregister($entityTypeID, $entityID, $type = '') { if (!is_int($entityTypeID)) { throw new Main\ArgumentTypeException('entityTypeID', 'integer'); } if (!is_int($entityID)) { throw new Main\ArgumentTypeException('entityID', 'integer'); } if (!is_string($type)) { throw new Main\ArgumentTypeException('type', 'string'); } $filter = array('ENTITY_TYPE_ID' => $entityTypeID, 'ENTITY_ID' => $entityID); if ($type !== '') { $filter['TYPE'] = $type; } $dbResult = DuplicateCommunicationMatchCodeTable::getList(array('select' => array('ID'), 'order' => array('ID' => 'ASC'), 'filter' => $filter)); while ($fields = $dbResult->fetch()) { DuplicateCommunicationMatchCodeTable::delete($fields['ID']); } if ($type === 'PHONE') { DuplicateEntityMatchHash::unregisterEntity($entityTypeID, $entityID, DuplicateIndexType::COMMUNICATION_PHONE); } elseif ($type === 'EMAIL') { DuplicateEntityMatchHash::unregisterEntity($entityTypeID, $entityID, DuplicateIndexType::COMMUNICATION_EMAIL); } elseif ($type === '') { DuplicateEntityMatchHash::unregisterEntity($entityTypeID, $entityID, DuplicateIndexType::COMMUNICATION_PHONE); DuplicateEntityMatchHash::unregisterEntity($entityTypeID, $entityID, DuplicateIndexType::COMMUNICATION_EMAIL); } }