Merge branch 'master' into 5110-workbench-full-text-search
[arvados.git] / apps / workbench / app / controllers / collections_controller.rb
index 7260f4f9f8c994fd140e5ab8c8aa2f2cd84edf02..613ed98f88cc22fb83ee65b3870b20605c5ce419 100644 (file)
@@ -3,8 +3,12 @@ require "arvados/keep"
 class CollectionsController < ApplicationController
   include ActionController::Live
 
+  skip_around_filter :require_thread_api_token, if: proc { |ctrl|
+    Rails.configuration.anonymous_user_token and
+    'show' == ctrl.action_name
+  }
   skip_around_filter(:require_thread_api_token,
-                     only: [:show_file, :show_file_links, :show])
+                     only: [:show_file, :show_file_links])
   skip_before_filter(:find_object_by_uuid,
                      only: [:provenance, :show_file, :show_file_links])
   # We depend on show_file to display the user agreement:
@@ -180,7 +184,16 @@ class CollectionsController < ApplicationController
 
   def show
     return super if !@object
+
     @logs = []
+
+    if params["tab_pane"] == "Provenance_graph"
+      @prov_svg = ProvenanceHelper::create_provenance_graph(@object.provenance, "provenance_svg",
+                                                            {:request => request,
+                                                             :direction => :bottom_up,
+                                                             :combine_jobs => :script_only}) rescue nil
+    end
+
     if current_user
       if Keep::Locator.parse params["uuid"]
         @same_pdh = Collection.filter([["portable_data_hash", "=", @object.portable_data_hash]])
@@ -216,12 +229,6 @@ class CollectionsController < ApplicationController
           .results.any?
         @search_sharing = search_scopes
 
-        if params["tab_pane"] == "Provenance_graph"
-          @prov_svg = ProvenanceHelper::create_provenance_graph(@object.provenance, "provenance_svg",
-                                                                {:request => request,
-                                                                  :direction => :bottom_up,
-                                                                  :combine_jobs => :script_only}) rescue nil
-        end
         if params["tab_pane"] == "Used_by"
           @used_by_svg = ProvenanceHelper::create_provenance_graph(@object.used_by, "used_by_svg",
                                                                    {:request => request,