diff --git a/app/assets/javascripts/admin/templates/user_index.js.handlebars b/app/assets/javascripts/admin/templates/user_index.js.handlebars
index 5a6ccc6c76e..952fd8f9477 100644
--- a/app/assets/javascripts/admin/templates/user_index.js.handlebars
+++ b/app/assets/javascripts/admin/templates/user_index.js.handlebars
@@ -354,10 +354,6 @@
{{i18n admin.user.flags_given_received_count}}
{{flags_given_count}} / {{flags_received_count}}
diff --git a/app/assets/javascripts/discourse/components/notification-item.js.es6 b/app/assets/javascripts/discourse/components/notification-item.js.es6
index 4942a90ca66..c587e12b6d0 100644
--- a/app/assets/javascripts/discourse/components/notification-item.js.es6
+++ b/app/assets/javascripts/discourse/components/notification-item.js.es6
@@ -1,6 +1,6 @@
export default Ember.Component.extend({
tagName: 'li',
- classNameBindings: ['notification.read', 'notification.is_warning'],
+ classNameBindings: ['notification.read'],
_markRead: function(){
var self = this;
diff --git a/app/assets/javascripts/discourse/components/topic-status.js.es6 b/app/assets/javascripts/discourse/components/topic-status.js.es6
index fe99221da52..83ce68493ad 100644
--- a/app/assets/javascripts/discourse/components/topic-status.js.es6
+++ b/app/assets/javascripts/discourse/components/topic-status.js.es6
@@ -9,8 +9,8 @@
export default Ember.Component.extend({
classNames: ['topic-statuses'],
- hasDisplayableStatus: Em.computed.or('topic.archived','topic.closed', 'topic.pinned', 'topic.unpinned', 'topic.invisible', 'topic.archetypeObject.notDefault', 'topic.is_warning'),
- shouldRerender: Discourse.View.renderIfChanged('topic.archived', 'topic.closed', 'topic.pinned', 'topic.visible', 'topic.unpinned', 'topic.is_warning'),
+ hasDisplayableStatus: Em.computed.or('topic.archived','topic.closed', 'topic.pinned', 'topic.unpinned', 'topic.invisible', 'topic.archetypeObject.notDefault'),
+ shouldRerender: Discourse.View.renderIfChanged('topic.archived','topic.closed', 'topic.pinned', 'topic.visible', 'topic.unpinned'),
didInsertElement: function(){
var self = this;
@@ -52,7 +52,6 @@ export default Ember.Component.extend({
// Allow a plugin to add a custom icon to a topic
this.trigger('addCustomIcon', buffer);
- renderIconIf('topic.is_warning', 'envelope', 'warning');
renderIconIf('topic.closed', 'lock', 'locked');
renderIconIf('topic.archived', 'lock', 'archived');
renderIconIf('topic.pinned', 'thumb-tack', 'pinned', self.get("canAct") );
diff --git a/app/assets/javascripts/discourse/controllers/composer.js.es6 b/app/assets/javascripts/discourse/controllers/composer.js.es6
index 702df16a936..9567ba57ac1 100644
--- a/app/assets/javascripts/discourse/controllers/composer.js.es6
+++ b/app/assets/javascripts/discourse/controllers/composer.js.es6
@@ -15,16 +15,6 @@ export default DiscourseController.extend({
this.set('similarTopics', []);
}.on('init'),
- showWarning: function() {
- var usernames = this.get('model.targetUsernames');
-
- // We need exactly one user to issue a warning
- if (Em.empty(usernames) || usernames.split(',').length !== 1) {
- return false;
- }
- return this.get('model.creatingPrivateMessage');
- }.property('model.creatingPrivateMessage', 'model.targetUsernames'),
-
actions: {
// Toggle the reply view
toggle: function() {
@@ -113,12 +103,6 @@ export default DiscourseController.extend({
var composer = this.get('model'),
self = this;
-
- // Clear the warning state if we're not showing the checkbox anymore
- if (!this.get('showWarning')) {
- this.set('model.isWarning', false);
- }
-
if(composer.get('cantSubmitPost')) {
var now = Date.now();
this.setProperties({
@@ -361,7 +345,6 @@ export default DiscourseController.extend({
this.set('model', composerModel);
composerModel.set('composeState', Discourse.Composer.OPEN);
- composerModel.set('isWarning', false);
var composerMessages = this.get('controllers.composer-messages');
composerMessages.queryFor(composerModel);
diff --git a/app/assets/javascripts/discourse/controllers/header.js.es6 b/app/assets/javascripts/discourse/controllers/header.js.es6
index d7cebb23f01..8701149d922 100644
--- a/app/assets/javascripts/discourse/controllers/header.js.es6
+++ b/app/assets/javascripts/discourse/controllers/header.js.es6
@@ -10,10 +10,6 @@ export default DiscourseController.extend({
loginRequired: Em.computed.alias('controllers.application.loginRequired'),
canSignUp: Em.computed.alias('controllers.application.canSignUp'),
- showPrivateMessageGlyph: function() {
- return !this.get('topic.is_warning') && this.get('topic.isPrivateMessage');
- }.property('topic.is_warning', 'topic.isPrivateMessage'),
-
showSignUpButton: function() {
return this.get('canSignUp') && !this.get('showExtraInfo');
}.property('canSignUp', 'showExtraInfo'),
diff --git a/app/assets/javascripts/discourse/models/_post.js b/app/assets/javascripts/discourse/models/_post.js
index f2980e50d65..6fac98173f6 100644
--- a/app/assets/javascripts/discourse/models/_post.js
+++ b/app/assets/javascripts/discourse/models/_post.js
@@ -149,7 +149,6 @@ Discourse.Post = Discourse.Model.extend({
var data = {
raw: this.get('raw'),
topic_id: this.get('topic_id'),
- is_warning: this.get('is_warning'),
reply_to_post_number: this.get('reply_to_post_number'),
category: this.get('category'),
archetype: this.get('archetype'),
diff --git a/app/assets/javascripts/discourse/models/composer.js b/app/assets/javascripts/discourse/models/composer.js
index 9709b5529bc..9cee7aa0026 100644
--- a/app/assets/javascripts/discourse/models/composer.js
+++ b/app/assets/javascripts/discourse/models/composer.js
@@ -494,7 +494,6 @@ Discourse.Composer = Discourse.Model.extend({
title: this.get('title'),
category: this.get('categoryId'),
topic_id: this.get('topic.id'),
- is_warning: this.get('isWarning'),
imageSizes: opts.imageSizes,
cooked: this.getCookedHtml(),
reply_count: 0,
diff --git a/app/assets/javascripts/discourse/templates/composer.js.handlebars b/app/assets/javascripts/discourse/templates/composer.js.handlebars
index a907c32468a..322ab1feb0e 100644
--- a/app/assets/javascripts/discourse/templates/composer.js.handlebars
+++ b/app/assets/javascripts/discourse/templates/composer.js.handlebars
@@ -35,14 +35,6 @@
placeholderKey="composer.users_placeholder"
tabindex="1"
usernames=model.targetUsernames}}
- {{#if showWarning}}
-
-
-
- {{/if}}
{{/if}}
{{bound-avatar model "huge"}}
diff --git a/app/assets/javascripts/discourse/views/topic.js.es6 b/app/assets/javascripts/discourse/views/topic.js.es6
index c09130113a4..a15125343d1 100644
--- a/app/assets/javascripts/discourse/views/topic.js.es6
+++ b/app/assets/javascripts/discourse/views/topic.js.es6
@@ -6,7 +6,6 @@ export default Discourse.View.extend(AddCategoryClass, Discourse.Scrolling, {
userFiltersBinding: 'controller.userFilters',
classNameBindings: ['controller.multiSelect:multi-select',
'topic.archetype',
- 'topic.is_warning',
'topic.category.read_restricted:read_restricted',
'topic.deleted:deleted-topic',
'topic.categoryClass'],
diff --git a/app/assets/stylesheets/common/base/_topic-list.scss b/app/assets/stylesheets/common/base/_topic-list.scss
index 26e0a4ac31b..92a740058b6 100644
--- a/app/assets/stylesheets/common/base/_topic-list.scss
+++ b/app/assets/stylesheets/common/base/_topic-list.scss
@@ -308,4 +308,4 @@ ol.category-breadcrumb {
div.education {
color: scale-color($primary, $lightness: 50%);
-}
+}
\ No newline at end of file
diff --git a/app/assets/stylesheets/common/base/header.scss b/app/assets/stylesheets/common/base/header.scss
index c3342aeb300..a6121425fbe 100644
--- a/app/assets/stylesheets/common/base/header.scss
+++ b/app/assets/stylesheets/common/base/header.scss
@@ -208,14 +208,6 @@
overflow: hidden;
}
}
- .is-warning {
- i.fa-envelope-o {
- &:before {
- content: "\f0e0";
- }
- color: $danger;
- }
- }
.read {
background-color: $secondary;
}
diff --git a/app/assets/stylesheets/desktop/compose.scss b/app/assets/stylesheets/desktop/compose.scss
index 9cd2125e83b..6d7535e2988 100644
--- a/app/assets/stylesheets/desktop/compose.scss
+++ b/app/assets/stylesheets/desktop/compose.scss
@@ -3,15 +3,6 @@
// hack, this needs to be done cleaner
#private-message-users {
width: 400px;
- float: left;
-}
-
-.add-warning {
- width: 300px;
- display: inline-block;
- position: relative;
- top: -30px;
- margin-left: 20px;
}
.composer-popup-container {
diff --git a/app/assets/stylesheets/desktop/discourse.scss b/app/assets/stylesheets/desktop/discourse.scss
index 015e5dade18..13b422b746d 100644
--- a/app/assets/stylesheets/desktop/discourse.scss
+++ b/app/assets/stylesheets/desktop/discourse.scss
@@ -125,10 +125,6 @@ body {
font-size: 15px;
}
}
-
- i.fa-envelope {
- color: $danger;
- }
}
/* bootstrap carryover */
diff --git a/app/assets/stylesheets/desktop/topic-post.scss b/app/assets/stylesheets/desktop/topic-post.scss
index 5b0d6e789e6..d8653437add 100644
--- a/app/assets/stylesheets/desktop/topic-post.scss
+++ b/app/assets/stylesheets/desktop/topic-post.scss
@@ -527,7 +527,6 @@ iframe {
.topic-statuses {
i { color: $header_primary; }
- i.fa-envelope { color: $danger; }
.unpinned { color: $header_primary; }
}
.topic-link { color: $header_primary;
diff --git a/app/assets/stylesheets/desktop/topic.scss b/app/assets/stylesheets/desktop/topic.scss
index 785f8f923f7..4edabbde490 100644
--- a/app/assets/stylesheets/desktop/topic.scss
+++ b/app/assets/stylesheets/desktop/topic.scss
@@ -65,7 +65,7 @@
color: scale-color($primary, $lightness: 75%);
float: left;
margin: 0 5px 0 0;
-}
+ }
.private_message #topic-title .private-message-glyph { display: inline; }
a.reply-new {
diff --git a/app/assets/stylesheets/desktop/user.scss b/app/assets/stylesheets/desktop/user.scss
index fe6f7144399..35f372a2797 100644
--- a/app/assets/stylesheets/desktop/user.scss
+++ b/app/assets/stylesheets/desktop/user.scss
@@ -395,9 +395,6 @@
.flagged-posts {
background-color: #E49735;
}
- .warnings-received {
- background-color: #EC441B;
- }
.deleted-posts {
background-color: #EC441B;
}
diff --git a/app/controllers/posts_controller.rb b/app/controllers/posts_controller.rb
index 8febcf7962d..86a57e216a3 100644
--- a/app/controllers/posts_controller.rb
+++ b/app/controllers/posts_controller.rb
@@ -331,21 +331,12 @@ class PostsController < ApplicationController
permitted << :embed_url
end
-
params.require(:raw)
- result = params.permit(*permitted).tap do |whitelisted|
- whitelisted[:image_sizes] = params[:image_sizes]
- # TODO this does not feel right, we should name what meta_data is allowed
- whitelisted[:meta_data] = params[:meta_data]
+ params.permit(*permitted).tap do |whitelisted|
+ whitelisted[:image_sizes] = params[:image_sizes]
+ # TODO this does not feel right, we should name what meta_data is allowed
+ whitelisted[:meta_data] = params[:meta_data]
end
-
- # Staff are allowed to pass `is_warning`
- if current_user.staff?
- params.permit(:is_warning)
- result[:is_warning] = (params[:is_warning] == "true")
- end
-
- result
end
def too_late_to(action, post)
diff --git a/app/models/notification.rb b/app/models/notification.rb
index c5f6eb7ec46..55ebdcae66b 100644
--- a/app/models/notification.rb
+++ b/app/models/notification.rb
@@ -98,7 +98,7 @@ class Notification < ActiveRecord::Base
def self.recent_report(user, count = nil)
count ||= 10
- notifications = user.notifications.recent(count).includes({:topic => :warning}).to_a
+ notifications = user.notifications.recent(count).includes(:topic).to_a
if notifications.present?
notifications += user.notifications
diff --git a/app/models/topic.rb b/app/models/topic.rb
index 9b35c05debb..8e9533fd4e8 100644
--- a/app/models/topic.rb
+++ b/app/models/topic.rb
@@ -100,7 +100,6 @@ class Topic < ActiveRecord::Base
has_many :invites, through: :topic_invites, source: :invite
has_many :revisions, foreign_key: :topic_id, class_name: 'TopicRevision'
- has_one :warning
# When we want to temporarily attach some data to a forum topic (usually before serialization)
attr_accessor :user_data
diff --git a/app/models/user.rb b/app/models/user.rb
index d07a02123aa..59b73c735f2 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -35,7 +35,6 @@ class User < ActiveRecord::Base
has_many :invites, dependent: :destroy
has_many :topic_links, dependent: :destroy
has_many :uploads
- has_many :warnings
has_one :user_avatar, dependent: :destroy
has_one :facebook_user_info, dependent: :destroy
@@ -394,10 +393,6 @@ class User < ActiveRecord::Base
PostAction.where(user_id: id, post_action_type_id: PostActionType.flag_types.values).count
end
- def warnings_received_count
- warnings.count
- end
-
def flags_received_count
posts.includes(:post_actions).where('post_actions.post_action_type_id' => PostActionType.flag_types.values).count
end
diff --git a/app/models/warning.rb b/app/models/warning.rb
deleted file mode 100644
index 7d60d2deb50..00000000000
--- a/app/models/warning.rb
+++ /dev/null
@@ -1,5 +0,0 @@
-class Warning < ActiveRecord::Base
- belongs_to :user
- belongs_to :topic
- belongs_to :created_by, class_name: 'User'
-end
diff --git a/app/serializers/admin_detailed_user_serializer.rb b/app/serializers/admin_detailed_user_serializer.rb
index 1df1089ef28..b24d2d126ea 100644
--- a/app/serializers/admin_detailed_user_serializer.rb
+++ b/app/serializers/admin_detailed_user_serializer.rb
@@ -17,8 +17,7 @@ class AdminDetailedUserSerializer < AdminUserSerializer
:can_be_deleted,
:suspend_reason,
:primary_group_id,
- :badge_count,
- :warnings_received_count
+ :badge_count
has_one :approved_by, serializer: BasicUserSerializer, embed: :objects
has_one :api_key, serializer: ApiKeySerializer, embed: :objects
diff --git a/app/serializers/listable_topic_serializer.rb b/app/serializers/listable_topic_serializer.rb
index 99f2aff8bb9..b89c05aeaa6 100644
--- a/app/serializers/listable_topic_serializer.rb
+++ b/app/serializers/listable_topic_serializer.rb
@@ -19,7 +19,6 @@ class ListableTopicSerializer < BasicTopicSerializer
:visible,
:closed,
:archived,
- :is_warning,
:notification_level
has_one :last_poster, serializer: BasicUserSerializer, embed: :objects
@@ -38,14 +37,6 @@ class ListableTopicSerializer < BasicTopicSerializer
false
end
- def is_warning
- object.private_message? && object.warning.present?
- end
-
- def include_is_warning?
- is_warning
- end
-
def unseen
!seen
end
diff --git a/app/serializers/notification_serializer.rb b/app/serializers/notification_serializer.rb
index c73bfa903b7..c6eb8412722 100644
--- a/app/serializers/notification_serializer.rb
+++ b/app/serializers/notification_serializer.rb
@@ -6,21 +6,12 @@ class NotificationSerializer < ApplicationSerializer
:post_number,
:topic_id,
:slug,
- :data,
- :is_warning
+ :data
def slug
Slug.for(object.topic.title) if object.topic.present?
end
- def is_warning
- object.topic.present? && object.topic.warning.present?
- end
-
- def include_is_warning?
- is_warning
- end
-
def data
object.data_hash
end
diff --git a/app/serializers/topic_view_serializer.rb b/app/serializers/topic_view_serializer.rb
index b9d3a4737a7..23313c29daa 100644
--- a/app/serializers/topic_view_serializer.rb
+++ b/app/serializers/topic_view_serializer.rb
@@ -41,9 +41,7 @@ class TopicViewSerializer < ApplicationSerializer
:deleted_by,
:has_deleted,
:actions_summary,
- :expandable_first_post,
- :is_warning
-
+ :expandable_first_post
# Define a delegator for each attribute of the topic we want
attributes(*topic_attributes)
@@ -111,14 +109,6 @@ class TopicViewSerializer < ApplicationSerializer
result
end
-
- def is_warning
- object.topic.private_message? && object.topic.warning.present?
- end
-
- def include_is_warning?
- is_warning
- end
def draft
object.draft
end
diff --git a/app/serializers/user_serializer.rb b/app/serializers/user_serializer.rb
index 1edb4034d2f..15b871a8a3c 100644
--- a/app/serializers/user_serializer.rb
+++ b/app/serializers/user_serializer.rb
@@ -55,8 +55,7 @@ class UserSerializer < BasicUserSerializer
staff_attributes :number_of_deleted_posts,
:number_of_flagged_posts,
:number_of_flags_given,
- :number_of_suspensions,
- :number_of_warnings
+ :number_of_suspensions
private_attributes :email,
@@ -194,10 +193,6 @@ class UserSerializer < BasicUserSerializer
.count
end
- def number_of_warnings
- object.warnings.count
- end
-
def number_of_suspensions
UserHistory.for(object, :suspend_user).count
end
diff --git a/config/locales/client.en.yml b/config/locales/client.en.yml
index ecddbc6db06..220c34c3c96 100644
--- a/config/locales/client.en.yml
+++ b/config/locales/client.en.yml
@@ -336,7 +336,6 @@ en:
flagged_posts: "flagged posts"
deleted_posts: "deleted posts"
suspensions: "suspensions"
- warnings_received: "warnings received"
messages:
all: "All"
@@ -625,7 +624,6 @@ en:
message: "Authenticating with GitHub (make sure pop up blockers are not enabled)"
composer:
- add_warning: "This is an official warning."
posting_not_on_topic: "Which topic do you want to reply to?"
saving_draft_tip: "saving"
saved_draft_tip: "saved"
@@ -1320,8 +1318,6 @@ en:
other: "%{count} clicks"
topic_statuses:
- warning:
- help: "This is an official warning."
locked:
help: "This topic is closed; it no longer accepts new replies"
archived:
@@ -1902,7 +1898,6 @@ en:
topics_entered: Topics Viewed
flags_given_count: Flags Given
flags_received_count: Flags Received
- warnings_received_count: Warnings Received
flags_given_received_count: 'Flags Given / Received'
approve: 'Approve'
approved_by: "approved by"
diff --git a/config/locales/server.en.yml b/config/locales/server.en.yml
index 1f7d17923ac..639ce4097eb 100644
--- a/config/locales/server.en.yml
+++ b/config/locales/server.en.yml
@@ -211,9 +211,6 @@ en:
models:
topic:
attributes:
- base:
- warning_requires_pm: "You can only attach warnings to private messages."
- too_many_users: "You can only send warnings to one user at a time."
archetype:
cant_send_pm: "Sorry, you cannot send a private message to that user."
user:
diff --git a/db/migrate/20140905171733_create_warnings.rb b/db/migrate/20140905171733_create_warnings.rb
deleted file mode 100644
index 90d38725b6e..00000000000
--- a/db/migrate/20140905171733_create_warnings.rb
+++ /dev/null
@@ -1,12 +0,0 @@
-class CreateWarnings < ActiveRecord::Migration
- def change
- create_table :warnings do |t|
- t.references :topic, null: false
- t.references :user, null: false
- t.integer :created_by_id, null: false
- t.timestamps
- end
- add_index :warnings, :user_id
- add_index :warnings, :topic_id, unique: true
- end
-end
diff --git a/lib/post_creator.rb b/lib/post_creator.rb
index ee777a26e2a..c4de0707c2f 100644
--- a/lib/post_creator.rb
+++ b/lib/post_creator.rb
@@ -28,7 +28,6 @@ class PostCreator
# When creating a topic:
# title - New topic title
# archetype - Topic archetype
- # is_warning - Is the topic a warning?
# category - Category to assign to topic
# target_usernames - comma delimited list of usernames for membership (private message)
# target_group_names - comma delimited list of groups for membership (private message)
diff --git a/lib/topic_creator.rb b/lib/topic_creator.rb
index cf25144b17f..9209ec85cab 100644
--- a/lib/topic_creator.rb
+++ b/lib/topic_creator.rb
@@ -10,7 +10,6 @@ class TopicCreator
@user = user
@guardian = guardian
@opts = opts
- @added_users = []
end
def create
@@ -19,7 +18,6 @@ class TopicCreator
setup_auto_close_time
process_private_message
save_topic
- create_warning
watch_topic
@topic
@@ -27,27 +25,6 @@ class TopicCreator
private
- def create_warning
- return unless @opts[:is_warning]
-
- # We can only attach warnings to PMs
- unless @topic.private_message?
- @topic.errors.add(:base, :warning_requires_pm)
- @errors = @topic.errors
- raise ActiveRecord::Rollback.new
- end
-
- # Don't create it if there is more than one user
- if @added_users.size != 1
- @topic.errors.add(:base, :too_many_users)
- @errors = @topic.errors
- raise ActiveRecord::Rollback.new
- end
-
- # Create a warning record
- Warning.create(topic: @topic, user: @added_users.first, created_by: @user)
- end
-
def watch_topic
unless @opts[:auto_track] == false
@topic.notifier.watch_topic!(@topic.user_id)
@@ -131,8 +108,7 @@ class TopicCreator
def add_users(topic, usernames)
return unless usernames
User.where(username: usernames.split(',')).each do |user|
- check_can_send_permission!(topic, user)
- @added_users << user
+ check_can_send_permission!(topic,user)
topic.topic_allowed_users.build(user_id: user.id)
end
end
diff --git a/lib/topic_query.rb b/lib/topic_query.rb
index 022806db329..ceb341ba5ca 100644
--- a/lib/topic_query.rb
+++ b/lib/topic_query.rb
@@ -165,7 +165,7 @@ class TopicQuery
options.reverse_merge!(per_page: SiteSetting.topics_per_page)
# Start with a list of all topics
- result = Topic.includes(:allowed_users).includes(:warning)
+ result = Topic.includes(:allowed_users)
.where("topics.id IN (SELECT topic_id FROM topic_allowed_users WHERE user_id = #{user.id.to_i})")
.joins("LEFT OUTER JOIN topic_users AS tu ON (topics.id = tu.topic_id AND tu.user_id = #{user.id.to_i})")
.order(TopicQuerySQL.order_nocategory_basic_bumped)
diff --git a/spec/components/post_creator_spec.rb b/spec/components/post_creator_spec.rb
index bf7ee76bcd3..7b02d7747a9 100644
--- a/spec/components/post_creator_spec.rb
+++ b/spec/components/post_creator_spec.rb
@@ -350,9 +350,6 @@ describe PostCreator do
end
it 'acts correctly' do
- # It's not a warning
- post.topic.warning.should be_blank
-
post.topic.archetype.should == Archetype.private_message
post.topic.topic_allowed_users.count.should == 3
@@ -373,43 +370,6 @@ describe PostCreator do
end
end
- context "warnings" do
- let(:target_user1) { Fabricate(:coding_horror) }
- let(:target_user2) { Fabricate(:moderator) }
- let(:base_args) do
- { title: 'you need a warning buddy!',
- raw: "you did something bad and I'm telling you about it!",
- is_warning: true,
- target_usernames: target_user1.username,
- category: 1 }
- end
-
- it "works as expected" do
- # Invalid archetype
- creator = PostCreator.new(user, base_args)
- creator.create
- creator.errors.should be_present
-
- # Too many users
- creator = PostCreator.new(user, base_args.merge(archetype: Archetype.private_message,
- target_usernames: [target_user1.username, target_user2.username].join(',')))
- creator.create
- creator.errors.should be_present
-
- # Success
- creator = PostCreator.new(user, base_args.merge(archetype: Archetype.private_message))
- post = creator.create
- creator.errors.should be_blank
-
- topic = post.topic
- topic.should be_present
- topic.warning.should be_present
- topic.warning.user.should == target_user1
- topic.warning.created_by.should == user
- target_user1.warnings.count.should == 1
- end
- end
-
context 'private message to group' do
let(:target_user1) { Fabricate(:coding_horror) }
let(:target_user2) { Fabricate(:moderator) }
diff --git a/spec/controllers/posts_controller_spec.rb b/spec/controllers/posts_controller_spec.rb
index 9fe83fec40c..23fde8ccd80 100644
--- a/spec/controllers/posts_controller_spec.rb
+++ b/spec/controllers/posts_controller_spec.rb
@@ -384,7 +384,6 @@ describe PostsController do
describe 'when logged in' do
let!(:user) { log_in }
- let(:moderator) { log_in(:moderator) }
let(:new_post) { Fabricate.build(:post, user: user) }
it "raises an exception without a raw parameter" do
@@ -493,24 +492,6 @@ describe PostsController do
xhr :post, :create, {raw: 'hello', meta_data: {xyz: 'abc'}}
end
- context "is_warning" do
- it "doesn't pass `is_warning` through if you're not staff" do
- PostCreator.expects(:new).with(user, Not(has_entries('is_warning' => true))).returns(post_creator)
- xhr :post, :create, {raw: 'hello', archetype: 'private_message', is_warning: 'true'}
- end
-
- it "passes `is_warning` through if you're staff" do
- PostCreator.expects(:new).with(moderator, has_entries('is_warning' => true)).returns(post_creator)
- xhr :post, :create, {raw: 'hello', archetype: 'private_message', is_warning: 'true'}
- end
-
- it "passes `is_warning` as false through if you're staff" do
- PostCreator.expects(:new).with(moderator, has_entries('is_warning' => false)).returns(post_creator)
- xhr :post, :create, {raw: 'hello', archetype: 'private_message', is_warning: 'false'}
- end
-
- end
-
end
end