From 754e8f214b940e05298cb360ed829f5c685d55a5 Mon Sep 17 00:00:00 2001 From: Frederick Muriuki Muriithi Date: Thu, 25 Jul 2024 11:07:33 -0500 Subject: Rename module: qc_app --> uploader --- uploader/templates/base.html | 51 ++++ uploader/templates/cli-output.html | 8 + .../templates/continue_from_create_dataset.html | 52 ++++ uploader/templates/continue_from_create_study.html | 52 ++++ uploader/templates/data_review.html | 85 +++++++ uploader/templates/dbupdate_error.html | 12 + uploader/templates/dbupdate_hidden_fields.html | 29 +++ uploader/templates/errors_display.html | 47 ++++ uploader/templates/final_confirmation.html | 47 ++++ uploader/templates/flash_messages.html | 25 ++ uploader/templates/http-error.html | 18 ++ uploader/templates/index.html | 81 ++++++ uploader/templates/insert_error.html | 32 +++ uploader/templates/insert_progress.html | 46 ++++ uploader/templates/insert_success.html | 19 ++ uploader/templates/job_progress.html | 40 +++ uploader/templates/no_such_job.html | 14 ++ uploader/templates/parse_failure.html | 26 ++ uploader/templates/parse_results.html | 30 +++ .../rqtl2/create-geno-dataset-success.html | 55 ++++ .../rqtl2/create-probe-dataset-success.html | 59 +++++ .../rqtl2/create-probe-study-success.html | 49 ++++ .../templates/rqtl2/create-tissue-success.html | 106 ++++++++ uploader/templates/rqtl2/index.html | 36 +++ uploader/templates/rqtl2/no-such-job.html | 13 + uploader/templates/rqtl2/rqtl2-job-error.html | 39 +++ uploader/templates/rqtl2/rqtl2-job-results.html | 24 ++ uploader/templates/rqtl2/rqtl2-job-status.html | 20 ++ uploader/templates/rqtl2/rqtl2-qc-job-error.html | 120 +++++++++ uploader/templates/rqtl2/rqtl2-qc-job-results.html | 66 +++++ uploader/templates/rqtl2/rqtl2-qc-job-status.html | 41 +++ uploader/templates/rqtl2/rqtl2-qc-job-success.html | 37 +++ uploader/templates/rqtl2/select-geno-dataset.html | 144 +++++++++++ uploader/templates/rqtl2/select-population.html | 136 ++++++++++ .../templates/rqtl2/select-probeset-dataset.html | 191 ++++++++++++++ .../templates/rqtl2/select-probeset-study-id.html | 143 +++++++++++ uploader/templates/rqtl2/select-tissue.html | 115 +++++++++ uploader/templates/rqtl2/summary-info.html | 65 +++++ .../rqtl2/upload-rqtl2-bundle-step-01.html | 276 +++++++++++++++++++++ .../rqtl2/upload-rqtl2-bundle-step-02.html | 33 +++ uploader/templates/samples/select-population.html | 99 ++++++++ uploader/templates/samples/select-species.html | 30 +++ uploader/templates/samples/upload-failure.html | 27 ++ uploader/templates/samples/upload-progress.html | 22 ++ uploader/templates/samples/upload-samples.html | 139 +++++++++++ uploader/templates/samples/upload-success.html | 18 ++ uploader/templates/select_dataset.html | 161 ++++++++++++ uploader/templates/select_platform.html | 82 ++++++ uploader/templates/select_species.html | 92 +++++++ uploader/templates/select_study.html | 108 ++++++++ uploader/templates/stdout_output.html | 8 + uploader/templates/unhandled_exception.html | 21 ++ uploader/templates/upload_progress_indicator.html | 35 +++ uploader/templates/worker_failure.html | 24 ++ 54 files changed, 3348 insertions(+) create mode 100644 uploader/templates/base.html create mode 100644 uploader/templates/cli-output.html create mode 100644 uploader/templates/continue_from_create_dataset.html create mode 100644 uploader/templates/continue_from_create_study.html create mode 100644 uploader/templates/data_review.html create mode 100644 uploader/templates/dbupdate_error.html create mode 100644 uploader/templates/dbupdate_hidden_fields.html create mode 100644 uploader/templates/errors_display.html create mode 100644 uploader/templates/final_confirmation.html create mode 100644 uploader/templates/flash_messages.html create mode 100644 uploader/templates/http-error.html create mode 100644 uploader/templates/index.html create mode 100644 uploader/templates/insert_error.html create mode 100644 uploader/templates/insert_progress.html create mode 100644 uploader/templates/insert_success.html create mode 100644 uploader/templates/job_progress.html create mode 100644 uploader/templates/no_such_job.html create mode 100644 uploader/templates/parse_failure.html create mode 100644 uploader/templates/parse_results.html create mode 100644 uploader/templates/rqtl2/create-geno-dataset-success.html create mode 100644 uploader/templates/rqtl2/create-probe-dataset-success.html create mode 100644 uploader/templates/rqtl2/create-probe-study-success.html create mode 100644 uploader/templates/rqtl2/create-tissue-success.html create mode 100644 uploader/templates/rqtl2/index.html create mode 100644 uploader/templates/rqtl2/no-such-job.html create mode 100644 uploader/templates/rqtl2/rqtl2-job-error.html create mode 100644 uploader/templates/rqtl2/rqtl2-job-results.html create mode 100644 uploader/templates/rqtl2/rqtl2-job-status.html create mode 100644 uploader/templates/rqtl2/rqtl2-qc-job-error.html create mode 100644 uploader/templates/rqtl2/rqtl2-qc-job-results.html create mode 100644 uploader/templates/rqtl2/rqtl2-qc-job-status.html create mode 100644 uploader/templates/rqtl2/rqtl2-qc-job-success.html create mode 100644 uploader/templates/rqtl2/select-geno-dataset.html create mode 100644 uploader/templates/rqtl2/select-population.html create mode 100644 uploader/templates/rqtl2/select-probeset-dataset.html create mode 100644 uploader/templates/rqtl2/select-probeset-study-id.html create mode 100644 uploader/templates/rqtl2/select-tissue.html create mode 100644 uploader/templates/rqtl2/summary-info.html create mode 100644 uploader/templates/rqtl2/upload-rqtl2-bundle-step-01.html create mode 100644 uploader/templates/rqtl2/upload-rqtl2-bundle-step-02.html create mode 100644 uploader/templates/samples/select-population.html create mode 100644 uploader/templates/samples/select-species.html create mode 100644 uploader/templates/samples/upload-failure.html create mode 100644 uploader/templates/samples/upload-progress.html create mode 100644 uploader/templates/samples/upload-samples.html create mode 100644 uploader/templates/samples/upload-success.html create mode 100644 uploader/templates/select_dataset.html create mode 100644 uploader/templates/select_platform.html create mode 100644 uploader/templates/select_species.html create mode 100644 uploader/templates/select_study.html create mode 100644 uploader/templates/stdout_output.html create mode 100644 uploader/templates/unhandled_exception.html create mode 100644 uploader/templates/upload_progress_indicator.html create mode 100644 uploader/templates/worker_failure.html (limited to 'uploader/templates') diff --git a/uploader/templates/base.html b/uploader/templates/base.html new file mode 100644 index 0000000..eb5e6b7 --- /dev/null +++ b/uploader/templates/base.html @@ -0,0 +1,51 @@ + + + + + + + {%block extrameta%}{%endblock%} + + GN Uploader: {%block title%}{%endblock%} + + + + + + + + + + + {%block css%}{%endblock%} + + + + +
+ {%block contents%}{%endblock%} +
+ + + + {%block javascript%}{%endblock%} + + diff --git a/uploader/templates/cli-output.html b/uploader/templates/cli-output.html new file mode 100644 index 0000000..33fb73b --- /dev/null +++ b/uploader/templates/cli-output.html @@ -0,0 +1,8 @@ +{%macro cli_output(job, stream)%} + +

{{stream | upper}} Output

+
+
{{job.get(stream, "")}}
+
+ +{%endmacro%} diff --git a/uploader/templates/continue_from_create_dataset.html b/uploader/templates/continue_from_create_dataset.html new file mode 100644 index 0000000..03bb49c --- /dev/null +++ b/uploader/templates/continue_from_create_dataset.html @@ -0,0 +1,52 @@ +{%extends "base.html"%} +{%from "dbupdate_hidden_fields.html" import hidden_fields%} + +{%block title%}Create Study{%endblock%} + +{%block css%} + +{%endblock%} + +{%block contents%} +

{{filename}}: create study

+ +{%with messages = get_flashed_messages(with_categories=true)%} +{%if messages:%} + +{%endif%} +{%endwith%} + +
+
+ continue with new dataset + {{hidden_fields( + filename, filetype, species=species, genechipid=genechipid, + studyid=studyid, datasetid=datasetid, totallines=totallines)}} + + +
+
+ +
+

OR

+
+ +
+
+ Select from existing dataset + {{hidden_fields( + filename, filetype, species=species, genechipid=genechipid, + studyid=studyid, datasetid=datasetid, totallines=totallines)}} + + +
+
+{%endblock%} diff --git a/uploader/templates/continue_from_create_study.html b/uploader/templates/continue_from_create_study.html new file mode 100644 index 0000000..34e6e5e --- /dev/null +++ b/uploader/templates/continue_from_create_study.html @@ -0,0 +1,52 @@ +{%extends "base.html"%} +{%from "dbupdate_hidden_fields.html" import hidden_fields%} + +{%block title%}Create Study{%endblock%} + +{%block css%} + +{%endblock%} + +{%block contents%} +

{{filename}}: create study

+ +{%with messages = get_flashed_messages(with_categories=true)%} +{%if messages:%} + +{%endif%} +{%endwith%} + +
+
+ continue with new study + {{hidden_fields( + filename, filetype, species=species, genechipid=genechipid, + studyid=studyid, totallines=totallines)}} + + +
+
+ +
+

OR

+
+ +
+
+ Select from existing study + {{hidden_fields( + filename, filetype, species=species, genechipid=genechipid, + studyid=studyid, totallines=totallines)}} + + +
+
+{%endblock%} diff --git a/uploader/templates/data_review.html b/uploader/templates/data_review.html new file mode 100644 index 0000000..b7528fd --- /dev/null +++ b/uploader/templates/data_review.html @@ -0,0 +1,85 @@ +{%extends "base.html"%} + +{%block title%}Data Review{%endblock%} + +{%block contents%} +

data review

+ +
+

Data Concerns

+

The following are some of the requirements that the data in your file + MUST fulfil before it is considered valid for this system: +

+ +
    +
  1. File headings +
      +
    • The first row in the file should contains the headings. The number of + headings in this first row determines the number of columns expected for + all other lines in the file.
    • +
    • Each heading value in the first row MUST appear in the first row + ONE AND ONLY ONE time
    • +
    • The sample/cases (previously 'strains') headers in your first row will be + against those in the + GeneNetwork database.
      + + If you encounter an error saying your sample(s)/case(s) do not exist + in the GeneNetwork database, then you will have to use the + Upload Samples/Cases + option on this system to upload them. + +
    +
  2. + +
  3. Data +
      +
    1. NONE of the data cells/fields is allowed to be empty. + All fields/cells MUST contain a value.
    2. +
    3. The first column of the data rows will be considered a textual field, + holding the "identifier" for that row
    4. +
    5. Except for the first column/field for each data row, + NONE of the data columns/cells/fields should contain + spurious characters like `eeeee`, `5.555iloveguix`, etc...
      + All of them should be decimal values
    6. +
    7. decimal numbers must conform to the following criteria: +
        +
      • when checking an average file decimal numbers must have exactly three + decimal places to the right of the decimal point.
      • +
      • when checking a standard error file decimal numbers must have six or + greater decimal places to the right of the decimal point.
      • +
      • there must be a number to the left side of the decimal place + (e.g. 0.55555 is allowed but .55555 is not).
      • +
      +
    8. +
    +
  4. +
+
+ + +
+

Supported File Types

+ We support the following file types: + + + +
+{%endblock%} diff --git a/uploader/templates/dbupdate_error.html b/uploader/templates/dbupdate_error.html new file mode 100644 index 0000000..e1359d2 --- /dev/null +++ b/uploader/templates/dbupdate_error.html @@ -0,0 +1,12 @@ +{%extends "base.html"%} + +{%block title%}DB Update Error{%endblock%} + +{%block contents%} +

database update error

+ +

+ Database Update Error: {{error_message}} +

+ +{%endblock%} diff --git a/uploader/templates/dbupdate_hidden_fields.html b/uploader/templates/dbupdate_hidden_fields.html new file mode 100644 index 0000000..ccbc299 --- /dev/null +++ b/uploader/templates/dbupdate_hidden_fields.html @@ -0,0 +1,29 @@ +{%macro hidden_fields(filename, filetype):%} + + + + + +{%if kwargs.get("totallines")%} + +{%endif%} +{%if kwargs.get("species"):%} + +{%endif%} +{%if kwargs.get("genechipid"):%} + +{%endif%} +{%if kwargs.get("inbredsetid"):%} + +{%endif%} +{%if kwargs.get("tissueid"):%} + +{%endif%} +{%if kwargs.get("studyid"):%} + +{%endif%} +{%if kwargs.get("datasetid"):%} + +{%endif%} + +{%endmacro%} diff --git a/uploader/templates/errors_display.html b/uploader/templates/errors_display.html new file mode 100644 index 0000000..715cfcf --- /dev/null +++ b/uploader/templates/errors_display.html @@ -0,0 +1,47 @@ +{%macro errors_display(errors, no_error_msg, error_message, complete)%} + +{%if errors | length == 0 %} +{{no_error_msg}} +{%else %} +

{{error_message}}

+ + + + + + + + + + + + + {%for error in errors%} + + + + + + + {%endfor%} + +
line numbercolumn(s)errorerror message
{{error["line"]}} + {%if isinvalidvalue(error):%} + {{error.column}} + {%elif isduplicateheading(error): %} + {{error.columns}} + {%else: %} + - + {%endif %} + + {%if isinvalidvalue(error):%} + Invalid Value + {%elif isduplicateheading(error): %} + Duplicate Header + {%else%} + Inconsistent Columns + {%endif %} + {{error["message"]}}
+{%endif%} + +{%endmacro%} diff --git a/uploader/templates/final_confirmation.html b/uploader/templates/final_confirmation.html new file mode 100644 index 0000000..0727fc8 --- /dev/null +++ b/uploader/templates/final_confirmation.html @@ -0,0 +1,47 @@ +{%extends "base.html"%} +{%from "dbupdate_hidden_fields.html" import hidden_fields%} + +{%block title%}Confirmation{%endblock%} + +{%macro display_item(item_name, item_data):%} +
  • + {{item_name}} + {%if item_data%} + + {%endif%} +
  • +{%endmacro%} + +{%block contents%} +

    Final Confirmation

    + +
    +

    Selected Data

    + +
    + +
    + {{hidden_fields( + filename, filetype, species=species, genechipid=genechipid, + studyid=studyid,datasetid=datasetid, totallines=totallines)}} +
    + +
    +
    + +{%endblock%} diff --git a/uploader/templates/flash_messages.html b/uploader/templates/flash_messages.html new file mode 100644 index 0000000..b7af178 --- /dev/null +++ b/uploader/templates/flash_messages.html @@ -0,0 +1,25 @@ +{%macro flash_all_messages()%} +{%with messages = get_flashed_messages(with_categories=true)%} +{%if messages:%} + +{%endif%} +{%endwith%} +{%endmacro%} + +{%macro flash_messages(filter_class)%} +{%with messages = get_flashed_messages(with_categories=true)%} +{%if messages:%} + +{%endif%} +{%endwith%} +{%endmacro%} diff --git a/uploader/templates/http-error.html b/uploader/templates/http-error.html new file mode 100644 index 0000000..374fb86 --- /dev/null +++ b/uploader/templates/http-error.html @@ -0,0 +1,18 @@ +{%extends "base.html"%} + +{%block title%}HTTP Error: {{exc.code}}{%endblock%} + +{%block contents%} +

    {{exc.code}}: {{exc.description}}

    + +
    +

    + You attempted to access {{request_url}} which failed with the following + error: +

    +
    + +
    +
    {{"\n".join(trace)}}
    +
    +{%endblock%} diff --git a/uploader/templates/index.html b/uploader/templates/index.html new file mode 100644 index 0000000..89d2ae9 --- /dev/null +++ b/uploader/templates/index.html @@ -0,0 +1,81 @@ +{%extends "base.html"%} + +{%block title%}Data Upload{%endblock%} + +{%block contents%} +
    +

    data upload

    + +
    +

    Each of the sections below gives you a different option for data upload. + Please read the documentation for each section carefully to understand what + each section is about.

    +
    +
    + +
    +

    R/qtl2 Bundles

    + +
    +

    This feature combines and extends the two upload methods below. Instead of + uploading one item at a time, the R/qtl2 bundle you upload can contain both + the genotypes data (samples/individuals/cases and their data) and the + expression data.

    +

    The R/qtl2 bundle, additionally, can contain extra metadata, that neither + of the methods below can handle.

    + + + +
    +
    + + +
    +

    Expression Data

    + +
    +

    This feature enables you to upload expression data. It expects the data to + be in tab-separated values (TSV) files. The data should be + a simple matrix of phenotype × sample, i.e. The first column is a + list of the phenotypes and the first row is a list of + samples/cases.

    + +

    If you haven't done so please go to this page to learn the requirements for + file formats and helpful suggestions to enter your data in a fast and easy + way.

    + +
      +
    1. PLEASE REVIEW YOUR DATA.Make sure your data complies + with our system requirements. ( + Help + )
    2. +
    3. UPLOAD YOUR DATA FOR DATA VERIFICATION. We accept + .csv, .txt and .zip + files (Help)
    4. +
    +
    + + upload expression data +
    + +
    +

    samples/cases

    + +
    +

    For the expression data above, you need the samples/cases in your file to + already exist in the GeneNetwork database. If there are any samples that do + not already exist the upload of the expression data will fail.

    +

    This section gives you the opportunity to upload any missing samples

    +
    + + upload Samples/Cases +
    + +{%endblock%} diff --git a/uploader/templates/insert_error.html b/uploader/templates/insert_error.html new file mode 100644 index 0000000..5301288 --- /dev/null +++ b/uploader/templates/insert_error.html @@ -0,0 +1,32 @@ +{%extends "base.html"%} + +{%block title%}Data Insertion Failure{%endblock%} + +{%block contents%} +

    Insertion Failure

    + +
    +

    + There was an error inserting data into the database +

    + +

    + Please notify the developers of this issue when you encounter it, + providing the information below. +

    + +

    Debugging Information

    + + +
    + +
    +

    STDERR Output

    +
    +    {{job["stderr"]}}
    +  
    +
    + +{%endblock%} diff --git a/uploader/templates/insert_progress.html b/uploader/templates/insert_progress.html new file mode 100644 index 0000000..52177d6 --- /dev/null +++ b/uploader/templates/insert_progress.html @@ -0,0 +1,46 @@ +{%extends "base.html"%} +{%from "stdout_output.html" import stdout_output%} + +{%block extrameta%} + +{%endblock%} + +{%block title%}Job Status{%endblock%} + +{%block contents%} +

    {{job_name}}

    + +
    +
    +
    + + {{job_status}}: {{message}} +
    + +{%if job.get("stdout", "").split("\n\n") | length < 3 %} +{%set lines = 0%} +{%else%} +{%set lines = (job.get("stdout", "").split("\n\n") | length / 3) %} +{%endif%} +{%set totallines = job.get("totallines", lines+3) | int %} +{%if totallines > 1000 %} +{%set fraction = ((lines*1000)/totallines) %} +{%else%} +{%set fraction = (lines/totallines)%} +{%endif%} + +
    + + {{fraction*100}} + + {{"%.2f" | format(fraction * 100 | float)}}% +
    +
    +
    + + +{{stdout_output(job)}} + +{%endblock%} diff --git a/uploader/templates/insert_success.html b/uploader/templates/insert_success.html new file mode 100644 index 0000000..7e1fa8d --- /dev/null +++ b/uploader/templates/insert_success.html @@ -0,0 +1,19 @@ +{%extends "base.html"%} +{%from "stdout_output.html" import stdout_output%} + +{%block title%}Insertion Success{%endblock%} + +{%block contents%} +

    Insertion Success

    + +
    +

    Data inserted successfully!

    + +

    The following queries were run:

    +
    + +
    + {{stdout_output(job)}} +
    + +{%endblock%} diff --git a/uploader/templates/job_progress.html b/uploader/templates/job_progress.html new file mode 100644 index 0000000..1af0763 --- /dev/null +++ b/uploader/templates/job_progress.html @@ -0,0 +1,40 @@ +{%extends "base.html"%} +{%from "errors_display.html" import errors_display%} + +{%block extrameta%} + +{%endblock%} + +{%block title%}Job Status{%endblock%} + +{%block contents%} +

    {{job_name}}

    + +
    +
    + Status +
    + + {{job_status}}: {{message}}
    +
    + +
    + + + {{progress}} + {{"%.2f" | format(progress)}}% +
    + + + + +
    +
    + +
    + {{errors_display(errors, "No errors found so far", "We have found the following errors so far", False)}} +
    + +{%endblock%} diff --git a/uploader/templates/no_such_job.html b/uploader/templates/no_such_job.html new file mode 100644 index 0000000..42a2d48 --- /dev/null +++ b/uploader/templates/no_such_job.html @@ -0,0 +1,14 @@ +{%extends "base.html"%} + +{%block extrameta%} + +{%endblock%} + +{%block title%}No Such Job{%endblock%} + +{%block contents%} +

    No Such Job: {{job_id}}

    + +

    No job, with the id '{{job_id}}' was found!

    + +{%endblock%} diff --git a/uploader/templates/parse_failure.html b/uploader/templates/parse_failure.html new file mode 100644 index 0000000..31f6be8 --- /dev/null +++ b/uploader/templates/parse_failure.html @@ -0,0 +1,26 @@ +{%extends "base.html"%} + +{%block title%}Worker Failure{%endblock%} + +{%block contents%} +

    Worker Failure

    + +

    + There was an error while parsing your file. +

    + +

    + Please notify the developers of this issue when you encounter it, + providing the information below. +

    + +

    Debugging Information

    + + + +{%endblock%} diff --git a/uploader/templates/parse_results.html b/uploader/templates/parse_results.html new file mode 100644 index 0000000..e2bf7f0 --- /dev/null +++ b/uploader/templates/parse_results.html @@ -0,0 +1,30 @@ +{%extends "base.html"%} +{%from "errors_display.html" import errors_display%} + +{%block title%}Parse Results{%endblock%} + +{%block contents%} +

    {{job_name}}: parse results

    + +{%if user_aborted%} +Job aborted by the user +{%endif%} + +{{errors_display(errors, "No errors found in the file", "We found the following errors", True)}} + +{%if errors | length == 0 and not user_aborted %} +
    + + +
    +{%endif%} + +{%if errors | length > 0 or user_aborted %} +
    + + Go back + +{%endif%} + +{%endblock%} diff --git a/uploader/templates/rqtl2/create-geno-dataset-success.html b/uploader/templates/rqtl2/create-geno-dataset-success.html new file mode 100644 index 0000000..1b50221 --- /dev/null +++ b/uploader/templates/rqtl2/create-geno-dataset-success.html @@ -0,0 +1,55 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Upload R/qtl2 Bundle{%endblock%} + +{%block contents%} +

    Select Genotypes Dataset

    + +
    +

    You successfully created the genotype dataset with the following + information. +

    +
    ID
    +
    {{geno_dataset.id}}
    + +
    Name
    +
    {{geno_dataset.name}}
    + +
    Full Name
    +
    {{geno_dataset.fname}}
    + +
    Short Name
    +
    {{geno_dataset.sname}}
    + +
    Created On
    +
    {{geno_dataset.today}}
    + +
    Public?
    +
    {%if geno_dataset.public == 0%}No{%else%}Yes{%endif%}
    +
    +

    +
    + +
    +
    + select from existing genotype datasets + + + + + + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/create-probe-dataset-success.html b/uploader/templates/rqtl2/create-probe-dataset-success.html new file mode 100644 index 0000000..790d174 --- /dev/null +++ b/uploader/templates/rqtl2/create-probe-dataset-success.html @@ -0,0 +1,59 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Upload R/qtl2 Bundle{%endblock%} + +{%block contents%} +

    Create ProbeSet Dataset

    + +
    +

    You successfully created the ProbeSet dataset with the following + information. +

    +
    Averaging Method
    +
    {{avgmethod.Name}}
    + +
    ID
    +
    {{dataset.datasetid}}
    + +
    Name
    +
    {{dataset.name2}}
    + +
    Full Name
    +
    {{dataset.fname}}
    + +
    Short Name
    +
    {{dataset.sname}}
    + +
    Created On
    +
    {{dataset.today}}
    + +
    DataScale
    +
    {{dataset.datascale}}
    +
    +

    +
    + +
    +
    + Create ProbeSet dataset + + + + + + + + + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/create-probe-study-success.html b/uploader/templates/rqtl2/create-probe-study-success.html new file mode 100644 index 0000000..d0ee508 --- /dev/null +++ b/uploader/templates/rqtl2/create-probe-study-success.html @@ -0,0 +1,49 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Upload R/qtl2 Bundle{%endblock%} + +{%block contents%} +

    Create ProbeSet Study

    + +
    +

    You successfully created the ProbeSet study with the following + information. +

    +
    ID
    +
    {{study.id}}
    + +
    Name
    +
    {{study.name}}
    + +
    Full Name
    +
    {{study.fname}}
    + +
    Short Name
    +
    {{study.sname}}
    + +
    Created On
    +
    {{study.today}}
    +
    +

    + +
    + Create ProbeSet study + + + + + + + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/create-tissue-success.html b/uploader/templates/rqtl2/create-tissue-success.html new file mode 100644 index 0000000..5f2c5a0 --- /dev/null +++ b/uploader/templates/rqtl2/create-tissue-success.html @@ -0,0 +1,106 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_all_messages%} + +{%block title%}Upload R/qtl2 Bundle{%endblock%} + +{%block contents%} +

    Select Tissue

    + +
    +

    You have successfully added a new tissue, organ or biological material with + the following details:

    +
    + +
    + {{flash_all_messages()}} + +
    + Create Tissue + + + + + + + +
    + + +
    + +
    + + +
    + + {%if tissue.BIRN_lex_ID%} +
    + + +
    + {%endif%} + + {%if tissue.BIRN_lex_Name%} +
    + + +
    + {%endif%} +
    + +
    + +
    + + + + + + + + +
    +
    +
    + +
    +

    + OR +

    +
    + +
    +
    + + + + + + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/index.html b/uploader/templates/rqtl2/index.html new file mode 100644 index 0000000..f3329c2 --- /dev/null +++ b/uploader/templates/rqtl2/index.html @@ -0,0 +1,36 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Data Upload{%endblock%} + +{%block contents%} +

    R/qtl2 data upload

    + +

    R/qtl2 Upload

    + +
    + upload R/qtl2 bundle + {{flash_messages("error-rqtl2")}} + +
    + + + + Data that you upload to the system should belong to a know species. + Here you can select the species that you wish to upload data for. + +
    + + +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/no-such-job.html b/uploader/templates/rqtl2/no-such-job.html new file mode 100644 index 0000000..b17004f --- /dev/null +++ b/uploader/templates/rqtl2/no-such-job.html @@ -0,0 +1,13 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Job Status{%endblock%} + +{%block contents%} +

    R/qtl2 job status

    + +

    R/qtl2 Upload: No Such Job

    + +

    No job with ID {{jobid}} was found.

    + +{%endblock%} diff --git a/uploader/templates/rqtl2/rqtl2-job-error.html b/uploader/templates/rqtl2/rqtl2-job-error.html new file mode 100644 index 0000000..9817518 --- /dev/null +++ b/uploader/templates/rqtl2/rqtl2-job-error.html @@ -0,0 +1,39 @@ +{%extends "base.html"%} +{%from "cli-output.html" import cli_output%} + +{%block title%}Job Status{%endblock%} + +{%block contents%} +

    R/qtl2 job status

    + +

    R/qtl2 Upload: Job Status

    + +
    +

    The processing of the R/qtl2 bundle you uploaded has failed. We have + provided some information below to help you figure out what the problem + could be.

    +

    If you find that you cannot figure out what the problem is on your own, + please contact the team running the system for assistance, providing the + following details: +

    +

    +
    + +

    stdout

    +{{cli_output(job, "stdout")}} + +

    stderr

    +{{cli_output(job, "stderr")}} + +

    Log

    +
    + {%for msg in messages%} + {{msg}}
    + {%endfor%} +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/rqtl2-job-results.html b/uploader/templates/rqtl2/rqtl2-job-results.html new file mode 100644 index 0000000..4ecd415 --- /dev/null +++ b/uploader/templates/rqtl2/rqtl2-job-results.html @@ -0,0 +1,24 @@ +{%extends "base.html"%} +{%from "cli-output.html" import cli_output%} + +{%block title%}Job Status{%endblock%} + +{%block contents%} +

    R/qtl2 job status

    + +

    R/qtl2 Upload: Job Status

    + +
    +

    The processing of the R/qtl2 bundle you uploaded has completed + successfully.

    +

    You should now be able to use GeneNetwork to run analyses on your data.

    +
    + +

    Log

    +
    + {%for msg in messages%} + {{msg}}
    + {%endfor%} +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/rqtl2-job-status.html b/uploader/templates/rqtl2/rqtl2-job-status.html new file mode 100644 index 0000000..e896f88 --- /dev/null +++ b/uploader/templates/rqtl2/rqtl2-job-status.html @@ -0,0 +1,20 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Job Status{%endblock%} + +{%block extrameta%} + +{%endblock%} + +{%block contents%} +

    R/qtl2 job status

    + +

    R/qtl2 Upload: Job Status

    + +

    Log

    +
    +
    {{"\n".join(messages)}}
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/rqtl2-qc-job-error.html b/uploader/templates/rqtl2/rqtl2-qc-job-error.html new file mode 100644 index 0000000..90e8887 --- /dev/null +++ b/uploader/templates/rqtl2/rqtl2-qc-job-error.html @@ -0,0 +1,120 @@ +{%extends "base.html"%} +{%from "cli-output.html" import cli_output%} + +{%block title%}R/qtl2 bundle: QC Job Error{%endblock%} + +{%macro errors_table(tableid, errors)%} + + + + + + + + + + + + {%for error in errors%} + + + + + + + {%else%} + + + + {%endfor%} + +
    {{caption}}
    LineColumnValueMessage
    {{error.line}}{{error.column}}{{error.value}}{{error.message}}
    No errors to display here.
    +{%endmacro%} + +{%block contents%} +

    R/qtl2 bundle: QC job Error

    + +
    +

    The R/qtl2 bundle has failed some Quality Control checks.

    +

    We list below some of the errors that need to be fixed before the data can + be uploaded onto GeneNetwork.

    +
    + +{%if errorsgeneric | length > 0%} +

    Generic Errors ({{errorsgeneric | length}})

    +
    + We found the following generic errors in your R/qtl2 bundle: +
    + +

    Missing Files

    +
    +

    These files are listed in the bundle's control file, but do not actually + exist in the bundle

    +
    + + + + + + + + + + {%for error in (errorsgeneric | selectattr("type", "equalto", "MissingFile"))%} + + + + + + {%endfor%} + +
    Control File KeyBundle File NameMessage
    {{error.controlfilekey}}{{error.filename}}{{error.message}}
    + +

    Other Generic Errors

    +{{errors_table("tbl-errors-generic", errorsgeneric| selectattr("type", "ne", "MissingFile"))}} +{%endif%} + +{%if errorsgeno | length > 0%} +

    Geno Errors ({{errorsgeno | length}})

    +
    + We found the following errors in the 'geno' file in your R/qtl2 bundle: +
    +{{errors_table("tbl-errors-geno", errorsgeno[0:50])}} +{%endif%} + +{%if errorspheno | length > 0%} +

    Pheno Errors ({{errorspheno | length}})

    +
    + We found the following errors in the 'pheno' file in your R/qtl2 bundle: +
    +{{errors_table("tbl-errors-pheno", errorspheno[0:50])}} +{%endif%} + +{%if errorsphenose | length > 0%} +

    Phenose Errors ({{errorsphenose | length}})

    +
    + We found the following errors in the 'phenose' file in your R/qtl2 bundle: +
    +{{errors_table("tbl-errors-phenose", errorsphenose[0:50])}} +{%endif%} + +{%if errorsphenocovar | length > 0%} +

    Phenocovar Errors ({{errorsphenocovar | length}})

    +
    + We found the following errors in the 'phenocovar' file in your R/qtl2 bundle: +
    +{{errorsphenocovar}} +{%endif%} + +

    stdout

    +{{cli_output(job, "stdout")}} + +

    stderr

    +{{cli_output(job, "stderr")}} + +

    Log

    +
    +
    {{"\n".join(messages)}}
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/rqtl2-qc-job-results.html b/uploader/templates/rqtl2/rqtl2-qc-job-results.html new file mode 100644 index 0000000..59bc8cd --- /dev/null +++ b/uploader/templates/rqtl2/rqtl2-qc-job-results.html @@ -0,0 +1,66 @@ +{%extends "base.html"%} +{%from "cli-output.html" import cli_output%} + +{%block title%}R/qtl2 bundle: QC job results{%endblock%} + +{%block contents%} +

    R/qtl2 bundle: QC job results

    + +
    +

    The R/qtl2 bundle you uploaded has passed all automated quality-control + checks successfully.

    +

    You may now continue to load the data into GeneNetwork for the bundle, with + the following details:

    +
    + +
    +
    +
    + Species + + + Name + {{species.Name | capitalize}} + + Scientific + {{species.FullName | capitalize}} +
    + +
    + population + + + Name + {{population.InbredSetName}} + + Full Name + {{population.FullName}} + + Genetic Type + {{population.GeneticType}} + + Description + {{population.Description or "-"}} +
    + +
    + R/qtl2 Bundle File + + + + Original Name + {{rqtl2bundleorig}} + + Internal Name + {{rqtl2bundle[0:25]}}… +
    + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/rqtl2-qc-job-status.html b/uploader/templates/rqtl2/rqtl2-qc-job-status.html new file mode 100644 index 0000000..f4a6266 --- /dev/null +++ b/uploader/templates/rqtl2/rqtl2-qc-job-status.html @@ -0,0 +1,41 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Job Status{%endblock%} + +{%block extrameta%} + +{%endblock%} + +{%block contents%} +

    R/qtl2 bundle: QC job status

    + +{%if geno_percent%} +

    +

    Checking 'geno' file:

    + + {{geno_percent}}% + {{geno_percent}}%

    +{%endif%} + +{%if pheno_percent%} +

    +

    Checking 'pheno' file:

    + + {{pheno_percent}}% + {{pheno_percent}}%

    +{%endif%} + +{%if phenose_percent%} +

    +

    Checking 'phenose' file:

    + + {{phenose_percent}}% + {{phenose_percent}}%

    +{%endif%} + +

    Log

    +
    +
    {{"\n".join(messages)}}
    +
    +{%endblock%} diff --git a/uploader/templates/rqtl2/rqtl2-qc-job-success.html b/uploader/templates/rqtl2/rqtl2-qc-job-success.html new file mode 100644 index 0000000..2861a04 --- /dev/null +++ b/uploader/templates/rqtl2/rqtl2-qc-job-success.html @@ -0,0 +1,37 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_all_messages%} + +{%block title%}R/qtl2 Bundle: Quality Control Successful{%endblock%} + +{%block contents%} +

    R/qtl2 Bundle: Quality Control Successful

    + +
    +

    The R/qtl2 bundle you uploaded has passed all quality control + checks successfully, and is now ready for uploading into the database.

    +

    Click "Continue" below to proceed.

    +
    + + +
    +
    + {{flash_all_messages()}} + + + + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/select-geno-dataset.html b/uploader/templates/rqtl2/select-geno-dataset.html new file mode 100644 index 0000000..873f9c3 --- /dev/null +++ b/uploader/templates/rqtl2/select-geno-dataset.html @@ -0,0 +1,144 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Upload R/qtl2 Bundle{%endblock%} + +{%block contents%} +

    Select Genotypes Dataset

    + +
    +

    Your R/qtl2 files bundle contains a "geno" specification. You will + therefore need to select from one of the existing Genotype datasets or + create a new one.

    +

    This is the dataset where your data will be organised under.

    +
    + +
    +
    + select from existing genotype datasets + + + + + + {{flash_messages("error-rqtl2-select-geno-dataset")}} + +
    + Datasets + + + + Select from the existing genotype datasets for species + {{species.SpeciesName}} ({{species.FullName}}). + +
    + + +
    +
    + +
    +

    OR

    +
    + +
    +
    + create a new genotype dataset + + + + + + {{flash_messages("error-rqtl2-create-geno-dataset")}} + +
    + + + + Provide the new name for the genotype dataset, e.g. "BXDGeno" + +
    + +
    + + + + + Provide a longer name that better describes the genotype dataset, e.g. + "BXD Genotypes" + +
    + +
    + + + + + Provide a short name for the genotype dataset. This is optional. If not + provided, we'll default to the same value as the "Name" above. + +
    + +
    + + + + + Specify whether the dataset will be available publicly. Check to make the + dataset publicly available and uncheck to limit who can access the dataset. + +
    + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/select-population.html b/uploader/templates/rqtl2/select-population.html new file mode 100644 index 0000000..37731f0 --- /dev/null +++ b/uploader/templates/rqtl2/select-population.html @@ -0,0 +1,136 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Select Grouping/Population{%endblock%} + +{%block contents%} +

    Select grouping/population

    + +
    +

    The data is organised in a hierarchical form, beginning with + species at the very top. Under species the data is + organised by population, sometimes referred to as grouping. + (In some really old documents/systems, you might see this referred to as + InbredSet.)

    +

    In this section, you get to define what population your data is to be + organised by.

    +
    + +
    + select grouping/population + {{flash_messages("error-select-population")}} + + + +
    + + + If you are adding data to an already existing + population, simply pick the population from this drop-down selector. If + you cannot find your population from this list, try the form below to + create a new one.. +
    + + +
    + +

    OR

    + +
    + create new grouping/population + {{flash_messages("error-create-population")}} + + + +
    + mandatory + +
    + + + This is a short name that identifies the + population. Useful for menus, and quick scanning. +
    + +
    + + + This can be the same as the name above, or can + be longer. Useful for documentation, and human communication. +
    +
    + +
    + optional + +
    + + + This determines whether the + population/grouping will appear on the menus for users. +
    + +
    + + + I do not currently know what this is about. + This is a failure on my part to figure out what this is and provide a + useful description. Please feel free to remind me. +
    + +
    + + + + A long-form description of what the population consists of. Useful for + humans. +
    +
    + + +
    + +{%endblock%} + + +{%block javascript%} +{%endblock%} diff --git a/uploader/templates/rqtl2/select-probeset-dataset.html b/uploader/templates/rqtl2/select-probeset-dataset.html new file mode 100644 index 0000000..26f52ed --- /dev/null +++ b/uploader/templates/rqtl2/select-probeset-dataset.html @@ -0,0 +1,191 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Upload R/qtl2 Bundle{%endblock%} + +{%block contents%} +

    Phenotype(ProbeSet) Dataset

    + +
    +

    The R/qtl2 bundle you uploaded contains (a) "pheno" + file(s). This data needs to be organised under a dataset.

    +

    This page gives you the ability to do that.

    +
    + +{%if datasets | length > 0%} +
    +
    + Select from existing ProbeSet datasets + {{flash_messages("error-rqtl2")}} + + + + + + + + +
    + + + + + Select from existing ProbeSet datasets. +
    + + +
    +
    + +
    +

    OR

    +
    +{%endif%} + +
    +

    Create an entirely new ProbeSet dataset for your data.

    +
    + +
    +
    + Create a new ProbeSet dataset + {{flash_messages("error-rqtl2-create-probeset-dataset")}} + + + + + + + + +
    + + + + + Select the averaging method used for your data. + +
    + +
    + + + + + Provide a name for the dataset e.g. "BXDMicroArray_ProbeSet_June03". This + is mandatory MUST be provided. + +
    + +
    + + + + + Provide a longer, more descriptive name for the dataset e.g. + "UTHSC Brain mRNA U74Av2 (Jun03) MAS5". This is mandatory and + MUST be provided. + +
    + +
    + + + + + Provide a longer, more descriptive name for the dataset e.g. "Br_U_0603_M". + This is optional. + +
    + +
    + + + + + Check to specify that the dataset will be publicly available. Uncheck to + limit access to the dataset. + +
    + +
    + + + + + Select from a list of scaling methods. + +
    + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/select-probeset-study-id.html b/uploader/templates/rqtl2/select-probeset-study-id.html new file mode 100644 index 0000000..b9bf52e --- /dev/null +++ b/uploader/templates/rqtl2/select-probeset-study-id.html @@ -0,0 +1,143 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages %} + +{%block title%}Upload R/qtl2 Bundle{%endblock%} + +{%block contents%} +

    Phenotype(ProbeSet) Study

    + +
    +

    The R/qtl2 bundle you uploaded contains (a) "pheno" + file(s). This data needs to be organised under a study.

    +

    In this page, you can either select from a existing dataset:

    + +
    + Select from existing ProbeSet studies + {{flash_messages("error-rqtl2-select-probeset-study")}} + + + + + + + +
    + + + + Select from existing ProbeSet studies. + +
    + + +
    +
    + +
    +

    OR

    +
    + +
    + +

    Create a new ProbeSet dataset below:

    + +
    + Create new ProbeSet study + + {{flash_messages("error-rqtl2-create-probeset-study")}} + + + + + + + +
    + + + + Select from a list of known genomics platforms. + +
    + +
    + + + + Provide a name for the study. +
    + +
    + + + + Provide a longer, more descriptive name for the study. This is optional + and you can leave it blank. + +
    + +
    + + + + Provide a shorter name for the study. This is optional and you can leave + it blank. + +
    + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/select-tissue.html b/uploader/templates/rqtl2/select-tissue.html new file mode 100644 index 0000000..34e1758 --- /dev/null +++ b/uploader/templates/rqtl2/select-tissue.html @@ -0,0 +1,115 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Upload R/qtl2 Bundle{%endblock%} + +{%block contents%} +

    Tissue

    + +
    +

    The data you are uploading concerns a tissue, cell, organ, or other + biological material used in an experiment.

    +

    Select the appropriate biological material below

    +
    + +{%if tissues | length > 0%} +
    +
    + Select from existing ProbeSet datasets + {{flash_messages("error-select-tissue")}} + + + + + + +
    + + + + + Select from existing biological material. +
    + + +
    +
    + +
    +

    OR

    +
    +{%endif%} + +
    +

    If you cannot find the biological material in the drop-down above, add it + to the system below.

    + +
    + Add new tissue, organ or biological material + {{flash_messages("error-create-tissue")}} + + + + + + +
    + + + + + A name to identify the tissue, organ or biological material. + +
    + +
    + + + + + Provide a short name for the tissue, organ or biological material used in + the experiment. + +
    + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/rqtl2/summary-info.html b/uploader/templates/rqtl2/summary-info.html new file mode 100644 index 0000000..1be87fa --- /dev/null +++ b/uploader/templates/rqtl2/summary-info.html @@ -0,0 +1,65 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Upload R/qtl2 Bundle{%endblock%} + +{%block contents%} +

    Summary

    + +
    +

    This is the information you have provided to accompany the R/qtl2 bundle + you have uploaded. Please verify the information is correct before + proceeding.

    +
    + +
    +
    +
    Species
    +
    {{species.SpeciesName}} ({{species.FullName}})
    + +
    Population
    +
    {{population.InbredSetName}}
    + + {%if geno_dataset%} +
    Genotype Dataset
    +
    {{geno_dataset.Name}} ({{geno_dataset.FullName}})
    + {%endif%} + + {%if tissue%} +
    Tissue
    +
    {{tissue.TissueName}} ({{tissue.Name}}, {{tissue.Short_Name}})
    + {%endif%} + + {%if probe_study%} +
    ProbeSet Study
    +
    {{probe_study.Name}} ({{probe_study.FullName}})
    + {%endif%} + + {%if probe_dataset%} +
    ProbeSet Dataset
    +
    {{probe_dataset.Name2}} ({{probe_dataset.FullName}})
    + {%endif%} +
    +
    + +
    +
    + Create ProbeSet dataset + + + + + + + + + +
    +
    +{%endblock%} diff --git a/uploader/templates/rqtl2/upload-rqtl2-bundle-step-01.html b/uploader/templates/rqtl2/upload-rqtl2-bundle-step-01.html new file mode 100644 index 0000000..07c240f --- /dev/null +++ b/uploader/templates/rqtl2/upload-rqtl2-bundle-step-01.html @@ -0,0 +1,276 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_all_messages%} +{%from "upload_progress_indicator.html" import upload_progress_indicator%} + +{%block title%}Upload R/qtl2 Bundle{%endblock%} + +{%block contents%} +{%macro rqtl2_file_help()%} + +

    + Provide a valid R/qtl2 zip file here. In particular, ensure your zip bundle + contains exactly one control file and the corresponding files mentioned in + the control file. +

    +

    + The control file can be either a YAML or JSON file. ALL other data + files in the zip bundle should be CSV files. +

    +

    See the + + R/qtl2 file format specifications + + for more details. +

    +
    +{%endmacro%} +{{upload_progress_indicator()}} + + + + +

    Upload R/qtl2 Bundle

    + + + +
    + + + + {{flash_all_messages()}} + +
    + file upload + + + {{rqtl2_file_help()}} +
    + + +
    + +{%endblock%} + +{%block javascript%} + + + +{%endblock%} diff --git a/uploader/templates/rqtl2/upload-rqtl2-bundle-step-02.html b/uploader/templates/rqtl2/upload-rqtl2-bundle-step-02.html new file mode 100644 index 0000000..93b1dc9 --- /dev/null +++ b/uploader/templates/rqtl2/upload-rqtl2-bundle-step-02.html @@ -0,0 +1,33 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_all_messages%} + +{%block title%}Upload R/qtl2 Bundle{%endblock%} + +{%block contents%} +

    Upload R/qtl2 Bundle

    + +
    +

    You have successfully uploaded the zipped bundle of R/qtl2 files.

    +

    The next step is to select the various extra information we need to figure + out what to do with the data. You will select/create the relevant studies + and/or datasets to organise the data in the steps that follow.

    +

    Click "Continue" below to proceed.

    + +
    + {{flash_all_messages()}} + + + + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/samples/select-population.html b/uploader/templates/samples/select-population.html new file mode 100644 index 0000000..da19ddc --- /dev/null +++ b/uploader/templates/samples/select-population.html @@ -0,0 +1,99 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Select Grouping/Population{%endblock%} + +{%block contents%} +

    Select grouping/population

    + +
    +

    We organise the samples/cases/strains in a hierarchichal form, starting + with species at the very top. Under species, we have a + grouping in terms of the relevant population + (e.g. Inbred populations, cell tissue, etc.)

    +
    + +
    + select grouping/population + {{flash_messages("error-select-population")}} + + + +
    + + +
    + + +
    + +

    OR

    + +
    + create new grouping/population + {{flash_messages("error-create-population")}} + + +
    + mandatory + + + + + + +
    +
    + Optional + + + + + + + + + +
    + + +
    + +{%endblock%} + + +{%block javascript%} +{%endblock%} diff --git a/uploader/templates/samples/select-species.html b/uploader/templates/samples/select-species.html new file mode 100644 index 0000000..edadc61 --- /dev/null +++ b/uploader/templates/samples/select-species.html @@ -0,0 +1,30 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_all_messages%} + +{%block title%}Select Grouping/Population{%endblock%} + +{%block contents%} +

    upload samples/cases

    + +

    We need to know what species your data belongs to.

    + +{{flash_all_messages()}} + +
    + upload samples +
    + + +
    + + +
    +{%endblock%} diff --git a/uploader/templates/samples/upload-failure.html b/uploader/templates/samples/upload-failure.html new file mode 100644 index 0000000..09e2ecf --- /dev/null +++ b/uploader/templates/samples/upload-failure.html @@ -0,0 +1,27 @@ +{%extends "base.html"%} +{%from "cli-output.html" import cli_output%} + +{%block title%}Samples Upload Failure{%endblock%} + +{%block contents%} +

    {{job.job_name}}

    + +

    There was a failure attempting to upload the samples.

    + +

    Here is some information to help with debugging the issue. Provide this + information to the developer/maintainer.

    + +

    Debugging Information

    + + +

    stdout

    +{{cli_output(job, "stdout")}} + +

    stderr

    +{{cli_output(job, "stderr")}} + +{%endblock%} diff --git a/uploader/templates/samples/upload-progress.html b/uploader/templates/samples/upload-progress.html new file mode 100644 index 0000000..7bb02be --- /dev/null +++ b/uploader/templates/samples/upload-progress.html @@ -0,0 +1,22 @@ +{%extends "base.html"%} +{%from "cli-output.html" import cli_output%} + +{%block extrameta%} + +{%endblock%} + +{%block title%}Job Status{%endblock%} + +{%block contents%} +

    {{job.job_name}}

    + +

    +status: +{{job["status"]}} ({{job.get("message", "-")}})
    +

    + +

    saving to database...

    + +{{cli_output(job, "stdout")}} + +{%endblock%} diff --git a/uploader/templates/samples/upload-samples.html b/uploader/templates/samples/upload-samples.html new file mode 100644 index 0000000..e62de57 --- /dev/null +++ b/uploader/templates/samples/upload-samples.html @@ -0,0 +1,139 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} + +{%block title%}Upload Samples{%endblock%} + +{%block css%}{%endblock%} + +{%block contents%} +

    upload samples

    + +{{flash_messages("alert-success")}} + +

    You can now upload a character-separated value (CSV) file that contains + details about your samples. The CSV file should have the following fields: +

    +
    Name
    +
    The primary name for the sample
    + +
    Name2
    +
    A secondary name for the sample. This can simply be the same as + Name above. This field MUST contain a + value.
    + +
    Symbol
    +
    A symbol for the sample. Can be an empty field.
    + +
    Alias
    +
    An alias for the sample. Can be an empty field.
    +
    +

    + +
    + upload samples + +
    + + + {{species.SpeciesName}} [{{species.MenuName}}] +
    + +
    + + + {{population.Name}} [{{population.FullName}}] +
    + +
    + + +
    + +
    + + + + + If you select 'Other' for the field separator value, + enter the character that separates the fields in your CSV file in the form + field below. + +
    + +
    + + + + Select this if the first line in your file contains headings for the + columns. + +
    + +
    + + + + 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. + +
    + + +
    + + + + + + + + + + + + + + + + + + +
    preview content
    NameName2SymbolAlias
    + Please make some selections to preview the data.
    + +{%endblock%} + + +{%block javascript%} + +{%endblock%} diff --git a/uploader/templates/samples/upload-success.html b/uploader/templates/samples/upload-success.html new file mode 100644 index 0000000..cb745c3 --- /dev/null +++ b/uploader/templates/samples/upload-success.html @@ -0,0 +1,18 @@ +{%extends "base.html"%} +{%from "cli-output.html" import cli_output%} + +{%block title%}Job Status{%endblock%} + +{%block contents%} +

    {{job.job_name}}

    + +

    +status: +{{job["status"]}} ({{job.get("message", "-")}})
    +

    + +

    Successfully uploaded the samples.

    + +{{cli_output(job, "stdout")}} + +{%endblock%} diff --git a/uploader/templates/select_dataset.html b/uploader/templates/select_dataset.html new file mode 100644 index 0000000..2f07de8 --- /dev/null +++ b/uploader/templates/select_dataset.html @@ -0,0 +1,161 @@ +{%extends "base.html"%} +{%from "dbupdate_hidden_fields.html" import hidden_fields%} + +{%block title%}Select Dataset{%endblock%} + +{%block css%} + +{%endblock%} + +{%block contents%} +

    {{filename}}: select dataset

    + +
    +
    + choose existing dataset + {{hidden_fields( + filename, filetype, species=species, genechipid=genechipid, + studyid=studyid, totallines=totallines)}} + +
    + + +
    + + +
    +
    + +
    +

    OR

    +
    + +
    +
    + create new dataset + {{hidden_fields( + filename, filetype, species=species, genechipid=genechipid, + studyid=studyid, totallines=totallines)}} + + {%with messages = get_flashed_messages(with_categories=true)%} + {%if messages:%} + + {%endif%} + {%endwith%} + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/select_platform.html b/uploader/templates/select_platform.html new file mode 100644 index 0000000..d9bc68f --- /dev/null +++ b/uploader/templates/select_platform.html @@ -0,0 +1,82 @@ +{%extends "base.html"%} + +{%block title%}Select Dataset{%endblock%} + +{%block contents%} +

    {{filename}}: select platform

    + +
    +
    + + + + +
    + + +
    + + + + + + + + + + + + + {%for chip in genechips:%} + + + + + + {%else%} + + + + {%endfor%} + +
    select platform
    SelectGeneChip IDGeneChip Name
    + + {{chip["GeneChipId"]}}{{chip["GeneChipName"]}}
    No chips found for selected species
    + + +
    +
    +{%endblock%} + +{%block javascript%} + + + +{%endblock%} diff --git a/uploader/templates/select_species.html b/uploader/templates/select_species.html new file mode 100644 index 0000000..3b1a8a9 --- /dev/null +++ b/uploader/templates/select_species.html @@ -0,0 +1,92 @@ +{%extends "base.html"%} +{%from "flash_messages.html" import flash_messages%} +{%from "upload_progress_indicator.html" import upload_progress_indicator%} + +{%block title%}expression data: select species{%endblock%} + +{%block contents%} +{{upload_progress_indicator()}} + +

    expression data: select species

    + +
    +
    + upload expression data + {{flash_messages("error-expr-data")}} + +
    + + +
    + +
    + file type + +
    + + +
    + +
    + + +
    +
    + +
    + + + +
    + + +
    +
    +{%endblock%} + + +{%block javascript%} + + +{%endblock%} diff --git a/uploader/templates/select_study.html b/uploader/templates/select_study.html new file mode 100644 index 0000000..648ad4c --- /dev/null +++ b/uploader/templates/select_study.html @@ -0,0 +1,108 @@ +{%extends "base.html"%} +{%from "dbupdate_hidden_fields.html" import hidden_fields%} + +{%block title%}Select Dataset{%endblock%} + +{%block css%} + +{%endblock%} + +{%block contents%} +

    {{filename}}: select study

    + +
    +
    + Select from existing study + {{hidden_fields(filename, filetype, species=species, genechipid=genechipid, + totallines=totallines)}} + +
    + + +
    + + +
    +
    + +
    +

    OR

    +
    + +
    +
    + {%with messages = get_flashed_messages(with_categories=true)%} + {%if messages:%} + + {%endif%} + {%endwith%} + Create new study + {{hidden_fields(filename, filetype, species=species, genechipid=genechipid, + totallines=totallines)}} + +
    + + +
    + +
    + + +
    + +
    + + +
    + + +
    +
    + +{%endblock%} diff --git a/uploader/templates/stdout_output.html b/uploader/templates/stdout_output.html new file mode 100644 index 0000000..85345a9 --- /dev/null +++ b/uploader/templates/stdout_output.html @@ -0,0 +1,8 @@ +{%macro stdout_output(job)%} + +

    STDOUT Output

    +
    +
    {{job.get("stdout", "")}}
    +
    + +{%endmacro%} diff --git a/uploader/templates/unhandled_exception.html b/uploader/templates/unhandled_exception.html new file mode 100644 index 0000000..6e6a051 --- /dev/null +++ b/uploader/templates/unhandled_exception.html @@ -0,0 +1,21 @@ +{%extends "base.html"%} + +{%block title%}System Error{%endblock%} + +{%block css%} + +{%endblock%} + +{%block contents%} +

    + An error has occured, and your request has been aborted. Please notify the + administrator to try and get this sorted. +

    +

    + Provide the following information to help the administrator figure out and fix + the issue:
    +



    + {{trace}} +

    +

    +{%endblock%} diff --git a/uploader/templates/upload_progress_indicator.html b/uploader/templates/upload_progress_indicator.html new file mode 100644 index 0000000..e274e83 --- /dev/null +++ b/uploader/templates/upload_progress_indicator.html @@ -0,0 +1,35 @@ +{%macro upload_progress_indicator()%} + +{%endmacro%} diff --git a/uploader/templates/worker_failure.html b/uploader/templates/worker_failure.html new file mode 100644 index 0000000..b65b140 --- /dev/null +++ b/uploader/templates/worker_failure.html @@ -0,0 +1,24 @@ +{%extends "base.html"%} + +{%block title%}Worker Failure{%endblock%} + +{%block contents%} +

    Worker Failure

    + +

    + There was a critical failure launching the job to parse your file. + This is our fault and (probably) has nothing to do with the file you uploaded. +

    + +

    + Please notify the developers of this issue when you encounter it, + providing the link to this page, or the information below. +

    + +

    Debugging Information

    + + + +{%endblock%} -- cgit v1.2.3