Changeset 42888c0 in tailbone


Ignore:
Timestamp:
11/23/2022 11:40:03 AM (2 months ago)
Author:
Lance Edgar <lance@…>
Branches:
master
Children:
db9b361
Parents:
9abbc00
Message:

Add prompt dialog when launching overnight task

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tailbone/templates/luigi/index.mako

    r9abbc00 r42888c0  
    6161            </b-table-column>
    6262            <b-table-column field="script"
    63                             label="Script">
    64               {{ props.row.script }}
     63                            label="Command">
     64              {{ props.row.script || props.row.class_name }}
    6565            </b-table-column>
    6666            <b-table-column field="last_date"
     
    7373                        icon-pack="fas"
    7474                        icon-left="arrow-circle-right"
    75                         :disabled="overnightTaskLaunching == props.row.key"
    76                         @click="overnightTaskLaunch(props.row)">
    77                 {{ overnightTaskLaunching == props.row.key ? "Working, please wait..." : "Launch" }}
     75                        @click="overnightTaskLaunchInit(props.row)">
     76                Launch
    7877              </b-button>
     78              <b-modal has-modal-card
     79                       :active.sync="overnightTaskShowLaunchDialog">
     80                <div class="modal-card">
     81
     82                  <header class="modal-card-head">
     83                    <p class="modal-card-title">Launch Overnight Task</p>
     84                  </header>
     85
     86                  <section class="modal-card-body"
     87                           v-if="overnightTask">
     88
     89                    <b-field label="Task" horizontal>
     90                      <span>{{ overnightTask.description }}</span>
     91                    </b-field>
     92
     93                    <b-field label="Last Date" horizontal>
     94                      <span :class="overnightTextClass(overnightTask)">
     95                        {{ overnightTask.last_date || "n/a" }}
     96                      </span>
     97                    </b-field>
     98
     99                    <p class="block">
     100                      Launching this task will schedule it to begin
     101                      within one minute.&nbsp; See the Luigi Task
     102                      Visualizer after that, for current status.
     103                    </p>
     104
     105                  </section>
     106
     107                  <footer class="modal-card-foot">
     108                    <b-button @click="overnightTaskShowLaunchDialog = false">
     109                      Cancel
     110                    </b-button>
     111                    <b-button type="is-primary"
     112                              icon-pack="fas"
     113                              icon-left="arrow-circle-right"
     114                              @click="overnightTaskLaunchSubmit()"
     115                              :disabled="overnightTaskLaunching">
     116                      {{ overnightTaskLaunching ? "Working, please wait..." : "Launch" }}
     117                    </b-button>
     118                  </footer>
     119                </div>
     120              </b-modal>
    79121            </b-table-column>
    80122          </template>
     
    207249
    208250        ThisPageData.overnightTasks = ${json.dumps(overnight_tasks)|n}
     251        ThisPageData.overnightTask = null
     252        ThisPageData.overnightTaskShowLaunchDialog = false
    209253        ThisPageData.overnightTaskLaunching = false
    210254
     
    222266        }
    223267
    224         ThisPage.methods.overnightTaskLaunch = function(task) {
    225             this.overnightTaskLaunching = task.key
     268        ThisPage.methods.overnightTaskLaunchInit = function(task) {
     269            this.overnightTask = task
     270            this.overnightTaskShowLaunchDialog = true
     271        }
     272
     273        ThisPage.methods.overnightTaskLaunchSubmit = function() {
     274            this.overnightTaskLaunching = true
    226275
    227276            let url = '${url('{}.launch_overnight'.format(route_prefix))}'
    228             let params = {key: task.key}
     277            let params = {key: this.overnightTask.key}
    229278
    230279            this.submitForm(url, params, response => {
     
    235284                })
    236285                this.overnightTaskLaunching = false
     286                this.overnightTaskShowLaunchDialog = false
    237287            })
    238288        }
Note: See TracChangeset for help on using the changeset viewer.