List of usage examples for org.apache.wicket.ajax.attributes IAjaxCallListener IAjaxCallListener
IAjaxCallListener
From source file:nl.mpi.lamus.web.components.AutoHideDisablingAjaxButton.java
License:Open Source License
/** * @see IndicatingAjaxButton#updateAjaxAttributes(org.apache.wicket.ajax.attributes.AjaxRequestAttributes) *///from w w w. jav a 2s . c o m @Override protected void updateAjaxAttributes(AjaxRequestAttributes attributes) { super.updateAjaxAttributes(attributes); attributes.getAjaxCallListeners().add(new IAjaxCallListener() { @Override public CharSequence getBeforeHandler(Component cmpnt) { return "$(\"#" + cmpnt.getMarkupId() + "\").hide()"; } @Override public CharSequence getPrecondition(Component cmpnt) { return ""; } @Override public CharSequence getBeforeSendHandler(Component cmpnt) { return ""; } @Override public CharSequence getAfterHandler(Component cmpnt) { return ""; } @Override public CharSequence getSuccessHandler(Component cmpnt) { return ""; } @Override public CharSequence getFailureHandler(Component cmpnt) { return ""; } @Override public CharSequence getCompleteHandler(Component cmpnt) { return ""; } }); }
From source file:org.apache.openmeetings.web.user.chat.ChatForm.java
License:Apache License
public ChatForm(String id) { super(id);// ww w .j ava 2 s. com final ChatToolbar toolbar = new ChatToolbar("toolbarContainer", this); final WysiwygEditor chatMessage = new WysiwygEditor("chatMessage", Model.of(""), toolbar); add(toolbar, activeTab.add(new AjaxFormSubmitBehavior(this, "change") { private static final long serialVersionUID = 1L; @Override protected void onSubmit(AjaxRequestTarget target) { toolbar.update(target); } }), chatMessage.setOutputMarkupId(true), new AjaxButton("send") { private static final long serialVersionUID = 1L; @Override protected void updateAjaxAttributes(AjaxRequestAttributes attributes) { super.updateAjaxAttributes(attributes); attributes.getAjaxCallListeners().add(new IAjaxCallListener() { @Override public CharSequence getPrecondition(Component component) { return "return Chat.validate();"; } }); } private Chat getChat() { return findParent(Chat.class); } @Override protected void onSubmit(AjaxRequestTarget target) { final String txt = chatMessage.getDefaultModelObjectAsString(); if (Strings.isEmpty(txt)) { return; } final ChatMessage m = new ChatMessage(); m.setMessage(txt); m.setSent(new Date()); m.setFromUser(userDao.get(getUserId())); m.setFromName(getClient().getUser().getDisplayName()); if (!process(() -> getChat().isShowDashboardChat(), r -> { if (cm.isInRoom(r.getId(), getUserId())) { m.setToRoom(r); } else { log.error("It seems like we are being hacked!!!!"); return false; } m.setNeedModeration( r.isChatModerated() && !isModerator(cm, m.getFromUser().getId(), r.getId())); return true; }, u -> { m.setToUser(u); return true; })) { return; } ; chatDao.update(m); JSONObject msg = getChat().getMessage(Arrays.asList(m)); if (m.getToRoom() != null) { ChatWebSocketHelper.sendRoom(m, msg); } else if (m.getToUser() != null) { ChatWebSocketHelper.sendUser(getUserId(), m, msg); msg = Chat.getMessage(m.getToUser(), Arrays.asList(m)); ChatWebSocketHelper.sendUser(m.getToUser().getId(), m, msg); } else { ChatWebSocketHelper.sendAll(m, msg); } chatMessage.setDefaultModelObject(""); target.appendJavaScript("Chat.clean();"); }; }); }