diff --git a/copri4/main/src/Mod/APIfunc.pm b/copri4/main/src/Mod/APIfunc.pm
index 13fe588..a7dde5c 100755
--- a/copri4/main/src/Mod/APIfunc.pm
+++ b/copri4/main/src/Mod/APIfunc.pm
@@ -970,7 +970,7 @@ sub booking_request(){
my $response_text = "";
#state and lock_state is only defined if requestes incl. occupied
- $bw->log("booking_request bike to state | $bike | $state | $lock_state, tarif $ct_tariff->{barcode}, auth:",$auth->{c_id},"");
+ $bw->log("booking_request bike to state $bike | $state | $lock_state, tarif $ct_tariff->{barcode}, auth:$auth->{c_id}",$auth->{c_id},"");
my $update_adr = {
table => "contentadr",
@@ -1155,7 +1155,7 @@ sub booking_update(){
my $record_cc = { c_id => 0 };
$record_cc = $dbt->fetch_record($dbh,$pref_cc) if($q->param('bike'));
- $bw->log("booking_update bike to state | $bike | $state | $lock_state, auth:",$auth->{c_id},"");
+ $bw->log("booking_update bike to state $bike | $state | $lock_state, auth:$auth->{c_id}",$auth->{c_id},"");
my $update_cc = {
table => "content",
@@ -1230,7 +1230,8 @@ sub booking_update(){
if($state_key == 6 && $record_pos->{int10} == 2 && $record_pos->{int20} == 1){
$rows = $dbt->delete_content($dbh,"contenttranspos",$record_pos->{c_id});
if($rows > 0){
- $update_cc->{int10} = 1;
+
+ $update_cc->{int10} = 1 if($record_cc->{int10} == 2);#only if still requested
$booking_values->{response_state} = "OK: canceled bike " . $q->param('bike');
$booking_values->{response_text} = "Fahrrad Nr. " . $q->param('bike') . " wurde erfolgreich storniert";
$booking_values->{state} = "available";
diff --git a/copri4/main/src/Mod/Buttons.pm b/copri4/main/src/Mod/Buttons.pm
index b805ce6..2715b21 100755
--- a/copri4/main/src/Mod/Buttons.pm
+++ b/copri4/main/src/Mod/Buttons.pm
@@ -24,6 +24,7 @@ my $icon = "/icon";
sub ibuttons(){
my $self = shift;
my %ib = (
+ 'operator_accounting' => 'Betreiber Abrechnung',
'service_done' => 'Wartungsprotokoll für ausgewähltes Rad einfügen/bearbeiten',
'post_email' => 'submit',
'barcode' => 'Barcode Label drucken',
@@ -67,8 +68,6 @@ sub ibuttons(){
'search' => 'suchen',
'search_product' => 'Search',
'search_calendar' => 'anzeigen',
- 'search_export' => 'suchen /
-auswerten',
'search_adr' => 'Kunden suchen',
'search_extrakt' => 'extrakt',
'change_login' => 'ID',
@@ -554,16 +553,17 @@ sub singlesubmit10(){
return $button;
}
-# international hack. Vorsicht, aendert Parameter
sub singlesubmit1(){
my $self = shift;
- my ($function,$b_name,$class,$style,$title) = @_;
- $class = "ebutton" if(!$class);
- my ($key,$val,$ibv);
- while (($key,$val) = each(%ib)) {
- $ibv = $val if($b_name eq $key);
+ my $function = shift;
+ my $button_key = shift;
+ my $class = shift || "ebutton";
+ my $style = shift || "";
+ my $ib_view = $button_key;
+ while (my($key,$val) = each(%ib)) {
+ $ib_view = $val if($key eq $button_key);
}
- my $button = "";
+ my $button = "";
return $button;
}
diff --git a/copri4/main/src/Mod/Indexsharee.pm b/copri4/main/src/Mod/Indexsharee.pm
index cb3e6a5..f9f5b5e 100755
--- a/copri4/main/src/Mod/Indexsharee.pm
+++ b/copri4/main/src/Mod/Indexsharee.pm
@@ -375,6 +375,8 @@ sub handler {
$db->update_users4trans($R::c_id4trans,$R::tpl_id4trans,"",$users_dms->{u_id}) if(looks_like_number($R::c_id4trans) && looks_like_number($R::tpl_id4trans));
if($R::ct_trans =~ /set_workflow2invoice|set_workflow2storno/){
$return = $pl->set_workflow($users_dms,$R::c_id4trans,$R::set_main_id4workflow) if(looks_like_number($R::c_id4trans) && looks_like_number($R::tpl_id4trans) && looks_like_number($R::set_main_id4workflow));
+ }elsif($R::detail_search && $R::detail_search eq "operator_accounting"){
+ $return = $pl->operator_accounting($users_dms,$users_sharee,$R::accounting_type,$R::ck4ex);
}else{
$return .= "|";
$return .= $pre->preinit($users_dms,$lang);#transactions logic
diff --git a/copri4/main/src/Mod/Libenzdb.pm b/copri4/main/src/Mod/Libenzdb.pm
index 155b44b..13363e6 100755
--- a/copri4/main/src/Mod/Libenzdb.pm
+++ b/copri4/main/src/Mod/Libenzdb.pm
@@ -1402,7 +1402,7 @@ sub search_content3(){
$valref->{$key} = $q->escapeHTML($valref->{$key});
#print $key . ":" . $opref->{$key} . ":" . $valref->{$key} . "\n";
- if(($v_journal =~ /_parts/ && $kontext eq "Waren") || $table_pos =~ /contentpos|contentadrpos|users/){
+ if($table_pos =~ /contentpos|contentadrpos|users/){
#my $tinfo = &table_info("","contenttranspos");
if($key =~ /ct_name/){
$cptxt_where .= " and cp.$key ilike '$valref->{$key}'";
@@ -1435,7 +1435,7 @@ sub search_content3(){
}
}
- if($key =~ /end_itime|end_mtime|end_date_time/){
+ if($key =~ /end_itime|end_mtime|end_date_time|pay_time/){
$valref->{$key} .= " 23:59" if($valref->{$key} !~ /\d:\d/);
}
@@ -1472,19 +1472,14 @@ sub search_content3(){
if($key =~ /end_mtime/ && $valref->{$key} =~ /\d+\.\d+\.\d+/){
$txt_where .= " and ct.mtime < '$valref->{$key}'";
}
- }
- if($v_journal !~ /_parts/ || $kontext eq "Waren"){
- if($key =~ /long_rent/ && $valref->{$key} =~ /^\d+ (day|hour)/){
- $cptxt_where .= " and cp.end_time >= (cp.start_time + interval '$valref->{$key}')";
+ if($key =~ /start_pay_time/ && $valref->{$key} =~ /\d+\.\d+\.\d+/){
+ $txt_where .= " and ct.pay_time >= '$valref->{$key}'";
+ }
+ if($key =~ /end_pay_time/ && $valref->{$key} =~ /\d+\.\d+\.\d+/){
+ $txt_where .= " and ct.pay_time < '$valref->{$key}'";
}
- if($key =~ /start_date_time/ && $valref->{$key} =~ /^\d+\.\d+\.\d+/){
- $cptxt_where .= " and cp.start_time >= '$valref->{$key}'";
- }
- if($key =~ /end_date_time/ && $valref->{$key} =~ /^\d+\.\d+\.\d+/){
- $cptxt_where .= " and cp.end_time <= '$valref->{$key}'";
- }
}
}
@@ -1508,7 +1503,7 @@ sub search_content3(){
#print "txt_where: $txt_where
\n";
#print "cptxt_where: $cptxt_where
\n";
- my $sth;
+ my $sth = "";
my $updown = "ASC";
$updown = "DESC" if($sort_updown eq "down");
if($v_journal =~ /_parts/){#collects ct_ids
@@ -1518,7 +1513,6 @@ sub search_content3(){
}elsif($valref->{long_rent} || $valref->{start_date_time} =~ /^\d+\.\d+\.\d+/ || $valref->{end_date_time} =~ /^\d+\.\d+\.\d+/ || $cpgroup_where){
$sth = $dbh->prepare("SELECT * FROM relation rel, $table ct WHERE rel.content_id=ct.c_id and rel.main_id IN ($main_ids) and rel.template_id IN ($tplids) and rel.lang='$lang' $txt_where and c_id IN (SELECT cp.ct_id from contenttranspos cp WHERE 1=1 $cptxt_where $cpgroup_where) ORDER BY $scol $updown LIMIT $limit OFFSET $offset");
}elsif($v_journal && $ct_ids){#and executes ct_ids
- $txt_where = "" if($kontext eq "Waren");
$ct_ids = 0 if(!$ct_ids);
$sth = $dbh->prepare("SELECT * FROM relation rel, $table ct WHERE rel.content_id=ct.c_id and rel.main_id IN ($main_ids) and rel.template_id IN ($tplids) and rel.content_id IN ($ct_ids) and rel.lang='$lang' $txt_where ORDER BY $scol $updown LIMIT $limit OFFSET $offset");
@@ -1547,8 +1541,7 @@ sub search_content3(){
#my $save_query = $q->escapeHTML("$txt_where");
#CSV/FiBu Export###
- if($export && (("$kontext" ne "Waren" && "$export" ne "FiBu" && $v_journal !~ /_parts/) || ("$export" eq "FiBu" && $v_journal =~ /_parts/) || ("$kontext" eq "Waren" && $v_journal =~ /_parts/))){
- #print "$v_journal,$time,$kontext,$export
";
+ if($export){
my $ctf = &get_content1("","contentuser","$mandant_id");
my @tpl_order = split /,/,$node_meta->{tpl_order};
@@ -1561,18 +1554,6 @@ sub search_content3(){
$what = "$export-" if($export =~ /CSV|FIBU/);
open(CSV, "> $varenv{pdf}/$what$owner-$time.csv") or die "Can't open $varenv{pdf}/$owner-$time.csv\n";
- #workaround 2015-11-23 for formated FiBu export
- $export = "FiBu" if("$kontext" eq "Waren" && $v_journal =~ /_parts/);
- if("$export" eq "FiBu"){
- foreach my $id (keys (%$search)){
- $aw_ids .= "$search->{$id}->{ct_id}|" if("$search->{$id}->{ct_name}" eq "$ctf->{txt51}");
- }
- #SOLL Zahlungsart
- $ctt = &Libenzdb::collect_content2("","contenttrans");
- #$ctadr = &collect_content3("","contentadr");#wg Debitor/Kreditor
- print CSV "SOLL;UMSATZ;USTNR;HABEN;GVC;BELDAT;BELEG;OPBELEG;SKONTO;KOSTNR;TEXT;TEXT2\n";
-
- }else{
#CSV Table Header
my $col_header="Ordner";
foreach(@tpl_order){
@@ -1584,10 +1565,7 @@ sub search_content3(){
}
}
print CSV "$col_header\n";
- }
- #sort=ct_id nach Geschäftsvorgang
- $scol = "ct_id" if("$export" eq "FiBu");
foreach my $id (sort {
if($sort_updown eq "down"){
if ($scol =~ /barcode|int/) {
diff --git a/copri4/main/src/Mod/Modalbox3.pm b/copri4/main/src/Mod/Modalbox3.pm
index 3b9f5ef..b045b3c 100755
--- a/copri4/main/src/Mod/Modalbox3.pm
+++ b/copri4/main/src/Mod/Modalbox3.pm
@@ -122,10 +122,6 @@ EOF
require "Mod/RelationEdit.pm";
&RelationEdit::tpl($node_meta,$users_dms,$mode,$return);
}
- elsif($mode eq "supervisor"){
- require "Tpl/AttributEdit.pm";
- &AttributEdit::tpl($node_meta,$users_dms,$mode,$return);
- }
elsif(($R::node2edit && $R::node2edit =~ /editpart/) || ($R::base_edit && $R::base_edit !~ /delete/)){
require "Tpl/BaseEdit.pm";
&BaseEdit::tpl($node_meta,$users_dms,$mode,$return);
diff --git a/copri4/main/src/Mod/Prelib.pm b/copri4/main/src/Mod/Prelib.pm
index 48e1836..1d28ec9 100755
--- a/copri4/main/src/Mod/Prelib.pm
+++ b/copri4/main/src/Mod/Prelib.pm
@@ -567,7 +567,7 @@ sub save_relation {
#type_id and energy_id by node_name pattern match.
#TODO, should be editable by NodeEditor
my $type_id = 300101;#if Lastenrad
- $type_id = 300102 if($node_name =~ /E-Lastenrad/);
+ $type_id = 300101 if($node_name =~ /E-Lastenrad/);
$type_id = 300103 if($node_name =~ /Stadtrad/);
$u_rows = $dbt->update_one($dbh,$update_node,"type_id=$type_id");
my $energy_id = 0;
@@ -812,4 +812,60 @@ sub save_service_desc {
return $rows;
}
+#Operator Accounting
+sub operator_accounting {
+ my $self = shift;
+ my $users_dms = shift;
+ my $users_sharee = shift;
+ my $accounting_type = shift || "";
+ my $ck4ex = shift || "";
+ my $dbh = "";
+ my %varenv = $cf->envonline();
+ my $print_return = "";
+ my $exit_code = 1;
+
+ my $ctt = {
+ ct_name => "Abrechnung-123",
+ txt00 => "Abrechnung",
+ };
+ my $praefix = "$ctt->{txt00}-$varenv{praefix}";
+ my $accounting_main_id = 300029;
+
+ if(1==1){#TODO
+ my $auth = $users_sharee;#workaround, must be operator addr.
+ my $ct_id = $dbt->insert_contenttrans($dbh,$auth,$accounting_main_id,"208","----",$users_dms->{u_id});
+ my $pref = {
+ table => "contenttrans",
+ fetch => "one",
+ main_id => $accounting_main_id,
+ template_id => 208,
+ c_id => $ct_id
+ };
+ $ctt = $dbt->fetch_record($dbh,$pref);
+ $bw->log("operator_accounting used invoice c_id:",$ctt->{c_id},"");
+
+ my $psize="A4";
+ my $wc_line=0;
+ #$wc_line= $ctt->{int04};#Adresse.Tabelle
+ my $topdf = "$varenv{basedir}/src/wkhtmltopdf-amd64";
+
+ $print_return = `$topdf --page-size $psize "$varenv{wwwhost}/Printpreview?printer_id=operator_accounting\&mandant_main_id=$dbt->{shareedms_conf}->{parent_id}\&main_id=$accounting_main_id\&ct_name2print=$ctt->{ct_name}\&c_id4trans=$ctt->{c_id}\&u_id=$users_dms->{u_id}\&wc=$wc_line" $varenv{pdf}/$praefix-$ctt->{ct_name}.pdf 2>&1`;
+ $exit_code = $?;
+
+ my $filesize = -s "$varenv{pdf}/$praefix-$ctt->{ct_name}.pdf";
+ open(EMA, ">> $varenv{logdir}/copri-print.log");
+ print EMA "$now_dt\n$topdf --page-size $psize $varenv{wwwhost}/Printpreview?printer_id=operator_accounting\&mandant_main_id=$dbt->{shareedms_conf}->{parent_id}\&main_id=$accounting_main_id\&ct_name2print=$ctt->{ct_name}\&c_id4trans=$ctt->{c_id}\&u_id=$users_dms->{u_id}\&wc=$wc_line $varenv{pdf}/$praefix-$ctt->{ct_name}.pdf\n $print_return\nfilesize: $filesize\nexit_code: $exit_code\n\n";
+ close EMA;
+ #exit 0;
+ }
+
+ if( -f "$varenv{basedir}/pdf/$praefix-$ctt->{ct_name}.pdf"){
+ print "";
+ }else{
+ return "failure::PDF konnte nicht generiert werden\n $varenv{wwwhost}/pdf/$praefix-$ctt->{ct_name}.pdf";
+ }
+
+ return;
+}
+
1;
diff --git a/copri4/main/src/Mod/Premain.pm b/copri4/main/src/Mod/Premain.pm
index 791874e..cb139fd 100755
--- a/copri4/main/src/Mod/Premain.pm
+++ b/copri4/main/src/Mod/Premain.pm
@@ -266,159 +266,6 @@ sub maininit(){
}
###
- #new Attribute for template as tpl_order
- if($ib_key =~ /new_attrtpl_(\w+)/){
- my $key = $1;
- my $debug=1;
- open(ATTR,">>$varenv{logdir}/attr.log") if($debug);
- print ATTR "\n----- $now_time -------\n" if($debug);
- foreach(@keywords){
- $val = $q->param($_);
- print ATTR "$_: $val\n" if($debug);
- }
-
- my $table = "template";
- my $tpl_id = "400";#Master template
- my $tpl_master = $db->get_tpl($tpl_id);
- my @tpl_masterorder = split /,/,$tpl_master->{tpl_order};
-
- my $num=1;
- my $next=1;
- my $size=15;
- foreach (@tpl_masterorder){
- my ($m_key,$m_des,$m_size) = split /=/,$_;
- if($m_key =~ /$key(\d+)/){
- $num = $1;
- $size = $m_size if($m_size);
- $next = $num if($next < $num);
-print ATTR "$next = $num if($next < $num)\n" if($debug);
- }
- }
- $next++;
-print ATTR "next: $next\n" if($debug);
-
- if($key && $next > 20){
- return "failure:: Abbruch, die maximale Menge der Datenfelder wurde erreicht.";
- }
-
- $next = sprintf("%.2d", $next);
- $tpl_master->{tpl_order} .= ",$key$next=new$users_dms->{u_id}=$size";
- $i_rows += $db->updater("$table","tpl_id",$tpl_id,"tpl_order","$tpl_master->{tpl_order}",$users_dms->{u_id});
-
- $path =~ s/\/\//\//;
- $path .= "/supervisor" if($path !~ /supervisor/);
- print ATTR "$varenv{wwwhost}$script$path?node2edit=edit_template\&tpl_id=$tpl_id\&key=$key$next\n" if($debug);
- close(ATTR) if($debug);
-
- print redirect("$varenv{wwwhost}$script$path?node2edit=edit_template\&tpl_id=$tpl_id\&key=$key$next");
- exit;
- }
- ###
-
- #save Attribute for template as tpl_order
- if($ib_key =~ /save_attrtpl/ && $R::key && $R::key_typ && $R::des && $R::asort){
- my $debug=1;
- open(ATTR,">>$varenv{logdir}/attr.log") if($debug);
- print ATTR "\n----- $now_time -------\n" if($debug);
- foreach(@keywords){
- $val = $q->param($_);
- print ATTR "$_: $val\n" if($debug);
- }
-
-
- my $template;
- if($users_dms->{mandant_id} && $users_dms->{mandant_id} < "200000"){
- my $ctf = $db->get_content1("contentuser","$users_dms->{mandant_id}");
- $template = $db->collect_tpl("$ctf->{txt35}","$R::key") if($ctf->{txt35});#TINK master template_id=400
- }
-
- #change all templates if $R::key
- foreach my $id (keys(%$template)){
-
- my $asort = $R::asort;
- my @new_order;
- my @tpl_order = split /,/,$template->{$id}->{tpl_order};
-
- #1. extract array-skalar without $R::key
- #print "1. @tpl_order
";
- foreach (@tpl_order){
- my ($m_key,$m_des,$m_size) = split /=/,$_;
- if($m_key !~ /$R::key/){
- push @new_order,$_;
- }
- }
-
- #3. put in new key=des=size value at asort
- my $new_tpl_order;
- my $size=15;
- my $new_key = $R::key_typ;
- ($new_key,$size) = split(/_/,$R::key_typ) if($R::key_typ =~ /_/);
-
-
- my $i=0;
- my $ok=0;
- foreach (@new_order){
- $i++;
- if($i == $asort){
- $ok++;
- $new_tpl_order .= "$R::key=$R::des=$size,";
- }
- $new_tpl_order .= "$_,";
- }
- $new_tpl_order .= "$R::key=$R::des=$size," if(!$ok);#last chance
- $new_tpl_order =~ s/,$//;
-
-
- $i_rows += $db->updater("template","tpl_id",$template->{$id}->{tpl_id},"tpl_order","$new_tpl_order",$users_dms->{u_id});
- }
- close(ATTR) if($debug);
- }
- ###
-
- #remove and delete attribute with check
- if($ib_key =~ /remove_chk4attr/ && $R::key){
- return "failure::Wenn Sie die Eigenschaft-Definition loeschen, wird die Eigenschaft in allen Objekten geloescht. ::?rel_edit=delete_attrtpl\&exit_box2=1\&key=$R::key ::loeschen"
- }
- if($ib_key =~ /delete_attrtpl/ && $R::key){
- my $template;
- if($users_dms->{mandant_id} && $users_dms->{mandant_id} < "200000"){
- my $ctf = $db->get_content1("contentuser","$users_dms->{mandant_id}");
- $template = $db->collect_tpl("$ctf->{txt35}","$R::key") if($ctf->{txt35});#TINK master template_id=400
- }
-
- foreach my $id (keys(%$template)){
- my $new_tpl_order;
- my @tpl_order = split /,/,$template->{$id}->{tpl_order};
- foreach (@tpl_order){
- my ($m_key,$m_des,$m_size) = split /=/,$_;
- if($m_key !~ /$R::key/){
- $new_tpl_order .= "$_,";
- }
- }
- $new_tpl_order =~ s/,$//;
- $i_rows += $db->updater("template","tpl_id",$template->{$id}->{tpl_id},"tpl_order","$new_tpl_order",$users_dms->{u_id});
- $i_rows += $db->updater($template->{$id}->{ct_table},"1","1","$R::key","null","","","","","no_time");#delete key-value in All content without mtime and user stamp
- }
- }
-
- #packpos Packaging
- if($R::rel_edit eq "add_packpos" && $R::c_id && $R::c_idpackpos){
- my $ct = $db->get_content1("content",$R::c_id);
- my $cp_ids = "$ct->{txt05}";
- if($cp_ids !~ /^\d/){
- $cp_ids = "$R::c_idpackpos";
- }else{
- $cp_ids .= ",$R::c_idpackpos";
- }
- $u_rows += $db->updater("content","c_id",$R::c_id,"txt05","$cp_ids",$users_dms->{u_id});
- }
- if($R::rel_edit eq "remove_packpos" && $R::c_id && $R::c_idpackpos){
- my $ct = $db->get_content1("content",$R::c_id);
- my $cp_ids = "$ct->{txt05}";
- $cp_ids =~ s/[,]?$R::c_idpackpos//;
- $u_rows += $db->updater("content","c_id",$R::c_id,"txt05","$cp_ids",$users_dms->{u_id});
- }
-
#save content
#if($ib_key =~ /save/ && $R::c_id && $R::rel_id){
diff --git a/copri4/main/src/Tpl/AttributEdit.pm b/copri4/main/src/Tpl/AttributEdit.pm
deleted file mode 100755
index 5e273f3..0000000
--- a/copri4/main/src/Tpl/AttributEdit.pm
+++ /dev/null
@@ -1,146 +0,0 @@
-package AttributEdit;
-#
-#
-# SPDX-License-Identifier: AGPL-3.0-or-later
-# Copyright (c) Rainer Gümpelein, TeilRad GmbH
-#
-use strict;
-use warnings;
-use CGI::Carp qw(fatalsToBrowser);
-use CGI ':standard';
-use Lib::Config;
-use Mod::Buttons;
-use Mod::Libenz;
-use Mod::Libenzdb;
-use Mod::DBtank;
-
-sub new {
- my $class = shift;
- my $self = {};
- bless($self,$class);
- return $self;
-}
-
-#Template
-sub tpl(){
- my $node_meta = shift;
- my $users_dms = shift;
- my $mode = shift;
- my $return = shift;
-
- my $q = new CGI;
- my $cf = new Config;
- my $lb = new Libenz;
- my $db = new Libenzdb;
- my $dbt = new DBtank;
- my $but = new Buttons;
-
- my %varenv = $cf->envonline();
- my $script = $q->script_name();
- my $path = $q->path_info();
- my %ib = $but->ibuttons();
- my $dbh = "";
- my $tpl = $db->get_tpl($R::tpl_id);#Master template
- my @tpl_order = split /,/,$tpl->{tpl_order};
-
- my @_attr;
- my $asort=0;
- my $des_name;
- my $key_txt;
- my $checked_txt;
- my $key_txtarea;
- my $checked_txtarea;
- my $key_int;
- my $checked_int;
- my $key_intcheck;
- my $checked_intcheck;
- my ($key,$des,$size);
- foreach (@tpl_order){
- $asort++;
- ($key,$des,$size) = split /=/,$_;
- #push (@_attr, "$key") if($key);
- if("$key" eq "$R::key"){
- $des_name = $des;
- if($key =~ /ct_name/){
- last;
- }
- elsif($key =~ /txt(\d+)/ && $size =~ /area/){
- $key_txtarea = $1;
- $checked_txtarea = "checked";
- last;
- }
- elsif($key =~ /txt(\d+)/){
- $key_txt = $1;
- $checked_txt = "checked";
- last;
- }
- elsif($key =~ /int(\d+)/ && $size =~ /checkbox/){
- $key_intcheck = $1;
- $checked_intcheck = "checked";
- last;
- }
- elsif($key =~ /int(\d+)/){
- $key_int = $1;
- $checked_int = "checked";
- last;
- }
- }
- }
-
- $tpl->{change} = $lb->time4de($tpl->{change},"1") if($tpl->{change});
- my $u_name = $tpl->{owner};
-
- $u_name = $dbt->sys_username($dbh,$tpl->{owner});
-
- print "