Ignore:
Timestamp:
Nov 28, 2019, 7:40:54 AM (3 years ago)
Author:
Nicklas Nordborg
Message:

References #2199: Implement a "File viewer" extension point

Implemented in the item overview.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/www/common/overview/info.jsp

    r7605 r7762  
    6767  import="net.sf.basedb.util.overview.Failure"
    6868  import="net.sf.basedb.util.overview.Fix"
     69  import="net.sf.basedb.util.overview.filter.NodeTypeFilter"
    6970  import="net.sf.basedb.util.overview.extensions.ValidationRuleAction"
    7071  import="net.sf.basedb.util.extensions.ExtensionsInvoker"
     72  import="net.sf.basedb.clients.web.extensions.fileviewer.FileViewerContext"
     73  import="net.sf.basedb.clients.web.extensions.fileviewer.FileViewerUtil"
    7174  import="java.util.ArrayList"
    7275  import="java.util.Date"
     
    140143  Formatter<Date> dateTimeFormatter = FormatterFactory.getDateTimeFormatter(sc);
    141144
     145  FileViewerContext fileContext = null;
     146  FileViewerUtil fileViewer = null;
     147  if (item instanceof FileSetMember)
     148  {
     149    Node parentNode = node.getFirstParent(new NodeTypeFilter(Node.Type.ITEM));
     150    if (parentNode != null)
     151    {
     152      fileContext = FileViewerContext.dataFile(parentNode.getItem());
     153    }
     154  }
     155  else if (item instanceof AnyToAny)
     156  {
     157    if (((AnyToAny)item).getToType() == Item.FILE)
     158    {
     159      Node parentNode = node.getFirstParent(new NodeTypeFilter(Node.Type.ITEM));
     160      if (parentNode != null)
     161      {
     162        fileContext = FileViewerContext.anyToAny(parentNode.getItem());
     163      }
     164    }
     165  }
     166  if (fileContext != null)
     167  {
     168    fileViewer = new FileViewerUtil(jspContext, fileContext);
     169  }
    142170  %>
    143171  <base:page title="" type="iframe">
     
    203231        if (dft != null || file != null)
    204232        {
     233          if (file != null) fileContext.setCurrentDataFile(file, dft, member);
    205234          %>
    206235          <tr>
    207236            <th><%=dft == null ? "Data file" : HTML.encodeTags(dft.getName())%></th>
    208237            <td>
    209               <%=Base.getLinkedFile(ID, file, deniedFile, true, true, "../../")%>
     238              <%=Base.getLinkedName(ID, file, deniedFile, true)%>
     239              <%if (file != null) fileViewer.render(); %>
    210240            </td>
    211241          </tr>
     
    234264          linkTo = Base.getLink(ID, HTML.encodeTags(name),
    235265              to.getType(), to.getId(), to.hasPermission(Permission.WRITE));
     266          if (fileViewer != null)
     267          {
     268            fileContext.setCurrentAnyToAny((File)to, any);
     269            linkTo += " " + fileViewer.renderAsString();
     270          }
    236271        }
    237272        catch (PermissionDeniedException ex)
Note: See TracChangeset for help on using the changeset viewer.