MOD: mark "important" topics (beta) - Posted (1561 Views)
Member Locked
eauxvives
Posts: 145
145
this is a followup on the discussion here:
http://forum.snitz.com/forum/topic.asp?TOPIC_ID=61093
as suggested by tribaliztic, I am making the code available to everyone.
The purpose of this small MOD is to allow moderators and admins to "mark" certain topics which then can be retrieved using a SQL query and for example be displayed on the site's home page (or forum) as 'webmaster's picks'.
IMPORTANT, PLEASE NOTE:
1. this is my first MOD (after having used Snitz for 7 years, I'm proud!)
2. I am very far from being an ASP/Snitz expert.
3. I have initially made the modifications on already heavily modded pages, so I hope I have not made mistakes in finding the changes and locating the proper places where to apply the changes on 'clean' pages. 4. English is not my native language

So, consider this as beta! I am waiting for the specialist's advice and suggestions on this, so please do not add this to your forum unless you're really sure what you're doing
So, here it is:
http://www.eauxvives.org/forum/mark_topic_help.htm

<
 Sort direction, for dates DESC means newest first  
 Page size 
Posted
Senior Member
Jezmeister
Posts: 1141
1141
I havent tested it but a few things that might make it easier for people:
Create a zip file containing the image files, readme and a dbs file... eg:

dbs_ImportantTopics.asp
Code for file:
Code:
DBS File For Important Topics Mod
[ALTER] TOPICS
ADD#T_FLAG#int#NULL#
[END]

Also you might want to note that it's not MySql friendly asis, I'll have a go at installing it later - looks good!<
Posted
Average Member
modifichicci
Posts: 787
787
Don't forget to update A_TOPICS and admin_forums also, to let archive functions working...<
Posted
Senior Member
tribaliztic
Posts: 1532
1532
Originally posted by Jezmeister

Also you might want to note that it's not MySql friendly asis, I'll have a go at installing it later - looks good!

AAAAAHH!!! Not MySQL-friendly? =)
What would cause problems? Can anyone do the required changes to make it work with MySQL? <
/Tribaliztic
- www.gotlandrace.se -
Posted
Member Locked
eauxvives
Posts: 145
145
Originally posted by modifichicci
Don't forget to update A_TOPICS and admin_forums also, to let archive functions working...
don't know if anyone would want to 'mark' topic that are archived ? (i.e. 'old' )<
Posted
Average Member
modifichicci
Posts: 787
787
Not to archive that topic, but all topic will have a new field that must be also in A_ table.. or the routine of archiviation could fail.<
Posted
Senior Member
Jezmeister
Posts: 1141
1141
Originally posted by Jezmeister

Also you might want to note that it's not MySql friendly asis, I'll have a go at installing it later - looks good!

AAAAAHH!!! Not MySQL-friendly? =)
What would cause problems? Can anyone do the required changes to make it work with MySQL?

well the specific thing I noticed was that you used "TOP" in your query - MySql doesn't support that... eg if you added this into inc_header.asp instead you could call the code from any part of the site:
Code:
if strDBType = "mysql" then
strITop2 = "select * from " & strTablePrefix & "topics where t_flag >0 order by t_flag desc"
strITop2 = strITop2 & " LIMIT 10 "
else
strITop2 = "select top 10 * from " & strTablePrefix & "topics where t_flag >0 order by t_flag desc"
end if
Set strITop = my_Conn.Execute(strITop2)
<
Posted
Member Locked
eauxvives
Posts: 145
145
OK, i'll fix this
another suggestion I got is to add the icons also in active.asp, not only forum.asp
any other suggestions ?<
Posted
Senior Member
tribaliztic
Posts: 1532
1532
Ah, the old TOP =) I thought it was more to it than that =)
<
/Tribaliztic
- www.gotlandrace.se -
Posted
Dev. Team Member & Support Moderator
OneWayMule
Posts: 4969
4969
Originally posted by Jezmeister
AAAAAHH!!! Not MySQL-friendly? =)
What would cause problems? Can anyone do the required changes to make it work with MySQL?
well the specific thing I noticed was that you used "TOP" in your query - MySql doesn't support that... eg if you added this into inc_header.asp instead you could call the code from any part of the site:
Code:
if strDBType = "mysql" then
strITop2 = "select * from " & strTablePrefix & "topics where t_flag >0 order by t_flag desc"
strITop2 = strITop2 & " LIMIT 10 "
else
strITop2 = "select top 10 * from " & strTablePrefix & "topics where t_flag >0 order by t_flag desc"
end if
Set strITop = my_Conn.Execute(strITop2)
That's what the TopSQL funcion from inc_func_common.asp is for...
So instead of
Code:
if strDBType = "mysql" then
strITop2 = "select * from " & strTablePrefix & "topics where t_flag >0 order by t_flag desc"
strITop2 = strITop2 & " LIMIT 10 "
else
strITop2 = "select top 10 * from " & strTablePrefix & "topics where t_flag >0 order by t_flag desc"
end if
Set strITop = my_Conn.Execute(strITop2)
you can use
Code:
strITop2 = "SELECT FROM " & strTablePrefix & "TOPIC WHERE T_FLAG > 0 ORDER BY T_FLAG DESC"
strITop2 = TopSQL(strITop,10)
Set strITop = my_Conn.Execute(strITop2)
<
Posted
Senior Member
tribaliztic
Posts: 1532
1532
Nice, there are some good stuff in the inc_func-files.. =)
btw, is there a list of all functions and how they could be used? <
/Tribaliztic
- www.gotlandrace.se -
You Must enter a message