only flush privileges if anything at all happened
Signed-off-by: Michael Kaufmann <d00p@froxlor.org>
This commit is contained in:
@@ -1067,6 +1067,7 @@ class Customers extends \Froxlor\Api\ApiCommand implements \Froxlor\Api\Resource
|
|||||||
$dbm = new \Froxlor\Database\DbManager($this->logger());
|
$dbm = new \Froxlor\Database\DbManager($this->logger());
|
||||||
|
|
||||||
// For each of them
|
// For each of them
|
||||||
|
$priv_changed = false;
|
||||||
while ($row_database = $databases_stmt->fetch(\PDO::FETCH_ASSOC)) {
|
while ($row_database = $databases_stmt->fetch(\PDO::FETCH_ASSOC)) {
|
||||||
|
|
||||||
if ($last_dbserver != $row_database['dbserver']) {
|
if ($last_dbserver != $row_database['dbserver']) {
|
||||||
@@ -1087,10 +1088,13 @@ class Customers extends \Froxlor\Api\ApiCommand implements \Froxlor\Api\Resource
|
|||||||
$dbm->getManager()->enableUser($row_database['databasename'], $mysql_access_host);
|
$dbm->getManager()->enableUser($row_database['databasename'], $mysql_access_host);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
$priv_changed = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// At last flush the new privileges
|
// At last flush the new privileges
|
||||||
$dbm->getManager()->flushPrivileges();
|
if ($priv_changed) {
|
||||||
|
$dbm->getManager()->flushPrivileges();
|
||||||
|
}
|
||||||
Database::needRoot(false);
|
Database::needRoot(false);
|
||||||
|
|
||||||
// reactivate/deactivate api-keys
|
// reactivate/deactivate api-keys
|
||||||
@@ -1371,6 +1375,7 @@ class Customers extends \Froxlor\Api\ApiCommand implements \Froxlor\Api\Resource
|
|||||||
|
|
||||||
$dbm = new \Froxlor\Database\DbManager($this->logger());
|
$dbm = new \Froxlor\Database\DbManager($this->logger());
|
||||||
|
|
||||||
|
$priv_changed = false;
|
||||||
while ($row_database = $databases_stmt->fetch(\PDO::FETCH_ASSOC)) {
|
while ($row_database = $databases_stmt->fetch(\PDO::FETCH_ASSOC)) {
|
||||||
if ($last_dbserver != $row_database['dbserver']) {
|
if ($last_dbserver != $row_database['dbserver']) {
|
||||||
Database::needRoot(true, $row_database['dbserver']);
|
Database::needRoot(true, $row_database['dbserver']);
|
||||||
@@ -1378,8 +1383,11 @@ class Customers extends \Froxlor\Api\ApiCommand implements \Froxlor\Api\Resource
|
|||||||
$last_dbserver = $row_database['dbserver'];
|
$last_dbserver = $row_database['dbserver'];
|
||||||
}
|
}
|
||||||
$dbm->getManager()->deleteDatabase($row_database['databasename']);
|
$dbm->getManager()->deleteDatabase($row_database['databasename']);
|
||||||
|
$priv_changed = true;
|
||||||
|
}
|
||||||
|
if ($priv_changed) {
|
||||||
|
$dbm->getManager()->flushPrivileges();
|
||||||
}
|
}
|
||||||
$dbm->getManager()->flushPrivileges();
|
|
||||||
Database::needRoot(false);
|
Database::needRoot(false);
|
||||||
|
|
||||||
// delete customer itself
|
// delete customer itself
|
||||||
|
|||||||
Reference in New Issue
Block a user