<TABLE class="fsinnerbox">
<& /elements/tr-select-payment_options.html,
- 'custnum' => $cust_main->custnum,
- 'amount' => $balance,
+ 'cust_main' => $cust_main,
'process-pkgpart' =>
scalar($conf->config('manual_process-pkgpart', $cust_main->agentnum)),
'process-display' => scalar($conf->config('manual_process-display')),
? scalar($conf->config('credit-card-surcharge-flatfee', $cust_main->agentnum))
: 0
),
+ 'processing_fee' => scalar($conf->config('processing-fee', $cust_main->agentnum)),
&>
% if ( $conf->exists('part_pkg-term_discounts') ) {
$('#cust_payby').slideUp();
}
}
+
+ function enableAmountField() {
+ document.getElementById('amount').disabled = false;
+ }
+
</SCRIPT>
% #can't quite handle CARD/CHEK on the same page yet, but very close
</DIV>
<BR>
-<INPUT TYPE="submit" NAME="process" VALUE="<% mt('Process payment') |h %>">
+<INPUT TYPE="submit" NAME="process" ID="process" VALUE="<% mt('Process payment') |h %>" disabled="disabled" onclick="enableAmountField()">
</FORM>
+<SCRIPT TYPE="text/javascript">
+
+$(document).ready(function (){
+ validate();
+ $('<% $validate_select_fields %>').change(validate);
+ $('<% $validate_input_fields %>').keyup(validate);
+});
+
+function validate(){
+ if (
+ $('#amount').val() > 0 && (
+ ( $('#custpaybynum').val() > 0 ) ||
+% if ($payby eq "CHEK") {
+ ( $('input[name=payinfo1]').val().length > 0 &&
+ $('input[name=payinfo2]').val().length > 0 &&
+ $('input[name=payname]').val().length > 0 &&
+ $('select[name=paytype]').val().length > 0
+ )
+% }
+% elsif ($payby eq "CARD") {
+ ( $('input[name=payinfo]').val().length > 0 &&
+ $('input[name=paycvv]').val().length > 0 &&
+ $('input[name=payname]').val().length > 0 &&
+ $('#city').val().length > 0 &&
+ $('#city').val().length > 0 &&
+ $('#state').val().length > 0 &&
+ $('#country').val().length > 0
+ )
+% }
+ )
+ ) {
+ $("#process").prop("disabled", false);
+ }
+ else {
+ $("#process").prop("disabled", true);
+ }
+}
+
+</SCRIPT>
+
<& /elements/footer-cust_main.html &>
<%once>
or die "unknown payby ". $cgi->param('payby');
my $payby = $1;
+my $validate_select_fields = "#payment_option, #invoice, #custpaybynum, ";
+my $validate_input_fields = "#amount, input[name=payname], ";
+if ($payby eq "CHEK") {
+ $validate_input_fields .= "input[name=payinfo1], input[name=payinfo2]";
+ $validate_select_fields .= "select[name=paytype] ";
+}
+elsif ($payby eq "CARD") {
+ $validate_input_fields .= "input[name=payinfo], input[name=paycvv], input[name=address1], #city, #zip";
+ $validate_select_fields .= "#state, #country ";
+}
+
$cgi->param('custnum') =~ /^(\d+)$/
or die "illegal custnum ". $cgi->param('custnum');
my $custnum = $1;