diff options
| author | jpl | 2016-11-30 18:01:21 +0100 | 
|---|---|---|
| committer | jpl | 2016-11-30 18:02:18 +0100 | 
| commit | f4f479b82e8a3a1c24aef9d0a4cd0bcd61609817 (patch) | |
| tree | 6683ae3222b98a27327615ea2e9cc37cd2ad02d3 /app/controllers/referential_lines_controller.rb | |
| parent | adee9a89a50bad9199e1c3dc4b3b355844439d2e (diff) | |
| download | chouette-core-f4f479b82e8a3a1c24aef9d0a4cd0bcd61609817.tar.bz2 | |
Refs #2015: adding sortable columns on table builder, actually for ref_lines
Diffstat (limited to 'app/controllers/referential_lines_controller.rb')
| -rw-r--r-- | app/controllers/referential_lines_controller.rb | 18 | 
1 files changed, 17 insertions, 1 deletions
| diff --git a/app/controllers/referential_lines_controller.rb b/app/controllers/referential_lines_controller.rb index 04581bdda..efbc856df 100644 --- a/app/controllers/referential_lines_controller.rb +++ b/app/controllers/referential_lines_controller.rb @@ -77,10 +77,26 @@ class ReferentialLinesController < ChouetteController      end      @q = referential.lines.search(params[:q]) -    @lines ||= @q.result(:distinct => true).order(:number).paginate(:page => params[:page]).includes([:network, :company]) + +    if sort_column && sort_direction +      @lines ||= @q.result(:distinct => true).order(sort_column + ' ' + sort_direction).paginate(:page => params[:page]).includes([:network, :company]) +    else +      @lines ||= @q.result(:distinct => true).order(:number).paginate(:page => params[:page]).includes([:network, :company]) +    end +    end    private + +  def sort_column +    # params[:sort] || 'number' +    referential.lines.column_names.include?(params[:sort]) ? params[:sort] : 'number' +  end +  def sort_direction +    # params[:direction] || 'asc' +    %w[asc desc].include?(params[:direction]) ?  params[:direction] : 'asc' +  end +    def check_policy      authorize resource    end | 
