Please upgrade here. These earlier versions are no longer being updated and have security issues.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

Legal rules.

elwizardelwizard New
edited June 2013 in Vanilla 2.0 - 2.8

Hi. I've started to create my own themes, addons (plugins and applications) and also mods to Vanilla, and I have left this question in what concerns legal issues. I know what GPL2 means, but, I want to know what do you think respecting to this matter. The question is:
I'm currently modifying core files in order to create my own modifications to Vanilla Forum, and I want to to know if I can distribute modified Vanilla core files in a Zipped file (for free, of course), in my own forum (and here if you wish it), to do to the users realize my own mods quickly, without the necessity of changing and editing files, one by one.

I'm also starting to learn how to code your plugins and applications, but I'm accostumated to code PHP directly, and now i'm starting to learn how MVC and framework works, including Firevents, and that it is something different since I was at Mkportal dev. staff.

I'm also creating new Vanilla themes, some of them will require one of my changes, for better visual aspect in CSS.

You can see an example in my own board (I don't wanna do spam, sorry) at
This is an example of my own mods.

So, what do you think about my question. Sorry by my English, I'm Spanish speaker. Thanks.


  • Options
    hgtonighthgtonight ∞ · New Moderator

    I am not a lawyer.

    That page seems to agree that you can do this.

    Search first

    Check out the Documentation! We are always looking for new content and pull requests.

    Click on insightful, awesome, and funny reactions to thank community volunteers for their valuable posts.

  • Options

    Yes, thank you. I'm going to wait a few more posts from the staff. Thank you in advance.

  • Options

    Maybe @todd or @Lincoln can help you and solved this questions.

  • Options
    ToddTodd Chief Product Officer Vanilla Staff

    You can create your own plugins and themes. I know there is some controversy here with regards to the GPL in general, but we won't bother you about this.

    Changing the core and distributing it requires you to open source that change. We do want you to obey the GPL with respect to anything in our repos.

    Beyond the legality we really recommend you don't hack the core for technical reasons. Theres a whole lot you can do with Vanilla without modifying the core. This community can help you with that.

  • Options

    Thank you all for your quick answers. All seems to be clear in this matter. I've coded for other communities and I always had problems in what a rules & copyrights referred. For this way, I prefer to know what the creators/staff thinks about that befor to do something which could damage or break the rules in each community, due to, each community is a different world with a different rules.

    Respect to hack de core, I've got some more questions, because I haven't very clear these points:
    1. When I said 'core files', will that means 'files included in library/core/ directory or on the overall of files included in the package?
    I say that, my hacks doesn't modify library/core/ files. I just modified dashboard/ or vanilla/ applications.

    1. I have this technical question about 'FireEvents'. For what I could investigate, FireEvents is something like a 'wildcard', this is a system's function that reads if any application and/or plugin has added some extra code inside this event, so, apart of display the 'original code', it also displays the code added in the controller. My doubt is: how do you do if the view (as it could be in the dashboard admin files) doesn't have a FireEvent declared on it?
      BTW: Some images in your tech docs doesn't appear. Sorry.

    2. And another question is... how do you do to change the categories/forums/discussion/comment appaerance (style) without changing applications/vanilla/views/ files? CSS stylesheet style.css (or custom.css) in themes gives me a feeling of a lack and/or confusing definitions in the stylesheet for the theme developers. Perhaps it is my ignorance (sorry for that).

    Thank you in advance. Best regards.

  • Options
    vrijvlindervrijvlinder Papillon-Sauvage MVP
    edited June 2013

    I'm not sure about 1. Fire event from what I understand , is the instruction to make something happen and when and where.

    2.this I can help with, you can change the style of specific pages without affecting the others. You simply need to declare the body of that page in the selector


    body.Vanilla.Discussion.Index is the body for the discussions index, putting this in front of what you want to change will make it only happen on that page

    body.Vanilla.Discussion.Index #Content <----in this case only the #Content from the index will be affected.

  • Options
    hgtonighthgtonight ∞ · New Moderator

    I can respond to number 1.

    FireEvent() is a method of the Gdn_Pluggable class. Any time this function is called, the plugin manager executes any code in any of the plugins that matches the handlers passed.

    View files are a special case: they can both fire events and be overridden. As such, a plugin that relies on a view firing an event cannot be guaranteed to run. That said, it is usually a trivial modification to html override to include the event.

    Search first

    Check out the Documentation! We are always looking for new content and pull requests.

    Click on insightful, awesome, and funny reactions to thank community volunteers for their valuable posts.

  • Options

    Thank you both for you anwsers. Respect to the point one, more or less, is the same answer you said, everyone with his own words, with my own answer. But, I still don't know the second part of the point 1. I modified the dashboard files directly (and some of the Vanilla), in order to improve functions in categories, as it could be: add a category or forum selection, direct link, password on categories, roles permission for categories, .... but I want to know if that's possible to change without hacking or modifying directly the files, just because "current" users doesn't know how to edit and modify .php, .css or .tpl files, include new fields in a database table or add new databases. For that reason, I want to know from you (and if is possible) to create pluggins that could improve functions in admin without modifying directly files.

    Well, respecting to my second point, what I did was create new theme, copying default index tpl and all the css stylesheet called style.css and all the images included in the image/ dashboard directory, deleting all all them that are unnecesary (images of the dashboard). After I edited the tpl file for my own necessities, because in 2.2 version (other think that I cannot understand is why in the 2.2 version .php default file doesn't work). Then I viewed that discussions, comments and categories in the style css it is something embarrassing for me (sorry, I needed to test one by one which one modify what...), that's because in my humble opinion there's a few divisions (divs) that makes that the coder needs to know perfectly css to create a good and attractive forum view. In my humble oppinion, I've been viewing other user's themes and in the overall of the theme seems to be good, but when I view the content inside it seems to be a lack of styling (just my oppinion). Perhaps to someone this style is ok, but that are oppinions only. For that reason, I modified Vanilla view files in order of styling to my own likes, creating new divs and new css classes for these divs.
    Working with FireEvents a coder can, at first sight, add new improvements, in those places where it exists, but not where the coder wants to add it, just where the FireEvent is, without any possibility else apart from editing vanilla files.

    What do you think about this?

  • Options
    lifeisfoolifeisfoo Zombie plugins finder ✭✭✭

    @elwizard install the eventi plugin and enable it.
    Then, at every page load you can see what events has been fired using FireEvent. Moreover, inspecting each event you can see what function you need to add to your themehooks file or to your plugin, in order to intercept the event and customize vanilla behavior.

    public function CategoriesController_Render_Before($Sender) {
    echo "<pre>";
    echo "</pre>"

    I hope this can help you.

    There was an error rendering this rich post.

  • Options

    Downloading... thx Yes, this will help me a lot.

  • Options
    ToddTodd Chief Product Officer Vanilla Staff

    With regards to the legal issue. Anything in our open source repositories are bound by the GPLv2 which means all of the github repo.

  • Options

    Yes, thank you. I'm registered at github repo. Btw: i've seen Bbcode isn't implemented (yet) althought bbcode function is already created on library/core/ class. I've tested it and it has some issues with code, php, s (strike) but it's ok. I wanna fix the bugs.

  • Options
    ToddTodd Chief Product Officer Vanilla Staff

    You are welcome to fix bbcode bugs, but if you really want to use bbcode I recommend enabling the nbbc plugin. It's our plan to route all bbcoding through this in the future.

  • Options

    Ok thanks. I'll try with nbbc plugin. btw: eventi plugin saves a lot of hours investigating... Thanks for the link. ;)

Sign In or Register to comment.