public function gdata_insert_row() { ProjectConfiguration::registerZend(); Zend_Loader::loadClass('Zend_Gdata_AuthSub'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); Zend_Loader::loadClass('Zend_Gdata_Spreadsheets'); Zend_Loader::loadClass('Zend_Gdata_Docs'); $username = "******"; $password = "******"; //Chave do arquivo $key = "0Ak_oCZQf3sTidEJnZGQ4MHdhS0R1NUlSeG1ORkpnalE"; //Carregando o serviço do arquivo $service = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME; $client = Zend_Gdata_ClientLogin::getHttpClient($username, $password, $service); $spreadSheetService = new Zend_Gdata_Spreadsheets($client); //Pegando as planilhas do arquivo $query = new Zend_Gdata_Spreadsheets_DocumentQuery(); $query->setSpreadsheetKey($key); $feed = $spreadSheetService->getWorksheetFeed($query); //Escolhendo a planilha correta foreach ($feed->entries as $entry) { if ($entry->getTitle() == 'Disponiveis') { $worksheetId = basename($entry->getId()); } } //Configura variaveis da nova linha na planilha $assoc = $this->getAssociado(); $matricula = $this->isTitular() ? $assoc->getMatricula() : $assoc->getTitular()->getMatricula(); $dependenteId = $this->isDependente() ? $assoc->getId() : '0'; //Monta array para o serviço do arquivo $rowData = array("data" => $this->getDateTimeObject('created_at')->format('Y-m-d'), "matricula" => $matricula, "nome" => $assoc->getNome(), "dependenteid" => $dependenteId, "encaminhaid" => $this->getId()); //Insere na Planilha $insertedListEntry = $spreadSheetService->insertRow($rowData, $key, $worksheetId); }
public function postInsert($values) { set_time_limit(0); error_reporting(E_ALL); ini_set('display_errors', '1'); $clientLibraryPath = sfConfig::get('sf_lib_dir') . '/vendor/ZendGdata-1.11.11/library'; $oldPath = set_include_path($clientLibraryPath); // load Zend Gdata libraries require_once sfConfig::get('sf_lib_dir') . '/vendor/ZendGdata-1.11.11/library/Zend/Loader.php'; Zend_Loader::loadClass('Zend_Gdata_Spreadsheets'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); // set credentials for ClientLogin authentication $user = "******"; $pass = "******"; try { // connect to API $service = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME; $client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service); $service = new Zend_Gdata_Spreadsheets($client); // get spreadsheet entry $ssEntry = $service->getSpreadsheetEntry('https://spreadsheets.google.com/feeds/spreadsheets/' . $this->getSpreadsheetId()); // get worksheet feed for this spreadsheet $wsFeed = $service->getWorksheetFeed($ssEntry); // create new entry $wsEntry = new Zend_Gdata_Spreadsheets_WorksheetEntry(); $title = new Zend_Gdata_App_Extension_Title($this->getQuestion()); $wsEntry->setTitle($title); $row = new Zend_Gdata_Spreadsheets_Extension_RowCount('10'); $wsEntry->setRowCount($row); $col = new Zend_Gdata_Spreadsheets_Extension_ColCount('3'); $wsEntry->setColumnCount($col); // insert entry $entryResult = $service->insertEntry($wsEntry, $wsFeed->getLink('self')->getHref()); $wsid = end(explode("/", $entryResult->id)); echo 'The ID of the new worksheet entry is: ' . $wsid; $this->worksheet_id = $wsid; $this->save(); //die('ok'); } catch (Exception $e) { die('ERROR: ' . $e->getMessage()); } }
public function testCustomElementsCollected() { $rowData = array(); $rowData['a1'] = 'new'; $rowData['b1'] = 'row'; $rowData['c1'] = 'data'; $rowData['d1'] = 'here'; $entry = $this->gdata->insertRow($rowData, $this->sprKey); $this->assertEquals(4, count($entry->custom)); $this->assertEquals(4, count($entry->customByName)); $this->assertEquals('new', $entry->custom[0]->getText()); $this->assertEquals('row', $entry->custom[1]->getText()); $this->assertEquals('data', $entry->custom[2]->getText()); $this->assertEquals('here', $entry->custom[3]->getText()); $this->assertEquals('new', $entry->customByName['a1']->getText()); $this->assertEquals('row', $entry->customByName['b1']->getText()); $this->assertEquals('data', $entry->customByName['c1']->getText()); $this->assertEquals('here', $entry->customByName['d1']->getText()); $ssTest = new Zend_Gdata_Spreadsheets($entry->getHttpClient()); $ssTest->delete($entry); }
function getSpreadsheetId() { try { // connect to API $httpClient = $accessToken->getHttpClient($oauthOptions); $client = new Zend_Gdata_Docs($httpClient, "leopizzo991"); ///$token = new Zend_Oauth_Token_Access(); $service = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME; //$client = Zend_Gdata_ClientLogin::getHttpClient("leopizzodb", "l30p1z04d", $service); $service = new Zend_Gdata_Spreadsheets($client); // get list of available spreadsheets $feed = $service->getSpreadsheetFeed(); } catch (Exception $e) { die('ERROR: ' . $e->getMessage()); } foreach ($feed->entries as $entry) { $spreadsheetURL = $entry->id; } $spreadsheetKey = basename($spreadsheetURL); $query = new Zend_Gdata_Spreadsheets_DocumentQuery(); $query->setSpreadsheetKey($spreadsheetKey); $feed = $service->getWorksheetFeed($query); //echo "Spreadsheet Key: <strong>$spreadsheetKey</strong> <br>"; foreach ($feed as $entry) { $sName = $entry->title->text; echo "ID of sheet {$sName} is: <strong>" . basename($entry->id) . "</strong><br>"; } }
<?php require_once 'php/config.php'; set_include_path("gdata/library"); require_once 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Gdata'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); Zend_Loader::loadClass('Zend_Gdata_Spreadsheets'); Zend_Loader::loadClass('Zend_Gdata_App_AuthException'); Zend_Loader::loadClass('Zend_Http_Client'); try { $client = Zend_Gdata_ClientLogin::getHttpClient($email, $password, Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME); } catch (Zend_Gdata_App_AuthException $ae) { exit("Error Connecting"); } $spreadsheetService = new Zend_Gdata_Spreadsheets($client); $post_data = file_get_contents("php://input"); $post_data = json_decode($post_data, true); $defaults = array('email' => 'none provided', 'date' => date('j F Y h:i:s A')); $bug = array_merge($defaults, $post_data); $insertedListEntry = $spreadsheetService->insertRow($bug, $spreadsheetKey, $worksheetId); echo json_encode($bug);
function check_ipn() { global $wpdb, $purchase_log, $wpsc_cart; $wpcb_atos = get_option('wpcb_atos'); $wpcb_general = get_option('wpcb_general'); $wpcb_dev = get_option('wpcb_dev'); $purch_log_email = get_option('purch_log_email'); if (!$purch_log_email) { $purch_log_email = get_bloginfo('admin_email'); } // Automatic Response ATOS : if ($_GET['ipn'] == 'atos') { if (array_key_exists('mode_demo', $wpcb_dev) && $wpcb_dev['mode_demo']) { // Ce Kit de demo a du vous etre envoyé par la banque $pathfile = dirname(dirname(dirname(dirname(dirname(__FILE__))))) . "/cgi-bin/demo/pathfile"; $path_bin_response = dirname(dirname(dirname(dirname(dirname(__FILE__))))) . "/cgi-bin/demo/response"; $logfile = dirname(dirname(dirname(dirname(dirname(__FILE__))))) . "/cgi-bin/demo/logfile.txt"; } else { $pathfile = $wpcb_atos['pathfile']; $path_bin_response = $wpcb_atos['path_bin_response']; $logfile = $wpcb_atos['logfile']; } // Initialisation du chemin du fichier de log : if (isset($_POST['DATA'])) { $data = escapeshellcmd($_POST['DATA']); $message = "message={$data}"; $pathfile = "pathfile=" . $pathfile; if (isset($_POST['sandbox'])) { $result = $_POST['sandbox']; } else { $result = exec("{$path_bin_response} {$pathfile} {$message}"); } $tableau = explode("!", $result); $response = array('code' => $tableau[1], 'error' => $tableau[2], 'merchantid' => $tableau[3], 'merchantcountry' => $tableau[4], 'amount' => $tableau[5], 'transactionid' => $tableau[6], 'paymentmeans' => $tableau[7], 'transmissiondate' => $tableau[8], 'paymenttime' => $tableau[9], 'paymentdate' => $tableau[10], 'responsecode' => $tableau[11], 'paymentcertificate' => $tableau[12], 'authorisationid' => $tableau[13], 'currencycode' => $tableau[14], 'cardnumber' => $tableau[15], 'cvvflag' => $tableau[16], 'cvvresponsecode' => $tableau[17], 'bankresponsecode' => $tableau[18], 'complementarycode' => $tableau[19], 'complementaryinfo' => $tableau[20], 'returncontext' => $tableau[21], 'caddie' => $tableau[22], 'receiptcomplement' => $tableau[23], 'merchantlanguage' => $tableau[24], 'language' => $tableau[25], 'customerid' => $tableau[26], 'orderid' => $tableau[27], 'customeremail' => $tableau[28], 'customeripaddress' => $tableau[29], 'captureday' => $tableau[30], 'capturemode' => $tableau[31], 'data' => $tableau[32]); //Session id used by wp ecommerce : $sessionid = $response['orderid']; // A venir : Ajout dans un google spreadsheet qui a toutes les entêtes précédentes (requis Zend) // A coler dans la page admin pour tester if (WP_ZEND_FRAMEWORK) { $GoogleConnection = true; $SpreadSheetConnection = true; try { $client = Zend_Gdata_ClientLogin::getHttpClient($wpcb_general['googleemail'], $wpcb_general['googlepassword']); } catch (Zend_Gdata_App_AuthException $ae) { echo $ae->exception(); $GoogleConnection = false; } if ($GoogleConnection) { // Test $service = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME; $client = Zend_Gdata_ClientLogin::getHttpClient($wpcb_general['googleemail'], $wpcb_general['googlepassword'], $service); // On va chercher le numéro de la feuille : $query_worksheet = new Zend_Gdata_Spreadsheets_DocumentQuery(); // todo pour pas de client ici ? $query_worksheet->setSpreadsheetKey($wpcb_general['spreadsheetKey']); $spreadsheetService = new Zend_Gdata_Spreadsheets($client); try { $feed = $spreadsheetService->getWorksheetFeed($query_worksheet); } catch (Zend_Gdata_App_HttpException $ae) { echo $ae->exception(); $SpreadSheetConnection = false; } if ($SpreadSheetConnection) { // Tout bon on ajoute : foreach ($feed->entries as $entry) { if ($entry->title->text == 'CB') { $worksheetId_CB = basename($entry->id); } elseif ($entry->title->text == 'Paypal') { $worksheetId_Paypal = basename($entry->id); } } $spreadsheetService = new Zend_Gdata_Spreadsheets($client); // Insert row in google spreadsheet : $insertedListEntry = $spreadsheetService->insertRow($response, $wpcb_general['spreadsheetKey'], $worksheetId_CB); } else { wp_mail($purch_log_email, 'Email envoyé depuis le auto_response', 'Mauvais Numero de Spreadsheet dans les options du plugin wpcb'); } } else { if (WP_DEBUG) { wp_mail($purch_log_email, 'Email envoyé depuis le auto_response', 'Mauvais login/mot de pass google dans les options du plugin wpcb'); } } } else { wp_mail($purch_log_email, 'Email envoyé depuis le auto_response', 'Installer Zend pour ajouter automatiquement les ventes à google drive !'); } // analyse du code retour if (isset($_POST['sandbox'])) { $message = "-----------SANDBOX-------------------------\n"; foreach ($response as $k => $v) { $message .= $k . " = " . $v . "\n"; } $message .= "-------------------------------------------\n"; if ($logfile) { $fp = fopen($logfile, "a"); fwrite($fp, $message); fclose($fp); } echo $message; wp_mail($purch_log_email, 'Email pour vous dire qu\'un paiement SANDBOX est arrivé !', $message); } else { //Vrai achat ! if ($response['code'] == "" && $response['error'] == "") { $message = "erreur appel response\n executable response non trouve {$path_bin_response}\n Session Id : {$sessionid}"; if ($logfile) { $fp = fopen($logfile, "a"); // Ouverture du fichier de log en append fwrite($fp, $message); fclose($fp); } if (WP_DEBUG) { wp_mail($purch_log_email, 'Email envoyé depuis le auto_response car il y a une erreur avec un paiement Atos', $message); } $wpdb->query("UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET `processed`= '5' WHERE `sessionid`=" . $sessionid); $wpsc_cart->empty_cart(); } elseif ($response['code'] != 0) { $message = " API call error.\n Error message : {$error}\n Session Id : {$sessionid}"; if ($logfile) { // Ouverture du fichier de log en append $fp = fopen($logfile, "a"); fwrite($fp, $message); fclose($fp); } if (WP_DEBUG) { wp_mail($purch_log_email, 'Email envoyé depuis le auto_response car il y a une erreur avec un paiement Atos', $message); } $wpdb->query("UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET `processed`= '5' WHERE `sessionid`=" . $sessionid); $wpsc_cart->empty_cart(); } else { // Ok, Sauvegarde dans la base de donnée du shop. if ($response_code == 00) { $message = "-----------SALES----------------------------\n"; foreach ($response as $k => $v) { $message .= $k . " = " . $v . "\n"; } $message .= "-------------------------------------------\n"; if ($logfile) { $fp = fopen($logfile, "a"); fwrite($fp, $message); fclose($fp); } if (WP_DEBUG) { wp_mail($purch_log_email, 'Email pour vous dire qu\'un paiement est arrivé !', $message); } $wpdb->query("UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET `processed`= '3' WHERE `sessionid`=" . $sessionid); $purchase_log = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `sessionid`= " . $sessionid . " LIMIT 1", ARRAY_A); // Ne pas enlever car global ! $wpsc_cart->empty_cart(); // Peut-être faut-il ici decrease stock ??? // redirect -> transaction_results($sessionid, false); // false -> no echo ! // The cart is emptied in this function a condition d'avoir la global $wpsc_cart ! } } } // Fin du vrai achat } else { if (WP_DEBUG) { wp_mail($purch_log_email, 'Qqn a accéder à cette page sans utiliser le module de CB', 'Rien de grave, c\'est peut-etre un robot google !'); } } } elseif ($_GET['ipn'] == 'systempaycyberplus') { $message = ''; foreach ($_POST as $key => $value) { $message .= $key . '->' . $value . "\n"; } mail($purch_log_email, 'ipn systempay cyberplus', $message); $wpcb_systempaycyberplus = get_option('wpcb_systempaycyberplus'); $control = Check_Signature(uncharm($_POST), $wpcb_systempaycyberplus['certificat']); if ($control == 'true') { $sessionid = $_POST['vads_order_id']; if ($_POST['vads_result'] == "00") { switch ($_POST['vads_auth_mode']) { case "FULL": $wpdb->query("UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET `processed`= '3' WHERE `sessionid`=" . $sessionid); $purchase_log = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `sessionid`= " . $sessionid . " LIMIT 1", ARRAY_A); // Ne pas enlever car global ! $wpsc_cart->empty_cart(); // Peut-être faut-il ici decrease stock ??? // redirect -> transaction_results($sessionid, false); break; case "MARK": break; } } else { //failed $wpdb->query("UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET `processed`= '5' WHERE `sessionid`=" . $sessionid); $wpsc_cart->empty_cart(); //http://matale.fr/?cbListener=systempay_cyberplus&mode=test } } else { mail($purch_log_email, 'ipn systempay cyberplus signature non valide', $message); } if ($transauthorised == false) { } } elseif ($_GET['ipn'] == 'paypal') { $wpcb_paypal = get_option('wpcb_paypal'); // Initialisation du chemin du fichier de log : error_reporting(E_ALL ^ E_NOTICE); $header = ""; $emailtext = ""; // Read the post from PayPal and add 'cmd' $req = 'cmd=_notify-validate'; if (function_exists('get_magic_quotes_gpc')) { $get_magic_quotes_exits = true; } foreach ($_POST as $key => $value) { // Handle escape characters, which depends on setting of magic quotes if ($get_magic_quotes_exists == true && get_magic_quotes_gpc() == 1) { $value = urlencode(stripslashes($value)); } else { $value = urlencode($value); } $req .= "&{$key}={$value}"; } // Post back to PayPal to validate $header .= "POST /cgi-bin/webscr HTTP/1.0\r\n"; $header .= "Content-Type: application/x-www-form-urlencoded\r\n"; $header .= "Content-Length: " . strlen($req) . "\r\n\r\n"; if ($wpcb_paypal['sandbox_paypal']) { $fp = fsockopen('ssl://sandbox.paypal.com', 443, $errno, $errstr, 30); } else { $fp = fsockopen('ssl://www.paypal.com', 443, $errno, $errstr, 30); } // Process validation from PayPal if (!$fp) { // HTTP ERROR } else { // NO HTTP ERROR fputs($fp, $header . $req); while (!feof($fp)) { $res = fgets($fp, 1024); if (strcmp($res, "VERIFIED") == 0) { if ($_POST['payment_status'] == 'Completed') { if (WP_DEBUG) { wp_mail($purch_log_email, "IPN Completed Payement", $req); } $sessionid = $_POST['item_number']; $wpdb->query("UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET `processed`= '3' WHERE `sessionid`=" . $sessionid); $purchase_log = $wpdb->get_row("SELECT * FROM `" . WPSC_TABLE_PURCHASE_LOGS . "` WHERE `sessionid`= " . $sessionid . " LIMIT 1", ARRAY_A); transaction_results($sessionid, false); // false -> no echo ! } //End if completed } elseif (strcmp($res, "INVALID") == 0) { // If 'INVALID', send an email. TODO: Log for manual investigation. if (WP_DEBUG) { wp_mail($purch_log_email, "Live-INVALID IPN", $req); } $wpdb->query("UPDATE `" . WPSC_TABLE_PURCHASE_LOGS . "` SET `processed`= '5' WHERE `sessionid`=" . $sessionid); } } fclose($fp); } } // fin du ipn=paypal }
logout($APP_URL); break; case 'request_token': $_SESSION['REQUEST_TOKEN'] = serialize($consumer->fetchRequestToken(implode(' ', $scopes), $APP_URL . '?action=access_token')); $consumer->authorizeRequestToken(); break; case 'access_token': $_SESSION['ACCESS_TOKEN'] = serialize($consumer->fetchAccessToken()); header('Location: ' . $APP_URL); break; default: if (isset($_SESSION['ACCESS_TOKEN'])) { $accessToken = unserialize($_SESSION['ACCESS_TOKEN']); $httpClient = $accessToken->getHttpClient($consumer->getOauthOptions()); $docsService = new Zend_Gdata_Docs($httpClient, $APP_NAME); $spreadsheetsService = new Zend_Gdata_Spreadsheets($httpClient, $APP_NAME); // Retrieve user's list of Google Docs and spreadsheet list. $docsFeed = $docsService->getDocumentListFeed(); $spreadsheetFeed = $spreadsheetsService->getSpreadsheetFeed('http://spreadsheets.google.com/feeds/spreadsheets/private/full?max-results=100'); renderHTML($accessToken, array($docsFeed, $spreadsheetFeed)); } else { renderHTML(); } } /** * Returns a the base URL of the current running web app. * * @return string */ function getAppURL() {
// front end options $frontendOptions = array('lifetime' => NULL); // backend options $backendOptions = array('cache_dir' => $cache_dir); @mkdir($cache_dir, 0700, true); // make cache object $cache = Zend_Cache::factory('Output', 'File', $frontendOptions, $backendOptions); if (!$cache->start($post_col)) { // load Zend Gdata libraries Zend_Loader::loadClass('Zend_Gdata_Spreadsheets'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); try { // connect to API $service = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME; $client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service); $service = new Zend_Gdata_Spreadsheets($client); // define worksheet query // get list feed for query $query = new Zend_Gdata_Spreadsheets_ListQuery(); $query->setSpreadsheetKey($spreadhsheet_key); $query->setWorksheetId($people_wksht); } catch (Exception $e) { die('ERROR: ' . $e->getMessage()); } ?> <?php function labelBOD($entry) { if ($entry->getCustomByName('bodindustryprivatesector') == 'Y' || $entry->getCustomByName('bodacademicresearcheducationsector') == 'Y' || $entry->getCustomByName('bodpublicagenciesnonprofitothersector') == 'Y' || $entry->getCustomByName('bodatlarge') == 'Y' || $entry->getCustomByName('bodpublicseat') == 'Y' || $entry->getCustomByName('bodaffiliateseat') == 'Y' || $entry->getCustomByName('bodsustainingseat') == 'Y') { return ' (B)';
// http://framework.zend.com/downloads/latest // http://www.jazzerup.com/blog/google-spreadsheets-api-php-zend // http://stackoverflow.com/questions/7455239/error-inserting-row-in-google-spreadsheet-using-zend-gdata // Include the loader and Google API classes for spreadsheets // Install Zend Framework from above url, add to php.ini include path require_once 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Gdata'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); Zend_Loader::loadClass('Zend_Gdata_Spreadsheets'); Zend_Loader::loadClass('Zend_Http_Client'); // Set your Google Docs credentials here $user = '******'; $pass = '******'; $service = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME; $client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service); $spreadsheetService = new Zend_Gdata_Spreadsheets($client); $feed = $spreadsheetService->getSpreadsheetFeed(); // This is not the url displayed when logged in to Goolge Docs, because // that would just make sense. Oh, no - instead it has to be abstracted // away in the object. This is the feed url. $sheetName = "Sheet1"; foreach ($feed->entries as $entry) { if ($entry->title->text == $sheetName) { $spreadsheetURL = $entry->id; echo "SpreadsheetURL is: {$spreadsheetURL} <br /> \n"; break; } } $spreadsheetKey = basename($spreadsheetURL); $query = new Zend_Gdata_Spreadsheets_DocumentQuery(); $query->setSpreadsheetKey($spreadsheetKey);
function gdata_import($attrib) { if ($attrib["key"] == "" || $attrib["worksheet"] == "" || $attrib["user"] == "" || $attrib["pass"] == "") { echo 'ERROR: SET ALL ATTRIBUTES i.e sheet, worksheet, user, pass and columns. '; return; } // load Zend Gdata libraries set_include_path(get_include_path() . PATH_SEPARATOR . WP_PLUGIN_DIR . "//gdata-importer//"); require_once 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Gdata_Spreadsheets'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); // set credentials for ClientLogin authentication $user = $attrib["user"]; $pass = $attrib["pass"]; try { // connect to API $service = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME; $client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service); $service = new Zend_Gdata_Spreadsheets($client); // get spreadsheet entry $ssEntry = $service->getSpreadsheetEntry('https://spreadsheets.google.com/feeds/spreadsheets/' . $attrib["key"]); // get worksheets in this spreadsheet $wsFeed = $ssEntry->getWorksheets($attrib["worksheet"]); } catch (Exception $e) { echo 'ERROR: ' . $e->getMessage(); return; } $content = <<<HTML \t<table> HTML; foreach ($wsFeed as $wsEntry) { if ($wsEntry->getTitle() == $attrib["worksheet"]) { //get title $query = new Zend_Gdata_Spreadsheets_CellQuery(); $query->setSpreadsheetKey($attrib["key"]); $id = $wsEntry->getId(); $arr = explode('/', $id); $query->setWorksheetId($arr[sizeof($arr) - 1]); $query->setMinRow(1); $query->setMaxRow(1); $cellFeed = $service->getCellFeed($query); $content = $content . "<tr>"; foreach ($cellFeed as $cellEntry) { $content = $content . "<td>" . $cellEntry->getCell()->getText() . "</td>"; } $content = $content . "</tr>"; //get content $rows = $wsEntry->getContentsAsRows(); foreach ($rows as $row) { $content = $content . "<tr>"; foreach ($row as $key => $value) { $content = $content . "<td>" . $value . "</td>"; } $content = $content . "</tr>"; } } } $content = $content . <<<HTML \t\t</tbody> \t</table> HTML; return $content; }
public function testInsertUpdateDeleteRow3() { $rowData = array(); $rowData['a1'] = 'new'; $rowData['b1'] = 'row'; $rowData['c1'] = 'data'; $rowData['d1'] = 'here'; $entry = $this->gdata->insertRow($rowData, $this->sprKey); $rowData['a1'] = 'newer'; $entry = $this->gdata->updateRow($entry, $rowData); $ssTest = new Zend_Gdata_Spreadsheets($entry->getHttpClient()); $ssTest->delete($entry); }
public function insertRow($payload) { return $this->spreadsheetService->insertRow($payload, $this->spreadsheetId); }
</head> <body> <?php //die("here"); // load Zend Gdata libraries require_once 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Gdata_Spreadsheets'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); // set credentials for ClientLogin authentication $user = "******"; $pass = "******"; try { // connect to API $service = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME; $client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $service); $service = new Zend_Gdata_Spreadsheets($client); // get spreadsheet entry die($ssEntry . "am there"); $ssEntry = $service->getSpreadsheetEntry('https://docs.google.com/a/kcn.unima.mw/spreadsheet/ccc?key=0AumyFvx6NCRWdHRsUTFLYnBRcThmQ0RpaGwtOU1BNUE#gid=0'); // get worksheet feed for this spreadsheet $wsFeed = $service->getWorksheetFeed($ssEntry); // create new entry $wsEntry = new Zend_Gdata_Spreadsheets_WorksheetEntry(); $title = new Zend_Gdata_App_Extension_Title('Jan 2011'); $wsEntry->setTitle($title); $row = new Zend_Gdata_Spreadsheets_Extension_RowCount('10'); $wsEntry->setRowCount($row); $col = new Zend_Gdata_Spreadsheets_Extension_ColCount('10'); $wsEntry->setColumnCount($col); // insert entry $entryResult = $service->insertEntry($wsEntry, $wsFeed->getLink('self')->getHref());
* @subpackage Demos * @copyright Copyright (c) 2005-2011 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License */ require_once 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Gdata'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); Zend_Loader::loadClass('Zend_Gdata_Spreadsheets'); Zend_Loader::loadClass('Zend_Gdata_App_AuthException'); Zend_Loader::loadClass('Zend_Http_Client'); try { $client = Zend_Gdata_ClientLogin::getHttpClient($email, $password, Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME); } catch (Zend_Gdata_App_AuthException $ae) { exit("Error Connecting"); } $spreadsheetService = new Zend_Gdata_Spreadsheets($client); $query = new Zend_Gdata_Spreadsheets_DocumentQuery(); //$query->setSpreadsheetKey($spreadsheetKey); //$feed = $spreadsheetService->getWorksheetFeed($query); $feed = $spreadsheetService->getSpreadsheetFeed($query); foreach ($feed->entries as $entry) { echo $entry->id->text; echo "<br>"; echo $entry->title->text; } /* foreach($feed->entries as $entry){ $wkshtId = explode('/', $entry->id->text); echo $wkshtId[8]; echo $entry->title->text; }
/** * Returns the worksheets in this spreadsheet * * @return Zend_Gdata_Spreadsheets_WorksheetFeed The worksheets */ public function getWorksheets() { $service = new Zend_Gdata_Spreadsheets($this->getHttpClient()); return $service->getWorksheetFeed($this); }
/** * Returns the content of all cells as an associative array, indexed * off the cell location (ie 'A1', 'D4', etc). Each element of * the array is an associative array with a 'value' and a 'function'. * Only non-empty cells are returned by default. 'range' is the * value of the 'range' query parameter specified at: * http://code.google.com/apis/spreadsheets/reference.html#cells_Parameters * * @param string $range The range of cells to retrieve * @param boolean $empty Whether to retrieve empty cells * @return array An associative array of cells */ public function getContentsAsCells($range = null, $empty = false) { $service = new Zend_Gdata_Spreadsheets($this->getHttpClient()); return $service->getSpreadsheetCellFeedContents($this, $range, $empty); }
Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); /** * @see Zend_Gdata_Docs */ Zend_Loader::loadClass('Zend_Gdata_Docs'); /** * @see Zend_Gdata_ClientLogin */ Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); /** * @see Zend_Gdata_Spreadsheets */ Zend_Loader::loadClass('Zend_Gdata_Spreadsheets'); $authService = Zend_Gdata_Spreadsheets::AUTH_SERVICE_NAME; $httpClient = Zend_Gdata_ClientLogin::getHttpClient('*****@*****.**', 'internet21', $authService); $gdClient = new Zend_Gdata_Spreadsheets($httpClient); $query = new Zend_Gdata_Spreadsheets_CellQuery(); $query->setSpreadsheetKey('0AlkFQsJI6D_7dEZOVXlTeDNYOGsyNVNWalNLdWdDU2c'); $query->setWorksheetId(3); $query->setMinCol(3); $query->setMaxCol(3); $query->setMinRow(17); $query->setMaxRow(17); $feed = $gdClient->getCellFeed($query); $entry = $gdClient->updateCell(16, 4, $_GET['precio'], '0AlkFQsJI6D_7dEZOVXlTeDNYOGsyNVNWalNLdWdDU2c', 3); $entry = $gdClient->updateCell(17, 4, $_GET['enganche'], '0AlkFQsJI6D_7dEZOVXlTeDNYOGsyNVNWalNLdWdDU2c', 3); $entry = $gdClient->updateCell(13, 9, $_GET['anio'], '0AlkFQsJI6D_7dEZOVXlTeDNYOGsyNVNWalNLdWdDU2c', 3); $entry = $gdClient->updateCell(13, 3, $_GET['marca'], '0AlkFQsJI6D_7dEZOVXlTeDNYOGsyNVNWalNLdWdDU2c', 3); $entry = $gdClient->updateCell(14, 3, $_GET['linea'], '0AlkFQsJI6D_7dEZOVXlTeDNYOGsyNVNWalNLdWdDU2c', 3); $i = 0; foreach ($feed->entries as $entry) {