Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
gitlab-ce
Commits
fc1c250d
Commit
fc1c250d
authored
Oct 29, 2012
by
Riyad Preukschas
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Reorder Note methods and add helpers
parent
63dac843
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
58 additions
and
27 deletions
+58
-27
app/models/note.rb
app/models/note.rb
+58
-27
No files found.
app/models/note.rb
View file @
fc1c250d
...
@@ -18,7 +18,6 @@ require 'carrierwave/orm/activerecord'
...
@@ -18,7 +18,6 @@ require 'carrierwave/orm/activerecord'
require
'file_size_validator'
require
'file_size_validator'
class
Note
<
ActiveRecord
::
Base
class
Note
<
ActiveRecord
::
Base
attr_accessible
:note
,
:noteable
,
:noteable_id
,
:noteable_type
,
:project_id
,
attr_accessible
:note
,
:noteable
,
:noteable_id
,
:noteable_type
,
:project_id
,
:attachment
,
:line_code
:attachment
,
:line_code
...
@@ -55,12 +54,58 @@ class Note < ActiveRecord::Base
...
@@ -55,12 +54,58 @@ class Note < ActiveRecord::Base
},
without_protection:
true
)
},
without_protection:
true
)
end
end
def
notify
def
commit_author
@notify
||=
false
@commit_author
||=
project
.
users
.
find_by_email
(
noteable
.
author_email
)
||
project
.
users
.
find_by_name
(
noteable
.
author_name
)
rescue
nil
end
end
def
notify_author
def
diff
@notify_author
||=
false
noteable
.
diffs
[
diff_file_index
]
end
def
diff_file_index
line_code
.
split
(
'_'
)[
0
].
to_i
end
def
diff_file_name
diff
.
b_path
end
def
diff_new_line
line_code
.
split
(
'_'
)[
2
].
to_i
end
def
discussion_id
@discussion_id
||=
[
noteable_type
,
noteable_id
,
line_code
].
join
.
underscore
.
to_sym
end
# Returns true if this is a downvote note,
# otherwise false is returned
def
downvote?
note
.
start_with?
(
'-1'
)
||
note
.
start_with?
(
':-1:'
)
end
def
for_commit?
noteable_type
==
"Commit"
end
def
for_commit_diff_line?
for_commit?
&&
for_diff_line?
end
def
for_diff_line?
line_code
.
present?
end
def
for_merge_request?
noteable_type
==
"MergeRequest"
end
def
for_merge_request_diff_line?
for_merge_request?
&&
for_diff_line?
end
end
# override to return commits, which are not active record
# override to return commits, which are not active record
...
@@ -76,6 +121,14 @@ class Note < ActiveRecord::Base
...
@@ -76,6 +121,14 @@ class Note < ActiveRecord::Base
nil
nil
end
end
def
notify
@notify
||=
false
end
def
notify_author
@notify_author
||=
false
end
# Check if we can notify commit author
# Check if we can notify commit author
# with email about our comment
# with email about our comment
#
#
...
@@ -94,31 +147,9 @@ class Note < ActiveRecord::Base
...
@@ -94,31 +147,9 @@ class Note < ActiveRecord::Base
commit_author
.
email
!=
user
.
email
commit_author
.
email
!=
user
.
email
end
end
def
for_commit?
noteable_type
==
"Commit"
end
def
for_diff_line?
line_code
.
present?
end
def
commit_author
@commit_author
||=
project
.
users
.
find_by_email
(
noteable
.
author_email
)
||
project
.
users
.
find_by_name
(
noteable
.
author_name
)
rescue
nil
end
# Returns true if this is an upvote note,
# Returns true if this is an upvote note,
# otherwise false is returned
# otherwise false is returned
def
upvote?
def
upvote?
note
.
start_with?
(
'+1'
)
||
note
.
start_with?
(
':+1:'
)
note
.
start_with?
(
'+1'
)
||
note
.
start_with?
(
':+1:'
)
end
end
# Returns true if this is a downvote note,
# otherwise false is returned
def
downvote?
note
.
start_with?
(
'-1'
)
||
note
.
start_with?
(
':-1:'
)
end
end
end
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment