]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - actions/finishremotesubscribe.php
Profile block base style
[quix0rs-gnu-social.git] / actions / finishremotesubscribe.php
index 80c259c3d71f0d4963840db21ae2436cc37c9ed5..df5fe647601c7b37e09ce2337167fb064b2b75e1 100644 (file)
@@ -41,8 +41,7 @@ class FinishremotesubscribeAction extends Action {
 
                common_debug('stored request: '.print_r($omb,true), __FILE__);
 
-
-               commom_remove_magic_from_request();
+               common_remove_magic_from_request();
                $req = OAuthRequest::from_request();
 
                $token = $req->get_parameter('oauth_token');
@@ -80,6 +79,11 @@ class FinishremotesubscribeAction extends Action {
                        return;
                }
 
+               if ($profile_url == common_local_url('showstream', array('nickname' => $nickname))) {
+                       common_user_error(_('You can use the local subscription!'));
+                   return;
+               }
+
                common_debug('listenee: "'.$omb['listenee'].'"', __FILE__);
 
                $user = User::staticGet('nickname', $omb['listenee']);
@@ -89,6 +93,13 @@ class FinishremotesubscribeAction extends Action {
                        return;
                }
 
+               $other = User::staticGet('uri', $omb['listener']);
+
+               if ($other) {
+                       common_user_error(_('You can use the local subscription!'));
+                       return;
+               }
+
                $fullname = $req->get_parameter('omb_listener_fullname');
                $homepage = $req->get_parameter('omb_listener_homepage');
                $bio = $req->get_parameter('omb_listener_bio');
@@ -171,6 +182,11 @@ class FinishremotesubscribeAction extends Action {
                        }
                }
 
+        if ($user->hasBlocked($remote->id)) {
+            $this->client_error(_('That user has blocked you from subscribing.'));
+            return;
+        }
+
                $sub = new Subscription();
                $sub->subscriber = $remote->id;
                $sub->subscribed = $user->id;
@@ -184,9 +200,9 @@ class FinishremotesubscribeAction extends Action {
                }
 
                # Notify user, if necessary
-               
+
                mail_subscribe_notify_profile($user, $profile);
-               
+
                # Clear the data
                unset($_SESSION['oauth_authorization_request']);
 
@@ -238,7 +254,8 @@ class FinishremotesubscribeAction extends Action {
 
                $fetcher = Auth_Yadis_Yadis::getHTTPFetcher();
                $result = $fetcher->post($req->get_normalized_http_url(),
-                                                                $req->to_postdata());
+                                                                $req->to_postdata(),
+                                 array('User-Agent' => 'Laconica/' . LACONICA_VERSION));
 
                common_debug('got result: "'.print_r($result,TRUE).'"', __FILE__);