diff --git a/marko/components/if-permitted/component.js b/marko/components/if-permitted/component.js
new file mode 100644
index 0000000..ff70e80
--- /dev/null
+++ b/marko/components/if-permitted/component.js
@@ -0,0 +1,24 @@
+module.exports = class {
+ onCreate() {
+ this.state = {
+ permitted: false
+ }
+ }
+
+ onInput(input) {
+ console.log(input.user, input.permission)
+
+ if (!input.user || !input.user.loggedIn) {
+ this.state.permitted = false
+ return
+ }
+
+ if (input.author != null && input.author != "" && input.user.name === input.author) {
+ this.state.permitted = input.user.permissions.includes("member")
+ } else if (Array.isArray(input.permission)) {
+ this.state.permitted = input.user.permissions.find(p => input.permission.includes(p))
+ } else {
+ this.state.permitted = input.user.permissions.includes(input.permission)
+ }
+ }
+}
\ No newline at end of file
diff --git a/marko/components/if-permitted/index.marko b/marko/components/if-permitted/index.marko
new file mode 100644
index 0000000..5a72aab
--- /dev/null
+++ b/marko/components/if-permitted/index.marko
@@ -0,0 +1,3 @@
+