public function insertVolume($entry, $location = null) { if ($location == null) { $uri = self::MY_LIBRARY_FEED_URI; } else { $uri = $location; } return parent::insertEntry($entry, $uri, 'Zend_Gdata_Books_VolumeEntry'); }
public function post($param) { $asin = $xml->Items->Item->ASIN; $title = $param['title']; $content = $param['content']; $keyword = $param['keyword']; /* Post to Blogger */ $client = Zend_Gdata_ClientLogin::getHttpClient($param['email'], $param['password'], 'blogger', null, Zend_Gdata_ClientLogin::DEFAULT_SOURCE, null, null, Zend_Gdata_ClientLogin::CLIENTLOGIN_URI, 'GOOGLE'); $gdClient = new Zend_Gdata($client); $query = new Zend_Gdata_Query('http://www.blogger.com/feeds/default/blogs'); $feed = $gdClient->getFeed($query); $uri = 'http://www.blogger.com/feeds/' . $param['blog_id'] . '/posts/default'; $entry = $gdClient->newEntry(); $entry->title = $gdClient->newTitle($title); $entry->content = $gdClient->newContent($content); $entry->content->setType('text'); $createdPost = $gdClient->insertEntry($entry, $uri); $idText = split('-', $createdPost->id->text); $url = $createdPost->link[4]->href; $newPostID = $idText[2]; return $newPostID; }
public function testMediaUpload() { // the standard sevice for Gdata testing is Blogger, due to the strong // match to the standard Gdata/APP protocol. However, Blogger doesn't // currently support media uploads, so we're using Picasa Web Albums // for this test instead $user = constant('TESTS_ZEND_GDATA_CLIENTLOGIN_EMAIL'); $pass = constant('TESTS_ZEND_GDATA_CLIENTLOGIN_PASSWORD'); $this->blog = constant('TESTS_ZEND_GDATA_BLOG_ID'); $service = 'lh2'; $client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service); $gd = new Zend_Gdata($client); // setup the photo content $fs = $gd->newMediaFileSource('Zend/Gdata/_files/testImage.jpg'); $fs->setContentType('image/jpeg'); // create a new picasa album $albumEntry = $gd->newEntry(); $albumEntry->setTitle($gd->newTitle('My New Test Album')); $albumEntry->setCategory(array($gd->newCategory('http://schemas.google.com/photos/2007#album', 'http://schemas.google.com/g/2005#kind'))); $createdAlbumEntry = $gd->insertEntry($albumEntry, 'http://picasaweb.google.com/data/feed/api/user/default'); $this->assertEquals('My New Test Album', $createdAlbumEntry->title->text); $albumUrl = $createdAlbumEntry->getLink('http://schemas.google.com/g/2005#feed')->href; // post the photo to the new album, without any metadata // other than the slug // add a slug header to the media file source $fs->setSlug('Going to the park'); $createdPhotoBinaryOnly = $gd->insertEntry($fs, $albumUrl); $this->assertEquals('Going to the park', $createdPhotoBinaryOnly->title->text); // post the photo to the new album along with the entry // remove slug header from the media file source $fs->setSlug(null); // setup an entry with metadata $mediaEntry = $gd->newMediaEntry(); $mediaEntry->setMediaSource($fs); $mediaEntry->setTitle($gd->newTitle('My New Test Photo')); $mediaEntry->setSummary($gd->newSummary('My New Test Photo Summary')); $mediaEntry->setCategory(array($gd->newCategory('http://schemas.google.com/photos/2007#photo ', 'http://schemas.google.com/g/2005#kind'))); $createdPhotoMultipart = $gd->insertEntry($mediaEntry, $albumUrl); $this->assertEquals('My New Test Photo', $createdPhotoMultipart->title->text); // cleanup and remove the album // first we wait 5 seconds sleep(5); try { $albumEntry->delete(); } catch (Zend_Gdata_App_Exception $e) { $this->fail('Tried to delete the test album, got exception: ' . $e->getMessage()); } }
<?php require_once 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Gdata'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); $username = '******'; $password = '******'; $service = 'blogger'; $client = Zend_Gdata_ClientLogin::getHttpClient($username, $password, $service); $gdata = new Zend_Gdata($client); $entry = $gdata->newEntry(); $category = $gdata->newCategory(); $category->setScheme('http://www.blogger.com/atom/ns#'); $category->setTerm('Test Label'); $entry->setCategory(array($category)); $content = $gdata->newContent(); $content->setText("Hello world"); $entry->setContent($content); $gdata->insertEntry($entry, "http://www.blogger.com/feeds/8273578352962669317/posts/default");
$source_query->maxResults = 99999; $source_query->setParam( 'group', 'http://www.google.com/m8/feeds/groups/' . urlencode($source_user) . '/base/6' ); // "My Contacts" only $source_feed = $source_gdata->getFeed( $source_query ); message( $source_feed->totalResults . ' contacts found.' ); // Add contacts from source account to the destination account message( 'Creating contacts in destination account...' ); foreach ( $source_feed as $entry ) { //if ( 'Test Contact' != $entry->title ) continue; // Tweak the entry slightly $xml = $entry->getXML(); $xml = str_replace( urlencode( $source_user ), urlencode( $dest_user ), $xml ); // Insert the entry into the destination acccount $response = $dest_gdata->insertEntry( $xml, 'http://www.google.com/m8/feeds/contacts/default/full' ); // Make sure we had success if ( empty( $response->id ) ) { message( ' Failed to add "' . $entry->title . '" to the destination account.' ); continue; } // Does the user have a photo? $image_url = false; foreach ( $entry->link as $link ) { // We're only after the photo link if ( 'http://schemas.google.com/contacts/2008/rel#photo' !== $link->rel ) continue;