Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorMichael Gapczynski <mtgap@owncloud.com>2012-07-27 23:34:51 +0400
committerMichael Gapczynski <mtgap@owncloud.com>2012-07-30 18:07:19 +0400
commit7d17c59a51d06e7aeaf8b52fb5268dc14a7b51dd (patch)
tree7cf5bcd9181de5305859fe146679c68c027fa852 /apps
parentf378415377a4afc44a55f4aedec3dfefc87ad890 (diff)
Fix group detection for sharing in case username contains '@', fix for oc-1270
Diffstat (limited to 'apps')
-rw-r--r--apps/files_sharing/ajax/getitem.php7
-rw-r--r--apps/files_sharing/lib_share.php2
2 files changed, 7 insertions, 2 deletions
diff --git a/apps/files_sharing/ajax/getitem.php b/apps/files_sharing/ajax/getitem.php
index 36ac372cad4..852e5a24571 100644
--- a/apps/files_sharing/ajax/getitem.php
+++ b/apps/files_sharing/ajax/getitem.php
@@ -23,8 +23,13 @@ while ($path != $userDirectory) {
}
} else {
// Check if uid_shared_with is a group
- if (($pos = strpos($uid_shared_with, '@')) !== false) {
+ $pos = strrpos($uid_shared_with, '@');
+ if ($pos !== false) {
$gid = substr($uid_shared_with, $pos + 1);
+ } else {
+ $gid = false;
+ }
+ if ($gid && OC_Group::groupExists($gid)) {
// Include users in the group so the users can be removed from the list of people to share with
if ($path == $source) {
$group = array(array('gid' => $gid, 'permissions' => $rows[$i]['permissions'], 'users' => OC_Group::usersInGroup($gid), 'parentFolder' => false));
diff --git a/apps/files_sharing/lib_share.php b/apps/files_sharing/lib_share.php
index c0d0a1f18b9..b939132a9a0 100644
--- a/apps/files_sharing/lib_share.php
+++ b/apps/files_sharing/lib_share.php
@@ -182,7 +182,7 @@ class OC_Share {
$uid_shared_with = OC_Group::usersInGroup($uid_shared_with);
// Remove the owner from the list of users in the group
$uid_shared_with = array_diff($uid_shared_with, array(OCP\USER::getUser()));
- } else if ($uid = strstr($uid_shared_with, '@', true)) {
+ } else if ($uid = strrchr($uid_shared_with, '@', true)) {
$uid_shared_with = array($uid);
} else {
$uid_shared_with = array($uid_shared_with);