Ignore:
Timestamp:
02/25/15 08:28:47 (9 years ago)
Author:
Twan Goosen
Message:

Changed strategy for removing language code prefix from descriptions: now using field value converter. This does away with the DescriptionFieldModel?. Converter now also used in SOLR field labels for multiple values. Removed some unused constructors & moved a regex constant into FacetConstants?
refs #699

File:
1 edited

Legend:

Unmodified
Added
Removed
  • vlo/trunk/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/wicket/panels/record/FieldsTablePanel.java

    r6019 r6046  
    2626import eu.clarin.cmdi.vlo.service.PageParametersConverter;
    2727import eu.clarin.cmdi.vlo.wicket.components.FieldValueLabel;
    28 import eu.clarin.cmdi.vlo.wicket.model.DescriptionFieldModel;
     28import eu.clarin.cmdi.vlo.wicket.components.SmartLinkFieldValueLabel;
    2929import eu.clarin.cmdi.vlo.wicket.model.HandleLinkModel;
    3030import eu.clarin.cmdi.vlo.wicket.model.SolrFieldNameModel;
     
    3535import org.apache.wicket.AttributeModifier;
    3636import org.apache.wicket.Component;
    37 import org.apache.wicket.extensions.markup.html.basic.SmartLinkLabel;
    3837import org.apache.wicket.extensions.markup.html.basic.SmartLinkMultiLineLabel;
    3938import org.apache.wicket.markup.html.basic.Label;
     
    118117    }
    119118
    120     private Component createValueLabel(String id, final IModel<String> facetNameModel, final IModel<String> originalValueModel) {
     119    private Component createValueLabel(String id, final IModel<String> facetNameModel, final IModel<String> valueModel) {
    121120        final String fieldName = facetNameModel.getObject();
    122 
    123         // allow for postprocessing or wrapping of the value model depending on the field
    124         final IModel<String> valueModel = getValueModel(facetNameModel, originalValueModel);
    125121
    126122        if (FacetConstants.FIELD_LANGUAGE_CODE.equals(facetNameModel.getObject())) {
     
    128124        } else if (SMART_LINK_FIELDS.contains(fieldName)) {
    129125            // create label that generates links
    130             return new SmartLinkLabel(id, new HandleLinkModel(valueModel));
     126            return new SmartLinkFieldValueLabel(id, new HandleLinkModel(valueModel), facetNameModel);
    131127        } else {
    132128            // add a label for the facet value
     
    164160    }
    165161
    166     private IModel<String> getValueModel(IModel<String> facetNameModel, IModel<String> valueModel) {
    167         if (FacetConstants.FIELD_DESCRIPTION.equals(facetNameModel.getObject())) {
    168             //wrap in model that removes the language prefix
    169             return new DescriptionFieldModel(valueModel);
    170         }
    171         return valueModel;
    172     }
    173 
    174162}
Note: See TracChangeset for help on using the changeset viewer.