コード例 #1
0
ファイル: functions.php プロジェクト: danielheyman/EazySubs
function sub($channel)
{
    $username = $_SESSION['username'];
    $query = "select token from user where username='******' limit 1";
    $result = mysql_query($query);
    $row = mysql_fetch_array($result);
    $token = $row['token'];
    $httpClient = Zend_Gdata_AuthSub::getHttpClient($token);
    $developerKey = 'AI39si5uCFW5FETweIaPnbNJUP88YvpOtSoy7FSUnYnTFVH4liFKzqWTkndATtgiltByN54tPcVjsScyh3S28P-D4PC4n73alg';
    $applicationId = 'EazySubs';
    $clientId = 'EazySubs';
    $yt = new Zend_Gdata_YouTube($httpClient, $applicationId, $clientId, $developerKey);
    // this example assumes that $yt is a fully authenticated service object
    $subscriptionsFeedUrl = "http://gdata.youtube.com/feeds/api/users/default/subscriptions";
    $newSubscription = $yt->newSubscriptionEntry();
    $newSubscription->setUsername(new Zend_Gdata_YouTube_Extension_Username($channel));
    // post
    try {
        $yt->insertEntry($newSubscription, $subscriptionsFeedUrl);
        return true;
    } catch (Exception $e) {
        return false;
    }
}
コード例 #2
0
ファイル: YouTubeOnlineTest.php プロジェクト: netvlies/zf
 public function testAddAndDeleteSubscriptionToQueryV2()
 {
     $developerKey = constant('TESTS_ZEND_GDATA_YOUTUBE_DEVELOPER_KEY');
     $clientId = constant('TESTS_ZEND_GDATA_YOUTUBE_CLIENT_ID');
     $service = Zend_Gdata_YouTube::AUTH_SERVICE_NAME;
     $authenticationURL = 'https://www.google.com/youtube/accounts/ClientLogin';
     $httpClient = Zend_Gdata_ClientLogin::getHttpClient($username = $this->user, $password = $this->pass, $service = $service, $client = null, $source = 'Google-UnitTests-1.0', $loginToken = null, $loginCaptcha = null, $authenticationURL);
     $yt = new Zend_Gdata_YouTube($httpClient, 'Google-UnitTests-1.0', $clientId, $developerKey);
     $yt->setMajorProtocolVersion(2);
     $queryStringToSubscribeTo = 'zend';
     // Test for deletion first in case something went wrong
     // last time the test was run (network, etc...)
     $subscriptionFeed = $yt->getSubscriptionFeed($this->ytAccount);
     $successDeletionUpFront = true;
     $message = null;
     foreach ($subscriptionFeed as $subscriptionEntry) {
         $subscriptionType = null;
         $categories = $subscriptionEntry->getCategory();
         // examine the correct category element since there are multiple
         foreach ($categories as $category) {
             if ($category->getScheme() == 'http://gdata.youtube.com/schemas/2007/' . 'subscriptiontypes.cat') {
                 $subscriptionType = $category->getTerm();
             }
         }
         if ($subscriptionType == 'query') {
             if ($subscriptionEntry->getQueryString() == $queryStringToSubscribeTo) {
                 try {
                     $subscriptionEntry->delete();
                 } catch (Zend_App_Exception $e) {
                     $message = $e->getMessage();
                     $successDeletionUpFront = false;
                 }
             }
         }
     }
     $this->assertTrue($successDeletionUpFront, 'Found existing ' . 'subscription in unit test, could not delete prior to running ' . 'test -- ' . $message);
     // Query
     $newSubscription = $yt->newSubscriptionEntry();
     $newSubscription->category = array($yt->newCategory('query', $this->subscriptionTypeSchema));
     $newSubscription->setQueryString($yt->newQueryString($queryStringToSubscribeTo));
     $postUrl = 'http://gdata.youtube.com/feeds/api/users/default/subscriptions';
     $successPosting = true;
     $message = null;
     $insertedSubscription = null;
     try {
         $insertedSubscription = $yt->insertEntry($newSubscription, $postUrl, 'Zend_Gdata_YouTube_SubscriptionEntry');
     } catch (Zend_App_Exception $e) {
         $message = $e->getMessage();
         $successPosting = false;
     }
     $this->assertTrue($successPosting, $message);
     // Delete it
     $successDeletion = true;
     $message = null;
     try {
         $insertedSubscription->delete();
     } catch (Zend_App_Exception $e) {
         $message = $e->getMessage();
         $successDeletion = false;
     }
     $this->assertTrue($successDeletion, $message);
 }