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 2013/07/17 14:40:12 UTC

svn commit: r1504101 - in /openmeetings/trunk/singlewebapp: WebContent/openmeetings/css/theme.css src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.html src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java

Author: solomax
Date: Wed Jul 17 12:40:11 2013
New Revision: 1504101

URL: http://svn.apache.org/r1504101
Log:
[OPENMEETINGS-615] Additional buttons are added

Modified:
    openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css
    openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.html
    openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java

Modified: openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css?rev=1504101&r1=1504100&r2=1504101&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css (original)
+++ openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css Wed Jul 17 12:40:11 2013
@@ -883,3 +883,6 @@ select.messages.selector {
 #messagesTable tr.unread {
 	font-weight: bold;
 }
+.fht-tbody {
+	background-color: white;
+}

Modified: openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.html
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.html?rev=1504101&r1=1504100&r2=1504101&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.html (original)
+++ openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.html Wed Jul 17 12:40:11 2013
@@ -57,8 +57,9 @@
 					</tr>
 					</tbody>
 				</table>
-				<div>
-					<select><option>[stab]select</option></select>
+				<div wicket:id="buttons">
+					<select wicket:id="msgSelect"></select>
+					<input wicket:id="toInboxBtn" type="button" wicket:ommessage="value:1255"/>
 					<input wicket:id="deleteBtn" type="button" wicket:ommessage="value:1245"/>
 					<input wicket:id="readBtn" type="button" wicket:ommessage="value:1248"/>
 					<input wicket:id="unreadBtn" type="button" wicket:ommessage="value:1247"/>

Modified: openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java?rev=1504101&r1=1504100&r2=1504101&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java (original)
+++ openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/user/profile/MessagesContactsPanel.java Wed Jul 17 12:40:11 2013
@@ -22,6 +22,7 @@ import static org.apache.openmeetings.we
 import static org.apache.openmeetings.web.app.WebSession.getDateFormat;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 
+import java.util.Arrays;
 import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
@@ -48,6 +49,8 @@ import org.apache.wicket.behavior.Attrib
 import org.apache.wicket.markup.html.WebMarkupContainer;
 import org.apache.wicket.markup.html.basic.Label;
 import org.apache.wicket.markup.html.form.Button;
+import org.apache.wicket.markup.html.form.DropDownChoice;
+import org.apache.wicket.markup.html.form.IChoiceRenderer;
 import org.apache.wicket.markup.html.list.ListItem;
 import org.apache.wicket.markup.html.list.ListView;
 import org.apache.wicket.markup.repeater.Item;
@@ -76,12 +79,26 @@ public class MessagesContactsPanel exten
 	private final WebMarkupContainer sent = new WebMarkupContainer("sent");
 	private final WebMarkupContainer trash = new WebMarkupContainer("trash");
 	private final WebMarkupContainer selectedMessage = new WebMarkupContainer("selectedMessage");
+	private final WebMarkupContainer buttons = new WebMarkupContainer("buttons");
 	private final MessageDialog newMessage;
 	private final DataViewContainer<PrivateMessage> dataContainer;
 	private final Set<Long> selectedMessages = new HashSet<Long>();
+	private final Button toInboxBtn = new Button("toInboxBtn");
 	private final Button deleteBtn = new Button("deleteBtn");
 	private final Button readBtn = new Button("readBtn");
 	private final Button unreadBtn = new Button("unreadBtn");
+	private final FixedHeaderTableBehavior fixedTable = new FixedHeaderTableBehavior("#messagesTable", new Options("height", 100));
+	private final DropDownChoice<Long> selectDropDown = new DropDownChoice<Long>("msgSelect", Model.of(1252L), Arrays.asList(1252L, 1239L, 1240L, 1241L, 1242L), new IChoiceRenderer<Long>() {
+		private static final long serialVersionUID = 1L;
+
+		public Object getDisplayValue(Long object) {
+			return WebSession.getString(object);
+		}
+		
+		public String getIdValue(Long object, int index) {
+			return "" + object;
+		}
+	});
 	
 	private void setDefaultFolderClass() {
 		inbox.add(AttributeAppender.replace("class", "email inbox clickable"));
@@ -100,6 +117,14 @@ public class MessagesContactsPanel exten
 		}
 	}
 	
+	private void updateControls(AjaxRequestTarget target) {
+		deleteBtn.setEnabled(!selectedMessages.isEmpty());
+		readBtn.setEnabled(TRASH_FOLDER_ID != selectedModel.getObject() && !selectedMessages.isEmpty());
+		unreadBtn.setEnabled(TRASH_FOLDER_ID != selectedModel.getObject() && !selectedMessages.isEmpty());
+		toInboxBtn.setVisible(INBOX_FOLDER_ID != selectedModel.getObject() && SENT_FOLDER_ID != selectedModel.getObject() && !selectedMessages.isEmpty());
+		target.add(buttons);
+	}
+	
 	private void selectMessage(long id, AjaxRequestTarget target) {
 		PrivateMessage msg = getBean(PrivateMessagesDao.class).get(id);
 		selectedMessage.addOrReplace(new Label("from", msg == null ? "" : msg.getFrom().getAdresses().getEmail()));
@@ -107,9 +132,15 @@ public class MessagesContactsPanel exten
 		selectedMessage.addOrReplace(new Label("subj", msg == null ? "" : msg.getSubject()));
 		selectedMessage.addOrReplace(new Label("body", msg == null ? "" : msg.getMessage()));
 		if (target != null) {
-			target.add(selectedMessage, deleteBtn.setEnabled(!selectedMessages.isEmpty())
-				, readBtn.setEnabled(TRASH_FOLDER_ID != selectedModel.getObject() && !selectedMessages.isEmpty())
-				, unreadBtn.setEnabled(TRASH_FOLDER_ID != selectedModel.getObject() && !selectedMessages.isEmpty()));
+			target.add(selectedMessage);
+			updateControls(target);
+		}
+	}
+	
+	void updateTable(AjaxRequestTarget target) {
+		container.add(fixedTable);
+		if (target != null) {
+			target.add(container);
 		}
 	}
 	
@@ -121,11 +152,11 @@ public class MessagesContactsPanel exten
 		deleteBtn.add(AttributeModifier.replace("value", WebSession.getString(TRASH_FOLDER_ID == id ? 1256 : 1245)));
 		readBtn.setEnabled(false);
 		unreadBtn.setEnabled(false);
-		container.add(new FixedHeaderTableBehavior("#messagesTable", new Options("height", 100)));
 		//FIXME it is not working! (at least for the SENT folder)
 		unread.setDefaultModelObject(getBean(PrivateMessagesDao.class).count(getUserId(), id > 0 ? id : null, false, TRASH_FOLDER_ID == id));
 		if (target != null) {
-			target.add(folders, container, unread);
+			updateTable(target);
+			target.add(folders, unread);
 			target.add(dataContainer.container, dataContainer.navigator);
 			target.add(dataContainer.orderLinks);
 		}
@@ -346,8 +377,9 @@ public class MessagesContactsPanel exten
 		add(new WebMarkupContainer("pendingContacts"));//FIXME
 		add(new WebMarkupContainer("na1"));//FIXME
 		
-		add(deleteBtn.setOutputMarkupId(true).setEnabled(!selectedMessages.isEmpty())
-			.add(new AjaxEventBehavior("click") {
+		add(buttons.setOutputMarkupId(true));
+		buttons.add(toInboxBtn);
+		buttons.add(deleteBtn.add(new AjaxEventBehavior("click") {
 				private static final long serialVersionUID = 1L;
 	
 				@Override
@@ -361,8 +393,7 @@ public class MessagesContactsPanel exten
 					target.add(container);
 				}
 			}));
-		add(readBtn.setOutputMarkupId(true).setEnabled(!selectedMessages.isEmpty())
-			.add(new AjaxEventBehavior("click") {
+		buttons.add(readBtn.add(new AjaxEventBehavior("click") {
 				private static final long serialVersionUID = 1L;
 				
 				@Override
@@ -372,8 +403,7 @@ public class MessagesContactsPanel exten
 					target.add(container);
 				}
 			}));
-		add(unreadBtn.setOutputMarkupId(true).setEnabled(!selectedMessages.isEmpty())
-			.add(new AjaxEventBehavior("click") {
+		buttons.add(unreadBtn.add(new AjaxEventBehavior("click") {
 				private static final long serialVersionUID = 1L;
 				
 				@Override
@@ -383,6 +413,8 @@ public class MessagesContactsPanel exten
 					target.add(container);
 				}
 			}));
+		buttons.add(selectDropDown.setOutputMarkupId(true));
+		
 		add(container.add(dv).setOutputMarkupId(true));
 		//TODO add valid autoupdate add(new AjaxSelfUpdatingTimerBehavior(seconds(15)));
 		add(newMessage);