Commit 75a86224 by Tuomas Riihimäki

Eh.. jotain, vielä kun muistais mitä...

1 parent f2af2991
......@@ -67,7 +67,7 @@ public class PollBean implements PollBeanLocal {
@RolesAllowed(PollPermission.S_VIEW_RESULTS)
public List<Poll> findAllPolls() {
return pollFacade.findAll(eventBean.getCurrentEvent());
return pollFacade.findAll();
}
......
......@@ -3,12 +3,14 @@ package fi.insomnia.bortal.facade;
import java.util.Date;
import java.util.List;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.Poll;
import fi.insomnia.bortal.model.Poll_;
......@@ -17,6 +19,9 @@ import fi.insomnia.bortal.model.Poll_;
@LocalBean
public class PollFacade extends IntegerPkGenericFacade<Poll> {
@EJB
private EventBeanLocal eventBean;
public PollFacade() {
super(Poll.class);
......@@ -50,6 +55,17 @@ public class PollFacade extends IntegerPkGenericFacade<Poll> {
// return false;
// }
@Override
public Poll find(Integer id)
{
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Poll> cq = cb.createQuery(Poll.class);
Root<Poll> root = cq.from(Poll.class);
cq.where(cb.equal(root.get(Poll_.id), id),
cb.equal(root.get(Poll_.event), eventBean.getCurrentEvent()));
return super.getSingleNullableResult(getEm().createQuery(cq));
}
public List<Poll> findAllUsable(LanEvent currentEvent) {
Date now = new Date();
......@@ -66,13 +82,12 @@ public class PollFacade extends IntegerPkGenericFacade<Poll> {
}
public List<Poll> findAll(LanEvent currentEvent) {
public List<Poll> findAll() {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Poll> cq = cb.createQuery(Poll.class);
Root<Poll> root = cq.from(Poll.class);
cq.where(cb.equal(root.get(Poll_.event), currentEvent));
cq.where(cb.equal(root.get(Poll_.event), eventBean.getCurrentEvent()));
return getEm().createQuery(cq).getResultList();
}
......
......@@ -26,6 +26,7 @@ public class ReaderEventFacade extends IntegerPkGenericFacade<ReaderEvent> {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<ReaderEvent> cq = cb.createQuery(ReaderEvent.class);
Root<ReaderEvent> root = cq.from(ReaderEvent.class);
cq.where(cb.equal(root.get(ReaderEvent_.reader), reader));
cq.orderBy(cb.desc(root.get(ReaderEvent_.time)));
......
......@@ -77,7 +77,10 @@ public class PollView extends GenericCDIView {
if (super.requirePermissions(PollPermission.ANSWER) && poll == null) {
thisPage = 1;
poll = pollBean.find(pollId);
if (super.requirePermissions(poll != null))
{
return;
}
pages = new HashMap<Integer, List<QuestionWrapper>>();
logger.info("initializing poll {}", poll);
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!