From 7bc18639abbb157632048268fb36808ee3bdbc07 Mon Sep 17 00:00:00 2001 From: ragu Date: Wed, 9 Aug 2023 20:45:44 +0200 Subject: [PATCH] saving user language for cms text select --- copri4/main/src/Mod/APIfunc.pm | 11 +- copri4/main/src/Mod/APIjsonserver.pm | 2 +- copri4/main/src/Mod/APIpayone.pm | 11 +- copri4/main/src/Mod/APIxmlserver.pm | 271 -------------------- copri4/main/src/Mod/DBtank.pm | 2 +- copri4/main/src/Mod/Indexsharee.pm | 13 +- copri4/main/src/Mod/MailTransport.pm | 4 +- copri4/main/src/Mod/Prelogic.pm | 41 ++- copri4/main/src/Mod/SMSTransport.pm | 6 +- copri4/main/src/scripts/mailTransportcms.pl | 14 +- 10 files changed, 70 insertions(+), 305 deletions(-) delete mode 100755 copri4/main/src/Mod/APIxmlserver.pm 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}\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});