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 2016/08/31 16:48:00 UTC

svn commit: r1758654 - in /openmeetings/application: branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/ trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/

Author: solomax
Date: Wed Aug 31 16:48:00 2016
New Revision: 1758654

URL: http://svn.apache.org/viewvc?rev=1758654&view=rev
Log:
[OPENMEETINGS-1458] dialog is added

Added:
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.html
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.html
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.java
Modified:
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html
    openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html
    openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java

Added: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.html
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.html?rev=1758654&view=auto
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.html (added)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.html Wed Aug 31 16:48:00 2016
@@ -0,0 +1,41 @@
+<?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>
+	<form wicket:id="form">
+		<div wicket:id="feedback"></div>
+		<div class="table">
+			<div>
+				<div class="column label"><label wicket:for="subject"><wicket:message key="135" /></label></div>
+				<div class="column data"><input type="text" wicket:id="firstname" class="input"/></div>
+			</div>
+			<div>
+				<div class="column label"><label wicket:for="subject"><wicket:message key="136" /></label></div>
+				<div class="column data"><input type="text" wicket:id="lastname" class="input"/></div>
+			</div>
+			<div>
+				<div class="column label"><label wicket:for="subject"><wicket:message key="137" /></label></div>
+				<div class="column data"><input type="text" wicket:id="address.email" class="input"/></div>
+			</div>
+		</div>
+	</form>
+</wicket:panel>
+</html>

Added: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.java?rev=1758654&view=auto
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.java (added)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.java Wed Aug 31 16:48:00 2016
@@ -0,0 +1,90 @@
+/*
+ * 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.room;
+
+import static org.apache.wicket.validation.validator.StringValidator.minimumLength;
+
+import java.util.Arrays;
+import java.util.List;
+
+import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.web.app.Application;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.extensions.validation.validator.RfcCompliantEmailAddressValidator;
+import org.apache.wicket.markup.html.form.Form;
+import org.apache.wicket.markup.html.form.RequiredTextField;
+import org.apache.wicket.model.CompoundPropertyModel;
+import org.apache.wicket.model.Model;
+import org.apache.wicket.util.string.Strings;
+
+import com.googlecode.wicket.jquery.core.JQueryBehavior;
+import com.googlecode.wicket.jquery.core.Options;
+import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog;
+import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
+import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel;
+
+public class NicknameDialog extends AbstractFormDialog<User> {
+	private static final long serialVersionUID = 1L;
+	private final KendoFeedbackPanel feedback = new KendoFeedbackPanel("feedback", new Options("button", true));
+	private final DialogButton ok = new DialogButton("ok", Application.getString(54));
+	private final Form<User> form;
+
+	public NicknameDialog(String id, User u) {
+		super(id, Application.getString(1287));
+		add(form = new Form<>("form", new CompoundPropertyModel<>(u)));
+		form.add(feedback);
+		form.add(new RequiredTextField<String>("firstname").setLabel(Model.of(Application.getString(135))).add(minimumLength(4)));
+		form.add(new RequiredTextField<String>("lastname").setLabel(Model.of(Application.getString(136))).add(minimumLength(4)));
+		form.add(new RequiredTextField<String>("address.email").setLabel(Model.of(Application.getString(137))).add(RfcCompliantEmailAddressValidator.getInstance()));
+	}
+
+	@Override
+	public void onConfigure(JQueryBehavior behavior) {
+		super.onConfigure(behavior);
+		User u = form.getModelObject();
+		behavior.setOption("autoOpen", User.Type.external == u.getType() && Strings.isEmpty(u.getFirstname()) && Strings.isEmpty(u.getLastname()));
+		behavior.setOption("closeOnEscape", false);
+		behavior.setOption("dialogClass", Options.asString("no-close"));
+		behavior.setOption("resizable", false);
+	}
+
+	@Override
+	protected List<DialogButton> getButtons() {
+		return Arrays.asList(ok);
+	}
+
+	@Override
+	public DialogButton getSubmitButton() {
+		return ok;
+	}
+
+	@Override
+	public Form<?> getForm() {
+		return form;
+	}
+
+	@Override
+	protected void onError(AjaxRequestTarget target) {
+		target.add(feedback);
+	}
+
+	@Override
+	protected void onSubmit(AjaxRequestTarget target) {
+	}
+}

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html?rev=1758654&r1=1758653&r2=1758654&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html Wed Aug 31 16:48:00 2016
@@ -9,7 +9,7 @@
   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
@@ -40,5 +40,6 @@
 	<div wicket:id="access-denied"></div>
 	<div wicket:id="room-closed"></div>
 	<div wicket:id="wait-for-recording"></div>
+	<div wicket:id="nickname"></div>
 </wicket:panel>
 </html>

Modified: openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java?rev=1758654&r1=1758653&r2=1758654&view=diff
==============================================================================
--- openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java (original)
+++ openmeetings/application/branches/3.2.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java Wed Aug 31 16:48:00 2016
@@ -255,6 +255,11 @@ public class RoomPanel extends BasePanel
 		} else {
 			add(new WebMarkupContainer("wait-for-recording").setVisible(false));
 		}
+		if (room.isVisible()) {
+			add(new NicknameDialog("nickname", getClient().getUser()));
+		} else {
+			add(new WebMarkupContainer("nickname").setVisible(false));
+		}
 	}
 	
 	@Override

Added: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.html
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.html?rev=1758654&view=auto
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.html (added)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.html Wed Aug 31 16:48:00 2016
@@ -0,0 +1,41 @@
+<?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>
+	<form wicket:id="form">
+		<div wicket:id="feedback"></div>
+		<div class="table">
+			<div>
+				<div class="column label"><label wicket:for="subject"><wicket:message key="135" /></label></div>
+				<div class="column data"><input type="text" wicket:id="firstname" class="input"/></div>
+			</div>
+			<div>
+				<div class="column label"><label wicket:for="subject"><wicket:message key="136" /></label></div>
+				<div class="column data"><input type="text" wicket:id="lastname" class="input"/></div>
+			</div>
+			<div>
+				<div class="column label"><label wicket:for="subject"><wicket:message key="137" /></label></div>
+				<div class="column data"><input type="text" wicket:id="address.email" class="input"/></div>
+			</div>
+		</div>
+	</form>
+</wicket:panel>
+</html>

Added: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.java?rev=1758654&view=auto
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.java (added)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/NicknameDialog.java Wed Aug 31 16:48:00 2016
@@ -0,0 +1,90 @@
+/*
+ * 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.room;
+
+import static org.apache.wicket.validation.validator.StringValidator.minimumLength;
+
+import java.util.Arrays;
+import java.util.List;
+
+import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.web.app.Application;
+import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.extensions.validation.validator.RfcCompliantEmailAddressValidator;
+import org.apache.wicket.markup.html.form.Form;
+import org.apache.wicket.markup.html.form.RequiredTextField;
+import org.apache.wicket.model.CompoundPropertyModel;
+import org.apache.wicket.model.Model;
+import org.apache.wicket.util.string.Strings;
+
+import com.googlecode.wicket.jquery.core.JQueryBehavior;
+import com.googlecode.wicket.jquery.core.Options;
+import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog;
+import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
+import com.googlecode.wicket.kendo.ui.panel.KendoFeedbackPanel;
+
+public class NicknameDialog extends AbstractFormDialog<User> {
+	private static final long serialVersionUID = 1L;
+	private final KendoFeedbackPanel feedback = new KendoFeedbackPanel("feedback", new Options("button", true));
+	private final DialogButton ok = new DialogButton("ok", Application.getString(54));
+	private final Form<User> form;
+
+	public NicknameDialog(String id, User u) {
+		super(id, Application.getString(1287));
+		add(form = new Form<>("form", new CompoundPropertyModel<>(u)));
+		form.add(feedback);
+		form.add(new RequiredTextField<String>("firstname").setLabel(Model.of(Application.getString(135))).add(minimumLength(4)));
+		form.add(new RequiredTextField<String>("lastname").setLabel(Model.of(Application.getString(136))).add(minimumLength(4)));
+		form.add(new RequiredTextField<String>("address.email").setLabel(Model.of(Application.getString(137))).add(RfcCompliantEmailAddressValidator.getInstance()));
+	}
+
+	@Override
+	public void onConfigure(JQueryBehavior behavior) {
+		super.onConfigure(behavior);
+		User u = form.getModelObject();
+		behavior.setOption("autoOpen", User.Type.external == u.getType() && Strings.isEmpty(u.getFirstname()) && Strings.isEmpty(u.getLastname()));
+		behavior.setOption("closeOnEscape", false);
+		behavior.setOption("dialogClass", Options.asString("no-close"));
+		behavior.setOption("resizable", false);
+	}
+
+	@Override
+	protected List<DialogButton> getButtons() {
+		return Arrays.asList(ok);
+	}
+
+	@Override
+	public DialogButton getSubmitButton() {
+		return ok;
+	}
+
+	@Override
+	public Form<?> getForm() {
+		return form;
+	}
+
+	@Override
+	protected void onError(AjaxRequestTarget target) {
+		target.add(feedback);
+	}
+
+	@Override
+	protected void onSubmit(AjaxRequestTarget target) {
+	}
+}

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html?rev=1758654&r1=1758653&r2=1758654&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html Wed Aug 31 16:48:00 2016
@@ -9,7 +9,7 @@
   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
@@ -40,5 +40,6 @@
 	<div wicket:id="access-denied"></div>
 	<div wicket:id="room-closed"></div>
 	<div wicket:id="wait-for-recording"></div>
+	<div wicket:id="nickname"></div>
 </wicket:panel>
 </html>

Modified: openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
URL: http://svn.apache.org/viewvc/openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java?rev=1758654&r1=1758653&r2=1758654&view=diff
==============================================================================
--- openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java (original)
+++ openmeetings/application/trunk/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java Wed Aug 31 16:48:00 2016
@@ -258,6 +258,11 @@ public class RoomPanel extends BasePanel
 		} else {
 			add(new WebMarkupContainer("wait-for-recording").setVisible(false));
 		}
+		if (room.isVisible()) {
+			add(new NicknameDialog("nickname", getClient().getUser()));
+		} else {
+			add(new WebMarkupContainer("nickname").setVisible(false));
+		}
 	}
 	
 	@Override