Hi, this is a first-timers-only issue. This means we've worked to make it more legible to folks who either haven't contributed to our codebase before, or even folks who haven't contributed to open source before.
If that's you, we're interested in helping you take the first step and can answer questions and help you out as you do. Note that we're especially interested in contributions from people from groups underrepresented in free and open source software!
We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you ๐
If you have contributed before, consider leaving this one for someone new, and looking through our general help wanted issues. Thanks!
Nothing. This issue is meant to welcome you to Open Source :) We are happy to walk you through the process.
[ ] ๐ Claim this issue: Comment below. If someone else has claimed it, ask if they've opened a pull request already and if they're stuck -- maybe you can help them solve a problem or move it along!
[ ] ๐ Update the file app/controllers/tag_controller.rb in the plots2 repository (press the little pen Icon) and edit the line as shown below.
See this page for some help in taking your first steps!
Below is a "diff" showing in red (and a -) which lines to remove, and in green (and a +) which lines to add:
@@ -85,6 +85,9 @@ def show
@node_type = params[:node_type] || default_type
@start = Time.parse(params[:start]) if params[:start]
@end = Time.parse(params[:end]) if params[:end]
+ order_by = 'node_revisions.timestamp DESC'
+ order_by = 'node.views DESC' if params[:order] == 'views'
+ order_by = 'node.cached_likes DESC' if params[:order] == 'likes'
node_type = 'note' if @node_type == 'questions' || @node_type == 'note'
node_type = 'page' if @node_type == 'wiki'
@@ -99,7 +102,7 @@ def show
.references(:term_data, :node_revisions)
.where('term_data.name LIKE (?) OR term_data.parent LIKE (?)', params[:id][0..-2] + '%', params[:id][0..-2] + '%')
.paginate(page: params[:page], per_page: 24)
- .order('node_revisions.timestamp DESC')
+ .order(order_by)
else
@tags = Tag.where(name: params[:id])
@@ -115,14 +118,14 @@ def show
.references(:term_data, :node_revisions)
.where('term_data.name = ? OR term_data.name = ? OR term_data.parent = ?', params[:id], other_tag, params[:id])
.paginate(page: params[:page], per_page: 24)
- .order('node_revisions.timestamp DESC')
+ .order(order_by)
else
nodes = Node.where(status: 1, type: node_type)
.includes(:revision, :tag)
.references(:term_data, :node_revisions)
.where('term_data.name = ? OR term_data.parent = ?', params[:id], params[:id])
.paginate(page: params[:page], per_page: 24)
- .order('node_revisions.timestamp DESC')
+ .order(order_by)
end
end
nodes = nodes.where(created: @[email protected]_i) if @start && @end
[ ] ๐พ Commit your changes
[ ] ๐ Start a Pull Request. There are two ways how you can start a pull request:
If you are familiar with the terminal or would like to learn it, here is a great tutorial on how to send a pull request using the terminal.
You can also edit files directly in your browser and open a pull request from there.
Leave a comment below!
We encourage you to link to this issue by mentioning the issue # in your pull request, so we can see if someone's already started on it. If someone seem stuck, offer them some help! Otherwise, take a look at some other issues you can help with. Thanks!
(This issue was created by First-Timers-Bot.)
This one is for @nwyll!
If you have the code running on your own machine, once this is implemented, you should be able to test it out by going to:
http://localhost:3000/tag/test?order=likes
Once it's finally done and published, it'll appear at:
@jywarren can i work on this issue
Thanks, Jeffery. I will get on this one.
@avsingh you are assigned another fto. #3423 After completing that you can explore various help wanted issues at public lab.
This issue is assigned to @nwyll by Jeff.
We want more people to work at public labs so we generally assign a single fto to a single person.
Thanks
No problem but @SidharthBansal i have send pr to this issue #3423
Just noting that we're still working with @nwyll on this one in https://github.com/publiclab/plots2/pull/3430
Thanks!
I changed the lines and committed. PR already, can you see it? #3419
@jywarren Still open ?
Hi, @nwyll has asked to step back for a bit, but did complete the feature.
At this point, we need a test to verify that this type of sorting actually works; it could be very much like this one:
But adding the order parameter to check that that doesn't break anything?
Thanks, all!
@CoderJolly yes this is now available -- we just need a test to build on top of @nwyll's work!
@jywarren So, can i make a PR now ?
Yes @CoderJolly !
Hi ๐
Is a test still missing? @CoderJolly do you need help with it? Or can I give this a shot as my first issue on this project?
@alonpeer you can work on this if you're interested.
Ok, I'm starting to work on this.
Most helpful comment
Thanks, Jeffery. I will get on this one.