/**
  * @param Geoname $geoname
  * @return float
  */
 public function getRandomLng(Geoname $geoname)
 {
     $lng = floatval($geoname->getLng());
     return $lng + $this->getRandomOffset();
 }
 /**
  * @param Geoname $geoname
  *
  * @return array
  */
 public function getNearbyGeonames(Geoname $geoname)
 {
     $queryBuilder = $this->getEntityManager()->createQueryBuilder()->select('g')->addSelect('DISTANCE(g.lat,g.lng,:lat,:lng) AS HIDDEN distance')->from(Geoname::SHORTCUT_CLASS_NAME, 'g')->setParameter('lat', $geoname->getLat())->setParameter('lng', $geoname->getLng())->orderBy('distance', 'ASC');
     $query = $queryBuilder->getQuery()->setMaxResults(30);
     return $query->getResult();
 }