Author: solomax
Date: Fri Sep 21 11:31:10 2012
New Revision: 1388435
URL: http://svn.apache.org/viewvc?rev=1388435&view=rev
Log:
Wicket: Basic functionality of group view is partially implemented
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/OrganisationDAO.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/OrganisationUserDAO.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupUsersPanel.html
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupUsersPanel.java
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/Organisationmanagement.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/domain/Organisation.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/domain/Organisation_Users.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupForm.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.html
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UsersPanel.java
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml?rev=1388435&r1=1388434&r2=1388435&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
(original)
+++
incubator/openmeetings/trunk/singlewebapp/WebContent/WEB-INF/openmeetings-applicationContext.xml
Fri Sep 21 11:31:10 2012
@@ -179,6 +179,8 @@
class="org.apache.openmeetings.data.calendar.daos.AppointmentCategoryDaoImpl" />
<bean id="roommanagement"
class="org.apache.openmeetings.data.conference.Roommanagement" />
<bean id="organisationmanagement"
class="org.apache.openmeetings.data.user.Organisationmanagement" />
+ <bean id="organisationDAO"
class="org.apache.openmeetings.data.user.OrganisationDAO" />
+ <bean id="organisationUserDAO"
class="org.apache.openmeetings.data.user.OrganisationUserDAO" />
<bean id="salutationmanagement"
class="org.apache.openmeetings.data.user.Salutationmanagement" />
<bean id="errorManagement"
class="org.apache.openmeetings.data.basic.ErrorManagement" />
<bean id="navimanagement"
class="org.apache.openmeetings.data.basic.Navimanagement" />
Modified:
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css?rev=1388435&r1=1388434&r2=1388435&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css
(original)
+++
incubator/openmeetings/trunk/singlewebapp/WebContent/openmeetings/css/theme.css
Fri Sep 21 11:31:10 2012
@@ -226,5 +226,5 @@ div.tableWrapper {
}
.adminForm select {
- width: 200px;
+ max-width: 200px;
}
\ No newline at end of file
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/OrganisationDAO.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/OrganisationDAO.java?rev=1388435&view=auto
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/OrganisationDAO.java
(added)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/OrganisationDAO.java
Fri Sep 21 11:31:10 2012
@@ -0,0 +1,71 @@
+/*
+ * 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.data.user;
+
+import java.util.List;
+
+import javax.persistence.EntityManager;
+import javax.persistence.NoResultException;
+import javax.persistence.PersistenceContext;
+import javax.persistence.TypedQuery;
+
+import org.apache.openmeetings.data.OmDAO;
+import org.apache.openmeetings.persistence.beans.domain.Organisation;
+import org.springframework.transaction.annotation.Transactional;
+
+@Transactional
+public class OrganisationDAO implements OmDAO<Organisation> {
+ @PersistenceContext
+ private EntityManager em;
+
+ public Organisation get(long id) {
+ TypedQuery<Organisation> query =
em.createNamedQuery("getOrganisationById", Organisation.class);
+ query.setParameter("organisation_id", id);
+ query.setParameter("deleted", false);
+ Organisation o = null;
+ try {
+ o = query.getSingleResult();
+ } catch (NoResultException e) {
+ // o = null;
+ }
+ return o;
+ }
+
+ public List<Organisation> get(int start, int count) {
+ TypedQuery<Organisation> q =
em.createNamedQuery("getNondeletedOrganisations", Organisation.class);
+ q.setFirstResult(start);
+ q.setMaxResults(count);
+ return q.getResultList();
+ }
+
+ public long count() {
+ TypedQuery<Long> q = em.createNamedQuery("countOrganisations",
Long.class);
+ return q.getSingleResult();
+ }
+
+ public void update(Organisation entity) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void delete(Organisation entity) {
+ // TODO Auto-generated method stub
+
+ }
+}
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/OrganisationUserDAO.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/OrganisationUserDAO.java?rev=1388435&view=auto
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/OrganisationUserDAO.java
(added)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/OrganisationUserDAO.java
Fri Sep 21 11:31:10 2012
@@ -0,0 +1,72 @@
+/*
+ * 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.data.user;
+
+import java.util.List;
+
+import javax.persistence.EntityManager;
+import javax.persistence.PersistenceContext;
+import javax.persistence.TypedQuery;
+
+import org.apache.openmeetings.data.OmDAO;
+import org.apache.openmeetings.persistence.beans.domain.Organisation_Users;
+
+public class OrganisationUserDAO implements OmDAO<Organisation_Users> {
+ @PersistenceContext
+ private EntityManager em;
+
+ public Organisation_Users get(long id) {
+ TypedQuery<Organisation_Users> q =
em.createNamedQuery("getOrganisationUsersById", Organisation_Users.class);
+ q.setParameter("id", id);
+ return q.getSingleResult();
+ }
+
+ public List<Organisation_Users> get(int start, int count) {
+ throw new RuntimeException("Should not be used");
+ }
+
+ public List<Organisation_Users> get(long orgId, int start, int count) {
+ TypedQuery<Organisation_Users> q =
em.createNamedQuery("getOrganisationUsersByOrgId", Organisation_Users.class);
+ q.setParameter("id", orgId);
+ q.setFirstResult(start);
+ q.setMaxResults(count);
+ return q.getResultList();
+ }
+
+ public long count() {
+ throw new RuntimeException("Should not be used");
+ }
+
+ public long count(long orgId) {
+ TypedQuery<Long> q =
em.createNamedQuery("countOrganisationUsers", Long.class);
+ q.setParameter("id", orgId);
+ return q.getSingleResult();
+ }
+
+ public void update(Organisation_Users entity) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void delete(Organisation_Users entity) {
+ // TODO Auto-generated method stub
+
+ }
+
+}
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/Organisationmanagement.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/Organisationmanagement.java?rev=1388435&r1=1388434&r2=1388435&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/Organisationmanagement.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/user/Organisationmanagement.java
Fri Sep 21 11:31:10 2012
@@ -64,6 +64,8 @@ public class Organisationmanagement {
@Autowired
private UsersDaoImpl usersDao;
@Autowired
+ private OrganisationDAO orgDao;
+ @Autowired
private AuthLevelmanagement authLevelManagement;
/**
@@ -371,16 +373,7 @@ public class Organisationmanagement {
*/
public Organisation getOrganisationById(long organisation_id) {
try {
- TypedQuery<Organisation> query =
em.createNamedQuery("getOrganisationById", Organisation.class);
- query.setParameter("organisation_id", organisation_id);
- query.setParameter("deleted", true);
- Organisation o = null;
- try {
- o = query.getSingleResult();
- } catch (NoResultException e) {
- // o = null;
- }
- return o;
+ return orgDao.get(organisation_id);
} catch (Exception ex2) {
log.error("[getOrganisationById]", ex2);
}
@@ -823,12 +816,4 @@ public class Organisationmanagement {
}
return null;
}
-
- public List<Organisation> getNondeletedOrganisation(int first, int
count) {
- TypedQuery<Organisation> q =
em.createNamedQuery("getNondeletedOrganisations", Organisation.class);
- q.setFirstResult(first);
- q.setMaxResults(count);
- return q.getResultList();
- }
-
}
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/domain/Organisation.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/domain/Organisation.java?rev=1388435&r1=1388434&r2=1388435&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/domain/Organisation.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/domain/Organisation.java
Fri Sep 21 11:31:10 2012
@@ -37,12 +37,13 @@ import org.simpleframework.xml.Root;
@Entity
@NamedQueries({
@NamedQuery(name="getOrganisationById",
- query="SELECT c FROM Organisation AS c WHERE c.organisation_id
= :organisation_id AND c.deleted <> :deleted")
+ query="SELECT c FROM Organisation AS c WHERE c.organisation_id
= :organisation_id AND c.deleted = :deleted")
, @NamedQuery(name="getAnyOrganisationById",
query="SELECT c FROM Organisation AS c WHERE c.organisation_id
= :organisation_id")
, @NamedQuery(name="getOrganisationsByUserId",
query="SELECT ou.organisation FROM Users u,
IN(u.organisation_users) ou WHERE u.deleted = false AND u.user_id = :user_id")
, @NamedQuery(name="getNondeletedOrganisations", query="SELECT u FROM
Organisation u WHERE u.deleted = false")
+ , @NamedQuery(name="countOrganisations", query="SELECT COUNT(c) FROM
Organisation AS c WHERE c.deleted = false")
})
@Table(name = "organisation")
@Root(name="organisation")
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/domain/Organisation_Users.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/domain/Organisation_Users.java?rev=1388435&r1=1388434&r2=1388435&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/domain/Organisation_Users.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/domain/Organisation_Users.java
Fri Sep 21 11:31:10 2012
@@ -33,6 +33,7 @@ import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
+import org.apache.openmeetings.persistence.beans.OmEntity;
import org.simpleframework.xml.Element;
import org.simpleframework.xml.Root;
@@ -44,10 +45,13 @@ import org.simpleframework.xml.Root;
query="SELECT ou FROM Users u, IN(u.organisation_users) ou
WHERE u.deleted = false AND u.user_id = :user_id AND
ou.organisation.organisation_id = :organisation_id")
, @NamedQuery(name="deleteUsersFromOrganisation",
query="DELETE FROM Organisation_Users c WHERE
c.organisation.organisation_id = :organisation_id")
+ , @NamedQuery(name="countOrganisationUsers", query="SELECT COUNT(c)
FROM Organisation_Users c WHERE c.organisation.organisation_id = :id AND
c.deleted = false")
+ , @NamedQuery(name="getOrganisationUsersById", query="SELECT c FROM
Organisation_Users c WHERE c.organisation_users_id = :id")
+ , @NamedQuery(name="getOrganisationUsersByOrgId", query="SELECT c FROM
Organisation_Users c WHERE c.organisation.organisation_id = :id AND c.deleted =
false")
})
@Table(name = "organisation_users")
@Root(name="user_organisation")
-public class Organisation_Users implements Serializable {
+public class Organisation_Users implements Serializable, OmEntity {
private static final long serialVersionUID = 7206870465903375817L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupForm.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupForm.java?rev=1388435&r1=1388434&r2=1388435&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupForm.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupForm.java
Fri Sep 21 11:31:10 2012
@@ -18,17 +18,54 @@
*/
package org.apache.openmeetings.web.components.admin.groups;
+import org.apache.openmeetings.data.user.OrganisationDAO;
import org.apache.openmeetings.persistence.beans.domain.Organisation;
+import org.apache.openmeetings.web.app.Application;
import org.apache.openmeetings.web.components.admin.AdminBaseForm;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.markup.html.form.Form;
+import org.apache.wicket.markup.html.form.RequiredTextField;
import org.apache.wicket.model.CompoundPropertyModel;
public class GroupForm extends AdminBaseForm<Organisation> {
-
- private static final long serialVersionUID = 1L;
-
+ private static final long serialVersionUID = -1720731686053912700L;
+ private GroupUsersPanel listContainer;
+
public GroupForm(String id, final Organisation organisation) {
super(id, new
CompoundPropertyModel<Organisation>(organisation));
setOutputMarkupId(true);
+ add(new RequiredTextField<String>("name"));
+ listContainer = new GroupUsersPanel("users", getOrgId());
+ add(listContainer);
+ }
+
+ void updateView(AjaxRequestTarget target) {
+ listContainer.update(getOrgId());
+ target.add(listContainer);
+ }
+
+ private long getOrgId() {
+ return getModelObject().getOrganisation_id() != null ?
getModelObject().getOrganisation_id() : 0;
+ }
+
+ @Override
+ protected void onNewSubmit(AjaxRequestTarget target, Form<?> f) {
+ this.setModelObject(new Organisation());
+ target.add(this);
+ }
+
+ @Override
+ protected void onRefreshSubmit(AjaxRequestTarget target, Form<?> form) {
+ Organisation org = getModelObject();
+ if (org.getOrganisation_id() != null) {
+ org =
Application.getBean(OrganisationDAO.class).get(org.getOrganisation_id());
+ } else {
+ org = new Organisation();
+ }
+ this.setModelObject(org);
+ listContainer.update(getOrgId());
+ target.add(this);
}
+
}
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupUsersPanel.html
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupUsersPanel.html?rev=1388435&view=auto
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupUsersPanel.html
(added)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupUsersPanel.html
Fri Sep 21 11:31:10 2012
@@ -0,0 +1,38 @@
+<?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="http://www.w3.org/1999/xhtml"
+
xmlns:wicket="http://wicket.apache.org/dtds.data/wicket-xhtml1.5-strict.dtd"
lang="en">
+ <wicket:panel>
+ <div style="border: 1px solid black;">
+ <span wicket:id="navigator">[dataview navigator]</span>
+ <table class="adminListTable">
+ <tr>
+ <th><wicket:ommessage key="177" /></th>
+ <th><wicket:ommessage key="275" /></th>
+ </tr>
+ <tr wicket:id="userList">
+ <td><span wicket:id="label"></span></td>
+ <td>Delete</td>
+ </tr>
+ </table>
+ </div>
+ </wicket:panel>
+</html>
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupUsersPanel.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupUsersPanel.java?rev=1388435&view=auto
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupUsersPanel.java
(added)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupUsersPanel.java
Fri Sep 21 11:31:10 2012
@@ -0,0 +1,80 @@
+/*
+ * 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.admin.groups;
+
+import org.apache.openmeetings.data.user.OrganisationUserDAO;
+import org.apache.openmeetings.data.user.dao.UsersDaoImpl;
+import org.apache.openmeetings.persistence.beans.domain.Organisation_Users;
+import org.apache.openmeetings.persistence.beans.user.Users;
+import org.apache.openmeetings.web.app.Application;
+import org.apache.openmeetings.web.components.admin.PagedEntityListPanel;
+import org.apache.openmeetings.web.data.OmDataProvider;
+import org.apache.wicket.AttributeModifier;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.markup.html.panel.Panel;
+import org.apache.wicket.markup.repeater.Item;
+import org.apache.wicket.markup.repeater.data.DataView;
+import org.apache.wicket.model.Model;
+
+public class GroupUsersPanel extends Panel {
+ private static final long serialVersionUID = -1813488722913433227L;
+ private long organisationId;
+
+ public GroupUsersPanel(String id, long orgId) {
+ super(id);
+ this.organisationId = orgId;
+ setOutputMarkupId(true);
+
+ DataView<Organisation_Users> dataView = new
DataView<Organisation_Users>("userList", new
OmDataProvider<Organisation_Users>(OrganisationUserDAO.class){
+ private static final long serialVersionUID = 1L;
+
+ public long size() {
+ return
Application.getBean(OrganisationUserDAO.class).count(organisationId);
+ }
+
+ public java.util.Iterator<? extends Organisation_Users>
iterator(long first, long count) {
+ return
Application.getBean(OrganisationUserDAO.class).get(organisationId, (int)first,
(int)count).iterator();
+ }
+ }) {
+ private static final long serialVersionUID =
8715559628755439596L;
+
+ @Override
+ protected void populateItem(Item<Organisation_Users>
item) {
+ final Organisation_Users orgUser =
item.getModelObject();
+ Users u =
Application.getBean(UsersDaoImpl.class).get(orgUser.getUser_id());
+ item.add(new Label("label",
Model.of(u.getLogin() + " [" + u.getFirstname() + ", " + u.getLastname() +
"]")));
+ item.add(AttributeModifier.append("class",
((item.getIndex() % 2 == 1) ? "even" : "odd")));
+ }
+ };
+ add(dataView).setOutputMarkupId(true);
+ add(new PagedEntityListPanel("navigator", dataView) {
+ private static final long serialVersionUID =
5097048616003411362L;
+
+ @Override
+ protected void onEvent(AjaxRequestTarget target) {
+ target.add(GroupUsersPanel.this);
+ }
+ });
+ }
+
+ void update(long orgId) {
+ organisationId = orgId;
+ }
+}
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.html
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.html?rev=1388435&r1=1388434&r2=1388435&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.html
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.html
Fri Sep 21 11:31:10 2012
@@ -23,7 +23,7 @@
<wicket:panel>
<table class="adminPanel">
<tr>
- <td class="adminPanelColumnTable">
+ <td valign="top" class="adminPanelColumnTable">
<span wicket:id="navigator">[dataview
navigator]</span>
<table class="adminListTable">
<tr>
@@ -45,6 +45,26 @@
<td class="adminPanelColumnForm">
<form wicket:id="form"
class="adminForm">
<div wicket:id="buttons"></div>
+ <table>
+ <tr>
+ <td
style="font-weight: bold;"><wicket:ommessage key="170" /></td>
+ <td> </td>
+ </tr>
+ <tr>
+
<td><wicket:ommessage key="171" /></td>
+ <td><input
type="text" wicket:id="name" /></td>
+ </tr>
+ <tr>
+ <td
style="font-weight: bold;"><wicket:ommessage key="273" /></td>
+ <td> </td>
+ </tr>
+ <tr>
+
<td><wicket:ommessage key="177" /></td>
+ <td>
+ <div
wicket:id="users"></div>
+ </td>
+ </tr>
+ </table>
</form>
</td>
</tr>
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java?rev=1388435&r1=1388434&r2=1388435&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/groups/GroupsPanel.java
Fri Sep 21 11:31:10 2012
@@ -18,13 +18,11 @@
*/
package org.apache.openmeetings.web.components.admin.groups;
-import java.util.Iterator;
-
-import org.apache.openmeetings.data.user.Organisationmanagement;
+import org.apache.openmeetings.data.user.OrganisationDAO;
import org.apache.openmeetings.persistence.beans.domain.Organisation;
-import org.apache.openmeetings.web.app.Application;
import org.apache.openmeetings.web.components.admin.AdminPanel;
import org.apache.openmeetings.web.components.admin.PagedEntityListPanel;
+import org.apache.openmeetings.web.data.OmDataProvider;
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.ajax.AjaxEventBehavior;
import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -32,43 +30,21 @@ import org.apache.wicket.markup.html.Web
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.markup.repeater.data.DataView;
-import org.apache.wicket.markup.repeater.data.IDataProvider;
-import org.apache.wicket.model.CompoundPropertyModel;
-import org.apache.wicket.model.IModel;
public class GroupsPanel extends AdminPanel {
private static final long serialVersionUID = -1L;
- @SuppressWarnings("unused")
- private String selectedText = "Click on the table to change the room";
- private GroupForm form;
public GroupsPanel(String id) {
super(id);
- DataView<Organisation> dataView = new
DataView<Organisation>("groupList", new IDataProvider<Organisation>(){
- private static final long serialVersionUID = -1L;
-
- public void detach() {
- //empty
- }
-
- public Iterator<? extends Organisation> iterator(long
first, long count) {
- return
Application.getBean(Organisationmanagement.class).getNondeletedOrganisation((int)first,
(int)count).iterator();
- }
-
- public long size() {
- return
Application.getBean(Organisationmanagement.class).selectMaxFromOrganisations();
- }
-
- public IModel<Organisation> model(Organisation object) {
- return new
CompoundPropertyModel<Organisation>(object);
- }
-
- }) {
+ final GroupForm form = new GroupForm("form", new
Organisation());
+ add(form);
+
+ DataView<Organisation> dataView = new
DataView<Organisation>("groupList", new
OmDataProvider<Organisation>(OrganisationDAO.class)) {
private static final long serialVersionUID =
8715559628755439596L;
@Override
- protected void populateItem(final Item<Organisation>
item) {
+ protected void populateItem(Item<Organisation> item) {
final Organisation organisation =
item.getModelObject();
item.add(new Label("organisation_id", "" +
organisation.getOrganisation_id()));
item.add(new Label("name", "" +
organisation.getName()));
@@ -77,28 +53,23 @@ public class GroupsPanel extends AdminPa
protected void
onEvent(AjaxRequestTarget target) {
form.setModelObject(organisation);
+ form.updateView(target);
target.add(form);
}
});
- item.add(AttributeModifier.replace("class",
(item.getIndex() % 2 == 1) ? "even" : "odd"));
+ item.add(AttributeModifier.append("class",
"clickable " + ((item.getIndex() % 2 == 1) ? "even" : "odd")));
}
};
-
+
final WebMarkupContainer listContainer = new
WebMarkupContainer("listContainer");
add(listContainer.add(dataView).setOutputMarkupId(true));
add(new PagedEntityListPanel("navigator", dataView) {
- private static final long serialVersionUID =
-7378765368303904897L;
+ private static final long serialVersionUID =
5097048616003411362L;
@Override
protected void onEvent(AjaxRequestTarget target) {
target.add(listContainer);
}
});
-
-
- Organisation organisation = new Organisation();
- form = new GroupForm("form", organisation);
- add(form);
-
}
}
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UsersPanel.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UsersPanel.java?rev=1388435&r1=1388434&r2=1388435&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UsersPanel.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UsersPanel.java
Fri Sep 21 11:31:10 2012
@@ -36,8 +36,7 @@ public class UsersPanel extends AdminPan
public UsersPanel(String id) {
super(id);
- Users user = new Users();
- final UserForm form = new UserForm("form", user);
+ final UserForm form = new UserForm("form", new Users());
add(form);
DataView<Users> dataView = new DataView<Users>("userList", new
OmDataProvider<Users>(UsersDaoImpl.class)) {