private function getUserIsFollow(User $user, $testedUser) { $followedUser = $user->getFolloweduser(); $toArray = array(); foreach ($followedUser as $r) { $toArray[] = $r->getId(); } if (in_array($testedUser, $toArray)) { return true; } return false; }
private function getAllUserFollow(User $user) { $regions = $user->getFollowedregion(); $departements = $user->getFolloweddepartement(); $citys = $user->getFollowedcity(); $categories = $user->getFollowedcategories(); $users = $user->getFolloweduser(); $regionIds = array(); $departementsIds = array(); $citysIds = array(); $categoriesIds = array(); $usersIds = array(); $advertsRegionsListId = array(); $advertsDepartementsListId = array(); $advertsCitysListId = array(); $advertsUsersListId = array(); $advertsCategoriesListId = array(); // Synchro par région foreach ($regions as $r) { $regionIds[] = $r->getId(); } $advertByRegion = $this->entityManager->getRepository('SnoozitPlatformBundle:Advert')->getAdvertByRegionFollowed($regionIds); if ($advertByRegion) { foreach ($advertByRegion as $row) { $advertsRegionsListId[] = $row['id']; } } // Synchro par département foreach ($departements as $r) { $departementsIds[] = $r->getId(); } $advertByDepartements = $this->entityManager->getRepository('SnoozitPlatformBundle:Advert')->getAdvertByDepartementFollowed($departementsIds); if ($advertByDepartements) { foreach ($advertByDepartements as $row) { $advertsDepartementsListId[] = $row['id']; } } // Synchro par city foreach ($citys as $r) { $citysIds[] = $r->getId(); } $advertByCity = $this->entityManager->getRepository('SnoozitPlatformBundle:Advert')->getAdvertByCityFollowed($citysIds); if ($advertByCity) { foreach ($advertByCity as $row) { $advertsCitysListId[] = $row['id']; } } // Synchro par categorie foreach ($categories as $r) { $categoriesIds[] = $r->getId(); } $advertByCategories = $this->entityManager->getRepository('SnoozitPlatformBundle:Advert')->getAdvertByCategoriesFollowed($categoriesIds); if ($advertByCategories) { foreach ($advertByCategories as $row) { $advertsCategoriesListId[] = $row['id']; } } // Synchro par Utilisateur foreach ($users as $r) { $usersIds[] = $r->getId(); } $advertByUsers = $this->entityManager->getRepository('SnoozitPlatformBundle:Advert')->getAdvertByUsersFollowed($usersIds); if ($advertByUsers) { foreach ($advertByUsers as $row) { $advertsUsersListId[] = $row['id']; } } $advertList = array_merge($advertsRegionsListId, $advertsDepartementsListId, $advertsCitysListId, $advertsCategoriesListId, $advertsUsersListId); return array_unique($advertList); }