28 lines
1.2 KiB
Ruby
28 lines
1.2 KiB
Ruby
module Users
|
|
class ListsController < Users::ApplicationController
|
|
|
|
def index
|
|
#lists = current_user.lists.include_relation(:supplier, :table)
|
|
lists = List.for_user(current_user, page: params[:page], per_page: params[:per_page].presence || 25)
|
|
#lists.include_relation(:supplier)
|
|
lists.reject!{|l| l.id == params[:exclude_list]} if params[:exclude_list].present?
|
|
lists.reject!{|l| l.id == current_user.active_list_id } if current_user && current_user.active_list_id.present? # see spec Loading lists and switching to the order products view works, lists loading may unlink active list orders
|
|
lists.include_relation(:users, :supplier)
|
|
render json: lists, each_serializer: Users::ListSerializer, meta: {total_pages: lists.total_pages, page: lists.current_page} #, root: :lists
|
|
end
|
|
|
|
#EMBER
|
|
def current
|
|
@list = current_user.active_list
|
|
show
|
|
end
|
|
|
|
def show
|
|
@list ||= List.find(params[:id])
|
|
render json: {}, status: :not_found and return unless @list.present? && Array.wrap(@list.user_ids).include?(current_user.id)
|
|
[@list].include_relation(:users)
|
|
render json: @list, serializer: Users::ListSerializer, include: %w[supplier users]
|
|
end
|
|
end
|
|
end
|