@@ -542,20 +542,21 @@ public function softUndeleteEntry(string $type, int $id, ?int $folderId = null):
542542 return ;
543543 }
544544
545- // set entry as not deleted
546- // has to come last to not break findByAncestorFolder
547- $ qb = $ this ->db ->getQueryBuilder ();
548- $ qb
549- ->update ('bookmarks_tree ' )
550- ->set ('soft_deleted_at ' , $ qb ->createNamedParameter (null , IQueryBuilder::PARAM_DATE ))
551- ->where ($ qb ->expr ()->eq ('id ' , $ qb ->createNamedParameter ($ id , IQueryBuilder::PARAM_INT )))
552- ->andWhere ($ qb ->expr ()->eq ('type ' , $ qb ->createNamedParameter ($ type , IQueryBuilder::PARAM_STR )));
553- if ($ folderId !== null ) {
554- $ qb ->set ('index ' , $ qb ->createNamedParameter ($ this ->countChildren ($ folderId )));
555- $ qb ->andWhere ($ qb ->expr ()->eq ('parent_folder ' , $ qb ->createNamedParameter ($ folderId , IQueryBuilder::PARAM_INT )));
545+ if ($ this ->isEntrySoftDeleted ($ type , $ id , $ folderId )) {
546+ // set entry as not deleted
547+ // has to come last to not break findByAncestorFolder
548+ $ qb = $ this ->db ->getQueryBuilder ();
549+ $ qb
550+ ->update ('bookmarks_tree ' )
551+ ->set ('soft_deleted_at ' , $ qb ->createNamedParameter (null , IQueryBuilder::PARAM_DATE ))
552+ ->where ($ qb ->expr ()->eq ('id ' , $ qb ->createNamedParameter ($ id , IQueryBuilder::PARAM_INT )))
553+ ->andWhere ($ qb ->expr ()->eq ('type ' , $ qb ->createNamedParameter ($ type , IQueryBuilder::PARAM_STR )));
554+ if ($ folderId !== null ) {
555+ $ qb ->set ('index ' , $ qb ->createNamedParameter ($ this ->countChildren ($ folderId )));
556+ $ qb ->andWhere ($ qb ->expr ()->eq ('parent_folder ' , $ qb ->createNamedParameter ($ folderId , IQueryBuilder::PARAM_INT )));
557+ }
558+ $ qb ->executeStatement ();
556559 }
557- $ qb ->executeStatement ();
558-
559560 }
560561
561562 /**
0 commit comments