The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#1
|
||||
|
||||
Virtual Forums (Concept discussion - not a hack or request for one)
((This was posted on vb3 mod req and subsequently ignored. Maybe that was the wrong forum))
This is a theoretical discussion about how to organize the information that occurs on a messageboard or any large site - and a possible solution within vbulletin; virtual forums A virtual forum is one holding threads that share a given property. Threads cannot be started in a virtual forum - they must instead be started elsewhere, but they appear here if certain criteria are met. Threads move into and out of virtual forums as their criteria changes or by lieu of the moderators. Ok, by now I'm sure some of you are asking why? Well, couple of reasons. First, it's not always easy to divide subject material cleanly into forums. For instance, I help run an RPG site. Now, we have a forum set aside for house rules and for official rules. Either of these forums can have threads about character classes, equipment, spells, etc. Creation of a spells forum would overlap both of these forums - it would be *nice* but it rules out having forums for the house rules / official rules split. A less site specific example. Say you had subject areas A B C. Within each you had topics 1, 2, and 3. Now, under vbulletin's current system you have to make a choice. Create forums for 1, 2, and 3 or A, B, C. If you're nuts you could have nine forums (a1, b1, etc), but what if multiple topics could be raised in a subject? Searching is one answer to this, but on large boards constant searching can cause server lag - especially if the servers are old. Which returns me to this idea of Virtual Forums. Again, a virtual forum looks over the entire boards (or an admin defined section of the boards) for threads that meet certain criteria. You could have, for moderating purposes, threads started by users with less than 100 posts (which are more likely to be put in a wrong forum - noobs do that). Or a virtual forum containing all threads that have images. Returning to the example above, users could check off topics 1, 2, or 3 as they create a thread and the appropriate virtual forums could suck up the thread in addition to the actual forum containing the thread. Or perhaps if a keyword appears X times in a thread the virtual forum will take up the thread - this would save on the amount of times the search feature would be employed. Post icons are used on some boards (including mine) as a secondary labeling system. But this system serves no real purpose since post icons can't be used for sorting (short of hacking of course). They are, at best, a decorative feature. Well, I think I've went on long enough. I have no idea how this idea would be implemented but my instincts tell me it would require the hacking of several dozen files and templates. I think the principle though is something Jelsoft should look into for future releases of the software. If this principle is executed correctly it would give vbulletin another leg up on its competitors. I'd lke to discuss this concept some before engaging on any hard coding. Thoughts and comments requested. |
#2
|
||||
|
||||
Moved to general modification discussion, as in essence it is the discussion of a modification
|
#3
|
||||
|
||||
Ok by me. I've been trying to find a home for it.
|
#4
|
|||
|
|||
This idea sounds similar to the concept of "Search Folders" in Microsoft Outlook.
Sounds like an interesting mod. r |
#5
|
|||
|
|||
This should not be as difficult as you might think. A virtual forum could easily contain only redirects to other threads in real forums. vBulletin already supports that. Also, you'd set up the forums that are going to act as virtual forums to disallow posting by non-admin's.
All you need now is a script to run periodically that scans threads to see if they meet the criteria for inclusion in a virtual forum. A few possible hitches come to mind: 1. You would not want to run this often as scanning the entire thread table, albeit for real forums only with threads that are new/changed, is time-consuming on a large board. Remember, you have to scan the entire table as even older threads might only recently meet the criteria (i.e., it did not match yesterday, but it matches today). 2. You'd probably want the ability for admin/mod to tag a thread by hand for inclusion in a virtual forum. 3. Would you ever want to scan the virtual forums to see if threads should be booted because they no longer meet the criteria? |
#6
|
||||
|
||||
to 1: why scan the whole table? I think this would only be needed if the criterias change, otherwise one could just use the lastpost date. Edited posts really aren't worth the effort of scanning the whole table.
|
#7
|
|||
|
|||
Quote:
Anyway, you are asking the wrong person Colin. I do not know what his needs are. |
#8
|
||||
|
||||
Couldn't the index on the forumid, visible, sticky and lastpost be used?
Whatever, it's not that important |
#9
|
|||
|
|||
Whatever way you cut it, the server has to scan the table -- either mysql does it quickly because you use only an index reference or it does it slowly because you require a more complicated/non-index WHERE, or slower still, as does some of the code in vB, you can get the id's, but then you then loop on them doing your fancy-schmancy criteria matching.
Geeze man, I think we can stay at the pseudo-code level at the earliest stages of discussion. Cheers |
#10
|
|||
|
|||
Well vBulletin already scans the thread table elsewhere in the same manner, and your always going to take a shot in load with such a feture. You could store the data elsewhere but why waste clockcycles making a copy of date or removing it to manage the virtual forum?
The best way would probbly have to be managed by moderators, via check boxes ethor in the thread or on a seprate moderation page for the thread. In this space the mod could assign the thread to virtual forums they want it to display in. This would invoke a update function which would write data to a new field in the thread table. Then it would be a matter of writting ethor a modification to forumdisplay.php or a seprate php file in which you would query the thread table for data based on the new field we added. |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|