Author: solomax
Date: Wed Jul 24 16:50:07 2013
New Revision: 1506624

URL: http://svn.apache.org/r1506624
Log:
[OPENMEETINGS-615] Stab for move drop down is added

Modified:
    
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/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=1506624&r1=1506623&r2=1506624&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 24 16:50:07 2013
@@ -63,7 +63,7 @@
                                        <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"/>
-                                       
<select><option>[stab]move</option></select>
+                                       <select wicket:id="msgMove"></select>
                                </div>
                                <div wicket:id="selectedMessage">
                                        <table style="width: 100%">

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=1506624&r1=1506623&r2=1506624&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 24 16:50:07 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.ArrayList;
 import java.util.Arrays;
 import java.util.HashSet;
 import java.util.Iterator;
@@ -72,6 +73,7 @@ import com.googlecode.wicket.jquery.ui.w
 
 public class MessagesContactsPanel extends UserPanel {
        private static final long serialVersionUID = 8098087441571734957L;
+       private final static long MOVE_CHOOSE = -1;
        private final static int SELECT_CHOOSE = 1252;
        private final static int SELECT_ALL = 1239;
        private final static int SELECT_NONE = 1240;
@@ -115,6 +117,24 @@ public class MessagesContactsPanel exten
                                return "" + object;
                        }
                });
+       private static PrivateMessageFolder NOT_MOVE_FOLDER = new 
PrivateMessageFolder();
+       static {
+               NOT_MOVE_FOLDER.setPrivateMessageFolderId(MOVE_CHOOSE);
+               NOT_MOVE_FOLDER.setFolderName(WebSession.getString(1243));
+       }
+       private final DropDownChoice<PrivateMessageFolder> moveDropDown = new 
DropDownChoice<PrivateMessageFolder>("msgMove", Model.of(NOT_MOVE_FOLDER)
+               , Arrays.asList(NOT_MOVE_FOLDER)
+               , new IChoiceRenderer<PrivateMessageFolder>() {
+                       private static final long serialVersionUID = 1L;
+
+                       public Object getDisplayValue(PrivateMessageFolder 
object) {
+                               return object.getFolderName();
+                       }
+
+                       public String getIdValue(PrivateMessageFolder object, 
int index) {
+                               return "" + object.getPrivateMessageFolderId();
+                       }
+               });
        
        private void setDefaultFolderClass() {
                inbox.add(AttributeAppender.replace("class", "email inbox 
clickable"));
@@ -191,10 +211,18 @@ public class MessagesContactsPanel exten
                                .toString();
        }
        
+       private void updateMoveModel() {
+               List<PrivateMessageFolder> list = new 
ArrayList<PrivateMessageFolder>();
+               list.add(NOT_MOVE_FOLDER);
+               list.addAll(foldersModel.getObject());
+               moveDropDown.setChoices(list);
+       }
+       
        @SuppressWarnings("unchecked")
        public MessagesContactsPanel(String id) {
                super(id);
                foldersModel = 
Model.ofList(getBean(PrivateMessageFolderDao.class).get(0, Integer.MAX_VALUE));
+               updateMoveModel();
                newMessage = new MessageDialog("newMessage", new 
CompoundPropertyModel<PrivateMessage>(new PrivateMessage())) {
                        private static final long serialVersionUID = 1L;
 
@@ -215,6 +243,7 @@ public class MessagesContactsPanel exten
                                PrivateMessageFolderDao fDao = 
getBean(PrivateMessageFolderDao.class);
                                fDao.addPrivateMessageFolder(getModelObject(), 
getUserId());
                                foldersModel.setObject(fDao.get(0, 
Integer.MAX_VALUE));
+                               updateMoveModel();
                                target.add(folders);
                        }
                };
@@ -403,7 +432,15 @@ public class MessagesContactsPanel exten
                add(new WebMarkupContainer("na1"));//FIXME
                
                add(buttons.setOutputMarkupId(true));
-               buttons.add(toInboxBtn);
+               buttons.add(toInboxBtn.add(new AjaxEventBehavior("click") {
+                       private static final long serialVersionUID = 1L;
+                       
+                       @Override
+                       protected void onEvent(AjaxRequestTarget target) {
+                               //TODO weird, need to be reviewed
+                               
getBean(PrivateMessagesDao.class).updatePrivateMessagesToTrash(selectedMessages,
 false, 0L);
+                       }
+               }));
                buttons.add(deleteBtn.add(new AjaxEventBehavior("click") {
                                private static final long serialVersionUID = 1L;
        
@@ -465,6 +502,14 @@ public class MessagesContactsPanel exten
                                target.add(container);
                        }
                }));
+               buttons.add(moveDropDown.setOutputMarkupId(true).add(new 
OnChangeAjaxBehavior() {
+                       private static final long serialVersionUID = 1L;
+
+                       @Override
+                       protected void onUpdate(AjaxRequestTarget target) {
+                               
+                       }
+               }));
                
                selectMessage(-1, null);
                add(container.add(dv).setOutputMarkupId(true));


Reply via email to