Author: sebawagner
Date: Sat Sep 22 13:28:23 2012
New Revision: 1388808
URL: http://svn.apache.org/viewvc?rev=1388808&view=rev
Log:
OPENMEETINGS-429 refactor and split up language editing in several classes,
adding new languages will currently not work, needs more refactoring
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LabelsForm.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangForm.java
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldLanguageDaoImpl.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/FieldLanguage.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigForm.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigsPanel.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.html
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.java
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UserForm.java
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldLanguageDaoImpl.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldLanguageDaoImpl.java?rev=1388808&r1=1388807&r2=1388808&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldLanguageDaoImpl.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/data/basic/FieldLanguageDaoImpl.java
Sat Sep 22 13:28:23 2012
@@ -18,6 +18,7 @@
*/
package org.apache.openmeetings.data.basic;
+import java.io.Serializable;
import java.util.Date;
import java.util.List;
@@ -38,7 +39,9 @@ import org.springframework.transaction.a
*
*/
@Transactional
-public class FieldLanguageDaoImpl {
+public class FieldLanguageDaoImpl implements Serializable {
+
+ private static final long serialVersionUID = -2714490167956230305L;
private static final Logger log = Red5LoggerFactory.getLogger(
FieldLanguageDaoImpl.class,
OpenmeetingsVariables.webAppRootKey);
@@ -102,7 +105,13 @@ public class FieldLanguageDaoImpl {
return new Long(-1);
}
- public void updateLanguage(FieldLanguage fl) throws Exception {
+ public void delete(FieldLanguage fl) {
+ fl.setUpdatetime(new Date());
+ fl.setDeleted(true);
+ em.merge(fl);
+ }
+
+ public void updateLanguage(FieldLanguage fl) {
if (fl.getLanguage_id() == null) {
em.persist(fl);
} else {
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/FieldLanguage.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/FieldLanguage.java?rev=1388808&r1=1388807&r2=1388808&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/FieldLanguage.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/persistence/beans/lang/FieldLanguage.java
Sat Sep 22 13:28:23 2012
@@ -33,9 +33,11 @@ import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToMany;
import javax.persistence.Table;
+
+import org.apache.openmeetings.persistence.beans.OmEntity;
@Entity
@Table(name = "fieldlanguage")
-public class FieldLanguage implements Serializable {
+public class FieldLanguage implements Serializable, OmEntity {
private static final long serialVersionUID = 3501643212388395425L;
@Id
@Column(name="id")
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigForm.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigForm.java?rev=1388808&r1=1388807&r2=1388808&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigForm.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigForm.java
Sat Sep 22 13:28:23 2012
@@ -32,6 +32,12 @@ import org.apache.wicket.markup.html.for
import org.apache.wicket.markup.html.form.TextField;
import org.apache.wicket.model.CompoundPropertyModel;
+/**
+ * Handle {@link Configuration} items as list and form
+ *
+ * @author swagner
+ *
+ */
public class ConfigForm extends AdminBaseForm<Configuration> {
private static final long serialVersionUID = 1L;
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigsPanel.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigsPanel.java?rev=1388808&r1=1388807&r2=1388808&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigsPanel.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/configurations/ConfigsPanel.java
Sat Sep 22 13:28:23 2012
@@ -31,6 +31,12 @@ import org.apache.wicket.markup.html.bas
import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.markup.repeater.data.DataView;
+/**
+ * add/update/delete {@link Configuration}
+ *
+ * @author swagner
+ *
+ */
public class ConfigsPanel extends AdminPanel {
private static final long serialVersionUID = -1L;
@@ -71,8 +77,7 @@ public class ConfigsPanel extends AdminP
}
});
- Configuration configuration = new Configuration();
- form = new ConfigForm("form", listContainer, configuration);
+ form = new ConfigForm("form", listContainer, new
Configuration());
add(form);
}
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LabelsForm.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LabelsForm.java?rev=1388808&view=auto
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LabelsForm.java
(added)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LabelsForm.java
Sat Sep 22 13:28:23 2012
@@ -0,0 +1,88 @@
+/*
+ * 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.labels;
+
+import org.apache.openmeetings.data.basic.FieldLanguagesValuesDAO;
+import org.apache.openmeetings.persistence.beans.lang.Fieldlanguagesvalues;
+import org.apache.openmeetings.web.app.Application;
+import org.apache.openmeetings.web.app.WebSession;
+import org.apache.openmeetings.web.components.admin.AdminBaseForm;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.markup.html.form.Form;
+import org.apache.wicket.markup.html.form.TextArea;
+import org.apache.wicket.markup.html.form.TextField;
+import org.apache.wicket.model.CompoundPropertyModel;
+
+/**
+ * Add/edit/delete {@link Fieldlanguagesvalues}
+ *
+ * @author swagner
+ *
+ */
+public class LabelsForm extends AdminBaseForm<Fieldlanguagesvalues> {
+
+ public LabelsForm(String id, Fieldlanguagesvalues fieldlanguagesvalues)
{
+ super(id, new CompoundPropertyModel<Fieldlanguagesvalues>(
+ fieldlanguagesvalues));
+ setOutputMarkupId(true);
+
+ add(new Label("fieldvalues.fieldvalues_id"));
+ add(new TextField<String>("fieldvalues.name"));
+ add(new TextArea<String>("value"));
+
+ }
+
+ private static final long serialVersionUID = -1309878909524329047L;
+
+ @Override
+ protected void onNewSubmit(AjaxRequestTarget target, Form<?> f) {
+ this.setModelObject(new Fieldlanguagesvalues());
+ target.add(this);
+ }
+
+ @Override
+ protected void onRefreshSubmit(AjaxRequestTarget target, Form<?> form) {
+ Fieldlanguagesvalues flv = getModelObject();
+ if (flv.getFieldlanguagesvalues_id() != null) {
+ flv =
Application.getBean(FieldLanguagesValuesDAO.class).get(
+
getModelObject().getFieldlanguagesvalues_id());
+ } else {
+ flv = new Fieldlanguagesvalues();
+ }
+ this.setModelObject(flv);
+ target.add(this);
+ }
+
+ @Override
+ protected void onSaveSubmit(AjaxRequestTarget target, Form<?> form) {
+ Application.getBean(FieldLanguagesValuesDAO.class).update(
+ getModelObject(), WebSession.getUserId());
+ // FIXME reload
+ }
+
+ // FIXME confirmation
+ @Override
+ protected void onDeleteSubmit(AjaxRequestTarget target, Form<?> form) {
+ Application.getBean(FieldLanguagesValuesDAO.class).delete(
+ getModelObject(), WebSession.getUserId());
+ // FIXME reload
+ }
+
+}
Added:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangForm.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangForm.java?rev=1388808&view=auto
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangForm.java
(added)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangForm.java
Sat Sep 22 13:28:23 2012
@@ -0,0 +1,197 @@
+/*
+ * 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.labels;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.apache.openmeetings.data.basic.FieldLanguageDaoImpl;
+import org.apache.openmeetings.persistence.beans.lang.FieldLanguage;
+import org.apache.openmeetings.web.app.Application;
+import org.apache.openmeetings.web.components.ConfirmCallListener;
+import org.apache.openmeetings.web.components.admin.AdminBaseForm;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
+import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
+import org.apache.wicket.ajax.markup.html.form.AjaxButton;
+import org.apache.wicket.markup.html.WebMarkupContainer;
+import org.apache.wicket.markup.html.form.DropDownChoice;
+import org.apache.wicket.markup.html.form.Form;
+import org.apache.wicket.markup.html.form.IChoiceRenderer;
+import org.apache.wicket.model.CompoundPropertyModel;
+
+/**
+ * Modify the language selection, add/delete {@link FieldLanguage}
+ *
+ * @author swagner
+ *
+ */
+public class LangForm extends AdminBaseForm<FieldLanguage> {
+
+ private static final long serialVersionUID = 2837702941211636609L;
+ private final WebMarkupContainer listContainer;
+ private final LangPanel langPanel;
+ private DropDownChoice<Long> languages;
+
+ private List<FieldLanguage> fieldLanguages;
+
+ private List<Long> getFieldLanguageIds() {
+ List<Long> idsList = new ArrayList<Long>();
+ for (FieldLanguage fieldLanguage : fieldLanguages) {
+ idsList.add(fieldLanguage.getLanguage_id());
+ }
+ return idsList;
+ }
+
+ private String getFieldLanguageLabelById(Long id) {
+ for (FieldLanguage language : fieldLanguages) {
+ if (id.equals(language.getLanguage_id())) {
+ return language.getName();
+ }
+ }
+ throw new RuntimeException("Could not find FieldLanguage for id
" + id);
+ }
+
+ public LangForm(String id, final WebMarkupContainer listContainer,
+ FieldLanguage language, LangPanel langPanel) {
+
+ super(id, new CompoundPropertyModel<FieldLanguage>(language));
+ this.listContainer = listContainer;
+ this.langPanel = langPanel;
+ setOutputMarkupId(true);
+
+ addLanguageDropDown();
+
+ addSaveAndDeleteButtons();
+
+ // addNewLanguagePopUp(langPanel);
+ }
+
+ /**
+ * Adds the drop down menu to choose more languages
+ */
+ private void addLanguageDropDown() {
+
+ // prepare the list of languages
+ FieldLanguageDaoImpl langDao = Application
+ .getBean(FieldLanguageDaoImpl.class);
+ fieldLanguages = langDao.getLanguages();
+
+ languages = new DropDownChoice<Long>("language_id",
+ getFieldLanguageIds(), new
IChoiceRenderer<Long>() {
+ private static final long
serialVersionUID = 1L;
+
+ public Object getDisplayValue(Long id) {
+ return
getFieldLanguageLabelById(id);
+ }
+
+ public String getIdValue(Long id, int
index) {
+ return "" + id;
+ }
+
+ });
+
+ languages.add(new AjaxFormComponentUpdatingBehavior("onchange")
{
+ private static final long serialVersionUID =
-2055912815073387536L;
+
+ @Override
+ protected void onUpdate(AjaxRequestTarget target) {
+ target.add(listContainer);
+ }
+ });
+
+ add(languages);
+ }
+
+ /**
+ * adds the pop up to enter a new language
+ *
+ * @param langPanel
+ */
+ // private void addNewLanguagePopUp(LangPanel langPanel) {
+ // langPanel.add(addLangForm.add(
+ // new RequiredTextField<String>("name",
+ // new PropertyModel<String>(this, "newLanguageName")))
+ // .add(new RequiredTextField<String>("iso",
+ // new PropertyModel<String>(this, "newLanguageISO"))));
+ // }
+
+ /**
+ * Add save and remove buttons and trigger add/delete in DAO
+ */
+ private void addSaveAndDeleteButtons() {
+
+ add(new AjaxButton("newLangBtn") {
+ private static final long serialVersionUID =
5570057276994987132L;
+ });
+
+ add(new AjaxButton("deleteLangBtn") {
+ private static final long serialVersionUID =
-1650946343073068686L;
+
+ @Override
+ protected void
updateAjaxAttributes(AjaxRequestAttributes attributes) {
+ super.updateAjaxAttributes(attributes);
+ attributes.getAjaxCallListeners().add(
+ new ConfirmCallListener(833L));
+ }
+
+ @Override
+ protected void onSubmit(AjaxRequestTarget target,
Form<?> form) {
+ FieldLanguageDaoImpl langDao = Application
+
.getBean(FieldLanguageDaoImpl.class);
+ langDao.delete(langPanel.getLanguage());
+ fieldLanguages = langDao.getLanguages();
+ languages.setChoices(getFieldLanguageIds());
+ target.add(languages);
+ // FIXME need to force update list container
+ target.add(listContainer);
+ }
+ });
+
+ // add(new AjaxButton("add", this) {
+ // private static final long serialVersionUID =
-552597041751688740L;
+ //
+ // @Override
+ // public void onSubmit(AjaxRequestTarget target, Form<?> form)
{
+ // FieldLanguageDaoImpl langDao = Application
+ // .getBean(FieldLanguageDaoImpl.class);
+ //
+ // FieldLanguage fl = new FieldLanguage();
+ // fl.setLanguage_id(langDao.getNextAvailableId());
+ // fl.setStarttime(new Date());
+ // fl.setDeleted(false);
+ // fl.setName(langPanel.getNewLanguageName());
+ // fl.setRtl(false); // FIXME
+ // fl.setCode(langPanel.getNewLanguageISO());
+ //
+ // try {
+ // langDao.updateLanguage(fl);
+ // } catch (Exception e) {
+ // // TODO add feedback message
+ // e.printStackTrace();
+ // }
+ // fieldLanguages = langDao.getLanguages();
+ // languages.setChoices(getFieldLanguageIds());
+ // target.add(languages);
+ //
target.appendJavaScript("$('#addLanguage').dialog('close');");
+ // }
+ // });
+ }
+
+}
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.html
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.html?rev=1388808&r1=1388807&r2=1388808&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.html
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.html
Sat Sep 22 13:28:23 2012
@@ -33,9 +33,16 @@
<table class="adminPanel">
<tr>
<td valign="top" class="adminPanelColumnTable">
- <div class="formNewButton"
onclick="$('#addLanguage :text').val('');
$('#addLanguage').dialog('open');"><input/></div>
- <div class="formCancelButton"
wicket:id="deleteLngBtn"><input/></div>
- <form wicket:id="langForm"
style="display: inline-block;"><select wicket:id="language"></select></form>
+ <form wicket:id="langForm"
style="display: inline;">
+ <div class="formNewButton"
+
onclick="$('#addLanguage :text').val(''); $('#addLanguage').dialog('open');">
+ <input type="submit"
value="" wicket:id="newLangBtn" />
+ </div>
+ <div class="formCancelButton">
+ <input type="submit"
value="" wicket:id="deleteLangBtn" />
+ </div>
+ <select
wicket:id="language_id"></select>
+ </form>
<span wicket:id="navigator">[dataview
navigator]</span>
<table class="adminListTable">
<thead>
@@ -83,18 +90,18 @@
</tr>
</table>
<div id="addLanguage" wicket:ommessage="title:364"
style="display: none;">
- <form wicket:id="addLangForm">
+ <form > <!-- wicket:id="addLangForm" -->
<table>
<tr>
<td><wicket:ommessage key="365"
/></td>
- <td><input type="text"
wicket:id="name" /></td>
+ <td><input type="text"
/></td><!-- wicket:id="name" -->
</tr>
<tr>
<td><wicket:ommessage
key="1422" /></td>
- <td><input type="text"
wicket:id="iso"/></td>
+ <td><input type="text"
/></td><!-- wicket:id="iso" -->
</tr>
<tr>
- <td align="right"
colspan="2"><input wicket:id="add" type="submit" /></td>
+ <td align="right"
colspan="2"><input type="submit" /></td><!-- wicket:id="add" -->
</tr>
</table>
</form>
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.java?rev=1388808&r1=1388807&r2=1388808&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/labels/LangPanel.java
Sat Sep 22 13:28:23 2012
@@ -18,7 +18,6 @@
*/
package org.apache.openmeetings.web.components.admin.labels;
-import java.util.Date;
import java.util.Iterator;
import org.apache.openmeetings.data.basic.FieldLanguageDaoImpl;
@@ -26,90 +25,78 @@ import org.apache.openmeetings.data.basi
import org.apache.openmeetings.persistence.beans.lang.FieldLanguage;
import org.apache.openmeetings.persistence.beans.lang.Fieldlanguagesvalues;
import org.apache.openmeetings.web.app.Application;
-import org.apache.openmeetings.web.app.WebSession;
-import org.apache.openmeetings.web.components.ConfirmCallListener;
-import org.apache.openmeetings.web.components.admin.AdminBaseForm;
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;
-import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
-import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
-import org.apache.wicket.ajax.markup.html.form.AjaxButton;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label;
-import org.apache.wicket.markup.html.form.ChoiceRenderer;
-import org.apache.wicket.markup.html.form.DropDownChoice;
-import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.markup.html.form.RequiredTextField;
-import org.apache.wicket.markup.html.form.TextArea;
-import org.apache.wicket.markup.html.form.TextField;
import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.markup.repeater.data.DataView;
-import org.apache.wicket.model.CompoundPropertyModel;
-import org.apache.wicket.model.Model;
-import org.apache.wicket.model.PropertyModel;
+/**
+ * Language Editor, add/insert/update {@link Fieldlanguagesvalues} and
+ * add/delete {@link FieldLanguage} contains several Forms and one list
+ *
+ * @author solomax, swagner
+ *
+ */
public class LangPanel extends AdminPanel {
private static final long serialVersionUID = 5904180813198016592L;
+
private FieldLanguage language;
private String newLanguageName;
private String newLanguageISO;
-
+
+ public FieldLanguage getLanguage() {
+ return language;
+ }
+
+ public void setLanguage(FieldLanguage language) {
+ this.language = language;
+ }
+
+ public String getNewLanguageName() {
+ return newLanguageName;
+ }
+
+ public void setNewLanguageName(String newLanguageName) {
+ this.newLanguageName = newLanguageName;
+ }
+
+ public String getNewLanguageISO() {
+ return newLanguageISO;
+ }
+
+ public void setNewLanguageISO(String newLanguageISO) {
+ this.newLanguageISO = newLanguageISO;
+ }
+
public LangPanel(String id) {
super(id);
- FieldLanguageDaoImpl langDao =
Application.getBean(FieldLanguageDaoImpl.class);
+ FieldLanguageDaoImpl langDao = Application
+ .getBean(FieldLanguageDaoImpl.class);
language = langDao.getFieldLanguageById(1L);
-
- final AdminBaseForm<Fieldlanguagesvalues> form = new
AdminBaseForm<Fieldlanguagesvalues>("form", new
CompoundPropertyModel<Fieldlanguagesvalues>(new Fieldlanguagesvalues())) {
- private static final long serialVersionUID =
-1309878909524329047L;
-
- @Override
- protected void onNewSubmit(AjaxRequestTarget target,
Form<?> f) {
- this.setModelObject(new Fieldlanguagesvalues());
- target.add(this);
- }
-
- @Override
- protected void onRefreshSubmit(AjaxRequestTarget
target, Form<?> form) {
- Fieldlanguagesvalues flv = getModelObject();
- if (flv.getFieldlanguagesvalues_id() != null) {
- flv =
Application.getBean(FieldLanguagesValuesDAO.class).get(getModelObject().getFieldlanguagesvalues_id());
- } else {
- flv = new Fieldlanguagesvalues();
- }
- this.setModelObject(flv);
- target.add(this);
- }
-
- @Override
- protected void onSaveSubmit(AjaxRequestTarget target,
Form<?> form) {
-
Application.getBean(FieldLanguagesValuesDAO.class).update(getModelObject(),
WebSession.getUserId());
- //FIXME reload
- }
-
- //FIXME confirmation
- @Override
- protected void onDeleteSubmit(AjaxRequestTarget target,
Form<?> form) {
-
Application.getBean(FieldLanguagesValuesDAO.class).delete(getModelObject(),
WebSession.getUserId());
- //FIXME reload
- }
- };
- form.add(new Label("fieldvalues.fieldvalues_id"));
- form.add(new TextField<String>("fieldvalues.name"));
- form.add(new TextArea<String>("value"));
- add(form);
-
- final DataView<Fieldlanguagesvalues> dataView = new
DataView<Fieldlanguagesvalues>("langList"
- , new
OmDataProvider<Fieldlanguagesvalues>(FieldLanguagesValuesDAO.class){
- private static final long serialVersionUID =
-6822789354860988626L;
- public Iterator<? extends Fieldlanguagesvalues>
iterator(long first, long count) {
- return
Application.getBean(FieldLanguagesValuesDAO.class).get(language.getLanguage_id(),
(int)first, (int)count).iterator();
- }
- }) {
+ final LabelsForm form = new LabelsForm("form",
+ new Fieldlanguagesvalues());
+ add(form);
+
+ final DataView<Fieldlanguagesvalues> dataView = new
DataView<Fieldlanguagesvalues>(
+ "langList", new
OmDataProvider<Fieldlanguagesvalues>(
+ FieldLanguagesValuesDAO.class) {
+ private static final long
serialVersionUID = -6822789354860988626L;
+
+ public Iterator<? extends
Fieldlanguagesvalues> iterator(
+ long first, long count)
{
+ return Application
+
.getBean(FieldLanguagesValuesDAO.class)
+
.get(language.getLanguage_id(), (int) first,
+
(int) count).iterator();
+ }
+ }) {
private static final long serialVersionUID =
8715559628755439596L;
@Override
@@ -127,11 +114,13 @@ public class LangPanel extends AdminPane
target.add(form);
}
});
- item.add(AttributeModifier.append("class",
"clickable " + ((item.getIndex() % 2 == 1) ? "even" : "odd")));
+ item.add(AttributeModifier.append("class",
"clickable "
+ + ((item.getIndex() % 2 == 1) ?
"even" : "odd")));
}
};
-
- final WebMarkupContainer listContainer = new
WebMarkupContainer("listContainer");
+
+ final WebMarkupContainer listContainer = new WebMarkupContainer(
+ "listContainer");
add(listContainer.add(dataView).setOutputMarkupId(true));
add(new PagedEntityListPanel("navigator", dataView) {
private static final long serialVersionUID =
5097048616003411362L;
@@ -142,79 +131,8 @@ public class LangPanel extends AdminPane
target.add(listContainer);
}
});
-
- final Form<Void> f = new Form<Void>("langForm");
- final DropDownChoice<FieldLanguage> languages = new
DropDownChoice<FieldLanguage>("language"
- , new PropertyModel<FieldLanguage>(this, "language")
- , langDao.getLanguages()
- , new ChoiceRenderer<FieldLanguage>("name",
"language_id"));
-
- languages.add(new AjaxFormComponentUpdatingBehavior("onchange")
{
- private static final long serialVersionUID =
-2055912815073387536L;
-
- @Override
- protected void onUpdate(AjaxRequestTarget
target) {
- target.add(listContainer);
- }
- });
- f.add(languages.setOutputMarkupId(true));
- add(f.setOutputMarkupId(true));
-
- add(new WebMarkupContainer("deleteLngBtn").add(new
AjaxEventBehavior("onclick"){
- private static final long serialVersionUID =
-1650946343073068686L;
-
- @Override
- protected void
updateAjaxAttributes(AjaxRequestAttributes attributes) {
- super.updateAjaxAttributes(attributes);
- attributes.getAjaxCallListeners().add(new
ConfirmCallListener(833L));
- }
-
- @Override
- protected void onEvent(AjaxRequestTarget target) {
- language.setDeleted(true);
- FieldLanguageDaoImpl langDao =
Application.getBean(FieldLanguageDaoImpl.class);
- try {
- langDao.updateLanguage(language);
- } catch (Exception e) {
- // TODO add feedback message
- e.printStackTrace();
- }
- languages.setChoices(langDao.getLanguages());
- target.add(languages);
- //FIXME need to forse update list container
- target.add(listContainer);
- }
- }));
- Form<Void> addLangForm = new Form<Void>("addLangForm");
- addLangForm.add(new AjaxButton("add",
Model.of(WebSession.getString(366L)), addLangForm) {
- private static final long serialVersionUID =
-552597041751688740L;
+ add(new LangForm("langForm", listContainer, language, this));
- @Override
- public void onSubmit(AjaxRequestTarget target, Form<?>
form) {
- FieldLanguageDaoImpl langDao =
Application.getBean(FieldLanguageDaoImpl.class);
-
- FieldLanguage fl = new FieldLanguage();
- fl.setLanguage_id(langDao.getNextAvailableId());
- fl.setStarttime(new Date());
- fl.setDeleted(false);
- fl.setName(newLanguageName);
- fl.setRtl(false); //FIXME
- fl.setCode(newLanguageISO);
-
- try {
- langDao.updateLanguage(fl);
- } catch (Exception e) {
- // TODO add feedback message
- e.printStackTrace();
- }
- languages.setChoices(langDao.getLanguages());
- target.add(languages);
-
target.appendJavaScript("$('#addLanguage').dialog('close');");
- }
- });
- add(addLangForm
- .add(new RequiredTextField<String>("name", new
PropertyModel<String>(this, "newLanguageName")))
- .add(new RequiredTextField<String>("iso", new
PropertyModel<String>(this, "newLanguageISO")))
- );
}
+
}
Modified:
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UserForm.java
URL:
http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UserForm.java?rev=1388808&r1=1388807&r2=1388808&view=diff
==============================================================================
---
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UserForm.java
(original)
+++
incubator/openmeetings/trunk/singlewebapp/src/org/apache/openmeetings/web/components/admin/users/UserForm.java
Sat Sep 22 13:28:23 2012
@@ -81,7 +81,7 @@ public class UserForm extends AdminBaseF
return saluation.getLabel().getValue();
}
}
- throw new RuntimeException("Could not find saluation for id " +
id);
+ throw new RuntimeException("Could not find Salutations for id "
+ id);
}
private List<Long> getFieldLanguageIds() {
@@ -99,7 +99,7 @@ public class UserForm extends AdminBaseF
return language.getName();
}
}
- throw new RuntimeException("Could not find saluation for id " +
id);
+ throw new RuntimeException("Could not find FieldLanguage for id
" + id);
}
public UserForm(String id, final Users user) {