diff --git a/src/views/index.ejs b/src/views/index.ejs
index dc47f6d..4ee326c 100644
--- a/src/views/index.ejs
+++ b/src/views/index.ejs
@@ -26,11 +26,11 @@ along with this program. If not, see . %>
<% }); %>
diff --git a/src/views/partial/channelSettings/info.ejs b/src/views/partial/channelSettings/info.ejs
index a2f073f..11aeafb 100644
--- a/src/views/partial/channelSettings/info.ejs
+++ b/src/views/partial/channelSettings/info.ejs
@@ -19,13 +19,13 @@ along with this program. If not, see . %>
Thumbnail:
-
-
+
+
Description:
-
<%= channel.description %>
+
<%= unescape(channel.description) %>
\ No newline at end of file
diff --git a/src/views/partial/channelSettings/permList.ejs b/src/views/partial/channelSettings/permList.ejs
index 80ca3e4..0c9cb20 100644
--- a/src/views/partial/channelSettings/permList.ejs
+++ b/src/views/partial/channelSettings/permList.ejs
@@ -20,10 +20,11 @@ along with this program. If not, see . %>
<% Object.keys(channel.permissions.toObject()).forEach((key)=>{ %>
<% if(key != "channelOverrides"){ %>
-
-
+ <%# These strings are generated internally server-side. There really isn't much of a reason to sanatize them.%>
+
+
<%rankEnum.slice().reverse().forEach((rank)=>{ %>
-
+
<% }); %>
diff --git a/src/views/partial/channelSettings/settings.ejs b/src/views/partial/channelSettings/settings.ejs
index 9ddc294..1ec464c 100644
--- a/src/views/partial/channelSettings/settings.ejs
+++ b/src/views/partial/channelSettings/settings.ejs
@@ -19,13 +19,13 @@ along with this program. If not, see . %>
\ No newline at end of file
diff --git a/src/views/partial/profile/bio.ejs b/src/views/partial/profile/bio.ejs
index 0cc620b..3d28720 100644
--- a/src/views/partial/profile/bio.ejs
+++ b/src/views/partial/profile/bio.ejs
@@ -15,11 +15,23 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see . %>
Bio:
+ <%
+ //Split bio by newline
+ const splitBio = profile.bio.split('\n');
+ %>
<% if(selfProfile){ %>
<%# Make sure to convert newlines to br so they display proepr %>
-
<%- profile.bio.replaceAll('\n',' ') %>
+
+ <% for(const line of splitBio){ %>
+ <%= unescape(line) %>
+ <% } %>
+
<% }else{ %>
-
<%- profile.bio.replaceAll('\n',' ') %>
+
+ <% for(const line of splitBio){ %>
+ <%= unescape(line) %>
+ <% } %>
+
<% } %>
\ No newline at end of file
diff --git a/src/views/partial/profile/date.ejs b/src/views/partial/profile/date.ejs
index 27b21aa..55c175b 100644
--- a/src/views/partial/profile/date.ejs
+++ b/src/views/partial/profile/date.ejs
@@ -14,5 +14,5 @@ GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see . %>
-
Joined: <%- profile.date.toLocaleDateString(); %>
+
Joined: <%= profile.date.toLocaleDateString(); %>
\ No newline at end of file
diff --git a/src/views/partial/profile/image.ejs b/src/views/partial/profile/image.ejs
index 7665509..30f4afe 100644
--- a/src/views/partial/profile/image.ejs
+++ b/src/views/partial/profile/image.ejs
@@ -14,7 +14,7 @@ GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see . %>
-
+
<% if(selfProfile){ %>
<% } %>
diff --git a/src/views/partial/profile/pronouns.ejs b/src/views/partial/profile/pronouns.ejs
index 3d427f2..cd35da2 100644
--- a/src/views/partial/profile/pronouns.ejs
+++ b/src/views/partial/profile/pronouns.ejs
@@ -24,10 +24,10 @@ along with this program. If not, see . %>
<% }else if(profile.pronouns != null && profile.pronouns != ""){ %>
<% if(selfProfile){ %>
-
Pronouns: <%- profile.pronouns %>
+
Pronouns: <%= unescape(profile.pronouns) %>
<% }else{ %>
-
Pronouns: <%- profile.pronouns %>
+
Pronouns: <%= unescape(profile.pronouns) %>
<% } %>
<% } %>
\ No newline at end of file
diff --git a/src/views/partial/profile/settings.ejs b/src/views/partial/profile/settings.ejs
index 84a0ac8..3135653 100644
--- a/src/views/partial/profile/settings.ejs
+++ b/src/views/partial/profile/settings.ejs
@@ -17,7 +17,7 @@ along with this program. If not, see . %>
Account Settings
<% if(profile.email){ %>
Email Address:
-
<%= profile.email %>
+
<%= unescape(profile.email) %>
<% } %>
diff --git a/src/views/partial/profile/signature.ejs b/src/views/partial/profile/signature.ejs
index 578354f..5bb5ea7 100644
--- a/src/views/partial/profile/signature.ejs
+++ b/src/views/partial/profile/signature.ejs
@@ -15,9 +15,9 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see . %>
<% if(selfProfile){ %>
-
Signature: <%- profile.signature %>
+
Signature: <%= unescape(profile.signature) %>
<% }else{ %>
-
Signature: <%- profile.signature %>
+
Signature: <%= unescape(profile.signature) %>
<% } %>
\ No newline at end of file
diff --git a/src/views/partial/profile/status.ejs b/src/views/partial/profile/status.ejs
index d2bdff5..1b37fd7 100644
--- a/src/views/partial/profile/status.ejs
+++ b/src/views/partial/profile/status.ejs
@@ -14,9 +14,9 @@ GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see . %>
<% if(profile.user == "Tokebot"){ %>
-
<% } %>
\ No newline at end of file
diff --git a/src/views/partial/profile/tokeCount.ejs b/src/views/partial/profile/tokeCount.ejs
index ccf9ac5..a1d7356 100644
--- a/src/views/partial/profile/tokeCount.ejs
+++ b/src/views/partial/profile/tokeCount.ejs
@@ -14,16 +14,16 @@ GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see . %>
-
\ No newline at end of file
diff --git a/src/views/partial/tooltip/altList.ejs b/src/views/partial/tooltip/altList.ejs
index 0ef19b8..69017a7 100644
--- a/src/views/partial/tooltip/altList.ejs
+++ b/src/views/partial/tooltip/altList.ejs
@@ -17,14 +17,14 @@ along with this program. If not, see . %>
diff --git a/src/views/partial/tooltip/profile.ejs b/src/views/partial/tooltip/profile.ejs
index dba9bb3..e1e86e0 100644
--- a/src/views/partial/tooltip/profile.ejs
+++ b/src/views/partial/tooltip/profile.ejs
@@ -17,11 +17,11 @@ along with this program. If not, see . %>
<% if(profile == null){ %>
<% } %>
\ No newline at end of file
diff --git a/src/views/profile.ejs b/src/views/profile.ejs
index 3c956f0..990ef9a 100644
--- a/src/views/profile.ejs
+++ b/src/views/profile.ejs
@@ -32,21 +32,21 @@ along with this program. If not, see . %>