Fixed Presentation selection_status query filter

Change-Id: Iaa96a6643d474b41e800ff96539b1cc61060dc48
This commit is contained in:
Sebastian Marcet 2017-12-05 20:31:24 -03:00
parent be6bc1591e
commit a7e56e89a7
2 changed files with 8 additions and 6 deletions

View File

@ -128,19 +128,19 @@ final class DoctrineSummitEventRepository
),
'accepted' => new DoctrineCaseFilterMapping(
'accepted',
"ssp.`order` is not null and ssp.order <= e.category.session_count and sspl.list_type = 'Group' and sspl.list_class = 'Session' and sspl.category = e.category"
"ssp.order is not null and ssp.order <= cc.session_count and sspl.list_type = 'Group' and sspl.list_class = 'Session' and sspl.category = e.category"
),
'alternate' => new DoctrineCaseFilterMapping(
'alternate',
"ssp.`order` is not null and ssp.`order` > e.category.session_count and sspl.list_type = 'Group' and sspl.list_class = 'Session' and sspl.category = e.category"
"ssp.order is not null and ssp.order > cc.session_count and sspl.list_type = 'Group' and sspl.list_class = 'Session' and sspl.category = e.category"
),
'lightning-accepted' => new DoctrineCaseFilterMapping(
'lightning-accepted',
"ssp.`order` is not null and ssp.`order` <= e.category.lightning_count and sspl.list_type = 'Group' and sspl.list_class = 'Lightning' and sspl.category = e.category"
"ssp.order is not null and ssp.order <= cc.lightning_count and sspl.list_type = 'Group' and sspl.list_class = 'Lightning' and sspl.category = e.category"
),
'lightning-alternate' => new DoctrineCaseFilterMapping(
'lightning-alternate',
"ssp.`order` is not null and ssp.`order` > e.category.lightning_count and sspl.list_type = 'Group' and sspl.list_class = 'Lightning' and sspl.category = e.category"
"ssp.order is not null and ssp.order > cc.lightning_count and sspl.list_type = 'Group' and sspl.list_class = 'Lightning' and sspl.category = e.category"
),
]
),
@ -193,6 +193,7 @@ final class DoctrineSummitEventRepository
if($class == \models\summit\Presentation::class) {
$query = $query->innerJoin("e.speakers", "sp", Join::WITH);
$query = $query->innerJoin("e.category", "cc", Join::WITH);
$query = $query->leftJoin('e.selected_presentations', "ssp", Join::LEFT_JOIN);
$query = $query->leftJoin('ssp.list', "sspl", Join::LEFT_JOIN);
$query = $query->leftJoin('e.moderator', "spm", Join::LEFT_JOIN);

View File

@ -2444,8 +2444,7 @@ final class OAuth2SummitApiTest extends ProtectedApiTest
$params = [
'id' => 23,
//'filter' => ['speaker=@Jimmy', 'speaker=@Chimmy'],
'filter' => ['speaker=@Jimmy,speaker=@Chimmy'],
'filter' => ['selection_status==lightning-alternate', 'event_type_id==117'],
'expand' => 'speakers',
];
@ -2472,4 +2471,6 @@ final class OAuth2SummitApiTest extends ProtectedApiTest
$events = json_decode($content);
$this->assertTrue(!is_null($events));
}
}