# Require accepting new terms (after changes) as a modal inside forum

**URL:** https://meta.discourse.org/t/require-accepting-new-terms-after-changes-as-a-modal-inside-forum/207456
**Category:** Development
**Created:** [October 28, 2021, 9:19pm UTC](https://meta.discourse.org/t/require-accepting-new-terms-after-changes-as-a-modal-inside-forum/207456 "2021-10-28T21:19:58Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![tjot](https://avatars.discourse-cdn.com/v4/letter/t/6a8cbe/32.png) [@tjot](https://meta.discourse.org/u/tjot)
#### Post date: [October 28, 2021, 9:19pm UTC](https://meta.discourse.org/t/require-accepting-new-terms-after-changes-as-a-modal-inside-forum/207456/1 "2021-10-28T21:19:58Z")

</div>

I have a forum that is integrated with my website using [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true).  
When a user creates an account on my website and clicks on the forum link, he gets a forum account and he is automatically logged in to the forum (everything works great!)  
I need a way to get all users to agree to the terms of services when they first enter the forum or after TOS has changed.  
My idea is to show a modal window to everyone that didn’t accept TOS. I’d like to show a dialog that is similar to cookie consent that is displayed on many web pages:

 ![image](https://global.discourse-cdn.com/meta/original/3X/4/7/47ba3a5b24b4a38bc2a25dbd1f23309989dfcae7.png)

I was searching for a plugin that provides such functionality, but sadly I couldn’t find one.  
Can someone recommend me a plugin or a theme component that can provide such functionality?

If not, then if it is technically possible to create such a plugin or theme component (not there which one it should be as I’m still new to discourse)?  
It should add a new field on user with the last accepted TOS version, it should also provide a UI to add/edit TOS and specify its version and of course, it should show a modal to all users that didn’t accept the latest version of TOS and block all actions until they accept TOS.

If this is possible, I’d like to give this a try, but I’ll need some guidance.  
Thank you for your advice.

---

<div class="post-metadata">

### Author: ![IAmGav](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/iamgav/32/235598_2.png) [@IAmGav](https://meta.discourse.org/u/IAmGav)
#### Post date: [October 28, 2021, 9:27pm UTC](https://meta.discourse.org/t/require-accepting-new-terms-after-changes-as-a-modal-inside-forum/207456/2 "2021-10-28T21:27:36Z")

</div>

i think this plugin will work for what you need

> [@Discourse Policy](https://meta.discourse.org/t/discourse-policy/88557):
>
> discourse2Summary Discourse Policy gives the ability to confirm your users have seen or done something, with optional reminders.open_bookInstall Guide This plugin is bundled with Discourse core. There is no need to install the plugin separately. Features Discourse policy shares much of its DNA with polls, it has the goal of ensuring members of a group accept certain policies by clicking a button. It has some specific features that set it apart from polls: It must …

---

<div class="post-metadata">

### Author: ![tjot](https://avatars.discourse-cdn.com/v4/letter/t/6a8cbe/32.png) [@tjot](https://meta.discourse.org/u/tjot)
#### Post date: [October 28, 2021, 9:34pm UTC](https://meta.discourse.org/t/require-accepting-new-terms-after-changes-as-a-modal-inside-forum/207456/3 "2021-10-28T21:34:04Z")

</div>

Thank you for the link. I saw that plugin, but it has some limitations (200 users limit for example).  
Besides that, I need to display TOS as a modal.  
I’m reading how to start developing plugins, so if someone will confirm this kind of plugin is doable I’ll try to set up a dev environment and give this a try.

---

<div class="post-metadata">

### Author: ![IAmGav](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/iamgav/32/235598_2.png) [@IAmGav](https://meta.discourse.org/u/IAmGav)
#### Post date: [October 28, 2021, 9:36pm UTC](https://meta.discourse.org/t/require-accepting-new-terms-after-changes-as-a-modal-inside-forum/207456/4 "2021-10-28T21:36:23Z")

</div>

another one i can point out is

> **[Pavilion](https://pavilion.tech/)**
>
> Pavilion is the leading Discourse consultancy.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [October 29, 2021, 1:52am UTC](https://meta.discourse.org/t/require-accepting-new-terms-after-changes-as-a-modal-inside-forum/207456/5 "2021-10-29T01:52:34Z")

</div>

> [@tjot](#):
>
> I have a forum that is integrated with my website using [DiscourseConnect](https://meta.discourse.org/t/13045).

Maybe have it enforce your terms of service?

Also there is [Cookie compliance under GDPR](https://meta.discourse.org/t/cookie-compliance-under-gdpr/85275) which might be a part of the solution.
