Pass Generator — File Browser
PassGeneratorv2.0 / PassGeneratorv2.0 / passgen.mrc
passgen.mrc — 3.69 KB — Download this file
;PassGen 2.0
;By Lime
;Use /passgen to open dialog
alias genpass {
did -r passgen 2
var %a 0
var %b $did(passgen,1)
var %last none
while (%a < %b) {
inc %a
:start
if ($did(passgen,3).state == 1) var %w $rand(0,9)
if ($did(passgen,4).state == 1) {
if ($did(passgen,5).sel == 1) var %x $rand(A,Z)
if ($did(passgen,5).sel == 2) var %x $rand(a,z)
if ($did(passgen,5).sel == 3) {
var %i $rand(1,2)
if (%i == 1) var %x $rand(A,Z)
else var %x $rand(a,z)
}
}
if ($did(passgen,10).state == 1) {
var %i $rand(1,2)
if (%i == 1) var %y $chr(45)
else var %y $chr(95)
}
if ($did(passgen,3).state == 1) && ($did(passgen,4).state == 1) var %z $rand(1,2)
if ($did(passgen,3).state == 1) && ($did(passgen,4).state == 0) var %z 1
if ($did(passgen,3).state == 0) && ($did(passgen,4).state == 1) var %z 2
if ($did(passgen,10).state == 1) {
if ($did(passgen,3).state == 0) && ($did(passgen,4).state == 0) var %z 3
else {
var %i $rand(1,5)
if (%i == 5) var %z 3
}
}
if (%z == 1) {
if (%w == %last) goto start
else did -a passgen 2 %w
var %last %w
}
if (%z == 2) {
if (%x == %last) goto start
else did -a passgen 2 %x
var %last %x
}
if (%z == 3) {
if (%y == %last) goto start
else did -a passgen 2 %y
var %last %y
}
}
}
alias passgen {
dialog -m passgen passgen
}
menu nicklist,status,channel {
PassGen:/passgen
}
dialog passgen {
title "PassGen v.2.0"
size -1 -1 79 114
option dbu
edit "", 1, 30 7 43 10
edit "", 2, 5 85 69 10, autohs
check "Numbers", 3, 31 19 32 10
check "Letters", 4, 31 29 36 10
button "Start!", 8, 20 62 36 12, disable
button "Copy", 9, 3 100 32 12
button "Done", 12, 43 100 32 12, ok
box "Setup", 13, 2 0 75 77
text "Include:", 15, 8 19 21 8, right
text "Size Limit:", 16, 4 8 25 8, right
check "Symbols", 10, 31 51 31 10
box "Password:", 11, 2 77 75 21
combo 5, 31 39 42 36, size drop
}
on *:dialog:passgen:init:*: {
did -a $dname 5 Up. Case
did -a $dname 5 Lw. Case
did -a $dname 5 Mixed
did -c $dname 3,4,5 3
}
on *:dialog:passgen:edit:1: {
if ($did($dname,1) !isnum) did -ra $dname 1 $left($did($dname,1),$calc($len($did($dname,1)) - 1))
if ($len($did($dname,1)) > 0) {
if ($did($dname,3).state == 1) || ($did($dname,4).state == 1) || ($did($dname,10).state == 1) did -e $dname 8
}
if ($len($did($dname,1)) == 0) did -b $dname 8
}
on *:dialog:passgen:sclick:3: {
if ($did($dname,3).state == 0) {
if ($did($dname,4).state == 0) && ($did($dname,10).state == 0) did -b $dname 8
}
if ($did($dname,3).state == 1) {
if ($len($did($dname,1).text) > 0) did -e $dname 8
}
}
on *:dialog:passgen:sclick:4: {
if ($did($dname,4).state == 0) {
did -bu $dname 5,
if ($did($dname,10).state == 0) && ($did($dname,3).state == 0) did -b $dname 8
}
if ($did(passgen,4).state == 1) {
did -e $dname 5
did -c $dname 5 3
if ($len($did($dname,1).text) > 0) did -e $dname 8
}
}
on *:dialog:passgen:sclick:8:genpass
on *:dialog:passgen:sclick:9:clipboard $did($dname,2)
on *:dialog:passgen:sclick:10: {
if ($did($dname,10).state == 0) {
if ($did($dname,3).state == 0) && ($did($dname,4).state == 0) did -b $dname 8
}
if ($did($dname,10).state == 1) {
if ($len($did($dname,1).text) > 0) did -e $dname 8
}
}
on *:load: {
echo -a PassGen has been loaded. To start using PassGen, type /passgen or select the Passgen option in a popup menu.
passgen
}
on *:unload:echo -a PassGen has been unloaded.