Author: solomax
Date: Fri Apr 26 13:38:47 2013
New Revision: 1476189

URL: http://svn.apache.org/r1476189
Log:
[OPENMEETINGS-615]: Panel to view user profile is added;
        Minor issues are fixed;
        Edit self profile should work as expected;
        Top links are filled with data;

Added:
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserProfilePanel.html
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserProfilePanel.java
Modified:
    openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/app/WebSession.java
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/GeneralUserForm.java
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UserForm.java
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/dashboard/WelcomeWidgetView.java
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/ProfilePanel.java
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/SettingsPanel.java
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserForm.java
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/MainPage.html
    
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/MainPage.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=1476189&r1=1476188&r2=1476189&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css 
(original)
+++ openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css Fri 
Apr 26 13:38:47 2013
@@ -16,6 +16,9 @@
  * specific language governing permissions and limitations
  * under the License.
  */
+#header {
+       
+}
 #topLinks {
        position: absolute;
        top: 10px;

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/app/WebSession.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/app/WebSession.java?rev=1476189&r1=1476188&r2=1476189&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/app/WebSession.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/app/WebSession.java
 Fri Apr 26 13:38:47 2013
@@ -78,9 +78,6 @@ public class WebSession extends Abstract
                        userLevel = 
getBean(UserManager.class).getUserLevelByID(userId);
                        AuthLevelUtil authLevel = getBean(AuthLevelUtil.class);
                        r = new Roles(Roles.USER);
-                       if (authLevel.checkUserLevel(userLevel)) {
-                               r.add(Roles.USER);
-                       }
                        if (authLevel.checkAdminLevel(userLevel)) {
                                r.add(Roles.ADMIN);
                        }

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/GeneralUserForm.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/GeneralUserForm.java?rev=1476189&r1=1476188&r2=1476189&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/GeneralUserForm.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/GeneralUserForm.java
 Fri Apr 26 13:38:47 2013
@@ -52,6 +52,7 @@ import org.apache.wicket.markup.html.for
 import org.apache.wicket.markup.html.panel.IMarkupSourcingStrategy;
 import org.apache.wicket.markup.html.panel.PanelMarkupSourcingStrategy;
 import org.apache.wicket.model.IModel;
+import org.apache.wicket.model.Model;
 import org.apache.wicket.model.PropertyModel;
 import org.apache.wicket.validation.validator.EmailAddressValidator;
 
@@ -61,10 +62,11 @@ public class GeneralUserForm extends For
        private FieldLanguage lang;
        private PasswordTextField passwordField;
 
-       public GeneralUserForm(String id, IModel<User> model) {
+       public GeneralUserForm(String id, IModel<User> model, boolean 
isAdminForm) {
                super(id, model);
 
-               add(passwordField = new PasswordTextField("password"));
+               //TODO should throw exception if non admin User edit somebody 
else (or make all fields read-only)
+               add(passwordField = new PasswordTextField("password", new 
Model<String>()));
                passwordField.setRequired(false);
 
                SalutationDao salutDao = getBean(SalutationDao.class);
@@ -126,15 +128,20 @@ public class GeneralUserForm extends For
                                , new ChoiceRenderer<State>("name", 
"state_id")));
                add(new TextArea<String>("adresses.comment"));
 
-               List<Organisation> orgList = 
getBean(OrganisationManager.class).getOrganisations(3L);
-               List<Organisation_Users> orgUsers = new 
ArrayList<Organisation_Users>(orgList.size());
-               for (Organisation org : orgList) {
-                       orgUsers.add(new Organisation_Users(org));
+               List<Organisation_Users> orgUsers;
+               if (isAdminForm) {
+                       List<Organisation> orgList = 
getBean(OrganisationManager.class).getOrganisations(3L);
+                       orgUsers = new 
ArrayList<Organisation_Users>(orgList.size());
+                       for (Organisation org : orgList) {
+                               orgUsers.add(new Organisation_Users(org));
+                       }
+               } else {
+                       orgUsers = getModelObject().getOrganisation_users();
                }
                ListMultipleChoice<Organisation_Users> orgChoiceList = new 
ListMultipleChoice<Organisation_Users>(
                                "organisation_users", orgUsers,
                                new 
ChoiceRenderer<Organisation_Users>("organisation.name", 
"organisation.organisation_id"));
-               add(orgChoiceList);
+               add(orgChoiceList.setEnabled(isAdminForm));
        }
        
        public PasswordTextField getPasswordField() {

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UserForm.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UserForm.java?rev=1476189&r1=1476188&r2=1476189&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UserForm.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UserForm.java
 Fri Apr 26 13:38:47 2013
@@ -133,7 +133,7 @@ public class UserForm extends AdminBaseF
                // login.setLabel(new Model<String>("testname"));
                add(login);
 
-               add(generalForm = new GeneralUserForm("general", getModel()));
+               add(generalForm = new GeneralUserForm("general", getModel(), 
true));
 
                add(DateLabel.forDatePattern("starttime", "dd.MM.yyyy 
HH:mm:ss"));
                add(DateLabel.forDatePattern("updatetime", "dd.MM.yyyy 
HH:mm:ss"));

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/dashboard/WelcomeWidgetView.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/dashboard/WelcomeWidgetView.java?rev=1476189&r1=1476188&r2=1476189&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/dashboard/WelcomeWidgetView.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/dashboard/WelcomeWidgetView.java
 Fri Apr 26 13:38:47 2013
@@ -19,6 +19,8 @@
 package org.apache.openmeetings.web.components.user.dashboard;
 
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
+import static 
org.apache.openmeetings.web.components.user.profile.SettingsPanel.EDIT_PROFILE_TAB_ID;
+import static 
org.apache.openmeetings.web.components.user.profile.SettingsPanel.MESSAGES_TAB_ID;
 
 import org.apache.openmeetings.data.user.dao.PrivateMessagesDao;
 import org.apache.openmeetings.data.user.dao.UsersDao;
@@ -52,8 +54,7 @@ public class WelcomeWidgetView extends W
 
                        @Override
                        public void onClick(AjaxRequestTarget target) {
-                               //FIXME active id !!!!!
-                               
target.add(((MainPage)getPage()).getContents().replace(new 
SettingsPanel("child")));
+                               
target.add(((MainPage)getPage()).getContents().replace(new 
SettingsPanel("child", MESSAGES_TAB_ID)));
                        }
                }.add(new Label("unread", Model.of("" + 
Application.getBean(PrivateMessagesDao.class)
                                .getNumberMessages(getUserId(), 0L, false)))));
@@ -62,8 +63,7 @@ public class WelcomeWidgetView extends W
 
                        @Override
                        public void onClick(AjaxRequestTarget target) {
-                               //FIXME active id !!!!!
-                               
target.add(((MainPage)getPage()).getContents().replace(new 
SettingsPanel("child")));
+                               
target.add(((MainPage)getPage()).getContents().replace(new 
SettingsPanel("child", EDIT_PROFILE_TAB_ID)));
                        }
                });
        }

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/ProfilePanel.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/ProfilePanel.java?rev=1476189&r1=1476188&r2=1476189&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/ProfilePanel.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/ProfilePanel.java
 Fri Apr 26 13:38:47 2013
@@ -21,8 +21,10 @@ package org.apache.openmeetings.web.comp
 import static org.apache.openmeetings.web.app.Application.getBean;
 import static org.apache.openmeetings.web.app.WebSession.getUserId;
 
+import org.apache.openmeetings.data.basic.dao.ConfigurationDao;
 import org.apache.openmeetings.data.user.dao.UsersDao;
 import org.apache.openmeetings.persistence.beans.user.User;
+import org.apache.openmeetings.utils.crypt.ManageCryptStyle;
 import org.apache.openmeetings.web.components.ComunityUserForm;
 import org.apache.openmeetings.web.components.FormSaveRefreshPanel;
 import org.apache.openmeetings.web.components.UploadableProfileImagePanel;
@@ -38,9 +40,11 @@ public class ProfilePanel extends UserPa
 
        public ProfilePanel(String id) {
                super(id);
+               setOutputMarkupId(true);
                
                Form<User> form = new Form<User>("form", new 
CompoundPropertyModel<User>(getBean(UsersDao.class).get(getUserId()))) {
                        private static final long serialVersionUID = 
-4968428244553170528L;
+                       private final UserForm userForm;
 
                        {
                                add(new FormSaveRefreshPanel<User>("buttons", 
this) {
@@ -48,29 +52,43 @@ public class ProfilePanel extends UserPa
 
                                        @Override
                                        protected void 
onSaveSubmit(AjaxRequestTarget target, Form<?> form) {
-                                               // TODO Auto-generated method 
stub
-                                               
+                                               User u = getModelObject();
+                                               try {
+                                                       String pass = 
userForm.getPasswordField().getConvertedInput();
+                                                       if (pass != null && 
!pass.isEmpty()) {
+                                                               
u.updatePassword(getBean(ManageCryptStyle.class), 
getBean(ConfigurationDao.class), pass);
+                                                       }
+                                                       
getBean(UsersDao.class).update(u, getUserId());
+                                               } catch (Exception e) {
+                                                       // FIXME update 
feedback with the error details
+                                               }
+                                               setModelObject(u);
+                                               target.add(ProfilePanel.this);
                                        }
 
                                        @Override
                                        protected void 
onSaveError(AjaxRequestTarget target, Form<?> form) {
-                                               // TODO Auto-generated method 
stub
-                                               
+                                               // FIXME update feedback with 
the error details
                                        }
 
                                        @Override
                                        protected void 
onRefreshSubmit(AjaxRequestTarget target, Form<?> form) {
-                                               // TODO Auto-generated method 
stub
-                                               
+                                               User user = getModelObject();
+                                               if (user.getUser_id() != null) {
+                                                       user = 
getBean(UsersDao.class).get(user.getUser_id());
+                                               } else {
+                                                       user = new User();
+                                               }
+                                               setModelObject(user);
+                                               target.add(ProfilePanel.this);
                                        }
 
                                        @Override
                                        protected void 
onRefreshError(AjaxRequestTarget target, Form<?> form) {
-                                               // TODO Auto-generated method 
stub
-                                               
+                                               // FIXME update feedback with 
the error details
                                        }
                                });
-                               add(new UserForm("general", getModel()));
+                               add(userForm = new UserForm("general", 
getModel()));
                                add(new UploadableProfileImagePanel("img", 
getUserId()));
                                add(new ComunityUserForm("comunity", 
getModel()));
                                

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/SettingsPanel.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/SettingsPanel.java?rev=1476189&r1=1476188&r2=1476189&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/SettingsPanel.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/SettingsPanel.java
 Fri Apr 26 13:38:47 2013
@@ -18,6 +18,8 @@
  */
 package org.apache.openmeetings.web.components.user.profile;
 
+import static org.apache.openmeetings.web.app.WebSession.getUserId;
+
 import org.apache.openmeetings.web.app.WebSession;
 import org.apache.openmeetings.web.components.UserPanel;
 import org.apache.wicket.AttributeModifier;
@@ -28,12 +30,20 @@ import org.apache.wicket.markup.repeater
 import org.apache.wicket.model.Model;
 
 import com.googlecode.wicket.jquery.core.JQueryBehavior;
+import com.googlecode.wicket.jquery.core.Options;
 
 public class SettingsPanel extends UserPanel {
        private static final long serialVersionUID = -830146821166434373L;
-       public static final String DASHBOARD_TAB_ID = "tab1";
-       public static final String PROFILE_TAB_ID = "tab2";
+       public static final int PROFILE_TAB_ID = 0;
+       public static final int MESSAGES_TAB_ID = 1;
+       public static final int EDIT_PROFILE_TAB_ID = 2;
+       public static final int SEARCH_TAB_ID = 1;
+       public static final int DASHBOARD_TAB_ID = 4;
 
+       private String getTabId(int idx) {
+               return "tab" + idx;
+       }
+       
        private void addTab(RepeatingView tabs, String name, String id) {
                WebMarkupContainer tab = new 
WebMarkupContainer(tabs.newChildId());
                tab.add(new WebMarkupContainer("link")
@@ -48,17 +58,19 @@ public class SettingsPanel extends UserP
                panels.add(tab);
        }
        
-       public SettingsPanel(String id) {
+       public SettingsPanel(String id, int active) {
                super(id);
                RepeatingView tabs = new RepeatingView("tabs");
-               addTab(tabs, WebSession.getString(1170), PROFILE_TAB_ID);
-               addTab(tabs, "[Widgets]", DASHBOARD_TAB_ID); //FIXME localize
+               addTab(tabs, WebSession.getString(1170), 
getTabId(PROFILE_TAB_ID));
+               addTab(tabs, WebSession.getString(1171), 
getTabId(EDIT_PROFILE_TAB_ID));
+               addTab(tabs, "[Widgets]", getTabId(DASHBOARD_TAB_ID)); //FIXME 
localize
                
                RepeatingView panels = new RepeatingView("panels");
-               addPanel(panels, PROFILE_TAB_ID, new ProfilePanel("tab"));
-               addPanel(panels, DASHBOARD_TAB_ID, new WidgetsPanel("tab"));
+               addPanel(panels, getTabId(PROFILE_TAB_ID), new 
UserProfilePanel("tab", getUserId()));
+               addPanel(panels, getTabId(EDIT_PROFILE_TAB_ID), new 
ProfilePanel("tab"));
+               addPanel(panels, getTabId(DASHBOARD_TAB_ID), new 
WidgetsPanel("tab"));
                
-               add(new JQueryBehavior("#tabs", "tabs"/*, new Options("active", 
1)*/));
+               add(new JQueryBehavior("#tabs", "tabs", new Options("active", 
active)));
                add(tabs, panels);
        }
 }

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserForm.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserForm.java?rev=1476189&r1=1476188&r2=1476189&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserForm.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserForm.java
 Fri Apr 26 13:38:47 2013
@@ -30,7 +30,7 @@ public class UserForm extends GeneralUse
        private final PasswordTextField confirmPassword;
        
        public UserForm(String id, IModel<User> model) {
-               super(id, model);
+               super(id, model, false);
                add(confirmPassword = new PasswordTextField("confirmPassword", 
new Model<String>()));
                confirmPassword.setRequired(false);
        }

Added: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserProfilePanel.html
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserProfilePanel.html?rev=1476189&view=auto
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserProfilePanel.html
 (added)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserProfilePanel.html
 Fri Apr 26 13:38:47 2013
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you under the Apache License, Version 2.0 (the
+  "License"); you may not use this file except in compliance
+  with the License.  You may obtain a copy of the License at
+  
+      http://www.apache.org/licenses/LICENSE-2.0
+         
+  Unless required by applicable law or agreed to in writing,
+  software distributed under the License is distributed on an
+  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  KIND, either express or implied.  See the License for the
+  specific language governing permissions and limitations
+  under the License.
+  
+-->
+<html xmlns:wicket="http://wicket.apache.org";>
+<wicket:panel>
+       <table>
+               <tr>
+                       <td><div wicket:id="img"></div></td>
+                       <td>
+                               <wicket:ommessage key="1164"/>&nbsp;<span 
wicket:id="firstname"></span>&nbsp;<span wicket:id="lastname"></span><br/>
+                               <wicket:ommessage key="1165"/>&nbsp;<span 
wicket:id="tz"></span>&nbsp;<span wicket:id="tzname"></span><br/>
+                               <wicket:ommessage key="1296"/>&nbsp;<span 
wicket:id="created"></span>
+                       </td>
+               </tr>
+               <tr>
+                       <td colspan="2">
+                               <b><wicket:ommessage key="1166"/></b><br/>
+                               <wicket:ommessage key="1162"/><textarea 
wicket:id="offer"></textarea><br/>
+                               <wicket:ommessage key="1163"/><textarea 
wicket:id="interest"></textarea><br/>
+                               <b><wicket:ommessage key="1167"/></b><br/>
+                               <wicket:ommessage key="1270"/>&nbsp;<div 
wicket:id="address"></div>
+                       </td>
+               </tr>
+       </table>
+</wicket:panel>
+</html>

Added: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserProfilePanel.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserProfilePanel.java?rev=1476189&view=auto
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserProfilePanel.java
 (added)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/user/profile/UserProfilePanel.java
 Fri Apr 26 13:38:47 2013
@@ -0,0 +1,63 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") +  you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings.web.components.user.profile;
+
+import static org.apache.openmeetings.web.app.Application.getBean;
+import static org.apache.openmeetings.web.app.WebSession.getUserId;
+
+import org.apache.openmeetings.data.user.dao.UsersDao;
+import org.apache.openmeetings.persistence.beans.user.User;
+import org.apache.openmeetings.web.app.WebSession;
+import org.apache.openmeetings.web.components.ProfileImagePanel;
+import org.apache.openmeetings.web.components.UserPanel;
+import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.markup.html.form.TextArea;
+import org.apache.wicket.model.Model;
+
+public class UserProfilePanel extends UserPanel {
+       private static final long serialVersionUID = 137157820964246251L;
+
+       private String getAddress(User u) {
+               String result = "";
+               if (getUserId() == u.getUser_id() || u.getShowContactData()) {
+                       //FIXME, more details should be added
+                       result = u.getAdresses().getStreet();
+               } else if (u.getShowContactDataToContacts()) {
+                       result = WebSession.getString(1269);
+               } else {
+                       result = WebSession.getString(1268);
+               }
+               return result;
+       }
+       
+       public UserProfilePanel(String id, long userId) {
+               super(id);
+
+               User u = getBean(UsersDao.class).get(userId);
+               add(new ProfileImagePanel("img", userId));
+               add(new Label("firstname", u.getFirstname()));
+               add(new Label("lastname", u.getLastname()));
+               add(new Label("tz", u.getOmTimeZone().getJname()));
+               add(new Label("tzname", u.getOmTimeZone().getIcal()));
+               add(new Label("created", u.getRegdate()));
+               add(new TextArea<String>("offer", Model.of(u.getUserOffers())));
+               add(new TextArea<String>("interest", 
Model.of(u.getUserSearchs())));
+               add(new Label("address", getAddress(u)));
+       }
+}

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/MainPage.html
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/MainPage.html?rev=1476189&r1=1476188&r2=1476189&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/MainPage.html
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/MainPage.html
 Fri Apr 26 13:38:47 2013
@@ -42,10 +42,10 @@
                        });
                </script>
                <div id="topLinks"><span 
-                       id="contactsAndMessages"><wicket:ommessage 
key="1188"/></span><span 
+                       id="contactsAndMessages"><a 
wicket:id="messages"><wicket:ommessage key="1188"/></a></span><span 
                        id="profile"><a wicket:id="profile"><wicket:ommessage 
key="5"/></a></span><span 
                        id="logout"><a wicket:id="logout"><wicket:ommessage 
key="310"/></a></span><span 
-                       id="reportBug"><wicket:ommessage 
key="284"/></span><span><a 
+                       id="reportBug"><a target="_blank" 
wicket:id="bug"><wicket:ommessage key="284"/></a></span><span><a 
                        wicket:id="about">About</a></span></div>
                <div id="busy_indicator">Loading ...</div>
                <div wicket:id="menu"></div>

Modified: 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/MainPage.java
URL: 
http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/MainPage.java?rev=1476189&r1=1476188&r2=1476189&view=diff
==============================================================================
--- 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/MainPage.java
 (original)
+++ 
openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/pages/MainPage.java
 Fri Apr 26 13:38:47 2013
@@ -18,6 +18,9 @@
  */
 package org.apache.openmeetings.web.pages;
 
+import static 
org.apache.openmeetings.web.components.user.profile.SettingsPanel.MESSAGES_TAB_ID;
+import static 
org.apache.openmeetings.web.components.user.profile.SettingsPanel.PROFILE_TAB_ID;
+
 import org.apache.openmeetings.OpenmeetingsVariables;
 import org.apache.openmeetings.web.app.Application;
 import org.apache.openmeetings.web.components.ConfirmableAjaxLink;
@@ -31,6 +34,7 @@ import org.apache.wicket.ajax.AjaxReques
 import org.apache.wicket.ajax.markup.html.AjaxLink;
 import 
org.apache.wicket.authroles.authorization.strategies.role.annotations.AuthorizeInstantiation;
 import org.apache.wicket.markup.html.WebMarkupContainer;
+import org.apache.wicket.markup.html.link.ExternalLink;
 import org.apache.wicket.protocol.ws.api.WebSocketBehavior;
 import org.apache.wicket.protocol.ws.api.message.ClosedMessage;
 import org.apache.wicket.protocol.ws.api.message.ConnectedMessage;
@@ -51,6 +55,14 @@ public class MainPage extends BasePage {
                add(contents);
                menu = new MenuPanel("menu", contents);
                add(menu);
+               add(new AjaxLink<Void>("messages") {
+                       private static final long serialVersionUID = 
4065339709905366840L;
+
+                       @Override
+                       public void onClick(AjaxRequestTarget target) {
+                               target.add(contents.replace(new 
SettingsPanel("child", MESSAGES_TAB_ID)));
+                       }
+               });
                add(new ConfirmableAjaxLink("logout", 634L) {
                        private static final long serialVersionUID = 
-2994610981053570537L;
 
@@ -65,7 +77,7 @@ public class MainPage extends BasePage {
 
                        @Override
                        public void onClick(AjaxRequestTarget target) {
-                               target.add(contents.replace(new 
SettingsPanel("child")));
+                               target.add(contents.replace(new 
SettingsPanel("child", PROFILE_TAB_ID)));
                        }
                });
                final AboutDialog about = new AboutDialog("aboutDialog");
@@ -78,6 +90,8 @@ public class MainPage extends BasePage {
                        }
                });
                add(about);
+               add(new ExternalLink("bug", 
"https://issues.apache.org/jira/browse/OPENMEETINGS";));//FIXME hardcoded
+               
                add(new ChatPanel("chatPanel"));
                add(new WebSocketBehavior() {
                        private static final long serialVersionUID = 
-3311970325911992958L;


Reply via email to