X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fedit%2Fpayment_gateway.html;h=b44b3151383dbb7a6ce985ef7890b50e515b0440;hp=2840df35bc52e8110d0a94b0ef46f4fecbe52a33;hb=b9f68ca7d2a521b037995d1512067ac19cf6db7b;hpb=508c7c268254ef63f26bb8a59aa679a6e24f5019 diff --git a/httemplate/edit/payment_gateway.html b/httemplate/edit/payment_gateway.html index 2840df35b..b44b31513 100644 --- a/httemplate/edit/payment_gateway.html +++ b/httemplate/edit/payment_gateway.html @@ -13,16 +13,16 @@ 'gateway_action' => 'Action', 'gateway_options' => 'Options (Name/Value pairs,
one element per line)', 'gateway_callback_url' => 'Callback URL', + 'gateway_cancel_url' => 'Cancel URL', }, ) %> <%init> @@ -38,74 +39,94 @@ die "access denied" unless $FS::CurrentUser::CurrentUser->access_right('Configuration'); -my %modules = ( - '2CheckOut' => 'Business::OnlinePayment', - 'AuthorizeNet' => 'Business::OnlinePayment', - 'BankOfAmerica' => 'Business::OnlinePayment', #deprecated? - 'Beanstream' => 'Business::OnlinePayment', - 'Capstone' => 'Business::OnlinePayment', - 'Cardstream' => 'Business::OnlinePayment', - 'CashCow' => 'Business::OnlinePayment', - 'CyberSource' => 'Business::OnlinePayment', - 'eSec' => 'Business::OnlinePayment', - 'eSelectPlus' => 'Business::OnlinePayment', - 'eWayShared' => 'Business::OnlineThirdPartyPayment', - 'ElavonVirtualMerchant' => 'Business::OnlinePayment', - 'Exact' => 'Business::OnlinePayment', - 'iAuthorizer' => 'Business::OnlinePayment', - 'Ingotz' => 'Business::OnlinePayment', - 'InternetSecure' => 'Business::OnlinePayment', - 'Interswitchng' => 'Business::OnlineThirdPartyPayment', - 'IPaymentTPG' => 'Business::OnlinePayment', - 'IPPay' => 'Business::OnlinePayment', - 'Iridium' => 'Business::OnlinePayment', - 'Jettis' => 'Business::OnlinePayment', - 'Jety' => 'Business::OnlinePayment', - 'LinkPoint' => 'Business::OnlinePayment', - 'MerchantCommerce' => 'Business::OnlinePayment', - 'Network1Financial' => 'Business::OnlinePayment', - 'OCV' => 'Business::OnlinePayment', - 'OpenECHO' => 'Business::OnlinePayment', - 'PayConnect' => 'Business::OnlinePayment', - 'PayflowPro' => 'Business::OnlinePayment', - 'Paymentech' => 'Business::BatchPayment', - 'PaymenTech' => 'Business::OnlinePayment', - 'PaymentsGateway' => 'Business::OnlinePayment', - 'PayPal' => 'Business::OnlinePayment', - #'PaySystems' => 'Business::OnlinePayment', - 'PlugnPay' => 'Business::OnlinePayment', - 'PPIPayMover' => 'Business::OnlinePayment', - 'Protx' => 'Business::OnlinePayment', #now SagePay - 'PXPost' => 'Business::OnlinePayment', - 'SagePay' => 'Business::OnlinePayment', - 'SecureHostingUPG' => 'Business::OnlinePayment', - 'Skipjack' => 'Business::OnlinePayment', - 'StGeorge' => 'Business::OnlinePayment', - 'SurePay' => 'Business::OnlinePayment', - 'TCLink' => 'Business::OnlinePayment', - 'TransactionCentral' => 'Business::OnlinePayment', - 'TransFirsteLink' => 'Business::OnlinePayment', - 'Vanco' => 'Business::OnlinePayment', - 'viaKLIX' => 'Business::OnlinePayment', - 'VirtualNet' => 'Business::OnlinePayment', - 'WesternACH' => 'Business::OnlinePayment', - 'WorldPay' => 'Business::OnlinePayment', +my $json = Cpanel::JSON::XS->new; +$json->canonical(1); +my %modules = ( + 'Business::OnlinePayment' => [ + '2CheckOut', + 'AuthorizeNet', + 'BankOfAmerica', #deprecated? + 'Beanstream', + 'Braintree', + 'Capstone', + 'CardFortress', + 'Cardstream', + 'CashCow', + 'CyberSource', + 'eSec', + 'eSelectPlus', + 'ElavonVirtualMerchant', + 'eWay', + 'Exact', + 'FirstDataGlobalGateway', + 'GlobalPayments', + 'iAuthorizer', + 'Ingotz', + 'InternetSecure', + #'IPaymentTPG', + 'IPPay', + 'Iridium', + 'Jettis', + 'Jety', + 'LinkPoint', + 'Litle', + 'MerchantCommerce', + 'Network1Financial', + 'NMI', + 'OCV', + 'Ogone', + 'OpenECHO', + 'PaperlessTrans', + 'PayConnect', + 'PayflowPro', + 'PaymenTech', + 'PaymentsGateway', + 'PayPal', + #'PaySystems', + 'PlugnPay', + 'PPIPayMover', + 'Protx', #now SagePay + 'PXPost', + 'SagePay', + 'SecureHostingUPG', + 'Skipjack', + 'StGeorge', + 'SurePay', + 'SynapseGateway', + 'TCLink', + 'TransactionCentral', + 'TransFirsteLink', + 'USAePay', + 'Vanco', + 'viaKLIX', + 'VirtualNet', + 'vSecureProcessing', + 'WesternACH', + 'WorldPay', + ], + 'Business::OnlineThirdPartyPayment' => [ + #'eWayShared', support currently broken + 'FCMB', + #'Interswitchng', #incomplete? + 'PayPal', + ], + 'Business::BatchPayment' => [ + 'BillBuddy', + 'CardFortress', + 'KeyBank', + 'Paymentech', + 'RBC', + 'TD_EFT', + ], ); -my %modules_for_namespace; -for (keys %modules) { - $modules_for_namespace{$modules{$_}} ||= []; - push @{ $modules_for_namespace{$modules{$_}} }, $_; -} - my @actions = ( 'Normal Authorization', 'Authorization Only', 'Authorization Only,Post Authorization', ); -my $fields = [ - { +my $fields = [ { field => 'gateway_namespace', type => 'select', options => [ qw( @@ -123,7 +144,9 @@ my $fields = [ { field => 'gateway_module', type => 'select', - options => [ sort { lc($a) cmp lc ($b) } keys %modules ], + # does it even make sense to list all modules here? + options => [ sort { lc($a) cmp lc($b) } + map { @$_ } values %modules ], }, 'gateway_username', 'gateway_password', @@ -138,9 +161,14 @@ my $fields = [ size => 40, }, { + field => 'gateway_cancel_url', + type => 'text', + size => 40, + }, + { field => 'gateway_options', type => 'textarea', - rows => '8', + rows => '12', cols => '40', curr_value_callback => sub { my($cgi, $object, $fref) = @_; join("\r", $object->options ); @@ -151,8 +179,11 @@ my $fields = [ my $field_callback = sub { my ($cgi, $object, $field_hashref ) = @_; if ($object->gatewaynum) { - if ( $field_hashref->{field} =~ /gateway_(module|namespace)/ ) { + if ( $field_hashref->{field} eq 'gateway_module' ) { + $field_hashref->{type} = 'fixed'; + } elsif ( $field_hashref->{field} eq 'gateway_namespace' ) { $field_hashref->{type} = 'fixed'; + $field_hashref->{formatted_value} = $object->namespace_description; } } };