diff --git a/app/policies/application_policy.rb b/app/policies/application_policy.rb
index 640d6e3966daa2f9e12fea5fb509586de3bc78cf..3924bd854db6a0638ce3d4082db9e8d63591c7c4 100644
--- a/app/policies/application_policy.rb
+++ b/app/policies/application_policy.rb
@@ -78,6 +78,10 @@ class ApplicationPolicy
     user.is_admin? || user.is_editor?
   end
 
+  def user_can_update?
+    (owns? && user.is_submitter?) || (owns? && user.is_partner?) || user.is_admin?
+  end
+
   def user_can_curate?
     user.is_curator?
   end
diff --git a/app/policies/learning_object_policy.rb b/app/policies/learning_object_policy.rb
index 29e3943154ac7377f42d4d25aad8909e41d3388a..baa289bffe4c6b1359e661247c6120a22f5c91e5 100644
--- a/app/policies/learning_object_policy.rb
+++ b/app/policies/learning_object_policy.rb
@@ -42,7 +42,7 @@ class LearningObjectPolicy < ApplicationPolicy
   end
 
   def update?
-    record if (owns? && user.is_submitter?) || (owns? && user.is_partner?)
+    record if user_can_update?
   end
 
   def publish?