Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
cs_comments_service
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
cs_comments_service
Commits
2fd29112
Commit
2fd29112
authored
Sep 04, 2012
by
David Ormsbee
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Pull only :tags_array in trending (~4x speed increase)
parent
9b55d7ec
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
4 additions
and
7 deletions
+4
-7
api/search.rb
+4
-7
No files found.
api/search.rb
View file @
2fd29112
...
...
@@ -70,15 +70,12 @@ get "#{APIPREFIX}/search/threads/recent_active" do
query_params
[
"commentable_id"
]
=
params
[
"commentable_id"
]
if
params
[
"commentable_id"
]
comment_threads
=
if
follower_id
User
.
find
(
follower_id
).
subscribed_threads
.
select
do
|
thread
|
thread
.
last_activity_at
>=
from_time
and
\
query_params
.
to_a
.
map
{
|
query
|
thread
[
query
.
first
]
==
query
.
last
}.
all?
end
User
.
find
(
follower_id
).
subscribed_threads
else
CommentThread
.
all
.
where
(
query_params
.
merge
(
:last_activity_at
=>
{:
$gte
=>
from_time
}))
CommentThread
.
all
end
comment_threads
.
to_a
.
sort
{
|
x
,
y
|
y
.
last_activity_at
<=>
x
.
last_activity_at
}[
0
..
4
]
.
map
(
&
:to_hash
).
to_json
comment_threads
.
where
(
query_params
.
merge
(
:last_activity_at
=>
{:
$gte
=>
from_time
})).
order_by
(
:last_activity_at
.
desc
).
limit
(
5
).
to_a
.
map
(
&
:to_hash
).
to_json
end
...
...
@@ -86,7 +83,7 @@ get "#{APIPREFIX}/search/tags/trending" do
query_params
=
{}
query_params
[
"course_id"
]
=
params
[
"course_id"
]
if
params
[
"course_id"
]
query_params
[
"commentable_id"
]
=
params
[
"commentable_id"
]
if
params
[
"commentable_id"
]
CommentThread
.
all
.
where
(
query_params
).
to_a
CommentThread
.
where
(
query_params
).
only
(
:tags_array
).
to_a
.
map
(
&
:tags_array
).
flatten
.
group_by
{
|
x
|
x
}
.
map
{
|
k
,
v
|
[
k
,
v
.
count
]}
.
sort_by
{
|
x
|
-
x
.
last
}[
0
..
4
]
...
...
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