]> git.mxchange.org Git - quix0rs-gnu-social.git/blobdiff - actions/userauthorization.php
Merge branch '0.9.x' into 1.0.x
[quix0rs-gnu-social.git] / actions / userauthorization.php
index d5b6a69986a7edfdeb61a55b3cefa55f43352856..e896ff96cab27dd3b6d68fb68fa3d796a15fe5bc 100644 (file)
@@ -5,14 +5,14 @@
  * PHP version 5
  *
  * @category Action
- * @package  Laconica
- * @author   Evan Prodromou <evan@controlyourself.ca>
- * @author   Robin Millette <millette@controlyourself.ca>
+ * @package  StatusNet
+ * @author   Evan Prodromou <evan@status.net>
+ * @author   Robin Millette <millette@status.net>
  * @license  http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
- * @link     http://laconi.ca/
+ * @link     http://status.net/
  *
- * Laconica - a distributed open-source microblogging tool
- * Copyright (C) 2008, 2009, Control Yourself, Inc.
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 2008, 2009, StatusNet, Inc.
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU Affero General Public License as published by
@@ -28,9 +28,7 @@
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
 
-if (!defined('LACONICA')) {
-    exit(1);
-}
+if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
 
 require_once INSTALLDIR.'/lib/omb.php';
 require_once INSTALLDIR.'/extlib/libomb/service_provider.php';
@@ -71,7 +69,7 @@ class UserauthorizationAction extends Action
             $profile = $user->getProfile();
             if (!$profile) {
                 common_log_db_error($user, 'SELECT', __FILE__);
-                $this->serverError(_('User without matching profile'));
+                $this->serverError(_('User without matching profile.'));
                 return;
             }
 
@@ -80,7 +78,7 @@ class UserauthorizationAction extends Action
             try {
                 $this->validateOmb();
                 $srv = new OMB_Service_Provider(
-                        profile_to_omb_profile($_GET['omb_listener'], $profile),
+                        profile_to_omb_profile($user->uri, $profile),
                         omb_oauth_datastore());
 
                 $remote_user = $srv->handleUserAuth();
@@ -111,8 +109,8 @@ class UserauthorizationAction extends Action
     {
         $this->element('p', null, _('Please check these details to make sure '.
                                     'that you want to subscribe to this ' .
-                                    'user\'s notices. If you didn\'t just ask ' .
-                                    'to subscribe to someone\'s notices, '.
+                                    'user’s notices. If you didn’t just ask ' .
+                                    'to subscribe to someones notices, '.
                                     'click “Reject”.'));
     }
 
@@ -129,10 +127,10 @@ class UserauthorizationAction extends Action
         $location = $params->getLocation();
         $avatar   = $params->getAvatarURL();
 
-        $this->elementStart('div', array('class' => 'profile'));
         $this->elementStart('div', 'entity_profile vcard');
-        $this->elementStart('a', array('href' => $profile,
-                                            'class' => 'url'));
+        $this->elementStart('dl', 'entity_depiction');
+        $this->element('dt', null, _('Photo'));
+        $this->elementStart('dd');
         if ($avatar) {
             $this->element('img', array('src' => $avatar,
                                         'class' => 'photo avatar',
@@ -140,11 +138,19 @@ class UserauthorizationAction extends Action
                                         'height' => AVATAR_PROFILE_SIZE,
                                         'alt' => $nickname));
         }
+        $this->elementEnd('dd');
+        $this->elementEnd('dl');
+
+        $this->elementStart('dl', 'entity_nickname');
+        $this->element('dt', null, _('Nickname'));
+        $this->elementStart('dd');
         $hasFN = ($fullname !== '') ? 'nickname' : 'fn nickname';
-        $this->elementStart('span', $hasFN);
+        $this->elementStart('a', array('href' => $profile,
+                                       'class' => 'url '.$hasFN));
         $this->raw($nickname);
-        $this->elementEnd('span');
         $this->elementEnd('a');
+        $this->elementEnd('dd');
+        $this->elementEnd('dl');
 
         if (!is_null($fullname)) {
             $this->elementStart('dl', 'entity_fn');
@@ -216,7 +222,6 @@ class UserauthorizationAction extends Action
         $this->elementEnd('li');
         $this->elementEnd('ul');
         $this->elementEnd('div');
-        $this->elementEnd('div');
     }
 
     function sendAuthorization()
@@ -249,7 +254,7 @@ class UserauthorizationAction extends Action
         common_show_header(_('Subscription authorized'));
         $this->element('p', null,
                        _('The subscription has been authorized, but no '.
-                         'callback URL was passed. Check with the site\'s ' .
+                         'callback URL was passed. Check with the sites ' .
                          'instructions for details on how to authorize the ' .
                          'subscription. Your subscription token is:'));
         $this->element('blockquote', 'token', $tok);
@@ -261,7 +266,7 @@ class UserauthorizationAction extends Action
         common_show_header(_('Subscription rejected'));
         $this->element('p', null,
                        _('The subscription has been rejected, but no '.
-                         'callback URL was passed. Check with the site\'s ' .
+                         'callback URL was passed. Check with the sites ' .
                          'instructions for details on how to fully reject ' .
                          'the subscription.'));
         common_show_footer();
@@ -295,16 +300,19 @@ class UserauthorizationAction extends Action
 
         $user = User::staticGet('uri', $listener);
         if (!$user) {
-            throw new Exception("Listener URI '$listener' not found here");
+            throw new Exception(sprintf(_('Listener URI ‘%s’ not found here.'),
+                                        $listener));
         }
-        $cur = common_current_user();
-        if ($cur->id != $user->id) {
-            throw new Exception('Can\'t subscribe for another user!');
+
+        if (strlen($listenee) > 255) {
+            throw new Exception(sprintf(_('Listenee URI ‘%s’ is too long.'),
+                                        $listenee));
         }
 
         $other = User::staticGet('uri', $listenee);
         if ($other) {
-            throw new Exception("Listenee URI '$listenee' is local user");
+            throw new Exception(sprintf(_('Listenee URI ‘%s’ is a local user.'),
+                                        $listenee));
         }
 
         $remote = Remote_profile::staticGet('uri', $listenee);
@@ -318,29 +326,35 @@ class UserauthorizationAction extends Action
         }
 
         if ($profile == common_profile_url($nickname)) {
-            throw new Exception("Profile URL '$profile' is for a local user.");
+            throw new Exception(sprintf(_('Profile URL ‘%s’ is for a local user.'),
+                                        $profile));
+
         }
 
         $license      = $_GET['omb_listenee_license'];
         $site_license = common_config('license', 'url');
         if (!common_compatible_license($license, $site_license)) {
-            throw new Exception("Listenee stream license '$license' is not " .
-                                "compatible with site license '$site_license'.");
+            throw new Exception(sprintf(_('Listenee stream license ‘%1$s’ is not ' .
+                                          'compatible with site license ‘%2$s’.'),
+                                        $license, $site_license));
         }
+
         $avatar = $_GET['omb_listenee_avatar'];
         if ($avatar) {
             if (!common_valid_http_url($avatar) || strlen($avatar) > 255) {
-                throw new Exception("Invalid avatar URL '$avatar'");
+                throw new Exception(sprintf(_('Avatar URL ‘%s’ is not valid.'),
+                                            $avatar));
             }
             $size = @getimagesize($avatar);
             if (!$size) {
-                throw new Exception("Can't read avatar URL '$avatar'.");
+                throw new Exception(sprintf(_('Can’t read avatar URL ‘%s’.'),
+                                            $avatar));
             }
             if (!in_array($size[2], array(IMAGETYPE_GIF, IMAGETYPE_JPEG,
                                           IMAGETYPE_PNG))) {
-                throw new Exception("Wrong image type for '$avatar'");
+                throw new Exception(sprintf(_('Wrong image type for avatar URL '.
+                                              '‘%s’.'), $avatar));
             }
         }
     }
 }
-?>