|
1 | 1 | <submission-upload> |
2 | 2 | <div class="ui sixteen wide column submission-container"> |
3 | 3 |
|
| 4 | + <!-- Submission upload button --> |
4 | 5 | <div class="submission-form"> |
5 | 6 | <h1>Submission upload</h1> |
6 | 7 | <div if="{_.get(selected_phase, 'status') === 'Previous'}" class="ui red message">This phase has ended and no longer accepts submissions!</div> |
7 | 8 | <div if="{_.get(selected_phase, 'status') === 'Next'}" class="ui yellow message">This phase hasn't started yet!</div> |
8 | 9 | <form class="ui form coda-animated {error: errors}" ref="form" enctype="multipart/form-data"> |
9 | 10 | <div class="submission-form" ref="fact_sheet_form" if="{ opts.fact_sheet !== null}"> |
10 | 11 | <h2>Metadata or Fact Sheet</h2> |
11 | | - <div class="submission-form-question" each="{ question in opts.fact_sheet }"> |
12 | | - <span if="{ question.type === 'text' }"> |
13 | | - <label if="{question.is_required == 'true'}" class="required-answer" for="{ question.key }">{ question.title }:</label> |
14 | | - <label if="{question.is_required == 'false'}" for="{ question.key }">{ question.title }:</label> |
15 | | - <input type="text" name="{ question.key }"> |
16 | | - </span> |
17 | | - <span if="{ question.type === 'checkbox' }"> |
18 | | - <label for="{ question.key }">{ question.title }:</label> |
19 | | - <input type="hidden" name="{ question.key }" value="false"> |
20 | | - <input type="checkbox" name="{ question.key }" value="true"> |
21 | | - </span> |
22 | | - <span if="{ question.type == 'select' }"> |
23 | | - <label for="{ question.key }">{ question.title }:</label> |
24 | | - <select name="{ question.key }"> |
25 | | - <option each="{ selection_opt in question.selection }" value="{ selection_opt }">{ selection_opt }</option> |
26 | | - </select> |
27 | | - </span> |
| 12 | + <div class="fact-sheet-scroll"> |
| 13 | + <div class="submission-form-question" each="{ question in opts.fact_sheet }"> |
| 14 | + <span if="{ question.type === 'text' }"> |
| 15 | + <label if="{question.is_required == 'true'}" class="required-answer" for="{ question.key }">{ question.title }:</label> |
| 16 | + <label if="{question.is_required == 'false'}" for="{ question.key }">{ question.title }:</label> |
| 17 | + <input type="text" name="{ question.key }"> |
| 18 | + </span> |
| 19 | + <span if="{ question.type === 'checkbox' }"> |
| 20 | + <label for="{ question.key }">{ question.title }:</label> |
| 21 | + <input type="hidden" name="{ question.key }" value="false"> |
| 22 | + <input type="checkbox" name="{ question.key }" value="true"> |
| 23 | + </span> |
| 24 | + <span if="{ question.type == 'select' }"> |
| 25 | + <label for="{ question.key }">{ question.title }:</label> |
| 26 | + <select name="{ question.key }"> |
| 27 | + <option each="{ selection_opt in question.selection }" value="{ selection_opt }">{ selection_opt }</option> |
| 28 | + </select> |
| 29 | + </span> |
| 30 | + </div> |
28 | 31 | </div> |
29 | 32 | </div> |
30 | 33 |
|
|
70 | 73 | </form> |
71 | 74 | </div> |
72 | 75 |
|
| 76 | + <!-- Upload progress bar --> |
73 | 77 | <div class="ui indicating progress" ref="progress"> |
74 | 78 | <div class="bar"> |
75 | 79 | <div class="progress">{ upload_progress }%</div> |
76 | 80 | </div> |
77 | 81 | </div> |
78 | 82 |
|
| 83 | + <!-- Submission Output--> |
79 | 84 | <div class="ui styled fluid accordion submission-output-container {hidden: _.isEmpty(selected_submission) || selected_phase.hide_output || _.isEmpty(selected_submission.filename)}" |
80 | 85 | ref="accordion"> |
81 | 86 | <div class="title"> |
|
85 | 90 | <div class="ui basic segment"> |
86 | 91 | <div class="content"> |
87 | 92 | <div id="submission-output" class="ui" ref="submission-output"> |
88 | | - <div class="header">Output</div> |
| 93 | + <!-- Header : Output + Autoscroll toggle --> |
| 94 | + <div class="header output-header"> |
| 95 | + <span class="output-title">Output</span> |
| 96 | + <div class="ui checkbox autoscroll-toggle" ref="autoscroll_checkbox"> |
| 97 | + <input type="checkbox" checked/> |
| 98 | + <label>Autoscroll Output</label> |
| 99 | + </div> |
| 100 | + </div> |
| 101 | + <!-- Output logs --> |
89 | 102 | <div class="content"> |
90 | 103 | <div if="{!ingestion_during_scoring}"> |
91 | 104 | <div if="{_.isEmpty(children)}"> |
|
94 | 107 | ref="submission_output" |
95 | 108 | detailed_result_url="{detailed_result_urls[selected_submission.id]}" |
96 | 109 | show_graph="{opts.competition.enable_detailed_results}"></log_window> |
97 | | - <div class="ui checkbox" ref="autoscroll_checkbox"> |
98 | | - <input type="checkbox" checked/> |
99 | | - <label>Autoscroll Output</label> |
100 | | - </div> |
101 | 110 | </div> |
102 | 111 | <div if="{children}"> |
103 | 112 | <div class="ui secondary menu submission-tabs"> |
|
147 | 156 | </div> |
148 | 157 | </div> |
149 | 158 | </div> |
| 159 | + |
150 | 160 | <script> |
151 | 161 | var self = this |
152 | 162 |
|
153 | 163 | self.mixin(ProgressBarMixin) |
154 | | - |
155 | 164 | self.chart = undefined |
156 | 165 | self.errors = {} |
157 | 166 | self.lines = {} |
|
468 | 477 | } |
469 | 478 | dropdown.attr('disabled', 'disabled') |
470 | 479 |
|
471 | | - |
472 | 480 | // Call start_submission with dataset key |
473 | 481 | // start_submission returns submission key |
474 | 482 | CODALAB.api.create_submission({ |
|
582 | 590 | font-weight 600 |
583 | 591 |
|
584 | 592 | #submission-output |
| 593 | + |
| 594 | + .output-header |
| 595 | + display flex |
| 596 | + align-items center |
| 597 | + justify-content space-between |
| 598 | + gap 12px |
| 599 | + |
| 600 | + .output-title |
| 601 | + font-weight 700 |
| 602 | + |
| 603 | + .autoscroll-toggle |
| 604 | + margin 0 |
| 605 | + white-space nowrap |
| 606 | + |
| 607 | + label |
| 608 | + font-weight normal |
| 609 | + |
585 | 610 | .submission-tabs |
586 | 611 | overflow-x scroll |
587 | 612 | padding-bottom 10px |
|
615 | 640 | display block |
616 | 641 | height 250px |
617 | 642 |
|
| 643 | + .fact-sheet-scroll |
| 644 | + max-height: min(50vh, 520px) |
| 645 | + overflow-y: auto |
| 646 | + padding-right: 8px |
| 647 | + |
618 | 648 | </style> |
619 | 649 | </submission-upload> |
0 commit comments