Speichern des Session-Inhaltes in eigene Funktion ausgelagert
authorMoritz Bunkus <m.bunkus@linet-services.de>
Thu, 30 Dec 2010 14:24:40 +0000 (15:24 +0100)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Thu, 30 Dec 2010 14:24:40 +0000 (15:24 +0100)
SL/Auth.pm

index 9b465ce..7c97904 100644 (file)
@@ -604,17 +604,27 @@ sub create_or_refresh_session {
 
   }
 
-  $query = qq|INSERT INTO auth.session_content (session_id, sess_key, sess_value) VALUES (?, ?, ?)|;
-  $sth   = prepare_query($form, $dbh, $query);
+  $self->save_session($dbh);
+
+  $dbh->commit();
+
+  $main::lxdebug->leave_sub();
+}
+
+sub save_session {
+  my $self         = shift;
+  my $provided_dbh = shift;
+
+  my $dbh          = $provided_dbh || $self->dbconnect();
+
+  my $query        = qq|INSERT INTO auth.session_content (session_id, sess_key, sess_value) VALUES (?, ?, ?)|;
+  my $sth          = prepare_query($::form, $dbh, $query);
 
   foreach my $key (sort keys %{ $self->{SESSION} }) {
-    do_statement($form, $sth, $query, $session_id, $key, $self->{SESSION}->{$key});
+    do_statement($::form, $sth, $query, $session_id, $key, $self->{SESSION}->{$key});
   }
 
   $sth->finish();
-  $dbh->commit();
-
-  $main::lxdebug->leave_sub();
 }
 
 sub set_session_value {