/**
* add posted user id as board member with given board id
* @param Request $req
* @param int $boardId
* @return RedirectResponse
*/
public function addMemberAction(Request $req, $boardId)
{
$journal = $this->get('ojs.journal_service')->getSelectedJournal();
if (!$this->isGranted('EDIT', $journal, 'boards')) {
throw new AccessDeniedException("You not authorized for edit this journal's board!");
}
$userId = $req->get('userid');
$em = $this->getDoctrine()->getManager();
$user = $em->getRepository('OjsUserBundle:User')->find($userId);
$this->throw404IfNotFound($user);
/** @var Board $board */
$board = $em->getRepository('OjsJournalBundle:Board')->findOneBy(array('id' => $boardId, 'journal' => $journal));
$seq = (int) $req->get('seq');
$boardMember = new BoardMember();
$boardMember->setBoard($board);
$boardMember->setUser($user);
$boardMember->setSeq($seq);
$em->persist($boardMember);
$em->flush();
return $this->redirectToRoute('ojs_journal_board_show', ['id' => $boardId, 'journalId' => $journal->getId()]);
}