github.com/iqoqo/nomad@v0.11.3-0.20200911112621-d7021c74d101/ui/app/templates/jobs/index.hbs (about)

     1  {{title "Jobs"}}
     2  <section class="section">
     3    {{#if isForbidden}}
     4      {{partial "partials/forbidden-message"}}
     5    {{else}}
     6      <div class="toolbar">
     7        <div class="toolbar-item">
     8          {{#if visibleJobs.length}}
     9            {{search-box
    10              data-test-jobs-search
    11              searchTerm=(mut searchTerm)
    12              onChange=(action resetPagination)
    13              placeholder="Search jobs..."}}
    14          {{/if}}
    15        </div>
    16        {{#if (media "isMobile")}}
    17          <div class="toolbar-item is-right-aligned">
    18            {{#if (can "run job")}}
    19              {{#link-to "jobs.run" data-test-run-job class="button is-primary"}}Run Job{{/link-to}}
    20            {{else}}
    21              <button
    22                data-test-run-job
    23                class="button is-primary is-disabled tooltip is-right-aligned"
    24                aria-label="You don’t have permission to run jobs"
    25                disabled
    26              >Run Job</button>
    27            {{/if}}
    28          </div>
    29        {{/if}}
    30        <div class="toolbar-item is-right-aligned is-mobile-full-width">
    31          <div class="button-bar">
    32            {{multi-select-dropdown
    33              data-test-type-facet
    34              label="Type"
    35              options=optionsType
    36              selection=selectionType
    37              onSelect=(action setFacetQueryParam "qpType")}}
    38            {{multi-select-dropdown
    39              data-test-status-facet
    40              label="Status"
    41              options=optionsStatus
    42              selection=selectionStatus
    43              onSelect=(action setFacetQueryParam "qpStatus")}}
    44            {{multi-select-dropdown
    45              data-test-datacenter-facet
    46              label="Datacenter"
    47              options=optionsDatacenter
    48              selection=selectionDatacenter
    49              onSelect=(action setFacetQueryParam "qpDatacenter")}}
    50            {{multi-select-dropdown
    51              data-test-prefix-facet
    52              label="Prefix"
    53              options=optionsPrefix
    54              selection=selectionPrefix
    55              onSelect=(action setFacetQueryParam "qpPrefix")}}
    56          </div>
    57        </div>
    58        {{#if (not (media "isMobile"))}}
    59          <div class="toolbar-item is-right-aligned">
    60            {{#if (can "run job")}}
    61              {{#link-to "jobs.run" data-test-run-job class="button is-primary"}}Run Job{{/link-to}}
    62            {{else}}
    63              <button
    64                data-test-run-job
    65                class="button is-primary is-disabled tooltip is-right-aligned"
    66                aria-label="You don’t have permission to run jobs"
    67                disabled
    68              >Run Job</button>
    69            {{/if}}
    70          </div>
    71        {{/if}}
    72      </div>
    73      {{#if sortedJobs}}
    74        {{#list-pagination
    75          source=sortedJobs
    76          size=pageSize
    77          page=currentPage as |p|}}
    78          {{#list-table
    79            source=p.list
    80            sortProperty=sortProperty
    81            sortDescending=sortDescending
    82            class="with-foot" as |t|}}
    83            {{#t.head}}
    84              {{#t.sort-by prop="name"}}Name{{/t.sort-by}}
    85              {{#t.sort-by prop="status"}}Status{{/t.sort-by}}
    86              {{#t.sort-by prop="type"}}Type{{/t.sort-by}}
    87              {{#t.sort-by prop="priority"}}Priority{{/t.sort-by}}
    88              <th>Groups</th>
    89              <th class="is-3">Summary</th>
    90            {{/t.head}}
    91            {{#t.body key="model.id" as |row|}}
    92              {{job-row data-test-job-row=row.model.plainId job=row.model onClick=(action "gotoJob" row.model)}}
    93            {{/t.body}}
    94          {{/list-table}}
    95          <div class="table-foot">
    96            {{page-size-select onChange=(action resetPagination)}}
    97            <nav class="pagination">
    98              <div class="pagination-numbers">
    99                {{p.startsAt}}&ndash;{{p.endsAt}} of {{sortedJobs.length}}
   100                {{#if searchTerm}}
   101                  <em>({{dec sortedJobs.length filteredJobs.length}} hidden by search term)</em>
   102                {{/if}}
   103              </div>
   104              {{#p.prev class="pagination-previous"}}{{x-icon "chevron-left"}}{{/p.prev}}
   105              {{#p.next class="pagination-next"}}{{x-icon "chevron-right"}}{{/p.next}}
   106              <ul class="pagination-list"></ul>
   107            </nav>
   108          </div>
   109        {{/list-pagination}}
   110      {{else}}
   111        <div data-test-empty-jobs-list class="empty-message">
   112          {{#if (eq visibleJobs.length 0)}}
   113            <h3 data-test-empty-jobs-list-headline class="empty-message-headline">No Jobs</h3>
   114            <p class="empty-message-body">
   115              The cluster is currently empty.
   116            </p>
   117          {{else if (eq filteredJobs.length 0)}}
   118            <h3 data-test-empty-jobs-list-headline class="empty-message-headline">No Matches</h3>
   119            <p class="empty-message-body">
   120              No jobs match your current filter selection.
   121            </p>
   122          {{else if searchTerm}}
   123            <h3 data-test-empty-jobs-list-headline class="empty-message-headline">No Matches</h3>
   124            <p class="empty-message-body">No jobs match the term <strong>{{searchTerm}}</strong></p>
   125          {{/if}}
   126        </div>
   127      {{/if}}
   128    {{/if}}
   129  </section>