Custom Wizard Plugin

(RBoy) #144

Could you share how you have used this wizard to become GDPR compliant for your existing users?


It’s not a perfect solution in GDPR terms, but we’ve added custom user fields (for accepting privacy policy, terms, and stating age) which are mandatory for new users, then added a wizard which saves its results to those custom fields, and used the “After time” so that users are directed to the wizard when they log in after a certain time. So any active users will be prompted to accept the policies before they can carry on using the site. What it can’t do is make existing users who aren’t active accept the policies.

(RBoy) #146

Thank you, that’s a neat solution use common fields so that new users who’ve already accepted the terms are impacted by this wizard.

@angus what performance impact do you think this type of solution may have on the server (if any)? How often would the wizard check all users for compliance?

(Angus McLeod) #147

There is negligible performance impact.

This is how the ‘After Time’ functionality works:

  1. After you ‘Save’ the wizard with ‘After Time’ enabled, a background job is set to run at the time you set.

  2. When it runs, the background job saves the id of the wizard to a custom field for every user in your database.

  3. The user custom field is checked (on both the server and the client) when the page loads. If the custom field is set, the user is redirected to the relevant wizard.

  4. This means that the next time the user visits the site after the time you set, they will be redirect to the wizard.

  5. The user custom field is cleared if the user completes or skips the wizard.

Note that:

  • You can set a wizard as ‘required’ so the user cannot skip it.

  • You can also set individual fields as required so that the user has to fill them out.

  • The user’s submissions are saved if the ‘save submissions’ setting is turned on for the wizard.

  • You can also separately save the value of a user’s submission to a User Field by using an ‘Action’ associated with a field. I suggest you do this if you’re using a Custom Wizard for compliance purposes.

  • Has this been enabled again?
  • Also is it possible to assign a user to a group after they completed a wizard? I would like to use this to have them sign up for an event and then automatically join a group, so they can see a hidden category only visible to this group.

(Paulina) #149

This. This is what I was talking about earlier. I thought that maybe it’s connected with Cloudflare, because production has it, dev not, but no - I tried a few things and nothing changed, still no error in log files, still having 404 while entering submissions.

(Angus McLeod) #150

It should work after this commit:

Not yet, but we can add that.

This is now fixed @Aylin @carlokok

(Carlo Kok) #151

Thanks; I can confirm that fixed it for me.

(Daniel Nevoigt) #152

Small question about the users are directed to wizard after signup.

Does that mean after the user signs up he will be automatically gets redirected to that wizard? If so, that does not work for me…

(Paulina) #153

@angus I can confirm, it works like a charm :slight_smile:


Works as expected.

I would love that.

(Felix Freiberger) #155

We’re having two problems with this plugin right now:

  1. The Trust setting doesn’t appear to work. We’ve set it to 5 so only staff can access the wizard, but new users are also being redirected.
  2. We can’t get After Signup und After Time to disable. The save appears to be successful, and the checkmarks are gone after the spinner has completed, but they come back after a hard refresh.

Do you have any idea what could cause these issues?

(Angus McLeod) #156

The setting prevents untrusted users from access the wizard. It didn’t prevent the redirect however. This will fix that

This will fix that

(Angus McLeod) #157

Is the after signup setting still not working for you? Where’s your site?

(Daniel Nevoigt) #158

Hi @angus,

I just tried to register an account without SSO, in that case the redirect works fine.

Is that intended that redirect only works with standard registrations?

You can reach the development system at:

Cheers, Daniel

(Angus McLeod) #159

Yeah, the after signup setting doesn’t support SSO yet.

(Daniel Nevoigt) #160

Ah ok, thx very much

(Orlando Del Aguila) #161

@angus Thanks for the plugin, this will help me improve a custom signup workflow I’ve been working on.

I created a small PR to fix an issue with labels in checkboxes set checkbox id for labels work correctly by orlando · Pull Request #3 · angusmcleod/discourse-custom-wizard · GitHub.

I would like to know your thoughts on these two:

  • Conditionally displaying fields: for example only display field Y if field X is checked
  • Checkbox groups: To do an “at least one is required” validation.


(Angus McLeod) #162

Thanks for the PR @eatcodetravel, merged :+1:

Both are good suggestions, and will be useful for others. I’ll have time to work on them the weekend after next. Could you ping me late next week to remind me?

(Craig Davison) #163

The wizard looks like this when I preview it – what’s wrong?