defaults_feature: Standardwerte richtig propagieren
authorMoritz Bunkus <m.bunkus@linet-services.de>
Fri, 28 Jun 2013 12:18:40 +0000 (14:18 +0200)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Fri, 28 Jun 2013 12:18:40 +0000 (14:18 +0200)
sql/Pg-upgrade2/defaults_feature.pl

index 2e13982..8d9b863 100644 (file)
@@ -21,14 +21,17 @@ sub run {
 
   # check current configuration and set default variables accordingly, so that
   # kivitendo's behaviour isn't changed by this update
-  # if checks are not set in config leave it to the default value
+  my %old_defaults = ( parts_show_image => 1 );
+
   foreach my $check (qw(webdav vertreter parts_show_image parts_listing_image)) {
-    my $check_set = $::lx_office_conf{features}->{$check} ? 1 : 0;
-    $self->db_query("UPDATE defaults SET $check = ?", bind => [ $check_set ]) if $check_set;
+    my $check_set = exists $::lx_office_conf{features}->{$check} ? $::lx_office_conf{features}->{$check} : $old_defaults{$check};
+    $self->db_query("UPDATE defaults SET $check = ?", bind => [ $check_set ? 1 : 0 ]);
   }
 
-  my $update_column = "UPDATE defaults SET parts_image_css = ?";
-  $self->db_query($update_column, bind => [ $::lx_office_conf{features}->{parts_image_css} ]);
+  if (exists $::lx_office_conf{features}->{parts_image_css}) {
+    my $update_column = "UPDATE defaults SET parts_image_css = ?";
+    $self->db_query($update_column, bind => [ $::lx_office_conf{features}->{parts_image_css} ]);
+  }
 
   return 1;
 }