Changeset 4986


Ignore:
Timestamp:
04/16/14 08:13:37 (10 years ago)
Author:
Twan Goosen
Message:

Created an abstract panel that toggles content with a toggle link.
Applied it in record page for 'all fields' and 'technical details' sections. Adjusted CSS for this.

Location:
vlo/branches/vlo-3.0/vlo-web-app/src/main
Files:
2 added
5 edited

Legend:

Unmodified
Added
Removed
  • vlo/branches/vlo-3.0/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/wicket/model/XsltModel.java

    r4669 r4986  
    1818
    1919import eu.clarin.cmdi.vlo.VloWicketApplication;
    20 import java.io.IOException;
    21 import java.io.InputStreamReader;
    22 import java.io.StringWriter;
    2320import java.net.URL;
    2421import javax.xml.transform.TransformerException;
    25 import javax.xml.transform.stream.StreamSource;
    26 import net.sf.saxon.s9api.Processor;
    27 import net.sf.saxon.s9api.SaxonApiException;
    28 import net.sf.saxon.s9api.Serializer;
    29 import net.sf.saxon.s9api.XdmNode;
    30 import net.sf.saxon.s9api.XsltCompiler;
    31 import net.sf.saxon.s9api.XsltExecutable;
    32 import net.sf.saxon.s9api.XsltTransformer;
    3322import org.apache.wicket.model.IModel;
    3423import org.apache.wicket.model.LoadableDetachableModel;
  • vlo/branches/vlo-3.0/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/wicket/pages/RecordPage.html

    r4902 r4986  
    6868                <div wicket:id="resources" id="recordresources">[RESOURCES]</div>
    6969
    70                 <p id="recordcmditoggle" class="recordtogglelinks">
    71                     <a href="#" id="showrecordcmdi" class="recordshowlink">Show all metadata fields</a>
    72                     <a href="#" id="hiderecordcmdi" class="recordhidelink">Hide all metadata fields</a>
    73                 </p>
    7470                <div wicket:id="cmdi" id="recordcmdi">[CMDI metadata]</div>
    7571
    76                 <p id="recordtechnicaldetailstoggle" class="recordtogglelinks">
    77                     <a href="#" id="showrecordtechnicaldetails" class="recordshowlink">Show technical details</a>
    78                     <a href="#" id="hiderecordtechnicaldetails" class="recordhidelink">Hide technical details</a>
    79                 </p>
    80                 <div id="recordtechnicaldetails">
    81                     <h2>Technical details</h2>
    82 
    83                     <div id="recordtechnicalattributes">
    84                         <wicket:container wicket:id="technicalProperties">[PROPERTIES TABLE]</wicket:container>
    85                     </div>
    86                 </div> <!-- recordtechnicaldetails -->
     72                <div wicket:id="technicalProperties" id="recordtechnicaldetails">[TECHNICAL PROPERTIES TABLE]</div>
     73               
    8774            </div>
    8875        </wicket:extend>
  • vlo/branches/vlo-3.0/vlo-web-app/src/main/java/eu/clarin/cmdi/vlo/wicket/pages/RecordPage.java

    r4966 r4986  
    3232import eu.clarin.cmdi.vlo.wicket.model.XsltModel;
    3333import eu.clarin.cmdi.vlo.wicket.panels.BreadCrumbPanel;
     34import eu.clarin.cmdi.vlo.wicket.panels.TogglePanel;
    3435import eu.clarin.cmdi.vlo.wicket.panels.TopLinksPanel;
    3536import eu.clarin.cmdi.vlo.wicket.panels.record.ContentSearchFormPanel;
     
    134135        // Technical section
    135136        add(createCmdiContent("cmdi"));
    136         add(new FieldsTablePanel("technicalProperties", new DocumentFieldsProvider(getModel(), technicalPropertiesFilter)));
     137        add(createTechnicalDetailsPanel("technicalProperties"));
    137138
    138139        createSearchLinks("searchlinks");
     
    219220    }
    220221
    221     private Label createCmdiContent(String id) {
     222    private Component createCmdiContent(String id) {
     223
    222224        final IModel<String> locationModel = new SolrFieldStringModel(getModel(), FacetConstants.FIELD_FILENAME);
    223225        final UrlFromStringModel locationUrlModel = new UrlFromStringModel(locationModel);
    224         final Label cmdiContentLabel = new Label(id, new XsltModel(locationUrlModel));
    225         cmdiContentLabel.setEscapeModelStrings(false);
    226         return cmdiContentLabel;
     226        return new TogglePanel(id, Model.of("Show all metadata fields"), Model.of("Hide all metadata fields")) {
     227
     228            @Override
     229            protected Component createContent(String id) {
     230                final Label cmdiContentLabel = new Label(id, new XsltModel(locationUrlModel));
     231                cmdiContentLabel.setEscapeModelStrings(false);
     232                return cmdiContentLabel;
     233            }
     234        };
     235    }
     236
     237    private TogglePanel createTechnicalDetailsPanel(String id) {
     238        return new TogglePanel(id, Model.of("Show technical details"), Model.of("Hide technical details")) {
     239
     240            @Override
     241            protected Component createContent(String id) {
     242                return new FieldsTablePanel(id, new DocumentFieldsProvider(getModel(), technicalPropertiesFilter));
     243            }
     244        };
    227245    }
    228246
  • vlo/branches/vlo-3.0/vlo-web-app/src/main/resources/eu/clarin/cmdi/vlo/wicket/pages/vlo-record.css

    r4937 r4986  
    227227/* Technical details */
    228228
    229 .recordtogglelinks {
    230     clear: both;
    231     padding: 0 0 1em 0;
     229#record .collapsed a.contenttoggle:before {
     230    content: '+ ';
     231}
     232
     233#record .expanded a.contenttoggle:before {
     234    content: '- ';
     235}
     236
     237#recordcmdi {
     238    clear: both; /* first div after records, clear */
     239    padding: 1em 0 1em 0;
    232240}
    233241
     
    236244}
    237245
    238 a.recordshowlink:before {
    239     content: '+ ';
    240 }
    241 
    242 a.recordhidelink:before {
    243     content: '- ';
    244 }
    245 
    246 #recordtechnicaldetails, #recordcmdi {
     246#recordtechnicaldetails .togglecontent, #recordcmdi .togglecontent {
    247247    border-top: 1px dashed;
    248248    padding: 1em 0;
  • vlo/branches/vlo-3.0/vlo-web-app/src/main/webapp/js/vlo-record.js

    r4905 r4986  
    1717
    1818$(document).ready(function() {
    19     $("#recordtechnicaldetails, #recordcmdi").hide();
    20     $("#hiderecordtechnicaldetails, #hiderecordcmdi").hide();
    21     $("#recordcmditoggle a").click(function(event) {
    22         event.preventDefault();
    23         $("#recordcmdi").toggle();
    24         $("#recordcmditoggle a").toggle();
    25     });
    26     $("#recordtechnicaldetailstoggle a").click(function(event) {
    27         event.preventDefault();
    28         $("#recordtechnicaldetails").toggle();
    29         $("#recordtechnicaldetailstoggle a").toggle();
    30     });
     19//    $("#recordtechnicaldetails, #recordcmdi").hide();
     20//    $("#hiderecordtechnicaldetails, #hiderecordcmdi").hide();
     21//    $("#recordcmditoggle a").click(function(event) {
     22//        event.preventDefault();
     23//        $("#recordcmdi").toggle();
     24//        $("#recordcmditoggle a").toggle();
     25//    });
     26//    $("#recordtechnicaldetailstoggle a").click(function(event) {
     27//        event.preventDefault();
     28//        $("#recordtechnicaldetails").toggle();
     29//        $("#recordtechnicaldetailstoggle a").toggle();
     30//    });
    3131});
Note: See TracChangeset for help on using the changeset viewer.