home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 1B / DATAFILE_PDCD1B.iso / _pocketbk / pocketbook / 004 / ainfo_zip / AINFO.OPL < prev    next >
Text File  |  1993-05-29  |  6KB  |  242 lines

  1.  App Ainfo
  2.  icon "B:\Opd\Ainfo.pic"
  3.  Enda
  4.  
  5. Proc Main:
  6. local a$(19,60),d%,l%,j%,r%,pw$(12),ch$(12)
  7. global n$(19,12)
  8. giprint"Reading data...",2
  9. trap mkdir "M:\dat"
  10. trap mkdir "M:\app\Ainfo\"
  11. if exist("M:\App\Ainfo\Ainfo.set")
  12.  open "M:\App\Ainfo\Ainfo.set",a,a$,b$,c$,d$,e$,f$,g$,h$,i$,j$,k$,l$,m$,n$,o$,p$,q$,r$,s$
  13. n$(1)=a.a$ :n$(2)=a.b$ :n$(3)=a.c$ :n$(4)=a.d$
  14. n$(5)=a.e$ :n$(6)=a.f$ :n$(7)=a.g$ :n$(8)=a.h$
  15. n$(9)=a.i$ :n$(10)=a.j$ :n$(11)=a.k$ :n$(12)=a.l$
  16. n$(13)=a.m$ :n$(14)=a.n$ :n$(15)=a.o$ :n$(16)=a.p$
  17. n$(17)=a.q$ :n$(18)=a.r$ :n$(19)=a.s$
  18. else
  19.  create "M:\App\Ainfo\Ainfo.set",a,a$,b$,c$,d$,e$,f$,g$,h$,i$,j$,k$,l$,m$,n$,o$,p$,q$,r$,s$
  20.  setname$:
  21. help:
  22. endif
  23. if exist("M:\Dat\Ainfo.dbf")
  24.  open "M:\Dat\Ainfo.dbf",c,a$,b$,c$,d$,e$,f$,g$,h$,i$,j$,k$,l$,m$,n$,o$,p$,q$,r$,s$
  25. else
  26.  create "M:\Dat\Ainfo.dbf",c,a$,b$,c$,d$,e$,f$,g$,h$,i$,j$,k$,l$,m$,n$,o$,p$,q$,r$,s$
  27. c.a$="000" :append
  28. endif
  29. top::
  30. gat 1,79
  31. gprintb"¸1993 Pelican Software Inc.",235,3
  32. dinit"Account Info Main Menu"
  33. dbuttons "View",13,"Setup",%S,"Help",%H
  34. d%=dialog
  35. cls
  36. if d%=0
  37.  return
  38. elseif d%=%s
  39.  setname$:
  40.  use c :goto top
  41. elseif d%=%h
  42.  help: :goto top
  43. endif
  44. pw$=""
  45. dinit"Enter Password"
  46. dxinput pw$,"Password:"
  47. if dialog=0 :goto top :endif
  48. giprint"Reading...",2
  49. a$(1)=e$:(c.a$,pw$,-1) :a$(2)=e$:(c.b$,pw$,-1) :a$(3)=e$:(c.c$,pw$,-1)
  50. a$(4)=e$:(c.d$,pw$,-1) :a$(5)=e$:(c.e$,pw$,-1) :a$(6)=e$:(c.f$,pw$,-1)
  51. a$(7)=e$:(c.g$,pw$,-1) :a$(8)=e$:(c.h$,pw$,-1) :a$(9)=e$:(c.i$,pw$,-1)
  52. a$(10)=e$:(c.j$,pw$,-1) :a$(11)=e$:(c.k$,pw$,-1) :a$(12)=e$:(c.l$,pw$,-1)
  53. a$(13)=e$:(c.m$,pw$,-1) :a$(14)=e$:(c.n$,pw$,-1) :a$(15)=e$:(c.o$,pw$,-1)
  54. a$(16)=e$:(c.p$,pw$,-1) :a$(17)=e$:(c.q$,pw$,-1) :a$(18)=e$:(c.r$,pw$,-1)
  55. a$(19)=e$:(c.s$,pw$,-1)
  56. dinit"Account Number Database"
  57. dtext"","Bank Accounts",$102
  58. dedit a$(1),n$(1)
  59. dedit a$(2),n$(2)
  60. dedit a$(3),n$(3)
  61. dedit a$(4),n$(4)
  62. d%=dialog
  63. dinit"Account Number Database"
  64. dtext"","Credit Card Accounts",$102
  65. dedit a$(5),n$(5)
  66. dedit a$(6),n$(6)
  67. dedit a$(7),n$(7)
  68. dedit a$(8),n$(8)
  69. dedit a$(9),n$(9)
  70. l%=dialog
  71. if n$(10)+n$(11)+n$(12)+n$(13)+n$(14)<>""
  72. dinit"Account Number Database"
  73. dtext"","Phone/Gas Accounts",$102
  74. dedit a$(10),n$(10)
  75. dedit a$(11),n$(11)
  76. dedit a$(12),n$(12)
  77. dedit a$(13),n$(13)
  78. dedit a$(14),n$(14)
  79. j%=dialog
  80. endif
  81. if n$(15)+n$(16)+n$(17)+n$(18)+n$(19)<>""
  82. dinit"Account Number Database"
  83. dtext"","Phone/Gas Accounts",$102
  84. dedit a$(15),n$(15)
  85. dedit a$(16),n$(16)
  86. dedit a$(17),n$(17)
  87. dedit a$(18),n$(18)
  88. dedit a$(19),n$(19)
  89. r%=dialog
  90. endif
  91. if l% or d% or j% or r%
  92. beep 5,250
  93. dinit"Changes have been made!"
  94. dtext"","Save with changes?",2
  95. dbuttons "(Yes)",%Y,"(Yes - New PW)",%P,"Cancel",-27
  96. d%=dialog
  97. if d%=0 :goto top
  98. elseif d%=%y
  99.  goto save
  100. endif
  101. pw1::
  102. pw$=""
  103. dinit"Enter Password"
  104. dxinput pw$,"Password:"
  105. if dialog=0 :goto top :endif
  106. dinit"Enter again to verify"
  107. dxinput ch$,"Password:"
  108. if dialog=0 :goto top :endif
  109. if ch$<>pw$
  110.  giprint"Incorrect password..."
  111.  goto pw1
  112. endif
  113. save::
  114. giprint"Saving..."
  115. c.a$=e$:(a$(1),pw$,1) :c.b$=e$:(a$(2),pw$,1) :c.c$=e$:(a$(3),pw$,1)
  116. c.d$=e$:(a$(4),pw$,1) :c.e$=e$:(a$(5),pw$,1) :c.f$=e$:(a$(6),pw$,1)
  117. c.g$=e$:(a$(7),pw$,1) :c.h$=e$:(a$(8),pw$,1) :c.i$=e$:(a$(9),pw$,1)
  118. c.j$=e$:(a$(10),pw$,1) :c.k$=e$:(a$(11),pw$,1) :c.l$=e$:(a$(12),pw$,1)
  119. c.m$=e$:(a$(13),pw$,1) :c.n$=e$:(a$(14),pw$,1) :c.o$=e$:(a$(15),pw$,1)
  120. c.p$=e$:(a$(16),pw$,1) :c.q$=e$:(a$(17),pw$,1) :c.r$=e$:(a$(18),pw$,1)
  121. c.s$=e$:(a$(19),pw$,1)
  122.  update
  123.  giprint"Changes saved..."
  124. else giprint"No changes made!"
  125. endif
  126. goto top
  127. endp
  128.  
  129. Proc E$:(DATA$,PASS$,FUNC%)
  130. LOCAL COUNT%,PASS%,CHR%
  131. LOCAL NDATA$(253)
  132. IF (FUNC%<>1) AND (FUNC%<>-1)
  133.  RAISE 226
  134. ENDIF
  135. COUNT%=LEN(PASS$)
  136. WHILE COUNT%>0
  137.  PASS%=PASS%+ASC(MID$(PASS$,COUNT%,1))-COUNT%
  138.  COUNT%=COUNT%-1
  139. ENDWH
  140. RANDOMIZE PASS%
  141. COUNT%=LEN(DATA$)
  142. WHILE COUNT%>0
  143.  CHR%=ASC(MID$(DATA$,COUNT%,1))+INT(RND*91)*FUNC%
  144.  CHR%=CHR%+((CHR%>122)*91)-((CHR%<32)*91)
  145.  COUNT%=COUNT%-1
  146.  NDATA$=CHR$(CHR%)+NDATA$
  147. ENDWH
  148. RETURN NDATA$
  149. Endp
  150.  
  151. Proc Setname$:
  152. local r%,d%,l%,j%,p$(25)
  153. p$="Personalize Account Names"
  154. use a
  155. n$(1)=a.a$ :n$(2)=a.b$ :n$(3)=a.c$ :n$(4)=a.d$
  156. n$(5)=a.e$ :n$(6)=a.f$ :n$(7)=a.g$ :n$(8)=a.h$
  157. n$(9)=a.i$ :n$(10)=a.j$ :n$(11)=a.k$ :n$(12)=a.l$
  158. n$(13)=a.m$ :n$(14)=a.n$ :n$(15)=a.o$ :n$(16)=a.p$
  159. n$(17)=a.q$ :n$(18)=a.r$ :n$(19)=a.s$
  160. dinit"Setup: Account Manager"
  161. dtext"","Enter the names of your accounts and"
  162. dtext"","they will be used as the headings when"
  163. dtext"","entering account number information."
  164. dbuttons "Continue",13,"Cancel",-27
  165. if dialog=0 :return :endif
  166. dinit p$
  167. dtext"","Bank Accounts",$102
  168. dedit n$(1),"1"
  169. dedit n$(2),"2"
  170. dedit n$(3),"3"
  171. dedit n$(4),"4"
  172. d%=dialog
  173. dinit p$
  174. dtext"","Credit Card Accounts",$102
  175. dedit n$(5),"5"
  176. dedit n$(6),"6"
  177. dedit n$(7),"7"
  178. dedit n$(8),"8"
  179. dedit n$(9),"9"
  180. l%=dialog
  181. dinit p$
  182. dtext"","Phone/Gas Accounts",$102
  183. dedit n$(10),"10"
  184. dedit n$(11),"11"
  185. dedit n$(12),"12"
  186. dedit n$(13),"13"
  187. dedit n$(14),"14"
  188. j%=dialog
  189. dinit p$
  190. dtext"","Phone/Gas Accounts",$102
  191. dedit n$(15),"15"
  192. dedit n$(16),"16"
  193. dedit n$(17),"17"
  194. dedit n$(18),"18"
  195. dedit n$(19),"19"
  196. r%=dialog
  197. if sum(j%,l%,d%,r%)>0
  198. dinit"Save Changes?"
  199. dbuttons "Yes",%Y,"No",%N
  200. r%=dialog
  201. if r%<>%y :giprint"No chamges made..." :return :endif
  202. a.a$=n$(1) :a.b$=n$(2) :a.c$=n$(3) :a.d$=n$(4)
  203. a.e$=n$(5) :a.f$=n$(6) :a.g$=n$(7) :a.h$=n$(8)
  204. a.i$=n$(9) :a.j$=n$(10) :a.k$=n$(11) :a.l$=n$(12)
  205. a.m$=n$(13) :a.n$=n$(14) :a.o$=n$(15) :a.p$=n$(16)
  206. a.q$=n$(17) :a.r$=n$(18) :a.s$=n$(19)
  207. giprint"Saving..."
  208. if count
  209.  update
  210. else
  211.  append
  212. endif
  213. else giprint"No chamges made..."
  214. endif
  215. Endp
  216.  
  217. Proc help:
  218. dinit
  219. dtext"","Help: Account Number Manager",$302
  220. dtext"","This utility helps to get your vital",2
  221. dtext"","info as fast as possible. To use it start",2
  222. dtext"","out by going to Setup and personalizing",2
  223. dtext"","your account names. These will show up",2
  224. dtext"","in the program next to the account num's",2
  225. dtext"","so you'll know what you're looking at.",2
  226. dialog
  227. dinit
  228. dtext"","Help: Account Number Manager",$302
  229. dtext"","Note that this software uses data",2
  230. dtext"","encryption which is unlocked by the",2
  231. dtext"","password that you use. If you forget",2
  232. dtext"","it, you'll have to start over since",2
  233. dtext"","it will be impossible to unlock the",2
  234. dtext"","data again.",2
  235. dialog
  236. dinit
  237. dtext"","Hope you like it!",$302
  238. dtext"","Freeware from",$2
  239. dtext"","Pelican Software Inc."
  240. dialog
  241. Endp
  242.