}
sub form_footer {
- $main::lxdebug->enter_sub();
-
- my $form = $main::form;
- my %myconfig = %main::myconfig;
- my $locale = $main::locale;
- my $cgi = $::request->{cgi};
-
- $main::auth->assert('general_ledger');
+ $::lxdebug->enter_sub;
+ $::auth->assert('general_ledger');
- my $follow_ups_block;
- if ($form->{id}) {
- my $follow_ups = FU->follow_ups('trans_id' => $form->{id});
+ my $num_due;
+ my $num_follow_ups;
+ if ($::form->{id}) {
+ my $follow_ups = FU->follow_ups('trans_id' => $::form->{id});
- if (@{ $follow_ups} ) {
- my $num_due = sum map { $_->{due} * 1 } @{ $follow_ups };
- $follow_ups_block = qq|<p>| . $locale->text("There are #1 unfinished follow-ups of which #2 are due.", scalar @{ $follow_ups }, $num_due) . qq|</p>|;
+ if (@{ $follow_ups }) {
+ $num_due = sum map { $_->{due} * 1 } @{ $follow_ups };
+ $num_follow_ups = scalar @{ $follow_ups }
}
}
- print qq|
-
-$follow_ups_block
-
-<script type="text/javascript">
-<!--
-function set_duedate() {
- \$.ajax({
- url: 'is.pl?action=set_duedate',
- data: {
- invdate: \$('#transdate').val(),
- vendor_id: \$('[name=vendor_id]').val(),
- },
- dataType: 'text',
- success: function(data) {
- \$('#duedate').val(data);
- }
- });
- }
-//-->
-</script>
-
-<input name=callback type=hidden value="$form->{callback}">
-<input name="gldate" type="hidden" value="| . Q($form->{gldate}) . qq|">
-|
-. $cgi->hidden('-name' => 'draft_id', '-default' => [$form->{draft_id}])
-. $cgi->hidden('-name' => 'draft_description', '-default' => [$form->{draft_description}])
-. qq|
-
-<br>
-|;
-
- if (!$form->{id} && $form->{draft_id}) {
- print(NTI($cgi->checkbox('-name' => 'remove_draft', '-id' => 'remove_draft',
- '-value' => 1, '-checked' => $form->{remove_draft},
- '-label' => '')) .
- qq| <label for="remove_draft">| .
- $locale->text("Remove draft when posting") .
- qq|</label><br>|);
- }
+ my $transdate = $::form->datetonum($::form->{transdate}, \%::myconfig);
+ my $closedto = $::form->datetonum($::form->{closedto}, \%::myconfig);
- my $transdate = $form->datetonum($form->{transdate}, \%myconfig);
- my $closedto = $form->datetonum($form->{closedto}, \%myconfig);
+ my $storno = $::form->{id}
+ && !IS->has_storno(\%::myconfig, $::form, 'ap')
+ && !IS->is_storno( \%::myconfig, $::form, 'ap', $::form->{id})
+ && ($::form->{totalpaid} == 0 || $::form->{totalpaid} eq '');
- print qq|<input class="submit" type="submit" name="action" id="update_button" value="| . $locale->text('Update') . qq|">|;
+ $::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,
+ });
- if ($form->{id}) {
- if ($form->{radier}) {
- print qq| <input class=submit type=submit name=action value="| . $locale->text('Post') . qq|">
- <input class=submit type=submit name=action value="| . $locale->text('Delete') . qq|">
-|;
- }
- # ToDO: - insert a global check for stornos, so that a storno is only possible a limited time after saving it
- print qq| <input class=submit type=submit name=action value="| . $locale->text('Storno') . qq|"> |
- if ($form->{id} && !IS->has_storno(\%myconfig, $form, 'ap') && !IS->is_storno(\%myconfig, $form, 'ap', $form->{id}) && (($form->{totalpaid} == 0) || ($form->{totalpaid} eq "")));
-
- print qq| <input class=submit type=submit name=action value="| . $locale->text('Post Payment') . qq|">
- <input class=submit type=submit name=action value="| . $locale->text('Use As Template') . qq|">
- <input type="button" class="submit" onclick="follow_up_window()" value="| . $locale->text('Follow-Up') . qq|">
-|;
- } elsif (($transdate > $closedto) && !$form->{id}) {
- print qq|
- <input class=submit type=submit name=action value="| . $locale->text('Post') . qq|"> | .
- NTI($cgi->submit('-name' => 'action', '-value' => $locale->text('Save draft'), '-class' => 'submit'));
- }
- # button for saving history
- if($form->{id} ne "") {
- print qq| <input type="button" class="submit" onclick="set_history_window($form->{id});" name="history" id="history" value="| . $locale->text('history') . qq|"> |;
- }
- # /button for saving history
- # mark_as_paid button
- if($form->{id} ne "") {
- print qq| <input type="submit" class="submit" name="action" value="| . $locale->text('mark as paid') . qq|"> |;
- }
- # /mark_as_paid button
- print "
-</form>
-
-</body>
-</html>
-";
-
- $main::lxdebug->leave_sub();
+ $::lxdebug->leave_sub;
}
sub mark_as_paid {
--- /dev/null
+[%- USE T8 %]
+[%- USE HTML %]
+[%- USE L %]
+[%- USE LxERP %]
+
+[%- IF (num_follow_ups && num_due) %]
+ <p>[% 'There are #1 unfinished follow-ups of which #2 are due.' | $T8(num_follow_ups, num_due) %]</p>
+[%- END %]
+
+<input name=callback type=hidden value="[% callback | html %]">
+<input name=gldate type=hidden value="[% gldate | html %]">
+<input type=hidden name=draft_id value="[% draft_id %]">
+<input type=hidden name=draft_description value="[% draft_description | html %]">
+
+[%- IF ( !id && draft_id ) %]
+ [% L.checkbox_tag('remove_draft', checked=remove_draft, label=LxERP.t8('Remove draft when posting')) %]
+ <br>
+[%- END %]
+
+<br>
+
+<input class="submit" type="submit" name="action" id="update_button" value="[% 'Update' | $T8 %]">
+
+[%- IF id %]
+ [%- IF radier %]
+ <input class=submit type=submit name=action value="[% 'Post' | $T8 %]">
+ <input class=submit type=submit name=action value="[% 'Delete' | $T8 %]">
+ [%- END %]
+
+ [%- IF show_storno %]
+ <input class=submit type=submit name=action value="[% 'Storno' | $T8 %]">
+ [%- END %]
+
+ <input class=submit type=submit name=action value="[% 'Post Payment' | $T8 %]">
+ <input class=submit type=submit name=action value="[% 'Use As Template' | $T8 %]">
+ <input type="button" class="submit" onclick="follow_up_window()" value="[% 'Follow-Up' | $T8 %]">
+
+[%- ELSIF show_post_draft %]
+ <input class=submit type=submit name=action value="[% 'Post' | $T8 %]">
+ <input type="submit" name="action" value="[% 'Save draft' | $T8 %]" class="submit">
+[%- END %]
+
+[%- IF id %]
+ <input type="submit" onclick="set_history_window([% id %]);" name="history" id="history" value="[% 'history' | $T8 %]">
+ <input type="submit" name="action" value="[% 'mark as paid' | $T8 %]">
+[%- END %]
+
+</form>
+
+<script type="text/javascript">
+<!--
+function set_duedate() {
+ $.ajax({
+ url: 'is.pl?action=set_duedate',
+ data: {
+ invdate: $('#transdate').val(),
+ vendor_id: $('[name=vendor_id]').val(),
+ },
+ dataType: 'text',
+ success: function(data) {
+ $('#duedate').val(data);
+ }
+ });
+ }
+//-->
+</script>
+
+
+</body>
+</html>