<% %> <% asp_include "classes/runnerpage.asp",false cEmailField = "UserEmailAddress" reminded = false strSearchBy = "username" asp_include "include/xtempl.asp",false Set xt = (CreateClass("Xtempl",0,Empty,Empty,Empty,Empty,Empty,Empty,Empty)) doAssignment id,IIF(not IsIdentical(postvalue("id"),""),postvalue("id"),1) sessPrefix = "remind" Set params = (CreateDictionary2("id",id,"pageType",PAGE_REMIND)) setArrElementByRef params,"xt",xt setArrElement params,"tName","global" setArrElement params,"needSearchClauseObj",false Set pageObject = (CreateClass("RunnerPage",1,params,Empty,Empty,Empty,Empty,Empty,Empty)) pageObject.addCommonJs pageObject.fillSetCntrlMaps setArrElement pageObject.body,"end",CSmartStr(ArrayElement(pageObject.body,"end")) & "") pageObject.addButtonHandlers isUseCaptcha = false pageObject.isCaptchaOk = 1 strUsername = "" strEmail = "" strMessage = "" if IsEqual(GetRequestValue(RequestForm(),"btnSubmit"),"Remind") then if bValue(globalEvents.exists_p1("BeforeProcessRemind")) then globalEvents.BeforeProcessRemind_p1 conn end if doAssignmentByRef strSearchBy,postvalue("searchby") doAssignmentByRef strUsername,postvalue("username") doAssignmentByRef strEmail,postvalue("email") if not bValue(isUseCaptcha) or bValue(isUseCaptcha) and IsEqual(pageObject.isCaptchaOk,1) then tosearch = false if not IsEqual(strSearchBy,"email") then doAssignment value,strUsername if CSmartStr(value)<>"" then tosearch = true end if if bValue(NeedQuotes(cUserNameFieldType)) then value = ("'" & CSmartStr(db_addslashes(value))) & "'" else value = 0+CSmartDbl(value) end if sWhere = (CSmartStr(AddFieldWrappers(cUserNameField)) & "=") & CSmartStr(value) else doAssignment value,strEmail if CSmartStr(value)<>"" then tosearch = true end if if bValue(NeedQuotes(cEmailFieldType)) then value = ("'" & CSmartStr(db_addslashes(value))) & "'" else value = 0+CSmartDbl(value) end if sWhere = (CSmartStr(AddFieldWrappers(cEmailField)) & "=") & CSmartStr(value) end if if bValue(tosearch) and bValue(globalEvents.exists_p1("BeforeRemindPassword")) then doAssignmentByRef tosearch,globalEvents.BeforeRemindPassword_p2(strUsername,strEmail) end if if bValue(tosearch) then strSQL = (((((((("select " & CSmartStr(AddFieldWrappers(cUserNameField))) & ",") & CSmartStr(AddFieldWrappers(cPasswordField))) & ",") & CSmartStr(AddFieldWrappers(cEmailField))) & " from ") & CSmartStr(AddTableWrappers("siteusers"))) & " where ") & CSmartStr(sWhere) doAssignmentByRef rs,db_query(strSQL,conn) if bValue(doAssignmentByRef(data,db_fetch_numarray(rs))) then doAssignment password,ArrayElement(data,1) doAssignmentByRef url,GetSiteUrl() url = CSmartStr(url) & CSmartStr(GetRequestValue(Request.ServerVariables,"SCRIPT_NAME")) message = CSmartStr("Password reminder") & vbcrlf message = CSmartStr(message) & (((CSmartStr("You asked to remind your username and password at") & " ") & CSmartStr(url)) & vbcrlf) message = CSmartStr(message) & (((CSmartStr("Username") & ": ") & CSmartStr(ArrayElement(data,0))) & vbcrlf) message = CSmartStr(message) & (((CSmartStr("Password") & ": ") & CSmartStr(password)) & vbcrlf) runner_mail CreateDictionary3("to",ArrayElement(data,2),"subject","Password reminder","body",message) reminded = true if bValue(globalEvents.exists_p1("AfterRemindPassword")) then globalEvents.AfterRemindPassword_p2 strUsername,strEmail end if loginlink_attrs = "href=""login.asp" if not IsEqual(strSearchBy,"email") then loginlink_attrs = CSmartStr(loginlink_attrs) & ("?username=" & CSmartStr(asp_rawurlencode(strUsername))) end if loginlink_attrs = CSmartStr(loginlink_attrs) & """" xt.assign_p2 "loginlink_attrs",loginlink_attrs xt.assign_p2 "body",true setArrElement Session,CSmartStr(sessPrefix) & "_count_captcha",CSmartDbl(Session(CSmartStr(sessPrefix) & "_count_captcha"))+1 xt.display_p1 "remind_success.htm" response.end end if end if if not bValue(reminded) then if not IsEqual(strSearchBy,"email") then strMessage = (((CSmartStr("User") & " ") & CSmartStr(strUsername)) & " ") & CSmartStr("is not registered.") else strMessage = "This email doesn't exist in our database" end if end if end if end if emailradio_attrs = "onclick=""document.forms.form1.searchby.value='email'; UpdateControls();""" usernameradio_attrs = "onclick=""document.forms.form1.searchby.value='username'; UpdateControls();""" if IsEqual(strSearchBy,"username") then usernameradio_attrs = CSmartStr(usernameradio_attrs) & " checked" search_disabled = "email" else emailradio_attrs = CSmartStr(emailradio_attrs) & " checked" search_disabled = "username" end if xt.assign_p2 "emailradio_attrs",emailradio_attrs xt.assign_p2 "usernameradio_attrs",usernameradio_attrs xt.assign_p2 "username_label",true xt.assign_p2 "email_label",true doAssignmentByRef is508,isEnableSection508() if bValue(is508) then xt.assign_section_p3 "username_label","" xt.assign_section_p3 "email_label","" end if xt.assign_p2 "username_attrs",((CSmartStr(IIF(IsEqual(is508,true),"id=""username"" ","")) & "value=""") & CSmartStr(htmlspecialchars(strUsername))) & """" xt.assign_p2 "email_attrs",((CSmartStr(IIF(IsEqual(is508,true),"id=""email"" ","")) & "value=""") & CSmartStr(htmlspecialchars(strEmail))) & """" if bValue(strMessage) then xt.assign_p2 "message",strMessage xt.assign_p2 "message_block",true if IsEqual(pageObject.isCaptchaOk,1) then setArrElement Session,CSmartStr(sessPrefix) & "_count_captcha",CSmartDbl(Session(CSmartStr(sessPrefix) & "_count_captcha"))+1 end if end if setArrElement pageObject.body,"begin",CSmartStr(ArrayElement(pageObject.body,"begin")) & ("" & "") if IsIdentical(pageObject.debugJSMode,true) then setArrElement pageObject.body,"begin",CSmartStr(ArrayElement(pageObject.body,"begin")) & "" & vbcrlf else setArrElement pageObject.body,"begin",CSmartStr(ArrayElement(pageObject.body,"begin")) & "" end if setArrElement pageObject.body,"begin",CSmartStr(ArrayElement(pageObject.body,"begin")) & (("" & vbcrlf & _ "
" & vbcrlf & _ "" & vbcrlf & _ "") setArrElement pageObject.body,"end",CSmartStr(ArrayElement(pageObject.body,"end")) & (((("
" & vbcrlf & _ " ") xt.assignbyref_p2 "body",pageObject.body templatefile = "remind.htm" if bValue(globalEvents.exists_p1("BeforeShowRemindPwd")) then globalEvents.BeforeShowRemindPwd_p2 xt,templatefile end if xt.display_p1 templatefile %>