List of usage examples for org.apache.wicket.extensions.markup.html.repeater.data.table HeaderlessColumn HeaderlessColumn
public HeaderlessColumn()
From source file:com.doculibre.constellio.wicket.panels.admin.collection.CollectionListPanel.java
License:Open Source License
@Override protected List<IColumn> getDataColumns() { List<IColumn> dataColumns = super.getDataColumns(); IColumn descriptionColumn = new PropertyColumn(new StringResourceModel("description", this, null), "description") { @Override/* ww w.ja va2 s .co m*/ protected IModel createLabelModel(final IModel embeddedModel) { return new LoadableDetachableModel() { @Override protected Object load() { RecordCollection collection = (RecordCollection) embeddedModel.getObject(); return collection.getDescription(getLocale()); } }; } }; dataColumns.add(descriptionColumn); // Move up dataColumns.add(new HeaderlessColumn() { @Override public void populateItem(Item cellItem, String componentId, final IModel rowModel) { cellItem.add(new ImgLinkHolder(componentId) { @Override protected WebMarkupContainer newLink(String id) { return new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { RecordCollectionServices collectionServices = ConstellioSpringUtils .getRecordCollectionServices(); RecordCollection collection = (RecordCollection) rowModel.getObject(); List<RecordCollection> collections = collectionServices.list(); int index = collections.indexOf(collection); // Cannot move higher! if (index > 0) { RecordCollection previousCollection = collections.get(index - 1); Integer previousPosition = previousCollection.getPosition(); Integer currentPosition = collection.getPosition(); collection.setPosition(previousPosition); previousCollection.setPosition(currentPosition); EntityManager entityManager = ConstellioPersistenceContext .getCurrentEntityManager(); if (!entityManager.getTransaction().isActive()) { entityManager.getTransaction().begin(); } collectionServices.makePersistent(collection, false); collectionServices.makePersistent(previousCollection, false); entityManager.getTransaction().commit(); entityManager.clear(); target.addComponent(findParent(CollectionListPanel.class)); } } }; } @Override protected Component newImg(String id) { return new NonCachingImage(id, new ResourceReference(BaseConstellioPage.class, "images/up.png")); } }); } }); // Move down dataColumns.add(new HeaderlessColumn() { @Override public void populateItem(Item cellItem, String componentId, final IModel rowModel) { cellItem.add(new ImgLinkHolder(componentId) { @Override protected WebMarkupContainer newLink(String id) { return new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { RecordCollectionServices collectionServices = ConstellioSpringUtils .getRecordCollectionServices(); RecordCollection collection = (RecordCollection) rowModel.getObject(); List<RecordCollection> collections = collectionServices.list(); int index = collections.indexOf(collection); // Cannot move lower! if (index < collections.size() - 1) { RecordCollection nextCollection = collections.get(index + 1); Integer nextPosition = nextCollection.getPosition(); Integer currentPosition = collection.getPosition(); collection.setPosition(nextPosition); nextCollection.setPosition(currentPosition); EntityManager entityManager = ConstellioPersistenceContext .getCurrentEntityManager(); if (!entityManager.getTransaction().isActive()) { entityManager.getTransaction().begin(); } collectionServices.makePersistent(collection, false); collectionServices.makePersistent(nextCollection, false); entityManager.getTransaction().commit(); entityManager.clear(); target.addComponent(findParent(CollectionListPanel.class)); } } }; } @Override protected Component newImg(String id) { return new NonCachingImage(id, new ResourceReference(BaseConstellioPage.class, "images/down.png")); } }); } }); IColumn searchColumn = new HeaderlessColumn() { @Override public void populateItem(Item cellItem, String componentId, final IModel rowModel) { cellItem.add(new LinkHolder(componentId) { @Override protected WebMarkupContainer newLink(String id) { RecordCollection collection = (RecordCollection) rowModel.getObject(); SimpleSearch simpleSearch = new SimpleSearch(); simpleSearch.setCollectionName(collection.getName()); PageFactoryPlugin pageFactoryPlugin = PluginFactory.getPlugin(PageFactoryPlugin.class); return new BookmarkablePageLink(id, pageFactoryPlugin.getSearchFormPage(), SearchFormPage.getParameters(simpleSearch)); } @Override protected IModel getLabelModel() { return new StringResourceModel("search", null); } }); } }; dataColumns.add(searchColumn); return dataColumns; }
From source file:com.doculibre.constellio.wicket.panels.admin.connector.ConnectorListPanel.java
License:Open Source License
@Override protected List<IColumn> getDataColumns() { List<IColumn> dataColumns = super.getDataColumns(); dataColumns.add(0, new HeaderlessColumn() { @Override//from w w w. j av a2 s. co m public void populateItem(Item cellItem, String componentId, IModel rowModel) { ConnectorInstance connectorInstance = (ConnectorInstance) rowModel.getObject(); final ReloadableEntityModel<ConnectorInstance> connectorInstanceModel = new ReloadableEntityModel<ConnectorInstance>( connectorInstance); cellItem.add(new ImgHolder(componentId) { @Override protected Image newImg(String id) { ConnectorInstance connectorInstance = connectorInstanceModel.getObject(); ConnectorType connectorType = connectorInstance.getConnectorType(); ResourceReference imageResourceReference = new ResourceReference( "connectorType_" + connectorType.getId()) { @Override protected Resource newResource() { ConnectorInstance connectorInstance = (ConnectorInstance) connectorInstanceModel .getObject(); ConnectorType connectorType = connectorInstance.getConnectorType(); Resource imageResource; byte[] iconBytes = connectorType.getIconFileContent(); // Convert resource path to absolute path relative to base package if (iconBytes != null) { imageResource = new ByteArrayResource("image", iconBytes); } else { imageResource = PackageResource.get(ConnectorListPanel.class, "default_icon.gif"); } return imageResource; } }; return new NonCachingImage(id, imageResourceReference); } @Override public void detachModels() { connectorInstanceModel.detach(); super.detachModels(); } }); } }); return dataColumns; }
From source file:com.doculibre.constellio.wicket.panels.admin.crud.CRUDPanel.java
License:Open Source License
protected IColumn getEditLinkColumn() { return new HeaderlessColumn() { @Override/* w ww. j ava 2s. c o m*/ public void populateItem(Item cellItem, String componentId, final IModel rowItemModel) { Item rowItem = (Item) cellItem.findParent(Item.class); final int rowIndex = getFirstRowItemAbsoluteIndex() + rowItem.getIndex(); cellItem.add(new ModalImgLinkHolder(componentId) { @Override public WebMarkupContainer newLink(String id) { if (isUseModalsAddEdit()) { return new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { ModalWindow editModal = getModalWindow(); editModal.setInitialHeight(MODAL_HEIGHT); editModal.setInitialWidth(MODAL_WIDTH); String editMsg = getLocalizer().getString("edit", CRUDPanel.this); editModal.setTitle(editMsg); WebMarkupContainer editContent = createEditContent(editModal.getContentId(), rowItemModel, rowIndex); editModal.setContent(editContent); editModal.show(target); } @Override public boolean isVisible() { return super.isVisible() && isEditLink(rowItemModel, rowIndex); } }; } else { return new Link(id) { @Override public void onClick() { WebMarkupContainer editContent = createEditContent(CRUDPanel.this.getId(), rowItemModel, rowIndex); CRUDPanel.this.replaceWith(editContent); } @Override public boolean isVisible() { return super.isVisible() && isEditLink(rowItemModel, rowIndex); } }; } } @Override protected Component newImg(String id) { return new NonCachingImage(id, new ResourceReference(BaseConstellioPage.class, "images/ico_crayon.png")); } }); } @Override public String getCssClass() { return "aligncenter width50px"; } }; }
From source file:com.doculibre.constellio.wicket.panels.admin.crud.CRUDPanel.java
License:Open Source License
protected IColumn getDeleteLinkColumn() { return new HeaderlessColumn() { @Override//from w ww. j av a2s. co m public void populateItem(Item cellItem, String componentId, final IModel rowItemModel) { Item rowItem = (Item) cellItem.findParent(Item.class); final int rowIndex = getFirstRowItemAbsoluteIndex() + rowItem.getIndex(); cellItem.add(new ImgLinkHolder(componentId) { @Override public WebMarkupContainer newLink(String id) { return createDeleteLink(id, rowItemModel, rowIndex); } @Override protected Component newImg(String id) { return new NonCachingImage(id, new ResourceReference(BaseConstellioPage.class, "images/ico_poubelle.png")); } }); } @Override public String getCssClass() { return "aligncenter width50px"; } }; }
From source file:com.doculibre.constellio.wicket.panels.admin.crud.SingleColumnCRUDPanel.java
License:Open Source License
@Override protected List<IColumn> getDataColumns() { List<IColumn> dataColumns = new ArrayList<IColumn>(); IColumn detailsColumn = new HeaderlessColumn() { @Override/*from w w w . j a v a2 s. c o m*/ public void populateItem(Item cellItem, String componentId, final IModel rowItemModel) { Item rowItem = (Item) cellItem.findParent(Item.class); final int rowIndex = getFirstRowItemAbsoluteIndex() + rowItem.getIndex(); cellItem.add(new ModalLinkHolder(componentId) { @Override public WebMarkupContainer newLink(String id) { AbstractLink link; if (isUseModalsDetails()) { link = new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { ModalWindow detailsModal = getModalWindow(); detailsModal.setInitialHeight(MODAL_HEIGHT); detailsModal.setInitialWidth(MODAL_WIDTH); detailsModal.setTitle(getLabelModel()); onClickDetailsLink(rowItemModel, target, detailsModal, rowIndex); } }; } else { link = new Link(id) { @Override public void onClick() { onClickDetailsLink(rowItemModel, null, null, rowIndex); } }; } link.setEnabled(isDetailsLink(rowItemModel, rowIndex)); return link; } @Override protected Component newLabel(String id, IModel labelModel) { return createDetailsLabelComponent(id, rowItemModel, rowIndex); } }); } @Override public Component getHeader(String componentId) { Component header = createDetailsColumnHeader(componentId); if (header == null) { header = super.getHeader(componentId); } return header; } }; dataColumns.add(detailsColumn); return dataColumns; }
From source file:com.doculibre.constellio.wicket.panels.admin.facets.FacetListPanel.java
License:Open Source License
@Override protected List<IColumn> getDataColumns() { List<IColumn> dataColumns = super.getDataColumns(); dataColumns.add(new HeaderlessColumn() { @Override// www .jav a 2 s . c om public void populateItem(Item cellItem, String componentId, final IModel rowModel) { cellItem.add(new ModalLinkHolder(componentId, new StringResourceModel("labelledValues", FacetListPanel.this, null)) { @Override protected WebMarkupContainer newLink(String id) { return new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { ModalWindow labelledValuesModal = getModalWindow(); CollectionFacet facet = (CollectionFacet) rowModel.getObject(); EditFacetLabelledValuesPanel editLabelledValuesModal = new EditFacetLabelledValuesPanel( labelledValuesModal.getContentId(), facet); labelledValuesModal.setContent(editLabelledValuesModal); labelledValuesModal.show(target); } @Override public boolean isVisible() { CollectionFacet facet = (CollectionFacet) rowModel.getObject(); return facet.isFieldFacet(); } }; } }); } }); dataColumns.add(new HeaderlessColumn() { @Override public void populateItem(Item cellItem, String componentId, final IModel rowModel) { cellItem.add(new ModalLinkHolder(componentId, new StringResourceModel("queries", FacetListPanel.this, null)) { @Override protected WebMarkupContainer newLink(String id) { return new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { ModalWindow queriesModal = getModalWindow(); CollectionFacet facet = (CollectionFacet) rowModel.getObject(); EditFacetLabelledValuesPanel editQueriesPanel = new EditFacetLabelledValuesPanel( queriesModal.getContentId(), facet); queriesModal.setContent(editQueriesPanel); queriesModal.show(target); } @Override public boolean isVisible() { CollectionFacet facet = (CollectionFacet) rowModel.getObject(); return facet.isQueryFacet(); } }; } }); } }); // Move up dataColumns.add(new HeaderlessColumn() { @Override public void populateItem(Item cellItem, String componentId, final IModel rowModel) { cellItem.add(new ImgLinkHolder(componentId) { @Override protected WebMarkupContainer newLink(String id) { return new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { FacetServices facetServices = ConstellioSpringUtils.getFacetServices(); CollectionFacet facet = (CollectionFacet) rowModel.getObject(); RecordCollection collection = facet.getRecordCollection(); List<CollectionFacet> collectionFacets = collection.getCollectionFacets(); int index = collectionFacets.indexOf(facet); // Cannot move higher! if (index > 0) { CollectionFacet previousFacet = collectionFacets.set(index - 1, facet); collectionFacets.set(index, previousFacet); EntityManager entityManager = ConstellioPersistenceContext .getCurrentEntityManager(); if (!entityManager.getTransaction().isActive()) { entityManager.getTransaction().begin(); } facetServices.makePersistent(facet); facetServices.makePersistent(previousFacet); entityManager.getTransaction().commit(); entityManager.clear(); target.addComponent(findParent(AdminCollectionPanel.class)); } } }; } @Override protected Component newImg(String id) { return new NonCachingImage(id, new ResourceReference(BaseConstellioPage.class, "images/up.png")); } }); } }); // Move down dataColumns.add(new HeaderlessColumn() { @Override public void populateItem(Item cellItem, String componentId, final IModel rowModel) { cellItem.add(new ImgLinkHolder(componentId) { @Override protected WebMarkupContainer newLink(String id) { return new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { FacetServices facetServices = ConstellioSpringUtils.getFacetServices(); CollectionFacet facet = (CollectionFacet) rowModel.getObject(); RecordCollection collection = facet.getRecordCollection(); List<CollectionFacet> collectionFacets = collection.getCollectionFacets(); int index = collectionFacets.indexOf(facet); // Cannot move lower! if (index < collectionFacets.size() - 1) { CollectionFacet previousFacet = collectionFacets.set(index + 1, facet); collectionFacets.set(index, previousFacet); EntityManager entityManager = ConstellioPersistenceContext .getCurrentEntityManager(); if (!entityManager.getTransaction().isActive()) { entityManager.getTransaction().begin(); } facetServices.makePersistent(facet); facetServices.makePersistent(previousFacet); entityManager.getTransaction().commit(); entityManager.clear(); target.addComponent(findParent(AdminCollectionPanel.class)); } } }; } @Override protected Component newImg(String id) { return new NonCachingImage(id, new ResourceReference(BaseConstellioPage.class, "images/down.png")); } }); } }); return dataColumns; }
From source file:com.doculibre.constellio.wicket.panels.admin.indexField.IndexFieldListPanel.java
License:Open Source License
@Override protected List<IColumn> getDataColumns() { List<IColumn> dataColumns = new ArrayList<IColumn>(); AjaxOnUpdateHandler updateIndexFieldHandler = new AjaxOnUpdateHandler() { @Override/*from w ww .j a v a 2s. co m*/ public void onUpdate(ReloadableEntityModel<IndexField> entityModel, AjaxRequestTarget target) { updateIndexField(entityModel.getObject(), target); } }; dataColumns.add(getAjaxEditableLabelColumn("name")); dataColumns.add(getAjaxCheckboxColumn("indexed", updateIndexFieldHandler)); dataColumns.add(getAjaxCheckboxColumn("multiValued", updateIndexFieldHandler)); dataColumns.add(new HeaderlessColumn() { @Override public void populateItem(Item cellItem, String componentId, final IModel rowModel) { cellItem.add(new ModalLinkHolder(componentId, new StringResourceModel("labelledValues", IndexFieldListPanel.this, null)) { @Override protected WebMarkupContainer newLink(String id) { return new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { ModalWindow labelledValuesModal = getModalWindow(); IndexField indexField = (IndexField) rowModel.getObject(); EditIndexFieldLabelledValuesPanel editLabelledValuesModal = new EditIndexFieldLabelledValuesPanel( labelledValuesModal.getContentId(), indexField); labelledValuesModal.setContent(editLabelledValuesModal); labelledValuesModal.show(target); } }; } }); } }); return dataColumns; }
From source file:com.doculibre.constellio.wicket.panels.admin.searchResultField.SearchResultFieldListPanel.java
License:Open Source License
@Override protected List<IColumn> getDataColumns() { List<IColumn> dataColumns = super.getDataColumns(); // Move up/* w ww. ja v a 2s .com*/ dataColumns.add(new HeaderlessColumn() { @Override public void populateItem(Item cellItem, String componentId, final IModel rowModel) { cellItem.add(new ImgLinkHolder(componentId) { @Override protected WebMarkupContainer newLink(String id) { return new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { SearchResultFieldServices searchResultFieldServices = ConstellioSpringUtils .getSearchResultFieldServices(); SearchResultField searchResultField = (SearchResultField) rowModel.getObject(); RecordCollection collection = searchResultField.getRecordCollection(); List<SearchResultField> searchResultFields = collection.getSearchResultFields(); int index = searchResultFields.indexOf(searchResultField); // Cannot move higher! if (index > 0) { SearchResultField previousSearchResultField = searchResultFields.set(index - 1, searchResultField); searchResultFields.set(index, previousSearchResultField); EntityManager entityManager = ConstellioPersistenceContext .getCurrentEntityManager(); if (!entityManager.getTransaction().isActive()) { entityManager.getTransaction().begin(); } searchResultFieldServices.makePersistent(searchResultField); searchResultFieldServices.makePersistent(previousSearchResultField); entityManager.getTransaction().commit(); entityManager.clear(); target.addComponent(findParent(AdminSearchResultFieldsPanel.class)); } } }; } @Override protected Component newImg(String id) { return new NonCachingImage(id, new ResourceReference(BaseConstellioPage.class, "images/up.png")); } }); } }); // Move down dataColumns.add(new HeaderlessColumn() { @Override public void populateItem(Item cellItem, String componentId, final IModel rowModel) { cellItem.add(new ImgLinkHolder(componentId) { @Override protected WebMarkupContainer newLink(String id) { return new AjaxLink(id) { @Override public void onClick(AjaxRequestTarget target) { SearchResultFieldServices searchResultFieldServices = ConstellioSpringUtils .getSearchResultFieldServices(); SearchResultField searchResultField = (SearchResultField) rowModel.getObject(); RecordCollection collection = searchResultField.getRecordCollection(); List<SearchResultField> searchResultFields = collection.getSearchResultFields(); int index = searchResultFields.indexOf(searchResultField); // Cannot move lower! if (index < searchResultFields.size() - 1) { SearchResultField previousSearchResultField = searchResultFields.set(index + 1, searchResultField); searchResultFields.set(index, previousSearchResultField); EntityManager entityManager = ConstellioPersistenceContext .getCurrentEntityManager(); if (!entityManager.getTransaction().isActive()) { entityManager.getTransaction().begin(); } searchResultFieldServices.makePersistent(searchResultField); searchResultFieldServices.makePersistent(previousSearchResultField); entityManager.getTransaction().commit(); entityManager.clear(); target.addComponent(findParent(AdminSearchResultFieldsPanel.class)); } } }; } @Override protected Component newImg(String id) { return new NonCachingImage(id, new ResourceReference(BaseConstellioPage.class, "images/down.png")); } }); } }); return dataColumns; }
From source file:de.elatexam.editor.pages.subtaskdefs.SubtaskdefTable.java
License:Open Source License
/** * Render subtaskdef selection table, without links to edit and delete but with selection checkboxes. * * @param id/* w w w . ja v a 2s .c o m*/ * @param clazz * @param doSubtaskdefSelection */ public SubtaskdefTable(String id, Class<T> clazz, final TaskSelectionPanel taskSelectionPanel) { super(id); CriteriaFilterAndSort builder = new CriteriaFilterAndSort(new SubTaskDef() { }, "xmlid", true, false); final FilterForm<T> form = new FilterForm<T>("form", builder); form.setOutputMarkupId(true); add(form); final List<IColumn<T>> columns = new ArrayList<IColumn<T>>(); columns.add(new PropertyColumn<T>(new Model<String>("ID"), "xmlid", "xmlid") { @Override protected IModel<?> createLabelModel(IModel<T> rowModel) { return new PropertyModel<String>(rowModel, "xmlid"); } }); columns.add(new LabeledTextFilteredPropertyColumn<T>(Model.of("Aufgabenstellung"), Model.of("enthlt:"), "problem", "problem") { @Override protected IModel<?> createLabelModel(IModel<T> rowModel) { return new EllipsisModel((IModel<String>) super.createLabelModel(rowModel), 90); } }); if (taskSelectionPanel == null) { columns.add(new PropertyColumn<T>(new Model<String>("Typ"), "class.simpleName") { @Override protected IModel<String> createLabelModel(final IModel<T> rowModel) { if (rowModel.getObject() == null) return Model.of("???"); else return new ResourceModel(rowModel.getObject().getClass().getSimpleName() + ".short"); } }); // edit links columns.add(new HeaderlessColumn<T>() { public void populateItem(final Item<ICellPopulator<T>> cellItem, final String componentId, final IModel<T> rowModel) { cellItem.add(new TaskActionsPanel<T>(componentId, rowModel)); } }); } else { columns.add(new HeaderlessColumn<T>() { @Override public void populateItem(Item<ICellPopulator<T>> cellItem, String componentId, IModel<T> rowModel) { cellItem.add(new AddSubtaskdefPanel<T>(componentId, rowModel, taskSelectionPanel)); } }); } // XXX ugly hack, need to create own data access layer final PrivateSubtasksDataProvider provider = new PrivateSubtasksDataProvider((Class<SubTaskDef>) clazz, builder, builder); provider.setWrapWithPropertyModel(false); final AjaxFallbackDefaultDataTable<T> table = new AjaxFallbackDefaultDataTable<T>("datatable", columns, (ISortableDataProvider<T>) provider, 10); table.addTopToolbar(new FilterToolbar(table, form, builder)); form.add(table); }
From source file:org.obiba.onyx.quartz.core.wicket.layout.impl.simplified.SimplifiedQuestionSharedCategoriesPanel.java
License:Open Source License
/** * Constructor for a shared categories question. * @param id//www . j a v a2 s . c o m * @param questionModel */ @SuppressWarnings("serial") public SimplifiedQuestionSharedCategoriesPanel(String id, IModel<Question> questionModel, IDataProvider<Question> questionsProvider) { super(id, questionModel); setOutputMarkupId(true); // seams like ugly but we need a form component to run the answer count validator add(new AnswerValidatorField("hidden", getQuestionModel())); List<IColumn> columns = new ArrayList<IColumn>(); // first column: labels of question's children columns.add(new HeaderlessColumn() { public void populateItem(Item cellItem, String componentId, IModel rowModel) { Question question = (Question) rowModel.getObject(); cellItem.add(new Label(componentId, new QuestionnaireStringResourceModel(question, "label")) .setEscapeModelStrings(false)); cellItem.add(new AttributeAppender("class", new Model<String>("obiba-label"), " ")); } }); // following columns: the question's categories QuestionCategoriesProvider provider = new QuestionCategoriesProvider(getQuestionModel()); for (IModel questionCategoryModel : provider.getDataList()) { columns.add(new AbstractQuestionCategoryColumn(questionCategoryModel) { @Override public void populateItem(Item cellItem, String componentId, IModel rowModel, int index) { // if category has an open answer, show only the open box // show a link for check marking QuestionCategory questionCategory = (QuestionCategory) cellItem.getModel().getObject(); if (questionCategory.getOpenAnswerDefinition() != null) { cellItem.add(new QuestionCategoryOpenAnswerDefinitionPanel(componentId, rowModel, cellItem.getModel(), new Model<String>(" "), null)); } else { cellItem.add(new QuestionCategoryLink(componentId, rowModel, cellItem.getModel(), new Model<String>(" "), null)); } } }); } add(new AbstractQuestionArray("array", getDefaultModel(), columns, questionsProvider) { @Override public Component getRowsContent(String id, List<IColumn> columns, IDataProvider rows) { return new QuestionChildRows(id, columns, rows); } }); add(new AjaxImageLink("clearAll", new QuestionnaireStringResourceModel( activeQuestionnaireAdministrationService.getQuestionnaire(), "clearAll")) { @Override public void onClick(AjaxRequestTarget target) { for (Question child : getQuestion().getQuestions()) { activeQuestionnaireAdministrationService.deleteAnswers(child); } updateSelections(target); } }); }