diff --git a/app/controllers/my_profile/cms_controller.rb b/app/controllers/my_profile/cms_controller.rb
index 3860d91..f428e4b 100644
--- a/app/controllers/my_profile/cms_controller.rb
+++ b/app/controllers/my_profile/cms_controller.rb
@@ -52,8 +52,6 @@ class CmsController < MyProfileController
profile.articles.find(c.params[:id]).allow_edit?(user)
end
-
-
def boxes_holder
profile
end
diff --git a/lib/noosfero/plugin.rb b/lib/noosfero/plugin.rb
index d975e7d..575f3df 100644
--- a/lib/noosfero/plugin.rb
+++ b/lib/noosfero/plugin.rb
@@ -224,12 +224,6 @@ class Noosfero::Plugin
false
end
- # -> Add action names to a list of filtered actions on cms controller
- # returns = []
- def add_action_to_list
- []
- end
-
# -> Adds buttons to the control panel
# returns = { :title => title, :icon => icon, :url => url }
# title = name that will be displayed.
diff --git a/plugins/work_assignment/lib/ext/cms_controller.rb b/plugins/work_assignment/lib/ext/cms_controller.rb
index e9cd474..0e01568 100644
--- a/plugins/work_assignment/lib/ext/cms_controller.rb
+++ b/plugins/work_assignment/lib/ext/cms_controller.rb
@@ -2,33 +2,29 @@ require_dependency 'cms_controller'
class CmsController
-
-protect_if :only => :edit_visibility do |c,user,profile|
- profile.articles.find(c.params[:article_id]).author == user || user.has_permission?('view_private_content', profile)
+protect_if :only => :edit_visibility do |c, user, profile|
+ article = c.environment.articles.find_by_id(c.params[:article_id])
+ (user && !article.nil? && article.folder? && article.parent.allow_privacy_edition &&
+ (article.author == user || user.has_permission?('view_private_content', profile)))
end
def edit_visibility
unless params[:article_id].blank?
- @folder = profile.articles.find(params[:article_id])
- @back_to = url_for(@folder.parent.url)
+ folder = profile.environment.articles.find_by_id(params[:article_id])
+ @back_to = url_for(folder.parent.url)
unless params[:article].blank?
- @folder.published = params[:article][:published]
+ folder.published = params[:article][:published]
unless params[:q].nil?
- @folder.article_privacy_exceptions = params[:q].split(/,/).map{|n| environment.people.find n.to_i}
- @folder.children.each do |c|
- c.article_privacy_exceptions = params[:q].split(/,/).map{|n| environment.people.find n.to_i}
- c.save!
- end
+ folder.article_privacy_exceptions = params[:q].split(/,/).map{|n| environment.people.find n.to_i}
end
- @folder.save!
+ folder.save!
redirect_to @back_to
- end
+ end
end
end
def self.add_as_exception?(action)
actions = "edit_visibility, search_article_privacy_exceptions"
-
if actions.include? action
true
else
@@ -36,4 +32,4 @@ def self.add_as_exception?(action)
end
end
-end
\ No newline at end of file
+end
diff --git a/plugins/work_assignment/lib/ext/email_contact.rb b/plugins/work_assignment/lib/ext/email_contact.rb
index 5a25fb0..e4d60fb 100644
--- a/plugins/work_assignment/lib/ext/email_contact.rb
+++ b/plugins/work_assignment/lib/ext/email_contact.rb
@@ -31,17 +31,17 @@ class EmailContact
class EmailSender < ActionMailer::Base
def notification(email_contact)
- @name = email_contact.sender.name
- @email = email_contact.sender.email
- @message = email_contact.message
- @target = email_contact.receiver
+ name = email_contact.sender.name
+ email = email_contact.sender.email
+ message = email_contact.message
+ target = email_contact.receiver
options = {
content_type: 'text/html',
- to: @target,
- reply_to: @email,
+ to: target,
+ reply_to: email,
subject: email_contact.subject,
- body: @message,
+ body: message,
from: "#{email_contact.sender.environment.name} <#{email_contact.sender.environment.contact_email}>",
}
@@ -50,16 +50,16 @@ class EmailContact
end
def build_mail_message!(environment, uploaded_files, parent_id)
- @article = environment.articles.find_by_id(parent_id)
- @message = ""
- if !@article.nil? && @article.type == "WorkAssignmentPlugin::WorkAssignment"
- @message = @article.default_email + "
"
+ article = environment.articles.find_by_id(parent_id)
+ message = ""
+ if !article.nil? && article.type == "WorkAssignmentPlugin::WorkAssignment"
+ message = article.default_email + "
"
end
uploaded_files.each do |file|
- @real_file_url = "http://#{file.url[:host]}:#{file.url[:port]}/#{file.url[:profile]}/#{file.path}"
- @message += "
#{@real_file_url}"
+ file_url = "http://#{file.url[:host]}:#{file.url[:port]}/#{file.url[:profile]}/#{file.path}"
+ message += "
#{file_url}"
end
- self.message = @message
+ self.message = message
end
end
diff --git a/plugins/work_assignment/lib/ext/folder.rb b/plugins/work_assignment/lib/ext/folder.rb
new file mode 100644
index 0000000..14a767e
--- /dev/null
+++ b/plugins/work_assignment/lib/ext/folder.rb
@@ -0,0 +1,13 @@
+require_dependency 'article'
+require_dependency 'folder'
+
+class Folder < Article
+ after_save do |folder|
+ if folder.parent.kind_of?(WorkAssignmentPlugin::WorkAssignment)
+ folder.children.each do |c|
+ c.published = folder.published
+ c.article_privacy_exceptions = folder.article_privacy_exceptions
+ end
+ end
+ end
+end
\ No newline at end of file
diff --git a/plugins/work_assignment/lib/ext/uploaded_file.rb b/plugins/work_assignment/lib/ext/uploaded_file.rb
index f66b0d2..28110e8 100644
--- a/plugins/work_assignment/lib/ext/uploaded_file.rb
+++ b/plugins/work_assignment/lib/ext/uploaded_file.rb
@@ -9,4 +9,16 @@ class UploadedFile < Article
uploaded_file.parent = author_folder
end
end
+
+ after_validation do |uploaded_file|
+ if uploaded_file.parent.parent.kind_of?(WorkAssignmentPlugin::WorkAssignment)
+ uploaded_file.published = uploaded_file.parent.published
+ end
+ end
+
+ # after_create do |uploaded_file|
+ # if uploaded_file.parent.parent.kind_of?(WorkAssignmentPlugin::WorkAssignment)
+ # uploaded_file.published = uploaded_file.parent.published
+ # end
+ # end
end
diff --git a/plugins/work_assignment/lib/work_assignment_plugin.rb b/plugins/work_assignment/lib/work_assignment_plugin.rb
index 12a941a..0c2dcd7 100644
--- a/plugins/work_assignment/lib/work_assignment_plugin.rb
+++ b/plugins/work_assignment/lib/work_assignment_plugin.rb
@@ -54,11 +54,11 @@ class WorkAssignmentPlugin < Noosfero::Plugin
def cms_controller_filters
block = proc do
if request.post? && params[:uploaded_files]
- @email_notification = params[:article_email_notification]
- unless !@email_notification || @email_notification.empty?
- @email_contact = EmailContact.new(:subject => @parent.name, :receiver => @email_notification, :sender => user)
- @email_contact.build_mail_message!(environment, @uploaded_files, @parent.id)
- if @email_contact.deliver
+ email_notification = params[:article_email_notification]
+ unless !email_notification || email_notification.empty?
+ email_contact = EmailContact.new(:subject => @parent.name, :receiver => email_notification, :sender => user)
+ email_contact.build_mail_message!(environment, @uploaded_files, @parent.id)
+ if email_contact.deliver
session[:notice] = _('Notification successfully sent')
else
session[:notice] = _('Notification not sent')
@@ -81,11 +81,4 @@ class WorkAssignmentPlugin < Noosfero::Plugin
end
end
end
-
- def add_action_to_list
- proc do
- action_list.append(", edits, search_article_privacy_exceptions")
- end
- end
-
end
diff --git a/plugins/work_assignment/lib/work_assignment_plugin/helper.rb b/plugins/work_assignment/lib/work_assignment_plugin/helper.rb
index 0b10796..b25e759 100644
--- a/plugins/work_assignment/lib/work_assignment_plugin/helper.rb
+++ b/plugins/work_assignment/lib/work_assignment_plugin/helper.rb
@@ -16,7 +16,6 @@ module WorkAssignmentPlugin::Helper
def display_author_folder(author_folder, user)
return if author_folder.children.empty?
- action = 'toggle_friends_permission'
content_tag('tr',
content_tag('td', link_to_last_submission(author_folder, user)) +
content_tag('td', time_format(author_folder.children.last.created_at)) +
@@ -74,21 +73,21 @@ module WorkAssignmentPlugin::Helper
def display_privacy_button(author_folder, user)
if author_folder
- @folder = environment.articles.find_by_id(author_folder.id)
- work_assignment = @folder.parent
- @back_to = url_for(@folder.parent.url)
+ folder = environment.articles.find_by_id(author_folder.id)
+ work_assignment = folder.parent
+ @back_to = url_for(folder.parent.url)
if(user && work_assignment.allow_privacy_edition &&
- (author_folder.author_id == user.id || user.has_permission?('view_private_content', work_assignment.profile)))
+ ((author_folder.author_id == user.id && (user.is_member_of? work_assignment.profile)) ||
+ user.has_permission?('view_private_content', work_assignment.profile)))
@tokenized_children = prepare_to_token_input(
profile.members.includes(:articles_with_access).find_all{ |m|
- m.articles_with_access.include?(@folder)
+ m.articles_with_access.include?(folder)
})
button :edit, _('Edit'), { :controller => 'cms',
- :action => 'edit_visibility', :article_id => @folder.id,
+ :action => 'edit_visibility', :article_id => folder.id,
:tokenized_children => @tokenized_children, :back_to => @back_to}, :method => :post
end
end
end
-
end
diff --git a/plugins/work_assignment/public/content_resize.js b/plugins/work_assignment/public/content_resize.js
deleted file mode 100644
index 0ebf4cd..0000000
--- a/plugins/work_assignment/public/content_resize.js
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
- alert( 'oi');
diff --git a/plugins/work_assignment/public/style.css b/plugins/work_assignment/public/style.css
index e574362..3468cb1 100644
--- a/plugins/work_assignment/public/style.css
+++ b/plugins/work_assignment/public/style.css
@@ -1,7 +1,2 @@
.icon-newwork-assignment { background-image: url(../../designs/icons/tango/Tango/16x16/categories/applications-office.png) }
.icon-work-assignment { background-image: url(../../designs/icons/tango/Tango/16x16/categories/applications-office.png) }
-.select-privacy-options {
- padding: 5px 20px;
- width: 400px;
- height: 300px;
-}
\ No newline at end of file
diff --git a/plugins/work_assignment/test/functional/cms_controller_test.rb b/plugins/work_assignment/test/functional/cms_controller_test.rb
index 49b110b..0957767 100644
--- a/plugins/work_assignment/test/functional/cms_controller_test.rb
+++ b/plugins/work_assignment/test/functional/cms_controller_test.rb
@@ -6,39 +6,196 @@ class CmsController; def rescue_action(e) raise e end; end
class CmsControllerTest < ActionController::TestCase
+ include NoosferoTestHelper
+
+ fixtures :environments
+
+
+ attr_reader :profile
+ attr_accessor :person
+
def setup
@controller = CmsController.new
@request = ActionController::TestRequest.new
@response = ActionController::TestResponse.new
@person = create_user('test_user').person
login_as :test_user
+ e = Environment.default
+ e.enabled_plugins = ['WorkAssignmentPlugin']
+ e.save!
+ @organization = fast_create(Organization) #
end
- attr_accessor :person
-
should 'not allow non-members to upload submissions on work_assignment' do
- organization = fast_create(Organization)
- work_assignment = WorkAssignmentPlugin::WorkAssignment.create!(:name => 'Work Assignment', :profile => organization)
-
- get :upload_files, :profile => organization.identifier, :parent_id => work_assignment.id
+ work_assignment = create_work_assignment('Another Work Assignment', @organization, nil, nil)
+ get :upload_files, :profile => @organization.identifier, :parent_id => work_assignment.id
assert_response :forbidden
assert_template 'access_denied'
+ end
- organization.add_member(person)
-
- get :upload_files, :profile => organization.identifier, :parent_id => work_assignment.id
+ should 'allow members to upload submissions on work_assignment' do
+ @organization.add_member(person)
+ # then he trys to upload new stuff
+ work_assignment = create_work_assignment('Another Work Assignment', @organization, nil, nil)
+ get :upload_files, :profile => @organization.identifier, :parent_id => work_assignment.id
assert_response :success
end
- should 'upload submission and automatically move it to the author folder' do
- organization = fast_create(Organization)
- work_assignment = WorkAssignmentPlugin::WorkAssignment.create!(:name => 'Work Assignment', :profile => organization)
- organization.add_member(person)
- post :upload_files, :profile => organization.identifier, :parent_id => work_assignment.id, :uploaded_files => [fixture_file_upload('/files/test.txt', 'text/plain')]
+ should 'redirect to Work Assignment view page after upload submission' do
+ @organization.add_member(person)
+ work_assignment = create_work_assignment('Another Work Assignment', @organization, nil, nil)
+ post :upload_files, :profile => @organization.identifier, :parent_id => work_assignment.id, :uploaded_files => [fixture_file_upload('/files/test.txt', 'text/plain')] , :back_to => @work_assignment.url
+ assert_redirected_to work_assignment.url
+ end
+ should 'upload submission and automatically move it to the author folder' do
+ work_assignment = create_work_assignment('Another Work Assignment', @organization, nil, nil)
+ @organization.add_member(person)
+ post :upload_files, :profile => @organization.identifier, :parent_id => work_assignment.id, :uploaded_files => [fixture_file_upload('/files/test.txt', 'text/plain')]
submission = UploadedFile.last
assert_equal work_assignment.find_or_create_author_folder(person), submission.parent
end
-end
+ should 'work_assignment attribute allow_privacy_edition is true when set a new work_assignment' do
+ work_assignment = create_work_assignment('Another Work Assignment', @organization, nil, true)
+ @organization.add_member(person)
+ assert_equal true, work_assignment.allow_privacy_edition
+ end
+
+ should 'a submission and parent attribute "published" be equal to Work Assignment attribute publish submissions' do
+ @organization.add_member(person)
+ work_assignment = create_work_assignment('Another Work Assignment', @organization, true, nil)
+ assert_equal true, work_assignment.publish_submissions
+ post :upload_files, :profile => @organization.identifier, :parent_id => work_assignment.id, :uploaded_files => [fixture_file_upload('/files/test.txt', 'text/plain')]
+ submission = UploadedFile.last
+ assert_equal work_assignment.publish_submissions, submission.published
+ assert_equal work_assignment.publish_submissions, submission.parent.published
+
+ other_work_assignment = create_work_assignment('Another Other Work Assigment', @organization, false, nil)
+ assert_equal false, other_work_assignment.publish_submissions
+ post :upload_files, :profile => @organization.identifier, :parent_id => other_work_assignment.id, :uploaded_files => [fixture_file_upload('/files/test.txt', 'text/plain')]
+ submission = UploadedFile.last
+ assert_equal other_work_assignment.publish_submissions, submission.published
+ assert_equal other_work_assignment.publish_submissions, submission.parent.published
+ end
+
+ should 'submission edit visibility deny access to users and admin when Work Assignment allow_privacy_edition is false' do
+ @organization.add_member(person)
+ ##### Testing with normal user
+ work_assignment = create_work_assignment('Another Work Assignment', @organization, nil, nil)
+ post :upload_files, :profile => @organization.identifier, :parent_id => work_assignment.id, :uploaded_files => [fixture_file_upload('/files/test.txt', 'text/plain')]
+ submission = UploadedFile.last
+ assert_equal false, submission.published
+ assert_equal false, submission.parent.published
+
+ post :edit_visibility, :profile => @organization.identifier, :article_id => submission.parent.id
+ assert_template 'access_denied'
+ post :edit_visibility, :profile => @organization.identifier, :article_id => submission.parent.id, :article => { :published => true }
+ assert_template 'access_denied'
+
+ submission.reload
+ assert_equal false, submission.published
+ assert_equal false, submission.parent.published
+ #### Even with admin user
+ e = Environment.default
+ assert_equal false, person.is_admin?
+ e.add_admin(person)
+ e.save!
+ assert_equal true, person.is_admin?
+
+ post :edit_visibility, :profile => @organization.identifier, :article_id => submission.parent.id
+ assert_template 'access_denied'
+ post :edit_visibility, :profile => @organization.identifier, :article_id => submission.parent.id, :article => { :published => true }
+ assert_template 'access_denied'
+
+ submission.reload
+ assert_equal false, submission.published
+ end
+
+ should 'redirect an unlogged user to the login page if he tryes to access the edit visibility page and work_assignment allow_privacy_edition is true' do
+ @organization.add_member(person)
+ work_assignment = create_work_assignment('Another Work Assignment', @organization, nil, nil)
+ work_assignment.allow_privacy_edition = true # the user can edit the privacy
+ assert_equal true, work_assignment.allow_privacy_edition
+ work_assignment.save!
+ parent = work_assignment.find_or_create_author_folder(person)
+ UploadedFile.create(
+ {
+ :uploaded_data => fixture_file_upload('/files/test.txt', 'text/plain'),
+ :profile => @organization,
+ :parent => parent,
+ :last_changed_by => person,
+ :author => person,
+ },
+ :without_protection => true
+ )
+ logout
+ submission = UploadedFile.last
+ assert_equal false, submission.parent.published
+ assert_equal false, submission.published
+
+ post :edit_visibility, :profile => @organization.identifier, :article_id => submission.parent.id
+ assert_redirected_to '/account/login'
+ post :edit_visibility, :profile => @organization.identifier, :article_id => submission.parent.id, :article => { :published => true }
+ assert_redirected_to '/account/login'
+ submission.reload
+ assert_equal false, submission.parent.published
+ assert_equal false, submission.published
+ end
+
+ should 'submission edit_visibility deny access to not owner when WorkAssignment edit_visibility is true' do
+ @organization.add_member(person) # current_user is a member
+ work_assignment = create_work_assignment('Another Work Assignment', @organization, nil, true)
+ @parent = work_assignment.find_or_create_author_folder(person)
+ UploadedFile.create(
+ {
+ :uploaded_data => fixture_file_upload('/files/test.txt', 'text/plain'),
+ :profile => @organization,
+ :parent => @parent,
+ :last_changed_by => person,
+ :author => person,
+ },
+ :without_protection => true
+ )
+ logout
+
+
+ other_person = create_user('other_user').person
+ @organization.add_member(other_person)
+ login_as :other_user
+
+ @organization.add_member(other_person)
+ submission = UploadedFile.last
+ assert_equal(submission.author, person)
+
+ post :edit_visibility, :profile => @organization.identifier, :article_id => submission.parent.id
+ assert_template 'access_denied'
+
+ post :edit_visibility, :profile => @organization.identifier, :article_id => submission.parent.id, :article => { :published => true }
+ assert_template 'access_denied'
+
+ submission.reload
+ assert_equal false, submission.parent.published
+ assert_equal false, submission.published
+ end
+
+ should 'submission white list give permission to an user that has been added' do
+ other_person = create_user('other_user').person
+ @organization.add_member(person)
+ @organization.add_member(other_person)
+ work_assignment = create_work_assignment('Another Work Assignment', @organization, false, true)
+ post :upload_files, :profile => @organization.identifier, :parent_id => work_assignment.id, :uploaded_files => [fixture_file_upload('/files/test.txt', 'text/plain')]
+ submission = UploadedFile.last
+ assert_equal false, submission.display_unpublished_article_to?(other_person)
+ post :edit_visibility, :profile => @organization.identifier, :article_id => submission.parent.id, :article => { :published => false }, :q => other_person.id
+ submission.reload
+ assert_equal true, submission.parent.display_unpublished_article_to?(other_person)
+ assert_equal true, submission.display_unpublished_article_to?(other_person)
+ end
+
+ private
+ def create_work_assignment(name = nil, profile = nil, publish_submissions = nil, allow_privacy_edition = nil)
+ @work_assignment = WorkAssignmentPlugin::WorkAssignment.create!(:name => name, :profile => profile, :publish_submissions => publish_submissions, :allow_privacy_edition => allow_privacy_edition)
+ end
+end
diff --git a/plugins/work_assignment/test/unit/work_assingment_plugin/work_assignment_test.rb b/plugins/work_assignment/test/unit/work_assingment_plugin/work_assignment_test.rb
index 5d1a85e..f37840b 100644
--- a/plugins/work_assignment/test/unit/work_assingment_plugin/work_assignment_test.rb
+++ b/plugins/work_assignment/test/unit/work_assingment_plugin/work_assignment_test.rb
@@ -1,4 +1,4 @@
-require "test_helper"
+require File.expand_path(File.dirname(__FILE__) + "/../../../../../test/test_helper")
class WorkAssignmentTest < ActiveSupport::TestCase
should 'find or create sub-folder based on author identifier' do
@@ -38,7 +38,7 @@ class WorkAssignmentTest < ActiveSupport::TestCase
submission = create(UploadedFile, :uploaded_data => fixture_file_upload('/files/rails.png', 'image/png'), :profile => organization, :parent => work_assignment, :author => author)
author_folder = work_assignment.find_or_create_author_folder(author)
- assert author_folder, submission.parent
+ assert_equal author_folder, submission.parent
end
should 'add logged user on cache_key if is a member' do
diff --git a/plugins/work_assignment/test/unit/work_assingment_plugin_test.rb b/plugins/work_assignment/test/unit/work_assingment_plugin_test.rb
index 6780361..3ba2024 100644
--- a/plugins/work_assignment/test/unit/work_assingment_plugin_test.rb
+++ b/plugins/work_assignment/test/unit/work_assingment_plugin_test.rb
@@ -1,9 +1,21 @@
-require 'test_helper'
+require File.expand_path(File.dirname(__FILE__) + "/../../../../test/test_helper")
class WorkAssignmentPluginTest < ActiveSupport::TestCase
should 'verify if a content is a work_assignment submission' do
organization = fast_create(Organization)
- content = create(UploadedFile, :uploaded_data => fixture_file_upload('/files/rails.png', 'image/png'), :profile => organization, :author => fast_create(Person))
+ folder = fast_create(Folder)
+ person = fast_create(Person)
+ content = UploadedFile.create(
+ {
+ :uploaded_data => fixture_file_upload('/files/rails.png', 'image/png'),
+ :profile => organization,
+ :parent => folder,
+ :last_changed_by => person,
+ :author => person,
+ },
+ :without_protection => true
+ )
+ #content = create(UploadedFile, :uploaded_data => fixture_file_upload('/files/rails.png', 'image/png'), :profile => organization, :author => fast_create(Person))
assert !WorkAssignmentPlugin.is_submission?(content)
work_assignment = WorkAssignmentPlugin::WorkAssignment.create!(:name => 'Work Assignment', :profile => organization)
@@ -22,7 +34,9 @@ class WorkAssignmentPluginTest < ActiveSupport::TestCase
work_assignment = submission.parent.parent
work_assignment.publish_submissions = true
work_assignment.save!
- assert WorkAssignmentPlugin.can_download_submission?(nil, submission)
+
+ other_submission = create_submission(nil, work_assignment)
+ assert WorkAssignmentPlugin.can_download_submission?(nil, other_submission)
end
should 'be able to download submission if the user is author of it' do
@@ -45,12 +59,21 @@ class WorkAssignmentPluginTest < ActiveSupport::TestCase
private
- def create_submission(author=nil)
+ def create_submission(author=nil, work_assignment=nil)
author ||= fast_create(Person)
organization = fast_create(Organization)
-
- work_assignment = WorkAssignmentPlugin::WorkAssignment.create!(:name => 'Work Assignment', :profile => organization)
+ organization.add_member(author)
+ work_assignment ||= WorkAssignmentPlugin::WorkAssignment.create!(:name => 'Work Assignment', :profile => organization)
author_folder = work_assignment.find_or_create_author_folder(author)
- create(UploadedFile, :uploaded_data => fixture_file_upload('/files/rails.png', 'image/png'), :profile => organization, :parent => author_folder, :author => author, :last_changed_by => author)
+ content = UploadedFile.create(
+ {
+ :uploaded_data => fixture_file_upload('/files/rails.png', 'image/png'),
+ :profile => organization,
+ :parent => author_folder,
+ :last_changed_by => author,
+ :author => author,
+ },
+ :without_protection => true
+ )
end
end
diff --git a/plugins/work_assignment/views/cms/_notify_text_field.html.erb b/plugins/work_assignment/views/cms/_notify_text_field.html.erb
index 2190d13..962a4c1 100644
--- a/plugins/work_assignment/views/cms/_notify_text_field.html.erb
+++ b/plugins/work_assignment/views/cms/_notify_text_field.html.erb
@@ -1,4 +1,3 @@