Code Duplication    Length = 22-22 lines in 2 locations

src/forms/CertificateTariffForm.php 2 locations

@@ 82-103 (lines=22) @@
79
        return array_search($type, $this->certificateTypes, true);
80
    }
81
82
    public function getTypeResources($type)
83
    {
84
        $id = $this->getCertificateTypeId($type);
85
86
        $result = [];
87
88
        foreach ($this->tariff->resources as $resource) {
89
            if (strcmp($resource->object_id, $id) === 0 && $resource->isTypeCorrect()) {
90
                $result[$resource->type] = $resource;
91
            }
92
        }
93
94
        $types = $resource->getTypes();
95
        if (count($result) !== count($types)) {
96
            throw new IntegrityException('Found ' . count($result) . ' resources for certificate "' . $type . '". Must be exactly ' . count($types));
97
        }
98
99
        // sorts $result by order of $resource->getTypes()
100
        $result = array_merge($types, $result);
101
102
        return $result;
103
    }
104
105
    /**
106
     * @param array $certificateTypes
@@ 113-134 (lines=22) @@
110
        $this->certificateTypes = $certificateTypes;
111
    }
112
113
    public function getTypeParentResources($certificateType)
114
    {
115
        $id = $this->getCertificateTypeId($certificateType);
116
117
        $result = [];
118
119
        foreach ($this->parentTariff->resources as $resource) {
120
            if (strcmp($resource->object_id, $id) === 0 && $resource->isTypeCorrect()) {
121
                $result[$resource->type] = $resource;
122
            }
123
        }
124
125
        $types = $resource->getTypes();
126
        if (count($result) !== count($types)) {
127
            throw new IntegrityException('Found ' . count($result) . ' resources for certificate "' . $type . '". Must be exactly ' . count($types));
128
        }
129
130
        // sorts $result by order of $resource->getTypes()
131
        $result = array_merge($types, $result);
132
133
        return $result;
134
    }
135
}
136