home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Media Share 9
/
MEDIASHARE_09.ISO
/
clarion
/
tools.zip
/
GETPASS.FUN
< prev
next >
Wrap
Text File
|
1988-10-20
|
7KB
|
97 lines
!VERSION 1.C - WED MAY 25,1988-3:24PM
!-------------------------------------------------------------------------------
! GET PASSWORD IN BLANK FIELD DISPLAY
!-------------------------------------------------------------------------------
GETPASS FUNCTION(OPTION,PASSIN,MSG)
PASSSCR SCREEN WINDOW(5,28),PRE(SCN),HLP('NOT_AVAL'),HUE(7,0,0)
ROW(1,2) STRING('╔═{24}╗'),ENH
ROW(2,2) REPEAT(2),EVERY(2);STRING('║<0{24}>║'),ENH .
ROW(3,2) STRING('╟─{24}╢'),ENH
ROW(5,2) STRING('╚═{24}╝'),ENH
ROW(2,4) STRING('Password:')
REPEAT(1,10),INDEX(IDX)
COL(13) PAUSE(' '),USE(?PAUSE),REV
.
REPEAT(1,10),INDEX(IDX)
DCHAR COL(13) STRING(1)
.
MESSAGE ROW(4,3) STRING(24)
.
PASSIN EXTERNAL !STRING(10)
INPUT GROUP
CHARS STRING(1),DIM(10)
.
MSG STRING(8)
IDX SHORT
RETYRIES SHORT
OPTION SHORT
CODE
OPEN(PASSSCR) !OPEN WINDOW
IDX = 0 !CLEAR FIELD
RETYRIES = 0 !CLEAR FIELD
INPUT = '' !CLEAR FIELD
SCN:MESSAGE = 'Enter ' & CLIP(MSG) & ' Password'
SCN:MESSAGE = CENTER(SCN:MESSAGE)
CASE OPTION !WHICH OPTION
OF 0 !GET PASSWORD
LOOP
ACCEPT !GET A KEY
DCHAR = '.' !DON'T SHOW CHARACTER
CASE KEYCODE() !WHICH KEY
OF ENTER_KEY !ENTER KEY
IF UPPER(CLIP(PASSIN)) = UPPER(CLIP(INPUT)) THEN RETURN(0).
RETYRIES += 1 !UP COUNT
IF RETYRIES = PRO:PASSRETRIES THEN !TRY AGAIN
RETURN(1) !RETURN ERROR
ELSE
INPUT = '' !CLEAR FIELD
IDX = 0 !SET AT BEGINNING
BLANK(ROW(DCHAR),COL(DCHAR),1,10) !BLANK AREA
BEEP
. !END IF
OF BS_KEY !RESTART INPUT
INPUT = '' !CLEAR FIELD
IDX = 0 !SET AT BEGINNING
BLANK(ROW(DCHAR),COL(DCHAR),1,10) !BLANK AREA
ELSE
CHARS[IDX] = CHR(KEYCODE()) !PUT CHAR IN BUFFER
. . !END LOOP, CASE
OF 1 !GET NEW PASSWORD
LOOP
ACCEPT !GET A KEY
DCHAR = '.' !DON'T SHOW CHARACTER
CASE KEYCODE() !WHICH KEY
OF ENTER_KEY !ENTER KEY
IF CLIP(INPUT) = '' THEN
RETURN(1) !RETURN ERROR
ELSE
PASSIN = UPPER(INPUT) !GET NEW PASSWORD
RETURN(0) !RETURN NEW PASSWORD
. !END IF
OF BS_KEY !RESTART INPUT
INPUT = '' !CLEAR FIELD
IDX = 0 !SET AT BEGINNING
BLANK(ROW(DCHAR),COL(DCHAR),1,10) !BLANK AREA
ELSE
CHARS[IDX] = CHR(KEYCODE()) !PUT CHAR IN BUFFER
. . !END LOOP, CASE
. !END CASE