$names = [];
$values = [];
- foreach($tags as $tag) {
+ foreach ($tags as $tag) {
$names[] = $tag->name;
$values[] = $tag->value;
}
if ($entity instanceof Page) {
$bodyTermsMap = $this->generateTermScoreMapFromHtml($entity->html);
} else {
- $bodyTermsMap = $this->generateTermScoreMapFromText($entity->description, $entity->searchFactor);
+ $bodyTermsMap = $this->generateTermScoreMapFromText($entity->description ?? '', $entity->searchFactor);
}
$mergedScoreMap = $this->mergeTermScoreMaps($nameTermsMap, $bodyTermsMap, $tagTermsMap);
$entityType = $entity->getMorphClass();
foreach ($mergedScoreMap as $term => $score) {
$dataArray[] = [
- 'term' => $term,
- 'score' => $score,
+ 'term' => $term,
+ 'score' => $score,
'entity_type' => $entityType,
- 'entity_id' => $entityId,
+ 'entity_id' => $entityId,
];
}
return $dataArray;
}
-
/**
* For the given term data arrays, Merge their contents by term
* while combining any scores.