110 lines
4.0 KiB
PHP
110 lines
4.0 KiB
PHP
<?php
|
||
error_reporting(E_ALL);
|
||
set_include_path(get_include_path(). PATH_SEPARATOR .'/var/www/user1999310/data/www/mkgtu.ru/learn/inc/Zend/');
|
||
require_once('/var/www/user1999310/data/www/mkgtu.ru/learn/inc/Zend/Loader.php');
|
||
Zend_Loader::loadClass('Zend_Gdata');
|
||
Zend_Loader::loadClass('Zend_Gdata_Query');
|
||
Zend_Loader::loadClass('Zend_Gdata_ClientLogin');
|
||
Zend_Loader::loadClass('Zend_Gdata_Docs');
|
||
Zend_Loader::loadClass('Zend_Gdata_App_IOException');
|
||
|
||
$username='docs.mkgtu';
|
||
$password='1Q2w3e4r5t';
|
||
|
||
if (isset($_GET['upload'])){//загрузка
|
||
$service = Zend_Gdata_Docs::AUTH_SERVICE_NAME;
|
||
$httpClient = Zend_Gdata_ClientLogin::getHttpClient($username, $password, $service);
|
||
$docs = new Zend_Gdata_Docs($httpClient);
|
||
|
||
$googledoc = 'Resume.doc';
|
||
|
||
$out = uploadDocument($docs, $googledoc,'');
|
||
//echo '<pre>'.print_r($out,1).'</pre>';
|
||
}
|
||
|
||
if (isset($_GET['view'])){//просмотр
|
||
$service = Zend_Gdata_Docs::AUTH_SERVICE_NAME;
|
||
$httpClient = Zend_Gdata_ClientLogin::getHttpClient($username,$password,$service);
|
||
$docs = new Zend_Gdata_Docs($httpClient);
|
||
$feed = $docs->getDocumentListFeed();
|
||
foreach ($feed->entries as $entry) {
|
||
$titleid=$entry->title;
|
||
$fileid=$entry->id;
|
||
$cut = substr($fileid, 64);
|
||
echo '<a href="?view&id='.$cut.'">'.$titleid.'</a> '.$entry->id.'<BR>';
|
||
$contentLink = $entry->content->getSrc();
|
||
$fileContents = download($docs, $contentLink, 'html');
|
||
echo 'Contents of document "' . $entry->title . '":<hr>';
|
||
echo '<pre>'.$fileContents.'</pre>';
|
||
}
|
||
|
||
if (isset($_GET['id'])){//просмотр шв
|
||
//echo '<iframe src="http://docs.google.com/viewer?url=http://mysite.asd.com/test.zip&embedded=true" style="margin:0 auto; width:800px; height:800px;" frameborder="0"></iframe>';
|
||
//echo '<iframe src="https://docs.google.com/document/d/'.$_GET['id'].'/view" style="margin:0 auto; width:800px; height:800px;" frameborder="0"></iframe>';
|
||
//echo '<pre>'.print_r($this->getDoc($_GET['id'], 'document'),1).'</pre>';
|
||
|
||
// TODO 1: setup a Zend_Gdata_Docs client in $docs_client
|
||
// TODO 2: fetch a $feed or $entry
|
||
/*
|
||
$contentLink = $feed->entries[0]->content->getSrc();
|
||
$fileContents = download($docs, $contentLink, 'doc');
|
||
echo 'Contents of document "' . $feed->entries[0]->title . '":<hr>';
|
||
echo '<pre>'.print_r($fileContents).'</pre>';
|
||
*/
|
||
}
|
||
/*
|
||
A1iLc-Uiy2nHHM00x_0XjJ_uS3QSWwL4TiIKxGws9ZtNA - Resume
|
||
A1_zGiFD6FX2P4Gx0Z8krP17Bh28zYgbTDk363SnyAmfs - Resume
|
||
A1Dg04E36gIB1-OSopBOtQiggTsPzQ_IGvbyLF6pgYzIY - Resume
|
||
A1Tp5jI1v5xZMYNZgRgyYxV_hLAJsfIiMiHW4NtTEj1Ss - Новый документ
|
||
https://docs.google.com/document/d/1Tp5jI1v5xZMYNZgRgyYxV_hLAJsfIiMiHW4NtTEj1Ss/edit
|
||
*/
|
||
|
||
}
|
||
//ПОЛУЧЕНИЕ ФАЙЛА В ВИДЕ $format - txt, html
|
||
function download($client, $url, $format=null) {
|
||
$sessionToken = $client->getHttpClient()->getAuthSubToken();
|
||
$opts = array(
|
||
'http' => array(
|
||
'method' => 'GET',
|
||
'header' => "GData-Version: 3.0\r\n".
|
||
"Authorization: AuthSub token=\"$sessionToken\"\r\n"
|
||
)
|
||
);
|
||
if ($url != null) {
|
||
$url = $url . "&exportFormat=$format";
|
||
}
|
||
return file_get_contents($url, false, stream_context_create($opts));
|
||
}
|
||
|
||
//загрузка файла в доки
|
||
function uploadDocument($docs, $originalFileName,$temporaryFileLocation) {
|
||
$out = array();
|
||
$fileToUpload = $originalFileName;
|
||
if ($temporaryFileLocation) { $fileToUpload = $temporaryFileLocation; }
|
||
/*//удаление файлов перед загрузкой
|
||
$query = new Zend_Gdata_Docs_Query();
|
||
$query->setTitle($originalFileName);
|
||
$query->setTitleExact("true");
|
||
try {
|
||
$doc = $docs->getDocumentListEntry($query);
|
||
$docExists = true;
|
||
} catch (Exception $e) {
|
||
$docExists = false;
|
||
}
|
||
if ($docExists) {
|
||
//echo 'Удаляю предыдущую версию документа '.$doc->title.'\n';
|
||
$doc->delete();
|
||
}
|
||
*/
|
||
$newDocumentEntry = $docs->uploadFile($fileToUpload, $originalFileName,null, Zend_Gdata_Docs::DOCUMENTS_LIST_FEED_URI);
|
||
$out['title'] = $newDocumentEntry->title;
|
||
|
||
foreach ($newDocumentEntry->link as $link) {
|
||
if ($link->getRel() === 'alternate') {
|
||
$out['link'] = $link->getHref();
|
||
}
|
||
}
|
||
return $out;
|
||
}
|
||
?>
|