use SL::IS;
use SL::PE;
use SL::ReportGenerator;
+use SL::DB::Default;
require "bin/mozilla/arap.pl";
require "bin/mozilla/common.pl";
# build the popup menus
$form->{taxincluded} = ($form->{id}) ? $form->{taxincluded} : "checked";
- # notes
- $form->{notes} = $form->{intnotes} unless $form->{notes};
-
# currencies
$form->{defaultcurrency} = $form->get_default_currency(\%myconfig);
- map { $form->{selectcurrency} .= "<option>$_\n" } $form->get_all_currencies(\%myconfig);
+ map { my $quoted = H($_); $form->{selectcurrency} .= "<option value=\"${quoted}\">${quoted}\n" } $form->get_all_currencies(\%myconfig);
# vendors
if (@{ $form->{all_vendor} || [] }) {
$form->{vendor} = qq|$form->{vendor}--$form->{vendor_id}|;
- map { $form->{selectvendor} .= "<option>$_->{name}--$_->{id}\n" }
+ map { my $quoted = H($_->{name} . "--" . $_->{id}); $form->{selectvendor} .= "<option value=\"${quoted}\">${quoted}\n" }
(@{ $form->{all_vendor} });
}
# departments
if (@{ $form->{all_departments} || [] }) {
- $form->{selectdepartment} = "<option>\n";
$form->{department} = "$form->{department}--$form->{department_id}";
-
- map {
- $form->{selectdepartment} .=
- "<option>$_->{description}--$_->{id}\n"
- } (@{ $form->{all_departments} || [] });
+ $form->{selectdepartment} = "<option>\n" . join('', map { my $quoted = H("$_->{description}--$_->{id}"); "<option value=\"${quoted}\">${quoted}\n"} @{ $form->{all_departments} || [] });
}
$form->{employee} = "$form->{employee}--$form->{employee_id}";
# set option selected
foreach my $item (qw(vendor currency department)) {
+ my $to_replace = H($form->{$item});
$form->{"select$item"} =~ s/ selected//;
- $form->{"select$item"} =~
- s/option>\Q$form->{$item}\E/option selected>$form->{$item}/;
+ $form->{"select$item"} =~ s/>\Q${to_replace}\E/ selected>${to_replace}/;
}
my $readonly = ($form->{id}) ? "readonly" : "";
- $form->{radier} = ($form->current_date(\%myconfig) eq $form->{gldate}) ? 1 : 0;
+ $form->{radier} = ($::instance_conf->get_ap_changeable == 2)
+ ? ($form->current_date(\%myconfig) eq $form->{gldate})
+ : ($::instance_conf->get_ap_changeable == 1);
$readonly = ($form->{radier}) ? "" : $readonly;
$form->{forex} = $form->check_exchangerate( \%myconfig, $form->{currency}, $form->{transdate}, 'sell');
}
my $notes =
qq|<textarea name=notes rows=$rows cols=50 wrap=soft $readonly>$form->{notes}</textarea>|;
+ my $intnotes = qq|<textarea name=intnotes rows=$rows cols=50 wrap=soft readonly>$form->{intnotes}</textarea>|;
my $department;
$department = qq|
<tr>
<th align="right" nowrap>| . $locale->text('Department') . qq|</th>
<td colspan=3><select name=department>$form->{selectdepartment}</select>
- <input type=hidden name=selectdepartment value="$form->{selectdepartment}">
+ <input type=hidden name=selectdepartment value="| . H($form->{selectdepartment}) . qq|">
</td>
</tr>
| if $form->{selectdepartment};
$form->header;
print qq|
-<body>
-
<form method=post action=$form->{script}>
<input type=hidden name=id value=$form->{id}>
<tr>
<th align=right nowrap>| . $locale->text('Currency') . qq|</th>
<td><select name=currency>$form->{selectcurrency}</select></td>
- <input type=hidden name=selectcurrency value="$form->{selectcurrency}">
+ <input type=hidden name=selectcurrency value="| . H($form->{selectcurrency}) . qq|">
<input type=hidden name=defaultcurrency value=$form->{defaultcurrency}>
<input type=hidden name=fxgain_accno value=$form->{fxgain_accno}>
<input type=hidden name=fxloss_accno value=$form->{fxloss_accno}>
<tr>
<th align=left width=1%>| . $locale->text('Notes') . qq|</th>
<td align=left>$notes</td>
+
+ <th align=left width=1%>| . $locale->text('Notes for vendor') . qq|</th>
+ <td align=left>$intnotes</td>
</tr>
</table>
</td>
print qq|<input type=hidden name="acc_trans_id_$i" value=$form->{"acc_trans_id_$i"}>\n|;
print qq|<input type=hidden name="gldate_$i" value=$form->{"gldate_$i"}>\n|;
my $changeable = 1;
- if ($::lx_office_conf{features}->{payments_changeable} == 0) {
+ if (SL::DB::Default->get->payments_changeable == 0) {
# never
$changeable = ($form->{"acc_trans_id_$i"})? 0 : 1;
}
- if ($::lx_office_conf{features}->{payments_changeable} == 2) {
+ if (SL::DB::Default->get->payments_changeable == 2) {
# on the same day
$changeable = (($form->{"gldate_$i"} eq '') || $form->current_date(\%myconfig) eq $form->{"gldate_$i"});
}
$::form->header;
print $::form->parse_html_template('ap/form_footer', {
- num_due => $num_due,
- num_follow_ups => $num_follow_ups,
- show_post_draft => ($transdate > $closedto) && !$::form->{id},
- show_storno => $storno,
+ num_due => $num_due,
+ num_follow_ups => $num_follow_ups,
+ show_post_draft => ($transdate > $closedto) && !$::form->{id},
+ show_storno => $storno,
});
$::lxdebug->leave_sub;
$form->{exchangerate} = $form->{forex} if $form->{forex};
$form->{invdate} = $form->{transdate};
- my %saved_variables = map +( $_ => $form->{$_} ), qw(AP AP_amount_1 taxchart_1);
+ my %saved_variables = map +( $_ => $form->{$_} ), qw(AP AP_amount_1 taxchart_1 notes);
my $vendor_changed = &check_name("vendor");
$form->{oldinvtotal} = $form->{invtotal};
$form->{oldtotalpaid} = $totalpaid;
- # notes
- $form->{notes} = $form->{intnotes} if $vendor_changed;
-
&display_form;
$main::lxdebug->leave_sub();
$main::lxdebug->leave_sub();
}
-sub use_as_template {
+sub use_as_new {
$main::lxdebug->enter_sub();
my $form = $main::form;
$form->all_vc(\%myconfig, "vendor", "AP");
$form->{title} = $locale->text('AP Transactions');
- $form->{fokus} = "search.vendor";
+ $::request->{layout}->focus('#vendor');
$form->{jsscript} = 1;
$form->get_lists("projects" => { "key" => "ALL_PROJECTS", "all" => 1 },