lsnc-google-api
Code models for integrating core Google Apps with the Pika case management system.
Project Home Downloads Wiki Issues Source
Google Apps API Readme
INSTALLATION INSTRUCTIONS
- Create Google account with calendar read/write proxy access to all calendars. Login to your Google Apps admin page (http://www.google.com/a/domainname.com) and go to the Calendar settings page: https://www.google.com/calendar/render?settings=0. Click on "Calendars" tab and modify all the calendars you want to modify via proxy by clicking on "Shared: Edit settings."
- Create RSA Certificate (with PEM format). The included sample script /keys/createcert.sh will work in a Linux or Cygwin environment. (http://code.google.com/googleapps/domain/articles/sso-keygen.html#OpenSSL)
- Install RSA certificate on Google (https://www.google.com/a/cpanel/yourdomainname.com/SetupOAuth). Upload your PEM formated certificate using the file browser next to "X.509 certificate."
- Change the RSAKEY path in /pika/home/pika/app/lib/pikaGoogleSync.php to match your server configuration. (i.e. public $RSAKEY = "/var/www/keys/rsakey.pem";)
- Change the "OAuth consumer key" in /pika/app/lib/pikaGoogleSync.php (i.e. private $OAUTHKEY = "yourdomainname.com") to match your configuration
- Modify the $server_timezone_offset variable in /pika/app/lib/pikaGoogleSync.php to match your location (i.e. public $server_timezone_offset = "-05";)
- Change all the paths in /google-gadgets/pika.xml (i.e. "http://yourdomainname.com") to match your server location
- Change the "Add Tickler URL" in /google-gadgets/pika.xml (http://yourdomainname.com/pika/activity.php?screen=compose&act_type=K) to match your Pika URL
- Upload files to server
- Modify your Pika database using this script: /sql/install.sql
- Manually run /pika/services/google-queue.php to authenticate the script with Google. This is the script moves content from Pika to your Google calendar in batches.
- Install a chron job to execute /pika/services/google-queue.php as your chosen interval.
- To install your Google Calendar Gadget, login to your Google account and use this link: https://www.google.com/calendar/render?gadgeturl=http://yourdomainname.com/google_gadgets/pika.xml
DATABASE MODIFICATIONS
/pika/home/sql/install.sql
AUTHENTICATION
/pika/home/keys/createcert.sh
GOOGLE GADGET
/pika/home/google-gadgets/pika.xml /pika/home/google-gadgets/images/logo.png /pika/home/google-gadgets/images/busyLoader.gif /pika/home/google-gadgets/js/shindig_popup.js /pika/home/google-gadgets/js/html_funcs.min.js
ZEND FRAMEWORK
/pika/home/pika/app/extralib/Zend/Date.php /pika/home/pika/app/extralib/Zend/Debug.php /pika/home/pika/app/extralib/Zend/Gdata.php /pika/home/pika/app/extralib/Zend/Loader.php /pika/home/pika/app/extralib/Zend/Oauth.php /pika/home/pika/app/extralib/Zend/Crypt/ /pika/home/pika/app/extralib/Zend/Date/ /pika/home/pika/app/extralib/Zend/Gdata/ /pika/home/pika/app/extralib/Zend/Loader/ /pika/home/pika/app/extralib/Zend/Oauth/
MODIFIED CORE PIKA FILES
/pika/home/pika/app/lib/pl.php /pika/home/pika/app/lib/plBase.php /pika/home/pika/activity.php /pika/home/pika/cal_adv.php /pika/home/pika/index.php /pika/home/pika/pika_cms.php /pika/home/pika/pika-danio.php /pika/home/pika/css/shared.css /pika/home/pika/css/case_records.css /pika/home/pika/modules/case-pb.php /pika/home/pika/ops/delete_activity.php /pika/home/pika/ops/update_activity.php /pika/home/pika/services/cal-rss.php /pika/home/pika/services/cases-rss.php /pika/home/pika/template_plugins/multiselect.php
NEW PIKA FILES
/pika/home/pika/app/lib/pikaGoogleSync.php /pika/home/pika/services/google-queue.php /pika/home/pika/services/google_clearsession.php /pika/home/pika-custom/subtemplates/activity.html /pika/home/pika-custom/templates/google-gadget.html