I have modified IBM's code in order to set a rimender to a event bu I got error.
The original code is here (http://www.ibm.com/developerworks/xml/ library/x-googleclndr/): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Adding calendar events</title> <style> body { font-family: Verdana; } li { border-bottom: solid black 1px; margin: 10px; padding: 2px; width: auto; padding-bottom: 20px; } h2 { color: red; text-decoration: none; } span.attr { font-weight: bolder; } </style> </head> <body> <h1>Add Event</h1> <?php if (!isset($_POST['submit'])) { ?> <form method="post" action=" <?php echo htmlentities($_SERVER['PHP_SELF']); ?>"> Event title: <br/> <input name="title" type="text" size="15" /><p/> Start date (dd/mm/yyyy): <br/> <input name="sdate_dd" type="text" size="2" /> <input name="sdate_mm" type="text" size="2" /> <input name="sdate_yy" type="text" size="4" /><p/> Start time (hh:mm): <br/> <input name="sdate_hh" type="text" size="2" /> <input name="sdate_ii" type="text" size="2" /><br/> End date (dd/mm/yyyy): <br/> <input name="edate_dd" type="text" size="2" /> <input name="edate_mm" type="text" size="2" /> <input name="edate_yy" type="text" size="4" /><p/> End time (hh:mm): <br/> <input name="edate_hh" type="text" size="2" /> <input name="edate_ii" type="text" size="2" /><br/> <input name="submit" type="submit" value="Save" /> </form> <?php } else { // load classes require_once 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Gdata'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); Zend_Loader::loadClass('Zend_Gdata_Calendar'); Zend_Loader::loadClass('Zend_Http_Client'); // connect to service $gcal = Zend_Gdata_Calendar::AUTH_SERVICE_NAME; $user = "[email protected]"; $pass = "pass"; $client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $gcal); $gcal = new Zend_Gdata_Calendar($client); // validate input if (empty($_POST['title'])) { die('ERROR: Missing title'); } if (!checkdate($_POST['sdate_mm'], $_POST['sdate_dd'], $_POST ['sdate_yy'])) { die('ERROR: Invalid start date/time'); } if (!checkdate($_POST['edate_mm'], $_POST['edate_dd'], $_POST ['edate_yy'])) { die('ERROR: Invalid end date/time'); } $title = htmlentities($_POST['title']); $start = date(DATE_ATOM, mktime($_POST['sdate_hh'], $_POST ['sdate_ii'], 0, $_POST['sdate_mm'], $_POST['sdate_dd'], $_POST ['sdate_yy'])); $end = date(DATE_ATOM, mktime($_POST['edate_hh'], $_POST ['edate_ii'], 0, $_POST['edate_mm'], $_POST['edate_dd'], $_POST ['edate_yy'])); // construct event object // save to server try { $event = $gcal->newEventEntry(); $event->title = $gcal->newTitle($title); $when = $gcal->newWhen(); $when->startTime = $start; $when->endTime = $end; $event->when = array($when); $gcal->insertEvent($event); } catch (Zend_Gdata_App_Exception $e) { echo "Error: " . $e->getResponse(); } echo 'Event successfully added!'; } ?> </body> </html> The modifed code is here: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Adding calendar events</title> <style> body { font-family: Verdana; } li { border-bottom: solid black 1px; margin: 10px; padding: 2px; width: auto; padding-bottom: 20px; } h2 { color: red; text-decoration: none; } span.attr { font-weight: bolder; } </style> </head> <body> <h1>Add Event</h1> <?php if (!isset($_POST['submit'])) { ?> <form method="post" action=" <?php echo htmlentities($_SERVER['PHP_SELF']); ?>"> Event title: <br/> <input name="title" type="text" size="15" /><p/> Start date (dd/mm/yyyy): <br/> <input name="sdate_dd" type="text" size="2" /> <input name="sdate_mm" type="text" size="2" /> <input name="sdate_yy" type="text" size="4" /><p/> Start time (hh:mm): <br/> <input name="sdate_hh" type="text" size="2" /> <input name="sdate_ii" type="text" size="2" /><br/> End date (dd/mm/yyyy): <br/> <input name="edate_dd" type="text" size="2" /> <input name="edate_mm" type="text" size="2" /> <input name="edate_yy" type="text" size="4" /><p/> End time (hh:mm): <br/> <input name="edate_hh" type="text" size="2" /> <input name="edate_ii" type="text" size="2" /><br/> <input name="submit" type="submit" value="Save" /> </form> <?php } else { // load classes require_once 'Zend/Loader.php'; Zend_Loader::loadClass('Zend_Gdata'); Zend_Loader::loadClass('Zend_Gdata_ClientLogin'); Zend_Loader::loadClass('Zend_Gdata_Calendar'); Zend_Loader::loadClass('Zend_Http_Client'); // connect to service $gcal = Zend_Gdata_Calendar::AUTH_SERVICE_NAME; $user = "[email protected]"; $pass = "password"; $client = Zend_Gdata_ClientLogin::getHttpClient($user, $pass, $gcal); $gcal = new Zend_Gdata_Calendar($client); // validate input if (empty($_POST['title'])) { die('ERROR: Missing title'); } if (!checkdate($_POST['sdate_mm'], $_POST['sdate_dd'], $_POST ['sdate_yy'])) { die('ERROR: Invalid start date/time'); } if (!checkdate($_POST['edate_mm'], $_POST['edate_dd'], $_POST ['edate_yy'])) { die('ERROR: Invalid end date/time'); } $title = htmlentities($_POST['title']); $start = date(DATE_ATOM, mktime($_POST['sdate_hh'], $_POST ['sdate_ii'], 0, $_POST['sdate_mm'], $_POST['sdate_dd'], $_POST ['sdate_yy'])); $end = date(DATE_ATOM, mktime($_POST['edate_hh'], $_POST ['edate_ii'], 0, $_POST['edate_mm'], $_POST['edate_dd'], $_POST ['edate_yy'])); // construct event object // save to server try { $event = $gcal->newEventEntry(); $event->title = $gcal->newTitle($title); $when = $gcal->newWhen(); $when->startTime = $start; $when->endTime = $end; $reminder = $gcal->newReminder(); $reminder->setMinutes(15); $reminder->setMethod('sms'); $when->reminder = array($reminder); $event->when = array($when); $gcal->insertEvent($event); } catch (Zend_Gdata_App_Exception $e) { echo "Error: " . $e->getResponse(); } echo 'Event successfully added!'; } ?> </body> </html> The original code that adds notifier is here /http://code.google.com/ apis/calendar/docs/1.0/developers_guide_php.html): function setReminder($client, $eventId, $minutes=15) { $gc = new Zend_Gdata_Calendar($client); $method = "alert"; if ($event = getEvent($client, $eventId)) { $times = $event->when; foreach ($times as $when) { $reminder = $gc->newReminder(); $reminder->setMinutes($minutes); $reminder->setMethod($method); $when->reminder = array($reminder); } $eventNew = $event->save(); return $eventNew; } else { return null; } } The error is this: Fatal error: Call to undefined method Zend_Gdata_App_InvalidArgumentException::getResponse() in /users/noone/ public_html/test.php on line 104 The line 104 is: } catch (Zend_Gdata_App_Exception $e) { echo "Error: " . $e->getResponse(); I do not understand were I make mistake. And it is too coplicated for since I'm new in OOP. Thanks in advance. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google Calendar Data API" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/google-calendar-help-dataapi?hl=en -~----------~----~----~----~------~----~------~--~---
