Skip to content

Commit 968a787

Browse files
authored
Owner tab: COSV Submitter is always the current user, omit it (#2824)
### What's done: * Owner tab: COSV Submitter is always the current user, omit it
1 parent 569210f commit 968a787

1 file changed

Lines changed: 19 additions & 10 deletions

File tree

save-frontend/src/main/kotlin/com/saveourtool/save/frontend/components/views/vuln/VulnerabilityCollectionView.kt

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ val vulnerabilityCollectionView: FC<VulnerabilityCollectionViewProps> = FC { pro
4646
val (vulnerabilityFilter, setVulnerabilityFilter) = useState(props.filter ?: VulnerabilityFilter.approved)
4747
val (selectedMenu, setSelectedMenu) = useState(VulnerabilityListTab.PUBLIC)
4848
val (publicTable, setPublicTable) = useState(true)
49+
val (isOwnerTab, setIsOwnerTab) = useState(false)
4950
val (countVulnerability, setCountVulnerability) = useState(0)
5051

5152
val enrollRequest = useDeferredRequest {
@@ -61,7 +62,7 @@ val vulnerabilityCollectionView: FC<VulnerabilityCollectionViewProps> = FC { pro
6162
setCountVulnerability(count)
6263
}
6364

64-
val vulnerabilityListTable: FC<FiltersProps> = useMemo(publicTable, i18n.language) {
65+
val vulnerabilityListTable: FC<FiltersProps> = useMemo(isOwnerTab, publicTable, i18n.language) {
6566
tableComponent(
6667
columns = {
6768
columns {
@@ -117,14 +118,17 @@ val vulnerabilityCollectionView: FC<VulnerabilityCollectionViewProps> = FC { pro
117118
}
118119
}
119120
}
120-
column(id = "user", header = "COSV Submitter".t(), { user.name }) { cellContext ->
121-
Fragment.create {
122-
td {
123-
className = ClassName("align-middle")
124-
cellContext.row.original.user.let { user ->
125-
renderUserAvatarWithName(user) {
126-
height = 2.rem
127-
width = 2.rem
121+
// don't show submitter on owner tab, it's always current user
122+
if (!isOwnerTab) {
123+
column(id = "user", header = "COSV Submitter".t(), { user.name }) { cellContext ->
124+
Fragment.create {
125+
td {
126+
className = ClassName("align-middle")
127+
cellContext.row.original.user.let { user ->
128+
renderUserAvatarWithName(user) {
129+
height = 2.rem
130+
width = 2.rem
131+
}
128132
}
129133
}
130134
}
@@ -195,7 +199,7 @@ val vulnerabilityCollectionView: FC<VulnerabilityCollectionViewProps> = FC { pro
195199
tab(selectedMenu.name, tabList, "nav nav-tabs mt-3") { value ->
196200
setSelectedMenu { VulnerabilityListTab.valueOf(value) }
197201
setVulnerabilityFilter {
198-
getFiltersByTab(VulnerabilityListTab.valueOf(value), setPublicTable, props.currentUserInfo)
202+
getFiltersByTab(VulnerabilityListTab.valueOf(value), setPublicTable, setIsOwnerTab, props.currentUserInfo)
199203
}
200204
}
201205
}
@@ -236,6 +240,7 @@ val vulnerabilityCollectionView: FC<VulnerabilityCollectionViewProps> = FC { pro
236240
getFiltersByTab(
237241
selectedMenu,
238242
setPublicTable,
243+
setIsOwnerTab,
239244
props.currentUserInfo
240245
)
241246
}
@@ -307,21 +312,25 @@ external interface FiltersProps : TableProps<VulnerabilityMetadataDto> {
307312
private fun getFiltersByTab(
308313
selectedMenu: VulnerabilityListTab,
309314
setPublicTable: StateSetter<Boolean>,
315+
setIsOwnerTab: StateSetter<Boolean>,
310316
currentUserInfo: UserInfo?
311317
) = when (selectedMenu) {
312318
VulnerabilityListTab.PUBLIC -> {
313319
setPublicTable(true)
320+
setIsOwnerTab(false)
314321
VulnerabilityFilter.approved
315322
}
316323
VulnerabilityListTab.ADMIN -> {
317324
setPublicTable(false)
325+
setIsOwnerTab(false)
318326
VulnerabilityFilter(
319327
identifierPrefix = "",
320328
statuses = listOf(VulnerabilityStatus.PENDING_REVIEW),
321329
)
322330
}
323331
VulnerabilityListTab.OWNER -> {
324332
setPublicTable(false)
333+
setIsOwnerTab(true)
325334
VulnerabilityFilter(
326335
identifierPrefix = "",
327336
statuses = null,

0 commit comments

Comments
 (0)