Vanilla 1 is no longer supported or maintained. If you need a copy, you can get it here.

Moving things from panel to another location

edited May 2008 in Vanilla 1.0 Help
A lot of the features and extensions like DiscussionFilters and discussion options, Your Discussions are located in the panel. (all on the left side in this forum for example). What I'd like to do is move certain things to other locations, to the top of the forum for example. Are all cases different or is there a single variable in each extension that needs to be changed do what I describe?

Thanks.

Comments

  • edited May 2008
    Anyone?
  • edited May 2008
    What do mean---do you want to move them up to the top like the Lussumo links here, or do you mean add them as Menu tabs?

    It's doable, of course, but it will require a bit of work, and I'm not sure if there's any elegant way to do it. I would guess that you would need to manually make some sort of list of links you want to move. You would then have to write a class---preferably in an extension enabled at the very end of the extension---that searches the Panel array for the desired links, removes them, and then places them in it's own array (to be displayed at the top or as tabs).
  • Not as tabs, but under the tabs for example, between the tabs and the topic title. The extensions that appear to the left on this forum must have the location in which they appear specified in the code. So instead of that location being the left panel, it'd need to be somehow changed to appear in another location.
  • The problem you've got is that the panel is a defined location in the codebase - there's a specific set of functions to add stuff there as with the Menu. I'm not aware of any functions to add stuff elsewhere but that doesnt mean it's not possible.

    Probably the easiest thing to do would be to add it to the panel but use CSS to locate it somewhere else?
  • edited May 2008
    MinisweeperProbably the easiest thing to do would be to add it to the panel but use CSS to locate it somewhere else?
    Yeah, but you still have the issue of identifying which links to move. Panel links aren't granted an id or anything by default, so at the least, you would have to re-write each extension to add an id and/or class.
    MinisweeperThe problem you've got is that the panel is a defined location in the codebase - there's a specific set of functions to add stuff there as with the Menu. I'm not aware of any functions to add stuff elsewhere but that doesn't mean it's not possible.
    There's nothing by default, but all you have to do is write a class that extends Control (Control has functions for creating lists/arrays), give it a function that copies & deletes links from the Panel array, and then grant that class render control (Page::AddRenderControl()).
This discussion has been closed.