From fd89da60fa1623b646d288ef8f30a2d78feb0fe9 Mon Sep 17 00:00:00 2001 From: Becky Gilbert Date: Fri, 24 Mar 2023 08:10:19 -0700 Subject: [PATCH] BS5 content and navbar spacing (#1150) * add template tags for main container, heading and subheading, and use them in web app pages * add "select a state" to the empty select option * modify template tag to create page title and option button (rather than classes), start implementing * remove unused template variables (query strings) * finish implementing page_title template tag * add page_title template tag to more pages * tweak page title margins * indent breadcrumbs with rest of page content (move base container div to include breadcrumb block) * remove unnecessary container divs from page templates (container div is in base.html) * add the page_title template tag to more pages * rename btn argument in page_title to right_side_elements --- .../accounts/participant_detail.html | 16 +- .../templates/accounts/participant_list.html | 2 +- exp/templates/exp/support.html | 3 +- .../studies/_all_json_and_csv_data.html | 389 +++--- studies/templates/studies/lab_create.html | 2 +- studies/templates/studies/lab_detail.html | 28 +- studies/templates/studies/lab_list.html | 13 +- studies/templates/studies/lab_update.html | 2 +- .../templates/studies/study_attachments.html | 146 +- studies/templates/studies/study_detail.html | 2 +- studies/templates/studies/study_edit.html | 158 ++- studies/templates/studies/study_form.html | 34 +- studies/templates/studies/study_list.html | 15 +- .../templates/studies/study_responses.html | 470 ++++--- .../study_responses_consent_ruling.html | 6 +- web/static/js/resources.js | 2 + web/templates/web/base.html | 12 +- web/templates/web/contact.html | 55 +- web/templates/web/faq.html | 1220 ++++++++--------- web/templates/web/lab-studies-list.html | 31 +- web/templates/web/privacy.html | 316 ++--- web/templates/web/resources.html | 145 +- web/templates/web/scientists.html | 16 +- web/templates/web/termsofuse.html | 877 ++++++------ web/templatetags/web_extras.py | 17 + 25 files changed, 1994 insertions(+), 1983 deletions(-) diff --git a/accounts/templates/accounts/participant_detail.html b/accounts/templates/accounts/participant_detail.html index e36004484..ccc00e89e 100644 --- a/accounts/templates/accounts/participant_detail.html +++ b/accounts/templates/accounts/participant_detail.html @@ -13,14 +13,14 @@ {% endbreadcrumb %} {% endblock breadcrumb %} {% block content %} -

- {{ user.identicon_html }} - {% if user.nickname %} - {{ user.nickname }} - {% else %} - {% trans "Participant ID" %} {{ user.id }} - {% endif %} -

+ {% if user.nickname %} + {% set_variable user.identicon_html|add:" "|add:user.nickname as title_text %} + {% else %} + {% trans "Participant ID" as trans_ppt_id %} + {% set_variable user.id|stringformat:"d" as user_id_str %} + {% set_variable user.identicon_html|add:" "|add:trans_ppt_id|add:" "|add:user_id_str as title_text %} + {% endif %} + {% page_title title_text %}
Last Active: {{ user.last_login|date:"n/d/Y"|default:"N/A" }}
Participant global ID: {{ user.uuid }}
diff --git a/accounts/templates/accounts/participant_list.html b/accounts/templates/accounts/participant_list.html index 5ddcc9e51..9f716a685 100644 --- a/accounts/templates/accounts/participant_list.html +++ b/accounts/templates/accounts/participant_list.html @@ -8,7 +8,7 @@ {% endblock title %} {% block content %} {% button_primary_classes "btn-sm" as btn_primary_classes %} -

Participants

+ {% page_title "Participants" %}
How Researchers can Support Lookit + {% page_title "How Researchers can Support Lookit" %}

Lookit is free for labs to use, but like any open source software project, it's not free to run! On this page, you can learn about ways to keep Lookit running (and getting better!) for a long time diff --git a/studies/templates/studies/_all_json_and_csv_data.html b/studies/templates/studies/_all_json_and_csv_data.html index a44045c9a..b5bd98b0f 100644 --- a/studies/templates/studies/_all_json_and_csv_data.html +++ b/studies/templates/studies/_all_json_and_csv_data.html @@ -4,7 +4,6 @@ {% load web_extras %} {% load static %} {% load bootstrap_icons %} -{% load web_extras %} {% block title %} All Responses | {{ study.name }} {% endblock title %} @@ -36,249 +35,251 @@ {% url 'exp:study-demographics-download-csv' pk=study.id as url_demographics_download_csv %} {% url 'exp:study-demographics-download-dict-csv' pk=study.id as url_demographics_download_dict %} {% button_primary_classes as btn_primary_classes %} -

All Responses

+ {% if active == 'demographics' %} + {% page_title "Demographic Snapshots" %} + {% else %} + {% page_title "All Responses" %} + {% endif %}
{% include "studies/_response_nav_tabs.html" with active=active %}
-
-
-
- {% if active == 'all' %} - - {% if n_responses %} -

- Data about {{ n_responses }} response{{ n_responses|pluralize }} are available. - {% if can_view_regular_responses and not can_view_preview_responses %} - (Based on your permissions, no preview responses are included.) - {% endif %} - {% if not can_view_regular_responses and can_view_preview_responses %} - (Based on your permissions, only preview responses are included.) - {% endif %} -

- {% else %} -

- There are no responses with confirmed consent yet. Once there are responses with confirmed consent, data will be available for download. Data dictionaries for the overview and child data files are available for planning analyses. -

- {% endif %} +
+
+ {% if active == 'all' %} + + {% if n_responses %}

- The following options allow you to download files with the minimal identifying information needed for your analysis. Names and birthdates are available for download as needed, but must be redacted prior to publication. Files with names, global IDs, birthdates, exact ages at participation, or "additional info" fields are marked as identifiable in the filename. + Data about {{ n_responses }} response{{ n_responses|pluralize }} are available. + {% if can_view_regular_responses and not can_view_preview_responses %} + (Based on your permissions, no preview responses are included.) + {% endif %} + {% if not can_view_regular_responses and can_view_preview_responses %} + (Based on your permissions, only preview responses are included.) + {% endif %}

-
-
-

Participant data to include with responses:

-
{% include "studies/_data_options.html" with data_options=data_options %}
-
+ {% else %} +

+ There are no responses with confirmed consent yet. Once there are responses with confirmed consent, data will be available for download. Data dictionaries for the overview and child data files are available for planning analyses. +

+ {% endif %} +

+ The following options allow you to download files with the minimal identifying information needed for your analysis. Names and birthdates are available for download as needed, but must be redacted prior to publication. Files with names, global IDs, birthdates, exact ages at participation, or "additional info" fields are marked as identifiable in the filename. +

+
+
+

Participant data to include with responses:

+
{% include "studies/_data_options.html" with data_options=data_options %}
-
-
-
- All response data -

- The true "raw" data is most naturally represented in JSON format, a - structured format that allows nesting (for instance, you might see a question1 field - inside formData inside parent-survey). This file contains a list of all responses to - your study; each response has basic information about the participant, account, and - consent coding as well as what happened during the study. Fields you uncheck above will - not be included in the summary information; however, the "expData" field may still include - the child's birthdate as confirmed in the exit survey. -

-
-
-
- Data - {% if n_responses %} - {% bootstrap_button bs_icon_download|add:" JSON" button_type="submit" button_class=btn_primary_classes id="download-all-data-json" formaction=url_download_all_json %} - {% else %} - {% bootstrap_button bs_icon_download|add:" JSON" button_type="submit" button_class=btn_primary_classes id="download-all-data-json" formaction=url_download_all_json disabled="disabled" %} - {% endif %} -
+
+
+
+
+ All response data +

+ The true "raw" data is most naturally represented in JSON format, a + structured format that allows nesting (for instance, you might see a question1 field + inside formData inside parent-survey). This file contains a list of all responses to + your study; each response has basic information about the participant, account, and + consent coding as well as what happened during the study. Fields you uncheck above will + not be included in the summary information; however, the "expData" field may still include + the child's birthdate as confirmed in the exit survey. +

+
+
+
+ Data + {% if n_responses %} + {% bootstrap_button bs_icon_download|add:" JSON" button_type="submit" button_class=btn_primary_classes id="download-all-data-json" formaction=url_download_all_json %} + {% else %} + {% bootstrap_button bs_icon_download|add:" JSON" button_type="submit" button_class=btn_primary_classes id="download-all-data-json" formaction=url_download_all_json disabled="disabled" %} + {% endif %}
-
-
-
- Response overview -

- The response overview file gives high-level information about each response - the account and child IDs, consent approval information, condition assignment, and information about the child such as gender and languages spoken. There is one row per response. This can be used in conjunction with frame data (below) to avoid having to parse JSON in your analysis. -

+
+
+
+
+ Response overview +

+ The response overview file gives high-level information about each response - the account and child IDs, consent approval information, condition assignment, and information about the child such as gender and languages spoken. There is one row per response. This can be used in conjunction with frame data (below) to avoid having to parse JSON in your analysis. +

+
+
+
+ Data + {% if n_responses %} + {% bootstrap_button bs_icon_download|add:" CSV" button_type="submit" button_class=btn_primary_classes id="download-all-data-csv" formaction=url_download_all_csv %} + {% else %} + {% bootstrap_button bs_icon_download|add:" CSV" button_type="submit" button_class=btn_primary_classes id="download-all-data-csv" formaction=url_download_all_csv disabled="disabled" %} + {% endif %}
-
-
- Data - {% if n_responses %} - {% bootstrap_button bs_icon_download|add:" CSV" button_type="submit" button_class=btn_primary_classes id="download-all-data-csv" formaction=url_download_all_csv %} - {% else %} - {% bootstrap_button bs_icon_download|add:" CSV" button_type="submit" button_class=btn_primary_classes id="download-all-data-csv" formaction=url_download_all_csv disabled="disabled" %} - {% endif %} -
-
- Data dictionary - {% bootstrap_button bs_icon_download|add:" CSV" button_type="submit" button_class=btn_primary_classes id="download-data-dict-csv" formaction=url_download_summary_dict %} -
+
+ Data dictionary + {% bootstrap_button bs_icon_download|add:" CSV" button_type="submit" button_class=btn_primary_classes id="download-data-dict-csv" formaction=url_download_summary_dict %}
-
- {% if study.show_frame_data %} -
-
- Frame data -

- The frame data files include all of the information captured by the - individual frames of your experiment: for instance, text and selections on forms, - which option a participant clicked during a forced-choice trial, and events such as - entering or leaving fullscreen, pausing the study, or pressing buttons. These data - are shown in a "long" format, with one row per datum and columns for the key and value. - Birthdates entered in the exit survey are omitted. -

-
-
-
- Data (one file per response) - {% if n_responses %} - {% bootstrap_button bs_icon_download|add:" ZIP, CSVs" button_class=btn_primary_classes id="download-frame-data-csv" formaction=url_download_frame_data %} - {% else %} - {% bootstrap_button bs_icon_download|add:" ZIP, CSVs" button_class=btn_primary_classes id="download-frame-data-csv" formaction=url_download_frame_data disabled="disabled" %} - {% endif %} -
-
- Data dictionary - {% if n_responses %} - {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-frame-dict-csv" formaction=url_download_frame_data_dict %} - {% else %} - {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-frame-dict-csv" formaction=url_download_frame_data_dict disabled="disabled" %} - {% endif %} -
-
-
-
- {% endif %} +
+
+ {% if study.show_frame_data %}
- Child data + Frame data

- The child data files contain one row per unique child. The data available about each child is the same as is available in the response summary CSV (with the exception of age at time of participation, which depends on the response time). All child data will be included in this file, regardless of selections above; you can use it to store this identifiable data separately from the response data. + The frame data files include all of the information captured by the + individual frames of your experiment: for instance, text and selections on forms, + which option a participant clicked during a forced-choice trial, and events such as + entering or leaving fullscreen, pausing the study, or pressing buttons. These data + are shown in a "long" format, with one row per datum and columns for the key and value. + Birthdates entered in the exit survey are omitted.

- Data + Data (one file per response) {% if n_responses %} - {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-child-data-csv" formaction=url_download_children_summary_data %} + {% bootstrap_button bs_icon_download|add:" ZIP, CSVs" button_class=btn_primary_classes id="download-frame-data-csv" formaction=url_download_frame_data %} {% else %} - {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-child-data-csv" formaction=url_download_children_summary_data disabled="disabled" %} + {% bootstrap_button bs_icon_download|add:" ZIP, CSVs" button_class=btn_primary_classes id="download-frame-data-csv" formaction=url_download_frame_data disabled="disabled" %} {% endif %}
Data dictionary {% if n_responses %} - {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-child-data-dict-csv" formaction=url_download_children_summary_data_dict %} + {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-frame-dict-csv" formaction=url_download_frame_data_dict %} {% else %} - {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-child-data-dict-csv" formaction=url_download_children_summary_data_dict disabled="disabled" %} + {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-frame-dict-csv" formaction=url_download_frame_data_dict disabled="disabled" %} {% endif %}

-
-
- Tool: Check for collisions -

- The hashed child and account IDs are extremely likely to be unique, but not guaranteed (about a 0.1% chance of a collision after 1500 participants). Use this tool to check whether there are any duplicate hashed IDs being used. (If so, let us know - we can fix that!) -

+ {% endif %} +
+
+ Child data +

+ The child data files contain one row per unique child. The data available about each child is the same as is available in the response summary CSV (with the exception of age at time of participation, which depends on the response time). All child data will be included in this file, regardless of selections above; you can use it to store this identifiable data separately from the response data. +

+
+
+
+ Data + {% if n_responses %} + {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-child-data-csv" formaction=url_download_children_summary_data %} + {% else %} + {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-child-data-csv" formaction=url_download_children_summary_data disabled="disabled" %} + {% endif %}
-
-
- {% bootstrap_button "Check now" button_class=btn_primary_classes id="check-for-collisions" url=url_hashed_id_collision_check %} -
-
-

-
+
+ Data dictionary + {% if n_responses %} + {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-child-data-dict-csv" formaction=url_download_children_summary_data_dict %} + {% else %} + {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes id="download-child-data-dict-csv" formaction=url_download_children_summary_data_dict disabled="disabled" %} + {% endif %}
- +

- {% if can_delete_preview_data %} -
- {% csrf_token %} -
-
- Tool: Delete preview data -

- This utility will delete all preview data, including video, that you have collected for this study. You may find it helpful to clear out preview data to simplify analysis. -

-
-
-
- {% bootstrap_button "Delete all preview data" button_type="submit" button_class=btn_primary_classes id="delete-preview-data" %} -
-
-

-
-
+
+
+ Tool: Check for collisions +

+ The hashed child and account IDs are extremely likely to be unique, but not guaranteed (about a 0.1% chance of a collision after 1500 participants). Use this tool to check whether there are any duplicate hashed IDs being used. (If so, let us know - we can fix that!) +

+
+
+
+ {% bootstrap_button "Check now" button_class=btn_primary_classes id="check-for-collisions" url=url_hashed_id_collision_check %} +
+
+

- - {% endif %} - {% endif %} - {% if active == 'demographics' %} -
-

Data download options:

-
- -
-
+
+ +
+ {% if can_delete_preview_data %} +
+ {% csrf_token %}
-

- {% if n_responses %} - Demographic data ({{ n_responses }} snapshot{{ n_responses|pluralize }}) - {% else %} - There are no responses with confirmed consent yet. Once there are responses with confirmed consent, associated demographic data will be available for download. A data dictionary is available for planning analyses. - {% endif %} - {% if can_view_regular_responses and not can_view_preview_responses %} - (Based on your permissions, no snapshots from preview responses are included.) - {% endif %} - {% if not can_view_regular_responses and can_view_preview_responses %} - (Based on your permissions, only snapshots from preview responses are included.) - {% endif %} -

-

- Each response is associated with a demographic data snapshot that captures the state of the participant's demographic survey at the time of the response. You may use this data to check on demographics of your study population, for instance to check how representative your sample is with respect to parental education, and may report your findings in aggregate. -

+ Tool: Delete preview data

- Important: this data must never be published in conjunction with study video such that it would be possible to link the two - e.g., to determine that the person pictured has an approximate family income of $50K or lives in Iowa. At minimum, this likely means redacting all response and participant identifiers from the downloaded demographic file if publishing raw data. + This utility will delete all preview data, including video, that you have collected for this study. You may find it helpful to clear out preview data to simplify analysis.

- Data - {% if n_responses %} - {% bootstrap_button bs_icon_download|add:" JSON" button_class=btn_primary_classes button_type="submit" id="download-all-demo-json" formaction=url_demographics_download_json %} - {% else %} - {% bootstrap_button bs_icon_download|add:" JSON" button_class=btn_primary_classes button_type="submit" id="download-all-demo-json" formaction=url_demographics_download_json disabled="disabled" %} - {% endif %} -
-
- Data - {% if n_responses %} - {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes button_type="submit" id="download-all-demo-csv" formaction=url_demographics_download_csv %} - {% else %} - {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes button_type="submit" id="download-all-demo-csv" formaction=url_demographics_download_csv disabled="disabled" %} - {% endif %} + {% bootstrap_button "Delete all preview data" button_type="submit" button_class=btn_primary_classes id="delete-preview-data" %}
-
- Data dictionary - {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes button_type="submit" id="download-all-demo-dict-csv" formaction=url_demographics_download_dict %} +
+

{% endif %} -
+ {% endif %} + {% if active == 'demographics' %} +
+

Data download options:

+
+ + +
+
+
+
+

+ {% if n_responses %} + Demographic data ({{ n_responses }} snapshot{{ n_responses|pluralize }}) + {% else %} + There are no responses with confirmed consent yet. Once there are responses with confirmed consent, associated demographic data will be available for download. A data dictionary is available for planning analyses. + {% endif %} + {% if can_view_regular_responses and not can_view_preview_responses %} + (Based on your permissions, no snapshots from preview responses are included.) + {% endif %} + {% if not can_view_regular_responses and can_view_preview_responses %} + (Based on your permissions, only snapshots from preview responses are included.) + {% endif %} +

+

+ Each response is associated with a demographic data snapshot that captures the state of the participant's demographic survey at the time of the response. You may use this data to check on demographics of your study population, for instance to check how representative your sample is with respect to parental education, and may report your findings in aggregate. +

+

+ Important: this data must never be published in conjunction with study video such that it would be possible to link the two - e.g., to determine that the person pictured has an approximate family income of $50K or lives in Iowa. At minimum, this likely means redacting all response and participant identifiers from the downloaded demographic file if publishing raw data. +

+
+
+
+ Data + {% if n_responses %} + {% bootstrap_button bs_icon_download|add:" JSON" button_class=btn_primary_classes button_type="submit" id="download-all-demo-json" formaction=url_demographics_download_json %} + {% else %} + {% bootstrap_button bs_icon_download|add:" JSON" button_class=btn_primary_classes button_type="submit" id="download-all-demo-json" formaction=url_demographics_download_json disabled="disabled" %} + {% endif %} +
+
+ Data + {% if n_responses %} + {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes button_type="submit" id="download-all-demo-csv" formaction=url_demographics_download_csv %} + {% else %} + {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes button_type="submit" id="download-all-demo-csv" formaction=url_demographics_download_csv disabled="disabled" %} + {% endif %} +
+
+ Data dictionary + {% bootstrap_button bs_icon_download|add:" CSV" button_class=btn_primary_classes button_type="submit" id="download-all-demo-dict-csv" formaction=url_demographics_download_dict %} +
+
+
+
+ {% endif %}
{% endblock content %} diff --git a/studies/templates/studies/lab_create.html b/studies/templates/studies/lab_create.html index cb9b47622..2b7aa34de 100644 --- a/studies/templates/studies/lab_create.html +++ b/studies/templates/studies/lab_create.html @@ -11,7 +11,7 @@ {% endbreadcrumb %} {% endblock breadcrumb %} {% block content %} -

Create Lab

+ {% page_title "Create Lab" %}
{% csrf_token %} {% bootstrap_form form %} diff --git a/studies/templates/studies/lab_detail.html b/studies/templates/studies/lab_detail.html index b26174005..0ca95c7b8 100644 --- a/studies/templates/studies/lab_detail.html +++ b/studies/templates/studies/lab_detail.html @@ -11,23 +11,17 @@ {% endbreadcrumb %} {% endblock breadcrumb %} {% block content %} -
-

{{ lab.name }}

-
- Edit lab - View/Manage lab members - {% if in_this_lab %} - You have joined this lab. - {% elif requested_this_lab %} - You have requested to join this lab. - {% else %} - - {% csrf_token %} - {% bootstrap_button "Request to join" %} - - {% endif %} -
-
+ {% url 'exp:lab-edit' pk=lab.id as url_lab_edit %} + {% url 'exp:lab-members' pk=lab.id as url_lab_members %} + {% set_variable '' as link_edit_lab %} + {% set_variable '' as link_lab_members %} + {% if in_this_lab %} + {% set_variable "
You have joined this lab.
" as lab_join_message %} + {% elif requested_this_lab %} + {% set_variable "
You have requested to join this lab.
" as lab_join_message %} + {% endif %} + {% set_variable link_edit_lab|add:link_lab_members|add:lab_join_message as page_title_right_content %} + {% page_title lab.name right_side_elements=page_title_right_content %}
Institution diff --git a/studies/templates/studies/lab_list.html b/studies/templates/studies/lab_list.html index 64dacf72b..8f7d2269b 100644 --- a/studies/templates/studies/lab_list.html +++ b/studies/templates/studies/lab_list.html @@ -7,14 +7,11 @@ Labs {% endblock title %} {% block content %} - {% button_primary_classes "btn-sm" as btn_primary_classes %} -
-

View Labs

- -
+ {% url 'exp:lab-create' as url_exp_lab_create %} + {% bs_icon "plus" as bs_icon_plus %} + {% button_primary_classes as btn_primary_classes %} + {% bootstrap_button bs_icon_plus|add:"Create Lab" href=url_exp_lab_create button_class=btn_primary_classes as btn_create_lab %} + {% page_title "View Labs" right_side_elements=btn_create_lab %}
Update Lab + {% page_title "Update Lab" %} {% csrf_token %} {% bootstrap_form form %} diff --git a/studies/templates/studies/study_attachments.html b/studies/templates/studies/study_attachments.html index 182021324..b00c88d6e 100644 --- a/studies/templates/studies/study_attachments.html +++ b/studies/templates/studies/study_attachments.html @@ -24,87 +24,85 @@ {% query_transform request sort='created_at' as sort_date_up %} {% query_transform request sort='-created_at' as sort_date_down %} {% button_primary_classes "mt-3" as btn_primary_classes %} -

Videos

+ {% page_title "Videos" %}
{% include "studies/_response_nav_tabs.html" with active="attachments" %}
-
-
-
- - - {% csrf_token %} - {% bootstrap_button "Download all videos" button_class=btn_primary_classes button_type="submit" name="all-attachments" value="all" %} - {% bootstrap_button "Download all consent videos" button_class=btn_primary_classes button_type="submit" name="all-consent-videos" value="all" %} - - -
-
-
-
-
- - +
+
+ + + {% csrf_token %} + {% bootstrap_button "Download all videos" button_class=btn_primary_classes button_type="submit" name="all-attachments" value="all" %} + {% bootstrap_button "Download all consent videos" button_class=btn_primary_classes button_type="submit" name="all-consent-videos" value="all" %} -
+
-
-
-
- - - + +
+
+
+ + + +
+
+
+
+
+
Study Attachments
+ + + + + + + + + + {% for video in video_list %} + + + + + + {% empty %} - - - + - - - {% for video in video_list %} - - - - - - {% empty %} - - - - {% endfor %} - -
Study Attachments
+ Name + {% with url_attachments|add:"?"|add:sort_name_up as url_sort_name_up %} + {% bootstrap_button bs_icon_up button_class="btn btn-link ps-1 pe-0" button_type="link" href=url_sort_name_up %} + {% endwith %} + {% with url_attachments|add:"?"|add:sort_name_down as url_sort_name_down %} + {% bootstrap_button bs_icon_down button_class="btn btn-link px-0" button_type="link" href=url_sort_name_down %} + {% endwith %} + + Date + {% with url_attachments|add:"?"|add:sort_date_up as url_sort_date_up %} + {% bootstrap_button bs_icon_up button_class="btn btn-link ps-1 pe-0" button_type="link" href=url_sort_date_up %} + {% endwith %} + {% with url_attachments|add:"?"|add:sort_date_down as url_sort_date_down %} + {% bootstrap_button bs_icon_down button_class="btn btn-link px-0" button_type="link" href=url_sort_date_down %} + {% endwith %} +
+ {{ video.full_name }} + {{ video.created_at|date:"n/j/Y g:i A"|default:"N/A" }} + Download +
- Name - {% with url_attachments|add:"?"|add:sort_name_up as url_sort_name_up %} - {% bootstrap_button bs_icon_up button_class="btn btn-link ps-1 pe-0" button_type="link" href=url_sort_name_up %} - {% endwith %} - {% with url_attachments|add:"?"|add:sort_name_down as url_sort_name_down %} - {% bootstrap_button bs_icon_down button_class="btn btn-link px-0" button_type="link" href=url_sort_name_down %} - {% endwith %} - - Date - {% with url_attachments|add:"?"|add:sort_date_up as url_sort_date_up %} - {% bootstrap_button bs_icon_up button_class="btn btn-link ps-1 pe-0" button_type="link" href=url_sort_date_up %} - {% endwith %} - {% with url_attachments|add:"?"|add:sort_date_down as url_sort_date_down %} - {% bootstrap_button bs_icon_down button_class="btn btn-link px-0" button_type="link" href=url_sort_date_down %} - {% endwith %} - + No videos available for download. +
- {{ video.full_name }} - {{ video.created_at|date:"n/j/Y g:i A"|default:"N/A" }} - Download -
- No videos available for download. -
-
{% include "studies/_paginator.html" with page=page_obj %}
-
+ {% endfor %} + + +
{% include "studies/_paginator.html" with page=page_obj %}
diff --git a/studies/templates/studies/study_detail.html b/studies/templates/studies/study_detail.html index f7686242f..dbc876e6c 100644 --- a/studies/templates/studies/study_detail.html +++ b/studies/templates/studies/study_detail.html @@ -29,7 +29,7 @@ defer data-btn-primary-classes="{{ btn_primary_classes }}" data-btn-secondary-classes="{{ btn_secondary_classes }}"> -

{{ study.name }}

+ {% page_title study.name %}
{% include "studies/_image_display.html" with object=study large=1 %} diff --git a/studies/templates/studies/study_edit.html b/studies/templates/studies/study_edit.html index 79ab7c66f..58613eb00 100644 --- a/studies/templates/studies/study_edit.html +++ b/studies/templates/studies/study_edit.html @@ -26,90 +26,88 @@ {% url 'exp:preview-detail' uuid=study.uuid as url_preview_detail %} {% url 'exp:study-edit' pk=study.id as url_cancel %} {% button_secondary_classes as btn_secondary_classes %} -
-
-
-
-
-

- Study Editor -
- {% bootstrap_button bs_icon_play_circle|add:"Preview Study" href=url_preview_detail button_class=btn_secondary_classes %} -
-

-
-
-
- {% csrf_token %} - {% include "studies/_study_fields.html" with form=form study=study %} - {% include "studies/_study_type.html" with types=types create=0 currentType=study.study_type.id %} -
- {% bootstrap_button "Cancel" button_class=btn_secondary_classes href=url_cancel %} - -
-