]> git.mxchange.org Git - quix0rs-gnu-social.git/commitdiff
Fix for ticket #2168: if we've already flagged a profile from another window, let...
authorBrion Vibber <brion@pobox.com>
Wed, 3 Nov 2010 19:32:11 +0000 (12:32 -0700)
committerBrion Vibber <brion@pobox.com>
Wed, 3 Nov 2010 19:32:11 +0000 (12:32 -0700)
plugins/UserFlag/flagprofile.php

index 283eea40ce157289d811ebc55f5c5071ff0631c7..7096d3748e4cb9fd3cfe2edab43264799d71e6a2 100644 (file)
@@ -60,13 +60,6 @@ class FlagprofileAction extends ProfileFormAction
         assert(!empty($user)); // checked above
         assert(!empty($this->profile)); // checked above
 
-        if (User_flag_profile::exists($this->profile->id,
-                                      $user->id)) {
-            // TRANS: Client error when setting flag that has already been set for a profile.
-            $this->clientError(_m('Flag already exists.'));
-            return false;
-        }
-
         return true;
     }
 
@@ -104,7 +97,13 @@ class FlagprofileAction extends ProfileFormAction
 
         // throws an exception on error
 
-        User_flag_profile::create($user->id, $this->profile->id);
+        if (User_flag_profile::exists($this->profile->id,
+                                      $user->id)) {
+            // We'll return to the profile page (or return the updated AJAX form)
+            // showing the current state, so no harm done.
+        } else {
+            User_flag_profile::create($user->id, $this->profile->id);
+        }
 
         if ($this->boolean('ajax')) {
             $this->ajaxResults();