package PayoneLink; # # SPDX-License-Identifier: AGPL-3.0-or-later # Copyright (c) Rainer Gümpelein, TeilRad GmbH # use strict; use warnings; use POSIX; use CGI ':standard'; use Mod::Buttons; use Mod::Basework; use Mod::DBtank; use Mod::Prelib; use Mod::Pricing; use Mod::Payment; use Data::Dumper; sub new { my $class = shift; my $self = {}; bless($self,$class); return $self; } #Template sub tpl(){ my $self = shift; my $tpl_id = shift; my $node_meta = shift; my $users_dms = shift || ""; my $varenv = shift; my $users_sharee = shift || ""; my $feedb = shift || ""; my $q = new CGI; my $bw = new Basework; my $dbt = new DBtank; my $but = new Buttons; my $pl = new Prelib; my $pri = new Pricing; my $pay = new Payment; $q->import_names('R'); my @keywords = $q->param; my $dbh = ""; my $bgcolor1 = "009899";#sharee $bgcolor1 = $dbt->{website}->{$varenv->{syshost}}->{bgcolor1} if($dbt->{website}->{$varenv->{syshost}}->{bgcolor1}); $bgcolor1 = $dbt->{merchant_ids}->{$varenv->{merchant_id}}->{bgcolor1} if($dbt->{merchant_ids}->{$varenv->{merchant_id}}->{bgcolor1}); my $aowner = "198"; $aowner = $dbt->{merchant_ids}->{$varenv->{merchant_id}}->{id} if($varenv->{merchant_id} && $dbt->{merchant_ids}->{$varenv->{merchant_id}}->{id}); my $coo = $q->cookie(-name=>'domcookie') || $R::sessionid; my $ctadr = { c_id => 0 }; $ctadr = $users_sharee if(ref($users_sharee) eq "HASH" && $users_sharee->{c_id}); my $payable_check=0; $payable_check = $bw->isuser_rentable($ctadr,$varenv); my $prepaidhash = {}; $prepaidhash = $pri->collect_prepaid($dbh,$ctadr) if($ctadr->{c_id}); if(!$prepaidhash->{prepaid_id} && $ctadr->{c_id}){ $feedb = $pl->prepaid_request($dbh,$ctadr,$aowner); $prepaidhash = $pri->collect_prepaid($dbh,$ctadr); } my $ret_json = ""; print $q->start_form(),"\n"; print $q->hidden(-name=>"sessionid",-override=>1,-value=>"$R::sessionid"); print "
\n"; print $q->div({-class=>'content_title3'},"$varenv->{cms}->{'iframe-prepaid-account'}->{txt}"),"\n"; if($prepaidhash->{prepaid_id}){ #print $q->hidden(-name=>"prepaid_id",-override=>1,-value=>"$prepaidhash->{prepaid_id}"); if($ctadr->{c_id} && $R::sharee_edit && $R::sharee_edit =~ /generate_payonelink/){ $ret_json = $pay->generate_payonelink($varenv,$ctadr,$prepaidhash,$R::prepaid_amount,$aowner); $prepaidhash = $pri->collect_prepaid($dbh,$ctadr); } $prepaidhash->{prepaid_total} = sprintf('%.2f',$prepaidhash->{prepaid_total}); $prepaidhash->{prepaid_total} =~ s/\./,/; $varenv->{cms}->{'iframe-prepaid-prolog'}->{txt} =~ s/\n/
/g; $varenv->{cms}->{'iframe-prepaid-prolog'}->{txt} =~ s/::prepaid_total::/$prepaidhash->{prepaid_total} €<\/b>/g; $varenv->{cms}->{'iframe-prepaid-prolog'}->{txt} =~ s/::app_name::/$dbt->{merchant_ids}->{$varenv->{merchant_id}}->{app_name}<\/b>/g; $varenv->{cms}->{'iframe-prepaid-prolog'}->{txt} =~ s/::prepaid_id::/$prepaidhash->{prepaid_id}<\/b>/g; print $q->div({-class=>'content2'}, "$varenv->{cms}->{'iframe-prepaid-prolog'}->{txt}"),"\n"; }else{ print $q->div({-class=>'content2'}, "$varenv->{cms}->{'iframe-failure-contact-hotline'}->{txt} $prepaidhash->{prepaid_id}"),"\n"; } if(!$ret_json || $ret_json =~ /failure/){ my $required="required"; print $q->div({-class=>'content2', -style=>'color:#c83434;'}, "$varenv->{cms}->{'iframe-prepaid-failure'}->{txt}"),"\n" if($ret_json =~ /failure/); if($prepaidhash->{payone_link}){ $varenv->{cms}->{'iframe-prepaid-emailinfo'}->{txt} =~ s/::mail_datetime::/$prepaidhash->{mail_datetime}/g; $varenv->{cms}->{'iframe-prepaid-emailinfo'}->{txt} =~ s/::email::/$ctadr->{txt08}/g; $varenv->{cms}->{'iframe-prepaid-emailinfo'}->{txt} =~ s/::payone_link::/Test $prepaidhash->{payone_link}<\/a><\/b>/g if($users_sharee->{c_id} eq $dbt->{copri_conf}->{superu_id}); $varenv->{cms}->{'iframe-prepaid-emailinfo'}->{txt} =~ s/::app_name::/$dbt->{merchant_ids}->{$varenv->{merchant_id}}->{app_name}<\/b>/g; print $q->div({-class=>'content2'}, "$varenv->{cms}->{'iframe-prepaid-emailinfo'}->{txt}"),"\n"; }else{ my $label_des="$varenv->{cms}->{'iframe-prepaid-input'}->{txt}"; print $q->label({-for=>"prepaid_amount", -style=>'padding-top:1.5em;'},"$label_des"),"\n"; print "\n"; print $q->div({-style=>'margin-top:1em;text-align:center;'},""),"\n"; } }elsif($ret_json){ #payone-link mailing will be done by $pay->generate_payonelink $varenv->{cms}->{'iframe-prepaid-emailinfo'}->{txt} =~ s/::mail_datetime::/$prepaidhash->{mail_datetime}/g; $varenv->{cms}->{'iframe-prepaid-emailinfo'}->{txt} =~ s/::email::/$ctadr->{txt08}/g; $varenv->{cms}->{'iframe-prepaid-emailinfo'}->{txt} =~ s/::payone_link::/Test $prepaidhash->{payone_link}<\/a><\/b>/g if($ctadr->{c_id} eq $dbt->{copri_conf}->{superu_id}); $varenv->{cms}->{'iframe-prepaid-emailinfo'}->{txt} =~ s/::app_name::/$dbt->{merchant_ids}->{$varenv->{merchant_id}}->{app_name}<\/b>/g; print $q->div({-class=>'content2', -style=>'color:#009899;'}, "$varenv->{cms}->{'iframe-prepaid-emailinfo'}->{txt}"),"\n"; print $q->div({-class=>'content2'}, ""),"\n"; #print Dumper($ret_json) . "
\n"; } print "
\n"; print $q->end_form,"\n"; } 1;