Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-06-13 15:24:54 +0400
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-06-13 15:24:54 +0400
commit1355ede49d02e2a7b1715a3ed6bd7389bfedf6bc (patch)
treed1530d3685f4d934f5224fc6cde9305b736c0c71 /app
parenta5cbb4cb82a6911b5c1de117ae6ed4cbf667a679 (diff)
Wipe wall notes feature
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Diffstat (limited to 'app')
-rw-r--r--app/assets/javascripts/dispatcher.js.coffee2
-rw-r--r--app/assets/javascripts/wall.js.coffee85
-rw-r--r--app/assets/stylesheets/sections/wall.scss55
-rw-r--r--app/controllers/projects/walls_controller.rb20
-rw-r--r--app/helpers/events_helper.rb2
-rw-r--r--app/helpers/projects_helper.rb2
-rw-r--r--app/helpers/search_helper.rb1
-rw-r--r--app/mailers/emails/notes.rb9
-rw-r--r--app/models/event.rb4
-rw-r--r--app/models/note.rb6
-rw-r--r--app/models/project.rb5
-rw-r--r--app/observers/note_observer.rb5
-rw-r--r--app/services/notification_service.rb1
-rw-r--r--app/services/projects/create_service.rb1
-rw-r--r--app/views/layouts/nav/_project.html.haml4
-rw-r--r--app/views/notify/note_wall_email.html.haml1
-rw-r--r--app/views/notify/note_wall_email.text.erb9
-rw-r--r--app/views/projects/edit.html.haml7
-rw-r--r--app/views/projects/walls/show.html.haml23
19 files changed, 4 insertions, 238 deletions
diff --git a/app/assets/javascripts/dispatcher.js.coffee b/app/assets/javascripts/dispatcher.js.coffee
index 6518c380bdc..ff68b520ad6 100644
--- a/app/assets/javascripts/dispatcher.js.coffee
+++ b/app/assets/javascripts/dispatcher.js.coffee
@@ -34,8 +34,6 @@ class Dispatcher
new Activities()
when 'projects:new', 'projects:edit'
new Project()
- when 'projects:walls:show'
- new Wall(project_id)
when 'projects:teams:members:index'
new TeamMembers()
when 'groups:members'
diff --git a/app/assets/javascripts/wall.js.coffee b/app/assets/javascripts/wall.js.coffee
deleted file mode 100644
index 4cc11331aca..00000000000
--- a/app/assets/javascripts/wall.js.coffee
+++ /dev/null
@@ -1,85 +0,0 @@
-class Wall
- constructor: (project_id) ->
- @project_id = project_id
- @note_ids = []
- @getContent()
- @initRefresh()
- @initForm()
-
- #
- # Gets an initial set of notes.
- #
- getContent: ->
- Api.notes @project_id, (notes) =>
- $.each notes, (i, note) =>
- # render note if it not present in loaded list
- # or skip if rendered
- if $.inArray(note.id, @note_ids) == -1
- @note_ids.push(note.id)
- @renderNote(note)
- @scrollDown()
- $("abbr.timeago").timeago()
-
- initRefresh: ->
- setInterval =>
- @refresh()
- , 10000
-
- refresh: ->
- @getContent()
-
- scrollDown: ->
- notes = $('ul.notes')
- $('body, html').scrollTop(notes.height())
-
- initForm: ->
- form = $('.wall-note-form')
- form.find("#target_type").val('wall')
-
- form.on 'ajax:success', =>
- @refresh()
- form.find(".js-note-text").val("").trigger("input")
-
- form.on 'ajax:complete', ->
- form.find(".js-comment-button").removeAttr('disabled')
- form.find(".js-comment-button").removeClass('disabled')
-
- form.on "click", ".js-choose-note-attachment-button", ->
- form.find(".js-note-attachment-input").click()
-
- form.on "change", ".js-note-attachment-input", ->
- filename = $(this).val().replace(/^.*[\\\/]/, '')
- form.find(".js-attachment-filename").text(filename)
-
- form.find('.note_text').keydown (e) ->
- if e.ctrlKey && e.keyCode == 13
- form.find('.js-comment-button').submit()
-
- form.show()
-
- renderNote: (note) ->
- template = @noteTemplate()
- template = template.replace('{{author_name}}', note.author.name)
- template = template.replace(/{{created_at}}/g, note.created_at)
- template = template.replace('{{text}}', simpleFormat(note.body))
-
- if note.attachment
- file = '<i class="icon-paper-clip"/><a href="' + gon.relative_url_root + '/files/note/' + note.id + '/' + note.attachment + '">' + note.attachment + '</a>'
- else
- file = ''
- template = template.replace('{{file}}', file)
-
-
- $('ul.notes').append(template)
-
- noteTemplate: ->
- return '<li>
- <strong class="wall-author">{{author_name}}</strong>
- <span class="wall-text">
- {{text}}
- <span class="wall-file">{{file}}</span>
- </span>
- <abbr class="timeago" title="{{created_at}}">{{created_at}}</abbr>
- </li>'
-
-@Wall = Wall
diff --git a/app/assets/stylesheets/sections/wall.scss b/app/assets/stylesheets/sections/wall.scss
deleted file mode 100644
index 3705afdb87c..00000000000
--- a/app/assets/stylesheets/sections/wall.scss
+++ /dev/null
@@ -1,55 +0,0 @@
-.wall-page {
- .wall-note-form {
- @extend .col-md-12;
-
- margin: 0;
- height: 140px;
- background: #F9F9F9;
- position: fixed;
- bottom: 0px;
- padding: 3px;
- padding-bottom: 25px;
- border: 1px solid #DDD;
- }
-
- .notes {
- margin-bottom: 160px;
- background: #FFE;
- border: 1px solid #EED;
-
- > li {
- @extend .clearfix;
- border-bottom: 1px solid #EED;
- padding: 10px;
- }
-
- .wall-author {
- color: #666;
- float: left;
- font-size: 12px;
- width: 120px;
- text-overflow: ellipsis;
- white-space: nowrap;
- overflow: hidden;
- }
-
- .wall-text {
- border-left: 1px solid #CCC;
- margin-left: 10px;
- padding-left: 10px;
- float: left;
- width: 75%;
- }
-
- .wall-file {
- margin-left: 8px;
- background: #EEE;
- }
-
- abbr {
- float: right;
- color: #AAA;
- border: none;
- }
- }
-}
diff --git a/app/controllers/projects/walls_controller.rb b/app/controllers/projects/walls_controller.rb
deleted file mode 100644
index 834215a1473..00000000000
--- a/app/controllers/projects/walls_controller.rb
+++ /dev/null
@@ -1,20 +0,0 @@
-class Projects::WallsController < Projects::ApplicationController
- before_filter :module_enabled
-
- respond_to :js, :html
-
- def show
- @note = @project.notes.new
-
- respond_to do |format|
- format.html
- end
- end
-
- protected
-
- def module_enabled
- return render_404 unless @project.wall_enabled
- end
-end
-
diff --git a/app/helpers/events_helper.rb b/app/helpers/events_helper.rb
index 929f9a9c381..d3904e16c11 100644
--- a/app/helpers/events_helper.rb
+++ b/app/helpers/events_helper.rb
@@ -109,8 +109,6 @@ module EventsHelper
"#{event.note_target_type} ##{truncate event.note_target_iid}"
end
end
- elsif event.wall_note?
- link_to 'wall', project_wall_path(event.project)
else
content_tag :strong do
"(deleted)"
diff --git a/app/helpers/projects_helper.rb b/app/helpers/projects_helper.rb
index ef0460f8728..ba4c7068e90 100644
--- a/app/helpers/projects_helper.rb
+++ b/app/helpers/projects_helper.rb
@@ -139,7 +139,7 @@ module ProjectsHelper
nav_tabs << :settings
end
- [:issues, :wiki, :wall, :snippets].each do |feature|
+ [:issues, :wiki, :snippets].each do |feature|
nav_tabs << feature if project.send :"#{feature}_enabled"
end
diff --git a/app/helpers/search_helper.rb b/app/helpers/search_helper.rb
index a4471507da8..ecd8d3994d0 100644
--- a/app/helpers/search_helper.rb
+++ b/app/helpers/search_helper.rb
@@ -61,7 +61,6 @@ module SearchHelper
{ label: "#{prefix} - Milestones", url: project_milestones_path(@project) },
{ label: "#{prefix} - Snippets", url: project_snippets_path(@project) },
{ label: "#{prefix} - Team", url: project_team_index_path(@project) },
- { label: "#{prefix} - Wall", url: project_wall_path(@project) },
{ label: "#{prefix} - Wiki", url: project_wikis_path(@project) },
]
else
diff --git a/app/mailers/emails/notes.rb b/app/mailers/emails/notes.rb
index 7848d34ab2b..acc6d03b5e4 100644
--- a/app/mailers/emails/notes.rb
+++ b/app/mailers/emails/notes.rb
@@ -32,14 +32,5 @@ module Emails
cc: recipient(recipient_id),
subject: subject("#{@merge_request.title} (##{@merge_request.iid})"))
end
-
- def note_wall_email(recipient_id, note_id)
- @note = Note.find(note_id)
- @project = @note.project
- @target_url = project_wall_url(@note.project, anchor: "note_#{@note.id}")
- mail(from: sender(@note.author_id),
- cc: recipient(recipient_id),
- subject: subject("Note on wall"))
- end
end
end
diff --git a/app/models/event.rb b/app/models/event.rb
index cf88e9f4afc..b88635ccb59 100644
--- a/app/models/event.rb
+++ b/app/models/event.rb
@@ -286,10 +286,6 @@ class Event < ActiveRecord::Base
end.to_s
end
- def wall_note?
- target.noteable_type.blank?
- end
-
def note_target_type
if target.noteable_type.present?
target.noteable_type.titleize
diff --git a/app/models/note.rb b/app/models/note.rb
index dc8b968c3d2..659cd752071 100644
--- a/app/models/note.rb
+++ b/app/models/note.rb
@@ -251,10 +251,6 @@ class Note < ActiveRecord::Base
for_merge_request? && for_diff_line?
end
- def for_wall?
- noteable_type.blank?
- end
-
# override to return commits, which are not active record
def noteable
if for_commit?
@@ -295,8 +291,6 @@ class Note < ActiveRecord::Base
def noteable_type_name
if noteable_type.present?
noteable_type.downcase
- else
- "wall"
end
end
diff --git a/app/models/project.rb b/app/models/project.rb
index f92cc40642a..e251c777d89 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -31,7 +31,6 @@ class Project < ActiveRecord::Base
default_value_for :archived, false
default_value_for :issues_enabled, true
- default_value_for :wall_enabled, true
default_value_for :merge_requests_enabled, true
default_value_for :wiki_enabled, true
default_value_for :snippets_enabled, true
@@ -39,7 +38,7 @@ class Project < ActiveRecord::Base
ActsAsTaggableOn.strict_case_match = true
attr_accessible :name, :path, :description, :issues_tracker, :label_list,
- :issues_enabled, :wall_enabled, :merge_requests_enabled, :snippets_enabled, :issues_tracker_id,
+ :issues_enabled, :merge_requests_enabled, :snippets_enabled, :issues_tracker_id,
:wiki_enabled, :visibility_level, :import_url, :last_activity_at, as: [:default, :admin]
attr_accessible :namespace_id, :creator_id, as: :admin
@@ -98,7 +97,7 @@ class Project < ActiveRecord::Base
exclusion: { in: Gitlab::Blacklist.path },
format: { with: Gitlab::Regex.path_regex,
message: "only letters, digits & '_' '-' '.' allowed. Letter or digit should be first" }
- validates :issues_enabled, :wall_enabled, :merge_requests_enabled,
+ validates :issues_enabled, :merge_requests_enabled,
:wiki_enabled, inclusion: { in: [true, false] }
validates :issues_tracker_id, length: { maximum: 255 }, allow_blank: true
validates :namespace, presence: true
diff --git a/app/observers/note_observer.rb b/app/observers/note_observer.rb
index 9bb1f0f7b98..bb0b0876eca 100644
--- a/app/observers/note_observer.rb
+++ b/app/observers/note_observer.rb
@@ -3,12 +3,9 @@ class NoteObserver < BaseObserver
notification.new_note(note)
# Skip system notes, like status changes and cross-references.
- # Skip wall notes to prevent spamming of dashboard
- if note.noteable_type.present? && !note.system
+ unless note.system
event_service.leave_note(note, note.author)
- end
- unless note.system?
# Create a cross-reference note if this Note contains GFM that names an
# issue, merge request, or commit.
note.references.each do |mentioned|
diff --git a/app/services/notification_service.rb b/app/services/notification_service.rb
index 3547552df8e..650b6008db8 100644
--- a/app/services/notification_service.rb
+++ b/app/services/notification_service.rb
@@ -106,7 +106,6 @@ class NotificationService
# TODO: split on methods and refactor
#
def new_note(note)
- # ignore wall messages
return true unless note.noteable_type.present?
# ignore gitlab service messages
diff --git a/app/services/projects/create_service.rb b/app/services/projects/create_service.rb
index 7d322f25e44..3d2b9bf4875 100644
--- a/app/services/projects/create_service.rb
+++ b/app/services/projects/create_service.rb
@@ -19,7 +19,6 @@ module Projects
default_opts = {
issues_enabled: default_features.issues,
wiki_enabled: default_features.wiki,
- wall_enabled: default_features.wall,
snippets_enabled: default_features.snippets,
merge_requests_enabled: default_features.merge_requests,
visibility_level: default_features.visibility_level
diff --git a/app/views/layouts/nav/_project.html.haml b/app/views/layouts/nav/_project.html.haml
index d7d330e2a61..dd48ff6ce38 100644
--- a/app/views/layouts/nav/_project.html.haml
+++ b/app/views/layouts/nav/_project.html.haml
@@ -36,10 +36,6 @@
= nav_link(controller: :wikis) do
= link_to 'Wiki', project_wiki_path(@project, :home)
- - if project_nav_tab? :wall
- = nav_link(controller: :walls) do
- = link_to 'Wall', project_wall_path(@project)
-
- if project_nav_tab? :snippets
= nav_link(controller: :snippets) do
= link_to 'Snippets', project_snippets_path(@project)
diff --git a/app/views/notify/note_wall_email.html.haml b/app/views/notify/note_wall_email.html.haml
deleted file mode 100644
index 2fa2f784661..00000000000
--- a/app/views/notify/note_wall_email.html.haml
+++ /dev/null
@@ -1 +0,0 @@
-= render 'note_message'
diff --git a/app/views/notify/note_wall_email.text.erb b/app/views/notify/note_wall_email.text.erb
deleted file mode 100644
index ee0dc3db1db..00000000000
--- a/app/views/notify/note_wall_email.text.erb
+++ /dev/null
@@ -1,9 +0,0 @@
-New message on the project wall <%= @note.project %>
-
-<%= url_for(project_wall_url(@note.project, anchor: "note_#{@note.id}")) %>
-
-
-<%= @note.author_name %>
-
-<%= @note.note %>
-
diff --git a/app/views/projects/edit.html.haml b/app/views/projects/edit.html.haml
index 59dcf3a6ff0..adc7316820d 100644
--- a/app/views/projects/edit.html.haml
+++ b/app/views/projects/edit.html.haml
@@ -74,13 +74,6 @@
%span.descr Pages for project documentation
.form-group
- = f.label :wall_enabled, "Wall", class: 'control-label'
- .col-sm-10
- .checkbox
- = f.check_box :wall_enabled
- %span.descr Simple chat system for broadcasting inside project
-
- .form-group
= f.label :snippets_enabled, "Snippets", class: 'control-label'
.col-sm-10
.checkbox
diff --git a/app/views/projects/walls/show.html.haml b/app/views/projects/walls/show.html.haml
deleted file mode 100644
index 3e3c7c4f8dd..00000000000
--- a/app/views/projects/walls/show.html.haml
+++ /dev/null
@@ -1,23 +0,0 @@
-%div.wall-page
- %ul.notes
-
- - if can? current_user, :write_note, @project
- .note-form-holder
- = form_for [@project, @note], remote: true, html: { multipart: true, id: nil, class: "new_note wall-note-form" }, authenticity_token: true do |f|
- = note_target_fields
- .note_text_and_preview
- = f.text_area :note, size: 255, class: 'note_text js-note-text js-gfm-input turn-on'
- .note-form-actions
- .buttons
- = f.submit 'Add Comment', class: "btn comment-btn btn-grouped js-comment-button"
-
- .note-form-option
- %a.choose-btn.btn.btn-small.js-choose-note-attachment-button
- %i.icon-paper-clip
- %span Choose File ...
- &nbsp;
- %span.file_name.js-attachment-filename File name...
- = f.file_field :attachment, class: "js-note-attachment-input hidden"
-
- .hint.pull-right CTRL + Enter to send message
- .clearfix