new bekommt Hash-Params, nicht positionsbezogene
authorMoritz Bunkus <m.bunkus@linet-services.de>
Mon, 29 Nov 2010 16:52:00 +0000 (17:52 +0100)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Thu, 30 Dec 2010 13:33:24 +0000 (14:33 +0100)
SL/DBUpgrade2.pm
SL/User.pm

index d52468e..3d5d0de 100644 (file)
@@ -8,14 +8,16 @@ use SL::Iconv;
 use strict;
 
 sub new {
-  my ($package, $form, $dbdriver) = @_;
-  my $self                        = { form => $form, dbdriver => $dbdriver };
-  return bless($self, $package);
+  my $package = shift;
+
+  return bless({}, $package)->init(@_);
 }
 
-sub set_dbcharset {
-  my $self           = shift;
-  $self->{dbcharset} = shift;
+sub init {
+  my ($self, %params) = @_;
+
+  map { $self->{$_} = $params{$_} } keys %params;
+
   return $self;
 }
 
index a30d541..ec09687 100644 (file)
@@ -125,7 +125,7 @@ sub login {
 
     $rc = 0;
 
-    my $dbupdater = SL::DBUpgrade2->new($form, $myconfig{"dbdriver"});
+    my $dbupdater = SL::DBUpgrade2->new(form => $form, dbdriver => $myconfig{dbdriver});
     my $controls  = $dbupdater->parse_dbupdate_controls;
 
     map({ $form->{$_} = $myconfig{$_} }
@@ -395,7 +395,7 @@ sub dbcreate {
   my $db_charset = $Common::db_encoding_to_charset{$form->{encoding}};
   $db_charset ||= Common::DEFAULT_CHARSET;
 
-  my $dbupdater = SL::DBUpgrade2->new($form, $form->{dbdriver});
+  my $dbupdater = SL::DBUpgrade2->new(form => $form, dbdriver => $form->{dbdriver});
   # create the tables
   $dbupdater->process_query($dbh, "sql/lx-office.sql", undef, $db_charset);
 
@@ -457,7 +457,7 @@ sub dbneedsupdate {
   my ($self, $form) = @_;
 
   my %members  = $main::auth->read_all_users();
-  my $controls = SL::DBUpgrade2->new($form, $form->{dbdriver})->parse_dbupdate_controls;
+  my $controls = SL::DBUpgrade2->new(form => $form, dbdriver => $form->{dbdriver})->parse_dbupdate_controls;
 
   my ($query, $sth, %dbs_needing_updates);
 
@@ -597,7 +597,7 @@ sub dbupdate {
   my $db_charset = $main::dbcharset;
   $db_charset ||= Common::DEFAULT_CHARSET;
 
-  my $dbupdater = SL::DBUpgrade2->new($form, $form->{dbdriver});
+  my $dbupdater = SL::DBUpgrade2->new(form => $form, dbdriver => $form->{dbdriver});
 
   foreach my $db (split(/ /, $form->{dbupdate})) {