OP
Hoopy frood
Joined: Aug 2004
Posts: 7,252 |
No difference. As to my dialog, here's the relevant portions alias obs {
dialog -md Observer Observer
}
dialog Observer {
title "Observer"
size -1 -1 340 175
option dbu
button "Cancel", 1, 10 40 20 10, cancel
button "OK", 2, 40 40 20 10, ok
button Store New Info, 3, 10 60 50 10, default
text "Rte", 4, 10 10 20 10
combo 5, 30 10 30 10, edit drop
text "Account", 6, 10 20 20 10
combo 7, 30 20 60 10, edit drop
text "Name", 8, 100 12 25 8
edit "", 9, 130 10 95 10, autohs
text "Address", 10, 100 22 25 8
edit "", 11, 130 20 50 10, autohs
text "Apt.", 12, 185 22 15 8
edit "", 13, 205 20 20 10, autohs
text "Phone", 14, 100 32 25 8
edit "", 15, 130 30 50 10, autohs
combo 16, 130 40 50 10, edit drop
check "Active", 17, 185 32 25 8, left
text "Billing", 19, 115 105 50 10, center
text "Delivery", 20, 100 42 25 8
text "Expires", 21, 185 40 50 8, center
edit "", 22, 185 50 50 10, autohs right
text "Start", 23, 5 105 50 10, center
text "Stop", 24, 60 105 50 10, center
edit "", 34, 130 60 50 10, right
text "Balance", 28, 100 62 25 8
text "Pay Date", 29, 225 105 50 10, center
text "Billing", 30, 100 52 25 8
list 18, 5 115 50 50, size extsel
text "Delivery", 36, 170 105 50 10, center
list 37, 60 115 50 50, size extsel
list 38, 115 115 50 50, size extsel
list 39, 225 115 50 50, size extsel
text "Payment", 41, 100 72 25 8
edit "", 42, 130 70 50 10, autohs right
list 43, 170 115 50 50, size extsel
text "Pay Amount", 44, 280 105 50 10, center
combo 27, 130 50 50 10, edit drop
list 45, 280 115 50 50, size extsel
edit "", 25, 5 90 50 10
edit "", 26, 60 90 50 10
edit "", 31, 115 90 50 10
edit "", 32, 170 90 50 10
edit "", 33, 225 90 50 10
edit "", 35, 280 90 50 10
}
on *:DIALOG:Observer:INIT:*: {
if !$hget($dname) { .hmake $dname 100 }
if $exists($+($dname,.hsh)) { .hload $dname $+($dname,.hsh) }
if !$hget($dname,Rtes) { echo -a 8,1ALERT!!! No routes established }
else { didtok $dname 5 44 $hget($dname,Rtes) }
;
didtok $dname 16 44 Daily,Sat. Only,MP/LL
;
didtok $dname 27 44 Office,Monthly,Bi-wkly
;
}
on *:DIALOG:Observer:sclick:5: {
set %rte $iif($did($dname,$did).seltext,$v1,$did($dname,$did))
set %accts $hfind($dname,$+(%rte,.,*,.Name),0,w)
while %accts {
did -a $+ $iif(%accts = 1,r) $dname 7 $gettok($hfind($dname,$+(%rte,.,*,.Name),%accts,w),2,46)
dec %accts
}
}
on *:DIALOG:Observer:sclick:7: {
set %acct $iif($did($dname,$did).seltext,$v1,$did($dname,$did))
did -ra $dname 9 $hget($dname,$+(%rte,.,%acct,.Name))
did -ra $dname 11 $hget($dname,$+(%rte,.,%acct,.Address))
did -ra $dname 13 $hget($dname,$+(%rte,.,%acct,.Apt))
did -ra $dname 15 $hget($dname,$+(%rte,.,%acct,.Phone))
if !$did($dname,15) {
find.a.person $gettok($did($dname,9),1,44) $iif($gettok($did($dname,9),2-,44),$v1)
}
did $iif($hget($dname,$+(%rte,.,%acct,.Active)),-c,-u) $dname 17
did -ra $dname 22 $asctime($hget($dname,$+(%rte,.,%acct,.Expiry)),mmm dd yyyy)
var %x = 1
while (%x <= $hfind($dname,$+(%rte,.,%acct,.data.*),0,w)) {
var %data = $hget($dname,$+(%rte,.,%acct,.data.,%x))
did -a $dname 18 $iif($gettok(%data,1,44) != -, $asctime($v1,mmm dd yyyy),-)
did -a $dname 37 $iif($gettok(%data,2,44) != -, $asctime($v1,mmm dd yyyy),-)
did -a $dname 38 $gettok(%data,3,44)
did -a $dname 43 $gettok(%data,4,44)
did -a $dname 39 $iif($gettok(%data,5,44) != -, $asctime($v1,mmm dd yyyy),-)
did -a $dname 45 $gettok(%data,6,44)
inc %x
}
did -ca $dname 16 $hget($dname,$+(%rte,.,%acct,.Delivery))
did -ca $dname 27 $hget($dname,$+(%rte,.,%acct,.Billing))
var %balance = $calc(($ctime($did($dname,22)) - $ctime) / 1209600)
if ($left($did($dname,16),1) == D) || ($did($dname,16).sel == 1) {
did -ra $dname 34 $+($,$round($calc(%balance * 6.8),2))
}
elseif ($left($did($dname,16),1) == S) || ($did($dname,16).sel == 2) {
did -ra $dname 34 $+($,$round($calc(%balance * 3),2))
}
}
And here's what I currently have for the sockets section alias find.a.person {
if (!$isid) {
set %lastname $1
set %firstname $2
set %street.num $gettok($did(Observer,11),1,32)
set %street.name $gettok($did(Observer,11),2-,32)
set %apt $did(Observer,13)
sockopen findap findaperson.canada411.ca 80
}
}
on *:sockopen:findap:{
unset %match
unset %page*
sockwrite -n $sockname GET $+(/10649/search/Find_Person?firstname_begins_with=1&firstname=,%firstname,&name_begins_with=1&name=,%lastname,&city_zip=Sarnia&state_id=ON) HTTP/1.1
sockwrite -n $sockname Host: findaperson.canada411.ca $+ $crlf $+ $crlf
}
on *:sockread:findap:{
if ($sockerr) {
echo -a some error occurred oh no.
return
}
else {
var %nc
sockread %nc
if ($+(*,%street.num,*,%apt,*,%street.name,*) iswm %nc) {
var %nc = $right(%nc,20)
var %nc = $left(%nc,14)
echo -s %nc
did -ra Observer 15 %nc
set %match found
}
elseif (*search_id* iswm %nc) && !%search_id {
set %search_id $gettok(%nc,2,34)
set %search_id $gettok(%search_id,-1,61)
}
elseif ($+(*,%lastname,*,%firstname,*,Total*) iswm %nc) {
var %nc = $gettok(%nc,-2,32)
var %nc = $gettok(%nc,-1,62)
set %pages $calc($int($calc(%nc / 10)) + 1)
set %pages $calc(%pages - 1)
}
elseif ((</html* iswm %nc) || (%match)) {
sockclose findap
if ((!%match) && (%pages)) {
inc %page
sockopen findap $+ %page findaperson.canada411.ca 80
}
}
}
}
on *:sockopen:$(findap $+ %page):{
set %limit $calc(%page * 10 + 1)
sockwrite -n $sockname GET $+(/10649/search/Alpha_Limit?search_id=,%search_id,&old_search_type=Find_Person&sort=&alpha_limit=&lower=,%limit,) HTTP/1.1
sockwrite -n $sockname Host: findaperson.canada411.ca $+ $crlf $+ $crlf
}
on *:sockread:$(findap $+ %page):{
if ($sockerr) {
echo -a some error occurred oh no.
return
}
else {
var %nc
sockread %nc
if ($+(*,%street.num,*,%apt,*,%street.name,*) iswm %nc) {
var %nc = $right(%nc,20)
var %nc = $left(%nc,14)
echo -s %nc
did -ra Observer 15 %nc
set %match found
sockclose findap
}
}
elseif ((</html* iswm %nc) || (%match)) {
sockclose $(findap $+ %page)
if ((!%match) && (%pages)) {
inc %page
sockopen findap $+ %page findaperson.canada411.ca 80
}
}
}
|