The Forum has been Updated
The code has been upgraded to the latest .NET core version. Please check instructions in the Community Announcements about migrating your account.
Hi,
I want to automatically send a private message to an author when a moderator or administrator edits or makes there topic sticky or unsticky.
Has anyone done such coding on there forum that they wish to share.
Thanks in advance.
I want to automatically send a private message to an author when a moderator or administrator edits or makes there topic sticky or unsticky.
Has anyone done such coding on there forum that they wish to share.
Thanks in advance.
Phil
نوشته شده در
I haven't, no, but I'll write it for you tonight.
نوشته شده در
Here you are.
In "pop_lock.asp", look for the following lines (appx 192-196):
Then, in "pop_open.asp", look for the following lines (appx 156-160):
In "pop_lock.asp", look for the following lines (appx 192-196):
Code:
case "StickyTopic"
strEncodedPassword = sha256("" & strPassword)
mLev = cLng(chkUser(strDBNTFUserName, strEncodedPassword,-1))
if mLev > 0 then '## is Member
if (chkForumModerator(Forum_ID, strDBNTFUserName) = "1") or (mLev = 4) then
Replace them with the following:
case "StickyTopic"
strEncodedPassword = sha256("" & strPassword)
mLev = cLng(chkUser(strDBNTFUserName, strEncodedPassword,-1))
if mLev > 0 then '## is Member
if (chkForumModerator(Forum_ID, strDBNTFUserName) = "1") or (mLev > 2) then
strSql="SELECT M.M_EMAIL, M.M_NAME, M.MEMBER_ID, T.T_AUTHOR, T.T_SUBJECT, T.TOPIC_ID FROM " & strMemberTablePrefix &_
"MEMBERS M INNER JOIN " & strTablePrefix & "TOPICS T ON (T.T_AUTHOR=M.MEMBER_ID AND T.TOPIC_ID="& Topic_ID &")"
set rsPost=my_Conn.Execute(strSql)
if not rsPost.EOF then
strT2=rsPost("T_SUBJECT")
strT3=rsPost("M_EMAIL")
strT4=rsPost("M_NAME")
end if
rsPost.Close
set rsPost=Nothing
strRecipients = chkString(strT3,"SQLString")
strRecipientsName = chkString(strT4,"SQLString")
strFrom = strSender
strFromName = strForumTitle
strsubject = strForumTitle & " Sticky Topic Change, "&strRecipientsName
strMessage = strMessage & "Your topic on "& strForumTitle &", titled: "& chr(34)& strT2 & chr(34) &" was made sticky by staff member: "& strDBNTFUserName& vbNewLine& "Link: "&strForumURL& "topic.asp?topic_id="&Topic_ID & vbNewLine
%>
<!--#INCLUDE FILE="inc_mail.asp" -->
<%
Then, in "pop_open.asp", look for the following lines (appx 156-160):
Code:
case "UnStickyTopic"
strEncodedPassword = sha256("" & strPassword)
mLev = cLng(ChkUser(strDBNTFUserName, strEncodedPassword,-1))
if mLev > 0 then '## is Member
if (chkForumModerator(Forum_ID, strDBNTFUserName) = "1") or (mLev = 4) then
Replace them with the following:
case "UnStickyTopic"
strEncodedPassword = sha256("" & strPassword)
mLev = cLng(ChkUser(strDBNTFUserName, strEncodedPassword,-1))
if mLev > 0 then '## is Member
if (chkForumModerator(Forum_ID, strDBNTFUserName) = "1") or (mLev > 2) then
strSql="SELECT M.M_EMAIL, M.M_NAME, M.MEMBER_ID, T.T_AUTHOR, T.T_SUBJECT, T.TOPIC_ID FROM " & strMemberTablePrefix &_
"MEMBERS M INNER JOIN " & strTablePrefix & "TOPICS T ON (T.T_AUTHOR=M.MEMBER_ID AND T.TOPIC_ID="& Topic_ID &")"
set rsPost=my_Conn.Execute(strSql)
if not rsPost.EOF then
strT2=rsPost("T_SUBJECT")
strT3=rsPost("M_EMAIL")
strT4=rsPost("M_NAME")
end if
rsPost.Close
set rsPost=Nothing
strRecipients = chkString(strT3,"SQLString")
strRecipientsName = chkString(strT4,"SQLString")
strFrom = strSender
strFromName = strForumTitle
strsubject = strForumTitle & " Sticky Topic Change, "&strRecipientsName
strMessage = strMessage & "Your topic on "& strForumTitle &", titled: "& chr(34)& strT2 & chr(34) &" was made un-sticky by staff member: "& strDBNTFUserName& vbNewLine& "Link: "&strForumURL& "topic.asp?topic_id="&Topic_ID & vbNewLine
%>
<!--#INCLUDE FILE="inc_mail.asp" -->
<%
آخرین ویرایش توسط
نوشته شده در
Thanks it works a treat, is it possible to have it also send a private message as well as a email ??
Phil
نوشته شده در
Sure. I'll add that today for you.
نوشته شده در
To also send a PM to the topic's author, replace the routines as follows.
"pop_lock.asp"
"pop_open.asp"
"pop_lock.asp"
Code:
case "StickyTopic"
strEncodedPassword = sha256("" & strPassword)
mLev = cLng(chkUser(strDBNTFUserName, strEncodedPassword,-1))
if mLev > 0 then '## is Member
if (chkForumModerator(Forum_ID, strDBNTFUserName) = "1") or (mLev > 2) then
strSql="SELECT M.M_EMAIL, M.M_NAME, M.MEMBER_ID, T.T_AUTHOR, T.T_SUBJECT, T.TOPIC_ID FROM " & strMemberTablePrefix &_
"MEMBERS M INNER JOIN " & strTablePrefix & "TOPICS T ON (T.T_AUTHOR=M.MEMBER_ID AND T.TOPIC_ID="& Topic_ID &")"
set rsPost=my_Conn.Execute(strSql)
if not rsPost.EOF then
T1=rsPost("T_AUTHOR")
strT2=rsPost("T_SUBJECT")
strT3=rsPost("M_EMAIL")
strT4=rsPost("M_NAME")
end if
rsPost.Close
set rsPost=Nothing
strRecipients = chkString(strT3,"SQLString")
strRecipientsName = chkString(strT4,"SQLString")
strFrom = strSender
strFromName = strForumTitle
strsubject = strForumTitle & " Sticky Topic Change, "&strRecipientsName
strMessage = strMessage & "Your topic on "& strForumTitle &", titled: "& chr(34)& strT2 & chr(34) &" was made sticky by staff member: "& strDBNTFUserName& vbNewLine& "Link: "&strForumURL& "topic.asp?topic_id="&Topic_ID & vbNewLine
%>
<!--#INCLUDE FILE="inc_mail.asp" -->
<%
strSql="INSERT INTO " & strTablePrefix & "PM (M_SUBJECT, M_MESSAGE, M_TO, M_FROM, M_SENT, M_MAIL, M_READ, M_OUTBOX) VALUES ('" & strSubject & "', '" & strMessage & "', " & t1 & ", " & MEMBERID & ", '" & DateToStr(strForumTimeAdjust) & "', " & "0,0,1)"
Response.Write strSql
"pop_open.asp"
Code:
strSql="SELECT M.M_EMAIL, M.M_NAME, M.MEMBER_ID, T.T_AUTHOR, T.T_SUBJECT, T.TOPIC_ID FROM " & strMemberTablePrefix &_
"MEMBERS M INNER JOIN " & strTablePrefix & "TOPICS T ON (T.T_AUTHOR=M.MEMBER_ID AND T.TOPIC_ID="& Topic_ID &")"
set rsPost=my_Conn.Execute(strSql)
if not rsPost.EOF then
T1=rsPost("T_AUTHOR")
strT2=rsPost("T_SUBJECT")
strT3=rsPost("M_EMAIL")
strT4=rsPost("M_NAME")
end if
rsPost.Close
set rsPost=Nothing
strRecipients = chkString(strT3,"SQLString")
strRecipientsName = chkString(strT4,"SQLString")
strFrom = strSender
strFromName = strForumTitle
strsubject = strForumTitle & " Sticky Topic Change, "&strRecipientsName
strMessage = strMessage & "Your topic on "& strForumTitle &", titled: "& chr(34)& strT2 & chr(34) &" was made un-sticky by staff member: "& strDBNTFUserName& vbNewLine& "Link: "&strForumURL& "topic.asp?topic_id="&Topic_ID & vbNewLine
%>
<!--#INCLUDE FILE="inc_mail.asp" -->
<%
strSql="INSERT INTO " & strTablePrefix & "PM (M_SUBJECT, M_MESSAGE, M_TO, M_FROM, M_SENT, M_MAIL, M_READ, M_OUTBOX) VALUES ('" & strSubject & "', '" & strMessage & "', " & t1 & ", " & MEMBERID & ", '" & DateToStr(strForumTimeAdjust) & "', " & "0,0,1)"
Response.Write strSql
آخرین ویرایش توسط
Email Member
Message Member
Post Moderation
بارگزاری فایل
If you're having problems uploading, try choosing a smaller image.
پیشنمایش مطلب
Send Topic
Loading...