From 4c6379ea560f55bcd8a08b171bc5d4942c0a3834 Mon Sep 17 00:00:00 2001
From: Robin Ward <robin.ward@gmail.com>
Date: Wed, 13 Feb 2013 16:12:30 -0500
Subject: [PATCH] New users are highlighted when posting. .new-user class

---
 .../javascripts/discourse/templates/post.js.handlebars       | 2 +-
 app/assets/stylesheets/application/topic-post.css.scss       | 4 ++++
 app/models/site_setting.rb                                   | 2 ++
 app/serializers/post_serializer.rb                           | 5 +++++
 config/locales/en.yml                                        | 2 ++
 5 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/app/assets/javascripts/discourse/templates/post.js.handlebars b/app/assets/javascripts/discourse/templates/post.js.handlebars
index 69cebae7450..29d9e298d56 100644
--- a/app/assets/javascripts/discourse/templates/post.js.handlebars
+++ b/app/assets/javascripts/discourse/templates/post.js.handlebars
@@ -29,7 +29,7 @@
     <div class='topic-meta-data span2'>
       <div class='contents'>
         <a href='/users/{{unbound username}}' class='excerptable' data-excerpt-position="right" data-excerpt-size="small" >{{avatar this imageSize="large"}}</a>
-        <h3 {{bindAttr class="moderator"}}><a href='/users/{{unbound username}}'>{{breakUp username}}</a></h3>
+        <h3 {{bindAttr class="moderator new_user"}}><a href='/users/{{unbound username}}'>{{breakUp username}}</a></h3>
         
         <div class='post-info'>
           <a href='#' class='post-date' {{bindAttr data-share-url="url"}}>{{date created_at}}</a>
diff --git a/app/assets/stylesheets/application/topic-post.css.scss b/app/assets/stylesheets/application/topic-post.css.scss
index 18f18c941f6..6381dbad9dd 100644
--- a/app/assets/stylesheets/application/topic-post.css.scss
+++ b/app/assets/stylesheets/application/topic-post.css.scss
@@ -326,6 +326,10 @@
         border: 1px solid #ffd;
       }
 
+      h3.new-user a[href] {
+        color: $dark_gray;
+      }
+
       div {
         display: block;
       }
diff --git a/app/models/site_setting.rb b/app/models/site_setting.rb
index 048f06bdf80..d0b3f0c8b30 100644
--- a/app/models/site_setting.rb
+++ b/app/models/site_setting.rb
@@ -137,6 +137,8 @@ class SiteSetting < ActiveRecord::Base
   # Ways to catch griefers and other nasties
   setting(:email_blacklist_regexp, '')
 
+  setting(:new_user_period_days, 10)
+
 
 
   def self.call_mothership?
diff --git a/app/serializers/post_serializer.rb b/app/serializers/post_serializer.rb
index 3ad2f8689fd..10c84987cb0 100644
--- a/app/serializers/post_serializer.rb
+++ b/app/serializers/post_serializer.rb
@@ -37,6 +37,7 @@ class PostSerializer < ApplicationSerializer
              :bookmarked,
              :raw,
              :actions_summary,
+             :new_user?,
              :moderator?,
              :avatar_template,
              :user_id,
@@ -46,6 +47,10 @@ class PostSerializer < ApplicationSerializer
              :deleted_at
 
 
+  def new_user?
+    object.user.created_at > SiteSetting.new_user_period_days.days.ago
+  end
+
   def moderator?
     object.user.has_trust_level?(:moderator)
   end
diff --git a/config/locales/en.yml b/config/locales/en.yml
index c603865f6ae..a1bd47e8b3a 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -314,6 +314,8 @@ en:
 
     email_blacklist_regexp: "A regexp that finds email addresses to block"
 
+    new_user_period_days: "How long a user is highlighted as being new, in days."
+
   # This section is exported to the javascript for i18n in the admin section
   admin_js:
     type_to_filter: "type to filter..."