diff --git a/app/controllers/cards/collections_controller.rb b/app/controllers/cards/collections_controller.rb index 31d48b8a5..7a9f0b097 100644 --- a/app/controllers/cards/collections_controller.rb +++ b/app/controllers/cards/collections_controller.rb @@ -1,9 +1,19 @@ class Cards::CollectionsController < ApplicationController - include CollectionScoped + before_action :set_collection, only: %i[ update ] + + def edit + @card = Current.user.accessible_cards.find(params[:card_id]) + @collections = Current.user.collections.ordered_by_recently_accessed + end def update @card = Current.user.accessible_cards.find(params[:card_id]) @card.move_to(@collection) redirect_to @card end + + private + def set_collection + @collection = Current.user.collections.find(params[:collection_id]) + end end diff --git a/app/views/cards/collections/edit.html.erb b/app/views/cards/collections/edit.html.erb new file mode 100644 index 000000000..9a9ef4130 --- /dev/null +++ b/app/views/cards/collections/edit.html.erb @@ -0,0 +1,26 @@ +<%= turbo_frame_tag "collection_picker" do %> + <%= tag.div class: "max-width full-width", data: { + action: "turbo:before-cache@document->dialog#close dialog:show@document->navigable-list#reset keydown->navigable-list#navigate filter:changed->navigable-list#reset", + controller: "filter navigable-list", + dialog_target: "dialog", + navigable_list_focus_on_selection_value: false, + navigable_list_actionable_items_value: true } do %> + Move this card to… + + <%= text_field_tag :search, nil, placeholder: "Filter…", class: "input input--transparent txt-small margin-block-half font-weight-normal", autofocus: true, + type: "search", autocorrect: "off", autocomplete: "off", data: { "1p-ignore": "true", filter_target: "input", action: "input->filter#filter" } %> + +