| Code Perl |
sub cptLire {local($To,$nom,$val,$NUM) = @_;
local $In = ''; if (&wsFile("read",$To,$nom,"Cpta",\$In)!=0) {return 100}; local $x = $In;
local($k,$x0,$y);
local %T0 = (); local %T1 = ();
while(true) {
if ($x ne "") {$x =~ s/^\s*//};
if ($x eq '') {last}; $k = index($x,"/#T)");
if ($k==-1) {return 1}; $k = $k+4; $x0 = substr($x,0,$k); $x = substr($x,$k);
if ($x0!~/\(#T\((\w+)\)new:\/\/(\w+)\/#T\(.{3}Owner\):(\w+)\/#T\(.{3}Error\):(\w+)\/#T/) {next};
$y = $1;
if ($y eq "Cloture") {
if ($x0!~/\(#T\(Cloture\)new:\/\/\w+\/#T\(cloOwner\):(\w+)\/#T\(cloError\):(\w+)\/#T\(cloUser\):(\w+)\/#T\(cloEtat\):(.*)\/#T\)/) {next};
if (($To eq "Admin")&&($1 eq $nom)) {
if ($2 eq "1") {if (defined $T1{"User".$3}) {$T1{"User".$3} = ""}; next};
$T1{"User".$3} = $4."!";
}
} elsif ($y eq "Compta") {
if ($x0!~/\(#T\(Compta\)new:\/\/\w+\/#T\(cptOwner\):(\w+)\/#T\(cptError\):(\w+)\/#T\(cptUser\):(\w+)\/#T\(cptEtat\):(.*)\/#T\(cptMsg\):(\w+),[^,]*,(.*)\/#T/) {next};
if ($1 eq $To.$nom) {
if ($2 eq "1") {if (defined $T0{$3}) {$T0{$3} = ""}; next};
$T0{$3} = $3.",".((substr($6,0,3) eq "pj:")?"}":">").",".$5.",,";
if (defined $T1{$3}) {if (substr($T1{$3},1) eq "!") {next}}; $T1{$3} = $4.".";
} elsif ($3 eq $To.$nom) {
if ($2 eq "1") {if (defined $T0{$1}) {$T0{$1} = ""}; next};
$T0{$1} = $1.",".((substr($6,0,3) eq "pj:")?"{":"<").",".$5.",,";
if (defined $T1{$1}) {if (substr($T1{$1},1) eq "!") {next}}; $T1{$1} = $4.".";
}
}
}
foreach $y (keys %T0) {if (($T0{$y} ne "")&&($T1{$y} ne "")) {$wwNum .= substr($T1{$y},0,1).",".$T0{$y}."/#"}};
if ($val ne "User*") {$$NUM = "9"; $y = $val; if (defined $T1{$y}) {$$NUM = substr($T1{$y},0,1)}};
return 0;
}
|
| Code JavaScript |
function cptLire(To,nom,val,NUM) {
var In = Array(''); if (wsFile("read",To,nom,"Cpta",In)!=0) {return 100}; var x = In[0];
var k,x0,y;
var T0 = []; var T1 = [];
while(true) {
if (x!="") {x = x.replace(/^\s*/,"")};
if (x=='') {break}; k = x.indexOf("/#T)");
if (k==-1) {return 1}; k = k+4; x0 = x.substr(0,k); x = x.substr(k);
if (!x0.match(/\(#T\((\w+)\)new:\/\/(\w+)\/#T\(.{3}Owner\):(\w+)\/#T\(.{3}Error\):(\w+)\/#T/)) {continue};
y = RegExp.$1;
if (y=="Cloture") {
if (!x0.match(/\(#T\(Cloture\)new:\/\/\w+\/#T\(cloOwner\):(\w+)\/#T\(cloError\):(\w+)\/#T\(cloUser\):(\w+)\/#T\(cloEtat\):(.*)\/#T\)/)) {continue};
if ((To=="Admin")&&(RegExp.$1==nom)) {
if (RegExp.$2=="1") {if (typeof(T1["User"+RegExp.$3])!="undefined") {T1["User"+RegExp.$3] = ""}; continue};
T1["User"+RegExp.$3] = RegExp.$4+"!";
}
} else if (y=="Compta") {
if (!x0.match(/\(#T\(Compta\)new:\/\/\w+\/#T\(cptOwner\):(\w+)\/#T\(cptError\):(\w+)\/#T\(cptUser\):(\w+)\/#T\(cptEtat\):(.*)\/#T\(cptMsg\):(\w+),[^,]*,(.*)\/#T/)) {continue};
if (RegExp.$1==To+nom) {
if (RegExp.$2=="1") {if (typeof(T0[RegExp.$3])!="undefined") {T0[RegExp.$3] = ""}; continue};
T0[RegExp.$3] = RegExp.$3+","+((RegExp.$6.substr(0,3)=="pj:")?"}":">")+","+RegExp.$5+",,";
if (typeof(T1[RegExp.$3])!="undefined") {if (T1[RegExp.$3].substr(1)=="!") {continue}}; T1[RegExp.$3] = RegExp.$4+".";
} else if (RegExp.$3==To+nom) {
if (RegExp.$2=="1") {if (typeof(T0[RegExp.$1])!="undefined") {T0[RegExp.$1] = ""}; continue};
T0[RegExp.$1] = RegExp.$1+","+((RegExp.$6.substr(0,3)=="pj:")?"{":"<")+","+RegExp.$5+",,";
if (typeof(T1[RegExp.$1])!="undefined") {if (T1[RegExp.$1].substr(1)=="!") {continue}}; T1[RegExp.$1] = RegExp.$4+".";
}
}
}
for(y in T0) {if ((T0[y]!="")&&(T1[y]!="")) {wwNum[0] += T1[y].substr(0,1)+","+T0[y]+"/#"}};
if (val!="User*") {NUM[0] = "9"; y = val; if (typeof(T1[y])!="undefined") {NUM[0] = T1[y].substr(0,1)}};
return 0;
}
|