Skip to content

Commit f460344

Browse files
committed
Update triage status in the ui without page reloading
1 parent 8338f3e commit f460344

3 files changed

Lines changed: 16 additions & 9 deletions

File tree

server/frontend/src/components/Buckets/View.vue

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -32,21 +32,19 @@
3232
</td>
3333
<td v-else>
3434
No bug associated.
35-
<span
36-
v-if="bucket.triage_status"
37-
data-testid="triage-status-display"
35+
<span v-if="triageStatus" data-testid="triage-status-display"
3836
>Marked triaged as:
3937
<strong data-testid="triage-status-label">
40-
{{ bucket.triage_status_display }}
38+
{{ triageStatusDisplay }}
4139
</strong>
42-
on {{ formatDate(bucket.triaged_at) }}.</span
40+
on {{ formatDate(triagedAt) }}.</span
4341
>
4442
<br v-if="canEdit" /><br v-if="canEdit" />
4543
<div v-if="canEdit" class="btn-group">
4644
<assignbutton :bucket="bucket.id" :providers="providers" />
4745
<TriageBucketDropdown
4846
:bucket-id="bucket.id"
49-
:current-status="bucket.triage_status"
47+
:current-status="triageStatus"
5048
:choices="bucket.triage_status_choices || []"
5149
@update="handleTriageStatusUpdate"
5250
/>
@@ -309,6 +307,9 @@ export default {
309307
reports: null,
310308
sortKeys: [...defaultSortKeys],
311309
totalPages: 1,
310+
triageStatus: this.bucket.triage_status,
311+
triageStatusDisplay: this.bucket.triage_status_display,
312+
triagedAt: this.bucket.triaged_at,
312313
};
313314
},
314315
computed: {
@@ -530,8 +531,13 @@ export default {
530531
},
531532
async handleTriageStatusUpdate(newStatus) {
532533
try {
533-
const data = await updateBucketTriageStatus(this.bucket.id, newStatus);
534-
window.location.href = data.url;
534+
const { bucket } = await updateBucketTriageStatus(
535+
this.bucket.id,
536+
newStatus,
537+
);
538+
this.triageStatus = bucket.triage_status;
539+
this.triageStatusDisplay = bucket.triage_status_display;
540+
this.triagedAt = bucket.triaged_at;
535541
} catch (err) {
536542
swal("Oops", errorParser(err), "error");
537543
}

server/reportmanager/serializers.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ def to_internal_value(self, data):
8080

8181
def to_representation(self, obj):
8282
serialized = super().to_representation(obj)
83-
serialized["size"] = obj.size
83+
serialized["size"] = getattr(obj, "size", None)
8484
serialized["latest_entry_id"] = getattr(obj, "latest_entry_id", None)
8585
serialized["latest_report"] = getattr(obj, "latest_report", None)
8686
serialized["priority_score"] = getattr(obj, "priority_score", None)

server/reportmanager/views.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1120,6 +1120,7 @@ def __validate(self, bucket, submit_save, reassign, limit, offset, created):
11201120
data["url"] = reverse(
11211121
"reportmanager:bucketview", kwargs={"sig_id": bucket.pk}
11221122
)
1123+
data["bucket"] = self.get_serializer(bucket).data
11231124
else:
11241125
data["warning_message"] = "This is a preview, don't forget to save!"
11251126

0 commit comments

Comments
 (0)