News:

Want to get involved in developing SMF, then why not lend a hand on our github!

Main Menu

Softlinked-/Hardlinked- Threads in SMF v1.1.x ?

Started by k.paulsen, June 06, 2010, 03:11:50 AM

Previous topic - Next topic

k.paulsen

We have the need to let the same thread appear in more than one place.  Meaning, it should work like a linked directory in a UNIX filesystem:
you have a thread and it just is accessable from different points in the board tree.  Maybe it has different names in different places but if you
enter this thread, it´s just the one same thread.

Is something like this possible with SMF 1.1.x ?    I do NOT want to copy the same content to duplicate threads and I do NOT want to appear
these threads in all places (not an announcement).

MrPhil

As SMF is currently architected, no, it doesn't sound like this could be easily done. If you wanted a topic to appear in every board, I suppose the best way would be to have a BOARD_ID (link back to the topic's parent board) with a special value such as -1. When displaying all the topics for a given board, you would look for a -1 as well as that board's ID in the topics table. If you want a topic to appear in a limited number of boards, I suppose you could have a BOARD_ID of -2, which says to look in a new "multiboard_topics" table to find which boards to show this topic under. How to have an administrator or moderator build and maintain this new table is left as an exercise for the reader, as is how to deal with deleting a topic or board, moving/splitting topics, etc. SMF seems to be currently implemented to have a strict tree structure of one parent per node (one topic per message, one board per topic, one category per board), but with enough hammering and bending you could probably make it do other things.

k.paulsen

Hmm, such feature would not necessarily destroy the strict tree structure.  The only thing that would be needed is a jump to a
specific target topic when entering such "linked topic" is entered.  That you switch to another main tree would be ok I think   ::)

Advertisement: