% # expects locals form, object %>
<%
editor_pseuds = User.current_user.pseuds.to_a
editor_selected = (object.current_user_pseuds || object.pseuds) & editor_pseuds
editor_selected << User.current_user.default_pseud if editor_selected.empty?
valid_creatorships = object.creatorships_after_saving
selected = valid_creatorships.map(&:pseud)
invited = valid_creatorships.reject(&:approved?).map(&:pseud) - editor_pseuds
approved = valid_creatorships.select(&:approved?).map(&:pseud) - editor_pseuds
saved = valid_creatorships.reject(&:new_record?).map(&:pseud)
if object.is_a?(Chapter)
approved = (approved + object.work.pseuds - editor_pseuds).uniq
end
%>
<%= form.fields_for :author_attributes do |creator_form| %>
<% if editor_pseuds.size == 1 %>
<%= creator_form.hidden_field :ids, value: editor_pseuds.first.id, multiple: true %>
<% else %>
<%= creator_form.label :ids, ts("Creator/Pseud(s)") %>
<%= creator_form.collection_select :ids, editor_pseuds, :id, :name, { selected: editor_selected.map(&:id) }, { multiple: true } %>
<% end %>
<% if approved.any? %>
<%= ts("Current co-creators") %>
<% end %>
<% if invited.any? %>
<%= ts("Invited co-creators") %>
<% end %>
<%= label_tag "co-authors-options-show", t("works.byline.show_co-creator_options") %>
<%= check_box_tag "co-authors-options-show", "1", object.creatorships.any?(&:ambiguous?), class: "toggle_formfield" %>
<% end %>