Я использую Google Maps CakePHP помощник от dereuromark, чтобы показать карту в моем представлении.На карте также есть маркеры, и у каждого маркера есть собственный связанный слушатель, который выполняет вызов ajax.
Карта отображается идеально, и все работает, как и ожидалось.Однако я не уверен, что весь этот код отделен от моего взгляда?Я новичок в архитектуре MVC ...
<h1>Render map</h1>
<?php
// returns true if user logged in
if (!$session->check('Auth.User.id')){
echo $this->Html->link('Log in',array('controller'=>'users', 'action' => 'login'));
} else
{
echo "Hello " . $session->read('Auth.User.username') . "... ";
echo $this->Html->link('Log out',array('controller'=>'users', 'action' => 'logout'));
}
echo $this->GoogleMapV3->map(array('map' => array('lat' => '44.230065', 'lng' => '-76.5000', 'zoom' => 14), 'div'=>array('id'=>'my_map3', 'height' => '400px', 'width' => '786px')));
foreach ($posts as $post) {
$options = array(
'lat' => $post['Post']['lat'],
'lng' => $post['Post']['lng'],
);
$marker = $this->GoogleMapV3->addMarker($options);
$script = "$.ajax({
url: \"show_post.php?q=\"+{$post['Post']['id']},
success: function(html){
$(\"#results\").html(html);
}
});";
$this->GoogleMapV3->addCustomEvent($marker,$script);
}
echo $this->GoogleMapV3->script();
?>
Если бы вы могли указать на любые недостатки дизайна, которые были бы великолепны.Спасибо