about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEugen Rochko <eugen@zeonfederated.com>2017-09-13 11:04:32 +0200
committerGitHub <noreply@github.com>2017-09-13 11:04:32 +0200
commit56af04dbb4663031c3c654b3f16d323cb64f8c7d (patch)
tree09dc4d82086ccd1a8c4435e254c5e425246b7cdb
parent60944d5dca0f25c668db00c0d84910f1dddc2a12 (diff)
Fix #4918 - Limit pinned toots to 5 (#4923)
-rw-r--r--app/validators/status_pin_validator.rb1
-rw-r--r--config/locales/en.yml1
2 files changed, 2 insertions, 0 deletions
diff --git a/app/validators/status_pin_validator.rb b/app/validators/status_pin_validator.rb
index f557df6af..9760e1138 100644
--- a/app/validators/status_pin_validator.rb
+++ b/app/validators/status_pin_validator.rb
@@ -5,5 +5,6 @@ class StatusPinValidator < ActiveModel::Validator
     pin.errors.add(:status, I18n.t('statuses.pin_errors.reblog')) if pin.status.reblog?
     pin.errors.add(:status, I18n.t('statuses.pin_errors.ownership')) if pin.account_id != pin.status.account_id
     pin.errors.add(:status, I18n.t('statuses.pin_errors.private')) unless %w(public unlisted).include?(pin.status.visibility)
+    pin.errors.add(:status, I18n.t('statuses.pin_errors.limit')) if pin.account.status_pins.count > 4
   end
 end
diff --git a/config/locales/en.yml b/config/locales/en.yml
index e31f883ac..0cd57a64f 100644
--- a/config/locales/en.yml
+++ b/config/locales/en.yml
@@ -448,6 +448,7 @@ en:
     open_in_web: Open in web
     over_character_limit: character limit of %{max} exceeded
     pin_errors:
+      limit: Too many toots pinned
       ownership: Someone else's toot cannot be pinned
       private: Non-public toot cannot be pinned
       reblog: A boost cannot be pinned