Author |
Topic |
desmo907
Starting Member
USA
19 Posts |
Posted - 13 March 2010 : 08:30:28
|
Now the site won't work and I get this in my browser:
Microsoft VBScript compilation error '800a0409'
Unterminated string constant
/forum/inc_subscription.asp, line 171
strSql = "SELECT T_MESSAGE FROM " & strTablePrefix & "TOPICS WHERE TOPIC_ID=" & LoopTopicID & " -----------------------------------------------------------------------------------------------^
|
|
|
Carefree
Advanced Member
Philippines
4207 Posts |
Posted - 13 March 2010 : 12:19:45
|
Delete the & " at the end of the line. |
|
|
desmo907
Starting Member
USA
19 Posts |
Posted - 13 March 2010 : 16:57:09
|
Congrads and Thank you. This works well. I assume if anyone uses the formatting commands that code will just be embedded within the message as well but that's fine as many may not use it anyway.
Now I just need to figure out how to add another user variable to the Author column (it just shows the ID and Country and # of posts). I had changed one of the Member details "Occupation" to "Team" in various files and would like that to post under the ID.
Results are:
-------------------------------
Hello m
admin has replied to the topic 'Forum Registration & Getting Started' on the forum 'Forum Information' at Windsor Men's Softball League that you requested notification on.
Subject: Forum Registration & Getting Started Message:
========================== Game is off
field under water
==========================
You can view the posting at http://www.windsorsoftball.com/forum/topic.asp?TOPIC_ID=6 |
|
|
Carefree
Advanced Member
Philippines
4207 Posts |
Posted - 14 March 2010 : 10:40:10
|
You should start a new topic with this request so people can search and follow it. quote: Now I just need to figure out how to add another user variable to the Author column (it just shows the ID and Country and # of posts). I had changed one of the Member details "Occupation" to "Team" in various files and would like that to post under the ID.
|
|
|
desmo907
Starting Member
USA
19 Posts |
|
korray
Starting Member
USA
5 Posts |
Posted - 19 September 2011 : 11:11:32
|
hey I am new here. I just tried the code Carefree sent, but I get an empty message like below:
Message: ==========================
==========================
or:
Message: ========================== empty string test ==========================
I am using the exact code you sent and running: [Snitz Forums 2000 Version 3.4.06]
can you please help or send me the latest version that inc_subscription.asp file? thanks a lot. |
|
|
Carefree
Advanced Member
Philippines
4207 Posts |
Posted - 19 September 2011 : 15:51:38
|
That was quite some time ago, I'll look at it - but that code was for version 3.4.07 - I'll have to check differences.
This is 3.4.06 compatible.
<%
'###############################################################################
'##
'## Snitz Forums 2000 v3.4.07
'##
'###############################################################################
'##
'## Copyright © 2000-09 Michael Anderson, Pierre Gorissen,
'## Huw Reddick and Richard Kinser
'##
'## This program is free. You can redistribute and/or modify it under the
'## terms of the GNU General Public License as published by the Free Software
'## Foundation; either version 2 or (at your option) any later version.
'##'## All copyright notices regarding Snitz Forums 2000 must remain intact in
'## the scripts and in the HTML output. The "powered by" text/logo with a
'## link back to http://forum.snitz.com in the footer of the pages MUST
'## remain visible when the pages are viewed on the internet or intranet.
'##
'## This program is distributed in the hope that it will be useful but
'## WITHOUT ANY WARRANTY; without even an implied warranty of MERCHANTABILITY
'## or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
'## for more details.
'##
'## You should have received a copy of the GNU General Public License along
'## with this program; if not, write to:
'##
'## Free Software Foundation, Inc.
'## 59 Temple Place, Suite 330
'## Boston, MA 02111-1307
'##
'## Support can be obtained from our support forums at:
'##
'## http://forum.snitz.com
'##
'## Correspondence and marketing questions can be sent to:
'##
'## manderson@snitz.com
'##
'###############################################################################
Sub ProcessSubScriptions (pMemberId, CatID, ForumId, TopicId, Moderation)
ThisMemberID = MemberID
If strSubscription = 0 or strEmail = 0 Then
Exit Sub
End If
strSql = "SELECT C.CAT_SUBSCRIPTION, C.CAT_NAME, F.F_SUBJECT, F.F_SUBSCRIPTION, T.T_SUBJECT, M.M_NAME " & _
" FROM " & strTablePrefix & "CATEGORY C, " & _
" " & strTablePrefix & "FORUM F, " & _
" " & strTablePrefix & "TOPICS T, " & _
" " & strMemberTablePrefix & "MEMBERS M " & _
" WHERE C.CAT_ID = " & CatID & " AND F.FORUM_ID = " & ForumID & _
" AND T.TOPIC_ID = " & TopicID & " AND M.MEMBER_ID = " & pMemberID
Set rsSub = Server.CreateObject("ADODB.Recordset")
rsSub.Open strSql, my_Conn
If not (RsSub.EOF or RsSub.BOF) Then
Set rsSub = Nothing
Exit Sub
Else
allSubsData = rsSub.GetRows(adGetRowsRest)
SubCnt = UBound(allSubsData,2)
rsSub.Close
Set rsSub = Nothing
End If
CatSubscription = allSubsData(0, 0)
CatName = allSubsData(1, 0)
ForumName = allSubsData(2, 0)
ForumSubscription = allSubsData(3, 0)
TopicName = allSubsData(4, 0)
MemberName = allSubsData(5, 0)
If CatSubscription = 0 or ForumSubscription = 0 Then
Exit Sub
End If
If strSubscription = 4 or CatSubscription = 3 or ForumSubscription = 2 Then
SubLevel = "TOPIC"
ElseIf strSubscription = 3 Then
SubLevel = "FORUM"
ElseIf CatSubscription > 1 Then
SubLevel = "FORUM"
ElseIf strSubscription > 1 Then
SubLevel = "CATEGORY"
Else
SubLevel = "ALL"
End If
If Moderation <> "No" Then
strSql = "SELECT MOD_ID from " & strTablePrefix & "MODERATOR"
Set modCheck = Server.CreateObject("ADODB.Recordset")
modCheck.Open strSql, my_Conn
If modCheck.EOF or modCheck.BOF Then
strUniqueModID = "none"
Else
strUniqueModID = modCheck("Mod_ID")
End If
modCheck.Close
Set modCheck = Nothing
Else
strUniqueModID = "none"
End If
strSql = "SELECT S.MEMBER_ID, S.CAT_ID, S.TOPIC_ID, S.FORUM_ID, S.LAST_EMAIL, M.M_EMAIL, M.M_NAME, M.M_LASTHEREDATE" & _
" FROM " & strTablePrefix & "SUBSCRIPTIONS S, " & strMemberTablePrefix & "MEMBERS M"
If Moderation <> "No" and strUniqueModID <> "none" Then
strSql = strSql & ", " & strTablePrefix & "MODERATOR Mo"
End If
strSql = strSql & " WHERE S.MEMBER_ID <> " & pMemberID & _
" AND S.MEMBER_ID <> " & ThisMemberID & _
" AND M.MEMBER_ID = S.MEMBER_ID" & _
" AND M.M_STATUS <> 0" & _
" AND (S.TOPIC_ID = " & TopicId
If SubLevel <> "TOPIC" Then
strSql = strSql & " OR (S.CAT_ID = " & CatID & " AND S.FORUM_ID = " & ForumID & " AND S.TOPIC_ID = 0)"
End If
If SubLevel = "CATEGORY" or SubLevel = "ALL" Then
strSql = strSql & " OR (S.CAT_ID = " & CatID & " AND S.FORUM_ID = 0 AND S.TOPIC_ID = 0)"
End If
If SubLevel = "ALL" Then
strSql = strSql & " OR (S.CAT_ID = 0 AND S.FORUM_ID = 0 AND S.TOPIC_ID = 0)"
End If
strSql = strSql & ")"
If Moderation <> "No" Then
StrSql = StrSql & " AND ((M.M_LEVEL > 2"
If strUniqueModID = "none" Then
strSql = strSql & "))"
Else
strSql = strSql & " AND Mo.MOD_ID = " & strUniqueModID & ") OR (M.M_LEVEL = 2 AND S.MEMBER_ID = Mo.MEMBER_ID AND Mo.FORUM_ID = " & ForumId & "))"
End If
End If
Set rsLoop = Server.CreateObject("ADODB.Recordset") : rsLoop.Open strSql, my_Conn
If not (rsLoop.EOF or rsLoop.BOF) Then
allLoopData = rsLoop.GetRows(adGetRowsRest) : LoopCount = UBound(allLoopData,2)
rsLoop.Close
Set rsLoop = Nothing
For iSub = 0 to LoopCount
LoopMemberID = allLoopData(0, iSub)
LoopCatID = allLoopData(1, iSub)
LoopForumID = allLoopData(2, iSub)
LoopTopicID = allLoopData(3, iSub)
LoopMemberName = allLoopData(4, iSub)
LoopMemberEmail = allLoopData(5, iSub)
If chkForumAccess(ForumID, LoopMemberID, false) <> FALSE Then
strSql = "SELECT R_MESSAGE, REPLY_ID from " & strTablePrefix & "REPLY WHERE TOPIC_ID = " & TopicID & " ORDER BY REPLY_ID DESC"
Set rsRpl = my_Conn.Execute(strSql)
If not rsRpl.EOF Then
strNewMessage=rsRpl("R_MESSAGE")
rsRpl.Close
Else
strSql = "SELECT T_MESSAGE FROM " & strTablePrefix & "TOPICS WHERE TOPIC_ID=" & TopicID
Set rsMsg = my_Conn.Execute(strSql)
If not rsMsg.EOF Then
strNewMessage=rsMsg("T_MESSAGE")
rsMsg.Close
End If
Set rsMsg=Nothing
End If
strRecipientsName = LoopMemberName
strRecipients = LoopMemberEmail
strMessage = "Hello " & LoopMemberName & vbNewline & vbNewline
If LoopCatID > 0 Then
if LoopForumID > 0 then
If LoopTopicID > 0 Then
strSubject = strForumTitle & " - Reply to a posting in " & ForumName & " - " & TopicName
strMessage = strMessage & MemberName & " has replied to the topic '" & TopicName & "' on the forum '" & ForumName & "' at " & strForumTitle & " that you requested notification on. " & vbNewline & vbNewline
strMessage = strMessage & "Subject: " & TopicName & vbNewline & vbNewline
strMessage = strMessage & "Message: " & vbNewline & "==========================" & vbNewline
strMessage = strMessage & StripCode(strNewMessage) & vbNewline & "==========================" & vbNewline & vbNewline & vbNewline
Else
strSubject = strForumTitle & " - New posting in " & ForumName & " - " & TopicName
strMessage = strMessage & MemberName & " has posted the following to the forum '" & ForumName & "' at " & strForumTitle & " that you requested notification on. " & vbNewline & vbNewline
strMessage = strMessage & "Subject: " & TopicName & vbNewline & vbNewline
strMessage = strMessage & "Message: " & vbNewline & "==========================" & vbNewline
strMessage = strMessage & StripCode(strNewMessage) & vbNewline & "==========================" & vbNewline & vbNewline & vbNewline
End If
Else
strSubject = strForumTitle & " - New posting in " & ForumName & " - " & TopicName
strMessage = strMessage & MemberName & " has replied to the topic '" & TopicName & "' on the forum '" & ForumName & "' in the category '" & CatName & "' at " & strForumTitle & " that you requested notification on. " & vbNewline & vbNewline
strMessage = strMessage & "Subject: " & TopicName & vbNewline & vbNewline
strMessage = strMessage & "Message: " & vbNewline & "==========================" & vbNewline
strMessage = strMessage & StripCode(strNewMessage) & vbNewline & "==========================" & vbNewline & vbNewline & vbNewline
End If
Else
strSubject = strForumTitle & " - New posting"
strMessage = strMessage & MemberName & " has posted to the " & strForumTitle & " board that you requested notification on. "
End If
strMessage = strMessage & "You can view the posting at " & strForumURL & "topic.asp?whichpage=-1&TOPIC_ID=" & TopicId & vbNewline
strMessage = strMessage & "<br><br>Manage your subscriptions at " & strForumURL & "subscription_list.asp" & vbNewline
%>
<!--#INCLUDE FILE="inc_mail.asp" -->
<%
end if
Next
End If
End Sub
Function PullSubscriptions(sCatID, sForumID, sTopicID)
If strSubscription = "0" or lcase(strEmail) <> "1" or mLev = 0 Then
PullSubscriptions = "" : Exit Function
End If
Dim BoardSubs, CatSubs, ForumSubs, TopicSubs, rsSub, SubCnt, allSubData, iSub
Dim SubCatID, SubForumID, SubTopicID
subStrSQL = "SELECT CAT_ID, FORUM_ID, TOPIC_ID " & _
" FROM " & strTablePrefix & "SUBSCRIPTIONS" & _
" WHERE MEMBER_ID = " & MemberID
subStrSQL = subStrSQL & GetCheck("CAT_ID", Clng(sCatID))
subStrSQL = subStrSQL & GetCheck("FORUM_ID", Clng(sForumID))
subStrSQL = subStrSQL & GetCheck("TOPIC_ID", Clng(sTopicID))
Set rsSub = Server.CreateObject("ADODB.Recordset")
rsSub.Open subStrSQL, my_Conn, adOpenForwardOnly, adLockReadOnly, adCmdText
If rsSub.EOF or rsSub.BOF Then
SubCnt = ""
PullSubscriptions = ""
Else
allSubData = rsSub.GetRows(adGetRowsRest)
SubCnt = UBound(allSubData,2)
rsSub.Close
End If
Set rsSub = Nothing
If SubCnt = "" Then
PullSubscriptions = ""
Else
BoardSubs = "N"
CatSubs = 0
ForumSubs = 0
TopicSubs = 0
For iSub = 0 to SubCnt
SubCatID = allSubData(0, iSub)
SubForumID = allSubData(1, iSub)
SubTopicID = allSubData(2, iSub)
If SubCatID = 0 Then
BoardSubs = "Y"
ElseIf SubForumID = 0 Then
If CatSubs > "" Then
CatSubs = CatSubs & ","
End If
CatSubs = CatSubs & SubCatID
ElseIf SubTopicID = 0 Then
If ForumSubs > "" Then
ForumSubs = ForumSubs & ","
End If
ForumSubs = ForumSubs & SubForumID
Else
If TopicSubs > "" Then TopicSubs = TopicSubs & ","
TopicSubs = TopicSubs & SubTopicID
End If
Next
PullSubscriptions = BoardSubs & ";" & CatSubs & ";" & ForumSubs & ";" & TopicSubs
End If
End Function
Function GetCheck(ObjectName, ObjectID)
If ObjectID > 0 Then
GetCheck = " AND " & ObjectName & " = " & ObjectID
ElseIf ObjectID = -99 Then
GetCheck = " AND " & ObjectName & " = 0"
Else
GetCheck = ""
End If
End Function
Function ShowSubLink (SubOption, CatID, ForumID, TopicID, ShowText)
Dim DefaultFont
DefaultFont = "<font face=""" & strDefaultFontFace & """ size=""" & strDefaultFontSize & """>"
Dim StandardLinkInfo, LinkText, LinkIcon, LinkLevel, LinkParam
If Instr(Request.ServerVariables("SCRIPT_NAME"),"post.asp") Then
If SubOption = "S" Then
ShowSubLink = "<input type=""checkbox"" name=""Tnotify"" value=""1"" />Check here to subscribe to this topic."
Else
ShowSubLink = "<input type=""checkbox"" name=""Tnotify"" value=""0"" />Check here to unsubscribe from this topic."
End If
Else
StandardLinkInfo = "<a href=""Javascript:"
If SubOption = "U" Then
StandardLinkInfo = StandardLinkInfo & "unsub_confirm"
Else
StandardLinkInfo = StandardLinkInfo & "openWindow"
End If
StandardLinkInfo = StandardLinkInfo & "('pop_subscription.asp?SUBSCRIBE=" & SubOption & "&MEMBER_ID=" & MemberID & "&LEVEL="
LinkParam = ""
If CatID = 0 Then
LinkLevel = "BOARD"
Else
LinkParam = "&CAT_ID=" & CatID
If ForumID = 0 Then
LinkLevel = "CAT"
Else
LinkParam = LinkParam & "&FORUM_ID=" & ForumID
If TopicID = 0 Then
LinkLevel = "FORUM"
Else
LinkLevel = "TOPIC" : LinkParam = LinkParam & "&TOPIC_ID=" & TopicID
End If
End If
End If
If SubOption = "U" Then
LinkIcon = strIconUnsubscribe
select case LinkLevel
case "BOARD" : LinkText = "Unsubscribe from this board"
case "CAT" : LinkText = "Unsubscribe from this category"
case "FORUM" : LinkText = "Unsubscribe from this forum"
case "TOPIC" : LinkText = "Unsubscribe from this topic"
End select
Else
LinkIcon = strIconSubscribe
select case LinkLevel
case "BOARD" : LinkText = "Subscribe to this board"
case "CAT" : LinkText = "Subscribe to this category"
case "FORUM" : LinkText = "Subscribe to this forum"
case "TOPIC" : LinkText = "Subscribe to this topic"
End select
End If
ShowSubLink = StandardLinkInfo & LinkLevel & LinkParam & "')"">" & getCurrentIcon(LinkIcon, LinkText,"align=""absmiddle""" & dwStatus(LinkText)) & "</a>"
If ShowText <> "N" Then
ShowSubLink = ShowSubLink & " " & StandardLinkInfo & LinkLevel & LinkParam & "')""" & dwStatus(LinkText) & ">" & DefaultFont & LinkText & "</font></a>"
End If
End If
End Function
Function StripCode(ByVal fString)
If fString = "" Then
fString = " empty string test"
ElseIf strAllowForumCode = "1" Then
fStringLeft = ""
fFound = False
Do While InStr(fString, "[")
fFound = True
fStringLeft = fStringLeft & " " & Left(fString, InStr(fString, "[")-1)
fString = MID(fString, InStr(fString, "]") + 1)
Loop
StripCode = fStringLeft & fString
If Not fFound Then
StripCode = fString
End If
ElseIf strAllowHTML = "1" Then
fStringLeft = ""
fFound = False
Do While InStr(fString, "<")
fFound = True
fStringLeft = fStringLeft & " " & Left(fString, InStr(fString, "<")-1)
fString = MID(fString, InStr(fString, ">") + 1)
Loop
StripCode = fStringLeft & fString
If Not fFound Then
StripCode = fString
End If
End If
If strBadWordFilter = "1" Then
fString = ChkBadWords(fString)
End If
StripCode = fString
End Function
Response.Write " <script language=""JavaScript"" type=""text/javascript"">" & vbNewLine & _
" <!--" & vbNewLine & _
" function unsub_confirm(link){" & vbNewLine & _
" var where_to= confirm(""Do you really want to Unsubscribe?"");" & vbNewLine & _
" if (where_to== true) {" & vbNewLine & _
" popupWin = window.open(link,'new_page','width=400,height=400')" & vbNewLine & _
" }" & vbNewLine & _
" }" & vbNewLine & _
" //-->" & vbNewLine & _
" </script>" & vbNewLine
%>
|
Edited by - Carefree on 20 September 2011 22:48:37 |
|
|
korray
Starting Member
USA
5 Posts |
Posted - 19 September 2011 : 17:25:33
|
Thanks a lot for your help Carefree. I tried the new code, but it gives the following error. Can you check it out?
Microsoft OLE DB Provider for ODBC Drivers error '80040e10'
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
/disabb/inc_subscription.asp, line 127
|
|
|
Carefree
Advanced Member
Philippines
4207 Posts |
Posted - 19 September 2011 : 18:30:26
|
Oops, sorry - forgot to post the 3.4.06 version. See above. |
|
|
korray
Starting Member
USA
5 Posts |
Posted - 20 September 2011 : 12:47:29
|
another error with the updated code:
Microsoft VBScript compilation error '800a0400'
Expected statement
/disabb/inc_subscription.asp, line 188
End If ^ |
|
|
Carefree
Advanced Member
Philippines
4207 Posts |
Posted - 20 September 2011 : 13:09:15
|
quote: Originally posted by korray
another error with the updated code:
Microsoft VBScript compilation error '800a0400'
Expected statement
/disabb/inc_subscription.asp, line 188
End If ^
Delete that line |
|
|
korray
Starting Member
USA
5 Posts |
Posted - 20 September 2011 : 17:35:54
|
this did not help to solve the problem. |
|
|
Carefree
Advanced Member
Philippines
4207 Posts |
Posted - 20 September 2011 : 22:41:43
|
I'll install a 3.4.06 forum and test it here. |
|
|
korray
Starting Member
USA
5 Posts |
Posted - 22 September 2011 : 17:03:31
|
any updates, any one? |
|
|
Carefree
Advanced Member
Philippines
4207 Posts |
Posted - 23 September 2011 : 01:11:57
|
Tested the code above on a stock 3.4.06 installation here and does not give an error. |
|
|
Topic |
|
|
|