Changeset 7481


Ignore:
Timestamp:
Apr 26, 2018, 8:58:47 AM (5 years ago)
Author:
Nicklas Nordborg
Message:

Fixes #2115: Problems with formatting in the "Test with file"

Fixed mainly by applying some CSS rules. Also fixed so that no more than 99 columns are outputted, but the real number is displayed in the "Columns" column. Skipped rows are no longer displayed as "errors" but in a more neutral color.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/3.12-stable/www/common/plugin/parse_file.jsp

    r6684 r7481  
    2424  @version 2.0
    2525--%>
    26 <%@page import="org.json.simple.JSONObject"%>
    2726<%@ page pageEncoding="UTF-8" session="false"
    2827  contentType="text/html; charset=UTF-8" 
     
    4948  import="java.io.InputStream"
    5049  import="org.json.simple.JSONArray"
     50  import="org.json.simple.JSONObject"
    5151%>
    5252<%@ taglib prefix="base" uri="/WEB-INF/base.tld" %>
     
    173173  %>
    174174  <base:page type="iframe" title="Test with file">
    175   <base:head scripts="tabcontrol-2.js,~parse_file.js" styles="table.css,tabcontrol.css" />
     175  <base:head scripts="tabcontrol-2.js,~parse_file.js" styles="table.css,tabcontrol.css">
     176    <style>
     177    #fileData td
     178    {
     179      white-space: nowrap;
     180      max-width: 20em;
     181      min-width: 4em;
     182      overflow: hidden;
     183      text-overflow: ellipsis;
     184    }
     185    #fileData td:first-child
     186    {
     187      font-weight: bold;
     188    }
     189    .skipped
     190    {
     191      padding: 1px 2px 1px 2px;
     192      color: #777777;
     193      font-style: italic;
     194    }
     195    </style>
     196  </base:head>
    176197  <base:body>
    177198  <div class="absolutefull bottomborder">
     
    216237      <div class="itemlist" style="<%=messages.size()==0 ? "" : "border-top-width: 1px;"%>">
    217238        <div class="data">
    218         <table style="border: 0;">
     239        <table style="border: 0;" id="fileData">
    219240          <thead class="bg-filled-100">
    220241          <tr>
     
    234255        int rowClassIndex = 0;
    235256
    236         while (currentLine <= maxLines && currentLine < headerLines)
     257        while (currentLine < maxLines && currentLine < headerLines)
    237258        {
    238259          FlatFileParser.Line line = parser.getLine(currentLine);
    239260          linePatterns.add(Pattern.quote(line.line()));
    240261          String[] data = null;
     262          int numMoreColumns = 0;
    241263          if (line.type() == FlatFileParser.LineType.HEADER)
    242264          {
     
    246268          {
    247269            data = parser.trimQuotes(splitter.split(line.line(), 99));
     270            if (data.length == 99)
     271            {
     272              numMoreColumns = splitter.split(line.line()).length - 99;
     273            }
    248274          }
    249275          else
     
    254280          <tr class="<%=rowclass[rowClassIndex]%> highlight">
    255281            <td class="cell"><%=line.lineNo()%></td>
    256             <td class="cell"><%=data.length%></td>
     282            <td class="cell"><%=data.length+numMoreColumns%></td>
    257283            <td class="cell"><%=line.type()%></td>
    258284            <td class="cell">
     
    290316        {
    291317          if (lastLine == FlatFileParser.LineType.DATA) parser.nextData();
    292           while (currentLine <= maxLines && parser.hasMoreData())
     318          while (currentLine < maxLines && parser.hasMoreData())
    293319          {
    294320            FlatFileParser.Data data = parser.nextData();
     
    298324              %>
    299325              <tr>
    300                 <td class="error" colspan="103">
     326                <td class="skipped bg-filled-100" colspan="103">
    301327                Skipped <%=parser.getNumSkippedLines()%> lines
    302328                (<%=parser.getIgnoredLines()%> ignored; <%=parser.getUnknownLines()%> unknown)
     
    320346              </td>
    321347              <%
    322               for (int i = 0; i < data.columns(); ++i)
     348              for (int i = 0; i < data.columns() && i < 99; ++i)
    323349              {
    324350                %>
Note: See TracChangeset for help on using the changeset viewer.