16267: Merge branch 'master' into 16267-change-arvbox-deps
[arvados.git] / apps / workbench / app / controllers / user_agreements_controller.rb
index cc0d3c819253a8fd68dff9f6a584e941ac60dbad..bdfaa240335922e3b616bf4c10d791f34ded70ac 100644 (file)
@@ -1,6 +1,17 @@
+# Copyright (C) The Arvados Authors. All rights reserved.
+#
+# SPDX-License-Identifier: AGPL-3.0
+
 class UserAgreementsController < ApplicationController
-  skip_before_filter :check_user_agreements
-  skip_before_filter :find_object_by_uuid
+  skip_before_action :check_user_agreements
+  skip_before_action :find_object_by_uuid
+  skip_before_action :check_user_profile
+
+  def index
+    if unsigned_user_agreements.empty?
+      redirect_to(params[:return_to] || :back)
+    end
+  end
 
   def model_class
     Collection
@@ -8,7 +19,7 @@ class UserAgreementsController < ApplicationController
 
   def sign
     params[:checked].each do |checked|
-      if r = checked.match(/^([0-9a-f]+)/)
+      if (r = CollectionsHelper.match_uuid_with_optional_filepath(checked))
         UserAgreement.sign uuid: r[1]
       end
     end