home *** CD-ROM | disk | FTP | other *** search
/ Needle Craft Plus / NeedleCraftPlusVolume1.iso / win / tshirt10 / giftdial.scr < prev    next >
Text File  |  1995-02-17  |  10KB  |  490 lines

  1. >; WARNING
  2. >;
  3. >; if you modify this file Electronic orders will fail
  4. >; Reinstall to correct this file
  5. >;
  6. >; Remove Softerm's log file
  7. > DELETE('SOFTERM.MSG')
  8. > watch(ON,OFF,3)
  9. > GOTO Start
  10.  
  11. >Abort:
  12. > WHY=VALTOSTR(ERRORLEVEL)
  13. > IF(CONNECT==FALSE)
  14.  
  15. >QuickDeath:
  16. >    PAUSE(2)
  17. >    EXIT
  18. > ENDIF
  19. > GOTO exitout
  20.  
  21. >ForceExit:
  22. > WHY=VALTOSTR(ERRORLEVEL)
  23. > IF(CONNECT==FALSE)
  24. >    GOTO QuickDeath
  25. > ENDIF
  26. > GOTO Killit
  27.  
  28. >orderfail:
  29. > WHY=VALTOSTR(ERRORLEVEL)
  30. > GOTO exitout
  31.  
  32. >newsfail:
  33. > WHY=VALTOSTR(ERRORLEVEL)
  34. > NEWSFILE='DOWNLOAD_FAILED'
  35. > GOTO exitout
  36.  
  37. >updatefail:
  38. > WHY=VALTOSTR(ERRORLEVEL)
  39. > UPDATEFILE='UPDATE_FAILED'
  40.  
  41. >exitout:
  42. > CS='HUNGUP'
  43. > login=XMIT_WAIT('/GO TOP'+eol,,'exit): ')
  44. > if(login!=1)
  45. >    goto Die
  46. > ENDIF
  47. > ct=1
  48.  
  49. >loop2:
  50. > IF(CONNECT==FALSE)
  51. >    GOTO QuickDeath
  52. > ENDIF
  53. > IF(CONFIRMDISCON=='')
  54. >    ct=ct+1
  55. >    PAUSE(1)
  56. >    if(ct==5)
  57. >        GOTO Die
  58. >    ENDIF
  59. >    GOTO loop2
  60. > ENDIF
  61.  
  62. >Die:
  63. > IF(CONNECT==FALSE)
  64. >    GOTO QuickDeath
  65. > ENDIF
  66. > login=XMIT_WAIT('x'+eol,,'logon)? ')
  67. > if(login==1)
  68. >    XMIT_WAIT('y'+eol,,)
  69. > ENDIF
  70.  
  71. >Killit:
  72. > PAUSE(1)
  73. > HANGUP()
  74. > PAUSE(3)
  75. > EXIT
  76.  
  77. > Start:
  78. > WHY='OK'
  79. > ready='NO'
  80. > CS='DIALING'
  81. > ORDERSOURCE=''
  82. > ORDERDESTIN=''
  83. > NEWSOPTION=''
  84. > NEWSFILE=''
  85. > UPDATEOPTION=''
  86. > UPDATEFILE=''
  87. > CONFIRMDISCON=''
  88. > USERABORT='NO'
  89. > DOWNLOADTIME='0'
  90. > GETUPDATE=''
  91. > UPTIME=''
  92. > userid=''
  93. > passwrd=''
  94. > bbs_number=SV1
  95. > eol='[CR]'
  96. > ct=0
  97. > usercnt=0
  98. > ONERR NoDial 
  99. > RETRIES=1
  100. > TIMEOUT=20
  101. > DIAL(,bbs_number,,)
  102. > if(USERABORT=='YES')
  103. >    GOTO Killit
  104. > ENDIF
  105. > IF(CONNECT==FALSE)
  106.  
  107. >NoDial:
  108. >    CS='FAILED_DIAL'         
  109. >    PAUSE(2)
  110. >    EXIT
  111. > ENDIF
  112. > ONERR ForceExit
  113. > CS='SYNC1'
  114.  
  115. >rdyloop:
  116. >  if(USERABORT=='YES')
  117. >    GOTO Killit
  118. >  ENDIF
  119. >  IF(CONNECT==FALSE)
  120. >    GOTO QuickDeath
  121. >  ENDIF
  122. >  if(ready=='NO')
  123. >    PAUSE(1)
  124. >    GOTO rdyloop
  125. >  ENDIF
  126.  
  127. >  CS='CONNECTING'
  128. >  RETRIES=3
  129. >  TIMEOUT=20
  130. >  Baseid=userid
  131.  
  132. >loginloop:
  133. > if(USERABORT=='YES')
  134. >    GOTO Killit
  135. > ENDIF
  136. > ct=ct+1
  137. > IF(ct==5)
  138. >    GOTO Abort
  139. > ENDIF
  140. > login=XMIT_WAIT(eol,,'identity','new','word: ','another User-ID')
  141. > IF(login==0)
  142. >    GOTO loginloop
  143. > ENDIF
  144. > ON(login,killit,send_user,send_pass,send_user)
  145.  
  146. >loginalt:
  147. > newchar=usercnt+65
  148. > userid=Baseid+VALTOCHR(newchar)
  149.  
  150. >send_user:
  151. > usercnt=usercnt+1
  152. > if(usercnt==5||USERABORT=='YES')
  153. >    GOTO Killit
  154. > ENDIF
  155. > login=XMIT_WAIT(userid+eol,,'identity','word: ','new','another User-ID')
  156. > IF(login==0)
  157. >    GOTO loginalt
  158. > ENDIF
  159. > ON(login,killit,send_pass,send_user,loginalt)
  160.  
  161. >send_pass:
  162. > COMMAND=passwrd+eol
  163.  
  164. >sendit:
  165. > if(USERABORT=='YES'||CONNECT==FALSE)
  166. >    GOTO Killit
  167. > ENDIF
  168. > login=XMIT_WAIT(COMMAND,,'three','exit): ','quit.','incorrect')
  169. > ON(login,Killit,doorder,dospace,send_pass)
  170.  
  171. >sendit2:
  172. > if(USERABORT=='YES'||CONNECT==FALSE)
  173. >    GOTO Abort
  174. > ENDIF
  175. > login=XMIT_WAIT(COMMAND,,'exit): ','quit.')
  176. > ON(login,doorder,dospace)
  177.  
  178. >dospace:
  179. > ONERR Abort
  180. > COMMAND=' '
  181. > GOTO sendit
  182.  
  183. >doorder:
  184. > ONERR Abort
  185. > if(USERABORT=='YES'||CONNECT==FALSE)
  186. >    GOTO Abort
  187. > ENDIF
  188. > CS='READYTOSEND'
  189. > IF(ORDERSOURCE==''&&ORDERDESTIN=='')
  190. >    COMMAND='/GO TOP'+eol
  191. >    GOTO sendit2
  192. > ENDIF
  193. > IF(ORDERSOURCE=='NO_UPLOAD')
  194. >    GOTO gonews
  195. > ENDIF
  196. > INFOSTRING=FIRSTFILE(ORDERSOURCE,FILEDEF)
  197. > CLOSE(FILEDEF)
  198. > InfoLen=GETLENGTH(INFOSTRING)
  199. > IF(InfoLen==0)
  200. >    GOTO exitout
  201. > ENDIF
  202. > uplen=STRTOVAL(STRGET1(INFOSTRING,14,8))
  203. > login=uplen/(BAUD*6)
  204. > if(login==0)
  205. >    login=1
  206. > ENDIF
  207. > UPTIME=VALTOSTR(login)
  208. > CS='SYNC2'
  209.  
  210. >uploop:
  211. > if(UPTIME!='YES'&&UPTIME!='NO')
  212. >    if(USERABORT=='YES'||CONNECT==FALSE)
  213. >        GOTO Abort
  214. >    ENDIF
  215. >    pause(1)
  216. >    GOTO uploop
  217. > ENDIF
  218. > if(UPTIME=='NO')
  219. >    GOTO exitout
  220. > ENDIF
  221. > CS='SENDING'
  222. > count=0
  223.  
  224. >retryu:
  225. > login=XMIT_WAIT('u'+eol,,'exit: ','exit):')
  226. > if(login==0)
  227. >    GOTO orderfail
  228. > ENDIF
  229. > if(login==2)
  230. >    count=count+1
  231. >    if(count==5)
  232. >        GOTO orderfail
  233. >    ENDIF
  234. >    GOTO retryu
  235. > ENDIF
  236. > login=XMIT_WAIT(ORDERDESTIN+eol,,'exit): ')
  237. > if(login==0)
  238. >    GOTO orderfail
  239. > ENDIF
  240. > login=XMIT_WAIT('z'+eol,,'abort)')
  241. > if(login==0)
  242. >    GOTO orderfail
  243. > ENDIF
  244. > if(USERABORT=='YES')
  245. >    GOTO Abort
  246. > ENDIF
  247. > ONERR orderfail
  248. > if(uplen>2048)
  249. >    send('Zmodem',ORDERSOURCE,ORDERDESTIN,,on,off)
  250. > else
  251. >    send('Zmodem',ORDERSOURCE,ORDERDESTIN,,off,off)
  252. > ENDIF
  253. > ONERR Abort
  254. > CS='NEWS'
  255. > ct=1
  256.  
  257. >backloop:
  258. > if(USERABORT=='YES'||CONNECT==FALSE)
  259. >    GOTO Abort
  260. > ENDIF
  261. > login=XMIT_WAIT(eol,,'exit: ','elp: ','exit): ', 'agin? ')
  262. > if(login==0)
  263. >    ct=ct+1
  264. >    if(ct==5)
  265. >        GOTO exitout
  266. >    ENDIF
  267. >    GOTO backloop
  268. > ENDIF
  269. > ON(login,gotop,gotop,gonews,Abort)
  270.  
  271. >gotop:
  272. > ct=1
  273.  
  274. >toploop:
  275. > if(USERABORT=='YES'||CONNECT==FALSE)
  276. >    GOTO Abort
  277. > ENDIF
  278. > login=XMIT_WAIT('/GO TOP'+eol,,'exit): ','exit: ', 'elp: ')
  279. > if(login==0)
  280. >    ct=ct+1
  281. >    if(ct==5)
  282. >        GOTO exitout
  283. >    ENDIF
  284. >    GOTO toploop
  285. > ENDIF
  286. > ON(login,gonews,toploop,toploop)
  287.  
  288. >gonews:
  289. > ONERR newsfail
  290. > if(USERABORT=='YES'||CONNECT==FALSE)
  291. >    GOTO Abort
  292. > ENDIF
  293. > login=XMIT_WAIT('D'+eol,,'ss RETURN: ','exit: ')
  294. > if(login<2)
  295. >    GOTO exitout
  296. > ENDIF
  297.  
  298. >checknews:
  299. > cs='CHECKNEWS'
  300. > StrSPos=STRFIND1(RXDATA,'A ',1)
  301. > StrSPos=StrSpos+2
  302. > StrEPos=STRFIND1(RXDATA,':',1)
  303. > StrEPos=StrEpos+2
  304. > StrLen=StrEPos-StrSPos
  305. > NewsInfo=STRGET1(RXDATA,StrSPos,StrLen)
  306. > StrEPos=STRFIND1(NewsInfo,' ',1)
  307. > FINDFILE=STRGET1(NewsInfo,1,StrEPos)
  308. > NEWSFILE=PATH+'\'+FINDFILE
  309. > INFOSTRING=FIRSTFILE(NEWSFILE,FILEDEF)
  310. > CLOSE(FILEDEF)
  311. > InfoLen=GETLENGTH(INFOSTRING)
  312. > IF(InfoLen==0)
  313. >    GOTO GetNews
  314. > ENDIF
  315. > StrSPos=STRFIND1(NewsInfo,'/',1)
  316. > StrSPos=StrSpos-2
  317. > NewsDateStr=STRGET1(NewsInfo,StrSPos,8)
  318. > StrSPos=StrSpos+10
  319. > NewsTimeStr=STRGET1(NewsInfo,StrSPos,5)
  320. > FoundDateStr=STRGET1(INFOSTRING,23,8)
  321. > FoundTimeStr=STRGET1(INFOSTRING,32,5)
  322. > IF(STRTOVAL(STRGET1(NewsDateStr,7,2))>STRTOVAL(STRGET1(FoundDateStr,7,2)))
  323. >    GOTO GetNews
  324. > ENDIF
  325. > IF(STRTOVAL(STRGET1(NewsDateStr,7,2))==STRTOVAL(STRGET1(FoundDateStr,7,2)))
  326. >    IF(STRTOVAL(STRGET1(NewsDateStr,1,2))>STRTOVAL(STRGET1(FoundDateStr,1,2)))
  327. >        GOTO GetNews
  328. >    ENDIF
  329. > ENDIF
  330. > IF(STRTOVAL(STRGET1(NewsDateStr,7,2))==STRTOVAL(STRGET1(FoundDateStr,7,2)))
  331. >    IF(STRTOVAL(STRGET1(NewsDateStr,1,2))==STRTOVAL(STRGET1(FoundDateStr,1,2)))
  332. >        IF(STRTOVAL(STRGET1(NewsDateStr,4,2))>STRTOVAL(STRGET1(FoundDateStr,4,2)))
  333. >            GOTO GetNews
  334. >        ENDIF
  335. >    ENDIF
  336. > ENDIF
  337. > NEWSFILE='NO_NEW_NEWS'
  338. > NEWSOPTION=''
  339. > GOTO exitout
  340.  
  341. >GetNews:
  342. > CS='NEWNEWS'
  343. > if(USERABORT=='YES'||CONNECT==FALSE)
  344. >    GOTO Abort
  345. > ENDIF
  346. > IF(NEWSOPTION=='NO_NEWS')
  347. >    NEWSOPTION='NEW_NEWS'
  348. >    GOTO goupdate
  349. > ENDIF
  350. > login=XMIT_WAIT('a'+eol,,'(X)it? ')
  351. > if(login==0)
  352. >    GOTO exitout
  353. > ENDIF
  354. > if(USERABORT=='YES'||CONNECT==FALSE)
  355. >    GOTO Abort
  356. > ENDIF
  357. > login=XMIT_WAIT('d'+eol,,'exit): ')
  358. > if(login==0)
  359. >    GOTO exitout
  360. > ENDIF
  361. > if(USERABORT=='YES'||CONNECT==FALSE)
  362. >    GOTO Abort
  363. > ENDIF
  364. > login=XMIT_WAIT('z'+eol,,'abort)')
  365. > if(login==0)
  366. >    GOTO exitout
  367. > ENDIF
  368. > if(USERABORT=='YES'||CONNECT==FALSE)
  369. >    GOTO Abort
  370. > ENDIF
  371. > receive('Zmodem',FINDFILE,NEWSFILE,replace,,off,off)
  372. > ONERR updatefail
  373.  
  374. >goupdate:
  375. > CS='UPDATE'
  376.  
  377. >Gouptop:
  378. > if(USERABORT=='YES'||CONNECT==FALSE)
  379. >    GOTO Abort
  380. > ENDIF
  381. > login=XMIT_WAIT('/GO TOP'+eol,,'exit): ','exit: ')
  382. > ON(login,doupdate,goupdate)
  383. > if(login==0)
  384. >    GOTO Gouptop
  385. > ENDIF
  386.  
  387. >doupdate:
  388. > login=XMIT_WAIT('G'+eol,,'exit: ')
  389. > if(login==0)
  390. >    GOTO exitout
  391. > ENDIF
  392.  
  393. >CheckUpdate:
  394. > StrSPos=STRFIND1(RXDATA,'A ',1)
  395. > StrSPos=StrSpos+2
  396. > StrEPos=STRFIND1(RXDATA,':',1)
  397. > StrEPos=StrEPos+2
  398. > StrLen=StrEPos-StrSPos
  399. > NewsInfo=STRGET1(RXDATA,StrSPos,StrLen)
  400. > UpdateSize=STRTOVAL(STRGET1(NewsInfo,14,9))
  401. > login=UpdateSize/(BAUD*6)
  402. > if(login==0)
  403. >    login=1
  404. > ENDIF
  405. > DOWNLOADTIME=VALTOSTR(login)
  406. > StrEPos=STRFIND1(NewsInfo,' ',1)
  407. > FINDFILE=STRGET1(NewsInfo,1,StrEPos)
  408. > UPDATEFILE=PATH+'\'+FINDFILE
  409. > INFOSTRING=FIRSTFILE(UPDATEFILE,FILEDEF)
  410. > CLOSE(FILEDEF)
  411. > InfoLen=GETLENGTH(INFOSTRING)
  412. > if(InfoLen==0)
  413. >    GOTO GetUpdate
  414. > ENDIF
  415. > StrSPos=STRFIND1(NewsInfo,'/',1)
  416. > StrSPos=StrSpos-2
  417. > NewsDateStr=STRGET1(NewsInfo,StrSPos,8)
  418. > StrSPos=StrSpos+10
  419. > NewsTimeStr=STRGET1(NewsInfo,StrSPos,5)
  420. > FoundDateStr=STRGET1(INFOSTRING,23,8)
  421. > FoundTimeStr=STRGET1(INFOSTRING,32,5)
  422. > IF(STRTOVAL(STRGET1(NewsDateStr,7,2))>STRTOVAL(STRGET1(FoundDateStr,7,2)))
  423. >    GOTO GetUpdate
  424. > ENDIF
  425. > IF(STRTOVAL(STRGET1(NewsDateStr,7,2))==STRTOVAL(STRGET1(FoundDateStr,7,2)))
  426. >    IF(STRTOVAL(STRGET1(NewsDateStr,1,2))>STRTOVAL(STRGET1(FoundDateStr,1,2)))
  427. >        GOTO GetUpdate
  428. >    ENDIF
  429. > ENDIF
  430. > IF(STRTOVAL(STRGET1(NewsDateStr,7,2))==STRTOVAL(STRGET1(FoundDateStr,7,2)))
  431. >    IF(STRTOVAL(STRGET1(NewsDateStr,1,2))==STRTOVAL(STRGET1(FoundDateStr,1,2)))
  432. >        IF(STRTOVAL(STRGET1(NewsDateStr,4,2))>STRTOVAL(STRGET1(FoundDateStr,4,2)))
  433. >            GOTO GetUpdate
  434. >        ENDIF
  435. >    ENDIF
  436. > ENDIF
  437. > UPDATEFILE='NO_NEW_UPDATE'
  438. > GOTO exitout
  439.  
  440. >GetUpdate:
  441. > if(USERABORT=='YES'||CONNECT==FALSE)
  442. >    GOTO Abort
  443. > ENDIF
  444. > CS='SYNC3'
  445.  
  446. >UserLoop:
  447. > if(GETUPDATE=='')
  448. >    pause(2)
  449. >    if(USERABORT=='YES'||CONNECT==FALSE)
  450. >        GOTO Abort
  451. >    ENDIF
  452. >    GOTO UserLoop
  453. > ENDIF
  454. > if(GETUPDATE=='NO')
  455. >    GOTO exitout
  456. > ENDIF
  457. > IF(UPDATEOPTION=='NO_UPDATE')
  458. >    NEWSOPTION='NEW_UPDATE'
  459. >    GOTO exitout
  460. > ENDIF
  461. > CS='GETUPDATE'
  462. > login=XMIT_WAIT('a'+eol,,'(X)it? ')
  463. > if(login==0)
  464. >    GOTO exitout
  465. > ENDIF
  466. > if(USERABORT=='YES'||CONNECT==FALSE)
  467. >    GOTO Abort
  468. > ENDIF
  469. > login=XMIT_WAIT('d'+eol,,'exit): ')
  470. > if(login==0)
  471. >    GOTO exitout
  472. > ENDIF
  473. > if(USERABORT=='YES'||CONNECT==FALSE)
  474. >    GOTO Abort
  475. > ENDIF
  476. > login=XMIT_WAIT('z'+eol,,'abort)')
  477. > if(login==0)
  478. >    GOTO exitout
  479. > ENDIF
  480. > if(USERABORT=='YES'||CONNECT==FALSE)
  481. >    GOTO Abort
  482. > ENDIF
  483. > if(UpdateSize>2048)
  484. >    receive('Zmodem',FINDFILE,UPDATEFILE,replace,,on,off)
  485. > else
  486. >    receive('Zmodem',FINDFILE,UPDATEFILE,replace,,off,off)
  487. > ENDIF
  488. > GOTO exitout
  489.  
  490.