Commit Graph

92 Commits

Author SHA1 Message Date
Roeland Jago Douma 9e322828f2 Cache if a group exists 2016-01-12 08:24:08 +01:00
Roeland Jago Douma 3c8f4784e9 Inject DBConnection
* Use query builder
* Minor unit tests additions
2016-01-12 08:24:08 +01:00
Roeland Jago Douma 53e37804ec The group database backend should cache groups
This avoids duplicated queries like first checking the group_users db
and then just doing a select on the group db. Those enries are linked
(and should be using foreign keys!)

This commit makes sure we cache those entries.
If a user is part of N groups this saves N queries on webdav access
2016-01-12 08:24:08 +01:00
Thomas Müller c86483f3ed Adjust PHPDoc as suggested 2015-11-20 14:38:29 +01:00
Thomas Müller 9ec2850c78 Use mocks when testing isSharingDisabledForUser 2015-11-19 15:36:16 +01:00
Joas Schilling 292dc553c3 Make sure that group names are strings not integers 2015-11-06 10:40:09 +01:00
Lukas Reschke c6f6a8758b Drop OC_SubAdmin and replace usages 2015-10-29 11:31:18 +01:00
Lukas Reschke 8f09d5b67c Update license headers 2015-10-26 14:04:01 +01:00
Roeland Jago Douma 0e9ab13943 New \OC\SubAdmin class
* DI
* Tests
* moved OC_SubAdmin to legacy
* Added to private OC\GroupManager
2015-10-21 11:32:38 +02:00
Morris Jobke f63915d0c8 update license headers and authors 2015-06-25 14:13:49 +02:00
Lukas Reschke 1ead0b6f95 Use proper type
This is a string
2015-06-19 21:00:42 +02:00
Joas Schilling 497fe93b6c Do not return backends but add a method to check for one 2015-06-16 11:31:04 +02:00
Joas Schilling 171f86ca2e Only sort by group name when LDAP is involved 2015-06-16 11:10:00 +02:00
Thomas Müller f051b7381b Merge pull request #16402 from owncloud/issue-15956-slow-group-usercount
Sort user groups by group name and hide the user count
2015-06-08 12:11:22 +02:00
Joas Schilling 8efc8c0a96 Reduce the complexity of the search queries in the backends to a minimum 2015-05-18 16:39:21 +02:00
Joas Schilling d683752b37 Sort user groups by group name and hide the user count 2015-05-18 12:55:19 +02:00
Thomas Müller 88cc52c408 Avoid php message "Invalid argument supplied for foreach()" - refs #15590 2015-04-14 11:00:20 +02:00
Morris Jobke bf17ac929d Merge pull request #15169 from rullzer/fix_displayNamesInGroup
Groupmanagers displayNamesInGroup should actually search in displaynames
2015-03-30 17:04:09 +02:00
Jenkins for ownCloud b585d87d9d Update license headers 2015-03-26 11:44:36 +01:00
Roeland Jago Douma abfb524b29 When searching for displayname then search for displayname 2015-03-24 21:35:44 +01:00
Morris Jobke 06aef4e8b1 Revert "Updating license headers"
This reverts commit 6a1a4880f0.
2015-02-26 11:37:37 +01:00
Joas Schilling 6e9f3b2f7e Clear the local cache when we clear the backends 2015-02-25 16:03:12 +01:00
Vincent Petry 4290e1990e Merge pull request #13829 from owncloud/appmanager-list
Better caching for enabled apps
2015-02-23 16:03:32 +01:00
Jenkins for ownCloud 6a1a4880f0 Updating license headers 2015-02-23 12:13:59 +01:00
Robin Appelman 409453bc60 better user group caching 2015-02-17 15:05:29 +01:00
Bernhard Posselt 6779bf113d add isAdmin and isInGroup methods for the group manager 2014-12-17 17:41:57 +01:00
Lukas Reschke fe7d9a7ca0 Add REST route for user & group management
First step of a somewhat testable user management. - I know, the JSON returns are in an ugly format but the JS expects it that way. So let's keep it that way until we have time to fix the JS in the future.
2014-12-08 12:11:01 +01:00
Lukas Reschke af56429a9a Merge pull request #12470 from owncloud/jenkins-12447
Jenkins 12447
2014-11-27 15:16:14 +01:00
Joas Schilling 24511c6f00 Move OC_GROUP_BACKEND_* constants to OC_Group_Backend class 2014-11-27 13:47:30 +01:00
Joas Schilling e1f3abf7a5 Correctly namespace and autoload DatabaseException 2014-11-27 11:10:04 +01:00
Morris Jobke c0d63680ed Merge pull request #11479 from owncloud/cleanup-group-admin-on-deleteGroup
cleanup group admin(s) on deleteGroup
2014-11-13 22:39:40 +01:00
Arthur Schiwon 4e8c7570d4 make performance less bad. Still far from good, but at least it works 2014-10-17 20:16:04 +02:00
Arthur Schiwon a7a532f58a with several backends, more than limit can be returned 2014-10-17 20:16:04 +02:00
blizzz 688a141586 Merge pull request #9104 from macjohnny/macjohnny-drastic-ldap-speedup
drastic ldap speedup (update)
2014-10-17 12:07:27 +02:00
michag86 8abe441d4a cleanup group admin(s) on deleteGroup 2014-10-08 14:05:06 +02:00
michag86 ca58ac50a2 fix for issue #10880 2014-10-07 16:07:48 +02:00
Vincent Petry d7db006315 Revert "fix for issue #10880"
This reverts commit 0df070a8e4.
2014-10-07 15:54:25 +02:00
michag86 0df070a8e4 fix for issue #10880 2014-10-07 14:30:14 +02:00
blizzz b8a1340538 Merge pull request #9225 from voxsim/fix_displayNamesInGroup
fix in displayNamesInGroup
2014-09-22 12:13:15 +02:00
voxsim 7a14f94ae5 1. remove sizeof($filteredUsers) > 0 as condition
2. use count instead of sizeof. Latter is an alias to first one, practically we stick to count everywhere. Having it consistent helps with readability.
3. move whitespace so we have $groupUsers[] = $filteredUser; instead of $groupUsers []= $filteredUser;
2014-09-18 17:50:19 +02:00
voxsim 1366133d2b add more logic in displayNamesInGroup for big user bases 2014-09-15 18:37:54 +02:00
Arthur Schiwon 0bb460c9b5 retrieve local users, groups and group members in a sorted way 2014-08-29 15:17:37 +02:00
voxsim a49610e18a change logic in displayNamesInGroup and add some unit tests 2014-08-28 13:51:48 +02:00
Thomas Müller a72dae6842 Merge pull request #10144 from owncloud/issue/9972
Issue/9972 Fix issues with group and username `0`
2014-08-06 09:53:13 +02:00
Joas Schilling f80baf03d4 Fix getting group '0' from database backend
Fix #9972
2014-08-04 15:53:55 +02:00
Robin Appelman 94fa21d146 Add group management to the public api 2014-07-16 14:25:31 +02:00
Stephan Peijnik 4d74aa09bf Port of #9584
Fixes #9583

lib/private/group/metadata.php: For subadmins also return an array of groups, indexed by their GIDs.
settings/users.php: Convert array of arrays to array of GIDs before calling into OC_Group::displayNamesInGroups.

Signed-off-by: Stephan Peijnik <speijnik@anexia-it.com>

Fix indentation.

Signed-off-by: Stephan Peijnik <speijnik@anexia-it.com>

Renamed $grp to $group in foreach loop.

Signed-off-by: Stephan Peijnik <speijnik@anexia-it.com>

Use is_null() instead of empty() when checking the return value of GroupManager::get().

Additionally, $grp was renamed to $group inside
 \OC\Group\MetaData::fetchGroups().

Signed-off-by: Stephan Peijnik <speijnik@anexia-it.com>

Updated code to reflect changes introduced to \OC\Group\MetaData.

Now that fetchGroups() does not exist anymore and getGroups() is called
directory, the 'groups' property does not exist anymore.
Instead, we now generate that array on the fly and return it from getGroups.

Signed-off-by: Stephan Peijnik <speijnik@anexia-it.com>
2014-07-16 12:23:26 +02:00
Thomas Müller 73e2bf7bf4 fixing PHPDoc 2014-07-14 21:26:47 +02:00
Arthur Schiwon ab2c7e06a4 remove dead code
do not filter groups. but update the user count according to the filter

improve phpdoc

improve metadata runtime cache

add metadata tests
2014-07-14 21:26:37 +02:00
voxsim 5d30ed9ad1 fix in displayNamesInGroup: when specified limit N, we did complex search only in the first N users 2014-06-26 12:38:33 +02:00