/** * @inheritdoc */ public function getRandomIdsNotInPivot(array $entities, array $idEntities, array $ids, $count) { // the table to retrieve ids from $table = last($entities); $pivotTable = $this->tableHelper->getTable($entities); $pivotColumn = $this->tableHelper->getLastEntityAsIdColumnName($entities); $columnNames = $this->tableHelper->getIdColumnNames($entities, $idEntities); if (count($entities) === count($ids)) { array_pop($ids); } $pivotWhereJoinColumns = array_combine($columnNames, $ids); return $this->db->getRandomIdsFromTableWhereNotInPivot($table, $pivotTable, $pivotColumn, $count, $pivotWhereJoinColumns); }