Merge remote branch 'origin/master'
[kivitendo-erp.git] / bin / mozilla / gl.pl
index fb6166f..bc5d7a5 100644 (file)
@@ -220,13 +220,8 @@ sub search {
   );
   $::form->{ALL_EMPLOYEES} = SL::DB::Manager::Employee->get_all(query => [ deleted => 0 ]);
 
-  my $onload = "focus()"
-             . qq|;setupDateFormat('|. $::myconfig{dateformat} . qq|', '| . $::locale->text("Falsches Datumsformat!") . qq|')|
-             . qq|;setupPoints('|. $::myconfig{numberformat} .   qq|', '| . $::locale->text("wrongformat") . qq|')|;
-
   $::form->header;
   print $::form->parse_html_template('gl/search', {
-    onload => $onload,
     department_label => sub { ("$_[0]{description}--$_[0]{id}")x2 },
     employee_label => sub { "$_[0]{id}--$_[0]{name}" },
   });
@@ -494,7 +489,7 @@ sub generate_report {
   $data .= $sh;
 
   $row->{balance}->{data}        = $data;
-    
+
   if ( !$form->{report_generator_csv_options_for_import} ) {
     $report->add_separator();
     $report->add_data($row);
@@ -849,6 +844,10 @@ sub display_rows {
 
 }
 
+sub _get_radieren {
+  return ($::instance_conf->get_gl_changeable == 2) ? ($::form->current_date(\%::myconfig) eq $::form->{gldate}) : ($::instance_conf->get_gl_changeable == 1);
+}
+
 sub form_header {
   $::lxdebug->enter_sub;
   $::auth->assert('general_ledger');
@@ -879,10 +878,10 @@ sub form_header {
     s/option>\Q$::form->{department}\E/option selected>$::form->{department}/;
 
   if ($init) {
-    $::form->{fokus} = "gl.reference";
+    $::request->{layout}->focus("#reference");
     $::form->{taxincluded} = "1";
   } else {
-    $::form->{fokus} = qq|gl.accno_$::form->{rowcount}|;
+    $::request->{layout}->focus("#accno_$::form->{rowcount}");
   }
 
   $::form->{previous_id}     ||= "--";
@@ -891,6 +890,7 @@ sub form_header {
   $::form->header;
   print $::form->parse_html_template('gl/form_header', {
     hide_title => $title,
+    readonly   => $::form->{id} && ($::form->{locked} || !_get_radieren()),
   });
 
   $::lxdebug->leave_sub;
@@ -908,10 +908,8 @@ sub form_footer {
     $follow_ups_due = sum map { $_->{due} * 1 } @{ $follow_ups || [] };
   }
 
-  my $radieren = $::form->current_date(\%::myconfig) eq $::form->{gldate};
-
   print $::form->parse_html_template('gl/form_footer', {
-    radieren       => $radieren,
+    radieren       => _get_radieren(),
     follow_ups     => $follow_ups,
     follow_ups_due => $follow_ups_due,
   });
@@ -928,8 +926,6 @@ sub delete {
   $form->header;
 
   print qq|
-<body>
-
 <form method=post action=gl.pl>
 |;