diff --git a/copri4/main/src/Mod/APIfunc.pm b/copri4/main/src/Mod/APIfunc.pm
index fea9358..4489320 100755
--- a/copri4/main/src/Mod/APIfunc.pm
+++ b/copri4/main/src/Mod/APIfunc.pm
@@ -993,6 +993,7 @@ sub booking_request(){
table => "contenttranspos",
fetch => "one",
ca_id => "$auth->{c_id}",
+ template_id => "224",
barcode => "$auto_coupon",
};
my $co_pos = { c_id => 0 };
diff --git a/copri4/main/src/Mod/APIjsonserver.pm b/copri4/main/src/Mod/APIjsonserver.pm
index 23bacfa..97ad79c 100755
--- a/copri4/main/src/Mod/APIjsonserver.pm
+++ b/copri4/main/src/Mod/APIjsonserver.pm
@@ -614,10 +614,10 @@ elsif($q->param('request') eq "bikes_all"){
}else{
#if($bikes_allraw->{$bid}->{txt10} && $bikes_allraw->{$bid}->{txt10} =~ /maintenance/)
if($bikes_allraw->{$bid}->{int10} && $bikes_allraw->{$bid}->{int10} == 4){
+ $bikes_all->{$oprefix . $bid}->{service_state} = "3";
+ $bikes_all->{$oprefix . $bid}->{state} = "maintenance";
$service_state_debug .= "$bid: 0\n";
#$bw->log("maintenance TO available service_state bike: $bid:",$bikes_all->{$oprefix . $bid}->{service_state},"");
- #1 = "available"
- $apif->bikestate_update($authraw,$bikes_allraw->{$bid}->{c_id},"1");
}
}
#workaround to get todo_info on defect
diff --git a/copri4/main/src/Mod/Prelogic.pm b/copri4/main/src/Mod/Prelogic.pm
index 85bc35a..01c43ed 100755
--- a/copri4/main/src/Mod/Prelogic.pm
+++ b/copri4/main/src/Mod/Prelogic.pm
@@ -613,18 +613,18 @@ sub preinit(){
$ctt = $db->get_content1("contenttrans",$ctt->{c_id});
}
- if($ctadr->{ct_name} =~ /\w{2}-\d+/){
+ if($state !~ /Zahlungseingang/ && !$ctt->{txt16}){
+ if($ctadr->{ct_name} =~ /\w{2}-\d+/){
my $payoneret = $payone->preauthorizationSEPA_main(\%varenv,$ctadr,$ctt,$users_dms->{u_id});
sleep 2;
- }elsif(length($ctadr->{ct_name}) >= 19){
+ }elsif(length($ctadr->{ct_name}) >= 19){
my $payoneret = $payone->preauthorizationCC_main(\%varenv,$ctadr,$ctt,$users_dms->{u_id});
sleep 2;
- }
+ }
- $ctt = $db->get_content1("contenttrans",$ctt->{c_id});
- $ctt->{sequence} = $R::payone_sequence || 1;
+ $ctt = $db->get_content1("contenttrans",$ctt->{c_id});
+ $ctt->{sequence} = $R::payone_sequence || 1;
- if($state !~ /Zahlungseingang/){
#SEPA capture
if($ctadr->{int03} == 1 && $ctt->{txt16} && $R::state =~ /SEPA/){#SEPA
my $payoneret = $payone->captureSEPA_main(\%varenv,$ctadr,$ctt,$users_dms->{u_id});
@@ -640,8 +640,8 @@ sub preinit(){
#return "failure::$return_text";
}
- #}else{
- #return "failure::Payone Geldeinzug nicht ausgeführt. Hat der Einzug bereits stattgefunden?";
+ }else{
+ return "failure::Payone Geldeinzug nicht ausgeführt weil TXID bereits vorhanden. Hatte der Einzug bereits stattgefunden?";
}
}elsif($ctt->{txt00} eq "Storno" || $state eq "Zahlungsausfall"){
$update_ctt->{int14} = "null";
@@ -649,6 +649,10 @@ sub preinit(){
$u_rows += $dbt->update_record($dbh,$update_ctt,$ctt);
#delete OPOS at all
$db->updater($table,"barcode",$ctt->{barcode},"int14","null","","","","","");
+ }elsif($state eq "fehlgeschlagener Einzug"){
+ $update_ctt->{int14} = "null";
+ $update_ctt->{pay_time} = "now()";
+ $u_rows += $dbt->update_record($dbh,$update_ctt,$ctt);
}elsif($ctt->{txt00} eq "Rechnung" && $R::sum_paid <= 0){
$update_ctt->{int14} = "null";
$update_ctt->{pay_time} = "now()";
diff --git a/copri4/main/src/Tpl/Address3.pm b/copri4/main/src/Tpl/Address3.pm
index 172cb0a..2e184ee 100755
--- a/copri4/main/src/Tpl/Address3.pm
+++ b/copri4/main/src/Tpl/Address3.pm
@@ -61,6 +61,7 @@ sub tpl(){
my $pref = {
table => "contenttrans",
fetch => "one",
+ template_id => "IN::(209,218)",
c_id => $users_dms->{c_id4trans},
};
$ctt = $dbt->fetch_record($dbh,$pref);
@@ -144,9 +145,11 @@ EOF
$buchen_users = $db->get_content1("contentadr",$ctt->{owner});
}
+ my $journalhead = "";
+ $journalhead = "
Journal" if($ctt->{template_id} == 209);
$set_main_id=$main_id if($ctt->{main_id} > "300000");
print $q->hidden(-name=>'set_main_id', -override=>'1', -value=>"$set_main_id");
- print $q->span({-style=>'margin:0em 0.5em 0 0.5em;padding:0.5em 3em;background-color:white;border:solid thin gray;position:absolute;left:3px;'}, "$ctt->{txt00}");
+ print $q->span({-style=>'margin:0em 0.5em 0 0.5em;padding:0.5em 3em;background-color:white;border:solid thin gray;position:absolute;left:3px;'}, "$ctt->{txt00} $journalhead");
print "\n";
print $q->b({-style=>'padding:0 1em;'}, "\# $ctt->{ct_name}"), "\n";
@@ -166,7 +169,7 @@ EOF
print "\n";
my $praefix = "$ctt->{txt00}-$varenv{praefix}";
- if(!looks_like_number($ctt->{int01}) || $ctt->{ct_name} =~ /-/){
+ if(!$journalhead && (!looks_like_number($ctt->{int01}) || $ctt->{ct_name} =~ /-/)){
print $q->span({-style=>'margin:0 0.2em;position:absolute;right:3px;'}, $but->singlesubmit7("ct_trans","remove_chk4rel","$ib{remove_chk4rel}","")),"\n";
print $q->hidden(-name=>'c_id', -override=>'1', -value=>"$ctt->{content_id}");
print $q->hidden(-name=>'template_id', -override=>'1', -value=>"$ctt->{template_id}");
@@ -198,6 +201,7 @@ EOF
table => "contenttrans",
fetch => "all",
keyfield => "c_id",
+ template_id => "IN::(209,218)",
barcode => $ctt->{barcode},
};
my $ctt_rel = "";
@@ -209,7 +213,9 @@ EOF
my $toppx = $top . "px";
my $rel_color = "#f7ae37";
$rel_color = "silver" if($ctt->{c_id} == $ctt_rel->{$id}->{c_id});
- print $q->div({-style=>"position:absolute;top:$toppx;right:10px;font-size:0.91em;background-color:$rel_color"}, $q->a({-class=>"linknav",-href=>"/$dbt->{shareedms_conf}->{parent_node}/Faktura/$ctt_rel->{$id}->{node_name}?ct_trans=open\&c_id4trans=$ctt_rel->{$id}->{c_id}\&tpl_id4trans=$ctt_rel->{$id}->{template_id}\&owner=$users_dms->{u_id}",-title=>"Faktura Terminal öffnen"},"[ $ctt_rel->{$id}->{txt00} #$ctt_rel->{$id}->{ct_name} ]")),"\n";
+ my $journal = "";
+ $journal = "Journal " if($ctt_rel->{$id}->{template_id} == 209);
+ print $q->div({-style=>"position:absolute;top:$toppx;right:10px;font-size:0.91em;background-color:$rel_color"}, "$journal ", $q->a({-class=>"linknav",-href=>"/$dbt->{shareedms_conf}->{parent_node}/Faktura/$ctt_rel->{$id}->{node_name}?ct_trans=open\&c_id4trans=$ctt_rel->{$id}->{c_id}\&tpl_id4trans=$ctt_rel->{$id}->{template_id}\&owner=$users_dms->{u_id}",-title=>"Faktura Terminal öffnen"},"[ $ctt_rel->{$id}->{txt00} #$ctt_rel->{$id}->{ct_name} ]")),"\n";
$top += 22;
}
}
diff --git a/copri4/main/src/scripts/Ilockit_trackingcloud.pl b/copri4/main/src/scripts/Ilockit_trackingcloud.pl
index 8d99330..1e3e480 100755
--- a/copri4/main/src/scripts/Ilockit_trackingcloud.pl
+++ b/copri4/main/src/scripts/Ilockit_trackingcloud.pl
@@ -150,7 +150,10 @@ sub get_tripsum {
$ctpos->{end_time} =~ s/\..*$//;
my $end_time = $ctpos->{end_time};
$end_time =~ s/\s/T/;
- my $utc_end_time = utctime($end_time,"+300");#add 5 minutes, 300sec for latency
+ #add 5 minutes, 300sec for latency
+ #my $utc_end_time = utctime($end_time,"+300");
+ #add 5 minutes + 2 hours end_time Ilockit workaround 2023-04-28
+ my $utc_end_time = utctime($end_time,"+7500");
$utc_end_time .= "Z";
my $rest = "deviceId=$ctpos->{int13}\&from=$utc_start_time\&to=$utc_end_time";
diff --git a/copri4/shareedms-operator/src/Lib/Mlogic.pm b/copri4/shareedms-operator/src/Lib/Mlogic.pm
index ae580ca..e09a3ca 100755
--- a/copri4/shareedms-operator/src/Lib/Mlogic.pm
+++ b/copri4/shareedms-operator/src/Lib/Mlogic.pm
@@ -58,6 +58,8 @@ sub tpl(){
my $parent_id = $node_meta->{parent_id};
my $main_id = $node_meta->{main_id};
+ my $coprihome = "c o p r i ";
+ $coprihome .= " home" if($dbt->{primary}->{$varenv->{dbname}}->{title});
my $title = "";
$title .= $dbt->{primary}->{$varenv->{dbname}}->{title} if($dbt->{primary}->{$varenv->{dbname}}->{title});
$title .= $dbt->{operator}->{$varenv->{dbname}}->{title} if($dbt->{operator}->{$varenv->{dbname}}->{title});
@@ -155,7 +157,7 @@ sub tpl(){
print "\n";
- print $q->div({-id=>'Headerlogo'},$q->a({-class=>'navbar-brand',-style=>"color:black;",-href=>"$varenv->{wwwhost}"}, $q->img({ -style=>"height:25px",-src=>"$varenv->{head_logo}"}), "c o p r i" ,$q->div({-style=>'font-size:0.71em;'}, "$title"))),"\n";
+ print $q->div({-id=>'Headerlogo'},$q->a({-class=>'navbar-brand',-style=>"color:black;",-href=>"$varenv->{wwwhost}"}, $q->img({ -style=>"height:25px",-src=>"$varenv->{head_logo}"}), "$coprihome" ,$q->div({-style=>'font-size:0.71em;'}, "$title"))),"\n";
my $node = $db->collect_noderel($dbt->{shareedms_conf}->{parent_id},$lang,$users_dms->{u_id});
print "