T O P I C R E V I E W |
Carefree |
Posted - 13 July 2008 : 07:26:40 This mod allows you to have custom rules for all different member_levels.
Just replace your "rules.asp" with the one you want to use, renaming it to "rules.asp".
1. With "bi-rules", non-members will see only rules in Category 1. All members will see all categories.
2. With "multi-rules", non-members will see only rules in Category 1. Regular members will see categories 1 & 2. Moderators & above will see all categories.
Get it here: SnitzBitz< |
3 L A T E S T R E P L I E S (Newest First) |
Carefree |
Posted - 26 July 2008 : 02:44:04 Here are some updates to usergroup/prisoner/rules mods. First we have some instructions:
Next, we have a slight change to the detection/assignment routine in default.asp (has to become a session variable):
Rules.asp changes to allow prisoners to have their own rules.
<%
'################################################################################
'## Snitz Forums 2000 v3.4.06
'################################################################################
'## Copyright (C) 2000-06 Michael Anderson, Pierre Gorissen,
'## Huw Reddick and Richard Kinser
'##
'## This program is free software; you can redistribute it and/or
'## modify it under the terms of the GNU General Public License
'## as published by the Free Software Foundation; either version 2
'## of the License, or (at your option) any later version.
'##
'## All copyright notices regarding Snitz Forums 2000
'## must remain intact in the scripts and in the outputted HTML
'## 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 the 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 the Free Software
'## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
'##
'## Support can be obtained from our support forums at:
'## http://forum.snitz.com
'##
'## Correspondence and Marketing Questions can be sent to:
'## manderson@snitz.com
'##
'################################################################################
'################################################################################
'## MOD: Forum Rules v1.3 for Snitz Forums v3.4
'## Author: Michael Reisinger (OneWayMule)
'## File: rules.asp
'##
'## Get the latest version of this MOD at
'## http://www.onewaymule.org/onewayscripts/
'################################################################################
%>
<!--#INCLUDE FILE="config.asp"-->
<!--#INCLUDE FILE="inc_sha256.asp"-->
<!--#INCLUDE FILE="inc_header.asp" -->
<!--#INCLUDE FILE="inc_func_member.asp" -->
<%
'##### intDisplayMethod:
'### 0 - Displays all rules/categories on one page
'### 1 - Displays each Category on a seperate page
' ############################# PRISONER MOD ONLY #####################################
' ## If using the prisoner mod, set the value below to a category limited to their use.
' ##
PRISON=4
' ##
' ## Note:
' ## To prevent prisoners having access to any specific page, change the default.asp's
' ## variable assignment to a session variable and then enclose the page to be blocked
' ## with the following code (eliminating the remark apostrophes):
' ##
' ## if Session("USERGROUP_ID") <> 1 then
' ## rest of code here
' ## else
' ## Response.Redirect "Default.asp"
' ## end if
' ##
' ########################### PRISONER MOD ONLY END ###################################
if Request.QueryString("ID") <> "" and IsNumeric(Request.QueryString("ID")) = True then
intMemberID = cLng(Request.QueryString("ID"))
else
intMemberID = 0
end if
Const intDisplayRulesMethod = 0
Sub DisplayRulesCat(cat_id)
strsql = "SELECT RULES_ID, RULES_TITLE, RULES_DESCRIPTION, RULES_ORDER, RULES_CAT FROM " & strTablePrefix & "RULES WHERE RULES_CAT=" & cat_id & " ORDER BY RULES_ORDER ASC, RULES_TITLE ASC"
Set frs = my_conn.execute(strsql)
If frs.EOF Or frs.BOF Then
Response.Write " <tr>" & vbNewLine & _
" <td bgcolor=""" & strForumCellColor & """ align=""center"">" & vbNewLine & _
" <font face=""" & strDefaultFontFace & """ size=""" & strDefaultFontSize & """>No Rules found.</font>" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine
Else
Response.Write " <ul>" & vbNewLine
Do Until frs.EOF
Response.Write " <tr>" & vbNewLine & _
" <td bgcolor=""" & strCategoryCellColor & """><a href=""#top"">" & getCurrentIcon(strIconGoUp,"Go To Top Of Page","align=""right""") & "</a>" & vbNewLine & _
" <font face=""" & strDefaultFontFace & """ size=""" & strDefaultFontSize & """ color=""" & strCategoryFontColor & """>" & vbNewLine & _
" <b><a name=""rulesid" & frs("RULES_ID") & """>" & ChkString(frs("RULES_TITLE"),"display") & "</a></b></font>" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine & _
" <tr>" & vbNewLine & _
" <td bgcolor=""" & strForumCellColor & """>" & vbNewLine & _
" <font size=" & strDefaultFontSize & " face=""" & strDefaultFontFace & """ color=""" & strDefaultFontColor & """>" & vbNewLine & _
" <p>" & formatStr(frs("RULES_DESCRIPTION")) & "</p></font>" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine
frs.Movenext
Loop
End if
frs.close
End Sub
strAction = Request.QueryString("cat")
If strAction = "" then
If mLev=0 then Response.Write "<br />" & vbNewLine
Response.Write "<table width=""100%"" border=""0"">" & vbNewLine & _
" <tr>" & vbNewLine & _
" <td><font face=""" & strDefaultFontFace & """ size=""" & strDefaultFontSize & """>" & getCurrentIcon(strIconFolderOpen,"","") & " <a href=""default.asp"">All Forums</a><br />" & vbNewLine & _
" " & getCurrentIcon(strIconBar,"","") & getCurrentIcon(strIconFolderOpenTopic,"","") & " Forum Rules</font>" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine & _
"</table>" & vbNewLine & _
"<table border=""0"" width=""100%"" cellspacing=""0"" cellpadding=""0"" align=""center"">" & vbNewLine & _
" <tr>" & vbNewLine & _
" <td bgcolor=""" & strTableBorderColor & """>" & vbNewLine & _
" <table border=""0"" width=""100%"" cellspacing=""1"" cellpadding=""4"">" & vbNewLine & _
" <tr>" & vbNewLine & _
" <td bgcolor=""" & strHeadCellColor & """ class=""header"">" & vbNewLine & _
" <font face=""" & strDefaultFontFace & """ size=""" & strDefaultFontSize & """ color=""" & strCategoryFontColor & """>" & vbNewLine & _
" <b>Forum Rules</b></font>" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine & _
" <tr>" & vbNewLine & _
" <td bgcolor=""" & strForumCellColor & """>" & vbNewLine & _
" <p><font face=""" & strDefaultFontFace & """ size=""" & strDefaultFontSize & """ color=""" & strForumFontColor & """>" & vbNewLine & _
" <br /><ul>" & vbNewLine
If mLev = 0 then
strsql = "SELECT RCAT_ID, RCAT_TITLE, RCAT_ORDER FROM " & strTablePrefix & "RULES_CATEGORY WHERE RCAT_ID=1 ORDER BY RCAT_ORDER ASC, RCAT_TITLE ASC"
elseif (mLev > 0 and mLev< 3) then
strsql = "SELECT RCAT_ID, RCAT_TITLE, RCAT_ORDER FROM " & strTablePrefix & "RULES_CATEGORY WHERE RCAT_ID<3 ORDER BY RCAT_ORDER ASC, RCAT_TITLE ASC"
if Session("USERGROUP_ID") = 1 then
strsql = "SELECT RCAT_ID, RCAT_TITLE, RCAT_ORDER FROM " & strTablePrefix & "RULES_CATEGORY WHERE (RCAT_ID<3 OR RCAT_ID=" & PRISON & ") ORDER BY RCAT_ORDER ASC, RCAT_TITLE ASC"
end if
else
strsql = "SELECT RCAT_ID, RCAT_TITLE, RCAT_ORDER FROM " & strTablePrefix & "RULES_CATEGORY ORDER BY RCAT_ORDER ASC, RCAT_TITLE ASC"
end if
Set crs = my_conn.Execute(strsql)
If crs.EOF Or crs.BOF Then
Response.Write " No Categories found." & vbNewLine
Else
Do Until crs.EOF
If intDisplayRulesMethod = 1 then
strRulesLink = "rules.asp?cat=" & crs("RCAT_ID")
Else
strRulesLink = ""
End If
Response.Write " <li><span class=""spnMessageText""><a href=""" & strRulesLink & "#catid" & crs("RCAT_ID") & " ""><b>" & ChkString(crs("RCAT_TITLE"),"display") & "</b></a></span>" & vbNewLine
If mLev = 0 then
strsql = "SELECT RULES_ID, RULES_TITLE, RULES_ORDER, RULES_CAT FROM " & strTablePrefix & "RULES WHERE RULES_CAT=1 ORDER BY RULES_ORDER ASC, RULES_TITLE ASC"
elseif (mLev > 0 and mLev< 3) then
if Session("USERGROUP_ID") <> 1 then
strsql = "SELECT RULES_ID, RULES_TITLE, RULES_ORDER, RULES_CAT FROM " & strTablePrefix & "RULES WHERE (RULES_CAT=" & crs("RCAT_ID") & " AND RULES_CAT<3) ORDER BY RULES_ORDER ASC, RULES_TITLE ASC"
else
strsql = "SELECT RULES_ID, RULES_TITLE, RULES_ORDER, RULES_CAT FROM " & strTablePrefix & "RULES WHERE (RULES_CAT=" & crs("RCAT_ID") & " AND (RULES_CAT<3 OR RULES_CAT=" & PRISON & ")) ORDER BY RULES_ORDER ASC, RULES_TITLE ASC"
end if
else
strsql = "SELECT RULES_ID, RULES_TITLE, RULES_ORDER, RULES_CAT FROM " & strTablePrefix & "RULES WHERE RULES_CAT=" & crs("RCAT_ID") & " ORDER BY RULES_ORDER ASC, RULES_TITLE ASC"
end if
Set frs = my_conn.execute(strsql)
If frs.EOF Or frs.BOF Then
Response.Write " <br />No Rules found.</li>" & vbNewLine
Else
Response.Write " <ul>" & vbNewLine
Do Until frs.EOF
Response.Write " <li><span class=""spnMessageText""><a href=""" & strRulesLink& "#rulesid" & frs("RULES_ID") & " "">" & ChkString(frs("RULES_TITLE"),"display") & "</a></span></li>" & vbNewLine
frs.Movenext
Loop
Response.Write " </ul></li>" & vbNewLine
End if
frs.close
Set frs = nothing
crs.Movenext
Response.Write " <br />" & vbNewLine
Loop
Response.Write " </ul>" & vbNewLine
End If
Response.Write " </font></p>" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine
If intDisplayRulesMethod = 0 then
if mLev = 0 then
strsql = "SELECT RCAT_ID, RCAT_TITLE, RCAT_ORDER FROM " & strTablePrefix & "RULES_CATEGORY WHERE RCAT_ID=1 ORDER BY RCAT_ORDER ASC, RCAT_TITLE ASC"
elseif (mLev > 0 and mLev< 3) then
strsql = "SELECT RCAT_ID, RCAT_TITLE, RCAT_ORDER FROM " & strTablePrefix & "RULES_CATEGORY WHERE RCAT_ID<3 ORDER BY RCAT_ORDER ASC, RCAT_TITLE ASC"
if Session("USERGROUP_ID") = 1 then
strsql = "SELECT RCAT_ID, RCAT_TITLE, RCAT_ORDER FROM " & strTablePrefix & "RULES_CATEGORY WHERE (RCAT_ID<3 OR RCAT_ID=" & PRISON & ") ORDER BY RCAT_ORDER ASC, RCAT_TITLE ASC"
end if
else
strsql = "SELECT RCAT_ID, RCAT_TITLE, RCAT_ORDER FROM " & strTablePrefix & "RULES_CATEGORY ORDER BY RCAT_ORDER ASC, RCAT_TITLE ASC"
end if
Set crs = my_conn.Execute(strsql)
If crs.EOF Or crs.BOF Then
'## Do Nothing...
Else
Do Until crs.EOF
Response.Write " <tr>" & vbNewLine & _
" <td bgcolor=""" & strHeadCellColor & """ class=""header""><a href=""#top"">" & getCurrentIcon(strIconGoUp,"Go To Top Of Page","align=""right""") & "</a>" & vbNewLine & _
" <font face=""" & strDefaultFontFace & """ size=""" & strDefaultFontSize & """ color=""" & strCategoryFontColor & """>" & vbNewLine & _
" <b><a name=""catid" & crs("RCAT_ID") & """>" & ChkString(crs("RCAT_TITLE"),"display") & "</a></b>" & vbNewLine & _
" </font>" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine
Call DisplayRulesCat(crs("RCAT_ID"))
Set frs = nothing
crs.Movenext
Loop
End If
End If
Else
strsql = "SELECT RCAT_ID, RCAT_TITLE, RCAT_ORDER FROM " & strTablePrefix & "RULES_CATEGORY WHERE RCAT_ID=" & strAction & " ORDER BY RCAT_ORDER ASC, RCAT_TITLE ASC"
Set crs = my_conn.Execute(strsql)
If crs.EOF Or crs.BOF Then
Response.Redirect("rules.asp")
End If
Response.Write " <table width=""100%"" border=""0"">" & vbNewLine & _
" <tr>" & vbNewLine & _
" <td><font face=""" & strDefaultFontFace & """ size=""" & strDefaultFontSize & """>" & getCurrentIcon(strIconFolderOpen,"","") & " <a href=""default.asp"">All Forums</a><br />" & vbNewLine & _
" " & getCurrentIcon(strIconBar,"","") & getCurrentIcon(strIconFolderOpen,"","") & " <a href=""rules.asp"">Forum Rules</a><br />" & vbNewLine & _
" " & getCurrentIcon(strIconBlank,"","") & getCurrentIcon(strIconBar,"","") & getCurrentIcon(strIconFolderOpenTopic,"","") & " " & ChkString(crs("RCAT_TITLE"),"display") & "</font>" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine & _
" </table>" & vbNewLine & _
" <table border=""0"" width=""100%"" cellspacing=""0"" cellpadding=""0"" align=""center"">" & vbNewLine & _
" <tr>" & vbNewLine & _
" <td bgcolor=""" & strTableBorderColor & """>" & vbNewLine & _
" <table border=""0"" width=""100%"" cellspacing=""1"" cellpadding=""4"">" & vbNewLine & _
" <tr>" & vbNewLine & _
" <td bgcolor=""" & strHeadCellColor & """ class=""header"">" & vbNewLine & _
" <font face=""" & strDefaultFontFace & """ size=""" & strDefaultFontSize & """ color=""" & strCategoryFontColor & """>" & vbNewLine & _
" <b>" & ChkString(crs("RCAT_TITLE"),"display") & "</b></font>" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine & _
" <tr>" & vbNewLine & _
" <td bgcolor=""" & strForumCellColor & """>" & vbNewLine & _
" <p><font face=""" & strDefaultFontFace & """ size=""" & strDefaultFontSize & """ color=""" & strForumFontColor & """>" & vbNewLine & _
" <br />" & vbNewLine
strsql = "SELECT RULES_ID, RULES_TITLE, RULES_ORDER, RULES_CAT FROM " & strTablePrefix & "RULES WHERE RULES_CAT=" & strAction & " ORDER BY RULES_ORDER ASC, RULES_TITLE ASC"
Set frs = my_conn.execute(strsql)
If frs.EOF Or frs.BOF Then
Response.Write " No Rules found.</li>" & vbNewLine
Else
Response.Write " <ul>" & vbNewLine
Do Until frs.EOF
Response.Write " <li><span class=""spnMessageText""><a href=""" & strRulesLink& "#rulesid" & frs("RULES_ID") & " "">" & ChkString(frs("RULES_TITLE"),"display") & "</a></span></li>" & vbNewLine
frs.Movenext
Loop
Response.Write " </ul>" & vbNewLine
End if
frs.close
Set frs = nothing
Response.Write " </font></p>" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine
Call DisplayRulesCat(strAction)
End If
Response.Write " </table>" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine & _
" </table>" & vbNewLine & _
" <br />" & vbNewLine & _
" </td>" & vbNewLine & _
" </tr>" & vbNewLine & _
"</table>"
WriteFooter
Response.End
%>
|
Carefree |
Posted - 26 July 2008 : 01:31:04 I can make allowances for prisoners, too; so they'd have their own exclusive rules (they'd also see the regular member rules - so they could review their conduct accordingly). I'll modify this so that anyone who implemented the prisoner/amnesty/usergroup mods can change a single line and use it.
Sorry I didn't respond earlier, this particular post didn't get marked as new to me somehow.< |
Etymon |
Posted - 14 July 2008 : 20:40:40 I haven't cracked it open yet, but I did download it.
I like the idea!
How does it agree with the Usergroups MOD?
I'm thinking along the lines of the Amnesty MOD and other similar MODs so that a set of special rules like say, "How to get out on good behavior" can be posted just for those folks.
Thank you for the MOD, Carefree!
Cheers,
Etymon < |
|
|