PDA

View Full Version : Options for forums - display or don't display on forum home


Admin
09-16-2001, 10:00 PM
This hack adds a yes/no option for forums, to select whether you want to display that forum (or category) on the main page.
I added a "sanity check", so you can't hide forums that have no parent (because then you won't be able to access any of its sub-forums).
I'll get a demo in a few minutes.

Demo::
https://vborg.vbsupport.ru/attachment.php?s=&postid=172718

Installation::
Run this query:
ALTER TABLE forum ADD showonhome SMALLINT(6) DEFAULT '1' not null AFTER allowicons

In forum.php (admin folder) replace
makeyesnocode("Count posts made in this forum towards user post counts?","countposts",1);
with
makeyesnocode("Count posts made in this forum towards user post counts?","countposts",1);

maketableheader("Other Options");

makeyesnocode("Display this forum on main page","showonhome",1);
Still in forum.php, replace
makeyesnocode("Count posts made in this forum towards user post counts?","countposts",$forum[countposts]);
with
makeyesnocode("Count posts made in this forum towards user post counts?","countposts",$forum[countposts]);

maketableheader("Other Options");

makeyesnocode("Display this forum on main page","showonhome",$forum[showonhome]);
Still in forum.php, replace
moderatenew,allowhtml,allowbbcode,allowimages,allo wsmilies,allowicons,
with
moderatenew,allowhtml,allowbbcode,allowimages,allo wsmilies,allowicons,showonhome,
Still in forum.php, replace
'$moderatenew','$aallowhtmlcode','$aallowbbcode',' $aallowimgcode','$aallowsmilies','$aallowicons',
with
'$moderatenew','$aallowhtmlcode','$aallowbbcode',' $aallowimgcode','$aallowsmilies','$aallowicons','$ showonhome',
Still in forum.php, replace
allowimages='$aallowimgcode', allowsmilies='$aallowsmilies', allowicons='$aallowicons',
with
allowimages='$aallowimgcode', allowsmilies='$aallowsmilies', allowicons='$aallowicons', showonhome='$showonhome',
Still in forum.php, replace
// SANITY CHECK (prevent invalid nesting)
if ($parentid==$forumid) {
echo "<b>ERROR:</b> You can't parent a forum to itself!<br><br>".makelinkcode("Go back","javascript:history.back(1)");
exit;
}
$foruminfo = $DB_site->query_first("SELECT forumid,title,parentlist FROM forum WHERE forumid='$parentid'");
$parents = explode(",", $foruminfo[parentlist]);
while (list(,$val) = each($parents)) {
if ($val==$forumid) {
echo "<b>ERROR:</b> You can't parent a forum to one of its own children!<br><br>".makelinkcode("Go back","javascript:history.back(1)");
exit;
}
}
// end Sanity check
with
// SANITY CHECK (prevent invalid nesting)
if ($parentid==$forumid) {
echo "<b>ERROR:</b> You can't parent a forum to itself!<br><br>".makelinkcode("Go back","javascript:history.back(1)");
exit;
}
$foruminfo = $DB_site->query_first("SELECT forumid,title,parentlist FROM forum WHERE forumid='$parentid'");
$parents = explode(",", $foruminfo[parentlist]);
while (list(,$val) = each($parents)) {
if ($val==$forumid) {
echo "<b>ERROR:</b> You can't parent a forum to one of its own children!<br><br>".makelinkcode("Go back","javascript:history.back(1)");
exit;
}
}
if ($parentid==-1 and $showonhome==0) {
echo "<b>ERROR:</b> You can't hide a forum with no parent!<br><br>".makelinkcode("Go back","javascript:history.back(1)");
exit;
}
// end Sanity check
We don'e with forum.php, save and upload.

In index.php (main folder) replace
$forums=$DB_site->query('SELECT * FROM forum WHERE displayorder<>0 AND active=1 ORDER BY parentid,displayorder');
with
$forums=$DB_site->query('SELECT * FROM forum WHERE displayorder<>0 AND showonhome=1 AND active=1 ORDER BY parentid,displayorder');
We don'e with index.php, save and upload.

That's it! :)

Admin
09-17-2001, 01:09 PM
Demo: :)

It says "You can hide a forum with a parent!" but it's "You can't hide a forum with no parent!". :p

squawell
09-17-2001, 01:12 PM
master i am first reply your post!!

but i still can not use this hack in my forum~~~

cause i haven't phpmyadmin right now~~~

i think next time ba!!

by the way have any picture??--haha!!sorry~i see it!!

it looks great!! thanks your hack~~

shadowbreed
09-17-2001, 02:20 PM
Tested on 2.0.3
Working great.

Great hack!!!

Freddie Bingham
09-17-2001, 02:32 PM
Squawell this is the second time that I will ask you to enter your license into your profile.

DarkReaper
09-17-2001, 06:10 PM
I'm not sure exactly what this does? Here's my idea of it:

You have the forum depth set at 2, so forums 4 deep aren't shown. But if you want one of those shown, you use this and select to have it shown, then its on the forum homepage?

I'm not really sure about this...

squawell: Enter your license info in your profile. To do that go to [url=http://www.vbulletin.com/forum/member.php?s=&action=editprofile]this[url] page and scroll down. Then enter your license and password.

shadowbreed
09-17-2001, 06:57 PM
It's the other way around

Say you have the depth at 3 and have a category with three forums in it:

cat-->forum1
forum2
forum3

Now all forums are shown on forumhome under the category
turn of the show on forumhome switch and they are not shown on main page but if you click the category they're there.

DarkReaper
09-17-2001, 07:04 PM
Oh! So its sorta like what happens when a forum is beyond the depth that is shown. Sweet. :)

bbensen
09-17-2001, 07:57 PM
I just wanted to add, FireFly you rock!!!

I was looking for a collapsable forum feature, but this is just as good if not better!!!

Thanks I'm going to add this tonight.

Jawelin
12-05-2001, 01:32 PM
Very nice...
Just something about 'sanity check'... :p

If I had some private forums within a category, can it be hidden by this hack if none of the subforums is visible to the logged user ?

Thank you very much
Bye

eva2000
01-01-2002, 12:27 AM
nice i like this one :)

okay for 2.2.0 and 2.2.1 ?

Admin
01-01-2002, 12:18 PM
Should work fine.

* FireFly is embarrassed :o

over
01-03-2002, 11:15 AM
nice hack :) thinkin bout installin it :)

Jawelin
01-04-2002, 02:21 PM
Originally posted by Jawelin
Very nice...
Just something about 'sanity check'... :p

If I had some private forums within a category, can it be hidden by this hack if none of the subforums is visible to the logged user ?

Thank you very much
Bye

Just a remark... ;)

Stretchr
01-16-2002, 04:50 PM
Thank you, Chen for another great hack. Just what I have been looking for.

TurboFC3S
01-20-2002, 03:36 PM
Does this work in sub-forums also? Or does it just let you turn off forums on the main page?

Shenlong
01-20-2002, 03:38 PM
can u add a installer or something? im not good with queries or SQL tables :o

Admin
01-20-2002, 03:38 PM
Nope, only on main forum page.

Stretchr
01-20-2002, 03:48 PM
The good news is that you don't have to be proficient with mySQL queries if you use FireFly's hack here: https://vborg.vbsupport.ru/showthread.php?s=&threadid=26272

Couldn't be simpler than this! Thanks again, Chen. This is one of my all-time favorites! :D

TurboFC3S
01-21-2002, 02:12 AM
So are there any hacks similar to this that allow you to do sub-forums as well? How about instead of show on forum home, give the option - show on parent page.

Does that make any sense what I'm talking about?

TurboFC3S
01-23-2002, 01:39 AM
Originally posted by TurboFC3S
So are there any hacks similar to this that allow you to do sub-forums as well? How about instead of show on forum home, give the option - show on parent page.

Does that make any sense what I'm talking about?

Just bumping my question up ...

Sparkz
01-23-2002, 01:56 PM
Originally posted by FireFly
Demo::
http://www.vbulletin.com/forum/attachment.php?s=&postid=172718


Any particular reason for pointing this link to vb.com, when it is in fact right here on vb.org?

*scratches head*

Admin
01-23-2002, 02:49 PM
[QUOTE]Originally posted by Sparkz
Any particular reason for pointing this link to vb.com, when it is in fact right here on vb.org?

*scratches head*

TurboFC3S
01-24-2002, 02:49 AM
Originally posted by TurboFC3S
So are there any hacks similar to this that allow you to do sub-forums as well? How about instead of show on forum home, give the option - show on parent page.

Does that make any sense what I'm talking about?

So is anybody going to answer my question ... please?

Gutspiller
01-29-2002, 09:51 PM
how about making this option available to the end user, and not just for admins? I could really use a hack like THAT. :D

Psychdrone
01-29-2002, 11:15 PM
I am confused this will give you an option to either have the forum displayd on the main page? dose this work on 2.2.1?

Stretchr
01-29-2002, 11:47 PM
Works on 2.2.1 and 2.2.2 quite nicely :)

Originally posted by Psychdrone
I am confused this will give you an option to either have the forum displayd on the main page? dose this work on 2.2.1?

Chris M
08-02-2002, 03:08 PM
Cool Chen:)

Satan

ImportPassion
03-17-2003, 02:31 PM
01-29-02 at 06:51 PM Gutspiller said this in Post #25 (https://vborg.vbsupport.ru/showthread.php?postid=216735#post216735)
how about making this option available to the end user, and not just for admins? I could really use a hack like THAT. :D

yes, exactly waht I need. Is there something like that yet?

Disturbed
03-17-2003, 03:12 PM
damn this hack is like 3 years old ;p

sbryan
06-08-2003, 01:17 AM
im using JamesUS's SQL query tool and when i run the query mentioned above i get this

"Database error in vBulletin Control Panel 2.2.9:

Invalid SQL: ALTER TABLE forum ADD showonhome SMALLINT(6) DEFAULT '1' not null AFTER allowicons
mysql error: Duplicate column name 'showonhome'

mysql error number: 1060"

can anyone help? im really keen to install this hack...

ImportPassion
06-08-2003, 01:33 AM
looks like u alredy have the hack, or tried to run that query twice