A lot of organizations have customizations that they want everyone on their team to do (e.g. defaults to night mode, notification settings, etc.). Building UI for a "default value" organization setting for each of these would be annoying, but we could probably create a generic UI that lets one set organization-level default values for large classes of these (i.e. the ones that use the property_types framework). We're imagine the UX for this would be something like:
Implementation-wise, I think we'll want to structure this as follows:
display_settings property type block. Done correctly, I believe this change should require no changes to tests or anything else.zerver/lib/create_user.py to look up the realm in RealmUser Default and adjust default values for these.zerver/views/realm.py; I think this mostly entails coming up with a good name transformation for the default property_types data; we can reuse the existing property_types validation logic as well. At this point, we can write good backend tests for the whole system.See https://chat.zulip.org/#narrow/stream/31-production-help/topic/Default.20user.20settings/near/699017 for some discussion.
Hello @zulip/server-onboarding, @zulip/server-settings members, this issue was labeled with the "area: onboarding", "area: settings (admin/org)", "area: settings (user)" labels, so you may want to check it out!
@timabbott I want to take up this issue. Can you help me from where I should start?
Should I start with creating a new table RealmUserDefault?
For now is there any way or workaround to default new members to specific settings for a given organization (specifically just need to change I think it was 2 settings)? :-)
+1
I can see 3 different ways to apply these default settings, so ideally this implementation would support all 3:
Is this possible?
+1 Customization of initial settings would be valuable.
Most helpful comment
+1
I can see 3 different ways to apply these default settings, so ideally this implementation would support all 3:
Is this possible?