diff --git a/copri4/main/src/Mod/APIfunc.pm b/copri4/main/src/Mod/APIfunc.pm
index 60ff064..fcd8fe8 100755
--- a/copri4/main/src/Mod/APIfunc.pm
+++ b/copri4/main/src/Mod/APIfunc.pm
@@ -3099,6 +3099,7 @@ sub authorization(){
my $q = shift;
my $merchant_id = shift || $q->param('merchant_id') || "";
my $hw_id = shift || $q->param('hw_id') || "";
+ my $lang = shift || "";
my $aowner = shift || 0;
$dbh = "";
my %varenv = $cf->envonline();
@@ -3140,7 +3141,7 @@ sub authorization(){
$dbh = $dbt->dbconnect_extern($dbt->{primary}->{sharee_primary}->{database}->{dbname}) if($varenv{dbname} ne $dbt->{primary}->{sharee_primary}->{database}->{dbname});
$record = $dbt->fetch_record($dbh,$authref);
}
- $return = $self->authcookie_manager($dbh,$q,$record,$merchant_id,$hw_id,$aowner);
+ $return = $self->authcookie_manager($dbh,$q,$record,$merchant_id,$hw_id,$lang,$aowner);
}else{
$bw->log("authorization fails because of failing condition: if($user_id && length($user_id) >= 4 && length($user_pw) >= $pw_length && length($hw_id) >= 10 && length($merchant_id) >= 8)","","");
@@ -3153,9 +3154,10 @@ sub authcookie_manager {
my $self = shift;
$dbh = shift;
my $q = shift;
- my $record = shift;
- my $merchant_id = shift;
- my $hw_id = shift;
+ my $record = shift || {};
+ my $merchant_id = shift || "";
+ my $hw_id = shift || "";
+ my $lang = shift || "";
my $aowner = shift || 0;
my $user_agent = $q->user_agent();
@@ -3176,6 +3178,7 @@ sub authcookie_manager {
#owner => "198",#update initiated by primary
};
+ $update->{txt11} = $q->escapeHTML($lang) if($lang);
$update->{txt21} = $q->escapeHTML($q->param('user_device')) if($q->param('user_device'));
$update->{txt25} = $q->escapeHTML($clientIP) if($clientIP);
$update->{txt26} = $q->escapeHTML($user_agent) if($user_agent);
diff --git a/copri4/main/src/Mod/APIjsonserver.pm b/copri4/main/src/Mod/APIjsonserver.pm
index 2041112..6616c59 100755
--- a/copri4/main/src/Mod/APIjsonserver.pm
+++ b/copri4/main/src/Mod/APIjsonserver.pm
@@ -198,7 +198,7 @@ elsif($q->param('request') eq "authorization"){
$varenv{merchant_id} = $return_merchant->{merchant_id};
$response = { %$response, %$return_merchant };
- my ($auth,$authraw) = $apif->authorization($q,"","",$aowner);
+ my ($auth,$authraw) = $apif->authorization($q,"","",$lang,$aowner);
if(ref($auth) eq "HASH" && $auth->{authcookie}){
$response = { %$response, %$auth };
$response->{response_text} = "Herzlich willkommen im Fahrradmietsystem";
diff --git a/copri4/main/src/Mod/APIpayone.pm b/copri4/main/src/Mod/APIpayone.pm
index ff46aa0..ea4dd9b 100755
--- a/copri4/main/src/Mod/APIpayone.pm
+++ b/copri4/main/src/Mod/APIpayone.pm
@@ -120,7 +120,7 @@ sub handler {
}
#do updates on invoice by payone transaction data on matching TXID
- if($txid && looks_like_number($receivable) && looks_like_number($update_ctt->{int16})){
+ if($txid && looks_like_number($update_ctt->{int19}) && looks_like_number($update_ctt->{int16})){
my $ctt = { c_id => 0 };
my $ctadr = { c_id => 0 };
my $fetch_ctt = {
@@ -141,7 +141,7 @@ sub handler {
if($ctt->{c_id} > 0){
- #balance > 0 then payment fails
+ #balance > 0 then preauthorization or payment fails
if($update_ctt->{int16} && $update_ctt->{int16} > 0){
$update_adr->{int12} = $vde_on_fail;
$update_ctt->{int14} = 1;
@@ -153,6 +153,13 @@ sub handler {
$update_ctt->{txt28} = "$now_dt $txaction\n" . $ctt->{txt28};
}
+ #Testing, if capture price ne receivable, then capture fails
+ if($txaction eq "capture" && $update_ctt->{int16} == 0 && $ctt->{int01} != $update_ctt->{int19}){
+ $update_adr->{int12} = $vde_on_fail;
+ $update_ctt->{int14} = 1;
+ $update_ctt->{txt28} = "capture failed\n" . $ctt->{txt28};
+ }
+
$dbt->update_record($dbh,$update_ctt,$ctt);
print FILE Dumper($update_ctt) . "\n";
diff --git a/copri4/main/src/Mod/APIxmlserver.pm b/copri4/main/src/Mod/APIxmlserver.pm
deleted file mode 100755
index 09422ca..0000000
--- a/copri4/main/src/Mod/APIxmlserver.pm
+++ /dev/null
@@ -1,271 +0,0 @@
-package Mod::APIxmlserver;
-#
-# SPDX-License-Identifier: AGPL-3.0-or-later
-# Copyright (c) Rainer Gümpelein, TeilRad GmbH
-#
-#Server for sharee xml api
-#
-##In DB context $q->escapeHTML must always done by API
-#
-#use lib qw(/var/www/copri-bike/shareeapp-lv/src);
-use warnings;
-use strict;
-use Exporter;
-our @ISA = qw (Exporter);
-
-use POSIX;
-use CGI;
-use Apache2::Const -compile => qw(OK );
-use Scalar::Util qw(looks_like_number);
-use LWP::UserAgent;
-use XML::Simple qw(:strict);
-
-use Lib::Config;
-use Mod::DBtank;
-use Mod::Basework;
-use Mod::Shareework;
-use Mod::APIfunc;
-use Digest::MD5 qw(md5 md5_hex);
-use Data::Dumper;
-use Sys::Hostname;
-my $hostname = hostname;
-
-sub handler {
- my ($r) = @_;
- my $q = new CGI;
- my $netloc = $q->url(-base=>1);
- #$q->import_names('R');
- my $cf = new Config;
- my $dbt = new DBtank;
- my $bw = new Basework;
- my $tk = new Shareework;
- my $apif = new APIfunc;
-
- my %varenv = $cf->envonline();
- my $oprefix = $dbt->{operator}->{$varenv{dbname}}->{oprefix};
- my $now_dt = strftime "%Y-%m-%d %H:%M:%S", localtime;
- my $lang="de";
- my $owner=199;#LastenVelo api (LV api)
- my @keywords = $q->param;
- my $debug=1;
- my $user_agent = $q->user_agent();
- my $dbh = "";
-
- if(1==1){
- foreach(@keywords){
- if(length($_) > 20 || length($q->param($_)) > 400){
- print "Failure 19900: amount of characters in $_ exceeds";
- return Apache2::Const::OK;
- exit 0;
- }
- }
- }
-
-
- $bw->log("APIxmlserver request:\n--> user-agent '$user_agent'",$q,"");
-
- print $q->header(-type => "application/xml", -charset => "utf-8", -'Access-Control-Allow-Origin' => "*");
-
- open(FILE,">>$varenv{logdir}/APIxmlserver.log") if($debug);
- print FILE "\n*** $now_dt user-agent: '$user_agent' to syshost: $varenv{syshost}\n" if($debug);
- print FILE "<=== q dump\n " . Dumper($q) . "\n" if($debug);
- print FILE "<=== DUMP postdata:\n " . Dumper($q->param('POSTDATA')) . "\n" if($debug);
-
- #print "Content-type: text/xml\n\n";
- if($q->param('POSTDATA')){
- my $xmlref = {};
- $xmlref = XMLin($q->param('POSTDATA'), ForceArray => ['sharee_LastenVelo'], KeyAttr => [ ] );
-
- $xmlref->{userID} =~ s/\s//g if($xmlref->{userID});
- $xmlref->{emailID} =~ s/\s//g if($xmlref->{emailID});
- if(ref($xmlref) eq "HASH" && $xmlref->{todo} && $xmlref->{emailID} && looks_like_number($xmlref->{userID}) && $xmlref->{userID} =~ /^\d+$/){
-
- #
- #
- # add_LVuser
- # 12345678
- # ragu@gu-syems.de
- # geheim123
- #
-
- #für update:
- #update_LVuser
- #12345678delete_LVuser
- #12345678 "contentadr",
- fetch => "one",
- template_id => "202",
- int01 => "$xmlref->{userID}",
- };
- my $record = { c_id => "" };
- $record = $dbt->fetch_record($dbh,$pref);
-
- #select if email still exist
- my $pref_e = {
- table => "contentadr",
- fetch => "one",
- template_id => "202",
- txt08 => "ilike::" . $q->escapeHTML($xmlref->{emailID}),
- };
- my $record_e = { c_id => "" };
- $record_e = $dbt->fetch_record($dbh,$pref_e);
-
- my $c_id = "";
- $bw->log("$xmlref->{todo}",$xmlref,"");
- print FILE "xmlref\n " . Dumper($xmlref) . "\n" if($debug);
-
- if($xmlref->{userID} && $xmlref->{emailID} && $xmlref->{pwID}){
- if($xmlref->{todo} =~ /add_LVuser|update_LVuser/ && !$record->{c_id} && !$record_e->{c_id}){
-
- my $teltime = time;
- my $pwmd5 = md5_hex($q->escapeHTML($xmlref->{pwID}));
- #$c_id = $tk->create_account($owner);
- my $insert = {
- table => "contentadr",
- main_id => "200011",
- template_id => "202",
- mtime => 'now()',
- atime => 'now()',
- owner => "$owner",
- int01 => $q->escapeHTML($xmlref->{userID}),
- txt08 => $q->escapeHTML($xmlref->{emailID}),
- txt11 => "$pwmd5",
- txt17 => "sharee_lv",
- txt19 => "sharee_lv",
- int03 => "1",
- txt22 => "DE11111111111111111111",
- txt23 => "FRSPDE11111",
- int04 => "1",
- int13 => "1",
- int05 => "1",
- int14 => "1",
- int16 => "null",
- txt01 => "no name",
- txt03 => "fake str. 1",
- txt06 => "79999 freiburg",
- txt07 => "$teltime",
- ct_name => "LV-12345678",
- txt30 => "LV5511",#Prim hidden Tarif
- };
- $c_id = $dbt->insert_contentoid($dbh,$insert);
- $dbt->update_operatorsloop($varenv{dbname},$c_id,"update");
-
- #set lv tarif
- my $update = {
- table => "contentadr",
- txt15 => "LV2sharee",#Fcode
- txt30 => "5511",#Tarif
- };
- my $dbh_operator = $dbt->dbconnect_extern("sharee_lv");
- my $record->{c_id} = $c_id;
- my $rows = $dbt->update_record($dbh_operator,$update,$record);
-
- }elsif($xmlref->{todo} eq "update_LVuser" && $record_e->{c_id}){
-
- #keep all and add only LV userID if user email still exist
- my $update = {
- table => "contentadr",
- mtime => 'now()',
- owner => "$owner",
- int01 => $q->escapeHTML($xmlref->{userID}),
- };
- my $rows = $dbt->update_record($dbh,$update,$record_e);
- $dbt->update_operatorsloop($varenv{dbname},$record_e->{c_id},"update");
-
- #set lv tarif
- my $dbh_operator = $dbt->dbconnect_extern("sharee_lv");
- $update->{txt15} = "LV2sharee";
- $update->{txt30} = "5511";
- my $rows = $dbt->update_record($dbh_operator,$update,$record_e);
-
- }elsif($xmlref->{todo} eq "update_LVuser" && $record->{c_id}){
-
- my $pwmd5 = md5_hex($xmlref->{pwID});
- my $update = {
- table => "contentadr",
- mtime => 'now()',
- owner => "$owner",
- int01 => "$xmlref->{userID}",
- txt08 => "$xmlref->{emailID}",
- txt11 => "$pwmd5",
- int04 => "1",
- int13 => "1",
- int14 => "1",
- };
- my $rows = $dbt->update_record($dbh,$update,$record);
- $dbt->update_operatorsloop($varenv{dbname},$record->{c_id},"update");
-
- #set lv tarif
- my $dbh_operator = $dbt->dbconnect_extern("sharee_lv");
- $update->{txt15} = "LV2sharee";
- $update->{txt30} = "5511";
- my $rows = $dbt->update_record($dbh_operator,$update,$record);
-
- }elsif($xmlref->{todo} eq "delete_LVuser"){
- #xml deleting deletes only on operator
- $dbt->delete_content($dbh,"contentadr",$record->{c_id});
- }
-
- foreach my $item (keys(%$xmlref)){
- print "<$item>$xmlref->{$item}$item>\n";
- }
- }
-
- }elsif(ref($xmlref) eq "HASH" && $xmlref->{todo} && $xmlref->{todo} eq "available" && $xmlref->{bikeID} =~ /\d+/){
-
- #
- #
- #available
- #17
- #
-
- my $bike_id = $1 if($xmlref->{bikeID} =~ /(\d+)/);
- my $pref_cc = {
- table => "content",
- fetch => "one",
- template_id => "205",
- barcode => $bike_id,
- int10 => "!=::1",#if not available
- };
-
- my $record_cc = $dbt->fetch_record($dbh,$pref_cc);
-
- my $update_cc = {
- table => "content",
- int10 => "1",
- mtime => "now()",
- owner => "$owner",
- };
-
- $bw->log("APIxmlserver update to available",$update_cc,"");
- print FILE "update_cc\n " . Dumper($update_cc) . "\n" if($debug);
- $dbt->update_record($dbh,$update_cc,$record_cc) if($record_cc->{c_id});
-
- }elsif(ref($xmlref) eq "HASH" && $xmlref->{todo} && $xmlref->{todo} eq "requested" && $xmlref->{bikeID} =~ /\d+/){
-
- #
- #
- #requested
- #17
- #123456
- #mail@here.de
- #
-
- }#end if(ref($xmlref)
- else{
- print "Hossa, kein valides xml";
- }
- }#end if($q->param('POSTDATA'))
- else{
- print "NO DATA";
- }
-
- close(FILE) if($debug);
- return Apache2::Const::OK;
-}
-1;
diff --git a/copri4/main/src/Mod/DBtank.pm b/copri4/main/src/Mod/DBtank.pm
index 7419acd..21da49c 100755
--- a/copri4/main/src/Mod/DBtank.pm
+++ b/copri4/main/src/Mod/DBtank.pm
@@ -1595,7 +1595,7 @@ sub insert_contenttrans(){
my $owner = shift || 0;
$owner="199" if(!$owner);
- my $sth = $dbh->prepare("INSERT INTO contenttrans (ct_name,txt00,int10,txt02,txt01,txt03,txt06,txt07,txt08,owner,itime) VALUES('$invoice_nr','Rechnung','$ctadr->{c_id}','$ctadr->{txt02}','$ctadr->{txt01}','$ctadr->{txt03}','$ctadr->{txt06}','$ctadr->{txt07}','$ctadr->{txt08}','$owner','now()') RETURNING c_id");
+ my $sth = $dbh->prepare("INSERT INTO contenttrans (ct_name,txt00,int10,txt02,txt01,txt03,txt06,txt07,txt08,txt10,txt11,owner,itime) VALUES('$invoice_nr','Rechnung','$ctadr->{c_id}','$ctadr->{txt02}','$ctadr->{txt01}','$ctadr->{txt03}','$ctadr->{txt06}','$ctadr->{txt07}','$ctadr->{txt08}','$ctadr->{txt10}','$ctadr->{txt11}','$owner','now()') RETURNING c_id");
my $rows = $sth->execute();
my $last_id;
diff --git a/copri4/main/src/Mod/Indexsharee.pm b/copri4/main/src/Mod/Indexsharee.pm
index c9faa4b..5b613b8 100755
--- a/copri4/main/src/Mod/Indexsharee.pm
+++ b/copri4/main/src/Mod/Indexsharee.pm
@@ -66,8 +66,7 @@ sub handler {
my $lang = "en";
$lang = $1 if($q->http('Accept-Language') =~ /^(\w+)/);
- #$lang = lc($R::lang) if($R::lang);
- #print $lang;
+ $lang = lc($lang) if($lang);
my $feedb = {
c_id => "",
@@ -140,7 +139,7 @@ sub handler {
my $hw_id = unpack ('H*', pack('Nc', time, $$ % 0xff));#old $co
#3. authorize
- my $author = $apif->authorization($q,$varenv{merchant_id},$hw_id,$aowner);#$co like browser hw_id
+ my $author = $apif->authorization($q,$varenv{merchant_id},$hw_id,$lang,$aowner);#$co like browser hw_id
#4. verify and get user values
($api_return,$users_sharee) = $apif->auth_verify($q,$author->{authcookie},"");
@@ -199,7 +198,7 @@ sub handler {
#Like login_sharee, redundant
my $hw_id = unpack ('H*', pack('Nc', time, $$ % 0xff));#old $co
#3. authorize
- my $author = $apif->authorization($q,$varenv{merchant_id},$hw_id,$aowner);#$co like browser hw_id
+ my $author = $apif->authorization($q,$varenv{merchant_id},$hw_id,$lang,$aowner);#$co like browser hw_id
#print "3. authorize: " . $author->{authcookie} . " -- " . $q->param('authcookie') . " ++ " . $coo . "
";
#4. verify and get user values
@@ -264,15 +263,13 @@ sub handler {
print redirect("$varenv{wwwhost}/$varenv{mandant}/Account/$varenv{accounting_1}$session");
exit 0;
}elsif($users_sharee->{c_id} && !$payable_check){
- #print redirect("$varenv{wwwhost}/$varenv{mandant}/$varenv{profile}");
- #print redirect("$varenv{wwwhost}/$varenv{mandant}/$varenv{start}");
print redirect("$varenv{wwwhost}/$varenv{mandant}/Account/$varenv{accounting_2}$session");
exit 0;
}elsif(!$users_sharee->{c_id} || ($users_sharee->{c_id} && $users_sharee->{c_id} !~ /^\d+$/)){
print redirect("$varenv{wwwhost}/$varenv{mandant}/Anmelden?failure=1$session_and");
exit 0;
}else{
- print redirect("$varenv{wwwhost}/$varenv{mandant}/$varenv{profile}$session");
+ print redirect("$varenv{wwwhost}/$varenv{mandant}/Account/$varenv{accounting_3}$session");
exit 0;
}
}
@@ -582,7 +579,7 @@ sub handler {
$dbt->update_operatorsloop($varenv{dbname},$users_sharee->{c_id},"update");
- print redirect("$varenv{wwwhost}/$varenv{mandant}/$varenv{profile}?$returnwww$session_and");
+ print redirect("$varenv{wwwhost}/$varenv{mandant}/Account/$varenv{accounting_3}?$returnwww$session_and");
exit 0;
}else{
$update_adr->{txt28} = $now_dt . " else pseudocardpan\n" . $q->escapeHTML($payone_return);
diff --git a/copri4/main/src/Mod/MailTransport.pm b/copri4/main/src/Mod/MailTransport.pm
index 9bc6af7..866411a 100755
--- a/copri4/main/src/Mod/MailTransport.pm
+++ b/copri4/main/src/Mod/MailTransport.pm
@@ -63,7 +63,7 @@ sub mail_transport(){
my $ret = 1;
my $now_dt = strftime "%Y-%m-%d %H:%M:%S", localtime;
- open(EMA, ">> $dbt->{copri_conf}->{logdir}/mailTransport.log");
+ open(EMA, ">> $dbt->{copri_conf}->{logdir}/MailTransport.log");
my $mail_from = $sendref->{mail_from} || $mailxconf->{$sendref->{mailxcfg}}->{mail_from};
my $mail_to = $sendref->{mail_to} || $mailxconf->{$sendref->{mailxcfg}}->{mail_to};
@@ -109,7 +109,7 @@ sub mail_transport(){
$smtp->datasend("To: $mail_to\n");
$smtp->datasend("Bcc: $mail_bcc\n") if($mail_bcc);
$smtp->datasend("Subject: $subject\n");
- #$smtp->datasend("\n") if(!$attachBinaryFile);
+ $smtp->datasend("\t\n") if(!$attachBinaryFile);
$smtp->datasend("MIME-Version: 1.0\n");
$smtp->datasend("Content-type: multipart/mixed;\n\tboundary=\"$boundary\"\n");
$smtp->datasend("\n");
diff --git a/copri4/main/src/Mod/Prelogic.pm b/copri4/main/src/Mod/Prelogic.pm
index 779a4bf..523e913 100755
--- a/copri4/main/src/Mod/Prelogic.pm
+++ b/copri4/main/src/Mod/Prelogic.pm
@@ -196,8 +196,25 @@ sub preinit(){
#Add Parts from content to contenttranspos#################
my $pos_id = 0;
- my $ctt = $db->get_content1("contenttrans",$R::c_id4trans);
- my $ctadr = $db->get_content1("contentadr",$ctt->{int10});
+ my $ctt = { c_id => 0 };
+ if(looks_like_number($R::c_id4trans)){
+ my $pref_ctt = {
+ table => "contenttrans",
+ fetch => "one",
+ c_id => $R::c_id4trans,
+ };
+ $ctt = $dbt->fetch_tablerecord($dbh,$pref_ctt);
+ }
+ my $ctadr = { c_id => 0 };
+ if(looks_like_number($ctt->{int10})){
+ my $pref_adr = {
+ table => "contentadr",
+ fetch => "one",
+ c_id => $ctt->{int10},
+ };
+ $ctadr = $dbt->fetch_tablerecord($dbh,$pref_adr);
+ }
+
$pos_id = $dbt->insert_pos($dbh,$ctt->{c_id},$ct,"",$ctadr,"","","","0",$users_dms->{u_id},"");
$i_rows += 1 if($pos_id > 0);
@@ -337,9 +354,7 @@ sub preinit(){
$valxx =~ s/^\s+//; $valxx =~ s/\s+$//;
$valxx .= ".00" if($valxx =~ /^\d+$/ && $_ =~ /int\d+/);
#print "|$_:$ct_exist2->{$_} -- $valxx|
";
- if($_ =~ /sort4pos_\d+/ && $valxx =~ /^\d+$/){
- $db->updater("contenttverpos","c_id",$1,"sort","$valxx") if($_ =~ /sort4pos_(\d+)/);
- }elsif(("$ct_exist2->{$_}" ne "$valxx") || $R::ckid_main || $_ =~ /txt10|txt11/ || $R::edit_main){
+ if("$ct_exist2->{$_}" ne "$valxx"){
if($_ eq "ct_name" && $valxx && $table){
$u_rows +=$db->updater("$table","c_id",$c_id,"$_","$valxx");
}
@@ -615,8 +630,16 @@ sub preinit(){
my $print_return = "";
my $exit_code = 1;
- my $table = "contenttrans";
- my $ctt = $db->get_content1($table,$c_id4print);
+
+ my $ctt = { c_id => 0 };
+ my $pref_ctt = {
+ table => "contenttrans",
+ fetch => "one",
+ c_id => $R::c_id4trans,
+ };
+ $ctt = $dbt->fetch_tablerecord($dbh,$pref_ctt);
+ my $lang_ctt = $ctt->{txt11} || "de";#2023-08-10
+
my $praefix = "$ctt->{txt00}-$varenv{praefix}";#like Rechnung-sharee_operator
@@ -647,7 +670,7 @@ sub preinit(){
if(-f "$varenv{basedir}/pdfinvoice/$praefix-$ctt->{ct_name}.pdf" && (($R::set_state eq "buchen" && $R::send_invoice && $ctt->{int01} && $ctt->{int01} != 0) || ($ib_key eq "send_invoice_again"))){
my $cms_message_key = "email-invoice";
- $varenv{cms} = $dbt->fetch_cms($dbh,{ lang => "de" });
+ $varenv{cms} = $dbt->fetch_cms($dbh,{ lang => $lang_ctt });
if(!$varenv{cms}->{$cms_message_key}->{txt}){
return "failure::Achtung, CMS-Text '$cms_message_key' ist nicht vorhanden. Es wurde keine eMail versandt!";
}
@@ -658,7 +681,7 @@ sub preinit(){
if($ib_key eq "send_invoice_cms" && $R::cms_message_key){
- $varenv{cms} = $dbt->fetch_cms($dbh,{ lang => "de" });
+ $varenv{cms} = $dbt->fetch_cms($dbh,{ lang => $lang_ctt });
if(!$varenv{cms}->{$R::cms_message_key}->{txt}){
return "failure::Achtung, CMS-Text '$R::cms_message_key' ist nicht vorhanden. Es wurde keine eMail versandt!";
}
diff --git a/copri4/main/src/Mod/SMSTransport.pm b/copri4/main/src/Mod/SMSTransport.pm
index 5a831af..d68d78b 100755
--- a/copri4/main/src/Mod/SMSTransport.pm
+++ b/copri4/main/src/Mod/SMSTransport.pm
@@ -50,9 +50,10 @@ my $owner = 181;
sub sms_ack_digest {
my $self = shift;
my $ctadr = shift;
+ my $lang = $ctadr->{txt11} || $ctadr->{txt10};
my %varenv = ();
- $varenv{cms} = $dbt->fetch_cms($dbh,{ lang => $ctadr->{txt10} });
+ $varenv{cms} = $dbt->fetch_cms($dbh,{ lang => $lang });
#Ack digest
my $ack_digest = $q->unescapeHTML($ctadr->{txt34}) || "";
@@ -140,8 +141,9 @@ sub sms_message {
};
$ctadr = $dbt->fetch_tablerecord($dbh_primary,$pref_adr);
$sms_to = $ctadr->{txt07};
+ my $lang = $ctadr->{txt11} || $ctadr->{txt10};
- $varenv{cms} = $dbt->fetch_cms($dbh_primary,{ lang => $ctadr->{txt10} });
+ $varenv{cms} = $dbt->fetch_cms($dbh_primary,{ lang => $lang });
}
my $sms_from = "$varenv{cms}->{'sms-from-info'}->{txt}";
diff --git a/copri4/main/src/scripts/mailTransportcms.pl b/copri4/main/src/scripts/mailTransportcms.pl
index a7d4e33..d6de3f8 100755
--- a/copri4/main/src/scripts/mailTransportcms.pl
+++ b/copri4/main/src/scripts/mailTransportcms.pl
@@ -47,7 +47,7 @@ my $cmstext_select = $ARGV[5] || "";
my $with_pdf = $ARGV[6] || "";
open(EMA, ">> $dbt->{copri_conf}->{logdir}/mailTransportcms.log");
-print EMA "\n$now_dt, start mailTransportcms.pl syshost: $syshost, todo:$todo, adr_id:$adr_id, ct_id:$ct_id, temppw:$temppw\n";
+print EMA "\n$now_dt, start mailTransportcms.pl syshost: $syshost, todo:$todo, adr_id:$adr_id, ct_id:$ct_id, temppw:$temppw, cmstext_select:$cmstext_select, with_pdf:$with_pdf\n";
#mailxcfg is shareeconf/mailx.cfg selection!
@@ -153,10 +153,11 @@ sub send_invoice {
my $ct_id = shift || "";
my $cms_message_key = shift || "email-invoice";
my $with_pdf = shift || "";
+ my $lang = $ctadr->{txt11} || $ctadr->{txt10};
my $dbh = $dbt->dbconnect_extern($dbt->{operator}->{$varenv{dbname}}->{database}->{dbname},"iso-8859-1");
my $project = $dbt->{operator}->{$varenv{dbname}}->{project} || "";
- $varenv{cms} = $dbt->fetch_cms($dbh,{ lang => $ctadr->{txt10} });
+ $varenv{cms} = $dbt->fetch_cms($dbh,{ lang => $lang });
if(!$varenv{cms}->{$cms_message_key}->{txt}){
exit 1;
@@ -197,6 +198,7 @@ sub send_emailack {
my $todo = shift;
my $sendref = shift;
my $ctadr = shift;
+ my $lang = $ctadr->{txt11} || $ctadr->{txt10};
my $dbh_primary = $dbt->dbconnect_extern($dbt->{primary}->{sharee_primary}->{database}->{dbname},"iso-8859-1");
my $pref_ctu = {
@@ -207,7 +209,7 @@ sub send_emailack {
my $uadr = { c_id => 0 };
$uadr = $dbt->fetch_tablerecord($dbh_primary,$pref_ctu);
- $varenv{cms} = $dbt->fetch_cms($dbh_primary,{ lang => $ctadr->{txt10} });
+ $varenv{cms} = $dbt->fetch_cms($dbh_primary,{ lang => $lang });
my $cms_message_key = "email-emailack";
#Ack digest
@@ -228,6 +230,7 @@ sub send_password {
my $sendref = shift;
my $ctadr = shift;
my $temppw = shift;
+ my $lang = $ctadr->{txt11} || $ctadr->{txt10};
my $dbh_primary = $dbt->dbconnect_extern($dbt->{primary}->{sharee_primary}->{database}->{dbname},"iso-8859-1");
my $pref_ctu = {
@@ -238,7 +241,7 @@ sub send_password {
my $uadr = { c_id => 0 };
$uadr = $dbt->fetch_tablerecord($dbh_primary,$pref_ctu);
- $varenv{cms} = $dbt->fetch_cms($dbh_primary,{ lang => $ctadr->{txt10} });
+ $varenv{cms} = $dbt->fetch_cms($dbh_primary,{ lang => $lang });
my $cms_message_key = "email-temppassword";
#temp pw
@@ -258,6 +261,7 @@ sub send_cpupdate_message {
my $todo = shift;
my $sendref = shift;
my $ctadr = shift || {};
+ my $lang = $ctadr->{txt11} || $ctadr->{txt10};
my $dbh_primary = $dbt->dbconnect_extern($dbt->{primary}->{sharee_primary}->{database}->{dbname},"iso-8859-1");
@@ -269,7 +273,7 @@ sub send_cpupdate_message {
my $uadr = { c_id => 0 };
$uadr = $dbt->fetch_tablerecord($dbh_primary,$pref_ctu);
- $varenv{cms} = $dbt->fetch_cms($dbh_primary,{ lang => $ctadr->{txt10} });
+ $varenv{cms} = $dbt->fetch_cms($dbh_primary,{ lang => $lang });
my $cms_message_key = "email-cpupdate-message";
$cms_message_key = "email-proactive-cpupdate-message" if($todo eq "send_proactive_cpupdate_message");
$sendref = prepare_content($sendref,$ctadr,$uadr,"",$varenv{cms}->{$cms_message_key}->{txt});