From: David ‘Bombe’ Roden
Date: Wed, 7 Dec 2011 06:23:25 +0000 (+0100)
Subject: Make avatar configurable.
X-Git-Tag: 0.7.6^2~1^2~13
X-Git-Url: https://git.pterodactylus.net/?a=commitdiff_plain;h=e53a6719aa62a2c1f761d2adedecc4b0c230dd72;p=Sone.git
Make avatar configurable.
---
diff --git a/src/main/java/net/pterodactylus/sone/web/OptionsPage.java b/src/main/java/net/pterodactylus/sone/web/OptionsPage.java
index 49b1275..2a23236 100644
--- a/src/main/java/net/pterodactylus/sone/web/OptionsPage.java
+++ b/src/main/java/net/pterodactylus/sone/web/OptionsPage.java
@@ -73,6 +73,8 @@ public class OptionsPage extends SoneTemplatePage {
currentSone.getOptions().getBooleanOption("ShowNotification/NewPosts").set(showNotificationNewPosts);
boolean showNotificationNewReplies = request.getHttpRequest().isPartSet("show-notification-new-replies");
currentSone.getOptions().getBooleanOption("ShowNotification/NewReplies").set(showNotificationNewReplies);
+ String avatarId =request.getHttpRequest().getPartAsStringFailsafe("avatar-image", 36);
+ currentSone.setAvatar(webInterface.getCore().getImage(avatarId, false));
webInterface.getCore().touchConfiguration();
}
Integer insertionDelay = Numbers.safeParseInteger(request.getHttpRequest().getPartAsStringFailsafe("insertion-delay", 16));
@@ -139,6 +141,7 @@ public class OptionsPage extends SoneTemplatePage {
templateContext.set("show-notification-new-sones", currentSone.getOptions().getBooleanOption("ShowNotification/NewSones").get());
templateContext.set("show-notification-new-posts", currentSone.getOptions().getBooleanOption("ShowNotification/NewPosts").get());
templateContext.set("show-notification-new-replies", currentSone.getOptions().getBooleanOption("ShowNotification/NewReplies").get());
+ templateContext.set("avatar-image", currentSone.getAvatar());
}
templateContext.set("insertion-delay", preferences.getInsertionDelay());
templateContext.set("posts-per-page", preferences.getPostsPerPage());
diff --git a/src/main/resources/i18n/sone.en.properties b/src/main/resources/i18n/sone.en.properties
index 3bb04b7..c7bd539 100644
--- a/src/main/resources/i18n/sone.en.properties
+++ b/src/main/resources/i18n/sone.en.properties
@@ -43,6 +43,7 @@ Page.Options.Option.EnableSoneInsertNotifications.Description=If enabled, this w
Page.Options.Option.ShowNotificationNewSones.Description=Show notifications for new Sones.
Page.Options.Option.ShowNotificationNewPosts.Description=Show notifications for new posts.
Page.Options.Option.ShowNotificationNewReplies.Description=Show notifications for new replies.
+Page.Options.Option.Avatar.Delete=No avatar
Page.Options.Section.RuntimeOptions.Title=Runtime Behaviour
Page.Options.Option.InsertionDelay.Description=The number of seconds the Sone inserter waits after a modification of a Sone before it is being inserted.
Page.Options.Option.PostsPerPage.Description=The number of posts to display on a page before pagination controls are being shown.
diff --git a/src/main/resources/static/css/sone.css b/src/main/resources/static/css/sone.css
index e46540a..fc09d95 100644
--- a/src/main/resources/static/css/sone.css
+++ b/src/main/resources/static/css/sone.css
@@ -294,6 +294,13 @@ textarea {
position: absolute;
}
+#sone .post-avatar {
+ display: inline-block;
+ width: 48px;
+ height: 48px;
+ overflow: hidden;
+}
+
#sone .post > .inner-part {
margin-left: 48px;
padding-left: 0.5em;
@@ -816,3 +823,16 @@ textarea {
#sone #sort-options {
margin-bottom: 1em;
}
+
+#sone ul#avatar-selection {
+ padding: 0;
+}
+
+#sone #avatar-selection li {
+ display: inline-block;
+}
+
+#sone #avatar-selection li .post-avatar {
+ vertical-align: middle;
+ margin-bottom: 0.5em;
+}
diff --git a/src/main/resources/templates/options.html b/src/main/resources/templates/options.html
index 57f3c5f..76954eb 100644
--- a/src/main/resources/templates/options.html
+++ b/src/main/resources/templates/options.html
@@ -66,6 +66,18 @@
<%= Page.Options.Option.ShowNotificationNewReplies.Description|l10n|html>
+ <%ifnull !currentSone>
+
+ <%/if>
+
<%= Page.Options.Section.RuntimeOptions.Title|l10n|html>
<%= Page.Options.Option.InsertionDelay.Description|l10n|html>