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' => new DoctrineCaseFilterMapping(
'accepted', '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' => new DoctrineCaseFilterMapping(
'alternate', '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' => new DoctrineCaseFilterMapping(
'lightning-accepted', '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' => new DoctrineCaseFilterMapping(
'lightning-alternate', '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) { if($class == \models\summit\Presentation::class) {
$query = $query->innerJoin("e.speakers", "sp", Join::WITH); $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('e.selected_presentations', "ssp", Join::LEFT_JOIN);
$query = $query->leftJoin('ssp.list', "sspl", Join::LEFT_JOIN); $query = $query->leftJoin('ssp.list', "sspl", Join::LEFT_JOIN);
$query = $query->leftJoin('e.moderator', "spm", Join::LEFT_JOIN); $query = $query->leftJoin('e.moderator', "spm", Join::LEFT_JOIN);

View File

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