mirror of
https://gitlab.com/davical-project/davical.git
synced 2026-05-27 02:54:27 +00:00
Finally really fix that permissions issue in Principal.
This commit is contained in:
parent
6915ef3d49
commit
90a34a78ec
@ -532,23 +532,19 @@ class Principal {
|
|||||||
$sql_params = array();
|
$sql_params = array();
|
||||||
foreach( self::updateableFields() AS $k ) {
|
foreach( self::updateableFields() AS $k ) {
|
||||||
if ( !isset($field_values->{$k}) && !isset($this->{$k}) ) continue;
|
if ( !isset($field_values->{$k}) && !isset($this->{$k}) ) continue;
|
||||||
|
$param_name = ':'.$k;
|
||||||
|
$sql_params[$param_name] = (isset($field_values->{$k}) ? $field_values->{$k} : $this->{$k});
|
||||||
|
if ( $k == 'default_privileges' ) {
|
||||||
|
$sql_params[$param_name] = sprintf('%024s',decbin($sql_params[$param_name]));
|
||||||
|
$param_name = 'cast('.$param_name.' as text)::BIT(24)';
|
||||||
|
}
|
||||||
if ( $inserting ) {
|
if ( $inserting ) {
|
||||||
if ($k == 'default_privileges')
|
$param_names[] = $param_name;
|
||||||
$param_names[] = 'cast(:'.$k.' as text)::BIT(24)';
|
|
||||||
else
|
|
||||||
$param_names[] = ':'.$k;
|
|
||||||
$insert_fields[] = $k;
|
$insert_fields[] = $k;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if ($k == 'default_privileges') {
|
$update_list[] = $k.'='.$param_name;
|
||||||
$update_list[] = $k.'=cast(:'.$k.' as text)::BIT(24)';
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$update_list[] = $k.'=:'.$k;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$sql_params[':'.$k] = (isset($field_values->{$k}) ? $field_values->{$k} : $this->{$k});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( $inserting && isset(self::$db_mandatory_fields) ) {
|
if ( $inserting && isset(self::$db_mandatory_fields) ) {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user