use SL::ReportGenerator;
require "bin/mozilla/common.pl";
+require "bin/mozilla/drafts.pl";
require "bin/mozilla/reportgenerator.pl";
1;
$auth->assert('general_ledger');
+ return $lxdebug->leave_sub() if (load_draft_maybe());
+
$form->{title} = "Add";
$form->{callback} = "gl.pl?action=add" unless $form->{callback};
my %column_alignment;
map { $column_alignment{$_} = 'right' } qw(balance id debit credit debit_tax credit_tax balance);
- map { $column_alignment{$_} = 'center' } qw(transdate reference description source notes debit_accno credit_accno debit_tax_accno credit_tax_accno);
+ map { $column_alignment{$_} = 'center' } qw(reference debit_accno credit_accno debit_tax_accno credit_tax_accno);
+ map { $column_alignment{$_} = 'left' } qw(description source notes);
map { $column_defs{$_}->{align} = $column_alignment{$_} } keys %column_alignment;
my $report = SL::ReportGenerator->new(\%myconfig, $form);
my $taxchart_init;
foreach my $item (@{ $form->{ALL_CHARTS} }) {
my $key = $item->{accno} . "--" . $item->{tax_id};
- $taxchart_init = $item->{taxkey_id} unless (@chart_values);
+ $taxchart_init = $item->{tax_id} unless (@chart_values);
push(@chart_values, $key);
$chart_labels{$key} = $item->{accno} . "--" . $item->{description};
$charts{$item->{accno}} = $item;
my %taxcharts = ();
foreach my $item (@{ $form->{ALL_TAXCHARTS} }) {
my $key = $item->{id} . "--" . $item->{rate};
- $taxchart_init = $key if ($taxchart_init eq $item->{taxkey});
+ $taxchart_init = $key if ($taxchart_init == $item->{id});
push(@taxchart_values, $key);
$taxchart_labels{$key} = $item->{taxdescription} . " " . $item->{rate} * 100 . ' %';
$taxcharts{$item->{id}} = $item;
$selected_taxchart = "$item->{id}--$item->{rate}";
}
- $selected_accno = '' if ($init);
- $selected_taxchart = $taxchart_init unless ($selected_taxchart ne "");
+ $selected_accno = '' if ($init);
+ $selected_taxchart ||= $taxchart_init;
$accno = qq|<td>| .
NTI($cgi->popup_menu('-name' => "accno_$i",
. qq|"> |;
} else {
+ if ($form->{draft_id}) {
+ my $remove_draft_checked = 'checked' if ($form->{remove_draft});
+ print qq|<p>\n|
+ . qq| <input name="remove_draft" id="remove_draft" type="checkbox" class="checkbox" ${remove_draft_checked}>|
+ . qq| <label for="remove_draft">| . $locale->text('Remove Draft') . qq|</label>\n|
+ . qq|</p>\n|;
+ }
+
print qq|
<input class=submit type=submit name=action id=update_button value="| . $locale->text('Update') . qq|">
- <input class=submit type=submit name=action value="| . $locale->text('Post') . qq|">|;
- print $form->parse_html_template('gl/form_footer_initial_taxkey_selection');
+ <input class=submit type=submit name=action value="| . $locale->text('Post') . qq|"> |
+ . NTI($cgi->submit('-name' => 'action', '-value' => $locale->text('Save draft'), '-class' => 'submit'))
+ . $cgi->hidden('-name' => 'draft_id', '-default' => [$form->{draft_id}])
+ . $cgi->hidden('-name' => 'draft_description', '-default' => [$form->{draft_description}]);
}
print "
post_transaction();
+ remove_draft() if $form->{remove_draft};
+
$form->{callback} = build_std_url("action=add", "show_details");
$form->redirect($form->{callback});