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 2012/09/11 20:26:03 UTC
svn commit: r1383512 - in
/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings:
data/basic/ persistence/beans/ persistence/beans/domain/
persistence/beans/lang/ persistence/beans/user/ web/components/
web/components/admin/ web/compone...
Author: solomax
Date: Tue Sep 11 18:26:03 2012
New Revision: 1383512
URL: http://svn.apache.org/viewvc?rev=1383512&view=rev
Log:
Entity list is partially pageable and partially generalized.
Language editor stub is added
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/OmEntity.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/PagedEntityListPanel.html
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/PagedEntityListPanel.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/lang/
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/lang/LangPanel.html
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/lang/LangPanel.java
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/Fieldmanagment.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/domain/Organisation_Users.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldlanguagesvalues.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/user/Users.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/MenuPanel.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.html
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.java
Modified: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/Fieldmanagment.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/Fieldmanagment.java?rev=1383512&r1=1383511&r2=1383512&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/Fieldmanagment.java (original)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/Fieldmanagment.java Tue Sep 11 18:26:03 2012
@@ -381,6 +381,15 @@ public class Fieldmanagment {
return q.getResultList();
}
+ public List<Fieldlanguagesvalues> getMixedFieldValuesList(Long language_id, int first, int count) {
+ // all Fieldlanguagesvalues in current Language
+ TypedQuery<Fieldlanguagesvalues> q = em.createNamedQuery("allFieldLanguageValues", Fieldlanguagesvalues.class);
+ q.setParameter("language_id", language_id);
+ q.setFirstResult(first);
+ q.setMaxResults(count);
+ return q.getResultList();
+ }
+
public List<Fieldlanguagesvalues> getUntranslatedFieldValuesList(Long language_id) {
// all FieldValuesIds in current Language
TypedQuery<Long> q0 = em.createNamedQuery("allFieldValuesIds", Long.class);
Added: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/OmEntity.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/OmEntity.java?rev=1383512&view=auto
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/OmEntity.java (added)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/OmEntity.java Tue Sep 11 18:26:03 2012
@@ -0,0 +1,5 @@
+package org.apache.openmeetings.persistence.beans;
+
+public interface OmEntity {
+
+}
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=1383512&r1=1383511&r2=1383512&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 Tue Sep 11 18:26:03 2012
@@ -76,6 +76,9 @@ public class Organisation_Users implemen
@Element(data=true, required=false)
private Boolean isModerator;
+ public Organisation_Users() {
+ }
+
public Organisation_Users(Organisation organisation) {
this.organisation = organisation;
}
Modified: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldlanguagesvalues.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldlanguagesvalues.java?rev=1383512&r1=1383511&r2=1383512&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldlanguagesvalues.java (original)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/Fieldlanguagesvalues.java Tue Sep 11 18:26:03 2012
@@ -36,6 +36,8 @@ import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
+import org.apache.openmeetings.persistence.beans.OmEntity;
+
@Entity
@NamedQueries({
@NamedQuery(name = "allFieldLanguageValues", query = "SELECT flv FROM Fieldlanguagesvalues flv "
@@ -52,7 +54,7 @@ import javax.persistence.Table;
+ " AND flv.language_id = 1 AND flv.fieldvalues_id NOT IN (:id_list)")
})
@Table(name = "fieldlanguagesvalues")
-public class Fieldlanguagesvalues implements Serializable {
+public class Fieldlanguagesvalues implements Serializable, OmEntity {
private static final long serialVersionUID = 1965055047163639210L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
Modified: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/user/Users.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/user/Users.java?rev=1383512&r1=1383511&r2=1383512&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/user/Users.java (original)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/user/Users.java Tue Sep 11 18:26:03 2012
@@ -39,6 +39,7 @@ import javax.persistence.OneToOne;
import javax.persistence.Table;
import javax.persistence.Transient;
+import org.apache.openmeetings.persistence.beans.OmEntity;
import org.apache.openmeetings.persistence.beans.adresses.Adresses;
import org.apache.openmeetings.persistence.beans.adresses.States;
import org.apache.openmeetings.persistence.beans.basic.OmTimeZone;
@@ -51,162 +52,159 @@ import org.simpleframework.xml.Root;
@Entity
@NamedQueries({
- @NamedQuery(name="getAllUsers", query="SELECT u FROM Users u")
- , @NamedQuery(name="getNondeletedUsers", query="SELECT u FROM Users u WHERE u.deleted = false")
- , @NamedQuery(name="getUsersByOrganisationId",
- query="SELECT u FROM Users u WHERE u.deleted = false AND u.organisation_users.organisation.organisation_id = :organisation_id")
-})
+ @NamedQuery(name = "getAllUsers", query = "SELECT u FROM Users u"),
+ @NamedQuery(name = "getNondeletedUsers", query = "SELECT u FROM Users u WHERE u.deleted = false"),
+ @NamedQuery(name = "getUsersByOrganisationId", query = "SELECT u FROM Users u WHERE u.deleted = false AND u.organisation_users.organisation.organisation_id = :organisation_id") })
@Table(name = "users")
-@Root(name="user")
-public class Users implements Serializable {
+@Root(name = "user")
+public class Users implements Serializable, OmEntity {
private static final long serialVersionUID = -2265479712596674065L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
- @Element(data=true)
+ @Element(data = true)
private Long user_id;
-
+
@Column(name = "age")
- @Element(data=true)
+ @Element(data = true)
private Date age;
-
+
@Column(name = "availible")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private Integer availible;
-
+
@Column(name = "firstname")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private String firstname;
-
+
@Column(name = "lastlogin")
private Date lastlogin;
-
+
@Column(name = "lastname")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private String lastname;
-
+
@Column(name = "lasttrans")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private Long lasttrans;
-
+
@Column(name = "level_id")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private Long level_id;
-
+
@Column(name = "login")
- @Element(data=true)
+ @Element(data = true)
private String login;
-
+
@Column(name = "password")
- @Element(name="pass", data=true)
+ @Element(name = "pass", data = true)
private String password;
-
+
@Column(name = "regdate")
- @Element(data=true)
+ @Element(data = true)
private Date regdate;
-
+
@Column(name = "status")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private Integer status;
-
+
@Column(name = "salutations_id")
- @Element(name="title_id", data=true, required=false)
+ @Element(name = "title_id", data = true, required = false)
private Long salutations_id;
-
+
@Column(name = "starttime")
private Date starttime;
-
+
@Column(name = "updatetime")
private Date updatetime;
-
+
@Column(name = "pictureuri")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private String pictureuri;
-
+
@Column(name = "deleted")
- @Element(data=true)
+ @Element(data = true)
private boolean deleted;
-
+
@Column(name = "language_id")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private Long language_id;
-
+
@Column(name = "resethash")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private String resethash;
-
+
@Column(name = "activatehash")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private String activatehash;
-
@ManyToOne(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@JoinColumn(name = "adresses_id", insertable = true, updatable = true)
- @Element(name="address", required=false)
+ @Element(name = "address", required = false)
private Adresses adresses;
-
+
@Transient
private Userlevel userlevel;
-
+
@Transient
private Userdata rechnungsaddressen;
-
+
@Transient
private Userdata lieferadressen;
@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@JoinColumn(name = "user_id", insertable = true, updatable = true)
- @ElementList(name="organisations")
+ @ElementList(name = "organisations")
private List<Organisation_Users> organisation_users = new ArrayList<Organisation_Users>();
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "userSipDataId", insertable = true, updatable = true)
- @Element(name="sipData", required=false)
+ @Element(name = "sipData", required = false)
private UserSipData userSipData;
// Vars to simulate external Users
@Column(name = "externalUserId")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private String externalUserId;
-
+
@Column(name = "externalUserType")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private String externalUserType;
@ManyToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "omtimezoneId", insertable = true, updatable = true)
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private OmTimeZone omTimeZone; // In UTC +/- hours
@Transient
private Sessiondata sessionData;
-
+
@Column(name = "forceTimeZoneCheck")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private Boolean forceTimeZoneCheck;
@Column(name = "sendSMS")
private boolean sendSMS;
@Column(name = "user_offers")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private String userOffers;
-
+
@Column(name = "user_searchs")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private String userSearchs;
-
+
@Column(name = "show_contact_data")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private Boolean showContactData;
-
+
@Column(name = "show_contact_data_to_contacts")
- @Element(data=true, required=false)
+ @Element(data = true, required = false)
private Boolean showContactDataToContacts;
-
+
@OneToOne(fetch = FetchType.EAGER)
@JoinColumn(name = "server_id")
- @Element(required=false)
+ @Element(required = false)
private Server server;
public Long getUser_id() {
@@ -355,7 +353,7 @@ public class Users implements Serializab
public void setSalutations_id(Long salutations_id) {
this.salutations_id = salutations_id;
}
-
+
public Userlevel getUserlevel() {
return userlevel;
}
@@ -403,7 +401,7 @@ public class Users implements Serializab
public void setLanguage_id(Long language_id) {
this.language_id = language_id;
}
-
+
public List<Organisation_Users> getOrganisation_users() {
return organisation_users;
}
@@ -526,8 +524,8 @@ public class Users implements Serializab
public void setServer(Server server) {
this.server = server;
}
-
+
public String getPhoneForSMS() {
return getSendSMS() ? getAdresses().getPhone() : "";
-}
+ }
}
Modified: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/MenuPanel.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/MenuPanel.java?rev=1383512&r1=1383511&r2=1383512&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/MenuPanel.java (original)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/MenuPanel.java Tue Sep 11 18:26:03 2012
@@ -25,6 +25,7 @@ import org.apache.openmeetings.web.app.A
import org.apache.openmeetings.web.app.WebSession;
import org.apache.openmeetings.web.components.admin.rooms.RoomsPanel;
import org.apache.openmeetings.web.components.admin.user.UsersPanel;
+import org.apache.openmeetings.web.components.lang.LangPanel;
import org.apache.wicket.MarkupContainer;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.AjaxLink;
@@ -117,6 +118,8 @@ public class MenuPanel extends BasePanel
case adminModuleConfiguration:
break;
case adminModuleLanguages:
+ target.add(contents.replace(new LangPanel("child")));
+ hash = "#admin/lang";
break;
case adminModuleLDAP:
break;
Added: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/PagedEntityListPanel.html
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/PagedEntityListPanel.html?rev=1383512&view=auto
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/PagedEntityListPanel.html (added)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/PagedEntityListPanel.html Tue Sep 11 18:26:03 2012
@@ -0,0 +1,27 @@
+<?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>
+ <select wicket:id="entityesPerPage"></select>
+ <span wicket:id="navigator">[dataview navigator]</span>
+ </wicket:panel>
+</html>
\ No newline at end of file
Added: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/PagedEntityListPanel.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/PagedEntityListPanel.java?rev=1383512&view=auto
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/PagedEntityListPanel.java (added)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/PagedEntityListPanel.java Tue Sep 11 18:26:03 2012
@@ -0,0 +1,58 @@
+/*
+ * 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;
+
+import java.util.Arrays;
+import java.util.List;
+
+import org.apache.openmeetings.persistence.beans.OmEntity;
+import org.apache.wicket.ajax.AjaxEventBehavior;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.ajax.markup.html.navigation.paging.AjaxPagingNavigator;
+import org.apache.wicket.markup.html.form.DropDownChoice;
+import org.apache.wicket.markup.repeater.data.DataView;
+import org.apache.wicket.model.PropertyModel;
+
+public abstract class PagedEntityListPanel extends AdminPanel {
+ private static final long serialVersionUID = -4280843184916302671L;
+ private int entityesPerPage = 50;
+ private List<Integer> numbers = Arrays.asList(10, 25, 50, 75, 100, 200);
+
+ public PagedEntityListPanel(String id, final DataView<? extends OmEntity> dataView) {
+ super(id);
+
+ dataView.setItemsPerPage(entityesPerPage);
+ final AjaxPagingNavigator navigator = new AjaxPagingNavigator("navigator", dataView);
+ add(navigator.setOutputMarkupId(true));
+
+ add(new DropDownChoice<Integer>("entityesPerPage", new PropertyModel<Integer>(this, "entityesPerPage"), numbers)
+ .add(new AjaxEventBehavior("change") {
+ private static final long serialVersionUID = 7721662282201431562L;
+
+ @Override
+ protected void onEvent(AjaxRequestTarget target) {
+ dataView.setItemsPerPage(entityesPerPage);
+ target.add(navigator);
+ PagedEntityListPanel.this.onEvent(target);
+ }
+ }));
+ }
+
+ protected abstract void onEvent(AjaxRequestTarget target);
+}
Modified: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.html
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.html?rev=1383512&r1=1383511&r2=1383512&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.html (original)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.html Tue Sep 11 18:26:03 2012
@@ -23,9 +23,9 @@
<wicket:panel>
<table>
<tr>
- <td>
+ <td valign="top">
<span wicket:id="navigator">[dataview navigator]</span>
- <table>
+ <table wicket:id="userListContainer">
<tr>
<th><wicket:ommessage key="146" /></th>
<th><wicket:ommessage key="147" /></th>
Modified: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.java?rev=1383512&r1=1383511&r2=1383512&view=diff
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.java (original)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/user/UsersPanel.java Tue Sep 11 18:26:03 2012
@@ -24,9 +24,10 @@ import org.apache.openmeetings.data.user
import org.apache.openmeetings.persistence.beans.user.Users;
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.wicket.ajax.AjaxEventBehavior;
import org.apache.wicket.ajax.AjaxRequestTarget;
-import org.apache.wicket.ajax.markup.html.navigation.paging.AjaxPagingNavigator;
+import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.markup.repeater.data.DataView;
@@ -88,9 +89,16 @@ public class UsersPanel extends AdminPan
selected = new Label("selected", new PropertyModel<String>(this, "selectedText"));
selected.setOutputMarkupId(true);
add(selected);
- dataView.setItemsPerPage(8); //FIXME need to be parametrized
- add(dataView);
- add(new AjaxPagingNavigator("navigator", dataView));
+ final WebMarkupContainer userListContainer = new WebMarkupContainer("userListContainer");
+ add(userListContainer.add(dataView).setOutputMarkupId(true));
+ add(new PagedEntityListPanel("navigator", dataView) {
+ private static final long serialVersionUID = 5097048616003411362L;
+
+ @Override
+ protected void onEvent(AjaxRequestTarget target) {
+ target.add(userListContainer);
+ }
+ });
Users user = new Users();
form = new UserForm("form", user);
Added: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/lang/LangPanel.html
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/lang/LangPanel.html?rev=1383512&view=auto
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/lang/LangPanel.html (added)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/lang/LangPanel.html Tue Sep 11 18:26:03 2012
@@ -0,0 +1,46 @@
+<?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>
+ <table>
+ <tr>
+ <td valign="top">
+ <span wicket:id="navigator">[dataview navigator]</span>
+ <table wicket:id="langListContainer">
+ <tr>
+ <th><wicket:ommessage key="350" /></th>
+ <th><wicket:ommessage key="351" /></th>
+ <th><wicket:ommessage key="352" /></th>
+ </tr>
+ <tr wicket:id="langList">
+ <td><span wicket:id="lblId"></span></td>
+ <td><span wicket:id="name"></span></td>
+ <td><span wicket:id="value"></span></td>
+ </tr>
+ </table>
+ </td>
+ <td>
+ </td>
+ </tr>
+ </table>
+ </wicket:panel>
+</html>
Added: incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/lang/LangPanel.java
URL: http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/lang/LangPanel.java?rev=1383512&view=auto
==============================================================================
--- incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/lang/LangPanel.java (added)
+++ incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/lang/LangPanel.java Tue Sep 11 18:26:03 2012
@@ -0,0 +1,97 @@
+/*
+ * 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.lang;
+
+import java.util.Iterator;
+
+import org.apache.openmeetings.data.basic.Fieldmanagment;
+import org.apache.openmeetings.persistence.beans.lang.Fieldlanguagesvalues;
+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.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.markup.html.WebMarkupContainer;
+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 LangPanel extends AdminPanel {
+ private static final long serialVersionUID = 5904180813198016592L;
+ long language = 1;
+
+ public LangPanel(String id) {
+ super(id);
+
+ DataView<Fieldlanguagesvalues> dataView = new DataView<Fieldlanguagesvalues>("langList", new IDataProvider<Fieldlanguagesvalues>(){
+ private static final long serialVersionUID = -6822789354860988626L;
+
+ public void detach() {
+ //empty
+ }
+
+ public Iterator<? extends Fieldlanguagesvalues> iterator(long first, long count) {
+ return Application.getBean(Fieldmanagment.class).getMixedFieldValuesList(language, (int)first, (int)count).iterator();
+ }
+
+ public long size() {
+ return Application.getBean(Fieldmanagment.class).getNextFieldvaluesId() - 1; //FIXME need to be generalized
+ }
+
+ public IModel<Fieldlanguagesvalues> model(Fieldlanguagesvalues object) {
+ return new CompoundPropertyModel<Fieldlanguagesvalues>(object);
+ }
+
+ }) {
+ private static final long serialVersionUID = 8715559628755439596L;
+
+ @Override
+ protected void populateItem(Item<Fieldlanguagesvalues> item) {
+ final Fieldlanguagesvalues flv = item.getModelObject();
+ item.add(new Label("lblId", "" + flv.getFieldlanguagesvalues_id()));
+ item.add(new Label("name", flv.getFieldvalues().getName()));
+ item.add(new Label("value", flv.getValue()));
+ /*
+ item.add(new AjaxEventBehavior("onclick") {
+ private static final long serialVersionUID = -8069413566800571061L;
+
+ protected void onEvent(AjaxRequestTarget target) {
+ //form.setModelObject(u);
+ //target.add(form);
+ }
+ });
+ */
+ }
+ };
+
+ final WebMarkupContainer langListContainer = new WebMarkupContainer("langListContainer");
+ add(langListContainer.add(dataView).setOutputMarkupId(true));
+ add(new PagedEntityListPanel("navigator", dataView) {
+ private static final long serialVersionUID = 5097048616003411362L;
+
+ @Override
+ protected void onEvent(AjaxRequestTarget target) {
+ target.add(langListContainer);
+ }
+ });
+
+ }
+}