Code Duplication    Length = 6-7 lines in 4 locations

core/modules/_core/_coreCrudController.php 4 locations

@@ 580-585 (lines=6) @@
577
                $values = [$parentId];
578
579
                // Setup constraints
580
                if (isset($fieldProperties['crossRefConstraints'])) {
581
                    foreach ($fieldProperties['crossRefConstraints'] as $k => $v) {
582
                        $sql .= ' AND '.$k.' = ?';
583
                        $values[] = $v;
584
                    }
585
                }
586
587
                $statement = $model->getConnection()->prepare($sql);
588
                $success = $statement->execute($values);
@@ 596-601 (lines=6) @@
593
                $values = [$parentId, $id];
594
595
                // Setup constraints
596
                if (isset($fieldProperties['crossRefConstraints'])) {
597
                    foreach ($fieldProperties['crossRefConstraints'] as $k => $v) {
598
                        $sql .= ' AND '.$k.' = ?';
599
                        $values[] = $v;
600
                    }
601
                }
602
603
                $sql .= ' LIMIT 1';
604
                $statement = $model->getConnection()->prepare($sql);
@@ 651-656 (lines=6) @@
648
            $values = [$parentId, $id];
649
            $sql = 'SELECT * FROM '.$fieldProperties['crossReferenceTable'];
650
            $sql .= ' WHERE '.$parentField.' = ? AND '.$childField.' = ?';
651
            if (isset($fieldProperties['crossRefConstraints'])) {
652
                foreach ($fieldProperties['crossRefConstraints'] as $k => $v) {
653
                    $sql .= ' AND '.$k.' = ?';
654
                    $values[] = $v;
655
                }
656
            }
657
            $sql .= ' LIMIT 1';
658
            $statement = $model->getConnection()->prepare($sql);
659
            $success = $statement->execute($values);
@@ 697-703 (lines=7) @@
694
            }
695
696
            // Setup constraints
697
            if (isset($fieldProperties['crossRefConstraints'])) {
698
                foreach ($fieldProperties['crossRefConstraints'] as $k => $v) {
699
                    $fieldList .= ', '.$k;
700
                    $valueList .= ', ?';
701
                    $values[] = $v;
702
                }
703
            }
704
705
            $sql = 'INSERT INTO '.$fieldProperties['crossReferenceTable'].' ('.$parentField.', '.$childField.$fieldList.') VALUES ('.$valueList.')';
706
            $statement = $model->getConnection()->prepare($sql);