ATKLOGON ; Afstand-toegang voor klanten [ 05/31/2002 9:17 AM ] ; LOGON() If $$MASTER(),$$SLAVE() Do .Set LTimeOut=10 .Job LOGON^ATKJOB(%J)::LTimeOut .If $T Set Time=$P($H,",",2) Do ..For Hang HangTime Quit:$P($H,",",2)-Time>LTimeOut!$G(^HULP(%J,"LOGON")) ..Set Taal=$G(^HULP(%J,"LOGON","T")) ..If $P($H,",",2)-Time>LTimeOut Goto TIMEOUT^ATK .If $G(^HULP(%J,"LOGON")) Do ..Do TEXT ..If Taal="" Do WRITETXT^ATK("ATK","LOGON","N",12),WRITETXT^ATK("ATK","LOGON","F",13) ..If $L(Taal) Do WRITETXT^ATK("ATK","LOGON",Taal,13) Quit $G(^HULP(%J,"LOGON")) ; WACHTW(Taal) New I,R,CheckWW,Count,Time,zb,WTimeOut,BTimeOut,TimeOut Set (UserName,WachtW)="",BTimeOut=$L($G(^HULP(%J,"LOGON","B"))) For I=1:1 Quit:'$D(^HULP(%J,"LOGON","B",I)) Set BTimeOut=BTimeOut+$L($G(^HULP(%J,"LOGON","B",I))) Set BTimeOut=BTimeOut\10,WTimeOut=20+BTimeOut For Count=1:1:3 Do Quit:$G(CheckWW)!$G(TimeOut) .Kill ^HULP(%J,"WACHTW") .Set FP=1701 .Write @F,@F1 .If Taal="" Do WRITETXT^ATK("ATK","USERN","N",19),WRITETXT^ATK("ATK","USERN","F",20) .If $L(Taal) Do WRITETXT^ATK("ATK","USERN",Taal,20) .Write @FCS .For Do Quit:$G(zb)=-1!$L(UserName) ..Write *7 ..Set UserName=$$ASK^vhINP("",50,UserName,"","",15,"",LTimeOut+WTimeOut) .If $G(zb)=-1 Set TimeOut=1 Quit .Set WTimeOut=WTimeOut-BTimeOut,BTimeOut=0,FP=1901 .Write @F,@F1 .If Taal="" Do WRITETXT^ATK("ATK","WACHTW","N",21),WRITETXT^ATK("ATK","WACHTW","F",22) .If $L(Taal) Do WRITETXT^ATK("ATK","WACHTW",Taal,22) .For Do Quit:$G(zb)=-1!$L(WachtW) ..Write *7 ..Set WachtW=$$MASK^vhINP("","","","",24,39,"",LTimeOut+WTimeOut) .If $G(zb)=-1 Set TimeOut=1 Quit .Job WACHTW^ATKJOB(%J,$$UPCASE^vhRtn1(UserName),$$UPCASE^vhRtn1(WachtW))::LTimeOut .If $T Set Time=$P($H,",",2) Do ..For Quit:($P($H,",",2)-Time)>LTimeOut!$D(^HULP(%J,"WACHTW")) ..If $P($H,",",2)-Time>LTimeOut Goto TIMEOUT^ATK .Set R=$G(^HULP(%J,"WACHTW")),CheckWW=$P(R,"\") Set:CheckWW UserName=$P(R,"\",2),WachtW=$P(R,"\",3) Set UserName=$$UPCASE^vhRtn1(UserName),WachtW=$$UPCASE^vhRtn1(WachtW) If $G(TimeOut)!'$G(CheckWW) Do .Set FP=201 .Write @F,@F1 .If Taal="" Do ..Do WRITETXT^ATK("ATK",$S($G(TimeOut):"TIMEOUT",1:"WRONG"),"N",12) ..Do WRITETXT^ATK("ATK",$S($G(TimeOut):"TIMEOUT",1:"WRONG"),"F",13,$S($G(TimeOut):"",1:32)) .If $L(Taal) Do WRITETXT^ATK("ATK",$S($G(TimeOut):"TIMEOUT",1:"WRONG"),Taal,13) Quit $G(CheckWW) ; NOLOGON Set FP=201 Write @F,@F1 Do WRITETXT^ATK("ATK","NOLOGON1",Taal,12) Do WRITETXT^ATK("ATK","NOLOGON2",Taal,13) Quit ; SINIT If $L($G(Taal)) Do .Do PUTATTR^vhScherm(1,"H","H"),PUTATTR^vhScherm(2,"H","H") Else Do PUTATTR^vhScherm(3,"H","H") Quit ; TEXT New I,Text,Count,Length,Top,Left,Bottom,Right Set Count=0 If $D(^HULP(%J,"LOGON","B")) Do .Do WRAP^vhRtn1(75,"^HULP(%J,""LOGON"",""B"",","",.Text) .Quit:'$G(Text) .Set Length=0 .For Count=$O(Text(""),-1):-1 Quit:$L(Text(Count)) Kill Text(Count) .For Count=1:1:Count Set:$L(Text(Count))>Length Length=$L(Text(Count)) .Set Top=7-(Count\2),Left=80-Length\2,Bottom=Top+Count-1,Right=Left+Length .Write @FMTI .For Count=1:1:Count Set FP=Top+Count-1*100+Left Write @F,Text(Count),$J("",Length-$L(Text(Count))) .Write @FMTi Quit ; POGING(Count) New R Set R=$$GETTXT^ATK("ATK","POGING"_Count,Taal) Set:$L(R) R=" ("_R_")" Quit R ; MASTER() New R,Date,Time Set R=$G(^ATK("AMS")) If $L(R) Do .Set Date=$P($P(R,D),","),Time=$P($P(R,D),",",2) .If $$DIFFTIME^vhLib.DataTypes($H,Date_","_Time)<0 Kill ^ATK("AMS") Set R="" Quit R="" ; SLAVE() New R,Date,Time Set R=$G(^ATK("ASS")) If $L(R) Do .Set Date=$P($P(R,D),","),Time=$P($P(R,D),",",2) .If $$DIFFTIME^vhLib.DataTypes($H,Date_","_Time)<0 Kill ^ATK("ASS") Set R="" Quit R="" ;