@@ -18,6 +18,14 @@ import AdminGroupSelect from './AdminGroupSelect'
1818import SubAdminGroupSelect from './SubAdminGroupSelect'
1919import { loadState } from '@nextcloud/initial-state'
2020import { t } from '@nextcloud/l10n'
21+ import { isAxiosError } from "@nextcloud/axios" ;
22+ import { showError } from "@nextcloud/dialogs" ;
23+ import { getLoggerBuilder } from '@nextcloud/logger'
24+
25+ const logger = getLoggerBuilder ( )
26+ . setApp ( 'groupfolders' )
27+ . detectUser ( )
28+ . build ( )
2129
2230const bytesInOneGibibyte = Math . pow ( 1024 , 3 )
2331const defaultQuotaOptions = {
@@ -96,10 +104,20 @@ export class App extends Component<unknown, AppState> implements OC.Plugin<OC.Se
96104 if ( ! mountPoint ) {
97105 return
98106 }
99- const folder = await this . api . createFolder ( mountPoint )
100- const folders = this . state . folders
101- folders . push ( folder )
102- this . setState ( { folders, newMountPoint : '' } )
107+ try {
108+ const folder = await this . api . createFolder ( mountPoint )
109+ const folders = this . state . folders
110+ folders . push ( folder )
111+ this . setState ( { folders, newMountPoint : '' } )
112+ } catch ( error ) {
113+ logger . error ( 'Error while creating new folder' , { error } )
114+
115+ if ( isAxiosError ( error ) && error . response . data . message ) {
116+ showError ( error . response . data . message )
117+ } else {
118+ showError ( t ( 'groupfolders' , 'Folder could not be created' ) )
119+ }
120+ }
103121 }
104122
105123 attach = ( search : OC . Search . Core ) => {
@@ -159,10 +177,20 @@ export class App extends Component<unknown, AppState> implements OC.Plugin<OC.Se
159177 }
160178
161179 async renameFolder ( folder : Folder , newName : string ) {
162- await this . api . renameFolder ( folder . id , newName )
163- const folders = this . state . folders
164- folder . mount_point = newName
165- this . setState ( { folders, editingMountPoint : 0 } )
180+ try {
181+ await this . api . renameFolder ( folder . id , newName ) ;
182+ const folders = this . state . folders
183+ folder . mount_point = newName
184+ this . setState ( { folders, editingMountPoint : 0 } )
185+ } catch ( error ) {
186+ logger . error ( 'Error while renaming folder' , { error } )
187+
188+ if ( isAxiosError ( error ) && error . response . data . message ) {
189+ showError ( error . response . data . message )
190+ } else {
191+ showError ( t ( 'groupfolders' , 'Folder could not be renamed' ) )
192+ }
193+ }
166194 }
167195
168196 async setAcl ( folder : Folder , acl : boolean ) {
0 commit comments