X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/4486e3bc8eb00c37cf8029e663eb94b4b9c5346a..b8fee3fc:/SL/Form.pm diff --git a/SL/Form.pm b/SL/Form.pm index 45f37599c..6a6dc9c21 100644 --- a/SL/Form.pm +++ b/SL/Form.pm @@ -380,9 +380,10 @@ sub _get_request_uri { my $self = shift; return URI->new($ENV{HTTP_REFERER})->canonical() if $ENV{HTTP_X_FORWARDED_FOR}; + return URI->new if !$ENV{REQUEST_URI}; # for testing my $scheme = $ENV{HTTPS} && (lc $ENV{HTTPS} eq 'on') ? 'https' : 'http'; - my $port = $ENV{SERVER_PORT} || ''; + my $port = $ENV{SERVER_PORT}; $port = undef if (($scheme eq 'http' ) && ($port == 80)) || (($scheme eq 'https') && ($port == 443)); @@ -466,9 +467,10 @@ sub header { # standard css for all # this should gradually move to the layouts that need it $layout->use_stylesheet("$_.css") for qw( - main menu tabcontent list_accounts jquery.autocomplete + main menu list_accounts jquery.autocomplete jquery.multiselect2side frame_header/header - ui-lightness/jquery-ui-1.8.12.custom + ui-lightness/jquery-ui + jquery-ui.custom js/jscalendar/calendar-win2k-1 ); @@ -479,7 +481,7 @@ sub header { ); $self->{favicon} ||= "favicon.ico"; - $self->{titlebar} = join ' - ', grep $_, $self->{title}, $self->{login}, $::myconfig{dbname}, $self->{version} if $self->{title}; + $self->{titlebar} = join ' - ', grep $_, $self->{title}, $self->{login}, $::myconfig{dbname}, $self->{version} if $self->{title} || !$self->{titlebar}; # build includes if ($self->{refresh_url} || $self->{refresh_time}) { @@ -488,10 +490,12 @@ sub header { push @header, ""; } - push @header, map { qq|| } $layout->stylesheets; + my $auto_reload_resources_param = $layout->auto_reload_resources_param; + + push @header, map { qq|| } $layout->stylesheets; push @header, " " if $self->{landscape}; push @header, "" if -f $self->{favicon}; - push @header, map { qq|| } $layout->javascripts; + push @header, map { qq|| } $layout->javascripts; push @header, $self->{javascript} if $self->{javascript}; push @header, map { $_->show_javascript } @{ $self->{AJAX} || [] }; @@ -514,15 +518,6 @@ EOT print " $_\n" for @header; print < - @@ -2536,7 +2531,7 @@ sub all_vc { # Hotfix für Bug 1837 - Besser wäre es alte Buchungsbelege # OHNE Auswahlliste (reines Textfeld) zu laden. Hilft aber auch # nicht für veränderbare Belege (oe, do, ...) - my $obsolete = "WHERE NOT obsolete" unless $self->{id}; + my $obsolete = $self->{id} ? '' : "WHERE NOT obsolete"; my $query = qq|SELECT count(*) FROM $table $obsolete|; my ($count) = selectrow_query($self, $dbh, $query); @@ -2736,6 +2731,9 @@ sub create_links { $self->{TAX} = selectall_hashref_query($self, $dbh, $query); } + my $extra_columns = ''; + $extra_columns .= 'a.direct_debit, ' if ($module eq 'AR') || ($module eq 'AP'); + if ($self->{id}) { $query = qq|SELECT @@ -2743,7 +2741,7 @@ sub create_links { a.duedate, a.ordnumber, a.taxincluded, a.curr AS currency, a.notes, a.intnotes, a.department_id, a.amount AS oldinvtotal, a.paid AS oldtotalpaid, a.employee_id, a.gldate, a.type, - a.globalproject_id, + a.globalproject_id, ${extra_columns} c.name AS $table, d.description AS department, e.name AS employee @@ -3609,7 +3607,7 @@ SL::Form.pm - main data object. =head1 SYNOPSIS -This is the main data object of Lx-Office. +This is the main data object of kivitendo. Unfortunately it also acts as a god object for certain data retrieval procedures used in the entry points. Points of interest for a beginner are: @@ -3634,7 +3632,7 @@ will in this case not increase the value, and return undef. Generates a HTTP redirection header for the new C<$url>. Constructs an absolute URL including scheme, host name and port. If C<$url> is a -relative URL then it is considered relative to Lx-Office base URL. +relative URL then it is considered relative to kivitendo base URL. This function Cs if headers have already been created with C<$::form-Eheader>.