|
1 | 1 | <script> |
2 | 2 | import StatusBadge from '$lib/components/jobs/StatusBadge.svelte'; |
3 | 3 | import { displayStandardErrorAlert } from '$lib/common/errors'; |
| 4 | + import { page } from '$app/stores'; |
4 | 5 | import Modal from '../common/Modal.svelte'; |
5 | 6 |
|
6 | 7 | /** @type {{id: number, name: string}[]} */ |
|
37 | 38 | // Should update jobWorkflowName |
38 | 39 | jobWorkflowName = workflows.find((workflow) => workflow.id === jobToDisplay.workflow_id)?.name; |
39 | 40 | // Should update jobInputDatasetName |
40 | | - jobInputDatasetName = datasets.find((dataset) => dataset.id === jobToDisplay.input_dataset_id)?.name; |
| 41 | + jobInputDatasetName = datasets.find( |
| 42 | + (dataset) => dataset.id === jobToDisplay.input_dataset_id |
| 43 | + )?.name; |
41 | 44 | // Should update jobOutputDatasetName |
42 | | - jobOutputDatasetName = datasets.find((dataset) => dataset.id === jobToDisplay.output_dataset_id)?.name; |
| 45 | + jobOutputDatasetName = datasets.find( |
| 46 | + (dataset) => dataset.id === jobToDisplay.output_dataset_id |
| 47 | + )?.name; |
43 | 48 | // Should update jobStatus |
44 | 49 | jobStatus = job.status; |
45 | 50 |
|
|
69 | 74 | <Modal id="workflowJobInfoModal" bind:this={modal} size="lg"> |
70 | 75 | <svelte:fragment slot="header"> |
71 | 76 | <h1 class="h5 modal-title flex-grow-1">Workflow Job #{workflowJobId}</h1> |
72 | | - <button class="btn btn-light me-3" on:click={fetchJob}> |
73 | | - <i class="bi-arrow-clockwise" /> |
74 | | - </button> |
| 77 | + {#if job && job.user_email === $page.data.userInfo.email && job.project_id !== null} |
| 78 | + <button class="btn btn-light me-3" on:click={fetchJob}> |
| 79 | + <i class="bi-arrow-clockwise" /> |
| 80 | + </button> |
| 81 | + {/if} |
75 | 82 | </svelte:fragment> |
76 | 83 | <svelte:fragment slot="body"> |
77 | 84 | <div class="row mb-3"> |
78 | 85 | <div class="col-12"> |
79 | 86 | <div id="workflowJobError" /> |
80 | 87 | <p class="lead">Workflow job properties</p> |
81 | | - <ul class="list-group"> |
82 | | - <li class="list-group-item list-group-item-light fw-bold">Id</li> |
83 | | - <li class="list-group-item">{job?.id}</li> |
84 | | - <li class="list-group-item list-group-item-light fw-bold">Workflow</li> |
85 | | - <li class="list-group-item">{jobWorkflowName}</li> |
86 | | - <li class="list-group-item list-group-item-light fw-bold">Project</li> |
87 | | - <li class="list-group-item">{projectName}</li> |
88 | | - <li class="list-group-item list-group-item-light fw-bold">Input dataset</li> |
89 | | - <li class="list-group-item">{jobInputDatasetName}</li> |
90 | | - <li class="list-group-item list-group-item-light fw-bold">Output dataset</li> |
91 | | - <li class="list-group-item">{jobOutputDatasetName}</li> |
92 | | - <li class="list-group-item list-group-item-light fw-bold">Status</li> |
93 | | - {#key jobStatus} |
94 | | - <li class="list-group-item"><StatusBadge status={jobStatus} /></li> |
95 | | - {/key} |
96 | | - <li class="list-group-item list-group-item-light fw-bold">Working directory</li> |
97 | | - <li class="list-group-item"><code>{job?.working_dir}</code></li> |
98 | | - <li class="list-group-item list-group-item-light fw-bold">User Working directory</li> |
99 | | - <li class="list-group-item"><code>{job?.working_dir_user}</code></li> |
100 | | - </ul> |
| 88 | + {#if job} |
| 89 | + <ul class="list-group"> |
| 90 | + <li class="list-group-item list-group-item-light fw-bold">Id</li> |
| 91 | + <li class="list-group-item">{job.id}</li> |
| 92 | + <li class="list-group-item list-group-item-light fw-bold">Workflow</li> |
| 93 | + <li class="list-group-item">{job.workflow_dump?.name || '-'}</li> |
| 94 | + <li class="list-group-item list-group-item-light fw-bold">Project</li> |
| 95 | + <li class="list-group-item">{projectName || '-'}</li> |
| 96 | + <li class="list-group-item list-group-item-light fw-bold">Input dataset</li> |
| 97 | + <li class="list-group-item">{job.input_dataset_dump?.name || '-'}</li> |
| 98 | + <li class="list-group-item list-group-item-light fw-bold">Output dataset</li> |
| 99 | + <li class="list-group-item">{job.output_dataset_dump?.name || '-'}</li> |
| 100 | + <li class="list-group-item list-group-item-light fw-bold">Status</li> |
| 101 | + {#key jobStatus} |
| 102 | + <li class="list-group-item"><StatusBadge status={jobStatus} /></li> |
| 103 | + {/key} |
| 104 | + <li class="list-group-item list-group-item-light fw-bold">Working directory</li> |
| 105 | + <li class="list-group-item"><code>{job.working_dir}</code></li> |
| 106 | + <li class="list-group-item list-group-item-light fw-bold">User Working directory</li> |
| 107 | + <li class="list-group-item"><code>{job.working_dir_user}</code></li> |
| 108 | + </ul> |
| 109 | + {/if} |
101 | 110 | </div> |
102 | 111 | </div> |
103 | 112 | <div class="row"> |
|
0 commit comments