diff -r e952c8a31a2b -r c622fa18eb32 server/src/app/Repositories/RdfDocumentRepository.php --- a/server/src/app/Repositories/RdfDocumentRepository.php Thu Oct 20 12:54:07 2016 +0530 +++ b/server/src/app/Repositories/RdfDocumentRepository.php Thu Oct 20 12:56:24 2016 +0530 @@ -154,6 +154,29 @@ } $qFilterParts[] = CorpusFilterManager::getLanguagesFilterPart($languages); } + if(array_key_exists('location', $filters) && !empty($filters['location'])) { + $location = $filters['location']; + if(is_array($location)) { + $location = $location[0]; // we know it is not empty + } + $qFilterParts[] = CorpusFilterManager::getLocationFilterPart($location); + } + if(array_key_exists('themes', $filters) && !empty($filters['themes'])) { + $themes = $filters['themes']; + if(is_string($themes)) { + $themes = [$themes,]; // we know it is not empty + } + $qFilterParts[] = CorpusFilterManager::getThemeFilterPart($themes); + } + if(array_key_exists('discourses', $filters) && !empty($filters['discourses'])) { + $discourses = $filters['discourses']; + if(is_string($discourses)) { + $discourses = [$discourses,]; // we know it is not empty + } + $qFilterParts[] = CorpusFilterManager::getDiscourseFilterPart($discourses); + } + + Log::debug("queries : ".print_r($qFilterParts, true)); $query = [ 'index' => config('corpusparole.elasticsearch_index'),