Harmonize marker / popup rendering
This commit is contained in:
16
lib/Spot.php
16
lib/Spot.php
@@ -280,6 +280,12 @@ class Spot extends Main
|
||||
usort($asMessages, function($a, $b){return $a['unix_time'] > $b['unix_time'];});
|
||||
$bHasMsg = !empty($asMessages);
|
||||
|
||||
foreach($asMessages as &$asMessage) {
|
||||
$asMessage['id'] = $asMessage[Db::getId(Feed::MSG_TABLE)];
|
||||
$asMessage['type'] = 'message';
|
||||
$asMessage['subtype'] = 'message';
|
||||
}
|
||||
|
||||
//Add medias
|
||||
$asMedias = $this->getMedias('taken_on', $asMediaIds);
|
||||
usort($asMedias, function($a, $b){return $a['unix_time'] > $b['unix_time'];});
|
||||
@@ -289,11 +295,13 @@ class Spot extends Main
|
||||
$iMaxIndex = count($asMessages) - 1;
|
||||
foreach($asMedias as $asMedia) {
|
||||
if($asMedia['latitude']!='' && $asMedia['longitude']!='') {
|
||||
$asMedia['id'] = $asMedia[Db::getId(Media::MEDIA_TABLE)];
|
||||
$asMedia['type'] = 'media';
|
||||
$asMedia['lat_dms'] = self::decToDms($asMedia['latitude'], 'lat');
|
||||
$asMedia['lon_dms'] = self::decToDms($asMedia['longitude'], 'lon');
|
||||
$asGeoMedias[] = $asMedia;
|
||||
}
|
||||
elseif($bHasMsg) {
|
||||
if($bHasMsg) {
|
||||
while($iIndex <= $iMaxIndex && $asMedia['unix_time'] > $asMessages[$iIndex]['unix_time']) $iIndex++;
|
||||
|
||||
//All medias before first message or after last message are assigned to first/last message respectively
|
||||
@@ -308,13 +316,15 @@ class Spot extends Main
|
||||
}
|
||||
}
|
||||
|
||||
$asMarkers = [...$asMessages, ...$asGeoMedias];
|
||||
usort($asMarkers, function($a, $b){return $a['unix_time'] > $b['unix_time'];});
|
||||
|
||||
//Spot Last Update
|
||||
$asLastUpdate = array();
|
||||
$this->addTimeStamp($asLastUpdate, $this->oProject->getLastUpdate());
|
||||
|
||||
$asResult = array(
|
||||
'messages' => $asMessages,
|
||||
'medias' => $asGeoMedias,
|
||||
'markers' => $asMarkers,
|
||||
'maps' => $this->oMap->getProjectMaps($this->oProject->getProjectId()),
|
||||
'last_update' => $asLastUpdate
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user