You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2016/04/29 07:22:13 UTC

svn commit: r1741554 - in /openmeetings/application: branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/ branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/ trunk/openmeetings-web/src/ma...

Author: solomax
Date: Fri Apr 29 05:22:12 2016
New Revision: 1741554

URL: http://svn.apache.org/viewvc?rev=1741554&view=rev
Log:
[OPENMEETINGS-897] create poll is fixed

Modified:
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java?rev=1741554&r1=1741553&r2=1741554&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java Fri Apr 29 05:22:12 2016
@@ -36,6 +36,7 @@ import org.apache.openmeetings.db.dao.se
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.db.entity.room.Room.RoomElement;
+import org.apache.openmeetings.db.entity.room.RoomPoll;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.entity.user.User.Right;
 import org.apache.openmeetings.util.message.RoomMessage;
@@ -145,7 +146,7 @@ public class RoomMenuPanel extends Panel
 
 		@Override
 		public void onClick(AjaxRequestTarget target) {
-			createPoll.updateModel(target, null); //TODO FIXME
+			createPoll.updateModel(target);
 			createPoll.open(target);
 		}
 	};
@@ -154,8 +155,11 @@ public class RoomMenuPanel extends Panel
 
 		@Override
 		public void onClick(AjaxRequestTarget target) {
-			vote.updateModel(target);
-			vote.open(target);
+			RoomPoll rp = getBean(PollDao.class).getByRoom(room.getRoom().getId());
+			if (rp != null) {
+				vote.updateModel(target, rp);
+				vote.open(target);
+			}
 		}
 	};
 	private final RoomMenuItem pollResultMenuItem = new RoomMenuItem(Application.getString(37), Application.getString(1484), false) {
@@ -181,7 +185,7 @@ public class RoomMenuPanel extends Panel
 		add(shareBtn = new StartSharingButton("share", room.getClient()));
 		add(invite = new InvitationDialog("invite", room.getRoom().getId()));
 		add(createPoll = new CreatePollDialog("createPoll", room.getRoom().getId()));
-		add(vote = new VoteDialog("vote", room.getRoom().getId()));
+		add(vote = new VoteDialog("vote"));
 		add(pollResults = new PollResultsDialog("pollResults", room.getRoom().getId()));
 	}
 	
@@ -293,9 +297,12 @@ public class RoomMenuPanel extends Panel
 	}
 
 	public void pollCreated(IPartialPageRequestHandler handler) {
-		vote.updateModel(handler);
-		vote.open(handler);
-		update(handler);
+		RoomPoll rp = getBean(PollDao.class).getByRoom(room.getRoom().getId());
+		if (rp != null) {
+			vote.updateModel(handler, rp);
+			vote.open(handler);
+			update(handler);
+		}
 	}
 	
 	public void exit(IPartialPageRequestHandler handler) {

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java?rev=1741554&r1=1741553&r2=1741554&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java Fri Apr 29 05:22:12 2016
@@ -20,7 +20,6 @@ package org.apache.openmeetings.web.room
 
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.apache.openmeetings.web.room.RoomBroadcaster.broadcast;
 
 import java.util.Arrays;
 import java.util.List;
@@ -30,7 +29,9 @@ import org.apache.openmeetings.db.dao.ro
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.room.RoomPoll;
 import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.util.message.RoomMessage;
 import org.apache.openmeetings.web.app.Application;
+import org.apache.openmeetings.web.room.RoomPanel;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.markup.html.form.ChoiceRenderer;
 import org.apache.wicket.markup.html.form.DropDownChoice;
@@ -53,7 +54,6 @@ public class CreatePollDialog extends Ab
 	private final Long roomId;
 	private final PollForm form;
 	private final KendoFeedbackPanel feedback = new KendoFeedbackPanel("feedback", new Options("button", true));
-	private String publicSid = null;
 
 	public CreatePollDialog(String id, Long roomId) {
 		super(id, Application.getString(18), new CompoundPropertyModel<RoomPoll>(new RoomPoll()));
@@ -61,8 +61,7 @@ public class CreatePollDialog extends Ab
 		add(form = new PollForm("form", getModel()));
 	}
 
-	public void updateModel(AjaxRequestTarget target, String publicSid) {
-		this.publicSid = publicSid;
+	public void updateModel(AjaxRequestTarget target) {
 		RoomPoll p = new RoomPoll();
 		User u = getBean(UserDao.class).get(getUserId());
 		p.setCreator(u);
@@ -94,9 +93,10 @@ public class CreatePollDialog extends Ab
 
 	@Override
 	protected void onSubmit(AjaxRequestTarget target) {
-		getBean(PollDao.class).close(roomId);
-		RoomPoll p = getBean(PollDao.class).update(form.getModelObject());
-		broadcast(publicSid, "newPoll", p);
+		PollDao dao = getBean(PollDao.class);
+		dao.close(roomId);
+		dao.update(form.getModelObject());
+		RoomPanel.broadcast(new RoomMessage(roomId, getUserId(), RoomMessage.Type.pollCreated));
 	}
 
 	private class PollForm extends Form<RoomPoll> {

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java?rev=1741554&r1=1741553&r2=1741554&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java Fri Apr 29 05:22:12 2016
@@ -55,16 +55,14 @@ import com.googlecode.wicket.kendo.ui.pa
 public class VoteDialog extends AbstractFormDialog<RoomPollAnswer> {
 	private static final long serialVersionUID = 1L;
 	private final static List<Integer> answers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);  //TODO max vote should be added 
-	private final Long roomId;
 	private final PollAnswerForm form;
 	private final DialogButton vote = new DialogButton("vote", Application.getString(32));
 	private final DialogButton cancel = new DialogButton("cancel", Application.getString(25));
 	private final KendoFeedbackPanel feedback = new KendoFeedbackPanel("feedback", new Options("button", true));
 	private final IModel<String> user = Model.of((String)null);
 
-	public VoteDialog(String id, Long roomId) {
+	public VoteDialog(String id) {
 		super(id, Application.getString(18));
-		this.roomId = roomId;
 		add(form = new PollAnswerForm("form", new CompoundPropertyModel<RoomPollAnswer>(new RoomPollAnswer())));
 	}
 	
@@ -72,9 +70,9 @@ public class VoteDialog extends Abstract
 		return u == null ? "" : (getUserId().equals(u.getId()) ? Application.getString(1411) : u.getFirstname() + " " + u.getLastname());
 	}
 	
-	public void updateModel(IPartialPageRequestHandler target) {
+	public void updateModel(IPartialPageRequestHandler target, RoomPoll rp) {
 		RoomPollAnswer a = new RoomPollAnswer();
-		a.setRoomPoll(getBean(PollDao.class).getByRoom(roomId));
+		a.setRoomPoll(rp);
 		User u = getBean(UserDao.class).get(getUserId());
 		a.setVotedUser(u);
 		user.setObject(getName(a.getRoomPoll().getCreator()));

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java?rev=1741554&r1=1741553&r2=1741554&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java Fri Apr 29 05:22:12 2016
@@ -36,6 +36,7 @@ import org.apache.openmeetings.db.dao.se
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.room.Room;
 import org.apache.openmeetings.db.entity.room.Room.RoomElement;
+import org.apache.openmeetings.db.entity.room.RoomPoll;
 import org.apache.openmeetings.db.entity.user.User;
 import org.apache.openmeetings.db.entity.user.User.Right;
 import org.apache.openmeetings.util.message.RoomMessage;
@@ -145,7 +146,7 @@ public class RoomMenuPanel extends Panel
 
 		@Override
 		public void onClick(AjaxRequestTarget target) {
-			createPoll.updateModel(target, null); //TODO FIXME
+			createPoll.updateModel(target);
 			createPoll.open(target);
 		}
 	};
@@ -154,8 +155,11 @@ public class RoomMenuPanel extends Panel
 
 		@Override
 		public void onClick(AjaxRequestTarget target) {
-			vote.updateModel(target);
-			vote.open(target);
+			RoomPoll rp = getBean(PollDao.class).getByRoom(room.getRoom().getId());
+			if (rp != null) {
+				vote.updateModel(target, rp);
+				vote.open(target);
+			}
 		}
 	};
 	private final RoomMenuItem pollResultMenuItem = new RoomMenuItem(Application.getString(37), Application.getString(1484), false) {
@@ -181,7 +185,7 @@ public class RoomMenuPanel extends Panel
 		add(shareBtn = new StartSharingButton("share", room.getClient()));
 		add(invite = new InvitationDialog("invite", room.getRoom().getId()));
 		add(createPoll = new CreatePollDialog("createPoll", room.getRoom().getId()));
-		add(vote = new VoteDialog("vote", room.getRoom().getId()));
+		add(vote = new VoteDialog("vote"));
 		add(pollResults = new PollResultsDialog("pollResults", room.getRoom().getId()));
 	}
 	
@@ -293,9 +297,12 @@ public class RoomMenuPanel extends Panel
 	}
 
 	public void pollCreated(IPartialPageRequestHandler handler) {
-		vote.updateModel(handler);
-		vote.open(handler);
-		update(handler);
+		RoomPoll rp = getBean(PollDao.class).getByRoom(room.getRoom().getId());
+		if (rp != null) {
+			vote.updateModel(handler, rp);
+			vote.open(handler);
+			update(handler);
+		}
 	}
 	
 	public void exit(IPartialPageRequestHandler handler) {

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java?rev=1741554&r1=1741553&r2=1741554&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java Fri Apr 29 05:22:12 2016
@@ -20,7 +20,6 @@ package org.apache.openmeetings.web.room
 
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
-import static org.apache.openmeetings.web.room.RoomBroadcaster.broadcast;
 
 import java.util.Arrays;
 import java.util.List;
@@ -30,7 +29,9 @@ import org.apache.openmeetings.db.dao.ro
 import org.apache.openmeetings.db.dao.user.UserDao;
 import org.apache.openmeetings.db.entity.room.RoomPoll;
 import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.util.message.RoomMessage;
 import org.apache.openmeetings.web.app.Application;
+import org.apache.openmeetings.web.room.RoomPanel;
 import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.markup.html.form.ChoiceRenderer;
 import org.apache.wicket.markup.html.form.DropDownChoice;
@@ -53,7 +54,6 @@ public class CreatePollDialog extends Ab
 	private final Long roomId;
 	private final PollForm form;
 	private final KendoFeedbackPanel feedback = new KendoFeedbackPanel("feedback", new Options("button", true));
-	private String publicSid = null;
 
 	public CreatePollDialog(String id, Long roomId) {
 		super(id, Application.getString(18), new CompoundPropertyModel<RoomPoll>(new RoomPoll()));
@@ -61,8 +61,7 @@ public class CreatePollDialog extends Ab
 		add(form = new PollForm("form", getModel()));
 	}
 
-	public void updateModel(AjaxRequestTarget target, String publicSid) {
-		this.publicSid = publicSid;
+	public void updateModel(AjaxRequestTarget target) {
 		RoomPoll p = new RoomPoll();
 		User u = getBean(UserDao.class).get(getUserId());
 		p.setCreator(u);
@@ -94,9 +93,10 @@ public class CreatePollDialog extends Ab
 
 	@Override
 	protected void onSubmit(AjaxRequestTarget target) {
-		getBean(PollDao.class).close(roomId);
-		RoomPoll p = getBean(PollDao.class).update(form.getModelObject());
-		broadcast(publicSid, "newPoll", p);
+		PollDao dao = getBean(PollDao.class);
+		dao.close(roomId);
+		dao.update(form.getModelObject());
+		RoomPanel.broadcast(new RoomMessage(roomId, getUserId(), RoomMessage.Type.pollCreated));
 	}
 
 	private class PollForm extends Form<RoomPoll> {

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java?rev=1741554&r1=1741553&r2=1741554&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java Fri Apr 29 05:22:12 2016
@@ -55,16 +55,14 @@ import com.googlecode.wicket.kendo.ui.pa
 public class VoteDialog extends AbstractFormDialog<RoomPollAnswer> {
 	private static final long serialVersionUID = 1L;
 	private final static List<Integer> answers = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);  //TODO max vote should be added 
-	private final Long roomId;
 	private final PollAnswerForm form;
 	private final DialogButton vote = new DialogButton("vote", Application.getString(32));
 	private final DialogButton cancel = new DialogButton("cancel", Application.getString(25));
 	private final KendoFeedbackPanel feedback = new KendoFeedbackPanel("feedback", new Options("button", true));
 	private final IModel<String> user = Model.of((String)null);
 
-	public VoteDialog(String id, Long roomId) {
+	public VoteDialog(String id) {
 		super(id, Application.getString(18));
-		this.roomId = roomId;
 		add(form = new PollAnswerForm("form", new CompoundPropertyModel<RoomPollAnswer>(new RoomPollAnswer())));
 	}
 	
@@ -72,9 +70,9 @@ public class VoteDialog extends Abstract
 		return u == null ? "" : (getUserId().equals(u.getId()) ? Application.getString(1411) : u.getFirstname() + " " + u.getLastname());
 	}
 	
-	public void updateModel(IPartialPageRequestHandler target) {
+	public void updateModel(IPartialPageRequestHandler target, RoomPoll rp) {
 		RoomPollAnswer a = new RoomPollAnswer();
-		a.setRoomPoll(getBean(PollDao.class).getByRoom(roomId));
+		a.setRoomPoll(rp);
 		User u = getBean(UserDao.class).get(getUserId());
 		a.setVotedUser(u);
 		user.setObject(getName(a.getRoomPoll().getCreator()));