Another small fix for BIT24 casting for the LDAP driver...

This commit is contained in:
Andrew McMillan 2011-11-26 17:27:13 +13:00
parent 4a934c57b0
commit a4ddc7a6c9

View File

@ -533,12 +533,18 @@ class Principal {
foreach( self::updateableFields() AS $k ) {
if ( !isset($field_values->{$k}) && !isset($this->{$k}) ) continue;
if ( $inserting ) {
$param_names[] = ':'.$k;
$insert_fields[] = $k;
$param_names[] = ':'.$k . ($k == 'default_privileges' ? '::BIT(24)' : '');
}
else {
$update_list[] = $k.'=:'.($k == 'default_privileges' ? '::BIT(24)' : '');
if ($k == 'default_privileges') {
$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});
}