Commit 592edfba by Tuukka Kivilahti

Merge remote-tracking branch 'tuomari/queue' into queuefixes

2 parents fa617d3b 99309154
......@@ -120,7 +120,7 @@ public class QueueBean implements QueueBeanLocal {
logger.info("Removed user {} from reserving queue", user);
}
// There should neve be more than one instance, but make sure
while (!queue.remove(user)) {
while (queue.remove(user)) {
logger.info("Removed user {} from queue");
}
ret = queEntries.remove(user);
......@@ -189,6 +189,10 @@ public class QueueBean implements QueueBeanLocal {
// If queue is not enabled, user can always reserve
if (!isQueueEnabled())
return true;
if (map == null || user == null)
{
logger.warn("Can not check map {}, user {}", map, user);
}
boolean ret = getMapque(map).isReserving(user);
// Do some housekeeping, but only on each 120
......
......@@ -22,6 +22,7 @@ import org.slf4j.LoggerFactory;
import fi.codecrew.moya.beans.PermissionBeanLocal;
import fi.codecrew.moya.beans.PlaceBeanLocal;
import fi.codecrew.moya.beans.QueueBeanLocal;
import fi.codecrew.moya.model.EventMap;
import fi.codecrew.moya.model.EventUser;
import fi.codecrew.moya.model.Place;
......@@ -47,6 +48,9 @@ public class PlacemapRestViewV1 {
@Inject
private UserView userView;
@EJB
private QueueBeanLocal quebean;
// @GET
// @Path("/maps")
// public PlacemapMapRootPojo getMaps()
......@@ -116,6 +120,13 @@ public class PlacemapRestViewV1 {
}
Place p = placebean.find(placeId);
EventMap map = p.getMap();
if (!quebean.isReserving(map, user))
{
logger.warn("User is not in reservation order ");
return Response.status(Response.Status.FORBIDDEN).build();
}
boolean success = false;
if (p.isReservedFor(user)) {
success = placebean.releasePlace(p);
......
......@@ -139,7 +139,7 @@ public class AjaxMapView extends GenericCDIView {
public boolean canUserBuy() {
return permbean.hasPermission(MapPermission.BUY_PLACES) &&
(permbean.hasPermission(MapPermission.MANAGE_OTHERS) ||
quebean.isReserving(map, permbean.getCurrentUser())
quebean.isReserving(initMap(), permbean.getCurrentUser())
);
}
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!