Add scripts to get user list and group list as json data.

Info about which groups the users belong to are also in the user list. Both files need logging in through GET because unauthorized users are not allowed to see this data.
This commit is contained in:
Hans Bakker 2011-08-15 17:38:31 +02:00
parent 6096568da9
commit 4f3fdf6c45
2 changed files with 92 additions and 0 deletions

45
core/ajax/grouplist.php Normal file
View File

@ -0,0 +1,45 @@
<?php
/**
* ownCloud - ajax group list
*
* @author Hans Bakker
* @copyright 2011 hansmbakker+kde@gmail.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/>.
*
*/
// We send json data
header( "Content-Type: application/jsonrequest" );
$RUNTIME_NOAPPS = TRUE; //no apps, yet
require_once('../../lib/base.php');
if(isset($_GET["user"]) && isset($_GET["password"]))
{
if(!OC_User::checkPassword($_GET["user"], $_GET["password"]))
exit();
$groups = array();
foreach( OC_Group::getGroups() as $i ){
// Do some more work here soon
$groups[] = array( "groupname" => $i );
}
echo json_encode($groups);
}
?>

47
core/ajax/userlist.php Normal file
View File

@ -0,0 +1,47 @@
<?php
/**
* ownCloud - ajax user list
*
* @author Hans Bakker
* @copyright 2011 hansmbakker+kde@gmail.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/>.
*
*/
// We send json data
header( "Content-Type: application/jsonrequest" );
$RUNTIME_NOAPPS = TRUE; //no apps, yet
require_once('../../lib/base.php');
if(isset($_GET["user"]) && isset($_GET["password"]))
{
if(!OC_User::checkPassword($_GET["user"], $_GET["password"]))
exit();
$users = array();
foreach( OC_User::getUsers() as $i ){
$users[] = array( "username" => $i, "groups" => join( ", ", OC_Group::getUserGroups( $i ) ));
}
echo json_encode($users);
}
?>