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: JSONAPI::Serializer.serialize(lists, serializer: Users::ListSerializer, include: %w[supplier users], is_collection: true, meta: {total_pages: lists.total_count, page: lists.current_page}) #, root: :lists end #EMBER def current @list = current_user.active_list show end def table list = List.find(params[:id]) render json: {}, status: :not_found and return unless list.present? @table = list.table render json: JSONAPI::Serializer.serialize(@table, serializer: Users::TableSerializer) 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) render json: JSONAPI::Serializer.serialize(@list, serializer: Users::ListSerializer, include: %w[supplier users]) end end end