List of usage examples for org.apache.wicket.extensions.ajax.markup.html.modal ModalWindow setCssClassName
public ModalWindow setCssClassName(final String cssClassName)
From source file:com.doculibre.constellio.wicket.panels.results.PopupSearchResultPanel.java
License:Open Source License
public PopupSearchResultPanel(String id, SolrDocument doc, final SearchResultsDataProvider dataProvider) { super(id);/*from www . j a va 2s. c o m*/ RecordCollectionServices collectionServices = ConstellioSpringUtils.getRecordCollectionServices(); String solrServerName = dataProvider.getSimpleSearch().getCollectionName(); RecordCollection collection = collectionServices.get(solrServerName); IndexField uniqueKeyField = collection.getUniqueKeyIndexField(); IndexField defaultSearchField = collection.getDefaultSearchIndexField(); IndexField urlField = collection.getUrlIndexField(); IndexField titleField = collection.getTitleIndexField(); // title String documentID = (String) getFieldValue(doc, uniqueKeyField.getName()); String documentTitle = (String) getFieldValue(doc, titleField.getName()); if (StringUtils.isBlank(documentTitle)) { if (urlField == null) { documentTitle = (String) getFieldValue(doc, uniqueKeyField.getName()); } else { documentTitle = (String) getFieldValue(doc, urlField.getName()); } } if (documentTitle.length() > 120) { documentTitle = documentTitle.substring(0, 120) + " ..."; } // content RecordServices recordServices = ConstellioSpringUtils.getRecordServices(); Record record = recordServices.get(doc); RawContentServices rawContentServices = ConstellioSpringUtils.getRawContentServices(); List<RawContent> rawContents = rawContentServices.getRawContents(record); StringBuilder content = new StringBuilder(); for (RawContent raw : rawContents) { byte[] bytes = raw.getContent(); content.append(new String(bytes)); } String documentContent = content.toString(); // date String documentLastModified = getFieldValue(doc, IndexField.LAST_MODIFIED_FIELD); // Description du document dans extrait: QueryResponse response = dataProvider.getQueryResponse(); Map<String, Map<String, List<String>>> highlighting = response.getHighlighting(); final String recordURL = record.getUrl(); Map<String, List<String>> fieldsHighlighting = highlighting.get(recordURL); String extrait = getExcerptFromHighlight(defaultSearchField.getName(), fieldsHighlighting); final ModalWindow detailsDocumentModal = new ModalWindow("detailsDocumentModal"); add(detailsDocumentModal); detailsDocumentModal.setCssClassName(ModalWindow.CSS_CLASS_GRAY); detailsDocumentModal.setContent( new PopupDetailsPanel(detailsDocumentModal.getContentId(), documentContent, documentLastModified)); detailsDocumentModal.setCookieName("detailsDocumentModal"); String modalTitle = documentTitle; detailsDocumentModal.setTitle(modalTitle); AjaxLink detailsDocumentLink = new AjaxLink("detailsDocumentLink") { @Override public void onClick(AjaxRequestTarget target) { detailsDocumentModal.show(target); } }; add(detailsDocumentLink); final RecordModel recordModel = new RecordModel(record); AttributeAppender computeClickAttributeModifier = new AttributeAppender("onclick", true, new LoadableDetachableModel() { @Override protected Object load() { Record record = recordModel.getObject(); SimpleSearch simpleSearch = dataProvider.getSimpleSearch(); WebRequest webRequest = (WebRequest) RequestCycle.get().getRequest(); HttpServletRequest httpRequest = webRequest.getHttpServletRequest(); return ComputeSearchResultClickServlet.getCallbackJavascript(httpRequest, simpleSearch, record); } @Override protected void onDetach() { recordModel.detach(); super.onDetach(); } }, ";") { @Override protected String newValue(String currentValue, String appendValue) { return appendValue + currentValue; } }; detailsDocumentLink.add(computeClickAttributeModifier); Label subjectLabel = new Label("subject", documentTitle); detailsDocumentLink.add(subjectLabel.setEscapeModelStrings(false)); Label extraitLbl = new Label("documentContent", extrait); add(extraitLbl.setEscapeModelStrings(false)); add(new Label("date", "Date : " + documentLastModified)); add(new ElevatePanel("elevatePanel", record, dataProvider.getSimpleSearch())); }
From source file:com.doculibre.constellio.wicket.panels.results.tagging.SearchResultTaggingPanel.java
License:Open Source License
public SearchResultTaggingPanel(String id, final SolrDocument doc, final IDataProvider dataProviderParam) { super(id);//from ww w. j a v a 2 s .com RecordCollectionServices collectionServices = ConstellioSpringUtils.getRecordCollectionServices(); final SimpleSearch simpleSearch; if (dataProviderParam instanceof FacetsDataProvider) { FacetsDataProvider dataProvider = (FacetsDataProvider) dataProviderParam; simpleSearch = dataProvider.getSimpleSearch(); } else { SearchResultsDataProvider dataProvider = (SearchResultsDataProvider) dataProviderParam; simpleSearch = dataProvider.getSimpleSearch(); } String collectionName = simpleSearch.getCollectionName(); RecordCollection collection = collectionServices.get(collectionName); if (!collection.isOpenSearch()) { RecordServices recordServices = ConstellioSpringUtils.getRecordServices(); Record record = recordServices.get(doc); recordModel = new RecordModel(record); final ModalWindow taggingModal = new ModalWindow("taggingModal"); taggingModal.setTitle(new StringResourceModel("tags", this, null)); taggingModal.setCssClassName(ModalWindow.CSS_CLASS_GRAY); taggingModal.setInitialWidth(800); taggingModal.setInitialHeight(450); taggingModal.setCloseButtonCallback(new CloseButtonCallback() { @Override public boolean onCloseButtonClicked(AjaxRequestTarget target) { target.addComponent(SearchResultTaggingPanel.this); return true; } }); add(taggingModal); IModel thesaurusListModel = new LoadableDetachableModel() { @Override protected Object load() { List<Thesaurus> thesaurusList = new ArrayList<Thesaurus>(); RecordCollectionServices collectionServices = ConstellioSpringUtils .getRecordCollectionServices(); String collectionName = simpleSearch.getCollectionName(); RecordCollection collection = collectionServices.get(collectionName); thesaurusList.add(null);// free text tags if (collection.getThesaurus() != null) { thesaurusList.add(collection.getThesaurus()); } return thesaurusList; } }; add(new ListView("taggingLinks", thesaurusListModel) { @Override protected void populateItem(ListItem item) { Thesaurus thesaurus = (Thesaurus) item.getModelObject(); final ReloadableEntityModel<Thesaurus> thesaurusModel = new ReloadableEntityModel<Thesaurus>( thesaurus); final String thesaurusName; if (thesaurus == null) { thesaurusName = getLocalizer().getString("tags", this); } else { thesaurusName = getLocalizer().getString("thesaurus", this); } AjaxLink link = new AjaxLink("taggingLink") { @Override public void onClick(AjaxRequestTarget target) { Thesaurus thesaurus = thesaurusModel.getObject(); SearchResultEditTaggingPanel editTaggingPanel = new SearchResultEditTaggingPanel( taggingModal.getContentId(), doc, dataProviderParam, thesaurus); taggingModal.setContent(editTaggingPanel); taggingModal.show(target); } @Override public boolean isEnabled() { boolean enabled = super.isEnabled(); if (enabled) { Record record = recordModel.getObject(); if (record != null) { ConstellioUser user = ConstellioSession.get().getUser(); if (user != null) { RecordCollection collection = record.getConnectorInstance() .getRecordCollection(); enabled = user.hasCollaborationPermission(collection); } else { enabled = false; } } else { enabled = false; } } return enabled; } @Override public void detachModels() { thesaurusModel.detach(); super.detachModels(); } }; item.add(link); link.add(new Label("thesaurusName", thesaurusName)); final IModel tagsModel = new LoadableDetachableModel() { @Override protected Object load() { Record record = recordModel.getObject(); Thesaurus thesaurus = thesaurusModel.getObject(); return new ArrayList<RecordTag>(record.getIncludedRecordTags(thesaurus)); } }; item.add(new ListView("tags", tagsModel) { @SuppressWarnings("unchecked") @Override protected void populateItem(ListItem item) { RecordTag recordTag = (RecordTag) item.getModelObject(); final RecordTagModel recordTagModel = new RecordTagModel(recordTag); Link addTagLink = new Link("addTagLink") { @Override public void onClick() { RecordTag recordTag = recordTagModel.getObject(); SimpleSearch clone = simpleSearch.clone(); clone.getTags().add(recordTag.getName(getLocale())); PageFactoryPlugin pageFactoryPlugin = PluginFactory .getPlugin(PageFactoryPlugin.class); if (StringUtils.isNotBlank(clone.getLuceneQuery())) { // ConstellioSession.get().addSearchHistory(clone); setResponsePage(pageFactoryPlugin.getSearchResultsPage(), SearchResultsPage.getParameters(clone)); } else { SimpleSearch newSearch = new SimpleSearch(); newSearch.setCollectionName(simpleSearch.getCollectionName()); newSearch.setSingleSearchLocale(simpleSearch.getSingleSearchLocale()); setResponsePage(pageFactoryPlugin.getSearchFormPage(), SearchFormPage.getParameters(newSearch)); } } @Override public void detachModels() { recordTagModel.detach(); super.detachModels(); } }; item.add(addTagLink); List<RecordTag> recordTags = (List<RecordTag>) tagsModel.getObject(); String tag = recordTag.getName(getLocale()); if (item.getIndex() < recordTags.size() - 1) { tag += ";"; } addTagLink.add(new Label("tag", tag)); addTagLink.setEnabled(false); } }); item.add(new WebMarkupContainer("noTags") { @SuppressWarnings("unchecked") @Override public boolean isVisible() { List<RecordTag> recordTags = (List<RecordTag>) tagsModel.getObject(); return super.isVisible() && recordTags.isEmpty(); } }); } }); } else { setVisible(false); } }
From source file:com.evolveum.midpoint.web.page.admin.configuration.component.ObjectSelectionPage.java
License:Apache License
public static <T extends ObjectType> void prepareDialog(ModalWindow dialog, ObjectSelectionPanel.Context context, final Component callingComponent, String titleResourceKey, final String idToRefresh) { dialog.setPageCreator(new ObjectSelectionPage.PageCreator(dialog, context)); dialog.setInitialWidth(800);//from w ww. jav a2s . c o m dialog.setInitialHeight(500); dialog.setTitle(PageBase.createStringResourceStatic(callingComponent, titleResourceKey)); dialog.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() { // We are not able to refresh targets residing in the parent page // from inside the modal window -> so we have to do it in this // context, when the modal window is being closed. public void onClose(AjaxRequestTarget target) { target.add(callingComponent.get(idToRefresh)); } }); dialog.showUnloadConfirmation(false); dialog.setCssClassName(ModalWindow.CSS_CLASS_GRAY); dialog.setCookieName(ObjectSelectionPanel.class.getSimpleName() + ((int) (Math.random() * 100))); dialog.setWidthUnit("px"); }
From source file:de.alpharogroup.wicket.components.examples.ajaxtabs.addable.AddableTabbedPanel.java
License:Apache License
public AddableTabbedPanel(final String id, final IModel<TabbedPanelModels<String>> model) { super(id, model); setDefaultModel(new CompoundPropertyModel<TabbedPanelModels<String>>(model)); final List<TabModel<String>> tabModels = model.getObject().getTabModels(); for (int i = 0; i < tabModels.size(); i++) { tabs.add(new AbstractContentTab<TabModel<String>>(tabModels.get(i).getTitle(), Model.of(tabModels.get(i)), Model.of("x")) { private static final long serialVersionUID = 1L; @Override// w ww . ja va 2 s.c o m public Panel getPanel(final String panelId) { final Panel p = new TabPanel(panelId, getContent().getObject().getContent()); return p; } }); } add(ajaxTabbedPanel = new AjaxAddableTabbedPanel<ICloseableTab>("tabs", tabs) { private static final long serialVersionUID = 1L; @Override protected Component newAddTab(final String id, final IModel<String> model) { final WebMarkupContainer addTabContainer = new WebMarkupContainer(id); addTabContainer.setOutputMarkupId(true); addTabContainer.add(new AttributeAppender("class", " label")); final ModalWindow modalWindow = newAddTabModalWindow("modalWindow", Model.of("Add new tab")); addTabContainer.add(modalWindow); final AjaxLink<Void> openModal = new AjaxLink<Void>("openModal") { private static final long serialVersionUID = 1L; @Override public void onClick(final AjaxRequestTarget target) { target.prependJavaScript("Wicket.Window.unloadConfirmation = false;"); modalWindow.show(target); } }; openModal.setOutputMarkupId(true); openModal.add(newAddTabButtonLabel("addTabLabel", Model.of("+"))); openModal.add(new AttributeAppender("class", " label-success")); addTabContainer.add(openModal); return addTabContainer; } @Override protected Label newaddTabLabel(final String id, final IModel<String> model) { return ComponentFactory.newLabel(id, model); } @Override protected IModel<String> newAddTabLabelModel() { return Model.of("+"); } @Override protected ModalWindow newAddTabModalWindow(final String id, final IModel<String> model) { final ModalWindow modalWindow = new ModalWindow(id); modalWindow.setOutputMarkupId(true); modalWindow.setCssClassName(ModalWindow.CSS_CLASS_GRAY); modalWindow.setTitle(model.getObject()); modalWindow.setInitialHeight(200); modalWindow.setInitialWidth(300); modalWindow.setContent( new SaveDialogPanel<String>(modalWindow.getContentId(), Model.of(new String())) { /** * The serialVersionUID. */ private static final long serialVersionUID = 1L; @Override protected void onCancel(final AjaxRequestTarget target, final Form<?> form) { super.onCancel(target, form); modalWindow.close(target); } @SuppressWarnings("unchecked") @Override protected void onSave(AjaxRequestTarget target, final Form<?> form) { super.onSave(target, form); if (target == null) { target = ComponentFinder.findAjaxRequestTarget(); } final Object value = getModel(); String v = null; if (value instanceof IModel) { final Object obj = ((IModel<?>) value).getObject(); if (obj instanceof String) { v = (String) obj; } } target.add(ajaxTabbedPanel); final TabModel<String> newTabModel = new TabModel<>(Model.of(v), Model.of(v), Model.of("x")); final AbstractContentTab<TabModel<String>> tab = new AbstractContentTab<TabModel<String>>( newTabModel.getTitle(), Model.of(newTabModel), Model.of("x")) { private static final long serialVersionUID = 1L; @Override public Panel getPanel(final String panelId) { final Panel p = new TabPanel(panelId, getContent().getObject().getContent()); return p; } }; final Object object = AddableTabbedPanel.this.getDefaultModelObject(); final TabbedPanelModels<String> tabbedModel = (TabbedPanelModels<String>) object; final List<TabModel<String>> tabModels = tabbedModel.getTabModels(); tabModels.add(newTabModel); ajaxTabbedPanel.onNewTab(target, tab); modalWindow.close(target); } }); return modalWindow; } @Override protected WebMarkupContainer newCloseLink(final String linkId, final int index) { final WebMarkupContainer wmc = super.newCloseLink(linkId, index); wmc.add(new AttributeAppender("class", "close label label-warning")); return wmc; } @Override protected WebMarkupContainer newLink(final String linkId, final int index) { final WebMarkupContainer wmc = super.newLink(linkId, index); wmc.add(new AttributeAppender("class", "label label-success")); return wmc; } }); }
From source file:de.alpharogroup.wicket.data.provider.examples.refreshingview.ModalDialogWithStylePanel.java
License:Apache License
public ModalDialogWithStylePanel(final String id) { super(id);// w w w.j ava2 s.c om final ModalWindow modal = new ModalWindow("modal"); modal.setCssClassName("w_vegas"); modal.setTitle("Trivial Modal"); final AjaxLink<Void> modalLink = new AjaxLink<Void>("modalLink") { private static final long serialVersionUID = 1L; @Override public void onClick(final AjaxRequestTarget target) { target.appendJavaScript("var originalStyle = $('.wicket-modal').attr('style');" + "$('.wicket-modal').attr('style', originalStyle + 'opacity: 0.5;');"); } }; final Fragment modalFragment = new Fragment(modal.getContentId(), "modalContent", this); modalFragment.add(modalLink); modal.setContent(modalFragment); add(modal); add(new AjaxLink<Void>("openModal") { private static final long serialVersionUID = 1L; @Override public void onClick(final AjaxRequestTarget target) { modal.show(target); } }); }
From source file:de.alpharogroup.wicket.dialogs.examples.HomePage.java
License:Apache License
/** * Constructor that is invoked when page is invoked without a session. * * @param parameters/*from ww w . j av a 2 s .co m*/ * Page parameters */ public HomePage(final PageParameters parameters) { final WebMarkupContainer wmc = new WebMarkupContainer("comments"); wmc.setOutputMarkupId(true); final List<MessageBean> noteList = new ArrayList<MessageBean>(); final MessageBean messageBean = new MessageBean(); messageBean.setMessageContent("hello"); final IModel<MessageBean> dialogModel = new CompoundPropertyModel<MessageBean>(messageBean); final ModalWindow modalWindow = new BaseModalWindow<MessageBean>("baseModalWindow", dialogModel, "Title", 350, 160) { /** * The serialVersionUID. */ private static final long serialVersionUID = 1L; @Override public void onCancel(final AjaxRequestTarget target) { target.add(wmc); close(target); } @Override public void onSelect(final AjaxRequestTarget target, final MessageBean object) { final MessageBean clone = (MessageBean) WicketObjects.cloneObject(object); noteList.add(clone); // Clear the content from textarea in the dialog. object.setMessageContent(""); target.add(wmc); close(target); } }; modalWindow.setCssClassName(ModalWindow.CSS_CLASS_GRAY); modalWindow.setResizable(false); add(modalWindow); final AjaxLink<String> linkToModalWindow = new AjaxLink<String>("linkToModalWindow") { /** * The serialVersionUID. */ private static final long serialVersionUID = 1L; @Override public void onClick(final AjaxRequestTarget target) { modalWindow.show(target); } }; // Add the WebMarkupContainer... add(wmc); final Label linkToModalWindowLabel = new Label("linkToModalWindowLabel", "show modal dialog"); linkToModalWindow.add(linkToModalWindowLabel); // The AjaxLink to open the modal window add(linkToModalWindow); // here we have to set the message content from the bean in a repeater... final ListView<MessageBean> repliesAndNotesListView = new ListView<MessageBean>("repliesAndNotesListView", noteList) { /** * The serialVersionUID. */ private static final long serialVersionUID = 1L; @Override protected void populateItem(final ListItem<MessageBean> item) { final MessageBean repliesandnotes = item.getModelObject(); item.add(new RepliesandnotesPanel("repliesandnotesPanel", repliesandnotes)); } }; repliesAndNotesListView.setVisible(true); wmc.add(repliesAndNotesListView); @SuppressWarnings("rawtypes") final Link showUploadPage = new Link("showUploadPage") { /** * */ private static final long serialVersionUID = 1L; @Override public void onClick() { setResponsePage(new UploadPage(getPageParameters())); } }; add(showUploadPage); add(new ModalDialogWithStylePanel("modalDialogWithStylePanel", Model.of("bla"))); }
From source file:de.alpharogroup.wicket.dialogs.examples.panel.ModalDialogWithStylePanel.java
License:Apache License
@Override protected ModalWindow newModalWindow(final String id, final IModel<String> model) { final ModalWindow modalWindow = super.newModalWindow(id, model); modalWindow.setCssClassName("w_vegas"); modalWindow.setTitle("Trivial Modal"); return modalWindow; }
From source file:org.alienlabs.hatchetharry.view.page.HomePage.java
License:Open Source License
private ModalWindow generateAboutLink(final String id, final ModalWindow window) { window.setInitialWidth(450);/*from w w w . j a v a 2s . c o m*/ window.setInitialHeight(700); window.setTitle("About HatchetHarry"); window.setContent(new AboutModalWindow(window.getContentId(), window)); window.setCssClassName(ModalWindow.CSS_CLASS_GRAY); window.setMaskType(ModalWindow.MaskType.SEMI_TRANSPARENT); this.add(window); final AjaxLink<Void> aboutLink = new AjaxLink<Void>(id) { private static final long serialVersionUID = 8140325977385015896L; @Override public void onClick(final AjaxRequestTarget target) { target.prependJavaScript(BattlefieldService.HIDE_MENUS); target.appendJavaScript("Wicket.Window.unloadConfirmation = false;"); window.show(target); } }; aboutLink.setOutputMarkupId(true); window.setOutputMarkupId(true); this.add(aboutLink); return window; }
From source file:org.alienlabs.hatchetharry.view.page.HomePage.java
License:Open Source License
private ModalWindow generateMulliganLink(final String id, final ModalWindow window) { window.setInitialWidth(500);/*www .j a v a2 s . c o m*/ window.setInitialHeight(150); window.setTitle("HatchetHarry - Mulligan"); window.setContent(new MulliganModalWindow(window, window.getContentId())); window.setCssClassName(ModalWindow.CSS_CLASS_GRAY); window.setMaskType(ModalWindow.MaskType.SEMI_TRANSPARENT); this.add(window); final AjaxLink<Void> mulliganLink = new AjaxLink<Void>(id) { private static final long serialVersionUID = 8140325977385015896L; @Override public void onClick(final AjaxRequestTarget target) { target.prependJavaScript(BattlefieldService.HIDE_MENUS); target.appendJavaScript("Wicket.Window.unloadConfirmation = false;"); window.show(target); } }; mulliganLink.setOutputMarkupId(true); window.setOutputMarkupId(true); this.add(mulliganLink); return window; }
From source file:org.alienlabs.hatchetharry.view.page.HomePage.java
License:Open Source License
private ModalWindow generateTeamInfoLink(final String id, final ModalWindow window) { window.setInitialWidth(475);/*from w w w.j a v a2 s .c o m*/ window.setInitialHeight(750); window.setTitle("HatchetHarry Team info"); window.setContent(new TeamInfoModalWindow(window.getContentId(), window)); window.setCssClassName(ModalWindow.CSS_CLASS_GRAY); window.setMaskType(ModalWindow.MaskType.SEMI_TRANSPARENT); this.add(window); final AjaxLink<Void> teamInfoLink = new AjaxLink<Void>(id) { private static final long serialVersionUID = 8140325977385015896L; @Override public void onClick(final AjaxRequestTarget target) { target.prependJavaScript(BattlefieldService.HIDE_MENUS); target.appendJavaScript("Wicket.Window.unloadConfirmation = false;"); window.show(target); } }; teamInfoLink.setOutputMarkupId(true); window.setOutputMarkupId(true); this.add(teamInfoLink); return window; }