Skip to content

Commit dc0c702

Browse files
urs-urbanBowlingX
authored andcommitted
Fix node deletion for similar paths
1 parent b818880 commit dc0c702

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

lib/Gedmo/Tree/Strategy/ORM/MaterializedPath.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,18 @@ public function removeNode($om, $meta, $config, $node)
2323
$wrapped = AbstractWrapper::wrap($node, $om);
2424

2525
$path = addcslashes($wrapped->getPropertyValue($config['path']), '%');
26+
$lvl = $wrapped->getPropertyValue($config['level']);
2627

2728
// Remove node's children
2829
$qb = $om->createQueryBuilder();
2930
$qb->select('e')
3031
->from($config['useObjectClass'], 'e')
3132
->where($qb->expr()->like('e.'.$config['path'], $qb->expr()->literal($path.'%')));
33+
34+
if(!empty($lvl) && $meta->hasField($config['level'])){
35+
$qb->andWhere($qb->expr()->gt('e.'.$config['level'], $qb->expr()->literal($lvl)));
36+
}
37+
3238
$results = $qb->getQuery()
3339
->execute();
3440

0 commit comments

Comments
 (0)