File tree 3 files changed +13
-4
lines changed
specifyweb/frontend/js_src/lib/components
3 files changed +13
-4
lines changed Original file line number Diff line number Diff line change @@ -110,6 +110,9 @@ const globalFieldOverrides: {
110
110
Attachment : {
111
111
tableID : 'optional' ,
112
112
} ,
113
+ CollectingEventAttribute : {
114
+ hostTaxon : 'readOnly' ,
115
+ } ,
113
116
Taxon : {
114
117
parent : 'required' ,
115
118
isAccepted : 'readOnly' ,
Original file line number Diff line number Diff line change @@ -64,6 +64,7 @@ export function QueryComboBox({
64
64
typeSearch : initialTypeSearch ,
65
65
forceCollection,
66
66
relatedModel : initialRelatedModel ,
67
+ disableCanAdd = false ,
67
68
} : {
68
69
readonly id : string | undefined ;
69
70
readonly resource : SpecifyResource < AnySchema > | undefined ;
@@ -75,6 +76,7 @@ export function QueryComboBox({
75
76
readonly typeSearch : Element | string | undefined ;
76
77
readonly forceCollection : number | undefined ;
77
78
readonly relatedModel ?: SpecifyModel | undefined ;
79
+ readonly disableCanAdd : boolean ;
78
80
} ) : JSX . Element {
79
81
React . useEffect ( ( ) => {
80
82
if ( resource === undefined || ! resource . isNew ( ) ) return ;
@@ -344,7 +346,8 @@ export function QueryComboBox({
344
346
345
347
const canAdd =
346
348
! RESTRICT_ADDING . has ( field . relatedModel . name ) &&
347
- hasTablePermission ( field . relatedModel . name , 'create' ) ;
349
+ hasTablePermission ( field . relatedModel . name , 'create' ) &&
350
+ ! disableCanAdd ;
348
351
349
352
return (
350
353
< div className = "flex w-full min-w-[theme(spacing.40)] items-center sm:min-w-[unset]" >
Original file line number Diff line number Diff line change @@ -44,26 +44,29 @@ export function HostTaxon({
44
44
. maybe ( records [ 0 ] , deserializeResource )
45
45
?. rgetPromise ( 'rightSideCollection' )
46
46
)
47
- . then ( ( collection ) => collection ?. get ( 'id' ) ) ,
47
+ . then ( ( collection ) => collection ) ,
48
48
[ relationship ]
49
49
) ,
50
50
false
51
51
) ;
52
- return rightSideCollection === undefined ? (
52
+ return rightSideCollection === null || rightSideCollection === undefined ? (
53
53
< Input . Text isReadOnly />
54
54
) : hasTreeAccess ( 'Taxon' , 'read' ) ? (
55
55
< QueryComboBox
56
56
field = { schema . models . CollectingEventAttribute . strictGetRelationship (
57
57
'hostTaxon'
58
58
) }
59
- forceCollection = { rightSideCollection }
59
+ forceCollection = { rightSideCollection . get ( 'id' ) }
60
60
formType = { formType }
61
61
id = { id }
62
62
isRequired = { isRequired }
63
63
mode = { mode }
64
64
relatedModel = { schema . models . Taxon }
65
65
resource = { resource }
66
66
typeSearch = { hostTaxonTypeSearch }
67
+ disableCanAdd = {
68
+ rightSideCollection . get ( 'discipline' ) !== resource . get ( 'discipline' )
69
+ }
67
70
/>
68
71
) : null ;
69
72
}
You can’t perform that action at this time.
0 commit comments