示例#1
1
 public static function loginWidget($options, $get_token = 'getAccessToken', $save_token = 'saveAccessToken', $delete_token = 'deleteAccessToken', $render_login_box = 'widgetHTML')
 {
     if (isset($options['logout_link']) && $options['logout_link'] == $_SERVER['REQUEST_URI'] || isset($_GET['eb_logout']) && $_GET['eb_logout'] == "true") {
         // clear this user's access_token -
         Eventbrite::deleteAccessToken();
         // remove our "logout=true" trigger from the querystring-
         header("Location: " . $_SERVER['PHP_SELF']);
         exit;
     }
     // automatically pull the access_code from the querysting?
     // TODO: add a way to disable this:
     if (!isset($options['access_code'])) {
         $options['access_code'] = isset($_REQUEST['code']) ? $_REQUEST['code'] : null;
     }
     // automatically grab errors from the querystring?
     // TODO: add a way to disable this:
     if (!isset($options['error_message'])) {
         $options['error_message'] = isset($_REQUEST['error']) ? $_REQUEST['error'] : null;
     }
     //  Check to see if we have a valid user account
     //  and Proccess any data-related work:
     $response = Eventbrite::OAuthLogin($options, $get_token, $save_token, $delete_token);
     //  package up the data for our view / template:
     $login_params = array();
     if (is_array($response)) {
         if (isset($response['user_email'])) {
             $login_params = array('user_name' => $response['user_name'], 'user_email' => $response['user_email']);
         }
         $login_params['oauth_link'] = Eventbrite::oauthNextStep($options['app_key']);
         if (isset($response['login_error'])) {
             $login_params['login_error'] = $response['login_error'];
         }
         if (isset($options['logout_link'])) {
             $login_params['logout_link'] = $options['logout_link'];
         } else {
             $login_params['logout_link'] = $_SERVER['PHP_SELF'] . '?eb_logout=true';
         }
     }
     // view related work:
     //  render your "template"
     if (is_callable($render_login_box)) {
         return $render_login_box($login_params);
     } elseif (is_callable(array('self', $render_login_box))) {
         return self::$render_login_box($login_params);
     } else {
         //the templating callback was not valid,
         //return the raw data for use with an external template
         return $login_params;
     }
 }
示例#2
-1
 public static function getOauthLink()
 {
     $app = Slim::getInstance();
     return Eventbrite::oauthNextStep($app->config('api_key'));
 }