Services_Scribd
[ class tree: Services_Scribd ] [ index: Services_Scribd ] [ all elements ]

Source for file User.php

Documentation is available at User.php

  1. <?php
  2. /**
  3.  * Interface for Scribd's "user" API endpoint.
  4.  *
  5.  * PHP version 5.2.0+
  6.  *
  7.  * LICENSE: This source file is subject to the New BSD license that is
  8.  * available through the world-wide-web at the following URI:
  9.  * http://www.opensource.org/licenses/bsd-license.php. If you did not receive
  10.  * a copy of the New BSD License and are unable to obtain it through the web,
  11.  * please send a note to license@php.net so we can mail you a copy immediately.
  12.  *
  13.  * @category  Services
  14.  * @package   Services_Scribd
  15.  * @author    Rich Schumacher <rich.schu@gmail.com>
  16.  * @copyright 2009 Rich Schumacher <rich.schu@gmail.com>
  17.  * @license   http://www.opensource.org/licenses/bsd-license.php New BSD License
  18.  * @version   Release: 0.2.0
  19.  * @link      http://pear.php.net/package/Services_Scribd
  20.  */
  21.  
  22. require_once 'Services/Scribd/Common.php';
  23.  
  24. /**
  25.  * The interface for the "user" API endpoint.  Allows the user to create an
  26.  * account and login to different accounts.
  27.  *
  28.  * @category  Services
  29.  * @package   Services_Scribd
  30.  * @author    Rich Schumacher <rich.schu@gmail.com>
  31.  * @copyright 2009 Rich Schumacher <rich.schu@gmail.com>
  32.  * @license   http://www.opensource.org/licenses/bsd-license.php New BSD License
  33.  * @link      http://www.scribd.com/developers/platform
  34.  */
  35. {
  36.     /**
  37.      * Array of API endpoints that are supported
  38.      *
  39.      * @var array 
  40.      */
  41.     public $validEndpoints = array(
  42.         'getAutoSigninUrl',
  43.         'login',
  44.         'signup'
  45.     );
  46.  
  47.     /**
  48.      * Returns a URL that, when visited, will automatically log a user in and
  49.      * then redirect to the URL provided
  50.      *
  51.      * @param string $redirectUrl The URL to redirect to after logging in
  52.      *
  53.      * @link http://www.scribd.com/developers/platform/api/user_getautosigninurl
  54.      * @return string 
  55.      */
  56.     public function getAutoSigninUrl($redirectUrl '/')
  57.     {
  58.         $this->arguments['next_url'$redirectUrl;
  59.  
  60.         $response $this->call('user.getAutoSigninUrl');
  61.  
  62.         return trim((string) $response->url);
  63.     }
  64.  
  65.     /**
  66.      * Signs in as an existing Scribd user and executes methods as that user
  67.      *
  68.      * @param string $username The username or email address to login with
  69.      * @param string $password Password of the account
  70.      *
  71.      * @link http://www.scribd.com/developers/platform/api/user_login
  72.      * @return SimpleXMLElement 
  73.      */
  74.     public function login($username$password)
  75.     {
  76.         $this->arguments['username'$username;
  77.         $this->arguments['password'$password;
  78.  
  79.         $response $this->call('user.login'HTTP_Request2::METHOD_POST);
  80.  
  81.         unset($response['stat']);
  82.  
  83.         return $response;
  84.     }
  85.  
  86.     /**
  87.      * Creates a new Scribd account
  88.      *
  89.      * @param string $username The username to create
  90.      * @param string $password Password to set
  91.      * @param string $email    Email to use for this account
  92.      * @param string $name     The user's name
  93.      *
  94.      * @link http://www.scribd.com/developers/platform/api/user_signup
  95.      * @return SimpleXMLElement 
  96.      */
  97.     public function signup($username$password$email = null$name = null)
  98.     {
  99.         $this->arguments['username'$username;
  100.         $this->arguments['password'$password;
  101.         $this->arguments['email']    $email;
  102.         $this->arguments['name']     $name;
  103.  
  104.         $response $this->call('user.signup'HTTP_Request2::METHOD_POST);
  105.  
  106.         unset($response['stat']);
  107.  
  108.         return $response;
  109.     }
  110. }
  111.  
  112. ?>

Documentation generated on Sat, 06 Apr 2013 14:30:04 +0000 by phpDocumentor 1.4.3. PEAR Logo Copyright © PHP Group 2004.