Users running a non-download version of Vanilla (pulled from github), on branch release/2019.016 or master from the last 2 weeks should upgrade to release/2019.017 or latest master for security reasons. Downloaded official open sources releases are not affected.

Polish polish needed

  1. I joined as a translator recently on the transifex site and would like to complete the Polish translation for my users and everybody else, but I don't know what I should do. Should I just go ahead and translate all the strings that I can see missing or copied over from the English version? Should I do it online? I haven't worked with transifex yet and don't want to balls things up for others.
  2. Is there a short manual for people starting to use Vanilla? I mean normal users, not mods or admins. I'd like to translate it and share.
  3. I could also translate some basic information about Vanilla and put it on Polish Wikipedia. The existing info in Polish is poor, inaccurate and obsolete.
  4. There doesn't seem to be a Polish Vanilla community, or is there?

I'm using Vanilla for this site: forum.kod.malopolska.pl. We have only just started. Apart from the Polish stuff, there are two considerations so far:

  • I wish I understood all types of categories available on Vanilla better.
  • Is there a way to create sub-communities on self-hosted or is it easier to do separate installations?

Comments

  • R_JR_J Cheerleader & Troubleshooter Munich Moderator
    1. You can start online or do it offline, whatever you prefer. I find doing it online more comfortable.
    2. I do not know of a user tutorial
    3. Great!

    Vanillas Categories can be used in three ways:
    1. as a container for other categories only
    2. as a container for discussions only
    3. as a container for discussions and categories

    Example:

    General (category with 100 discussions)
    Sports (category with 0 discussions, since no discussions are allowed, only used to group some other categories)

    • Basketball ("sub"-category with 21 discussions)
    • Football ("sub"-category with 23 discussions)
      Misc (category with 50 discussions)

    • Nonsense Jokes ("sub"-category with 10000000 discussions)

    There is no sub-category type, but you can make a category a child of another category in the dashboard with simple drag&drop

    The open source version doesn't have this sub-communities feature. There were efforts to create an free plugin but I do not know how this ended.

    I would say that there is a huge difference between sub-communities and different forums. So you cannot simply substitute one by the other.


  • sparrowhawk66sparrowhawk66 Kraków New

    Thanks @R_J. So the difference between Nested and Heading is that the former is clickable and the latter is not?
    I see he groups or subcommunities feature is not there in the open source version. I could do with an equivalent of wordpress multisite, but it clearly won't be available soon. I will need to make some decisions before setting up a new site with national coverage. It is theoretically possible to create regional users and manipulate permissions in such a way that some moderators are in charge of certain regional categories, but I am not sure if it is the best way of managing a forum: every category would need to have special permissions and every user would be a special user. If you put on top of it a couple of user-level permissions that I need to use, I don't know who would be able to manage such a system.

  • R_JR_J Cheerleader & Troubleshooter Munich Moderator

    The main difference is that some two type can contain discussions and one can not. I'm afraid, but I cannot help you further than that. I do not really know if they are clickable or not... o.O

    But you can try it out by yourself. Just install Vanilla on a test system and create some categories.

    If you are only thinking about "bundling" some users, that should be do-able without some group features. Groups are special in the way that you can allow your users to organize themselves: built whatever group they like and create group specific content, maybe even invite people to groups and make group administrators who have more rights than other users. That's the group idea.

    If you only want to have different permissions on categories, you have to invest time in planing the needed roles but that's all that is to do.

    But what kind of forum has such a complexity? My opinion is, that forums are attractive because they are an open place for discussions. If you plan to have a lot of closed sub-communities it might in fact be better to create multiple forums.


  • sparrowhawk66sparrowhawk66 Kraków New

    At the moment I'm building a forum for a regional branch of an NGO. It is live at https://forum.kod.malopolska.pl , but I have only just started. For this job the existing structure is OK. We hope the forum will help us build a different type of community than our Facebook communities. People can register and write posts and comments in predefined categories and that's the most important role a forum can play. At the same time we want to use the forum to discuss our plans and options, so these categories needn't be open to view for everybody. Now I don't know if it is a good idea to also utilize Vanilla for various work groups, like the Media Group, the Board or the Street Action Group. I can create distinct user types for any such groups: media-member, board member, SAG-member, etc. with permissions encompassing regular membership plus access to specific work-group categories. But then the Media Group will have different issues on the agenda and they would like to create specific categories for each job. As far as I can see it will also be possible to create a Media-Mod with permissions to menage the Media group, who is not necessarily able to view or manage the contents of the Board's categories, but a Mod is not able to create categories by default, so I will have to give all Mods permission to create categories. But how do I do this. Do I have to allow them to enter and manage settings? That is not very practical.
    Another question I'm facing: is it possible to create a specific category with simplified registration rules, so people can register with a social network or using a form and publish straight away?

  • R_JR_J Cheerleader & Troubleshooter Munich Moderator

    Anonymous posting is not possible. People have to register, but Vanilla comes at least with Facebook and Twitter login plugins and maybe more, but there are a lot of options in that regard.
    Registration is always the same. You cannot have different registration options in your forum.

    I would never grant anybody the right to create categories. Categories built the structure of your community and every new category adds complexity. Too many categories are confusing for me, personally and I would bet for a lot of forum users, too. You've said "one category per job" and although I do not have understood what a job in this regard is, it seems to me that this will make categories with around half a dozen discussions in them. That's not my understanding of what a category is good for.
    What about tags? That normally is a better way to give "smaller" and more easy segregation to your content.

    Vanilla is very extensible, so you can write plugins which would allow different registration methods, allow arbitrary user groups to be able to create categories, etc. Whatever you have mentioned above can be achieved by writing custom plugins, but that is developer work.


  • sparrowhawk66sparrowhawk66 Kraków New

    Anonymous posting is not possible.

    Yes, direct anonymous posting might be stupid. On the other hand something like this might be useful: https://wordpress.org/plugins/accesspress-anonymous-post/ – anonymous submission of posts for moderation. I do have my reservations, too, as this may encourage all manner of subtle or not so subtle intrigue, but we may implement it on our blog with a view to making things easy for first-time posters or users aged 80+.

    I would never grant anybody the right to create categories. (...). Too many categories are confusing for me (...). You've said "one category per job" and although I do not have understood what a job in this regard is, it seems to me that this will make categories with around half a dozen discussions in them. That's not my understanding of what a category is good for.

    Too many horizontal categories may create a situation where I only have a dozen screws and try to put them in twenty boxes. I was thinking of multiple vertical categories. This is my understanding of the new flat category type. Instead of allowing group mods to create categories I can create a flat category container (e.g. Projects) and pre-populate it with Project 1, Project 2, Project 3 ... Project 10 categories. Projects can be named with a sticky post. Yeh, I've done it. Multi-level permissions work great in Vanilla. I am not sure if I understand flat categories correctly. Flat category=container to be populated with discussion-type sub-categories?
    Only I can't see this in the Pure theme I'm using. I'll try how it works with other themes:

    you can write plugins

    I am better at managing than coding.

  • sparrowhawk66sparrowhawk66 Kraków New

    In the docs it says:

    To add this to your theme, use this module: {module name="FlatCategoryModule" categoryID=00}

    @R_J Would it be difficult to implement in an existing theme? None of the recent themes seem to have the feature.

  • R_JR_J Cheerleader & Troubleshooter Munich Moderator

    @sparrowhawk66 said:
    In the docs it says:

    To add this to your theme, use this module: {module name="FlatCategoryModule" categoryID=00}

    @R_J Would it be difficult to implement in an existing theme? None of the recent themes seem to have the feature.

    Trivial: just create your custom theme and add it anywhere to the default.master.tpl of your theme. You might have to style it, depending on the place where you like to see it and the theme you are using. If it should be just one anyway in the Panel, just like any other module, you should insert it with some lines of code in your themes theme hook file.

    I haven't looked at flat categories by now, so I cannot give you any answers, sorry.

    When I said "you can write plugins", I meant "a developer can write plugins and that will be either you, someone you pay or someone that you convince to write it for you because it is such an outstanding idea" :wink:


    sparrowhawk66
  • sparrowhawk66sparrowhawk66 Kraków New

    I'm not a coder, just a user, so it's not trivial for me. I've no idea what "some lines of code" mean or what a "theme hook file" is. Well I can read that "Themes can be imbued with the power of plugins via a special themehooks php file", but it's not very helpful for me either. I hope to learn a bit, but putting together a working forum is my first priority, so I can live without flat categories being displayed in a nice way.
    When you're saying "create your custom theme" do you mean create one from scratch or modify an existing one? If I create my own theme based on an existing one, what happens when the base theme gets updated or does it work like "child themes" in WordPress?

  • R_JR_J Cheerleader & Troubleshooter Munich Moderator

    @sparrowhawk66 said:
    I'm not a coder, just a user, so it's not trivial for me.

    Sorry for that. You've already said that you are no coder so that might have sound arrogant. But hey, this is a support forum! So I'll be giving support =)

    @sparrowhawk66 said:
    When you're saying "create your custom theme" do you mean create one from scratch or modify an existing one? If I create my own theme based on an existing one, what happens when the base theme gets updated or does it work like "child themes" in WordPress?

    Although it is tempting because you can quickly achieve effects, never change existing files! Vanilla allows massive changes, by adding files and that is the best way to stay compatible.

    If you like a theme and want to enhance it, the best way is to copy it. But if it gets updated, those updates to not get into your theme. There is nothing like a child theme.
    You could achieve something like that with a little bit of trickery, but I do not recommend that.

    The documentation should give good hints on how to create a custom theme. You need a dedicated folder for your theme in /themes and at least an addon.json file in that subfolder. In order to mae the first steps, create a "views" and a "design" subfolder in your themes folder.
    Copy /applications/dashboard/views/default.master.tpl to /themes/yourtheme/views/default.master.tpl and create a file called /themes/yourtheme/design/custom.css

    Read the documentation about what the addon.json must contain and you should be ready for the first steps. This is how an addon.json could look like for your forum:

    {
        "name": "Malo Polska",
        "description": "This is the theme that is used at forum.kod.malopolska.pl",
        "version": "1.0.0",
        "key": "malopolska",
        "type": "theme",
        "authors": [
            {
                "name": "Sparrowhawk",
                "email": "[email protected]",
                "homepage": "forum.kod.malopolska.pl"
            }
        ]
    }
    

    It should go into /themes/malopolska/addon.json

    Now your theme is ready, you can enable it in the dashboard and start working on it.
    You can add the line {module name="FlatCategoryModule" categoryID=00} to your default.master.tpl, but I wouldn't recommend that. But nevertheless: do it to get some experience!

    After you have done that, delete it and lets do it with a theme hook. A theme hooks file is something like a theme specific plugin. There are naming conventions. With what we have above, create /themes/malopolska/class.malopolskathemehooks.php and insert the following into it:

    <?php
    
    class MaloPolskaThemeHooks implements Gdn_IPlugin {
        public function setup () {
        }
        public function onDisable() {
        }
        public function base_render_before($sender) {
            if ($sender->MasterView == 'admin') {
                return;
            }
            $flatCategoryModule= new FlatCategoryModule();
            $sender->addModule($flatCategoryModule);
        }
    }
    

    After adding that file to your theme, you will have to delete /cache/theme/malopolska.php

    With that lines of code you a) have a working themehooks file as a start for doing changes in a way a plugin would do it and b) have the FlatCategoryModule in the Panel.

    Modules in the Panel can be sorted. See here for info about that.

    i hope this gets you started. If not, just ask!


  • R_JR_J Cheerleader & Troubleshooter Munich Moderator
    edited July 2018

    Although my post above it is not false, it is a useless when it comes to the FlatCategoryModule! o.O

    The name "module" made me think that it is something which should be shown in the Panel, but as far as I can tell by looking at the docs, it should have its own page. So adding a module the way I did above was wrong. The themehooks file must look like that instead:

    <?php
    class MaloPolskaThemeHooks implements Gdn_IPlugin {
        public function setup () {
        }
        public function onDisable() {
        }
    
        // Add a page /vanilla/fcmtest
        public function vanillaController_fcmtest_create($sender, $args) {
            // Add all default modules.
            $modules = array_diff(
                    c('Modules.Vanilla.Panel'),
                    array_keys($sender->Assets['Panel']),
                    array('MeModule')
            );
            foreach ($modules as $module) {
                $sender->addModule($module);
            }
    
            $sender->setData(
                [
                    'Title' => t('Smarty Test'),
                    'Content' => t('OMG!')
                ]
            );
    
            $sender->render('somesmartyview', '', '/themes/malopolska');
        }
    }
    

    And you need a second file: /themes/malopolska/views/somesmartyview.tpl

    <h1>{$Title}</h1>
    <p>{$Content}</p>
    <div class="fcmtest">{module name="FlatCategoryModule" categoryID=00}</div>
    

    In Theory that should show you the flat category module. But for me this does show nothing :(

    I might not find the time to dig deeper into this, though


  • R_JR_J Cheerleader & Troubleshooter Munich Moderator

    Okay, I found my problem: I haven't read the docs! :mrgreen:

    The category ID must be the ID of a category that is has subcategories, no surprise...

    But what is not in the docs:

    • neither the "parent" category nor the subcategories have to be marked as flat
    • from all subcategories of the given category, only the first level subcategories are shown

    But you will be able to use more than one module on a page:

    <h2>Cars</h2>
    <div class="CarCategories">{module name="FlatCategoryModule" categoryID=17}</div>
    <h2>Dishes</h2>
    <div class="DishesCategories">{module name="FlatCategoryModule" categoryID=2}</div>
    <h2>Nutrition</h2>
    <div class="NutritionCategories">{module name="FlatCategoryModule" categoryID=98}</div>
    


    sparrowhawk66
  • sparrowhawk66sparrowhawk66 Kraków New

    Dziękuję bardzo! (thank you very much) R_J. I'll play with it next week and will report back.

  • sparrowhawk66sparrowhawk66 Kraków New

    @R_J , there is one point I don't understand:

    • neither the "parent" category nor the subcategories have to be marked as flat

    What is the purpose of the flat category option selectable from the drop-down menu then?

  • R_JR_J Cheerleader & Troubleshooter Munich Moderator

    I haven't spend time on that. But if you want them to be flat and you use them like that, you should mark them as flat. Just to be sure you do not run into troubles


Sign In or Register to comment.