diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb index daafa4761..74925878c 100644 --- a/app/controllers/projects_controller.rb +++ b/app/controllers/projects_controller.rb @@ -251,6 +251,7 @@ class ProjectsController < ApplicationController def show # This is the "info" view current_organization_switch(@project.organization) + @current_sort = params[:sort].to_s end def notifications diff --git a/app/models/project.rb b/app/models/project.rb index c9b689671..5762b287d 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -107,8 +107,14 @@ class Project < ActiveRecord::Base return (self.user_projects.select { |up| up.user == user }).first.role end - def active_experiments(ordered = 'created_at DESC') - experiments.is_archived(false).order(ordered) + def active_experiments(sort_by = :new) + sort = case sort_by + when 'old' then { created_at: :asc } + when 'atoz' then { name: :asc } + when 'ztoa' then { name: :desc } + else { created_at: :desc } + end + experiments.is_archived(false).order(sort) end def archived_experiments diff --git a/app/views/projects/show.html.erb b/app/views/projects/show.html.erb index 9fee1caef..ba6be23aa 100644 --- a/app/views/projects/show.html.erb +++ b/app/views/projects/show.html.erb @@ -6,9 +6,9 @@