diff --git a/specifyweb/frontend/js_src/lib/components/FormParse/cells.ts b/specifyweb/frontend/js_src/lib/components/FormParse/cells.ts index 9b815635d6a..e6f6c7e5c25 100644 --- a/specifyweb/frontend/js_src/lib/components/FormParse/cells.ts +++ b/specifyweb/frontend/js_src/lib/components/FormParse/cells.ts @@ -118,6 +118,17 @@ export type SubViewSortField = { export const cellAlign = ['left', 'center', 'right'] as const; export const cellVerticalAlign = ['stretch', 'center', 'start', 'end'] as const; +const specialFieldNames = new Set([ + /* + * Legacy synthetic form controls that are not schema-backed fields. + * These are still parsed intentionally by some field renderers. + */ + 'this', + 'generateLabelChk', + 'generateInvoice', + 'sendEMail', +]); + const processCellType: { readonly [KEY in keyof CellTypes]: (props: { readonly cell: SimpleXmlNode; @@ -156,6 +167,7 @@ const processCellType: { if ( resolvedFields === undefined && + !specialFieldNames.has(rawFieldName ?? '') && (fieldDefinition.type !== 'Plugin' || fieldDefinition.pluginDefinition.type === 'PartialDateUI') ) diff --git a/specifyweb/frontend/js_src/lib/components/Permissions/definitions.ts b/specifyweb/frontend/js_src/lib/components/Permissions/definitions.ts index 0045e7a884b..229da7a2f48 100644 --- a/specifyweb/frontend/js_src/lib/components/Permissions/definitions.ts +++ b/specifyweb/frontend/js_src/lib/components/Permissions/definitions.ts @@ -35,10 +35,10 @@ export const operationPolicies = { '/tree/edit/storage': [ 'merge', 'move', + 'bulk_move', 'synonymize', 'desynonymize', 'repair', - 'bulk_move', ], '/tree/edit/geologictimeperiod': [ 'merge',