ADD кеширование JSON-трека; открытие трека, переданного в параметре

This commit is contained in:
Krivchikov Dmitry 2016-05-24 23:39:04 +03:00
parent 08b23039ec
commit 86b67601be
4 changed files with 35 additions and 4 deletions

View File

@ -591,6 +591,12 @@ class JsonController extends Controller
App::error404();
}
if ($trip->json) {
header('Content-Type: application/json');
print $trip->json;
die;
}
$res = array(
'name' => $trip->name,
'time' => $trip->createdAt,
@ -642,7 +648,14 @@ class JsonController extends Controller
$res['tracks'] = $resTracks;
self::renderPartial('json.php', $res);
$json = self::renderPartial('json.php', $res, TRUE);
$trip->json = $json;
$trip->save();
header('Content-Type: application/json');
print $json;
die;
}
}

View File

@ -241,6 +241,9 @@ function initPoints(useBounds)
.setContent('Координаты: N°' + getURLParameter('lat').substring(0,8) + ' E°' + getURLParameter('lng').substring(0,8))
.openOn(myMap);
}
} else if (getURLParameter('track') != 'null')
{
showTrack(getURLParameter('track'))
}
}
});

View File

@ -1,5 +1,14 @@
var trips = new Object;
function showHideTrack(id)
{
if($('#trackShowHide'+id).prop('checked')) {
showTrack(id)
} else {
hideTrack(id)
}
}
function showTrack(id)
{
if (typeof (trips[id]) == 'undefined') {

View File

@ -112,9 +112,15 @@ if (App::$user) {
<div id="tracks">
<?php if ($tracks): ?>
<?php foreach ($tracks as $track) : ?>
<div class="btn-link" onclick="showTrack(<?= $track->id ?>)"><?= $track->name ?></div>
<?php endforeach; ?>
<?php else: ?>
<div style="border-bottom: solid 1px #CCC">
<input type="checkbox" id="trackShowHide<?= $track->id ?>" onchange="showHideTrack(<?= $track->id ?>)" />
<?= $track->name ?>
<a href="/?track=<?= $track->id ?>">
<span class="glyphicon glyphicon-link" aria-hidden="true"></span>
</a>
</div>
<?php endforeach; ?>
<?php else: ?>
У вас пока нет сохраненных треков.
<?php endif; ?>
</div>