diff --git a/src/database/permissions/user.rs b/src/database/permissions/user.rs
index f08790ababfba499bee0f574e3051e21e971958b..54c8dc88b595024d3ab1a1c255c4bb234a501a7f 100644
--- a/src/database/permissions/user.rs
+++ b/src/database/permissions/user.rs
@@ -28,11 +28,23 @@ pub async fn calculate(user: &User, target: &str) -> UserPermissions<[u32; 1]> {
     //    otherwise -> Access
     // otherwise; None
 
-    if let RelationshipStatus::Friend = get_relationship(&user, &target) {
-        UserPermissions([UserPermission::Access + UserPermission::SendMessage + UserPermission::Invite])
-    } else {
-        UserPermissions([ 0 ])
+    let mut permissions: u32 = 0;
+    match get_relationship(&user, &target) {
+        RelationshipStatus::Friend => {
+            return UserPermissions([ UserPermission::Access + UserPermission::SendMessage + UserPermission::Invite ])
+        }
+        RelationshipStatus::Blocked |
+        RelationshipStatus::BlockedOther => {
+            return UserPermissions([ UserPermission::Access as u32 ])
+        }
+        RelationshipStatus::Incoming |
+        RelationshipStatus::Outgoing => {
+            permissions = UserPermission::Access as u32;
+        }
+        _ => {}
     }
+
+    UserPermissions([ permissions ])
 }
 
 pub fn get_relationship(a: &User, b: &str) -> RelationshipStatus {
diff --git a/src/routes/root.rs b/src/routes/root.rs
index 3465ac269e276e00489bdbe5620f2fc50345df5c..8f8f5e8368112da948a7ae12b17b283a7ada7f72 100644
--- a/src/routes/root.rs
+++ b/src/routes/root.rs
@@ -8,7 +8,7 @@ use rocket_contrib::json::JsonValue;
 #[get("/")]
 pub async fn root() -> JsonValue {
     json!({
-        "revolt": "0.3.0-alpha",
+        "revolt": "0.3.1-alpha.0",
         "features": {
             "registration": !*DISABLE_REGISTRATION,
             "captcha": {