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
diff options
context:
space:
mode:
authorLukas Reschke <lukas@owncloud.com>2014-09-08 20:29:11 +0400
committerLukas Reschke <lukas@owncloud.com>2014-09-08 20:29:11 +0400
commitffee4da397d8f74f8e4ce4f479c2a9447e60477c (patch)
tree12a3df968e46946613f4cc74452e34b45a2a1af3 /settings/ajax
parent0ec9c2ccf8a2fd3451135c65146ff2c04ef0457b (diff)
parent6a56e03d482e723356b79e8d652922329daea1a4 (diff)
Merge pull request #10740 from owncloud/fix-everyone-group-count
Using countUsers method to return true count of users
Diffstat (limited to 'settings/ajax')
-rw-r--r--settings/ajax/geteveryonecount.php49
1 files changed, 49 insertions, 0 deletions
diff --git a/settings/ajax/geteveryonecount.php b/settings/ajax/geteveryonecount.php
new file mode 100644
index 00000000000..54fbd6e2fbd
--- /dev/null
+++ b/settings/ajax/geteveryonecount.php
@@ -0,0 +1,49 @@
+<?php
+/**
+ * ownCloud
+ *
+ * @author Clark Tomlinson
+ * @copyright 2014 Clark Tomlinson <clark@owncloud.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
+ * License as published by the Free Software Foundation; either
+ * version 3 of the License, or any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+OC_JSON::callCheck();
+OC_JSON::checkSubAdminUser();
+
+$userCount = 0;
+
+$currentUser = \OC::$server->getUserSession()->getLoginName();
+
+if (!OC_User::isAdminUser($currentUser)) {
+ $groups = OC_SubAdmin::getSubAdminsGroups($currentUser);
+
+ foreach ($groups as $group) {
+ $userCount += count(OC_Group::usersInGroup($group));
+
+ }
+} else {
+
+ $userCountArray = \OC::$server->getUserManager()->countUsers();
+
+ if (!empty($userCountArray)) {
+ foreach ($userCountArray as $classname => $usercount) {
+ $userCount += $usercount;
+ }
+ }
+}
+
+
+OC_JSON::success(array('count' => $userCount));