--- /dev/null
+-- Deploy kcls-evergreen:payflow-hosted-org-settings-urls to pg
+-- requires: payflow-hosted-org-settings
+
+BEGIN;
+
+INSERT INTO config.org_unit_setting_type
+ (name, label, description, datatype, view_perm, update_perm, grp)
+VALUES
+ (
+ 'credit.processor.payflowhosted.skip_silent_post_url',
+ 'PayflowHosted: Avoid dynamic Silent POST URL',
+ 'Let PP use the Silent Post URL configured in the PayPal Manager ' ||
+ 'instead of sending our a dynamic (Apache host-based) URL',
+ 'bool', 1005, 1006, 'credit'
+ );
+
+COMMIT;
--- /dev/null
+-- Revert kcls-evergreen:payflow-hosted-org-settings-urls from pg
+
+BEGIN;
+
+DELETE FROM actor.org_unit_setting
+ WHERE name = 'credit.processor.payflowhosted.skip_silent_post_url';
+
+DELETE FROM config.org_unit_setting_type
+ WHERE name = 'credit.processor.payflowhosted.skip_silent_post_url';
+
+COMMIT;
payflow-hosted-org-settings [vand-auth-edit-date] 2016-07-06T18:39:40Z Bill Erickson <berickxx@gmail.com> # PayflowPro Hosted Pages org unit settings
sip-act-type-freegalsip [payflow-hosted-org-settings] 2016-08-19T20:24:01Z Bill Erickson <berickxx@gmail.com> # User activity type for freegalsip login
audit-table-maint [payflow-hosted-org-settings] 2016-07-22T14:49:08Z Bill Erickson <berickxx@gmail.com> # Audit table cleanup functions
+payflow-hosted-static-silent-post-url [payflow-hosted-org-settings] 2016-08-17T13:14:48Z Bill Erickson <berickxx@gmail.com> # Fall back to PP silent post URL
--- /dev/null
+-- Verify kcls-evergreen:payflow-hosted-org-settings-urls on pg
+
+BEGIN;
+
+-- XXX Add verifications here.
+
+ROLLBACK;
$pf_params{CANCELURL} = "$host/eg/opac/biblio/main_fines";
$pf_params{RETURNURL} = "$host/eg/opac/payflow/pay_receipt/$tokenid";
$pf_params{ERRORURL} = "$host/eg/opac/biblio/main_fines/$tokenid";
- # KCLS uses evgmobile for now to avoid TLS 1.2. REVISIT.
- #$pf_params{SILENTPOSTURL} = "$host/eg/opac/payflow/silent_post";
+
+ # Avoid sending a Silent POST URL if we are relying instead
+ # on the URL configured within the PayPal manager.
+ $pf_params{SILENTPOSTURL} = "$host/eg/opac/payflow/silent_post"
+ unless $settings{skip_silent_post_url};
}
my $api_server = $live_api_server;
my %params;
my $spfx = 'credit.processor.payflowhosted';
- for my $p (qw/partner vendor login password testmode enabled autohosts/) {
+ for my $p (qw/partner vendor login password
+ testmode enabled autohosts skip_silent_post_url/) {
$params{$p} = $U->ou_ancestor_setting_value($org, "$spfx.$p");
- if (!$params{$p} && $p ne 'testmode' && $p ne 'autohosts') {
+ if (!$params{$p} && $p !~ /testmode|autohosts|skip_silent_post_url/) {
$logger->error("Attempt to make payment via 'payflowhosted' ".
"with no value for org unit setting: '$spfx.$p'");
return undef;