@@ -1377,7 +1377,11 @@ public function updateInternalRelations(
13771377 $ masterField = $ multiEditColumnsName [$ masterFieldMd5 ];
13781378 $ foreignTable = $ destinationTable [$ masterFieldMd5 ];
13791379 $ foreignField = $ destinationColumn [$ masterFieldMd5 ];
1380- if (! empty ($ foreignDb ) && ! empty ($ foreignTable ) && ! empty ($ foreignField )) {
1380+ if (
1381+ $ foreignDb !== ''
1382+ && $ foreignTable !== '' && $ foreignTable !== null
1383+ && $ foreignField !== '' && $ foreignField !== null
1384+ ) {
13811385 if (! isset ($ existrel [$ masterField ])) {
13821386 $ updQuery = 'INSERT INTO '
13831387 . Util::backquote ($ relationFeature ->database )
@@ -1477,20 +1481,20 @@ public function updateForeignKeys(
14771481 $ emptyFields = false ;
14781482 foreach ($ masterField as $ key => $ oneField ) {
14791483 if (
1480- (! empty ( $ oneField) && empty ( $ foreignField [$ key ]))
1481- || (empty ( $ oneField) && ! empty ( $ foreignField [$ key ]))
1484+ ($ oneField !== '' && (! isset ( $ foreignField [$ key ]) || $ foreignField [ $ key ] === '' ))
1485+ || ($ oneField === '' && ( isset ( $ foreignField [$ key ]) && $ foreignField [ $ key ] !== '' ))
14821486 ) {
14831487 $ emptyFields = true ;
14841488 }
14851489
1486- if (! empty ( $ oneField) || ! empty ( $ foreignField [$ key ])) {
1490+ if ($ oneField !== '' || ( isset ( $ foreignField [$ key ]) && $ foreignField [ $ key ] !== '' )) {
14871491 continue ;
14881492 }
14891493
14901494 unset($ masterField [$ key ], $ foreignField [$ key ]);
14911495 }
14921496
1493- if (! empty ( $ foreignDb) && ! empty ( $ foreignTable) && ! $ emptyFields ) {
1497+ if ($ foreignDb !== '' && $ foreignTable !== '' && ! $ emptyFields ) {
14941498 if (isset ($ existrelForeign [$ masterFieldMd5 ])) {
14951499 $ constraintName = $ existrelForeign [$ masterFieldMd5 ]->constraint ;
14961500 $ onDelete = ! empty ($ existrelForeign [$ masterFieldMd5 ]->onDelete )
@@ -1594,8 +1598,8 @@ public function updateForeignKeys(
15941598 $ sqlQueryRecreate = '# Restoring the dropped constraint... ' . "\n" ;
15951599 $ sqlQueryRecreate .= $ this ->getSQLToCreateForeignKey (
15961600 $ table ,
1597- $ masterField ,
1598- $ existrelForeign [$ masterFieldMd5 ]->refDbName ,
1601+ $ existrelForeign [ $ masterFieldMd5 ]-> indexList ,
1602+ $ existrelForeign [$ masterFieldMd5 ]->refDbName ?? Current:: $ database ,
15991603 $ existrelForeign [$ masterFieldMd5 ]->refTableName ,
16001604 $ existrelForeign [$ masterFieldMd5 ]->refIndexList ,
16011605 $ existrelForeign [$ masterFieldMd5 ]->constraint ,
0 commit comments