Failed Conditions
Pull Request — master (#6)
by Sander
01:46
created

OwnNoteGroupService   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 32
Duplicated Lines 53.13 %

Coupling/Cohesion

Components 1
Dependencies 3

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 17
loc 32
rs 10
wmc 5
lcom 1
cbo 3

3 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 5 1
A deleteGroup() 9 9 2
A renameGroup() 8 8 2

How to fix   Duplicated Code   

Duplicated Code

Duplicate code is one of the most pungent code smells. A rule that is often used is to re-structure code once it is duplicated in three or more places.

Common duplication problems, and corresponding solutions are:

1
<?php
2
/**
3
 * Nextcloud - passman
4
 *
5
 * @copyright Copyright (c) 2016, Sander Brand ([email protected])
6
 * @copyright Copyright (c) 2016, Marcos Zuriaga Miguel ([email protected])
7
 * @license GNU AGPL version 3 or any later version
8
 *
9
 * This program is free software: you can redistribute it and/or modify
10
 * it under the terms of the GNU Affero General Public License as
11
 * published by the Free Software Foundation, either version 3 of the
12
 * License, or (at your option) any later version.
13
 *
14
 * This program is distributed in the hope that it will be useful,
15
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17
 * GNU Affero General Public License for more details.
18
 *
19
 * You should have received a copy of the GNU Affero General Public License
20
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
21
 *
22
 */
23
24
namespace OCA\OwnNote\Service;
25
26
use OCA\OwnNote\Db\OwnNote;
27
use OCA\OwnNote\Utility\Utils;
28
use OCA\OwnNote\Db\OwnNoteMapper;
29
30
31
class OwnNoteGroupService {
32
33
	private $noteMapper;
34
	private $utils;
35
	private $noteService;
36
37
	public function __construct(OwnNoteMapper $noteMapper, Utils $utils, OwnNoteService $noteService) {
38
		$this->noteMapper = $noteMapper;
39
		$this->utils = $utils;
40
		$this->noteService = $noteService;
41
	}
42
43 View Code Duplication
	public function deleteGroup($FOLDER, $group) {
44
		// We actually need to just rename all the notes
45
		$uid = \OC::$server->getUserSession()->getUser()->getUID();
46
		$results = $this->noteMapper->findNotesByGroup($group, $uid);
47
		foreach ($results as $result) {
48
			$this->noteService->renameNote($FOLDER, $result->getId(), $result->getName(), '');
0 ignored issues
show
Bug introduced by
Consider using $result->name. There is an issue with getName() and APC-enabled PHP versions.
Loading history...
49
		}
50
		return true;
51
	}
52
53 View Code Duplication
	public function renameGroup($FOLDER, $group, $newgroup) {
54
		$uid = \OC::$server->getUserSession()->getUser()->getUID();
55
		$results = $this->noteMapper->findNotesByGroup($group, $uid);
56
		foreach ($results as $result) {
57
			$this->noteService->renameNote($FOLDER, $result->getId(), $result->getName(), $newgroup);
0 ignored issues
show
Bug introduced by
Consider using $result->name. There is an issue with getName() and APC-enabled PHP versions.
Loading history...
58
		}
59
		return true;
60
	}
61
62
}
63