/** * The contents of this file are subject to the license and copyright * detailed in the LICENSE and NOTICE files at the root of the source * tree and available online at * * http://www.dspace.org/license/ */ package org.dspace.app.xmlui.aspect.submission; import org.apache.cocoon.environment.ObjectModelHelper; import org.apache.cocoon.environment.Request; import org.dspace.app.xmlui.cocoon.AbstractDSpaceTransformer; import org.dspace.app.xmlui.wing.Message; import org.dspace.app.xmlui.wing.WingException; import org.dspace.app.xmlui.wing.element.*; /** * Renders the main controlled vocabulary division which contains a filter box. * This transformer is called by javascript to render a box in which the controlled vocabulary list is loaded. * * @author Kevin Van de Velde (kevin at atmire dot com) */ public class ControlledVocabularyTransformer extends AbstractDSpaceTransformer{ public static final Message T_title = message("xmlui.Submission.submit.DescribeStep.controlledvocabulary.title"); public static final Message T_filter_label = message("xmlui.Submission.submit.DescribeStep.controlledvocabulary.filter.label"); public static final Message T_filter_button = message("xmlui.Submission.submit.DescribeStep.controlledvocabulary.filter.button"); public static final Message T_vocabulary_loading = message("xmlui.Submission.submit.DescribeStep.controlledvocabulary.loading"); public static final Message T_vocabulary_error = message("xmlui.Submission.submit.DescribeStep.controlledvocabulary.error"); @Override public void addPageMeta(PageMeta pageMeta) throws WingException { pageMeta.addMetadata("framing","popup").addContent(Boolean.TRUE.toString()); pageMeta.addMetadata("title").addContent(T_title); } @Override public void addBody(Body body) throws WingException { Request request = ObjectModelHelper.getRequest(objectModel); String vocabularyIdentifier = request.getParameter("vocabularyIdentifier"); String metadataFieldName = request.getParameter("metadataFieldName"); Division vocabularyDialog = body.addDivision("vocabulary_dialog_" + vocabularyIdentifier, "vocabulary-container"); vocabularyDialog.addHidden("metadataFieldName").setValue(metadataFieldName); List filterList = vocabularyDialog.addList("filter-list", List.TYPE_FORM); filterList.addLabel(T_filter_label); Item actions = filterList.addItem(); actions.addText("filter"); actions.addButton("filter_button").setValue(T_filter_button); filterList.addItem("vocabulary-loading", "").addContent(T_vocabulary_loading); filterList.addItem("vocabulary-error", "error hidden").addContent(T_vocabulary_error); } }