1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

XF 1.2 User group promotion not working as expected

Discussion in 'Troubleshooting and Problems' started by Mr Lucky, Nov 16, 2013.

  1. Mr Lucky

    Mr Lucky Well-Known Member

    I must be doing something wrong.

    I have set up a promotion which adds user to approved group.

    I used these criteria:

    • User is member of registered
    • User has at least 1 post

    I used a test registration and as expected first post needed moderating (as set up in permissions for the registered group).

    I approved the post

    Checked in the profile after that but member has not had Approved group added as secondary group.

    Is this not woking or am I misunderstanding the system?

  2. Andrej

    Andrej Well-Known Member

    Promotions are run hourly by a cron, they are not instant.

    You can run the cron by going to Tools -> Cron Entries -> User Group Promotions -> Controls -> Run.
    CaptainMorgan likes this.
  3. Jeremy

    Jeremy Well-Known Member

    Just a note, the cron for adding promotions runs every two hours and only verifies against those who we're active in the last two hours due to the check occurring on log in with 1.2.
  4. Mr Lucky

    Mr Lucky Well-Known Member

    Thanks guys, just checked and the test member has now had the group added.
  5. Thomas

    Thomas Member

    Hello Jeremy,
    Isn't this run by the frequency which is defined in Tools -> Cron Entries -> User Group Promotions ?

    I am trying to set up a promotion by which users can switch their editor themselves (http://xenforo.com/community/thread...ags-badly-when-using-opera.59832/#post-686920) but am not able to get it working somehow. The user group promotion is there and looks for the custom user field but my test user is not promoted to the new group, even when running the cron entry manually.

    Thanks for any advice
  6. Jeremy

    Jeremy Well-Known Member

    Yes, its run based on a set cron time span, but the length of time the users check is 2 hours. Without seeing your criteria, it is fairly hard to determine if there is an issue.
  7. Thomas

    Thomas Member

    What exactly does that mean?
  8. Jeremy

    Jeremy Well-Known Member

    If a user hasn't been active within 2 hours of the promotion running, it won't upgrade the user.
  9. Thomas

    Thomas Member

    Hello Jeremy,
    I tried it with a Test-User (I used the user before and browsed a bit and sent a PM) and starting the cron manually, which bott did not bring the desired promotion, that's why I am asking.

    I added a promotion - the idea is when the user chooses TinyMCE in his preferences he gets promoted to the tinymce-group (and gets the tiny-mce editor afterwards, which is defined inside the group permission) :


    the second tab of the promotion is empty, the third page is empty except for this


    does this look correct?
  10. Thomas

    Thomas Member

    Although the test-user gets promoted, he does not get the desired usergroup assigned
    Bildschirmfoto 2014-01-20 um 16.50.49.png

  11. Jeremy

    Jeremy Well-Known Member

    Have you inadvertently removed the user from the user group manually?

    Have you tried with add-ons disabled?
  12. denisx04

    denisx04 Active Member

    @Jeremy is there anyway that the 2 hour limit is removed? Because waiting 2 hours to get promoted kinda sucks :p
  13. Jeremy

    Jeremy Well-Known Member

    The cron job will run once an hour by default; it will only function / check recently active users.
  14. DFI

    DFI Active Member

    I have made User Group Promotions based on number of messages. Whenever a member achieves a threshold of X number of posts, he gets promoted to a new User Group.

    Now problem is that in this automatic promotion, members retain their previous promotion group too.

    And i want that whenever a member get promoted to a higher User Group, he automatically gets removed from previous User Group. But this isn't working.

    Can someone help how to achieve this. Presently i have to manually demote all such expired promotions.
  15. Martok

    Martok Well-Known Member

    You'll need to specify two criteria in your user group promotion for this to work as you want it to:

    User has posted at least X messages
    User has posted no more than X messages

    So for example, if you want the user to get promoted to Group A when they have made 100 posts, then promoted to Group B at 200 posts and finally to Group C at 300 posts, you'd set this:

    Promotion for Group A:
    User has posted at least 100 messages
    User has posted no more than 199 messages

    Promotion for Group B:
    User has posted at least 200 messages
    User has posted no more than 299 messages

    Promotion for Group C:
    User has posted at least 300 messages

    Out of interest, what do you achieve by promoting from one group to another and removing the earlier group?
    vbuser and DFI like this.
  16. DFI

    DFI Active Member

    Thanks for the quick reply.

    It given members boost to achieve new Rank and they indulge in more discussion. Each promotion have addition permisssions too.

    Aslo, just curious to know is there any there anyother way to achieve the same in a different way in Xenforo ?
  17. Martok

    Martok Well-Known Member

    If you are simply adding permissions then you could do this without removing from user groups when adding to others. XenForo permissions are supposed to be cumulative:


    Basically you set your registered group as the primary for everyone and this should have the minimum permissions that all members should have. The other secondary usergroups then have the additional permissions. There shouldn't be any need to have the same permission set in more than one group - when a user is added to all of these groups, they will have all of the permissions. This is how I do it on my forum - members with increasing permissions are added to more user groups (they are never removed from any).

    Regarding ranks, if you are using banners for these then simply set the styling priority for each group such that the highest group has the highest priority (e.g. 100), the lowest has the lowest priority (e.g. 10) and the rest in between. If you then switch off banner stacking in the ACP in User Options then only the rank of the highest group will be shown.
    vbuser and DFI like this.
  18. DFI

    DFI Active Member

    Thanks. Its helpful. (y)

    BTW how can i achieve this. Pls explain a little but more
  19. Sunka

    Sunka Well-Known Member

    In ACP you set "weight" for every group.
    So, when you switch off banner stacking (settings in option menu in ACP), and user is in multiple groups, only banner from highest group will be shown below his avatar
  20. Martok

    Martok Well-Known Member

    When you edit each group ACP > Users > List User Groups (then click on a group name to edit it) you'll see a "Display Styling Priority". The higher the number, the higher the display priority when it comes to styling (e.g. with user group colours and banners).

    If you edit these to suit your needs, then switch off banner stacking as per my last post, each user will then only display the banner from the group they are in with the highest styling priority.

Share This Page