# Skip require_thread_api_token if this is a show action
# for an object uuid that supports anonymous access.
skip_around_action :require_thread_api_token, if: proc { |ctrl|
- Rails.configuration.anonymous_user_token and
+ !Rails.configuration.Users.AnonymousUserToken.empty? and
'show' == ctrl.action_name and
params['uuid'] and
model_class.in?([Collection, Group, Job, PipelineInstance, PipelineTemplate])
@object.link_class == 'name' and
ArvadosBase::resource_class_for_uuid(@object.head_uuid) == Collection
redirect_to collection_path(id: @object.uuid)
- elsif @object.is_a?(Group) and @object.group_class == 'project'
+ elsif @object.is_a?(Group) and (@object.group_class == 'project' or @object.group_class == 'filter')
redirect_to project_path(id: @object.uuid)
elsif @object
redirect_to @object
return self.send(param)
end
end
- redirect_to :back
+ redirect_back(fallback_location: root_path)
end
expose_action :copy_selections_into_project do
end
end
if resource_class == Collection
- dst.manifest_text = Collection.select([:manifest_text]).where(uuid: src.uuid).first.manifest_text
+ dst.manifest_text = Collection.select([:manifest_text]).where(uuid: src.uuid).with_count("none").first.manifest_text
+ # Fixes bug 19144: nullify some fields that are managed by keep-balance.
+ dst.storage_classes_confirmed = []
+ dst.storage_classes_confirmed_at = nil
end
when :move
dst = src
uuids, source_paths = selected_collection_files params
new_coll = Arv::Collection.new
- Collection.where(uuid: uuids.uniq).
+ Collection.where(uuid: uuids.uniq).with_count("none").
select([:uuid, :manifest_text]).each do |coll|
src_coll = Arv::Collection.new(coll.manifest_text)
src_pathlist = source_paths[coll.uuid]
# star / unstar the current project
def star
- links = Link.where(tail_uuid: current_user.uuid,
+ links = Link.where(owner_uuid: current_user.uuid,
head_uuid: @object.uuid,
link_class: 'star')