This is an automated email from the ASF dual-hosted git repository.
solomax pushed a commit to branch csp
in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/csp by this push:
new 4aee526 [OPENMEETINGS-2165] initial work on room
4aee526 is described below
commit 4aee526d1590ff10f483896749a061db1edde06f
Author: Maxim Solodovnik <[email protected]>
AuthorDate: Sun Feb 16 21:19:56 2020 +0700
[OPENMEETINGS-2165] initial work on room
---
.../web/admin/labels/AddLanguageDialog.java | 1 -
.../web/admin/users/PasswordDialog.java | 6 +-
.../openmeetings/web/admin/users/UsersPanel.java | 5 +-
.../openmeetings/web/common/InvitationDialog.java | 5 +-
.../apache/openmeetings/web/common/NameDialog.java | 5 +-
.../{OmButton.java => OmModalCloseButton.java} | 28 ++--
.../common/confirmation/ConfirmationDialog.java | 5 +-
.../web/common/tree/ConvertingErrorsDialog.java | 2 -
.../apache/openmeetings/web/pages/HashPage.java | 6 +-
.../web/pages/InvitationPasswordDialog.java | 1 +
.../apache/openmeetings/web/pages/ResetPage.java | 9 +-
.../web/pages/auth/ForgetPasswordDialog.java | 6 +-
.../web/pages/auth/RegisterDialog.java | 6 +-
.../openmeetings/web/pages/auth/SignInPage.java | 12 +-
.../openmeetings/web/room/EventDetailDialog.html | 4 +-
.../openmeetings/web/room/EventDetailDialog.java | 38 ++---
.../openmeetings/web/room/IconTextModal.java | 1 -
.../apache/openmeetings/web/room/RoomPanel.html | 4 +-
.../apache/openmeetings/web/room/RoomPanel.java | 2 +-
.../openmeetings/web/room/activities/activities.js | 2 +-
.../openmeetings/web/room/menu/ActionsSubMenu.java | 2 +-
.../web/{common => room/menu}/OmButton.java | 2 +-
.../openmeetings/web/room/menu/PollsSubMenu.java | 10 +-
.../openmeetings/web/room/menu/RoomMenuPanel.java | 1 -
.../web/room/menu/SipDialerDialog.java | 74 ++++------
.../web/room/poll/CreatePollDialog.html | 4 +-
.../web/room/poll/CreatePollDialog.java | 67 ++++-----
.../web/room/poll/PollResultsDialog.html | 6 +-
.../web/room/poll/PollResultsDialog.java | 163 ++++++++++-----------
.../openmeetings/web/room/poll/VoteDialog.html | 4 +-
.../openmeetings/web/room/poll/VoteDialog.java | 92 +++++-------
.../org/apache/openmeetings/web/room/raw-room.js | 39 ++---
.../openmeetings/web/room/raw-video-manager.js | 2 +-
.../apache/openmeetings/web/room/raw-video-util.js | 2 +-
.../org/apache/openmeetings/web/room/raw-video.js | 2 +-
.../openmeetings/web/room/sidebar/RoomSidebar.html | 39 +++--
.../openmeetings/web/room/sidebar/RoomSidebar.java | 4 +-
.../web/room/sidebar/UploadDialog.java | 5 +-
.../apache/openmeetings/web/user/AboutDialog.java | 2 -
.../web/user/InviteUserMessageDialog.java | 6 +-
.../web/user/InviteUserToRoomDialog.java | 7 +-
.../openmeetings/web/user/MessageDialog.java | 6 +-
.../openmeetings/web/user/UserInfoDialog.java | 6 +-
.../web/user/calendar/AppointmentDialog.java | 5 +-
.../web/user/calendar/CalendarDialog.java | 5 +-
.../apache/openmeetings/web/user/chat/raw-chat.js | 4 +-
.../dashboard/admin/AdminCleanupInfoDialog.java | 5 +-
.../web/user/profile/ChangePasswordDialog.java | 6 +-
openmeetings-web/src/main/webapp/css/raw-room.css | 71 +++++----
49 files changed, 355 insertions(+), 434 deletions(-)
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/AddLanguageDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/AddLanguageDialog.java
index 8dab3c2..0530e35 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/AddLanguageDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/labels/AddLanguageDialog.java
@@ -53,7 +53,6 @@ public class AddLanguageDialog extends Modal<String> {
@Override
protected void onInitialize() {
header(new ResourceModel("362"));
- setBackdrop(Backdrop.STATIC);
addButton(new BootstrapAjaxButton("button", new
ResourceModel("366"), form, Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/PasswordDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/PasswordDialog.java
index a6fa5a8..e29b71e 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/PasswordDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/PasswordDialog.java
@@ -21,6 +21,7 @@ package org.apache.openmeetings.web.admin.users;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
import org.apache.openmeetings.db.dao.user.UserDao;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
import org.apache.wicket.markup.html.form.Form;
@@ -34,7 +35,6 @@ import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxButt
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
public class PasswordDialog extends Modal<String> {
private static final long serialVersionUID = 1L;
@@ -56,8 +56,6 @@ public class PasswordDialog extends Modal<String> {
@Override
protected void onInitialize() {
header(new ResourceModel("537"));
- setCloseOnEscapeKey(true);
- setBackdrop(Backdrop.STATIC);
addButton(new BootstrapAjaxButton("button", new
ResourceModel("54"), form, Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
@@ -83,7 +81,7 @@ public class PasswordDialog extends Modal<String> {
}
}
}); // OK
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
add(form.add(feedback.setOutputMarkupId(true),
pass.setRequired(false).setLabel(new
ResourceModel("110")).setOutputMarkupPlaceholderTag(true).setOutputMarkupId(true)));
super.onInitialize();
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UsersPanel.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UsersPanel.java
index c83bcb3..a5286d2 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UsersPanel.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/users/UsersPanel.java
@@ -26,6 +26,7 @@ import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.web.admin.AdminBasePanel;
import org.apache.openmeetings.web.admin.SearchableDataView;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.common.PagedEntityListPanel;
import org.apache.openmeetings.web.data.DataViewContainer;
import org.apache.openmeetings.web.data.OmOrderByBorder;
@@ -41,9 +42,7 @@ import org.apache.wicket.markup.repeater.Item;
import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.spring.injection.annot.SpringBean;
-import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
import
de.agilecoders.wicket.core.markup.html.bootstrap.utilities.ColorBehavior;
@AuthorizeInstantiation({"Admin", "GroupAdmin"})
@@ -109,7 +108,7 @@ public class UsersPanel extends AdminBasePanel {
.withLabel(new ResourceModel("warn.nogroup"))
.withErrorIcon(ColorBehavior.Color.Warning)
.header(new ResourceModel("797"))
- .addButton(new ModalCloseButton(new
ResourceModel("54")).type(Buttons.Type.Outline_Secondary));
+ .addButton(OmModalCloseButton.of("54"));
form = new UserForm("form", listContainer,
getNewUserInstance(userDao.get(getUserId())), warning);
form.setNewVisible(true);
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/InvitationDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/InvitationDialog.java
index 4eeebcf..ee07f5c 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/InvitationDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/InvitationDialog.java
@@ -25,7 +25,6 @@ import org.apache.wicket.model.ResourceModel;
import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxButton;
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
public class InvitationDialog extends Modal<Invitation> {
private static final long serialVersionUID = 1L;
@@ -41,8 +40,6 @@ public class InvitationDialog extends Modal<Invitation> {
@Override
protected void onInitialize() {
header(new ResourceModel("213"));
- setCloseOnEscapeKey(true);
- setBackdrop(Backdrop.STATIC);
addButton(generate = new BootstrapAjaxButton("button", new
ResourceModel("1526"), form, Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
@@ -70,7 +67,7 @@ public class InvitationDialog extends Modal<Invitation> {
InvitationDialog.this.onClick(target,
InvitationForm.Action.SEND);
}
});
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
super.onInitialize();
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/NameDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/NameDialog.java
index a5092ab..8edfa86 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/NameDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/NameDialog.java
@@ -32,7 +32,6 @@ import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxButt
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
public abstract class NameDialog extends Modal<String> {
private static final long serialVersionUID = 1L;
@@ -54,10 +53,8 @@ public abstract class NameDialog extends Modal<String> {
@Override
protected void onInitialize() {
header(getTitle());
- setCloseOnEscapeKey(true);
- setBackdrop(Backdrop.STATIC);
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
addButton(new BootstrapAjaxButton("button", getAddBtnLabel(),
form, Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmButton.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmModalCloseButton.java
similarity index 61%
copy from
openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmButton.java
copy to
openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmModalCloseButton.java
index 9075d68..662b195 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmButton.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmModalCloseButton.java
@@ -18,27 +18,21 @@
*/
package org.apache.openmeetings.web.common;
-import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
+import org.apache.wicket.model.ResourceModel;
-import org.apache.wicket.ajax.AjaxEventBehavior;
-import org.apache.wicket.ajax.AjaxRequestTarget;
+import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
+import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
-import com.googlecode.wicket.jquery.ui.form.button.Button;
-
-public abstract class OmButton extends Button {
+public class OmModalCloseButton extends ModalCloseButton {
private static final long serialVersionUID = 1L;
- public OmButton(String id) {
- super(id);
- add(new AjaxEventBehavior(EVT_CLICK) {
- private static final long serialVersionUID = 1L;
-
- @Override
- protected void onEvent(AjaxRequestTarget target) {
- OmButton.this.onClick(target);
- }
- });
+ public static ModalCloseButton of() {
+ return of("lbl.cancel");
}
- public abstract void onClick(AjaxRequestTarget target);
+ public static ModalCloseButton of(String lblKey) {
+ ModalCloseButton btn = new ModalCloseButton(new
ResourceModel(lblKey)).type(Buttons.Type.Outline_Secondary);
+ btn.setOutputMarkupId(false);
+ return btn;
+ }
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmationDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmationDialog.java
index 092dbfd..8a125c0 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmationDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/confirmation/ConfirmationDialog.java
@@ -18,6 +18,7 @@
*/
package org.apache.openmeetings.web.common.confirmation;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.ResourceModel;
@@ -25,7 +26,6 @@ import org.apache.wicket.model.ResourceModel;
import
de.agilecoders.wicket.core.markup.html.bootstrap.behavior.CssClassNameAppender;
import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxLink;
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.TextContentModal;
import de.agilecoders.wicket.core.markup.html.bootstrap.image.IconType;
import
de.agilecoders.wicket.extensions.markup.html.bootstrap.icon.FontAwesome5IconType;
@@ -37,7 +37,6 @@ public abstract class ConfirmationDialog extends
TextContentModal {
public ConfirmationDialog(String id, IModel<String> title,
IModel<String> model) {
super(id, model);
header(title);
- setBackdrop(Backdrop.STATIC);
}
private BootstrapAjaxLink<String> getOkButton() {
@@ -71,7 +70,7 @@ public abstract class ConfirmationDialog extends
TextContentModal {
super.onInitialize();
add(new CssClassNameAppender("om-confirm-dialog"));
addButton(getOkButton());
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
}
protected abstract void onConfirm(AjaxRequestTarget target);
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/ConvertingErrorsDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/ConvertingErrorsDialog.java
index 560f4f5..cd8b0de 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/ConvertingErrorsDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/tree/ConvertingErrorsDialog.java
@@ -71,8 +71,6 @@ public class ConvertingErrorsDialog extends
Modal<BaseFileItem> {
@Override
protected void onInitialize() {
header(new ResourceModel("887"));
- setCloseOnEscapeKey(true);
- setBackdrop(Backdrop.STATIC);
size(Modal.Size.Large);
super.onInitialize();
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/HashPage.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/HashPage.java
index f25f015..c54df52 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/HashPage.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/HashPage.java
@@ -36,6 +36,7 @@ import org.apache.openmeetings.web.app.WebSession;
import org.apache.openmeetings.web.common.IUpdatable;
import org.apache.openmeetings.web.common.MainPanel;
import org.apache.openmeetings.web.common.OmAjaxClientInfoBehavior;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.common.OmWebSocketPanel;
import org.apache.openmeetings.web.room.IconTextModal;
import org.apache.openmeetings.web.room.NetTestPanel;
@@ -57,9 +58,6 @@ import
org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.spring.injection.annot.SpringBean;
import org.apache.wicket.util.string.StringValue;
-import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
-
public class HashPage extends BaseInitedPage implements IUpdatable {
private static final long serialVersionUID = 1L;
public static final String APP = "app";
@@ -209,7 +207,7 @@ public class HashPage extends BaseInitedPage implements
IUpdatable {
add(new IconTextModal("access-denied")
.withLabel(errorMsg)
.withErrorIcon()
- .addButton(new ModalCloseButton(new
ResourceModel("54")).type(Buttons.Type.Outline_Secondary))
+ .addButton(OmModalCloseButton.of("54"))
.header(new ResourceModel("invalid.hash"))
.show(error)
);
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/InvitationPasswordDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/InvitationPasswordDialog.java
index 12b67ba..351a602 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/InvitationPasswordDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/InvitationPasswordDialog.java
@@ -53,6 +53,7 @@ public class InvitationPasswordDialog extends
Modal<Invitation> {
@Override
protected void onInitialize() {
header(new ResourceModel("230"));
+ setCloseOnEscapeKey(false);
setBackdrop(Backdrop.STATIC);
password.add(new IValidator<String>(){
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/ResetPage.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/ResetPage.java
index 1aa0e58..b0630b9 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/ResetPage.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/ResetPage.java
@@ -21,16 +21,14 @@ package org.apache.openmeetings.web.pages;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.web.app.Application;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.pages.auth.ResetPasswordDialog;
import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.request.mapper.parameter.PageParameters;
import org.apache.wicket.spring.injection.annot.SpringBean;
-import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal.Backdrop;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.TextContentModal;
public class ResetPage extends BaseNotInitedPage {
@@ -54,9 +52,8 @@ public class ResetPage extends BaseNotInitedPage {
if (user != null) {
add(new ResetPasswordDialog("resetPassword",
user, resetInfo));
add(resetInfo.header(new ResourceModel("325"))
- .addButton(new
ModalCloseButton(new ResourceModel("54")).type(Buttons.Type.Outline_Secondary))
- .setUseCloseHandler(true)
- .setBackdrop(Backdrop.STATIC));
+
.addButton(OmModalCloseButton.of("54"))
+ .setUseCloseHandler(true));
return;
}
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
index 6f9a539..a540d73 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/ForgetPasswordDialog.java
@@ -30,6 +30,7 @@ import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.service.mail.template.ResetPasswordTemplate;
import org.apache.openmeetings.web.common.Captcha;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.pages.ResetPage;
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -59,7 +60,6 @@ import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxButt
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
public class ForgetPasswordDialog extends Modal<String> {
private static final Logger log =
LoggerFactory.getLogger(ForgetPasswordDialog.class);
@@ -93,14 +93,12 @@ public class ForgetPasswordDialog extends Modal<String> {
@Override
protected void onInitialize() {
header(new ResourceModel("312"));
- setCloseOnEscapeKey(true);
setUseCloseHandler(true);
- setBackdrop(Backdrop.STATIC);
addButton(new BootstrapAjaxButton("button", new
ResourceModel("317"), form, Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
}); // Send
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
add(form);
super.onInitialize();
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
index 8d34a3f..5cb41d3 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/RegisterDialog.java
@@ -31,6 +31,7 @@ import org.apache.openmeetings.db.entity.user.Address;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.web.app.WebSession;
import org.apache.openmeetings.web.common.Captcha;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.pages.PrivacyPage;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.form.AjaxButton;
@@ -55,7 +56,6 @@ import org.slf4j.LoggerFactory;
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
import
de.agilecoders.wicket.extensions.markup.html.bootstrap.spinner.SpinnerAjaxButton;
public class RegisterDialog extends Modal<String> {
@@ -91,12 +91,10 @@ public class RegisterDialog extends Modal<String> {
@Override
protected void onInitialize() {
header(new ResourceModel("113"));
- setCloseOnEscapeKey(true);
setUseCloseHandler(true);
- setBackdrop(Backdrop.STATIC);
addButton(new SpinnerAjaxButton("button", new
ResourceModel("121"), form, Buttons.Type.Outline_Primary)); // register
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
add(form);
add(new Label("register",
getString("121")).setRenderBodyOnly(true), new BookmarkablePageLink<>("link",
PrivacyPage.class));
reset(null);
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
index a99fa6b..b2497bb 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
@@ -56,6 +56,7 @@ import org.apache.openmeetings.db.entity.user.User.Type;
import org.apache.openmeetings.util.OmException;
import org.apache.openmeetings.web.app.Application;
import org.apache.openmeetings.web.app.WebSession;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.pages.BaseInitedPage;
import org.apache.openmeetings.web.room.IconTextModal;
import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -73,10 +74,7 @@ import org.slf4j.LoggerFactory;
import com.github.openjson.JSONException;
import com.github.openjson.JSONObject;
-import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal.Backdrop;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.TextContentModal;
public class SignInPage extends BaseInitedPage {
@@ -91,7 +89,7 @@ public class SignInPage extends BaseInitedPage {
setCloseOnEscapeKey(false);
show(true);
setUseCloseHandler(true);
- addButton(new ModalCloseButton(new
ResourceModel("54")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of("54"));
}
@Override
@@ -201,15 +199,13 @@ public class SignInPage extends BaseInitedPage {
r.setVisible(allowRegister()), forget,
kick.setVisible(WebSession.get().isKickedByAdmin()));
add(forgetInfoDialog
.header(new ResourceModel("312"))
- .addButton(new ModalCloseButton(new
ResourceModel("54")).type(Buttons.Type.Outline_Secondary))
+ .addButton(OmModalCloseButton.of("54"))
.setUseCloseHandler(true)
- .setBackdrop(Backdrop.STATIC)
);
add(registerInfoDialog
.header(new ResourceModel("235"))
- .addButton(new ModalCloseButton(new
ResourceModel("54")).type(Buttons.Type.Outline_Secondary))
+ .addButton(OmModalCloseButton.of("54"))
.setUseCloseHandler(true)
- .setBackdrop(Backdrop.STATIC)
);
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.html
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.html
index 31c0ad4..287c194 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.html
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.html
@@ -20,7 +20,7 @@
-->
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
-<wicket:panel>
+<wicket:extend>
<table class="w-100">
<tr>
<td><wicket:message key="165"/></td>
@@ -47,5 +47,5 @@
<td><span
wicket:id="owner.firstname"></span> <span
wicket:id="owner.lastname"></span></td>
</tr>
</table>
-</wicket:panel>
+</wicket:extend>
</html>
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.java
index 75b69cb..75a0148 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/EventDetailDialog.java
@@ -20,30 +20,30 @@ package org.apache.openmeetings.web.room;
import static org.apache.openmeetings.web.app.WebSession.getDateFormat;
-import java.util.Arrays;
-import java.util.List;
-
import org.apache.openmeetings.db.entity.calendar.Appointment;
-import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.wicket.markup.html.basic.Label;
import org.apache.wicket.model.CompoundPropertyModel;
import org.apache.wicket.model.ResourceModel;
-import com.googlecode.wicket.jquery.core.JQueryBehavior;
-import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractDialog;
-import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
+import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-public class EventDetailDialog extends AbstractDialog<Appointment> {
+public class EventDetailDialog extends Modal<Appointment> {
private static final long serialVersionUID = 1L;
public EventDetailDialog(String id, final Appointment a) {
- super(id, "", new CompoundPropertyModel<>(a), false);
+ super(id, new CompoundPropertyModel<>(a));
}
@Override
protected void onInitialize() {
+ header(new ResourceModel("815"));
+ setCloseOnEscapeKey(false);
+ setBackdrop(Backdrop.FALSE);
+ size(Size.Small);
+ show(true);
+
super.onInitialize();
- setTitle(new ResourceModel("815"));
add(new Label("title"));
add(new Label("description"));
add(new Label("owner.timeZoneId"));
@@ -51,22 +51,6 @@ public class EventDetailDialog extends
AbstractDialog<Appointment> {
add(new Label("end",
getDateFormat().format(getModelObject().getEnd())));
add(new Label("owner.firstname"));
add(new Label("owner.lastname"));
- }
-
- @Override
- public void onConfigure(JQueryBehavior behavior) {
- super.onConfigure(behavior);
- behavior.setOption("autoOpen", true);
- behavior.setOption("position", "{my: 'right top', at: 'right
bottom', of: '.room-block .menu' }");
- }
-
- @Override
- public void onClose(IPartialPageRequestHandler handler, DialogButton
button) {
- //no-op
- }
-
- @Override
- protected List<DialogButton> getButtons() {
- return Arrays.asList(new DialogButton("cancel", new
ResourceModel("lbl.cancel")));
+ addButton(OmModalCloseButton.of());
}
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/IconTextModal.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/IconTextModal.java
index e126182..eccc3fd 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/IconTextModal.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/IconTextModal.java
@@ -36,7 +36,6 @@ public class IconTextModal extends Modal<String> {
public IconTextModal(String id) {
super(id);
- setBackdrop(Backdrop.STATIC);
}
@Override
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html
index 56d5c2f..cb1f50a 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.html
@@ -21,7 +21,7 @@
<html xmlns:wicket="http://wicket.apache.org">
<wicket:panel>
<div class="room-block">
- <div class="container p-0 m-0" wicket:id="roomContainer">
+ <div class="room-container" wicket:id="roomContainer">
<div class="menu" wicket:id="menu"></div>
<div class="sidebar" wicket:id="sidebar"></div>
<div wicket:id="wb-area" class="wb-block">
@@ -29,7 +29,7 @@
<div class="wb-area"
wicket:id="whiteboard"></div>
</div>
</div>
- <div wicket:id="event-details"></div>
+ <div class="event-details" wicket:id="event-details"></div>
<div wicket:id="access-denied"></div>
<div wicket:id="room-closed"></div>
<div wicket:id="wait-recording"></div>
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
index 18a0bbd..94f4cd2 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
@@ -680,7 +680,7 @@ public class RoomPanel extends BasePanel {
@Override
public void cleanup(IPartialPageRequestHandler handler) {
if (eventDetail instanceof EventDetailDialog) {
- ((EventDetailDialog)eventDetail).close(handler, null);
+ ((EventDetailDialog)eventDetail).close(handler);
}
handler.add(getBasePage().getHeader().setVisible(true),
getMainPanel().getTopControls().setVisible(true));
if (r.isHidden(RoomElement.Chat)) {
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
index da947c8..8208f36 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/activities/activities.js
@@ -85,7 +85,7 @@ var Activities = function() {
return 'activity-' + id;
}
function _action(name, val) {
- activityAction($('.room-block .container').data('room-id'),
name, val);
+ activityAction($('.room-block
.room-container').data('room-id'), name, val);
}
function _remove(ids) {
for (let i = 0; i < ids.length; ++i) {
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/ActionsSubMenu.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/ActionsSubMenu.java
index 148ec6f..28e8bdb 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/ActionsSubMenu.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/ActionsSubMenu.java
@@ -114,7 +114,7 @@ public class ActionsSubMenu implements Serializable {
@Override
public void onClick(AjaxRequestTarget target) {
- sipDialer.open(target);
+ sipDialer.show(target);
}
};
downloadPngMenuItem = new
RoomMenuItem(mp.getString("download.png"), mp.getString("download.png")) {
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmButton.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/OmButton.java
similarity index 96%
rename from
openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmButton.java
rename to
openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/OmButton.java
index 9075d68..4c1d5c7 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmButton.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/OmButton.java
@@ -16,7 +16,7 @@
* specific language governing permissions and limitations
* under the License.
*/
-package org.apache.openmeetings.web.common;
+package org.apache.openmeetings.web.room.menu;
import static org.apache.openmeetings.web.common.BasePanel.EVT_CLICK;
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/PollsSubMenu.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/PollsSubMenu.java
index 80879ab..6193708 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/PollsSubMenu.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/PollsSubMenu.java
@@ -119,7 +119,7 @@ public class PollsSubMenu implements Serializable {
@Override
public void onClick(AjaxRequestTarget target) {
createPoll.updateModel(target);
- createPoll.open(target);
+ createPoll.show(target);
}
};
pollVoteMenuItem = new RoomMenuItem(mp.getString("32"),
mp.getString("1485"), false) {
@@ -130,7 +130,7 @@ public class PollsSubMenu implements Serializable {
RoomPoll rp =
pollDao.getByRoom(room.getRoom().getId());
if (rp != null) {
vote.updateModel(target, rp);
- vote.open(target);
+ vote.show(target);
}
}
};
@@ -140,7 +140,7 @@ public class PollsSubMenu implements Serializable {
@Override
public void onClick(AjaxRequestTarget target) {
pollResults.updateModel(target,
room.getClient().hasRight(Room.Right.moderator));
- pollResults.open(target);
+ pollResults.show(target);
}
};
mp.add(quickPollAction);
@@ -172,10 +172,10 @@ public class PollsSubMenu implements Serializable {
if (rp != null) {
vote.updateModel(handler, rp);
} else {
- vote.close(handler, null);
+ vote.close(handler);
}
if (createdBy != null && !getUserId().equals(createdBy)) {
- vote.open(handler);
+ vote.show(handler);
}
if (pollResults.isOpened()) {
pollResults.updateModel(handler,
room.getClient().hasRight(Room.Right.moderator));
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
index e6408a9..6f875b8 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/RoomMenuPanel.java
@@ -46,7 +46,6 @@ import org.apache.openmeetings.db.util.ws.TextRoomMessage;
import org.apache.openmeetings.web.app.ClientManager;
import org.apache.openmeetings.web.app.WebSession;
import org.apache.openmeetings.web.common.ImagePanel;
-import org.apache.openmeetings.web.common.OmButton;
import org.apache.openmeetings.web.common.menu.MenuPanel;
import org.apache.openmeetings.web.common.menu.RoomMenuItem;
import org.apache.openmeetings.web.room.OmTimerBehavior;
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/SipDialerDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/SipDialerDialog.java
index ae8f65d..eb31b18 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/SipDialerDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/menu/SipDialerDialog.java
@@ -18,10 +18,8 @@
*/
package org.apache.openmeetings.web.room.menu;
-import java.util.Arrays;
-import java.util.List;
-
import org.apache.openmeetings.db.dao.room.SipDao;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.room.RoomPanel;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.form.AjaxButton;
@@ -31,16 +29,14 @@ import org.apache.wicket.model.Model;
import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.spring.injection.annot.SpringBean;
-import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog;
-import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
-
+import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxButton;
+import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
+import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-public class SipDialerDialog extends AbstractFormDialog<String> {
+public class SipDialerDialog extends Modal<String> {
private static final long serialVersionUID = 1L;
private final NotificationPanel feedback = new
NotificationPanel("feedback");
- private DialogButton call;
- private DialogButton close;
private final Form<String> form = new Form<>("form", Model.of(""));
private final TextField<String> number = new TextField<>("number",
Model.of(""));
private final RoomPanel room;
@@ -48,60 +44,54 @@ public class SipDialerDialog extends
AbstractFormDialog<String> {
private SipDao sipDao;
public SipDialerDialog(String id, RoomPanel room) {
- super(id, "");
+ super(id);
this.room = room;
+ }
+
+ @Override
+ protected void onInitialize() {
+ header(new ResourceModel("1003"));
+ setCloseOnEscapeKey(false);
+ setBackdrop(Backdrop.STATIC);
+
AjaxButton ab = new AjaxButton("submit") { //FAKE button so
"submit-on-enter" works as expected
private static final long serialVersionUID = 1L;
@Override
protected void onSubmit(AjaxRequestTarget target) {
- SipDialerDialog.this.onSubmit(target, call);
+ SipDialerDialog.this.onSubmit(target);
}
@Override
protected void onError(AjaxRequestTarget target) {
- SipDialerDialog.this.onError(target, call);
+ SipDialerDialog.this.onError(target);
}
};
form.setDefaultButton(ab);
add(feedback.setOutputMarkupId(true), form.add(number, ab));
- }
-
- @Override
- protected void onInitialize() {
- setTitle(new ResourceModel("1003"));
- call = new DialogButton("call", getString("1448"));
- close = new DialogButton("close", getString("85"));
- super.onInitialize();
- }
-
- @Override
- public int getWidth() {
- return 300;
- }
-
- @Override
- protected List<DialogButton> getButtons() {
- return Arrays.asList(call, close);
- }
+ addButton(new BootstrapAjaxButton("button", new
ResourceModel("1448"), form, Buttons.Type.Outline_Primary) {
+ private static final long serialVersionUID = 1L;
- @Override
- public DialogButton getSubmitButton() {
- return call;
- }
+ @Override
+ protected void onSubmit(AjaxRequestTarget target) {
+ SipDialerDialog.this.onSubmit(target);
+ }
- @Override
- public Form<?> getForm() {
- return form;
+ @Override
+ protected void onError(AjaxRequestTarget target) {
+ SipDialerDialog.this.onError(target);
+ }
+ }); // call
+ addButton(OmModalCloseButton.of("85"));
+ super.onInitialize();
}
- @Override
- protected void onError(AjaxRequestTarget target, DialogButton btn) {
+ protected void onError(AjaxRequestTarget target) {
target.add(feedback);
}
- @Override
- protected void onSubmit(AjaxRequestTarget target, DialogButton btn) {
+ protected void onSubmit(AjaxRequestTarget target) {
sipDao.joinToConfCall(number.getModelObject(), room.getRoom());
+ // close ?
}
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.html
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.html
index 2f4e057..b382aeb 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.html
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.html
@@ -20,7 +20,7 @@
-->
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
-<wicket:panel>
+<wicket:extend>
<form wicket:id="form">
<table>
<tr>
@@ -44,5 +44,5 @@
</table>
<div wicket:id="feedback"></div>
</form>
-</wicket:panel>
+</wicket:extend>
</html>
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java
index 8914cf5..61391d7 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/CreatePollDialog.java
@@ -22,7 +22,6 @@ import static
org.apache.openmeetings.core.util.WebSocketHelper.sendRoom;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
import java.util.Arrays;
-import java.util.List;
import org.apache.openmeetings.db.dao.room.PollDao;
import org.apache.openmeetings.db.dao.room.RoomDao;
@@ -31,6 +30,7 @@ import org.apache.openmeetings.db.entity.room.RoomPoll;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.db.util.ws.RoomMessage;
import org.apache.openmeetings.web.common.MainPanel;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.markup.html.form.ChoiceRenderer;
import org.apache.wicket.markup.html.form.DropDownChoice;
@@ -42,17 +42,15 @@ import org.apache.wicket.model.IModel;
import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.spring.injection.annot.SpringBean;
-import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog;
-import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
-
+import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxButton;
+import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
+import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-public class CreatePollDialog extends AbstractFormDialog<RoomPoll> {
+public class CreatePollDialog extends Modal<RoomPoll> {
private static final long serialVersionUID = 1L;
- private DialogButton create;
- private DialogButton cancel;
private final Long roomId;
- private final PollForm form;
+ private PollForm form;
private final NotificationPanel feedback = new
NotificationPanel("feedback");
@SpringBean
private RoomDao roomDao;
@@ -62,16 +60,34 @@ public class CreatePollDialog extends
AbstractFormDialog<RoomPoll> {
private PollDao pollDao;
public CreatePollDialog(String id, Long roomId) {
- super(id, "", new CompoundPropertyModel<>(new RoomPoll()));
+ super(id, new CompoundPropertyModel<>(new RoomPoll()));
this.roomId = roomId;
- add(form = new PollForm("form", getModel()));
}
@Override
protected void onInitialize() {
- getTitle().setObject(getString("18"));
- create = new DialogButton("create", getString("22"));
- cancel = new DialogButton("cancel", getString("lbl.cancel"));
+ header(new ResourceModel("18"));
+ setCloseOnEscapeKey(false);
+ setBackdrop(Backdrop.STATIC);
+
+ add(form = new PollForm("form", getModel()));
+ addButton(new BootstrapAjaxButton("button", new
ResourceModel("22"), form, Buttons.Type.Outline_Primary) {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected void onSubmit(AjaxRequestTarget target) {
+ pollDao.close(roomId);
+ pollDao.update(form.getModelObject());
+ sendRoom(new RoomMessage(roomId,
findParent(MainPanel.class).getClient(), RoomMessage.Type.pollCreated));
+ close(target);
+ }
+
+ @Override
+ protected void onError(AjaxRequestTarget target) {
+ target.add(feedback);
+ }
+ }); // create
+ addButton(OmModalCloseButton.of());
super.onInitialize();
}
@@ -86,33 +102,10 @@ public class CreatePollDialog extends
AbstractFormDialog<RoomPoll> {
target.add(form);
}
- @Override
- protected List<DialogButton> getButtons() {
- return Arrays.asList(create, cancel);
- }
-
- @Override
- public DialogButton getSubmitButton() {
- return create;
- }
-
- @Override
- public PollForm getForm() {
+ PollForm getForm() {
return form;
}
- @Override
- protected void onError(AjaxRequestTarget target, DialogButton btn) {
- target.add(feedback);
- }
-
- @Override
- protected void onSubmit(AjaxRequestTarget target, DialogButton btn) {
- pollDao.close(roomId);
- pollDao.update(form.getModelObject());
- sendRoom(new RoomMessage(roomId,
findParent(MainPanel.class).getClient(), RoomMessage.Type.pollCreated));
- }
-
class PollForm extends Form<RoomPoll> {
private static final long serialVersionUID = 1L;
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.html
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.html
index 26fc35f..4d04c14 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.html
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.html
@@ -20,7 +20,7 @@
-->
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
-<wicket:panel>
+<wicket:extend>
<form wicket:id="selForm">
<table class="w-100">
<tr>
@@ -47,7 +47,5 @@
</tr>
</table>
</form>
- <div wicket:id="closeConfirm"></div>
- <div wicket:id="deleteConfirm"></div>
-</wicket:panel>
+</wicket:extend>
</html>
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.java
index 4857572..77b8cb8 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/PollResultsDialog.java
@@ -20,6 +20,7 @@ package org.apache.openmeetings.web.room.poll;
import static org.apache.openmeetings.core.util.WebSocketHelper.sendRoom;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
+import static
org.apache.openmeetings.web.common.confirmation.ConfirmableAjaxBorder.newOkCancelDangerConfirm;
import java.util.ArrayList;
import java.util.Arrays;
@@ -31,6 +32,7 @@ import org.apache.openmeetings.db.entity.room.RoomPoll;
import org.apache.openmeetings.db.entity.room.RoomPollAnswer;
import org.apache.openmeetings.db.util.ws.RoomMessage;
import org.apache.openmeetings.web.common.MainPanel;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
@@ -43,6 +45,7 @@ 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.model.Model;
+import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.request.resource.JavaScriptResourceReference;
import org.apache.wicket.spring.injection.annot.SpringBean;
import org.wicketstuff.jqplot.behavior.JqPlotBehavior;
@@ -58,29 +61,25 @@ import org.wicketstuff.jqplot.lib.elements.Highlighter;
import org.wicketstuff.jqplot.lib.elements.Location;
import org.wicketstuff.jqplot.lib.elements.RendererOptions;
-import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractDialog;
-import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
-import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButtons;
-import com.googlecode.wicket.jquery.ui.widget.dialog.DialogIcon;
-import com.googlecode.wicket.jquery.ui.widget.dialog.MessageDialog;
+import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxLink;
+import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
+import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
+import
de.agilecoders.wicket.extensions.markup.html.bootstrap.icon.FontAwesome5IconType;
/**
* @author solomax
*
*/
-public class PollResultsDialog extends AbstractDialog<RoomPoll> {
+public class PollResultsDialog extends Modal<RoomPoll> {
private static final long serialVersionUID = 1L;
private final WebMarkupContainer chartDiv = new
WebMarkupContainer("chart");
private final Long roomId;
- private final PollSelectForm selForm;
- private final PollResultsForm dispForm;
- private DialogButton cancel;
- private DialogButton close;
- private DialogButton delete;
- private DialogButton clone;
+ private PollSelectForm selForm;
+ private PollResultsForm dispForm;
+ private BootstrapAjaxLink<String> close;
+ private BootstrapAjaxLink<String> delete;
+ private BootstrapAjaxLink<String> clone;
private boolean moderator = false;
- private MessageDialog closeConfirm;
- private MessageDialog deleteConfirm;
private boolean opened = false;
private final CreatePollDialog createPoll;
@SpringBean
@@ -89,61 +88,74 @@ public class PollResultsDialog extends
AbstractDialog<RoomPoll> {
private UserDao userDao;
public PollResultsDialog(String id, CreatePollDialog createPoll, Long
_roomId) {
- super(id, "");
+ super(id);
this.roomId = _roomId;
this.createPoll = createPoll;
- add(selForm = new PollSelectForm("selForm"));
- add(dispForm = new PollResultsForm("dispForm"));
}
@Override
protected void onInitialize() {
- getTitle().setObject(getString("37"));
- cancel = new DialogButton("cancel", getString("lbl.cancel"));
- close = new DialogButton("close", getString("1418"));
- delete = new DialogButton("delete", getString("1420"));
- clone = new DialogButton("clone", getString("poll.clone"));
- add(closeConfirm = new MessageDialog("closeConfirm",
getString("1418"), getString("1419"), DialogButtons.YES_NO, DialogIcon.WARN) {
+ header(new ResourceModel("37"));
+ setCloseOnEscapeKey(false);
+ setBackdrop(Backdrop.STATIC);
+ setUseCloseHandler(true);
+
+ add(selForm = new PollSelectForm("selForm"));
+ add(dispForm = new PollResultsForm("dispForm"));
+ addButton(OmModalCloseButton.of());
+ addButton(close = new BootstrapAjaxLink<>("button", null,
Buttons.Type.Outline_Danger, new ResourceModel("1418")) {
private static final long serialVersionUID = 1L;
@Override
- public void onClose(IPartialPageRequestHandler handler,
DialogButton button) {
- if(button != null && button.match(YES)) {
- Long id =
dispForm.getModelObject().getId();
- pollDao.close(roomId);
- selForm.updateModel(handler);
-
- RoomPoll p = pollDao.get(id);
- selForm.select.setModelObject(p);
- dispForm.updateModel(p, true, handler);
- sendRoom(new RoomMessage(roomId,
findParent(MainPanel.class).getClient(), RoomMessage.Type.pollUpdated));
- }
+ public void onClick(AjaxRequestTarget target) {
+ Long id = dispForm.getModelObject().getId();
+ pollDao.close(roomId);
+ selForm.updateModel(target);
+
+ RoomPoll p = pollDao.get(id);
+ selForm.select.setModelObject(p);
+ dispForm.updateModel(p, true, target);
+ sendRoom(new RoomMessage(roomId,
findParent(MainPanel.class).getClient(), RoomMessage.Type.pollUpdated));
+ close(target);
}
});
- add(deleteConfirm = new MessageDialog("deleteConfirm",
getString("1420"), getString("1421"), DialogButtons.YES_NO, DialogIcon.WARN) {
+
close.setIconType(FontAwesome5IconType.times_s).add(newOkCancelDangerConfirm(this,
getString("1419")));
+
close.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true);
+ addButton(delete = new BootstrapAjaxLink<>("button", null,
Buttons.Type.Outline_Danger, new ResourceModel("1420")) {
private static final long serialVersionUID = 1L;
@Override
- public void onClose(IPartialPageRequestHandler handler,
DialogButton button) {
- if(button != null && button.match(YES)) {
-
pollDao.delete(dispForm.getModelObject());
- selForm.updateModel(handler);
-
dispForm.updateModel(selForm.select.getModelObject(), true, handler);
- sendRoom(new RoomMessage(roomId,
findParent(MainPanel.class).getClient(), RoomMessage.Type.pollUpdated));
- }
+ public void onClick(AjaxRequestTarget target) {
+ pollDao.delete(dispForm.getModelObject());
+ selForm.updateModel(target);
+
dispForm.updateModel(selForm.select.getModelObject(), true, target);
+ sendRoom(new RoomMessage(roomId,
findParent(MainPanel.class).getClient(), RoomMessage.Type.pollUpdated));
+ close(target);
}
});
- super.onInitialize();
- }
-
- @Override
- public int getWidth() {
- return 500;
- }
+
delete.setIconType(FontAwesome5IconType.times_s).add(newOkCancelDangerConfirm(this,
getString("1421")));
+
delete.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true);
+ addButton(clone = new BootstrapAjaxLink<>("button", null,
Buttons.Type.Outline_Danger, new ResourceModel("poll.clone")) {
+ private static final long serialVersionUID = 1L;
- @Override
- protected List<DialogButton> getButtons() {
- return Arrays.asList(clone, delete, close, cancel);
+ @Override
+ public void onClick(AjaxRequestTarget target) {
+ RoomPoll rp = dispForm.getModelObject();
+ RoomPoll nrp = new RoomPoll();
+ nrp.setCreator(userDao.get(getUserId()));
+ nrp.setName(rp.getName());
+ nrp.setQuestion(rp.getQuestion());
+ nrp.setType(rp.getType());
+ nrp.setRoom(rp.getRoom());
+ createPoll.setModelObject(nrp);
+ createPoll.setModelObject(nrp);
+ target.add(createPoll.getForm());
+ createPoll.show(target);
+ close(target);
+ }
+ });
+
clone.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true);
+ super.onInitialize();
}
public void updateModel(IPartialPageRequestHandler target, boolean
moderator) {
@@ -198,38 +210,15 @@ public class PollResultsDialog extends
AbstractDialog<RoomPoll> {
}
@Override
- public void onClick(AjaxRequestTarget target, DialogButton button) {
- if (close.equals(button)) {
- closeConfirm.open(target);
- return;
- } else if (delete.equals(button)) {
- deleteConfirm.open(target);
- return;
- } else if (moderator && clone.equals(button)) {
- RoomPoll rp = dispForm.getModelObject();
- RoomPoll nrp = new RoomPoll();
- nrp.setCreator(userDao.get(getUserId()));
- nrp.setName(rp.getName());
- nrp.setQuestion(rp.getQuestion());
- nrp.setType(rp.getType());
- nrp.setRoom(rp.getRoom());
- createPoll.setModelObject(nrp);
- createPoll.getForm().setModelObject(nrp);
- target.add(createPoll.getForm());
- createPoll.open(target);
- }
- super.onClick(target, button);
- }
-
- @Override
- protected void onOpen(IPartialPageRequestHandler handler) {
- super.onOpen(handler);
+ public Modal<RoomPoll> show(IPartialPageRequestHandler handler) {
opened = true;
+ return super.show(handler);
}
@Override
- public void onClose(IPartialPageRequestHandler handler, DialogButton
button) {
+ public void onClose(IPartialPageRequestHandler handler) {
opened = false;
+ super.onClose(handler);
}
public boolean isOpened() {
@@ -289,10 +278,15 @@ public class PollResultsDialog extends
AbstractDialog<RoomPoll> {
private class PollSelectForm extends Form<RoomPoll> {
private static final long serialVersionUID = 1L;
- private final DropDownChoice<RoomPoll> select;
+ private DropDownChoice<RoomPoll> select;
PollSelectForm(String id) {
super(id);
+ }
+
+ @Override
+ protected void onInitialize() {
+ super.onInitialize();
add((select = new DropDownChoice<>("polls",
Model.of((RoomPoll)null), new ArrayList<RoomPoll>(), new
ChoiceRenderer<RoomPoll>() {
private static final long serialVersionUID = 1L;
@@ -343,11 +337,11 @@ public class PollResultsDialog extends
AbstractDialog<RoomPoll> {
PollResultsForm(String id) {
super(id, Model.of((RoomPoll)null));
setOutputMarkupId(true);
- add(chartDiv.setOutputMarkupId(true));
}
@Override
protected void onInitialize() {
+ add(chartDiv.setOutputMarkupId(true));
chartSimple = getString("1414");
chartPie = getString("1415");
add(name, question, count);
@@ -369,9 +363,10 @@ public class PollResultsDialog extends
AbstractDialog<RoomPoll> {
question.setDefaultModelObject(poll == null ? "" :
poll.getQuestion());
count.setDefaultModelObject(poll == null ? 0 :
poll.getAnswers().size());
handler.add(this);
- close.setVisible(moderator && (poll != null &&
!poll.isArchived()), handler);
- clone.setVisible(moderator && (poll != null &&
poll.isArchived()), handler);
- delete.setVisible(moderator, handler);
+ close.setVisible(moderator && (poll != null &&
!poll.isArchived()));
+ clone.setVisible(moderator && (poll != null &&
poll.isArchived()));
+ delete.setVisible(moderator);
+ handler.add(close, clone, delete);
if (redraw) {
redraw(handler);
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.html
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.html
index 48b38e0..5c294b1 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.html
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.html
@@ -20,7 +20,7 @@
-->
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
-<wicket:panel>
+<wicket:extend>
<form wicket:id="form">
<table>
<tr>
@@ -46,5 +46,5 @@
</table>
<div wicket:id="feedback"></div>
</form>
-</wicket:panel>
+</wicket:extend>
</html>
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java
index dd60495..220a8cb 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/poll/VoteDialog.java
@@ -32,6 +32,7 @@ import org.apache.openmeetings.db.entity.room.RoomPollAnswer;
import org.apache.openmeetings.db.entity.user.User;
import org.apache.openmeetings.db.util.ws.RoomMessage;
import org.apache.openmeetings.web.common.MainPanel;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.wicket.Component;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
@@ -44,23 +45,22 @@ import org.apache.wicket.markup.html.form.RadioGroup;
import org.apache.wicket.model.CompoundPropertyModel;
import org.apache.wicket.model.IModel;
import org.apache.wicket.model.Model;
+import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.spring.injection.annot.SpringBean;
-import com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog;
-import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
-
+import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxButton;
+import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
+import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
/**
* @author solomax
*
*/
-public class VoteDialog extends AbstractFormDialog<RoomPollAnswer> {
+public class VoteDialog extends Modal<RoomPollAnswer> {
private static final long serialVersionUID = 1L;
private static final List<Integer> answers = Arrays.asList(1, 2, 3, 4,
5, 6, 7, 8, 9, 10);
private PollAnswerForm form;
- private DialogButton vote;
- private DialogButton cancel;
private final NotificationPanel feedback = new
NotificationPanel("feedback");
private final IModel<String> user = Model.of((String)null);
@SpringBean
@@ -69,15 +69,38 @@ public class VoteDialog extends
AbstractFormDialog<RoomPollAnswer> {
private PollDao pollDao;
public VoteDialog(String id) {
- super(id, "");
+ super(id);
}
@Override
protected void onInitialize() {
- getTitle().setObject(getString("18"));
+ header(new ResourceModel("18"));
+ setCloseOnEscapeKey(false);
+ setBackdrop(Backdrop.STATIC);
+
add(form = new PollAnswerForm("form", new
CompoundPropertyModel<>(new RoomPollAnswer())));
- vote = new DialogButton("vote", getString("32"));
- cancel = new DialogButton("cancel", getString("lbl.cancel"));
+ addButton(new BootstrapAjaxButton("button", new
ResourceModel("32"), form, Buttons.Type.Outline_Primary) {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected void onSubmit(AjaxRequestTarget target) {
+ RoomPollAnswer a = form.getModelObject();
+ Long roomId = a.getRoomPoll().getRoom().getId();
+ if (pollDao.notVoted(roomId, getUserId())) {
+ a.setVoteDate(new Date());
+ a.getRoomPoll().getAnswers().add(a);
+ pollDao.update(a.getRoomPoll());
+ }
+ sendRoom(new RoomMessage(roomId,
findParent(MainPanel.class).getClient(), RoomMessage.Type.pollUpdated));
+ close(target);
+ }
+
+ @Override
+ protected void onError(AjaxRequestTarget target) {
+ target.add(feedback);
+ }
+ }); // vote
+ addButton(OmModalCloseButton.of());
super.onInitialize();
}
@@ -99,50 +122,6 @@ public class VoteDialog extends
AbstractFormDialog<RoomPollAnswer> {
}
@Override
- protected List<DialogButton> getButtons() {
- return Arrays.asList(vote, cancel);
- }
-
- /* (non-Javadoc)
- * @see
com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog#getSubmitButton()
- */
- @Override
- public DialogButton getSubmitButton() {
- return vote;
- }
-
- /* (non-Javadoc)
- * @see
com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog#getForm()
- */
- @Override
- public PollAnswerForm getForm() {
- return form;
- }
-
- /* (non-Javadoc)
- * @see
com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog#onError(org.apache.wicket.ajax.AjaxRequestTarget)
- */
- @Override
- protected void onError(AjaxRequestTarget target, DialogButton btn) {
- target.add(feedback);
- }
-
- /* (non-Javadoc)
- * @see
com.googlecode.wicket.jquery.ui.widget.dialog.AbstractFormDialog#onSubmit(org.apache.wicket.ajax.AjaxRequestTarget)
- */
- @Override
- protected void onSubmit(AjaxRequestTarget target, DialogButton btn) {
- RoomPollAnswer a = form.getModelObject();
- Long roomId = a.getRoomPoll().getRoom().getId();
- if (pollDao.notVoted(roomId, getUserId())) {
- a.setVoteDate(new Date());
- a.getRoomPoll().getAnswers().add(a);
- pollDao.update(a.getRoomPoll());
- }
- sendRoom(new RoomMessage(roomId,
findParent(MainPanel.class).getClient(), RoomMessage.Type.pollUpdated));
- }
-
- @Override
protected void onDetach() {
user.detach();
super.onDetach();
@@ -155,6 +134,11 @@ public class VoteDialog extends
AbstractFormDialog<RoomPollAnswer> {
PollAnswerForm(String id, IModel<RoomPollAnswer> model) {
super(id, model);
+ }
+
+ @Override
+ protected void onInitialize() {
+ super.onInitialize();
add(feedback.setOutputMarkupId(true));
add(new Label("user", user));
add(new Label("roomPoll.question"));
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-room.js
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-room.js
index e541e8c..264be6a 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-room.js
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-room.js
@@ -6,38 +6,25 @@ var Room = (function() {
function _init(_options) {
options = _options;
window.WbArea = options.interview ? InterviewWbArea() :
DrawWbArea();
- const menu = $('.room-block .container .menu');
+ const menu = $('.room-block .room-container .menu');
activities = $('#activities');
sb = $('.room-block .sidebar');
- _sbAddResizable();
- dock = sb.find('.btn-dock').button({
- icon: "ui-icon icon-undock"
- , showLabel: false
- }).click(function() {
+ dock = sb.find('.btn-dock').click(function() {
const offset = parseInt(sb.css(sbSide));
if (offset < 0) {
sb.removeClass('closed');
}
- dock.button('option', 'disabled', true);
+ dock.prop('disabled', true);
const props = {};
props[sbSide] = offset < 0 ? '0px' : (-sb.width() + 45)
+ 'px';
sb.animate(props, 1500
, function() {
- dock.button('option', 'disabled', false)
- .button('option', 'icon',
'ui-icon ' + (offset < 0 ? 'icon-undock' : 'icon-dock'));
- if (offset < 0) {
- dock.attr('title',
dock.data('ttl-undock'));
- _sbAddResizable();
- } else {
- dock.attr('title',
dock.data('ttl-dock'));
-
sb.addClass('closed').resizable('destroy');
- }
+ dock.prop('disabled', false);
+ __dockSetMode(offset < 0);
_setSize();
});
});
- dock.addClass(Settings.isRtl ? 'align-left' :
'align-right').attr('title', dock.data('ttl-undock'))
- .button('option', 'label', dock.data('ttl-undock'))
- .button('refresh');
+ __dockSetMode(true);
menuHeight = menu.length === 0 ? 0 : menu.height();
VideoManager.init();
if (typeof(Activities) !== 'undefined') {
@@ -46,6 +33,20 @@ var Room = (function() {
Sharer.init();
_setSize();
}
+ function __dockSetMode(mode) {
+ const icon = dock.find('i').removeClass('icon-dock
icon-undock');
+ if (mode) {
+ icon.addClass('icon-undock');
+ dock.attr('title', dock.data('ttl-undock'))
+ .find('.sr-only').text(dock.data('ttl-undock'));
+ _sbAddResizable();
+ } else {
+ icon.addClass('icon-dock');
+ dock.attr('title', dock.data('ttl-dock'))
+ .find('.sr-only').text(dock.data('ttl-dock'));
+ sb.addClass('closed').resizable('destroy');
+ }
+ }
function _getSelfAudioClient() {
const vw = $('#video' + Room.getOptions().uid);
if (vw.length > 0) {
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video-manager.js
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video-manager.js
index 8b64046..efd00d1 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video-manager.js
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video-manager.js
@@ -128,7 +128,7 @@ var VideoManager = (function() {
function _init() {
Wicket.Event.subscribe('/websocket/message', _onWsMessage);
VideoSettings.init(Room.getOptions());
- share = $('.room-block
.container').find('.icon.shared.ui-button');
+ share = $('.room-block
.room-container').find('.icon.shared.ui-button');
inited = true;
}
function _update(c) {
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video-util.js
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video-util.js
index 36689ad..191573c 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video-util.js
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video-util.js
@@ -143,7 +143,7 @@ var VideoUtil = (function() {
const perm = $('#ask-permission');
if (undefined === perm.dialog('instance')) {
perm.data('callbacks', []).dialog({
- appendTo: '.room-block .container'
+ appendTo: '.room-block .room-container'
, autoOpen: true
, buttons: [
{
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video.js
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video.js
index 379b726..c320399 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video.js
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/raw-video.js
@@ -251,7 +251,7 @@ var Video = (function() {
area.append($('<div class="pod"></div>').attr('id',
contId));
WbArea.updateAreaClass();
} else {
- contSel = '.room-block .container';
+ contSel = '.room-block .room-container';
}
$(contSel).append(OmUtil.tmpl('#user-video', _id)
.attr('title', name)
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.html
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.html
index 278c558..3333f15 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.html
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.html
@@ -22,31 +22,38 @@
<wicket:panel>
<div id="busy-indicator"></div>
<div class="tabs" id="room-sidebar-tabs">
- <ul>
- <li>
- <a href="#room-sidebar-tab-users"
class="om-icon big tab user" wicket:message="title:398">
- <span class="label"><wicket:message
key="398"/> </span><span wicket:id="user-count" class="badge">42</span>
+ <ul class="nav nav-tabs" role="tablist">
+ <li class="nav-item">
+ <a href="#room-sidebar-tab-users"
class="nav-link active om-icon big tab user" id="room-sidebar-users-tab"
data-toggle="tab" role="tab" aria-controls="room-sidebar-tab-users"
wicket:message="title:398">
+ <i class="fas fa-users"></i>
+ <span class="label"><wicket:message
key="398"/> </span><span wicket:id="user-count" class="badge
badge-info">42</span>
</a>
</li>
- <li wicket:enclosure="file-tab">
- <a href="#room-sidebar-tab-files"
class="om-icon big tab file" wicket:message="title:245" wicket:id="file-tab">
+ <li class="nav-item" wicket:enclosure="file-tab">
+ <a href="#room-sidebar-tab-files"
class="nav-link om-icon big tab file" id="room-sidebar-files-tab"
data-toggle="tab" role="tab" aria-controls="room-sidebar-tab-files"
wicket:message="title:245" wicket:id="file-tab">
+ <i class="fas fa-folder"></i>
<span class="label"><wicket:message
key="245"/></span>
</a>
</li>
- <li class="btn-dock"
wicket:message="data-ttl-dock:label.dock.panel,data-ttl-undock:label.undock.panel"></li>
+ <li class="btn-dock btn btn-outline-secondary"
wicket:message="data-ttl-dock:label.dock.panel,data-ttl-undock:label.undock.panel">
+ <i class="fas"></i>
+ <span class="sr-only"></span>
+ </li>
</ul>
- <div id="room-sidebar-tab-users">
- <div wicket:id="icons" class="header"></div>
- <div class="user-list clear"> <!-- auto-scrollable -->
- <div wicket:id="user-list"> <!-- content -->
- <div wicket:id="user" class="user entry
ui-corner-all ui-widget-content">
- <div wicket:id="user"></div>
+ <div class="tab-content">
+ <div id="room-sidebar-tab-users" class="tab-pane fade
show active" role="tabpanel" aria-labelledby="room-sidebar-users-tab">
+ <div wicket:id="icons" class="header"></div>
+ <div class="user-list clear"> <!--
auto-scrollable -->
+ <div wicket:id="user-list"> <!--
content -->
+ <div wicket:id="user"
class="user entry ui-corner-all ui-widget-content">
+ <div
wicket:id="user"></div>
+ </div>
</div>
</div>
</div>
- </div>
- <div id="room-sidebar-tab-files" wicket:enclosure="tree">
- <div class="file-list h-100" wicket:id="tree"></div>
+ <div id="room-sidebar-tab-files" class="tab-pane fade"
role="tabpanel" aria-labelledby="room-sidebar-files-tab"
wicket:enclosure="tree">
+ <div class="file-list h-100"
wicket:id="tree"></div>
+ </div>
</div>
</div>
<div wicket:id="activities"></div>
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
index b2d9b56..249f12f 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/RoomSidebar.java
@@ -65,7 +65,6 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.github.openjson.JSONObject;
-import com.googlecode.wicket.jquery.ui.JQueryUIBehavior;
public class RoomSidebar extends Panel {
private static final long serialVersionUID = 1L;
@@ -182,7 +181,6 @@ public class RoomSidebar extends Panel {
});
add(upload = new UploadDialog("upload", room, roomFiles));
updateShowFiles(null);
- add(new JQueryUIBehavior("#room-sidebar-tabs", "tabs"));
add(activities = new ActivitiesPanel("activities", room));
}
@@ -225,7 +223,7 @@ public class RoomSidebar extends Panel {
}
public void setFilesActive(IPartialPageRequestHandler handler) {
-
handler.appendJavaScript("$('#room-sidebar-tabs').tabs('option', 'active',
1);");
+
handler.appendJavaScript("$('#room-sidebar-files-tab').tab('show');");
}
public void addActivity(Activity a, IPartialPageRequestHandler handler)
{
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
index 8ca54c4..c147201 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/sidebar/UploadDialog.java
@@ -33,6 +33,7 @@ import org.apache.openmeetings.db.entity.file.BaseFileItem;
import org.apache.openmeetings.db.entity.file.FileItem;
import org.apache.openmeetings.util.process.ProcessResult;
import org.apache.openmeetings.util.process.ProcessResultList;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.room.RoomPanel;
import org.apache.openmeetings.web.util.ThreadHelper;
import org.apache.openmeetings.web.util.upload.BootstrapFileUploadBehavior;
@@ -63,7 +64,6 @@ import
de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
import
de.agilecoders.wicket.core.markup.html.bootstrap.components.progress.UpdatableProgressBar;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
import
de.agilecoders.wicket.core.markup.html.bootstrap.utilities.BackgroundColorBehavior;
import
de.agilecoders.wicket.extensions.markup.html.bootstrap.spinner.SpinnerAjaxButton;
@@ -149,6 +149,7 @@ public class UploadDialog extends Modal<String> {
@Override
protected void onInitialize() {
header(new ResourceModel("upload.dlg.choose.title"));
+ setCloseOnEscapeKey(false);
setBackdrop(Backdrop.STATIC);
add(form.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true));
@@ -206,7 +207,7 @@ public class UploadDialog extends Modal<String> {
}
});
upload.setEnabled(false);
- addButton(new ModalCloseButton(new
ResourceModel("85")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of("85"));
progressBar.updateInterval(Duration.ofSeconds(1)).stop(null).striped(false);
add(progressBar.setOutputMarkupPlaceholderTag(true).setVisible(false));
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/AboutDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/AboutDialog.java
index d4642a6..69666c8 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/AboutDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/AboutDialog.java
@@ -38,8 +38,6 @@ public class AboutDialog extends Modal<String> {
@Override
protected void onInitialize() {
header(new ResourceModel("1549"));
- setCloseOnEscapeKey(true);
- setBackdrop(Backdrop.STATIC);
super.onInitialize();
add(new Label("name", getApplicationName()));
add(new Label("version", getVersion()));
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/InviteUserMessageDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/InviteUserMessageDialog.java
index cd71431..47f1d99 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/InviteUserMessageDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/InviteUserMessageDialog.java
@@ -22,6 +22,7 @@ import org.apache.openmeetings.db.dao.room.RoomDao;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.user.User;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
import org.apache.wicket.markup.html.form.CheckBox;
@@ -34,7 +35,6 @@ import org.apache.wicket.spring.injection.annot.SpringBean;
import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxButton;
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
public class InviteUserMessageDialog extends Modal<String> {
private static final long serialVersionUID = 1L;
@@ -53,8 +53,6 @@ public class InviteUserMessageDialog extends Modal<String> {
@Override
protected void onInitialize() {
header(new ResourceModel("1138"));
- setCloseOnEscapeKey(true);
- setBackdrop(Backdrop.STATIC);
addButton(new BootstrapAjaxButton("button", new
ResourceModel("213"), form, Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
@@ -69,7 +67,7 @@ public class InviteUserMessageDialog extends Modal<String> {
InviteUserMessageDialog.this.close(target);
}
}); //send
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
super.onInitialize();
add(form.add(message.setRequired(true),
enterRoom.setOutputMarkupId(true)).setOutputMarkupId(true));
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/InviteUserToRoomDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/InviteUserToRoomDialog.java
index 2d27d6c..4dba760 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/InviteUserToRoomDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/InviteUserToRoomDialog.java
@@ -27,15 +27,14 @@ import org.apache.openmeetings.db.dao.room.RoomDao;
import org.apache.openmeetings.db.dao.user.UserDao;
import org.apache.openmeetings.db.entity.room.Room;
import org.apache.openmeetings.db.entity.user.GroupUser;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.user.rooms.RoomListPanel;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.spring.injection.annot.SpringBean;
-import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
public class InviteUserToRoomDialog extends Modal<String> {
private static final long serialVersionUID = 1L;
@@ -68,10 +67,8 @@ public class InviteUserToRoomDialog extends Modal<String> {
@Override
protected void onInitialize() {
header(new ResourceModel("1131"));
- setCloseOnEscapeKey(true);
- setBackdrop(Backdrop.STATIC);
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
add(publicRooms = new InviteRoomListPanel("publicRooms", new
ArrayList<Room>(), getString("1135")));
add(privateRooms = new InviteRoomListPanel("privateRooms", new
ArrayList<Room>(), getString("1135")));
add(inviteMsg);
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
index 79f3cb8..d60a6ea 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/MessageDialog.java
@@ -54,6 +54,7 @@ import org.apache.openmeetings.util.CalendarHelper;
import org.apache.openmeetings.web.app.Application;
import org.apache.openmeetings.web.app.WebSession;
import org.apache.openmeetings.web.common.OmDateTimePicker;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.user.calendar.AppointmentDialog;
import org.apache.openmeetings.web.util.CalendarWebHelper;
import org.apache.openmeetings.web.util.RoomTypeDropDown;
@@ -78,7 +79,6 @@ import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxButt
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
public class MessageDialog extends Modal<PrivateMessage> {
private static final long serialVersionUID = 1L;
@@ -113,9 +113,7 @@ public class MessageDialog extends Modal<PrivateMessage> {
@Override
protected void onInitialize() {
header(new ResourceModel("1209"));
- setCloseOnEscapeKey(true);
setUseCloseHandler(true);
- setBackdrop(Backdrop.STATIC);
size(Modal.Size.Large);
addButton(new BootstrapAjaxButton("button", new
ResourceModel("218"), form, Buttons.Type.Outline_Primary) {
@@ -209,7 +207,7 @@ public class MessageDialog extends Modal<PrivateMessage> {
onSend(target);
}
}); // send
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
form.add(feedback.setOutputMarkupId(true));
form.add(new UserMultiChoice("to", modelTo).setRequired(true));
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/UserInfoDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/UserInfoDialog.java
index 7d96cf0..bb6716e 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/UserInfoDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/UserInfoDialog.java
@@ -21,6 +21,7 @@ package org.apache.openmeetings.web.user;
import static org.apache.openmeetings.web.app.WebSession.getUserId;
import org.apache.openmeetings.db.dao.user.UserContactDao;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.user.profile.UserProfilePanel;
import org.apache.openmeetings.web.util.ContactsHelper;
import org.apache.wicket.ajax.AjaxRequestTarget;
@@ -33,7 +34,6 @@ import org.apache.wicket.spring.injection.annot.SpringBean;
import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxLink;
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
public class UserInfoDialog extends Modal<String> {
private static final long serialVersionUID = 1L;
@@ -53,8 +53,6 @@ public class UserInfoDialog extends Modal<String> {
@Override
protected void onInitialize() {
header(new ResourceModel("1235"));
- setCloseOnEscapeKey(true);
- setBackdrop(Backdrop.STATIC);
addButton(contacts = new BootstrapAjaxLink<>("button",
Model.of(""), Buttons.Type.Outline_Info, new ResourceModel("1186")) {
private static final long serialVersionUID = 1L;
@@ -71,7 +69,7 @@ public class UserInfoDialog extends Modal<String> {
UserInfoDialog.this.close(target);
}
});
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
add(container.add(new
WebMarkupContainer("body")).setOutputMarkupId(true));
super.onInitialize();
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
index d0d4176..132e2cb 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/AppointmentDialog.java
@@ -53,6 +53,7 @@ import
org.apache.openmeetings.service.calendar.caldav.AppointmentManager;
import org.apache.openmeetings.web.app.WebSession;
import org.apache.openmeetings.web.common.GroupChoiceProvider;
import org.apache.openmeetings.web.common.OmDateTimePicker;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.openmeetings.web.pages.MainPage;
import org.apache.openmeetings.web.user.OmWysiwygToolbar;
import org.apache.openmeetings.web.user.rooms.RoomEnterBehavior;
@@ -94,7 +95,6 @@ import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxLink
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
public class AppointmentDialog extends Modal<Appointment> {
private static final long serialVersionUID = 1L;
@@ -139,7 +139,6 @@ public class AppointmentDialog extends Modal<Appointment> {
@Override
protected void onInitialize() {
header(new ResourceModel("815"));
- setBackdrop(Backdrop.STATIC);
size(Size.Large);
add(form = new AppointmentForm("appForm", getModel()));
@@ -233,7 +232,7 @@ public class AppointmentDialog extends Modal<Appointment> {
};
delete.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true);
addButton(delete.add(newOkCancelDangerConfirm(this,
getString("833"))));
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
super.onInitialize();
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java
index 7e60bcc..a64c2f6 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/calendar/CalendarDialog.java
@@ -30,6 +30,7 @@ import org.apache.openmeetings.db.dao.calendar.AppointmentDao;
import org.apache.openmeetings.db.entity.calendar.Appointment;
import org.apache.openmeetings.db.entity.calendar.OmCalendar;
import org.apache.openmeetings.service.calendar.caldav.AppointmentManager;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.wicket.AttributeModifier;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.ajax.markup.html.form.AjaxCheckBox;
@@ -55,7 +56,6 @@ import
de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxLink
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
/**
* Multipurpose Calendar Dialog form. This provides the ability to ask for a
user prompt,
@@ -97,7 +97,6 @@ public class CalendarDialog extends Modal<OmCalendar> {
@Override
protected void onInitialize() {
header(new ResourceModel("calendar.dialogTitle"));
- setBackdrop(Backdrop.STATIC);
form = new UserCalendarForm("calform", getModel());
add(form);
@@ -167,7 +166,7 @@ public class CalendarDialog extends Modal<OmCalendar> {
};
delete.setOutputMarkupId(true).setOutputMarkupPlaceholderTag(true);
addButton(delete.add(newOkCancelDangerConfirm(this,
getString("833"))));
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
super.onInitialize();
}
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/raw-chat.js
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/raw-chat.js
index 3d95fbf..ccc2ce2 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/raw-chat.js
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/chat/raw-chat.js
@@ -75,7 +75,7 @@ var Chat = function() {
}
function doneTyping () {
typingTimer = null;
- chatActivity('typing_stop', $('.room-block
.container').data('room-id'));
+ chatActivity('typing_stop', $('.room-block
.room-container').data('room-id'));
}
function _emtClick() {
_editorAppend($(this).data('emt'));
@@ -182,7 +182,7 @@ var Chat = function() {
}
ctrl.off('click').click(Chat.toggle);
$('#chatMessage').off().on('input propertychange paste',
function () {
- const room = $('.room-block .container');
+ const room = $('.room-block .room-container');
if (room.length) {
if (!!typingTimer) {
clearTimeout(typingTimer);
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java
index c305a4d..10acdbc 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/dashboard/admin/AdminCleanupInfoDialog.java
@@ -33,6 +33,7 @@ import org.apache.openmeetings.cli.CleanupUnit;
import org.apache.openmeetings.db.dao.file.FileItemDao;
import org.apache.openmeetings.db.dao.record.RecordingDao;
import org.apache.openmeetings.db.dao.user.UserDao;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
import org.apache.wicket.markup.html.WebMarkupContainer;
@@ -44,7 +45,6 @@ import org.apache.wicket.spring.injection.annot.SpringBean;
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
import
de.agilecoders.wicket.extensions.markup.html.bootstrap.spinner.SpinnerAjaxButton;
public class AdminCleanupInfoDialog extends Modal<String> {
@@ -74,8 +74,7 @@ public class AdminCleanupInfoDialog extends Modal<String> {
super.onInitialize();
header(new
ResourceModel("dashboard.widget.admin.cleanup.title"));
setCloseOnEscapeKey(true);
- setBackdrop(Backdrop.STATIC);
- addButton(new ModalCloseButton(new
ResourceModel("54")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of("54"));
uploadSize = new Label("upload-size", "");
profile = new CleanupEntityUnitPanel("profile",
"dashboard.widget.admin.cleanup.profiles", new CleanupEntityUnit());
diff --git
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ChangePasswordDialog.java
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ChangePasswordDialog.java
index db82206..ff6aa5d 100644
---
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ChangePasswordDialog.java
+++
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/profile/ChangePasswordDialog.java
@@ -22,6 +22,7 @@ import static
org.apache.openmeetings.web.app.WebSession.getUserId;
import org.apache.openmeetings.core.util.StrongPasswordValidator;
import org.apache.openmeetings.db.dao.user.UserDao;
+import org.apache.openmeetings.web.common.OmModalCloseButton;
import org.apache.wicket.ajax.AjaxRequestTarget;
import org.apache.wicket.markup.html.form.Form;
import org.apache.wicket.markup.html.form.PasswordTextField;
@@ -35,7 +36,6 @@ import org.slf4j.LoggerFactory;
import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
import
de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
import de.agilecoders.wicket.core.markup.html.bootstrap.dialog.Modal;
-import
de.agilecoders.wicket.core.markup.html.bootstrap.dialog.ModalCloseButton;
import
de.agilecoders.wicket.extensions.markup.html.bootstrap.spinner.SpinnerAjaxButton;
public class ChangePasswordDialog extends Modal<String> {
@@ -78,8 +78,6 @@ public class ChangePasswordDialog extends Modal<String> {
@Override
protected void onInitialize() {
header(new ResourceModel("327"));
- setCloseOnEscapeKey(true);
- setBackdrop(Backdrop.STATIC);
addButton(new SpinnerAjaxButton("button", new
ResourceModel("327"), form, Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
@@ -100,7 +98,7 @@ public class ChangePasswordDialog extends Modal<String> {
}
}
}); //send
- addButton(new ModalCloseButton(new
ResourceModel("lbl.cancel")).type(Buttons.Type.Outline_Secondary));
+ addButton(OmModalCloseButton.of());
passValidator = new
StrongPasswordValidator(userDao.get(getUserId()));
add(form.add(
current.setLabel(new
ResourceModel("current.password")).setRequired(true)
diff --git a/openmeetings-web/src/main/webapp/css/raw-room.css
b/openmeetings-web/src/main/webapp/css/raw-room.css
index 9041164..8eec1e6 100644
--- a/openmeetings-web/src/main/webapp/css/raw-room.css
+++ b/openmeetings-web/src/main/webapp/css/raw-room.css
@@ -1,5 +1,5 @@
/* Licensed under the Apache License, Version 2.0 (the "License")
http://www.apache.org/licenses/LICENSE-2.0 */
-.room-block, .room-block .container {
+.room-block, .room-block .room-container {
width: 100%;
height: 100%;
}
@@ -18,6 +18,19 @@
.ui-icon.status-mod {
background-image: url(images/status-mod.png);
}
+.room-block .event-details.modal {
+ position: absolute;
+ width: 300px;
+ height: 300px;
+ top: 30px;
+ right: 0;
+ left: auto;
+ z-index: 3050;
+}
+.room-block .event-details.modal .modal-dialog {
+ padding: 0;
+ margin: 0;
+}
.room-block .sidebar {
min-width: 155px;
width: var(--room-sidebar-width);
@@ -29,6 +42,12 @@
.room-block .sidebar #room-sidebar-tabs {
height: calc(100% - var(--buffer-size) - var(--activities-height));
}
+.room-block .sidebar .tab {
+ padding: 5px 0 0 0;
+}
+.room-block .sidebar .tab i {
+ font-size: 2.2em;
+}
html[dir="rtl"] .room-block .sidebar {
right: 0;
left: auto;
@@ -119,14 +138,14 @@ html[dir="rtl"] .room-block .sidebar {
background-size: 32px;
}
.room-block .sidebar .icon-undock, .room-block .sidebar .icon-dock {
- width: 16px;
- height: 16px;
+ font-size: 1.6em;
+ padding-top: 3px;
}
-.room-block .sidebar .icon-undock {
- background-image: url(images/double-arrow-left.png);
+.room-block .sidebar .icon-dock:before {
+ content: "\f101";
}
-.room-block .sidebar .icon-dock {
- background-image: url(images/double-arrow-right.png);
+.room-block .sidebar .icon-undock::before {
+ content: "\f100";
}
.room-block .sidebar #room-sidebar-tab-users
, .room-block .sidebar #room-sidebar-tab-files
@@ -292,10 +311,15 @@ ul.settings-menu {
font-weight: bolder;
}
.room-block .sidebar .tab.om-icon.big {
- padding: 0em 1em 0 2.5em;
line-height: 30px;
width: auto;
max-width: 80px;
+ position: relative;
+}
+.room-block .sidebar .tab .badge {
+ position: absolute;
+ bottom: 0;
+ right: 2px;
}
.room-block .sidebar .tab.om-icon.big .label {
max-width: 50px;
@@ -304,11 +328,9 @@ ul.settings-menu {
overflow: hidden;
white-space: nowrap;
}
-.room-block.small .sidebar .tab.user.om-icon.big {
- max-width: 20px;
-}
.room-block.small .sidebar .tab.om-icon.big {
- max-width: 0px;
+ max-width: 40px;
+ width: 40px;
padding-right: 0;
}
.room-block.small .sidebar .tab.om-icon.big .label {
@@ -319,12 +341,6 @@ ul.settings-menu {
{
width: 40px;
}
-.room-block .sidebar .tab.om-icon.big.user {
- background-image: url(images/group.png);
-}
-.room-block .sidebar .tab.om-icon.big.file {
- background-image: url(images/folder_explore.png);
-}
/************ VIDEO **************/
.ui-dialog.video, .ui-dialog.video .ui-dialog-titlebar, .ui-dialog.video
.ui-dialog-content {
padding: 0;
@@ -377,25 +393,25 @@ ul.settings-menu {
.ui-dialog.video.mic-status .footer {
display: block;
}
-.room-block .container .user-video {
+.room-block .room-container .user-video {
display: inline-block !important;
}
-.room-block .container .user-video .header {
+.room-block .room-container .user-video .header {
height: 20px;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
-.room-block .container .user-video .header .ui-dialog-title {
+.room-block .room-container .user-video .header .ui-dialog-title {
padding-left: 5px;
}
-.room-block .container .user-video .video {
+.room-block .room-container .user-video .video {
min-width: 40px;
min-height: 30px;
overflow: hidden;
position: relative;
}
-.room-block .container .user-video .video.audio-only {
+.room-block .room-container .user-video .video.audio-only {
background-repeat: no-repeat;
background-size: auto 100%;
background-position: center;
@@ -548,12 +564,15 @@ ul.settings-menu {
width: 75px;
}
#room-sidebar-tabs.tabs .btn-dock {
- display: block;
+ display: inline-block;
list-style: none;
list-style-type: none;
- float: right;
- padding: .4em 1em;
+ padding: 0 .5em;
border-bottom-width: inherit;
+ height: 25px;
+ position: absolute;
+ top: 5px;
+ right: 5px;
}
.video .mute-others {
position: absolute;