/** * Processes loading of this sample code through a web browser. Uses AuthSub * authentication and outputs a list of a user's albums if succesfully * authenticated. * * @return void */ function processPageLoad() { global $_SESSION, $_GET; if (!isset($_SESSION['sessionToken']) && !isset($_GET['token'])) { requestUserLogin('Please login to your Google Account.'); } else { $client = getAuthSubHttpClient(); if (!empty($_REQUEST['command'])) { switch ($_REQUEST['command']) { case 'retrieveSelf': outputUserFeed($client, "default"); break; case 'retrieveUser': outputUserFeed($client, $_REQUEST['user']); break; case 'retrieveAlbumFeed': outputAlbumFeed($client, $_REQUEST['user'], $_REQUEST['album']); break; case 'retrievePhotoFeed': outputPhotoFeed($client, $_REQUEST['user'], $_REQUEST['album'], $_REQUEST['photo']); break; } } // Now we handle the potentially destructive commands, which have to // be submitted by POST only. if (!empty($_POST['command'])) { switch ($_POST['command']) { case 'addPhoto': addPhoto($client, $_POST['user'], $_POST['album'], $_FILES['photo']); break; case 'deletePhoto': deletePhoto($client, $_POST['user'], $_POST['album'], $_POST['photo']); break; case 'addAlbum': addAlbum($client, $_POST['user'], $_POST['name']); break; case 'deleteAlbum': deleteAlbum($client, $_POST['user'], $_POST['album']); break; case 'addComment': addComment($client, $_POST['user'], $_POST['album'], $_POST['photo'], $_POST['comment']); break; case 'addTag': addTag($client, $_POST['user'], $_POST['album'], $_POST['photo'], $_POST['tag']); break; case 'deleteComment': deleteComment($client, $_POST['user'], $_POST['album'], $_POST['photo'], $_POST['comment']); break; case 'deleteTag': deleteTag($client, $_POST['user'], $_POST['album'], $_POST['photo'], $_POST['tag']); break; default: break; } } // If a menu parameter is available, display a submenu. if (!empty($_REQUEST['menu'])) { switch ($_REQUEST['menu']) { case 'user': displayUserMenu(); break; case 'photo': displayPhotoMenu(); break; case 'album': displayAlbumMenu(); break; case 'logout': logout(); break; default: header('HTTP/1.1 400 Bad Request'); echo "<h2>Invalid menu selection.</h2>\n"; echo "<p>Please check your request and try again.</p>"; } } if (empty($_REQUEST['menu']) && empty($_REQUEST['command'])) { displayMenu(); } } }
/** * Processes loading of this sample code through a web browser. Uses AuthSub * authentication and outputs a list of a user's calendars if succesfully * authenticated. * * @return void */ function processPageLoad() { global $_SESSION, $_GET; if (!isset($_SESSION['sessionToken']) && !isset($_GET['token'])) { requestUserLogin('Please login to your Google Account.'); } else { $client = getAuthSubHttpClient(); outputCalendarList($client); } }
/** * Processes loading of this sample code through a web browser. * * @return void */ function runWWWVersion() { session_start(); // Note that all calls to endHTML() below end script execution! // Check to make sure that the user has set a password. $p = LOGIN_PASSWORD; if (empty($p)) { startHTML(false); displayPasswordNotSetNotice(); endHTML(); } // Grab any login credentials that might be waiting in the request if (!empty($_POST['password'])) { if ($_POST['password'] == LOGIN_PASSWORD) { $_SESSION['authenticated'] = 'true'; } else { // Invalid password. Stop and display a login screen. startHTML(false); requestUserLogin("Incorrect password."); endHTML(); } } // If the user isn't authenticated, display a login screen if (!isset($_SESSION['authenticated'])) { startHTML(false); requestUserLogin(); endHTML(); } // Try to login. If login fails, log the user out and display an // error message. try { $client = getClientLoginHttpClient(GAPPS_USERNAME . '@' . GAPPS_DOMAIN, GAPPS_PASSWORD); $gapps = new Zend_Gdata_Gapps($client, GAPPS_DOMAIN); } catch (Zend_Gdata_App_AuthException $e) { session_destroy(); startHTML(false); displayAuthenticationFailedNotice(); endHTML(); } // Success! We're logged in. // First we check for commands that can be submitted either though // POST or GET (they don't make any changes). if (!empty($_REQUEST['command'])) { switch ($_REQUEST['command']) { case 'retrieveUser': startHTML(); retrieveUser($gapps, true, $_REQUEST['user']); endHTML(true); case 'retrieveAllUsers': startHTML(); retrieveAllUsers($gapps, true); endHTML(true); case 'retrieveNickname': startHTML(); retrieveNickname($gapps, true, $_REQUEST['nickname']); endHTML(true); case 'retrieveNicknames': startHTML(); retrieveNicknames($gapps, true, $_REQUEST['user']); endHTML(true); case 'retrieveAllNicknames': startHTML(); retrieveAllNicknames($gapps, true); endHTML(true); case 'retrieveEmailLists': startHTML(); retrieveEmailLists($gapps, true, $_REQUEST['recipient']); endHTML(true); case 'retrieveAllEmailLists': startHTML(); retrieveAllEmailLists($gapps, true); endHTML(true); case 'retrieveAllRecipients': startHTML(); retrieveAllRecipients($gapps, true, $_REQUEST['emailList']); endHTML(true); } } // Now we handle the potentially destructive commands, which have to // be submitted by POST only. if (!empty($_POST['command'])) { switch ($_POST['command']) { case 'createUser': startHTML(); createUser($gapps, true, $_POST['user'], $_POST['givenName'], $_POST['familyName'], $_POST['pass']); endHTML(true); case 'updateUserName': startHTML(); updateUserName($gapps, true, $_POST['user'], $_POST['givenName'], $_POST['familyName']); endHTML(true); case 'updateUserPassword': startHTML(); updateUserPassword($gapps, true, $_POST['user'], $_POST['pass']); endHTML(true); case 'setUserSuspended': if ($_POST['mode'] == 'suspend') { startHTML(); suspendUser($gapps, true, $_POST['user']); endHTML(true); } elseif ($_POST['mode'] == 'restore') { startHTML(); restoreUser($gapps, true, $_POST['user']); endHTML(true); } else { header('HTTP/1.1 400 Bad Request'); startHTML(); echo "<h2>Invalid mode.</h2>\n"; echo "<p>Please check your request and try again.</p>"; endHTML(true); } case 'setUserAdmin': if ($_POST['mode'] == 'issue') { startHTML(); giveUserAdminRights($gapps, true, $_POST['user']); endHTML(true); } elseif ($_POST['mode'] == 'revoke') { startHTML(); revokeUserAdminRights($gapps, true, $_POST['user']); endHTML(true); } else { header('HTTP/1.1 400 Bad Request'); startHTML(); echo "<h2>Invalid mode.</h2>\n"; echo "<p>Please check your request and try again.</p>"; endHTML(true); } case 'setForceChangePassword': if ($_POST['mode'] == 'set') { startHTML(); setUserMustChangePassword($gapps, true, $_POST['user']); endHTML(true); } elseif ($_POST['mode'] == 'clear') { startHTML(); clearUserMustChangePassword($gapps, true, $_POST['user']); endHTML(true); } else { header('HTTP/1.1 400 Bad Request'); startHTML(); echo "<h2>Invalid mode.</h2>\n"; echo "<p>Please check your request and try again.</p>"; endHTML(true); } case 'deleteUser': startHTML(); deleteUser($gapps, true, $_POST['user']); endHTML(true); case 'createNickname': startHTML(); createNickname($gapps, true, $_POST['user'], $_POST['nickname']); endHTML(true); case 'deleteNickname': startHTML(); deleteNickname($gapps, true, $_POST['nickname']); endHTML(true); case 'createEmailList': startHTML(); createEmailList($gapps, true, $_POST['emailList']); endHTML(true); case 'deleteEmailList': startHTML(); deleteEmailList($gapps, true, $_POST['emailList']); endHTML(true); case 'modifySubscription': if ($_POST['mode'] == 'subscribe') { startHTML(); addRecipientToEmailList($gapps, true, $_POST['recipient'], $_POST['emailList']); endHTML(true); } elseif ($_POST['mode'] == 'unsubscribe') { startHTML(); removeRecipientFromEmailList($gapps, true, $_POST['recipient'], $_POST['emailList']); endHTML(true); } else { header('HTTP/1.1 400 Bad Request'); startHTML(); echo "<h2>Invalid mode.</h2>\n"; echo "<p>Please check your request and try again.</p>"; endHTML(true); } } } // Check for an invalid command. If so, display an error and exit. if (!empty($_REQUEST['command'])) { header('HTTP/1.1 400 Bad Request'); startHTML(); echo "<h2>Invalid command.</h2>\n"; echo "<p>Please check your request and try again.</p>"; endHTML(true); } // If a menu parameter is available, display a submenu. if (!empty($_REQUEST['menu'])) { switch ($_REQUEST['menu']) { case 'user': startHTML(); displayUserMenu(); endHTML(); case 'nickname': startHTML(); displayNicknameMenu(); endHTML(); case 'emailList': startHTML(); displayEmailListMenu(); endHTML(); case 'logout': startHTML(false); logout(); endHTML(); default: header('HTTP/1.1 400 Bad Request'); startHTML(); echo "<h2>Invalid menu selection.</h2>\n"; echo "<p>Please check your request and try again.</p>"; endHTML(true); } } // If we get this far, that means there's nothing to do. Display // the main menu. // If no command was issued and no menu was selected, display the // main menu. startHTML(); displayMenu(); endHTML(); }
/** * Processes loading of this sample code through a web browser. */ function runWWWVersion() { session_start(); // Note that all calls to endHTML() below end script execution! global $_SESSION, $_GET; if (!isset($_SESSION['docsSampleSessionToken']) && !isset($_GET['token'])) { requestUserLogin('Please login to your Google Account.'); } else { $client = getAuthSubHttpClient(); $docs = new Zend_Gdata_Docs($client); // First we check for commands that can be submitted either though // POST or GET (they don't make any changes). if (!empty($_REQUEST['command'])) { switch ($_REQUEST['command']) { case 'retrieveAllDocuments': startHTML(); retrieveAllDocuments($docs, true); endHTML(true); case 'retrieveWPDocs': startHTML(); retrieveWPDocs($docs, true); endHTML(true); case 'retrieveSpreadsheets': startHTML(); retrieveSpreadsheets($docs, true); endHTML(true); case 'fullTextSearch': startHTML(); fullTextSearch($docs, true, $_REQUEST['query']); endHTML(true); } } // Now we handle the potentially destructive commands, which have to // be submitted by POST only. if (!empty($_POST['command'])) { switch ($_POST['command']) { case 'uploadDocument': startHTML(); uploadDocument($docs, true, $_FILES['uploadedFile']['name'], $_FILES['uploadedFile']['tmp_name']); endHTML(true); case 'modifySubscription': if ($_POST['mode'] == 'subscribe') { startHTML(); endHTML(true); } elseif ($_POST['mode'] == 'unsubscribe') { startHTML(); endHTML(true); } else { header('HTTP/1.1 400 Bad Request'); startHTML(); echo "<h2>Invalid mode.</h2>\n"; echo "<p>Please check your request and try again.</p>"; endHTML(true); } } } // Check for an invalid command. If so, display an error and exit. if (!empty($_REQUEST['command'])) { header('HTTP/1.1 400 Bad Request'); startHTML(); echo "<h2>Invalid command.</h2>\n"; echo "<p>Please check your request and try again.</p>"; endHTML(true); } // If a menu parameter is available, display a submenu. if (!empty($_REQUEST['menu'])) { switch ($_REQUEST['menu']) { case 'list': startHTML(); displayListMenu(); endHTML(); case 'query': startHTML(); displayQueryMenu(); endHTML(); case 'upload': startHTML(); displayUploadMenu(); endHTML(); case 'logout': startHTML(false); logout(); endHTML(); default: header('HTTP/1.1 400 Bad Request'); startHTML(); echo "<h2>Invalid menu selection.</h2>\n"; echo "<p>Please check your request and try again.</p>"; endHTML(true); } } // If we get this far, that means there's nothing to do. Display // the main menu. // If no command was issued and no menu was selected, display the // main menu. startHTML(); displayMenu(); endHTML(); } }
/** * Processes loading of this sample code through a web browser. Uses AuthSub * authentication and outputs a list of a user's base items if succesfully * authenticated. * * @return void */ function processPageLoad() { global $_SESSION, $_GET; if (!isset($_SESSION['sessionToken']) && !isset($_GET['token'])) { requestUserLogin('Please login to your Google Account.'); } else { startHTML(); $client = getAuthSubHttpClient(); $itemUrl = insertItem($client, false); updateItem($client, $itemUrl, false); listAllMyItems($client); deleteItem($client, $itemUrl, true); querySnippetFeed(); endHTML(); } }