From 0378bdc42822cac6417ba0dd9f721c30df223e6a Mon Sep 17 00:00:00 2001
From: loze <loze@ilgstudio.com>
Date: Fri, 21 Mar 2025 12:57:03 -0700
Subject: [PATCH 1/2] add permission for voting on own content

---
 src/FieldPermissions.php           | 7 +++++++
 src/Plugin/VotingApiWidgetBase.php | 3 +++
 2 files changed, 10 insertions(+)

diff --git a/src/FieldPermissions.php b/src/FieldPermissions.php
index 4c4a33a..df171f4 100644
--- a/src/FieldPermissions.php
+++ b/src/FieldPermissions.php
@@ -57,6 +57,13 @@ class FieldPermissions implements ContainerInjectionInterface {
               '@field' => $field_name,
             ]),
           ];
+          $perms['vote on own ' . $entity_type . ':' . $bundle . ':' . $field_name] = [
+            'title' => $this->t('Vote on own @type content from bundle @bundle in field @field', [
+              '@type' => $entity_type,
+              '@bundle' => $bundle,
+              '@field' => $field_name,
+            ]),
+          ];
           $perms['edit own vote on ' . $entity_type . ':' . $bundle . ':' . $field_name] = [
             'title' => $this->t('Edit vote on type @type from bundle @bundle in field @field', [
               '@type' => $entity_type,
diff --git a/src/Plugin/VotingApiWidgetBase.php b/src/Plugin/VotingApiWidgetBase.php
index ad8af51..837ede3 100644
--- a/src/Plugin/VotingApiWidgetBase.php
+++ b/src/Plugin/VotingApiWidgetBase.php
@@ -179,6 +179,9 @@ abstract class VotingApiWidgetBase extends PluginBase implements VotingApiWidget
     if (!$vote->isNew()) {
       $perm = 'edit own vote on ' . $vote->getVotedEntityType() . ':' . $entity->bundle() . ':' . $vote->field_name->value;
     }
+    if($account->id() && $entity->getOwnerId() == $account->id()){
+      $perm = 'vote on own ' . $vote->getVotedEntityType() . ':' . $entity->bundle() . ':' . $vote->field_name->value;
+    }
     return $account->hasPermission($perm);
   }
 
-- 
GitLab


From bca654e628ce956a7fd6340052e0fcdbdaad805f Mon Sep 17 00:00:00 2001
From: loze <loze@ilgstudio.com>
Date: Fri, 21 Mar 2025 14:13:29 -0700
Subject: [PATCH 2/2] phpcs

---
 src/Plugin/VotingApiWidgetBase.php | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/Plugin/VotingApiWidgetBase.php b/src/Plugin/VotingApiWidgetBase.php
index 837ede3..56a3bea 100644
--- a/src/Plugin/VotingApiWidgetBase.php
+++ b/src/Plugin/VotingApiWidgetBase.php
@@ -179,7 +179,7 @@ abstract class VotingApiWidgetBase extends PluginBase implements VotingApiWidget
     if (!$vote->isNew()) {
       $perm = 'edit own vote on ' . $vote->getVotedEntityType() . ':' . $entity->bundle() . ':' . $vote->field_name->value;
     }
-    if($account->id() && $entity->getOwnerId() == $account->id()){
+    if ($account->id() && $entity->getOwnerId() == $account->id()) {
       $perm = 'vote on own ' . $vote->getVotedEntityType() . ':' . $entity->bundle() . ':' . $vote->field_name->value;
     }
     return $account->hasPermission($perm);
-- 
GitLab