vddav
|
|
« Ответ #14 : 01 Марта 2013, 15:28:03 » |
|
если еще актуально, то я немного модифицировал calls.pl, sub ShowUserInfo sub ShowUserInfo { my ($id,$h,$name,$out,$p,$sth,$value); my %f; &LoadDopdataMod(); ($id)=@_; $out=''; $p=&sql_select_line($dbh,"SELECT * FROM fullusers WHERE id=$id LIMIT 1"); $p or return(&bold("данные клиента id=$id не получены"),0,0,''); foreach $id ('fio','name','ip','contract','state','grp','mid','id','startmoney','submoney') {$f{$id}=&Filtr_out($p->{$id})} $f{name}=~s/([^\s]{17})/$1­/g; $f{fio}=~s/([^\s]{17})/$1­/g;
$out.=&RRow('*','l l',' ФИО','',$PR{50}? $f{fio} : '<span class=disabled>скрыты</span>'). &RRow('*','l l',' Логин','',$PR{50}? $f{name} : '<span class=disabled>скрыт</span>'). &RRow('*','l l',' ip','',$f{ip});
$sth=&sql($dbh,"SELECT * FROM dopdata WHERE revision=". "(SELECT MAX(revision) FROM dopdata WHERE parent_id=$id AND template_num=(SELECT template_num FROM dopfields WHERE parent_type=0 AND field_alias LIKE '_ad while( $h=$sth->fetchrow_hashref ) { $name=$h->{field_name}; $name=~s|^\[\d+\]\s*||; $value=&Filtr_out( &nDopdata_print_value ({ type => $h->{field_type}, alias => $h->{field_alias}, value => $h->{field_value} }) ); $out.=&RRow('*','l l',' '.&Filtr_out($name),'',$value); } $Fid=int ($F{id} || $F{mid}); $stat_url='stat.pl?'.($PP? "uu=$UU&pp=$PP&":'')."id=$Fid"; $temp_money=0; $sth2=&sql($dbh,"SELECT * FROM pays WHERE mid=$id AND type=20"); while ($p2=$sth2->fetchrow_hashref) { $h=$p2->{cash}; $temp_money+=$h; } $out="<table class=table1 width='100%'>".$out. &RRow('*','l l',' Контракт','',$f{contract}). &RRow('*','l l',' Доступ','',($f{state} eq 'off'? '<span class=disabled>запрещен</span>':'разрешен')). &RRow('*','l l',&bold(' Врем. плат.'),'',&bold($temp_money)). &RRow('*','l l',&bold(' Задолженость'),'',&bold($f{startmoney}-$f{submoney})). &RRow('*','l l',&bold(' Без временного платежа'),'',&bold($f{startmoney}-$f{submoney}-$temp_money)). &RRow('*','3',&ahref("$stat_url&a=101&a=119",'Кассовый ордер')). '</table>'.&div('cntr',&ahref("$scrpt0&a=user&id=$f{id}",'Смотреть данные')); return (&div('bordergrey',$out),$f{grp},$f{mid}||$f{id},$f{ip}); }
то что получилось в атаче, единственное, непосредственно после пополнения не обновляются данные, примерно через пару минут, но в принципе то уже не так страшно. хотя хотелось бы что б было по фен-шую))
|