Add support for groups
This commit is contained in:
@@ -80,7 +80,7 @@ if(isset($_POST['appname']) && ($_POST['appname'] === 'user_sql') && isset($_POS
|
|||||||
$columns = array();
|
$columns = array();
|
||||||
foreach($params as $param)
|
foreach($params as $param)
|
||||||
{
|
{
|
||||||
if(strpos($param, 'col_') === 0)
|
if(strpos($param, 'col_') === 0 && strpos($param, 'col_group_') !== 0)
|
||||||
{
|
{
|
||||||
if(isset($_POST[$param]) && $_POST[$param] !== '')
|
if(isset($_POST[$param]) && $_POST[$param] !== '')
|
||||||
$columns[] = $_POST[$param];
|
$columns[] = $_POST[$param];
|
||||||
|
|||||||
@@ -22,10 +22,13 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
require_once __DIR__ . '/../user_sql.php';
|
require_once __DIR__ . '/../user_sql.php';
|
||||||
|
require_once __DIR__ . '/../group_sql.php';
|
||||||
\OCP\App::registerAdmin('user_sql','settings');
|
\OCP\App::registerAdmin('user_sql','settings');
|
||||||
|
|
||||||
$backend = new \OCA\user_sql\OC_USER_SQL;
|
$backend = new \OCA\user_sql\OC_USER_SQL;
|
||||||
|
$group_backend = new \OCA\user_sql\OC_GROUP_SQL;
|
||||||
|
|
||||||
|
|
||||||
// register user backend
|
// register user backend
|
||||||
\OC_User::useBackend($backend);
|
\OC_User::useBackend($backend);
|
||||||
|
\OC::$server->getGroupManager()->addBackend($group_backend);
|
||||||
|
|||||||
@@ -64,7 +64,10 @@ class Helper {
|
|||||||
'set_mail_sync_mode',
|
'set_mail_sync_mode',
|
||||||
'set_enable_gethome',
|
'set_enable_gethome',
|
||||||
'set_gethome_mode',
|
'set_gethome_mode',
|
||||||
'set_gethome'
|
'set_gethome',
|
||||||
|
'sql_group_table',
|
||||||
|
'col_group_username',
|
||||||
|
'col_group_name'
|
||||||
);
|
);
|
||||||
|
|
||||||
return $params;
|
return $params;
|
||||||
@@ -173,6 +176,18 @@ class Helper {
|
|||||||
case 'mysqlPassword':
|
case 'mysqlPassword':
|
||||||
$query = "SELECT PASSWORD(:pw);";
|
$query = "SELECT PASSWORD(:pw);";
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case 'getUserGroups':
|
||||||
|
$query = "SELECT ".$this->settings['col_group_name']." FROM ".$this->settings['sql_group_table']." WHERE ".$this->settings['col_group_username']." = :uid";
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'getGroups':
|
||||||
|
$query = "SELECT distinct ".$this->settings['col_group_name']." FROM ".$this->settings['sql_group_table'];
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'getGroupUsers':
|
||||||
|
$query = "SELECT distinct ".$this->settings['col_group_username']." FROM ".$this->settings['sql_group_table']." WHERE ".$this->settings['col_group_name']." = :gid";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(isset($limits['limit']) && $limits['limit'] !== null)
|
if(isset($limits['limit']) && $limits['limit'] !== null)
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ $cfgClass = $ocVersion >= 7 ? 'section' : 'personalblock';
|
|||||||
<li><a id="sqlEmailSettings" href="#sql-3"><?php p($l -> t('E-Mail Settings')); ?></a></li>
|
<li><a id="sqlEmailSettings" href="#sql-3"><?php p($l -> t('E-Mail Settings')); ?></a></li>
|
||||||
<li><a id="sqlDomainSettings" href="#sql-4"><?php p($l -> t('Domain Settings')); ?></a></li>
|
<li><a id="sqlDomainSettings" href="#sql-4"><?php p($l -> t('Domain Settings')); ?></a></li>
|
||||||
<li><a id="sqlGethomeSettings" href="#sql-5"><?php p($l -> t('getHome Settings')); ?></a></li>
|
<li><a id="sqlGethomeSettings" href="#sql-5"><?php p($l -> t('getHome Settings')); ?></a></li>
|
||||||
|
<li><a id="sqlGroupsSettings" href="#sql-6"><?php p($l -> t('Groups Settings')); ?></a></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<fieldset id="sql-1">
|
<fieldset id="sql-1">
|
||||||
@@ -155,6 +156,15 @@ $cfgClass = $ocVersion >= 7 ? 'section' : 'personalblock';
|
|||||||
<em><?php p($l -> t('You can use the placeholders %%u to specify the user ID (before appending the default domain), %%ud to specify the user ID (after appending the default domain) and %%d to specify the default domain')); ?></em></p>
|
<em><?php p($l -> t('You can use the placeholders %%u to specify the user ID (before appending the default domain), %%ud to specify the user ID (after appending the default domain) and %%d to specify the default domain')); ?></em></p>
|
||||||
|
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
<fieldset id="sql-6">
|
||||||
|
<p><label for="sql_group_table"><?php p($l -> t('Table')); ?></label><input type="text" id="sql_group_table" name="sql_group_table" value="<?php p($_['sql_group_table']); ?>" /></p>
|
||||||
|
|
||||||
|
<p><label for="col_group_username"><?php p($l -> t('Username Column')); ?></label><input type="text" id="col_group_username" name="col_group_username" value="<?php p($_['col_group_username']); ?>" /></p>
|
||||||
|
|
||||||
|
<p><label for="col_group_name"><?php p($l -> t('Group Name Column')); ?></label><input type="text" id="col_group_name" name="col_group_name" value="<?php p($_['col_group_name']); ?>" /></p>
|
||||||
|
|
||||||
|
</fieldset>
|
||||||
|
|
||||||
<input type="hidden" name="requesttoken" value="<?php p($_['requesttoken']); ?>" id="requesttoken" />
|
<input type="hidden" name="requesttoken" value="<?php p($_['requesttoken']); ?>" id="requesttoken" />
|
||||||
<input type="hidden" name="appname" value="user_sql" />
|
<input type="hidden" name="appname" value="user_sql" />
|
||||||
<input id="sqlSubmit" type="submit" value="<?php p($l -> t('Save')); ?>" />
|
<input id="sqlSubmit" type="submit" value="<?php p($l -> t('Save')); ?>" />
|
||||||
|
|||||||
Reference in New Issue
Block a user