Code Duplication    Length = 23-23 lines in 2 locations

models/AuthItem.php 2 locations

@@ 194-216 (lines=23) @@
191
     * @param array $items
192
     * @return int
193
     */
194
    public function addChildren($items)
195
    {
196
        $manager = Configs::authManager();
197
        $success = 0;
198
        if ($this->_item) {
199
            foreach ($items as $name) {
200
                $child = $manager->getPermission($name);
201
                if ($this->type == Item::TYPE_ROLE && $child === null) {
202
                    $child = $manager->getRole($name);
203
                }
204
                try {
205
                    $manager->addChild($this->_item, $child);
206
                    $success++;
207
                } catch (\Exception $exc) {
208
                    Yii::error($exc->getMessage(), __METHOD__);
209
                }
210
            }
211
        }
212
        if ($success > 0) {
213
            Helper::invalidate();
214
        }
215
        return $success;
216
    }
217
218
    /**
219
     * Remove an item as a child of another item.
@@ 223-245 (lines=23) @@
220
     * @param array $items
221
     * @return int
222
     */
223
    public function removeChildren($items)
224
    {
225
        $manager = Configs::authManager();
226
        $success = 0;
227
        if ($this->_item !== null) {
228
            foreach ($items as $name) {
229
                $child = $manager->getPermission($name);
230
                if ($this->type == Item::TYPE_ROLE && $child === null) {
231
                    $child = $manager->getRole($name);
232
                }
233
                try {
234
                    $manager->removeChild($this->_item, $child);
235
                    $success++;
236
                } catch (\Exception $exc) {
237
                    Yii::error($exc->getMessage(), __METHOD__);
238
                }
239
            }
240
        }
241
        if ($success > 0) {
242
            Helper::invalidate();
243
        }
244
        return $success;
245
    }
246
247
    /**
248
     * Get items