Changeset 4599
- Timestamp:
- 02/28/14 13:23:04 (10 years ago)
- Location:
- vlo/branches/vlo-3.0/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/wicket
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
vlo/branches/vlo-3.0/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/wicket/components/FacetPanel.java
r4595 r4599 23 23 import org.apache.solr.client.solrj.response.FacetField; 24 24 import org.apache.wicket.ajax.AjaxRequestTarget; 25 import org.apache.wicket.behavior.Behavior;26 25 import org.apache.wicket.markup.html.panel.Panel; 27 26 import org.apache.wicket.model.IModel; … … 36 35 * @author twagoo 37 36 */ 38 public class FacetPanel extends Panel {37 public abstract class FacetPanel extends Panel { 39 38 40 39 private final IModel<FacetSelection> model; … … 74 73 if (target != null) { 75 74 // reload entire page for now 76 target.add(getPage());75 selectionChanged(target); 77 76 } 78 77 } … … 93 92 if (target != null) { 94 93 // reload entire page for now 95 target.add(getPage());94 selectionChanged(target); 96 95 } 97 96 } … … 99 98 } 100 99 100 protected abstract void selectionChanged(AjaxRequestTarget target); 101 101 102 } -
vlo/branches/vlo-3.0/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/wicket/components/FacetsPanel.java
r4588 r4599 21 21 import java.util.List; 22 22 import org.apache.solr.client.solrj.response.FacetField; 23 import org.apache.wicket.ajax.AjaxRequestTarget; 23 24 import org.apache.wicket.markup.html.list.ListItem; 24 25 import org.apache.wicket.markup.html.list.ListView; … … 34 35 * @author twagoo 35 36 */ 36 public class FacetsPanel extends Panel {37 public abstract class FacetsPanel extends Panel { 37 38 38 39 /** … … 52 53 protected void populateItem(ListItem<FacetField> item) { 53 54 item.add( 54 new FacetPanel("facet", new FacetSelectionModel(item.getModel(), selectionModel)) 55 new FacetPanel("facet", new FacetSelectionModel(item.getModel(), selectionModel)) { 56 57 @Override 58 protected void selectionChanged(AjaxRequestTarget target) { 59 FacetsPanel.this.selectionChanged(target); 60 } 61 } 55 62 ); 56 63 } 57 64 }); 58 65 } 66 67 protected abstract void selectionChanged(AjaxRequestTarget target); 59 68 } -
vlo/branches/vlo-3.0/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/wicket/pages/FacetedSearchPage.html
r4598 r4599 64 64 <div class="facet collapsedfacet topbar" id="collections"> 65 65 <div class="rtop"><div class="r1"></div><div class="r2"></div><div class="r3"></div><div class="r4"></div></div> 66 < wicket:container wicket:id="collectionsFacet">[COLLECTIONS]</wicket:container>66 <div wicket:id="collectionsFacet">[COLLECTIONS]</div> 67 67 <!-- <p> 68 68 Searching in all collections (604056 records). -
vlo/branches/vlo-3.0/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/wicket/pages/FacetedSearchPage.java
r4595 r4599 15 15 import java.util.Map; 16 16 import org.apache.solr.client.solrj.response.FacetField; 17 import org.apache.wicket. behavior.AttributeAppender;17 import org.apache.wicket.ajax.AjaxRequestTarget; 18 18 import org.apache.wicket.request.mapper.parameter.PageParameters; 19 19 import org.apache.wicket.markup.html.WebPage; … … 37 37 private VloConfig vloConfig; 38 38 39 private final Panel searchResultsPanel; 40 private final Panel facetsPanel; 41 private final Panel collectionsPanel; 42 39 43 public FacetedSearchPage(final PageParameters parameters) { 40 44 super(parameters); … … 43 47 final Model<QueryFacetsSelection> queryModel = new Model<QueryFacetsSelection>(selection); 44 48 45 add(createCollectionsPanel("collectionsFacet", queryModel)); 46 add(createFacetsPanel("facets", queryModel)); 47 48 add(new SearchForm("search", queryModel)); 49 add(new SearchResultsPanel("searchResults", queryModel)); 49 final SearchForm searchForm = new SearchForm("search", queryModel); 50 add(searchForm); 51 52 collectionsPanel = createCollectionsPanel("collectionsFacet", queryModel); 53 add(collectionsPanel); 54 55 facetsPanel = createFacetsPanel("facets", queryModel); 56 add(facetsPanel); 57 58 searchResultsPanel = new SearchResultsPanel("searchResults", queryModel); 59 add(searchResultsPanel); 50 60 } 51 61 … … 53 63 final FacetFieldModel collectionFacetFieldModel = new FacetFieldModel(facetFieldsService, vloConfig.getCollectionFacet(), queryModel); 54 64 final FacetSelectionModel collectionSelectionModel = new FacetSelectionModel(collectionFacetFieldModel, queryModel); 55 final FacetPanel panel = new FacetPanel(id, collectionSelectionModel); 65 final FacetPanel panel = new FacetPanel(id, collectionSelectionModel) { 66 67 @Override 68 protected void selectionChanged(AjaxRequestTarget target) { 69 updateSelection(target); 70 } 71 }; 72 panel.setOutputMarkupId(true); 56 73 return panel; 57 74 } … … 59 76 private Panel createFacetsPanel(final String id, final Model<QueryFacetsSelection> queryModel) { 60 77 final IModel<List<FacetField>> facetFieldsModel = new FacetFieldsModel(facetFieldsService, vloConfig.getFacetFields(), queryModel); 61 final FacetsPanel facetsPanel = new FacetsPanel(id, facetFieldsModel, queryModel); 62 return facetsPanel; 78 final FacetsPanel panel = new FacetsPanel(id, facetFieldsModel, queryModel) { 79 80 @Override 81 protected void selectionChanged(AjaxRequestTarget target) { 82 updateSelection(target); 83 } 84 }; 85 panel.setOutputMarkupId(true); 86 return panel; 87 } 88 89 private void updateSelection(AjaxRequestTarget target) { 90 // selection changed, update facets and search results 91 target.add(searchResultsPanel); 92 target.add(facetsPanel); 93 target.add(collectionsPanel); 63 94 } 64 95
Note: See TracChangeset
for help on using the changeset viewer.