summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorThomas Müller <thomas.mueller@tmit.eu>2015-11-19 15:35:58 +0100
committerThomas Müller <thomas.mueller@tmit.eu>2015-11-19 15:36:16 +0100
commit9ec2850c78e673a4aa1c4af97aa5be4414bd438f (patch)
tree6d127c4443d5fd6a69f7577dfd0dc8c3d01e9f26 /lib
parent58eaeb267c60ed2aed4b5592a28d16f5453bb773 (diff)
downloadnextcloud-server-9ec2850c78e673a4aa1c4af97aa5be4414bd438f.tar.gz
nextcloud-server-9ec2850c78e673a4aa1c4af97aa5be4414bd438f.zip
Use mocks when testing isSharingDisabledForUser
Diffstat (limited to 'lib')
-rw-r--r--lib/private/files/storage/common.php2
-rw-r--r--lib/private/group/manager.php3
-rw-r--r--lib/private/share/share.php2
-rw-r--r--lib/private/util.php22
-rw-r--r--lib/public/util.php6
5 files changed, 24 insertions, 11 deletions
diff --git a/lib/private/files/storage/common.php b/lib/private/files/storage/common.php
index 77a70226b37..8e4958a930d 100644
--- a/lib/private/files/storage/common.php
+++ b/lib/private/files/storage/common.php
@@ -137,7 +137,7 @@ abstract class Common implements Storage {
}
public function isSharable($path) {
- if (\OC_Util::isSharingDisabledForUser()) {
+ if (\OCP\Util::isSharingDisabledForUser()) {
return false;
}
diff --git a/lib/private/group/manager.php b/lib/private/group/manager.php
index 73ff0e537c6..40018370af5 100644
--- a/lib/private/group/manager.php
+++ b/lib/private/group/manager.php
@@ -214,6 +214,9 @@ class Manager extends PublicEmitter implements IGroupManager {
* @return \OC\Group\Group[]
*/
public function getUserGroups($user) {
+ if (is_null($user)) {
+ return false;
+ }
return $this->getUserIdGroups($user->getUID());
}
diff --git a/lib/private/share/share.php b/lib/private/share/share.php
index 4503818a9ec..d377708a268 100644
--- a/lib/private/share/share.php
+++ b/lib/private/share/share.php
@@ -1811,7 +1811,7 @@ class Share extends Constants {
}
}
// Check if resharing is allowed, if not remove share permission
- if (isset($row['permissions']) && (!self::isResharingAllowed() | \OC_Util::isSharingDisabledForUser())) {
+ if (isset($row['permissions']) && (!self::isResharingAllowed() | \OCP\Util::isSharingDisabledForUser())) {
$row['permissions'] &= ~\OCP\Constants::PERMISSION_SHARE;
}
// Add display names to result
diff --git a/lib/private/util.php b/lib/private/util.php
index 4c151d63639..8e3a0302513 100644
--- a/lib/private/util.php
+++ b/lib/private/util.php
@@ -54,6 +54,11 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>
*
*/
+
+use OCP\IConfig;
+use OCP\IGroupManager;
+use OCP\IUser;
+
class OC_Util {
public static $scripts = array();
public static $styles = array();
@@ -218,20 +223,21 @@ class OC_Util {
/**
* check if sharing is disabled for the current user
- *
- * @return boolean
+ * @param IConfig $config
+ * @param IGroupManager $groupManager
+ * @param IUser|null $user
+ * @return bool
*/
- public static function isSharingDisabledForUser() {
- if (\OC::$server->getAppConfig()->getValue('core', 'shareapi_exclude_groups', 'no') === 'yes') {
- $user = \OCP\User::getUser();
- $groupsList = \OC::$server->getAppConfig()->getValue('core', 'shareapi_exclude_groups_list', '');
+ public static function isSharingDisabledForUser(IConfig $config, IGroupManager $groupManager, $user) {
+ if ($config->getAppValue('core', 'shareapi_exclude_groups', 'no') === 'yes') {
+ $groupsList = $config->getAppValue('core', 'shareapi_exclude_groups_list', '');
$excludedGroups = json_decode($groupsList);
if (is_null($excludedGroups)) {
$excludedGroups = explode(',', $groupsList);
$newValue = json_encode($excludedGroups);
- \OC::$server->getAppConfig()->setValue('core', 'shareapi_exclude_groups_list', $newValue);
+ $config->setAppValue('core', 'shareapi_exclude_groups_list', $newValue);
}
- $usersGroups = \OC_Group::getUserGroups($user);
+ $usersGroups = $groupManager->getUserGroups($user);
if (!empty($usersGroups)) {
$remainingGroups = array_diff($usersGroups, $excludedGroups);
// if the user is only in groups which are disabled for sharing then
diff --git a/lib/public/util.php b/lib/public/util.php
index 76b61347d46..07bc47c18b4 100644
--- a/lib/public/util.php
+++ b/lib/public/util.php
@@ -173,7 +173,11 @@ class Util {
* @since 7.0.0
*/
public static function isSharingDisabledForUser() {
- return \OC_Util::isSharingDisabledForUser();
+ return \OC_Util::isSharingDisabledForUser(
+ \OC::$server->getConfig(),
+ \OC::$server->getGroupManager(),
+ \OC::$server->getUserSession()->getUser()
+ );
}
/**