AJAX-Antworten nicht direkt $cgi->header() ausgeben, sondern über eine Funktion,...
authorMoritz Bunkus <m.bunkus@linet-services.de>
Fri, 11 Jul 2008 11:27:04 +0000 (11:27 +0000)
committerMoritz Bunkus <m.bunkus@linet-services.de>
Fri, 11 Jul 2008 11:27:04 +0000 (11:27 +0000)
SL/Form.pm
bin/mozilla/ct.pl
bin/mozilla/io.pl
bin/mozilla/ir.pl

index 58614c4..5fcd09e 100644 (file)
@@ -639,6 +639,20 @@ sub header {
   $main::lxdebug->leave_sub();
 }
 
+sub ajax_response_header {
+  $main::lxdebug->enter_sub();
+
+  my ($self) = @_;
+
+  my $db_charset = $main::dbcharset ? $main::dbcharset : Common::DEFAULT_CHARSET;
+  my $cgi        = $main::cgi || CGI->new('');
+  my $output     = $cgi->header('-charset' => $db_charset);
+
+  $main::lxdebug->leave_sub();
+
+  return $output;
+}
+
 sub _prepare_html_template {
   $main::lxdebug->enter_sub();
 
index 086565d..29a0283 100644 (file)
@@ -566,7 +566,7 @@ sub get_contact {
   $auth->assert('customer_vendor_edit');
 
   CT->get_contact(\%myconfig, \%$form);
-  print $cgi->header(), join '__pjx__', map $form->{"cp_$_"}, 
+  print $form->ajax_response_header(), join '__pjx__', map $form->{"cp_$_"}, 
     qw(name greeting title givenname phone1 phone2 email abteilung fax mobile1 mobile2 satphone satfax project privatphone privatemail birthday used);
   $lxdebug->leave_sub();
 
@@ -578,7 +578,7 @@ sub get_shipto {
   $auth->assert('customer_vendor_edit');
 
   CT->get_shipto(\%myconfig, \%$form);
-  print $cgi->header(),  join '__pjx__', map $form->{"shipto$_"},
+  print $form->ajax_response_header(),  join '__pjx__', map $form->{"shipto$_"},
     qw(name department_1 department_2 street zipcode city country contact phone fax email used);
   $lxdebug->leave_sub();
 
@@ -591,7 +591,7 @@ sub get_delivery {
 
   CT->get_delivery(\%myconfig, \%$form );
 
-  print $cgi->header(), $form->parse_html_template('ct/get_delivery');
+  print $form->ajax_response_header(), $form->parse_html_template('ct/get_delivery');
 
   $lxdebug->leave_sub();
 }
index 87cb3ea..a15f2ac 100644 (file)
@@ -1849,7 +1849,7 @@ sub set_duedate {
 
   $form->get_duedate(\%myconfig);
 
-  print $cgi->header() . $form->{duedate};
+  print $form->ajax_response_header() . $form->{duedate};
 
   $lxdebug->leave_sub();
 }
index 07efa66..022c858 100644 (file)
@@ -1219,9 +1219,9 @@ sub yes {
 sub set_duedate_vendor {
   $lxdebug->enter_sub();
 
-  print $cgi->header(), IR->get_duedate('vendor_id' => $form->{vendor_id},
-                                        'invdate'   => $form->{invdate},
-                                        'default'   => $form->{old_duedate});
+  print $form->ajax_response_header(), IR->get_duedate('vendor_id' => $form->{vendor_id},
+                                                       'invdate'   => $form->{invdate},
+                                                       'default'   => $form->{old_duedate});
 
   $lxdebug->leave_sub();
 }