can't read "login(count)": no such variable while executing "if {$login(count) == 1 && $response(link) == "index.html"} { dbDisconnect headers redirect ./home }" (in namespace eval "::request" script line 206) invoked from within "namespace eval request { puts -nonewline "" load /usr/local/src/mysqltcl-3.01/libmysqltcl3.01.so source /usr/local/apache_1.3.33/tcl/helpers.tcl sour..."

OUTPUT BUFFER:

namespace eval request { puts -nonewline "" load /usr/local/src/mysqltcl-3.01/libmysqltcl3.01.so source /usr/local/apache_1.3.33/tcl/helpers.tcl source /usr/local/apache_1.3.33/tcl/guam.net.tcl source /usr/local/apache_1.3.33/htdocs/classifieds/class_helpers.tcl load_fd set curdate [clock format [clock seconds] -format "%a, %b. %d, %Y %r"] set response(link) [string range [env DOCUMENT_PATH_INFO] 1 end] dbConnect guamnet barqword guamnet auth_module ######## # # Logout # if {$response(link) == "logout"} { if {$login(count) == 0} { set logoutmesg "

You have to be logged in first to logout.

" } else { dbExecute "update class_user set lastlogin = date_sub(now(), interval 1 hour), cookie = NULL where cookie = [dbQuote $cookie] and email = [dbQuote $login(email)]" set logoutmesg "

You have been logged out.

" } set login(count) 0 } # # ######### ######### # Registering/validating non Kuentos users or users who use an email other than a Kuentos email # # if {[defined response(register)]} { set tmplogin [split [string tolower $response(email)] "@"] set response(login) [lindex $tmplogin 0] set response(domain) [lindex $tmplogin 1] if {[llength $tmplogin] < 2 || ![defined response(domain)]} { set loginerror "
Error: invalid email format

" } elseif {$response(domain) == "guam.net" || $response(domain) == "kuentos.guam.net"} { set loginerror "

Error: Your email address is at guam.net, You do not need to register. Enter your password and proceed

" } else { set validate [randstr 24] dbCatch { dbSelect "count(*) as count from class_user where email = [dbQuote $response(email)]" testreg {} if {$testreg(count)} { set loginerror "

Error: That email address is already registered.

" } else { dbExecute "insert into class_user (email, email_verify) values ([dbQuote $response(email)], [dbQuote $validate])" } } non_smtp webmaster@guam.net $response(email) "Validate email for Guam.net Classifieds" "Hello,\n\nThank you for registering at the Guam.net Classifieds website. To activate your account visit this link: http://www.guam.net/classifieds/validate/$validate. If you do not validate within 24 hours you will have to re-register.\n\nRegards,\nwebmaster@guam.net" dbDisconnect headers redirect ./sentvalemail } } if {$response(link) == "setpass"} { if {![defined response(valcode)]} { dbDisconnect headers redirect ./ } else { if {![defined response(passwd)] || ![defined response(passwd2)]} { set response(link) validate/$response(valcode) set passerr "

Error: You need to specify a password and confirm it.

" } elseif {$response(passwd) != $response(passwd2)} { set response(link) validate/$response(valcode) set passerr "

Error: Passwords do not match. Try again.

" } else { dbCatch { dbExecute "update class_user set passwd = [dbQuote $response(passwd)], date_registered = now() where email_verify = [dbQuote $response(valcode)]" } dbDisconnect headers redirect ./finishedregister } } } if {[regexp {^validate/([a-z].+)$} $response(link) junk valcode]} { dbSelect "count(*) as count from class_user where email_verify = [dbQuote $valcode]" new {} if !$new(count) { set loginerror "

Error: invalid validation key. Check your email.

" } else { #check if they are trying to visit the validation link again dbSelect "count(*) as count from class_user where email_verify = [dbQuote $valcode] and date_registered is not null" check {} if $check(count) { set loginerror "

Error: You already validated. There's no need to re-validate.

" } else { set response(passedval) $valcode } } } # # ######### ######### # Login # # if {[defined response(login)] && ![defined response(register)]} { set tmplogin [split [string tolower $response(email)] "@"] set response(login) [lindex $tmplogin 0] set response(domain) [lindex $tmplogin 1] if {[llength $tmplogin] < 2 || ![defined response(domain)]} { set loginerror "

Error: invalid email format

" } elseif {![defined response(passwd)]} { set loginerror "

Error: You must enter your email address and password

" } else { ##### #login for Kuentos Customers # # if {$response(domain) == "guam.net" || $response(domain) == "kuentos.guam.net"} { #set response(salt) [string range $response(passwd) 0 1] #set response(crypted) [crypt $response(passwd) $response(salt)] catch {checkpass $response(login) $response(passwd)} response(checked) if {[defined response(checked)] && $response(checked) == "Cannot connect to host!"} { set loginerror "

Error: Cannot connect Please try again later. Remember, your password is case sensitive.

" } elseif {$response(checked) == "0"} { set loginerror "

Error: Your email/password does not match. Please try again.

" } else { dbSelect "count(*) as count from class_user where email = [dbQuote $response(email)]" test {} if {!$test(count)} { dbCatch { dbExecute " insert into class_user (email, name, date_registered, cookie, lastlogin) values ([dbQuote $response(email)], [dbQuote $response(login)], curdate(), [dbQuote $cookie], now()) " } } else { dbCatch { dbExecute "update class_user set cookie = [dbQuote $cookie], lastlogin = now() where email = [dbQuote $response(email)]" } } dbDisconnect set login(count) 1 headers redirect ./ } # # ###### } else { #### #login non kuentos customers # dbCatch { dbSelect "count(*) as checked from class_user where email = [dbQuote $response(email)] and passwd = [dbQuote $response(passwd)]" response {} } if {!$response(checked)} { set loginerror "

Error: Your email/password does not match. Please try again.

" } else { dbCatch { dbExecute "update class_user set cookie = [dbQuote $cookie], lastlogin = now() where email = [dbQuote $response(email)]" } dbDisconnect set login(count) 1 headers redirect ./ } # # #### } } } # # ######### ######### # if logged in go to the control center # if {$response(link) == "home" && $login(count) == 0} { dbDisconnect headers redirect ./login } if {$login(count) == 1 && $response(link) == "index.html"} { dbDisconnect headers redirect ./home } # # ######### ######### # Ad input # if {$response(link) == "submitad" && $login(count) == 0} { dbDisconnect headers redirect ./login } if {$response(link) == "post" && $login(count) == 0} { dbDisconnect headers redirect ./login } if {$login(count) == 1 && $response(link) == "submitad"} { if {![defined response(category)] || ![defined response(descript)] || ![defined response(item)] || ![defined response(price)]} { #set posterror "

Error: All fields have to be filled out.
" set response(link) postform } else { dbExecute "insert into classifieds (email, created, expires, category, item, price, descript) values ([dbQuote $login(email)], now(), date_add(curdate(), interval 14 day), [dbQuote $response(category)], [dbQuote [nohtml $response(item)]], [dbQuote [nohtml $response(price)]], [dbQuote [nohtml $response(descript)]])" dbDisconnect headers redirect ./finishedposting } } # # ######### ######### # Contacting poster # # Checking for url hacking if {$response(link) == "contactform"} { if {![defined response(id)] || ![defined response(item)]} { dbDisconnect headers redirect ./ } else { dbCatch { dbSelect "count(*) as count from classifieds where id = [dbQuote $response(id)] and item = [dbQuote $response(item)]" test {} if {![defined test(count)] || $test(count) == 0} { dbDisconnect headers redirect ./ } } } } if {$response(link) == "contact"} { if {![defined response(c_email)] || ![defined response(mesg)]} { set response(link) contactform } else { dbCatch { dbSelect "email from classifieds where item = [dbQuote $response(item)]" getemail {} } non_smtp $response(c_email) $getemail(email) "Re: $response(item) on Guam.net Classifieds" "$response(mesg)" dbDisconnect headers redirect ./contactcomplete } } # # ######### ######### # Editing ads # if {$response(link) == "listown" && $login(count) == 0} { dbDisconnect headers redirect ./login } if {$response(link) == "editform" && $login(count) == 0} { dbDisconnect headers redirect ./login } if {$response(link) == "submitedit" && $login(count) == 0} { dbDisconnect headers redirect ./login } if {$response(link) == "submitedit" && $login(count) == 1} { if {![defined response(category)] || ![defined response(descript)] || ![defined response(item)] || ![defined response(price)]} { set response(link) editform } elseif {![defined response(id)]} { dbDisconnect headers redirect ./login } else { dbCatch { dbSelect "count(*) as count from classifieds where id = [dbQuote $response(id)] and email = [dbQuote $login(email)]" test {} } if {![defined test(count)] || $test(count) == 0} { dbDisconnect headers redirect ./ } else { dbCatch { if {[defined response(expiread)]} { set return "expired" dbCatch { dbExecute " update classifieds set expires = curdate() where id = [dbQuote $response(id)] and email = [dbQuote $login(email)] " } } elseif {[defined response(repost)]} { dbCatch { dbExecute " update classifieds set expires = date_add(curdate(), interval 14 day) where id = [dbQuote $response(id)] and email = [dbQuote $login(email)] " } set return "reposted for another 2 weeks" } else { dbCatch { dbExecute " update classifieds set category = [dbQuote $response(category)], item = [dbQuote [nohtml $response(item)]], descript = [dbQuote [nohtml $response(descript)]], price = [dbQuote [nohtml $response(price)]] where id = [dbQuote $response(id)] and email = [dbQuote $login(email)] " } set return "edited" } } dbDisconnect headers redirect ./finishededit?return=$return } } } if {$response(link) == "editform" && $login(count) == 1} { if {![defined response(id)]} { dbDisconnect headers redirect ./login } else { dbCatch { dbSelect "count(*) as count from classifieds where id = [dbQuote $response(id)] and email = [dbQuote $login(email)]" test {} } if {![defined test(count)] || $test(count) == 0} { dbDisconnect headers redirect ./ } else { } } } # # ######### puts -nonewline " Welcome to www.Guam.net classifieds " if {$login(count) == 1} { timeout } puts -nonewline "
" ##### # Display top banner data # topbanner puts -nonewline "
Categories:
" #Get categories cats puts -nonewline "
" html "
Chamorro Standard Time: $curdate
" if {$response(link) == "home"} { #control center html "Welcome $login(email). Here's what you can do here:" html " " } elseif {$response(link) == "postform"} { html "

Posting an Ad

" html "Please fill out the following form completely. HTML code is not allowed

" if {[defined posterror]} { html "$posterror" } adform } elseif {$response(link) == "finishedposting"} { html "

Posting an Ad

" html "Your ad has been posted and will expire 2 week from today

" html "Back Home" } elseif {$response(link) == "list"} { if {![defined response(cat)]} { html "

You need to select a category first

" } else { html "

Category: $response(cat)

" if $login(count) { html "\[ Post an ad in this category \]" } html "

    " dbCatch { dbSelect "item, price, id from classifieds where category = [dbQuote $response(cat)] and expires > curdate() order by created desc " adlist { html "
  • $adlist(item): $adlist(price)
  • " } } html "
" } } elseif {$response(link) == "view"} { if {![defined response(id)]} { html "

You are using this page wrong.

" } else { html "

Viewing ad from $response(cat) category

" dbCatch { dbSelect "* from classifieds where id = [dbQuote $response(id)] order by created desc " addata {} html "

" html "

$addata(item)

" html "
Asking: $addata(price)
" regsub -all "\n" $addata(descript) "
" addata(descript) html "
$addata(descript)
" html "
" html "

" html "

" html "" } } } elseif {$response(link) == "contactform"} { html "

Contact poster

" html "You need to fill out the form completely" contactform } elseif {$response(link) == "contactcomplete"} { html "

Messages has been sent.

" } elseif {$response(link) == "listown"} { html "

Your posts

" html "Click to edit, expire or re-post ad. If you do not re-post an expired ad within 4 days it will be deleted." html "

    " set now [clock seconds] dbCatch { dbSelect "item, price, id, expires from classifieds where email = [dbQuote $login(email)] order by created desc, category asc " adlist { set exprsecs [clock scan "$adlist(expires)"] set fill "
  • $adlist(item) " append fill "Expires: [display_nice_date_time2 $adlist(expires)]" if {$exprsecs <= $now} { puts -nonewline "
    $fill
    " } else { puts -nonewline $fill } puts -nonewline "
  • " } } html "

" html "Back Home" } elseif {$response(link) == "finishededit"} { html "

Editing your post

" html "Your ad has been $response(return)

" html "Back Home" } elseif {$response(link) == "editform"} { html "

Editing your post

" html "Please fill out the following form completely. HTML code is not allowed

" dbSelect "* from classifieds where id = [dbQuote $response(id)] and email = [dbQuote $login(email)]" addata {} foreach n [array names addata] { set response($n) $addata($n) } adform html "Back Home" } elseif {$response(link) == "aup"} { #show acceptable use policy (aup) include /usr/local/apache_1.3.33/htdocs/classifieds/aup.htm } elseif {$response(link) == "nocookie"} { html "

Inorder to use this service you need to allow cookies to be set. Change your browser prefs and revisit this page

" } elseif {$response(link) == "login" && ![defined loginerror]} { #login form html "Enter your email address and password. If you are a Kuentos customer you do not have to register. Simply enter your username in this format: username@guam.net.

If you are not a Kuentos customer you need to register by entering your email address and click on the \"Register\" button.

" loginform } elseif {[defined loginerror]} { html "Enter your email address and password. If you are a Kuentos customer you do not have to register. Simply enter your username in this format: username@guam.net.

If you are not a Kuentos customer you need to register by entering your email address and click on the \"Register\" button.

" html "$loginerror" loginform } elseif {$response(link) == "logout"} { html "$logoutmesg" } elseif {$response(link) == "sentvalemail"} { html "

A validation link has been sent to your email. You have 24 hours to validate or you will have to re-register.

" } elseif {[defined response(passedval)]} { html "

New registration

" html "Please enter a password you wish to use for your new on-line classified account." if {[defined passerr]} { html $passerr } passform } elseif {$response(link) == "finishedregister"} { html "

New registration

" html "Welcome to the improved free online classified ads. Before using this service you should read the Acceptible Use Policy." loginform } else { #display welcome messaged html {

Welcome to Guam's best place to buy, sell, trade stuff on-line. Browse for things by clicking on the categories to the left. If you want to post Ads and you are currently a Kuentos customer you can simply use your username/password to login and start posting.

If you are not a Kuentos customer you can still use the classifieds by registering. It's simple, free and fun for the whole family. Before using this service you should read the Acceptible Use Policy.

} html {
} html "

10 most recent ads

" html "
    " dbSelect "item, price, id, category from classifieds where expires > curdate() order by created desc limit 10" ads { html "
  • $ads(item): $ads(price)
  • " } html "
" html {
} } puts -nonewline "
" #footer guam.net.footer puts -nonewline "
" #parray response #parray login dbDisconnect puts -nonewline " " }