{%extends "base.html"%} {%from "flash_messages.html" import flash_messages%} {%block title%}Upload Samples{%endblock%} {%block css%} <style type="text/css"> #form-samples { background-color: #D1D1D1; } #form-samples fieldset:nth-child(odd){ background-color: white; } </style> {%endblock%} {%block contents%} <h1 class="heading">upload samples</h1> {{flash_messages("alert-success")}} <p>You can now upload a character-separated value (CSV) file that contains details about your samples. The CSV file should have the following fields: <dl> <dt>Name</dt> <dd>The primary name for the sample</dd> <dt>Name2</dt> <dd>A secondary name for the sample. This can simply be the same as <strong>Name</strong> above. This field <strong>MUST</strong> contain a value.</dd> <dt>Symbol</dt> <dd>A symbol for the sample. Can be an empty field.</dd> <dt>Alias</dt> <dd>An alias for the sample. Can be an empty field.</dd> </dl> </p> <form id="form-samples" method="POST" action="{{url_for('samples.upload_samples')}}" enctype="multipart/form-data"> <legend class="heading">upload samples</legend> <fieldset> <input type="hidden" name="species_id" value="{{species.SpeciesId}}" /> <label class="form-col-1">species:</label> <span class="form-col-2">{{species.SpeciesName}} [{{species.MenuName}}]</span> </fieldset> <fieldset> <input type="hidden" name="inbredset_id" value="{{population.InbredSetId}}" /> <label class="form-col-1">grouping/population:</label> <span class="form-col-2">{{population.Name}} [{{population.FullName}}]</span> </fieldset> <fieldset> <input id="chk:heading" type="checkbox" name="first_line_heading" class="form-col-1" /> <label for="chk:heading" class="form-col-2">first line is a heading?</label> </fieldset> <fieldset> <label for="select:separator" class="form-col-1">field separator</label> <select id="select:separator" name="separator" required="required" class="form-col-2"> <option value="">Select separator for your file</option> <option value="	">TAB</option> <option value=" ">Space</option> <option value=",">Comma</option> <option value=";">Semicolon</option> <option value="other">Other</option> </select> <input id="txt:separator" type="text" name="other_separator" class="form-col-2" /> <span class="form-col-2"> This is the character that separates the fields in your CSV file. If you select "<strong>Other</strong>", then you must provide the separator in the text field provided. </span> </fieldset> <fieldset> <label for="txt:delimiter" class="form-col-1">field delimiter</label> <input id="txt:delimiter" type="text" name="field_delimiter" maxlength="1" class="form-col-2" /> <span class="form-col-2"> If there is a character delimiting the string texts within particular fields in your CSV, provide the character here. This can be left blank if no such delimiters exist in your file. </span> </fieldset> <fieldset> <label for="file:samples" class="form-col-1">select file</label> <input type="file" name="samples_file" id="file:samples" accept="text/csv, text/tab-separated-values" class="form-col-2" /> </fieldset> <fieldset> <input type="submit" value="upload samples file" class="btn btn-main form-col-2" /> </fieldset> </form> <table id="tbl:samples-preview"> <caption class="heading">preview content</caption> <thead> <tr> <th>Name</th> <th>Name2</th> <th>Symbol</th> <th>Alias</th> </tr> </thead> <tbody> <tr id="default-row"> <td colspan="4"> Please make some selections to preview the data.</td> </tr> </tbody> </table> {%endblock%} {%block javascript%} <script src="/static/js/upload_samples.js" type="text/javascript"></script> {%endblock%}