Changeset 2196


Ignore:
Timestamp:
Jan 13, 2014, 2:36:50 PM (8 years ago)
Author:
Nicklas Nordborg
Message:

References #533: Add secondary analysis section to Reggie

Re-arranged the index page to make room for the "Secondary analysis wizards" section. The page is now divided in three columns with the new section as the middle column.

Added link to "Register sequencing ended" wizard as the last library preparation wizard. Created two new annotation so that the counter can show a correct value.

Location:
extensions/net.sf.basedb.reggie/trunk
Files:
3 added
4 edited

Legend:

Unmodified
Added
Removed
  • extensions/net.sf.basedb.reggie/trunk/resources/index.jsp

    r2169 r2196  
    216216      url = 'FlowCell.servlet?ID=<%=ID%>&cmd=CountUnprocessedFlowCells';
    217217    }
     218    else if (what == 'sequencing-flow-cells')
     219    {
     220      url = 'FlowCell.servlet?ID=<%=ID%>&cmd=CountSequencingFlowCells';
     221    }
    218222   
    219223    if (url)
     
    364368    else if (currentCount == 'unregistered-flow-cells')
    365369    {
    366       var msg = error || 'Number of flow cells waiting for registration';
     370      var msg = error || 'Number of flow cells waiting for sequencing';
    367371      var count = error ? -1 : response.count;
    368372      setCount('count.flow-cells.1', count, 'flow cells', msg);
    369373      setCount('count.flow-cells.2', count, 'flow cells', msg);
     374      startCounting('sequencing-flow-cells');
     375    }
     376    else if (currentCount == 'sequencing-flow-cells')
     377    {
     378      var msg = error || 'Number of flow cells currently sequencing';
     379      var count = error ? -1 : response.count;
     380      setCount('count.flow-cells.3', count, 'flow cells', msg);
    370381    }
    371382   
     
    476487  <div class="content">
    477488    <form name="reggie" onsubmit="return false;">
    478     <div class="absolutefull" style="width: 50%;">
     489    <div class="absolutefull" style="width: 33%;">
    479490      <div class="absolutefull" style="left: 1em; right: 0.5em; ">
    480491     
     
    609620        </dd>
    610621        <dt>
    611           <base:icon image="<%=home+"/images/flowcell.png" %>" />
    612           Pooling and clustering wizards
     622          <base:icon image="<%=home+"/images/pool.png" %>" />
     623          Pooling wizards
    613624        </dt>
    614625        <dd>
     
    622633          <li><span class="require-permission" data-role="LibraryPrep" data-link="libprep/pool_registration.jsp?ID=<%=ID%>"
    623634            >Register pooled libraries</span> <span class="counter" id="count.pools.2" title="Counting..."><img src="images/loading-small.gif"></span>
    624          
     635          </ul>
     636        </dd>
     637       
     638        <dt>
     639          <base:icon image="<%=home+"/images/flowcell.png" %>" />
     640          Clustering and sequencing wizards
     641        </dt>
     642        <dd>
     643          <ul>
    625644          <li><span class="require-permission" data-role="LibraryPrep" data-link="libprep/create_flowcells.jsp?ID=<%=ID%>"
    626645            >Create flow cells</span> <span class="counter" id="count.pools.3" title="Counting..."><img src="images/loading-small.gif"></span>
     
    631650          <li><span class="require-permission" data-role="LibraryPrep" data-link="libprep/flowcell_registration.jsp?ID=<%=ID%>"
    632651            >Register clustering and sequencing startup</span> <span class="counter" id="count.flow-cells.2" title="Counting..."><img src="images/loading-small.gif"></span>
     652
     653          <li><span class="require-permission" data-role="LibPrep" data-link="libprep/sequencing_ended.jsp?ID=<%=ID%>"
     654            >Register sequencing ended</span> <span class="counter" id="count.flow-cells.3" title="Counting..."><img src="images/loading-small.gif"></span>
    633655          </ul>
    634656        </dd>
     
    638660    </div>
    639661   
    640     <div class="absolutefull" style="width: 50%; left: auto;">
     662    <div class="absolutefull" style="width: 34%; left: 33%; right: auto;">
     663      <div class="absolutefull" style="left: 0.5em; right: 0.5em;">
     664        <h3>Secondary analysis wizards</h3>
     665        <dl class="leftborder rightborder bottomborder">
     666          <dt>
     667            <base:icon image="<%=home+"/images/server.png" %>" />
     668            Demux and merge wizards
     669          </dt>
     670          <dd>
     671            <ul>
     672            <li><span class="require-permission" data-role="SecondaryAnalysis" data-link="analysis/sequencing_end.jsp?ID=<%=ID%>"
     673              >Confirm sequencing completed</span>
     674            <li><span class="require-permission" data-role="SecondaryAnalysis" data-link="analysis/demux_start.jsp?ID=<%=ID%>"
     675              >Start demux and merge</span>
     676            <li><span class="require-permission" data-role="SecondaryAnalysis" data-link="analysis/demux_end.jsp?ID=<%=ID%>"
     677              >Register demux and merge completed</span>
     678            </ul>
     679          </dd>
     680         
     681          <dt>
     682            <base:icon image="<%=home+"/images/align.png" %>" />
     683            Filter and alignment wizards
     684          </dt>
     685          <dd>
     686            <ul>
     687            <li><span class="require-permission" data-role="SecondaryAnalysis" data-link="analysis/filter_start.jsp?ID=<%=ID%>"
     688              >Start filter and alignment</span>
     689            <li><span class="require-permission" data-role="SecondaryAnalysis" data-link="analysis/align_end.jsp?ID=<%=ID%>"
     690              >Register filter and alignment completed</span>
     691            </ul>
     692          </dd>
     693          <dt>
     694         
     695            <base:icon image="<%=home+"/images/wizard.png" %>" />
     696            Feature extraction wizards
     697          </dt>
     698          <dd>
     699            <ul>
     700            <li><span class="require-permission" data-role="SecondaryAnalysis" data-link="analysis/feature_start.jsp?ID=<%=ID%>"
     701              >Start feature extraction</span>
     702            <li><span class="require-permission" data-role="SecondaryAnalysis" data-link="analysis/feature_end.jsp?ID=<%=ID%>"
     703              >Register feature extraction completed</span>
     704            </ul>
     705          </dd>
     706        </dl>
     707      </div>
     708    </div>
     709   
     710    <div class="absolutefull" style="width: 33%; left: auto;">
    641711      <div class="absolutefull" style="left: 0.5em; right: 1em;">
    642712        <%
  • extensions/net.sf.basedb.reggie/trunk/src/net/sf/basedb/reggie/dao/Annotationtype.java

    r2191 r2196  
    691691
    692692  /**
     693    The "SequencingTurnAround" annotation, used for derived bioassays (SequencingRun).
     694    @since 2.14
     695  */
     696  public static final Annotationtype SEQUENCING_TURN_AROUND =
     697    new Annotationtype("SequencingTurnAround", Type.TIMESTAMP, Item.DERIVEDBIOASSAY);
     698
     699 
     700  /**
     701    The "SequencingEnd" annotation, used for derived bioassays (SequencingRun).
     702    @since 2.14
     703  */
     704  public static final Annotationtype SEQUENCING_END =
     705    new Annotationtype("SequencingEnd", Type.TIMESTAMP, Item.DERIVEDBIOASSAY);
     706
     707 
     708  /**
    693709    The "SequencingOperator" annotation, used for derived bioassays (SequencingRun).
    694710    @since 2.13
  • extensions/net.sf.basedb.reggie/trunk/src/net/sf/basedb/reggie/servlet/FlowCellServlet.java

    r2161 r2196  
    223223        json.put("flowCellInfo", jsonFlowCellInfo);
    224224      }
     225      else if ("CountSequencingFlowCells".equals(cmd))
     226      {
     227        dc = sc.newDbControl();
     228        ItemQuery<DerivedBioAssay> query = DerivedBioAssay.getQuery();
     229        query.setIncludes(Reggie.INCLUDE_IN_CURRENT_PROJECT);
     230        Subtype.SEQUENCING_RUN.addFilter(dc, query);
     231        // Must have a SEQUENCING_START annotation
     232        query.join(Annotations.leftJoin(null, Annotationtype.SEQUENCING_START.load(dc), "sst"));
     233        query.restrict(Restrictions.neq(Hql.alias("sst"), null));
     234        // Must NOT have a SEQUENCING_END annotation
     235        query.join(Annotations.leftJoin(null, Annotationtype.SEQUENCING_END.load(dc), "sse"));
     236        query.restrict(Restrictions.eq(Hql.alias("sse"), null));
     237        long count = query.count(dc);
     238        json.put("count", count);
     239      }
    225240    }
    226241    catch (Throwable t)
  • extensions/net.sf.basedb.reggie/trunk/src/net/sf/basedb/reggie/servlet/InstallServlet.java

    r2191 r2196  
    335335       
    336336        jsonChecks.add(checkAnnotationType(dc, Annotationtype.SEQUENCING_START, 1, null, effectivePermissionsUse, createIfMissing));
     337        jsonChecks.add(checkAnnotationType(dc, Annotationtype.SEQUENCING_TURN_AROUND, 1, null, effectivePermissionsUse, createIfMissing));
     338        jsonChecks.add(checkAnnotationType(dc, Annotationtype.SEQUENCING_END, 1, null, effectivePermissionsUse, createIfMissing));
    337339        jsonChecks.add(checkAnnotationType(dc, Annotationtype.SEQUENCING_OPERATOR, 1, null, effectivePermissionsUse, createIfMissing));
    338340       
     
    423425       
    424426        jsonChecks.add(checkAnnotationTypeCategory(dc, Subtype.SEQUENCING_RUN, createIfMissing,
    425             Annotationtype.SEQUENCING_START, Annotationtype.SEQUENCING_OPERATOR
     427            Annotationtype.SEQUENCING_START, Annotationtype.SEQUENCING_TURN_AROUND, Annotationtype.SEQUENCING_END,
     428            Annotationtype.SEQUENCING_OPERATOR
    426429          ));
    427430       
Note: See TracChangeset for help on using the changeset viewer.