|
| 1 | +Const |
| 2 | + SHOR=#196; {Γ~T~@} |
| 3 | + SVER=#179; {Γ~T~B} {≥} |
| 4 | + SCRS=#197; {Γ~T╝} |
| 5 | + STLT=#180; {Γ~Tñ} |
| 6 | + STRT=#195; {Γ~T~\} |
| 7 | + STUP=#193; {Γ~T┤} |
| 8 | + STDN=#194; {Γ~T¼} |
| 9 | + SLTL=#218; {Γ~T~L} |
| 10 | + SLTR=#191; {Γ~T~P} |
| 11 | + SLBL=#192; {Γ~T~T} |
| 12 | + SLBR=#217; {Γ~T~X} |
| 13 | + |
1 | 14 | Procedure DrawDownbox(X,Y,W,H,Fg,Bg,Fg2:Byte);
|
2 | 15 | var
|
3 | 16 | Rows:Byte;
|
4 | 17 |
|
5 | 18 | Begin
|
6 | 19 | FastWrite(X,Y,'|'+IntToHex((Bg shl 4)+Fg)+PadRight(SLTL,Succ(W-X),SHOR)+'|'+IntToHex((Bg shl 4)+Fg2)+SLTR); // TOP LINE //
|
7 |
| - For Rows:=Y+1 to Succ(H-Y) do begin // VERICLE |
| 20 | + For Rows:=Y+1 to (H-Y) do begin // VERICLE |
8 | 21 | FastWrite(X,Rows,'|'+IntToHex((Bg shl 4)+Fg)+SVER);
|
9 |
| - FastWrite(W-X,Rows,'|'+IntToHex((Bg shl 4)+Fg2)+SVER); |
| 22 | + FastWrite((W-X)+2,Rows,'|'+IntToHex((Bg shl 4)+Fg2)+SVER); |
10 | 23 | End;
|
11 |
| - FastWrite(X,H,'|'+IntToHex((Bg shl 4)+Fg2)+PadRight(SLBL,Succ(W-X),SHOR)+SLBR); // BOTTOM LINE // |
| 24 | + FastWrite(X,Succ(H-Y),'|'+IntToHex((Bg shl 4)+Fg2)+PadRight(SLBL,Succ(W-X),SHOR)+SLBR); // BOTTOM LINE // |
12 | 25 | End;
|
13 | 26 |
|
14 | 27 | Procedure EditProfile;
|
|
22 | 35 |
|
23 | 36 | procedure ShowFieldData;
|
24 | 37 | begin
|
25 |
| - DrawDownBox(1,4,19,11,0,1,9); |
26 |
| - FastWrite(2, 5,'|131|18] |1AEmail Address |19'+SVER+' |1F'+PadRight(fEmail.getAsString,50)+'|07'); |
27 |
| - FastWrite(2, 6,'|132|18] |1AFirst Name |19'+SVER+' |1F'+PadRight(fFName.getAsString,35)+'|07'); |
28 |
| - FastWrite(2, 7,'|133|18] |1ALast Name |19'+SVER+' |1F'+PadRight(fLName.getAsString,35)+'|07'); |
29 |
| - FastWrite(2, 8,'|134|18] |1AFull Name |19'+SVER+' |1F'+PadRight(fFidoname.getAsString,36)+'|07'); |
30 |
| - FastWrite(2, 9,'|135|18] |1AHandle/Nickname|19'+SVER+' |1F'+PadRight(fHandle.getAsString,36)+'|07'); |
31 |
| - FastWrite(2,10,'|136|18] |1AGender |19'+SVER+''); |
32 |
| - If (fGender.getAsString='M') then FastWrite(22,10,'|1FMale ') |
33 |
| - Else FastWrite(22,10,'|1FFemale'); |
34 |
| - FastWrite(35,10,'|08[|037|08] |0APassword |0D: |1F********|07'); |
35 |
| - |
36 |
| - FastWrite(1,12,'|08[|038|08] |0BAddress |0D: |1F'+PadRight(fAddress.getAsString,35)+'|07'); |
37 |
| - FastWrite(1,13,'|08[|039|08] |0BCity |0D: |1F'+PadRight(fAddress.getAsString,35)+'|07'); |
38 |
| - FastWrite(1,14,'|08[|03A|08] |0BState |0D: |1F'+PadRight(fAddress.getAsString,35)+'|07'); |
39 |
| - FastWrite(1,15,'|08[|03B|08] |0BZipcode |0D: |1F'+PadRight(fZipcode.getAsString,12)+'|07'); |
40 |
| - FastWrite(35,15,'|08[|03C|08] |0BCountry |0D: |1F'+PadRight(fCountry.getAsString,30)+'|07'); |
| 38 | + DrawDownBox(1,4,19,20,0,1,9); |
| 39 | + FastWrite(2, 5,'|1A Email Address |19'+SVER+' |18'+PadRight(fEmail.getAsString,50)+'|07'); |
| 40 | + FastWrite(2, 6,'|131|18] |1AFirst Name |19'+SVER+' |0A'+PadRight(fFName.getAsString,35)+'|07'); |
| 41 | + FastWrite(2, 7,'|132|18] |1ALast Name |19'+SVER+' |0A'+PadRight(fLName.getAsString,35)+'|07'); |
| 42 | + FastWrite(2, 8,'|1A Full Fido Name |19'+SVER+' |0A'+PadRight(fFidoname.getAsString,36)+'|07'); |
| 43 | + FastWrite(2, 9,'|133|18] |1AHandle/Nickname|19'+SVER+' |0A'+PadRight(fHandle.getAsString,36)+'|07'); |
| 44 | + FastWrite(2,10,'|134|18] |1AGender |19'+SVER+''); |
| 45 | + If (fGender.getAsString='M') then FastWrite(22,10,'|0CMale ') |
| 46 | + Else FastWrite(22,10,'|09Female'); |
| 47 | + FastWrite(2,11,'|1A Password |19'+SVER+' |18********HASH********|07'); |
| 48 | + FastWrite(2,12,'|135|18] |1BAddress |19'+SVER+' |0A'+PadRight(fAddress.getAsString,35)+'|07'); |
| 49 | + FastWrite(2,13,'|136|18] |1BCity |19'+SVER+' |0A'+PadRight(fAddress.getAsString,35)+'|07'); |
| 50 | + FastWrite(2,14,'|137|18] |1BState |19'+SVER+' |0A'+PadRight(fAddress.getAsString,35)+'|07'); |
| 51 | + FastWrite(2,15,'|138|18] |1BZipcode |19'+SVER+' |0A'+PadRight(fZipcode.getAsString,12)+'|07'); |
| 52 | + FastWrite(2,16,'|139|18] |1BCountry |19'+SVER+' |0A'+PadRight(fCountry.getAsString,30)+'|07'); |
41 | 53 |
|
42 |
| - FastWrite(1,17,'|0CAccess: |0FQWK |0C| |0FFIDO |0C| |0FNETMAIL |0C| |0FSMTP Sender |0C| |0FPOP Recv |0C| |0FIMAP Recv |0C| |0FNNTP |0C| |0FWEB'); |
43 |
| - If fQwk.getAsBoolean then FastWrite(9,18,'|2EYES') |
44 |
| - Else FastWrite(9,18,'|4FNO'); |
45 |
| - If fFido.getAsBoolean then FastWrite(15,18,'|2EYES') |
46 |
| - Else FastWrite(15,18,'|4FNO'); |
47 |
| - If fNet.getAsBoolean then FastWrite(22,18,'|2EYES') |
48 |
| - Else FastWrite(22,18,'|4FNO'); |
49 |
| - If fSMTP.getAsBoolean then FastWrite(32,18,'|2EYES') |
50 |
| - Else FastWrite(32,18,'|4FNO'); |
51 |
| - If fPop4.getAsBoolean then FastWrite(46,18,'|2EYES') |
52 |
| - Else FastWrite(46,18,'|4FNO'); |
53 |
| - If fIMap4.getAsBoolean then FastWrite(57,18,'|2EYES') |
54 |
| - Else FastWrite(57,18,'|4FNO'); |
55 |
| - If fNNTP.getAsBoolean then FastWrite(69,18,'|2EYES') |
56 |
| - Else FastWrite(69,18,'|4FNO'); |
57 |
| - If fWeb.getAsBoolean then FastWrite(76,18,'|2EYES') |
58 |
| - Else FastWrite(76,18,'|4FNO'); |
| 54 | + FastWrite(1,19,'|0CAccess: |0FQWK |0C| |0FFIDO |0C| |0FNETMAIL |0C| |0FSMTP Sender |0C| |0FPOP Recv |0C| |0FIMAP Recv |0C| |0FNNTP |0C| |0FWEB'); |
| 55 | + If fQwk.getAsBoolean then FastWrite(9,20,'|2EYES') |
| 56 | + Else FastWrite(9,20,'|4FNO'); |
| 57 | + If fFido.getAsBoolean then FastWrite(15,20,'|2EYES') |
| 58 | + Else FastWrite(15,20,'|4FNO'); |
| 59 | + If fNet.getAsBoolean then FastWrite(22,20,'|2EYES') |
| 60 | + Else FastWrite(22,20,'|4FNO'); |
| 61 | + If fSMTP.getAsBoolean then FastWrite(32,20,'|2EYES') |
| 62 | + Else FastWrite(32,20,'|4FNO'); |
| 63 | + If fPop4.getAsBoolean then FastWrite(46,20,'|2EYES') |
| 64 | + Else FastWrite(46,20,'|4FNO'); |
| 65 | + If fIMap4.getAsBoolean then FastWrite(57,20,'|2EYES') |
| 66 | + Else FastWrite(57,20,'|4FNO'); |
| 67 | + If fNNTP.getAsBoolean then FastWrite(69,20,'|2EYES') |
| 68 | + Else FastWrite(69,20,'|4FNO'); |
| 69 | + If fWeb.getAsBoolean then FastWrite(76,20,'|2EYES') |
| 70 | + Else FastWrite(76,20,'|4FNO'); |
59 | 71 |
|
60 |
| - FastWrite(1,20,'|03 Security Level |0D: |1E'+PadRight(IntToCommaStr(fSecLevel.getAsInteger),6)+'|07'); |
61 |
| - FastWrite(42,20,'|03 Created On |0D: |17'+FormatTimestamp('ddd, mmm dd yy hh:ss',fCreatedOn.getAsInteger)+'|07'); |
62 |
| - FastWrite(1,21,'|03 Verified On |0D: |17'+FormatTimestamp('ddd, mmm dd yy hh:ss',fVerifiedOn.getAsInteger)+'|07'); |
63 |
| - FastWrite(42,21,'|03 Pswd Changed On|0D: |17'+FormatTimestamp('ddd, mmm dd yy hh:ss',fPassChange.getAsInteger)+'|07'); |
| 72 | + FastWrite(1,21,'|03 Security Level |0D: |1E'+PadRight(IntToCommaStr(fSecLevel.getAsInteger),6)+'|07'); |
| 73 | + FastWrite(42,21,'|03 Created On |0D: |17'+FormatTimestamp('ddd, mmm dd yy hh:ss',fCreatedOn.getAsInteger)+'|07'); |
| 74 | + FastWrite(1,22,'|03 Verified On |0D: |17'+FormatTimestamp('ddd, mmm dd yy hh:ss',fVerifiedOn.getAsInteger)+'|07'); |
| 75 | + FastWrite(42,22,'|03 Pswd Changed On|0D: |17'+FormatTimestamp('ddd, mmm dd yy hh:ss',fPassChange.getAsInteger)+'|07'); |
64 | 76 | If Chain.varExists('LASTON') then begin
|
65 |
| - FastWrite(1,22,'|03 Last On |0D: |17'+FormatTimestamp('ddd, mmm dd yy hh:ss',Chain.ReadLargeInt('LASTON'))+'|07'); |
66 |
| - FastWrite(42,22,'|03 Last On From |0D: |17'+Chain.ReadString('LASTIP')+'|07'); |
| 77 | + FastWrite(1,23,'|03 Last On |0D: |17'+FormatTimestamp('ddd, mmm dd yy hh:ss',Chain.ReadLargeInt('LASTON'))+'|07'); |
| 78 | + FastWrite(42,23,'|03 Last On From |0D: |17'+Chain.ReadString('LASTIP')+'|07'); |
67 | 79 | End;
|
68 | 80 | end;
|
69 | 81 | (*
|
70 | 82 | Schema.Add('BIRTHYYYY,N,6,0'); //
|
71 | 83 | *)
|
72 | 84 |
|
| 85 | +var |
| 86 | + WS:String; |
| 87 | + |
73 | 88 | Begin
|
74 | 89 | Title(1);
|
75 | 90 | CursorTo(3,3);
|
|
83 | 98 | DBF.First;
|
84 | 99 | While DBF.getRecNo<>Chain.ReadLongint('RECNO') do DBF.Next;
|
85 | 100 | //DBF.setRecNo(Chain.ReadLongint('RECNO'));
|
| 101 | + |
86 | 102 | fEmail:=DBF.getFieldByName('EMAIL');
|
87 | 103 | fFName:=DBF.getFieldByName('FNAME');
|
88 | 104 | fLName:=DBF.getFieldByName('LNAME');
|
@@ -115,12 +131,87 @@ Begin
|
115 | 131 | While true do begin
|
116 | 132 | ShowFieldData;
|
117 | 133 |
|
118 |
| - FastWrite(1,24,10,0,'Command (1..9,A,B,C,Q=Quit) [_]');/*print the menu*/ |
119 |
| - CursorTo(30,24); |
120 |
| - Action:=OneKey('ABCabc123456789Qq',True); |
| 134 | + FastWrite(1,24,10,0,'Command (1..9,Q=Quit) [_]');/*print the menu*/ |
| 135 | + CursorTo(30,20); |
| 136 | + Action:=OneKey('123456789Qq',True); |
121 | 137 | If Action='' then Break;
|
122 | 138 | ClearLine(24,7,0);
|
123 | 139 | Case Action[1] of
|
| 140 | + '1':Begin |
| 141 | + CursorTo(21 ,6); |
| 142 | + Ws:=Ask('|30',PadRight(fFName.getAsString,36)); |
| 143 | + If (Ws<>'') then begin |
| 144 | + DBF.Edit; |
| 145 | + fFName.SetAsString(Uppercase(Ws)); |
| 146 | + DBF.Post; |
| 147 | + End; |
| 148 | + End; |
| 149 | + '2':Begin |
| 150 | + CursorTo(21 ,7); |
| 151 | + Ws:=Ask('|30',PadRight(fLName.getAsString,36)); |
| 152 | + If (Ws<>'') then begin |
| 153 | + DBF.Edit; |
| 154 | + fLName.SetAsString(Uppercase(Ws)); |
| 155 | + DBF.Post; |
| 156 | + End; |
| 157 | + End; |
| 158 | + '3':Begin |
| 159 | + CursorTo(21 ,9); |
| 160 | + Ws:=Ask('|30',PadRight(fHandle.getAsString,37)); |
| 161 | + If (Ws<>'') then begin |
| 162 | + DBF.Edit; |
| 163 | + fHandle.SetAsString(Ws); |
| 164 | + DBF.Post; |
| 165 | + End; |
| 166 | + End; |
| 167 | + '4':Begin |
| 168 | + DBF.Edit; |
| 169 | + If fGender.getAsString='M' then fGender.setAsString('F') |
| 170 | + else fGender.setAsString('M'); |
| 171 | + DBF.Post; |
| 172 | + End; |
| 173 | + '5':Begin |
| 174 | + CursorTo(21 ,12); |
| 175 | + Ws:=Ask('|30',PadRight(fAddress.getAsString,36)); |
| 176 | + If (Ws<>'') then begin |
| 177 | + DBF.Edit; |
| 178 | + fAddress.SetAsString(Ws); |
| 179 | + DBF.Post; |
| 180 | + End; |
| 181 | + '6':Begin |
| 182 | + CursorTo(21 ,13); |
| 183 | + Ws:=Ask('|30',PadRight(fCity.getAsString,36)); |
| 184 | + If (Ws<>'') then begin |
| 185 | + DBF.Edit; |
| 186 | + fCity.SetAsString(Ws); |
| 187 | + DBF.Post; |
| 188 | + End; |
| 189 | + '7':Begin |
| 190 | + CursorTo(21 ,14); |
| 191 | + Ws:=Ask('|30',PadRight(fState.getAsString,36)); |
| 192 | + If (Ws<>'') then begin |
| 193 | + DBF.Edit; |
| 194 | + fState.SetAsString(Ws); |
| 195 | + DBF.Post; |
| 196 | + End; |
| 197 | + '8':Begin |
| 198 | + CursorTo(21 ,15); |
| 199 | + Ws:=Ask('|30',PadRight(fZipcode.getAsString,13)); |
| 200 | + If (Ws<>'') then begin |
| 201 | + DBF.Edit; |
| 202 | + fZipcode.SetAsString(Ws); |
| 203 | + DBF.Post; |
| 204 | + End; |
| 205 | + End; |
| 206 | + '9':Begin |
| 207 | + CursorTo(21 ,16); |
| 208 | + Ws:=Ask('|30',PadRight(fCountry.getAsString,36)); |
| 209 | + If (Ws<>'') then begin |
| 210 | + DBF.Edit; |
| 211 | + fCountry.SetAsString(Ws); |
| 212 | + DBF.Post; |
| 213 | + End; |
| 214 | + End; |
124 | 215 | 'Q','q':Break;
|
125 | 216 | End;
|
126 | 217 | End;
|
|
0 commit comments