Как переместить документ Google в папку с помощью Zend GdataPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как переместить документ Google в папку с помощью Zend Gdata

Сообщение Anonymous »

Привет, ребята, мне очень трудно переместить документ из корневой папки в другую папку с помощью zend gdata, вот как я пытаюсь это сделать, но это не работает.

$service = Zend_Gdata_Docs::AUTH_SERVICE_NAME;
$client = Zend_Gdata_ClientLogin::getHttpClient($gUser, $gPass, $service);
$link = "https://docs.google.com/feeds/documents ... EpLOVg2U0E"; // Not real id for privacy purposes
$docs = new Zend_GData_Docs($client);

// Attach a category object of folder to this entry
// I have tried many variations of this including attaching label categories
$cat = new Zend_Gdata_App_Extension_Category('My Folder Name','http://schemas.google.com/docs/2007#folder');

$entry = $docs->getDocumentListEntry($link);
$entry->setCategory(array($cat));

$return = $docs->updateEntry($entry,$entry->getEditLink()->href);


Когда я запускаю это, я получаю сообщение «Нет ошибок», но, похоже, ничего не меняется, и возвращаемые данные не содержат новую категорию.
РЕДАКТИРОВАТЬ:
Хорошо, я понял, что не категория, а ссылка решает, какой «коллекции» (папке) принадлежит ресурс. https://developers.google.com/google-ap ... r_contents говорит, что каждый ресурс имеет родительские ссылки, поэтому я попытался изменить свой код, чтобы установить ссылку вместо установки категории, но это не помогло работаю.

$folder = "https://docs.google.com/feeds/documents ... A0wSFA2WHc";
$rel = "http://schemas.google.com/docs/2007#parent";

$linkObj = new Zend_Gdata_App_Extension_Link($folder,$rel,'application/atom+xml', NULL,'Folder Name');
$links = $entry->getLink();
array_push($links,$linkObj);
$entry->setLink($links);

$return = $docs->updateEntry($entry,$entry->getEditLink()->href);


РЕДАКТИРОВАНИЕ: РЕШЕНО [почти]
ОК Вот как можно переместить/скопировать, своего рода, из одной папки в другую:
Проще, чем предполагалось изначально, но проблема в том, что создается ссылка, а НЕ ход! Теперь оно в обоих местах одновременно....

// Folder you want to move too
$folder = "https://docs.google.com/feeds/folders/p ... der%asdsad";
$data = $docs->insertDocument($entry, $folder); // Entry is the entry you want moved using insert automatically assigns link & category for you...


Подробнее здесь: https://stackoverflow.com/questions/108 ... zend-gdata
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»