Extending DrupalGapps: Google Apps Admin Settings API, Reporting API and Google Documents List API Integration

Events happening in the community are now at Drupal community events on www.drupal.org.
vaidik's picture

Overview

The project aims at extending the DrupalGapps (Google Apps Framework for Drupal) module by:

  1. Improving and adding more features to existing DrupalGapps API.
  2. Developing wrappers and applications (as modules) for Google's service-specific APIs by using the DrupalGapps API.

State of DrupalGapps Framework (module)

DrupalGapps Framework is a project that aims at seamlessly integrating Google Apps with Drupal.

DrupalGapps has two major components:

  1. DrupalGapps Core: the core consists of wrapper APIs. Each wrapper API is built by wrapping up individual Google Apps API. Currently, the core wrapps:
  • Google Provisioning API
  • Google Authentication API (via OAuth)
  • DrupalGapps Application Modules: a package of sub-modules built using DrupalGapps Core API and Drupal API to further integrate Google Apps. Currently, following sub-modules exist:
    1. DrupalGapps UI: this was developed by Stella using DrupalGapps API. It provides the user interface to manage Google Accounts.

    The DrupalGapps module was written by Ankur Saxena (flyankur) as his project for Google Summer of Code 2009.

    Currently, the DruaplGapps module is available for Drupal 6.

    Development & The Way Forward

    This project aims to take DrupalGapps in the following direction:

    1. Extension of DrupalGapps to seamlessly integrate Google Apps with Drupal.
    2. Integration of all the Google Apps Domain & Management APIs in the DrupalGapps Core.
    3. Providing appropriate API for the above integration so that further development on DrupalGapps could be done.
    4. Waiving off the need to open the actual Google Apps management interface for any sort of administration purpose and hence, making Google Apps completely available in Drupal.
    5. Development of modules to integrate Google Apps Application APIs to get Google Apps services working in Drupal.

    Scope Of Work

    1. Integration of Domain Info & Management APIs into DrupalGapps Core to completely enable Drupal for Google Apps management and administration.
    • Development of registration module for Drupal and Google Apps Account integration.
    • Integration of Admin Settings API.
    • Integration of Reporting API.
  • Development of separate modules for Google Apps service-specific APIs to make Google Apps Services available in Drupal.
    • Wrapper API and UI for Google Documents List API.
    • Wrapper API and UI for Google Calendar Data API.

    Description

    Following are the goals of this project in detail:

    1. Feature addition to DrupalGapps Core:
      1. Registration Module
        1. The module will provide an application over DrupalGapps API which will add to Drupal’s current registration system by giving space for Google Apps account registration with Drupal user registration.
        2. This module will be very flexible, so as to accommodate the varying needs of administrators.
        3. The feature will come with appropriate UI for easy management.
        4. Usefulness:
    • This can ease the process of Google Apps Deployment and user account creation via Drupal.
    • Integration of Drupal and Google Apps account. This can also extend to Single Sign-On.
  • Admin Settings API
    1. This module will provide all the Google Apps Admin Panel features in Drupal:
    • General Domain Settings like language settings, organization name, number of current users, appearance settings, etc.
    • Administrator account settings management like changing secondary email address, retrieval of support PIN, etc.
  • Usefulness:
    • This will take DrupalGapps in the direction where complete Google Apps administration would become possible in Drupal.
    • Can be very handy for administrators.
  • Reporting API
    1. This module will provide usage reports on your Google Apps Domain's hosted accounts.
    • General reports like account reports, activity reports, disk space reports, etc. will be fetched and formatted for display.
    • Further, if time is left, Reporting Visualization API can also be implemented.
  • Usefulness:
    • Can be very handy for administrators as on the basis of usage, administrators will be able to administer their Google Apps Domain via Drupal itself (as Admin Settings API will also be available in Drupal).
  • Integrating Google Apps Applications by building wrapper API and applications for:
    1. Google Documents List API
      1. Retrieving lists of documents.
      2. Document searching according to selected criteria (document type, keywords, private/public/shared, folder-wise).
      3. Downloading and uploading documents.
      4. Other actions on documents like renaming, deletion, etc.
      5. Folder creation and deletion.
      6. Document and folder sharing.
      7. Integration with Views API.
      8. This module will be a separate module and will be dependent on DrupalGapps and Views.
      9. Google Docs like view and interface:
    • This will be an implementation of the module which will be a part of the module. This has been chosen as this is the most general form in which Google Docs is used. This will make this module ready-for-use with least amount of work required by administrators to do to kickstart.
  • UI for management and administration:
    • Only for administrators.
    • Would be used to turn on/off different features.
  • Usefulness:
    • Direct uploading of documents from Drupal to Google Docs. This will greatly reduce the storage space burden from the server by using the free file storage service provided by Google Docs. The file attached to a node will be linked to the file that user’s Google Docs account.
    • Opening attached documents in a node in Google Docs directly.
    • Filtering of only required data that will be retrieved from a particular Google Docs account will become easy. This will add amazing flexibility in terms of serving to various use cases.
    • The aim would be to achieve the above mentioned task by integrating this module with Views API.
  • Google Calendar Data API
    1. Retrieve event entries from Google Calendars account.
    2. Add events.
    3. Update/delete events.
    4. Filtering events according to various criteria (like date range, month, year, text query)
    5. Sharing calendars.
    6. Complete Access Control management.
    7. Exporting calendars to specific formats.
    8. Integration with Drupal's Calendar module.
    9. Integration with Views API.
    10. This module will be a separate module and will be dependent on DrupalGapps, Views and Calendar.
    11. Google Calendar like view and interface:
    • This will be an implementation of the module which will be a part of the module. This has been chosen as this is the most general form in which Google Calendars is used. This will make this module ready-for-use with least amount of work required by administrators to do to kickstart.
  • UI for management and administration:
    • Only for administrators.
    • Would be used to turn on/off different features.
  • Usefulness:
    • Sharing of Google Calendars between different users in a domain via Drupal can prove to be a good use case. For example, in an organizations, a particular department can be responsible for making the annual calendar and so the people working in that department should have read/write/update access to the calendar whereas people working in other departments should only have viewing rights.
    • Extraction of events and their respective information from the calendar into nodes can be very useful. This feature will be achieved by integrating this module with View API.

    The registration module, Admin Settings API and Reporting API are going to be in DrupalGapps Core and Google Documents List API will be implemented as a separate module. Due to lack of time, other service-specific APIs will not be worked upon. But the Google Documents List API integration module will be developed and documented in such a way that it will help the community to develop for integrating other Google Apps service-specific with ease.

    Check the following image to see the current state of DrupalGapps and what I wish to achieve by doing this project.

    Use Cases

    1. Registration Module
    • Synchronization of Drupal's User Registration (User Core Module) with Google Apps.
    • Single Sign-On with Google Apps account (with Google Apps username and password and not with OpenID).
  • Admin Settings API
    • With almost all the Google Apps control panel features available for administration, this module can be very useful for administrators.
    • Managing general domain settings like language settings, organization info, administrator's account info, etc. would become very easy.
    • Changing email routing settings, gateway settings and email migration settings using Drupal.
    • Updating CNAME, MX Records settings using Drupal.
    • With all this in place, why would an administrator need to access Google Apps interface again? Only when other APIs are not present in DrupalGapps Core and that will happen over the time as the community starts finding this piece of work useful.
  • Reporting API
    • With Admin Settings API in place, Reporting API can be very useful.
    • Reporting API will provide detailed reports on how a particular Google Apps Domain is being used by people. These reports are detailed and very informative for administrators. These reports retrieved from Google Apps will be in text format. However, in raw format all the data that is fetched from Google are Atom feeds. The wrapper API for Reporting API will provide so much flexibility such that (for example) a developer will also be able to write a new module to present reports in the form of graphs or other visual form.
  • Google Documents List API
    • Attach docs, spreadsheets, PDFs, diagrams any type of file on your node. This will be very useful in cases of collaborative websites built on Drupal.
    • Ability to open attached files in Drupal's node directly in Google Docs (similar to what Gmail does for viewing docs attached in emails). This would take Google Docs integration deeper and will give smoother experience. No doubt, Drupal will become the preferred CMS when Google Apps integration will be in question.
    • Creating, deleting, retrieving, searching documents that match specific criteria or metadata will be very useful.
    • Sharing of Google Docs according to Drupal's Groups and rules can be prove to be very useful as one wouldn't need to manage each and every file by manually logging in to Google Docs. Everything will be available in Drupal!
    • Views – successful integration of Views API would prove to provide a lot of flexibility. One or more documents could be filtered and formatted and attached to any node/block in Drupal.
  • Google Calendar Data API
    • Creating, deleting, retrieving, searching of events directly from Drupal can be a part of a lot of use cases, especially in case of collaboration platforms.
    • Drupal websites, which already use Drupal's Calendar Module, will find it easy to migrate to DrupalGapps Calendar Module as this module will make use of Drupal's Calendar Module only to display Google Calendar's events.
    • With complete access control management and calendar/event sharing features available, this module can earn a lot of interest from administrators managing collaboration platforms or websites for organization and corporate houses where only certain people have should have rights to read/write/update calendar events and everyone else must have permission to read only. Integrating this module with Drupal's Groups module will make management even more simpler.

    The above mentioned are only a few use cases as example. There can be numerous use cases.

    Profit to Drupal

    Google Apps, now, is used by numerous businesses, educational institutes and organizations the world over. The numbers are increasing by the day and are running in millions. The community can expect many advantages out of this project:

    1. Drupal’s functionality will increase and could be put to many practical uses with Google Apps built over the Drupal API.
    2. Some organizations (like an NGO, universities for Learning Management Systems, some community libraries) are already using DrupalGapps for collaboration. With further development, these organizations will get motivated to use Drupal for integrating Google Apps for collaboration and can benefit and put to use many practically useful services offered by Google Apps.
    3. This development would also encourage the community to use Drupal when Google Apps is in question.
    4. No doubt Drupal will become one of the most famous and preferred CMS for using Google Apps for collaboration.
    5. Further, this project will will encourage the community to develop modules for integrating other Google Apps Services and widen the possibilities of what Drupal and Google Apps can together do.

    Timeline

    1. Tasks before May 23, 2011
    • Setup Google Apps Working Base.
    • Study Google Data Protocol.
    • Study Google Admin Settings API, Reporting API, Google Documents List API.
    • Understand the Drupal Registration System.
  • Milestone 1 – planning, designing and prototyping for extending DrupalGapps Core
    • May 23, 2011 to May 30, 2011 – brainstorming, planning and deciding the integration methods to be used. The end-result will be a complete design and prototype to summarize the entire project.
  • Milestone 2 – development of registration module, building wrappers for Admin Settings API and UI development. Integrating all this in DrupalGapps Core.
    • May 31, 2011 to July 8, 2011 – development of registration module and wrapper API for Admins Settings API. Development of UI for administration.
    • July 9, 2011 to July 12, 2011 – testing, debugging and detailed documentation.
  • Milestone 3 – building of wrapper for Reporting API and development of DrupalGapps application modules for Google Apps service-specific APIs.
    • July 15, 2011 to July 22, 2011 – development of wrapper API for Reporting API. Development of UI as well.
    • July 23, 2011 to August 19, 2011 – development of wrapper API for Google Documents List API (including integration with Views API) and development of its application module i.e. Google Docs like view and interface and UI for administration. If time is left, begin work on developing wrapper API for Google Calendar Data API.
    • August 18, 2011 to August 22, 2011 – final testing, debugging and detailed documentation.

    Deliverables

    1. Registration Module. UI for administration.
    2. Wrapper API for Admin Settings API. UI for administration. This will be an extension of existing DrupalGapps Core.
    3. Wrapper API for Reporting API. UI for administration.. This will be an extension of existing DrupalGapps Core.
    4. Wrapper API for Google Documents List API. Application module with application interface similar for Google Docs' interface. UI for administration.
    5. Wrapper API for Google Calendar Data API (only if time is left).

    Level of Difficulty

    Medium

    Mentors

    Looking for mentors.

    Motivation to do this project

    I have been working on Drupal for last four months and have been using it to develop small projects for personal interests and friends. The community has been very instrumental in helping me learn and grow as a Drupal developer and with Google Summer of Code 2011 ahead, I think its time for me to contribute something back to the community.

    I had designed an Object Oriented Model to implement Documents List API for searching, uploading, deleting and renaming files stored in Google Docs as a college project last year. Since it was a college project and there were restrictions like use of particular design patterns, object oriented programming, etc., I was not able to implement the idea for a practical use. With a module like DrupalGapps out there, I can, now, implement idea which could be put to a better and practical use. Besides this, the DrupalGapps module was written by Ankur Saxena, who is my senior and mentor in college. He has been a source of motivation for me to do this project and complete what he had started in Google Summer of Code 2009.

    This project will extend the capabilities of the existing DrupalGapps module by using the existing framework and APIs and package Google service-specific modules with the DrupalGapps module, resulting in a complete package for Google Apps management and utilization in Drupal. The community has already benefited from the DrupalGapps module. As of last year, it was being used by an NGO for integration of Google Wave into their website, Learning Management Systems developed using Drupal, some community libraries, etc. After completion of this project, the community and organizations world over will be further motivated to use Drupal as the CMS when Google Apps integration is in question.

    About Me

    I am Vaidik Kapoor and I am currently pursuing B. Tech. in Computer Science Engineering from JIIT, Noida, India. I am an active member of the Open Source Community in my college and city. I have been taking part in many open source meet ups and events (including Drupal's) in and around the city I live in. I like programming and web development. In my free time, I write utility scripts. I, with three friends, formed a group of freelancers called INK Liquid Designing a year back. I did some web development and design projects with INK. While I worked on these projects, I used a lot of open source technologies like Wordpress, PHP, etc and recently I shifted to Drupal. All the associated communities have helped me immensely and that's why I think that it is time I should contribute back. I blog at www.vaidikkapoor.info.

    Email: kapoor.vaidik@gmail.com

    Comments

    Focus

    rwohleb's picture

    I'd like to see a clear declaration of the goal here. You appear to be wanting to cover just about everything, but that is not very feasible even for a student more familiar with Drupal development. You should step back and identify two things:

    1. What problem (singular) are you trying to solve. Saying integrating with Google Apps APIs is too vague. You need to have a very clear and well defined target.
    2. Once you've identified your target, try and figure out what you think you can accomplish at your skill/knowledge level.

    If you do both of the things above, you'll be in a better position to get serious mentor interest and the possibility of being selected.

    @rwohleb: I think I have

    vaidik's picture

    @rwohleb:
    I think I have written too much in the discussion post and therefore, I have made it a little confusing on my part as far as my focus is concerned.

    My main focus with this project is to extend DrupalGapps to enable it for complete Google Service-Specific API integration. Now what I mean by that is that even if I don't integrate all Google's Service Specific APIs, someone else should be able to do that with ease and the need to change DrupalGapps API should not arise.

    Therefore, my primary aim is to make only those feature additions to DrupalGapps so that important things like admin settings, domain management, etc. are available (please note that authentication and user registration already exists). With addition to this, I'd like to properly sync the Drupal's User Registration and management with Google Apps Accounts.

    Since I mentioned that Google Service-Specific API integration should be done using DrupalGapps API, I would like to demonstrate this by integrating at least one important Google's Service-Specific API like Google Docs or Google Calendar. And if time is left, then both. But, I guess I wouldn't be left with much time for completing both of them.

    So, the main focus is:
    1. Feature additions to DrupalGapps for easy Google Apps Service-Specific API (like Google Docs, Gmail Feeds, etc.) integration later on.
    2. One important Google Apps Service-Specific API integration for demonstration of Google's Service-Specific API integration.

    Vaidik Kapoor

    D7 and API updates

    rwohleb's picture

    I think it would be a good idea to target updating the existing modules to Drupal 7. In addition to the Drupal API changes, there have been further developments on the Google Apps APIs. It would probaby be a good idea to take a step back and see if the assumptions made in the original module code is still valid.

    @rwohleb: Porting to Drupal 7

    vaidik's picture

    @rwohleb:
    Porting to Drupal 7 is in my mind as well. I have not included it in my discussion because prior to posting my idea in the group, i had a brief discussion about it with flyankur (the guy who started DrupalGapps). And he has taken the responsibility of porting DrupalGapps to Drupal 7. I have taken the joint responsibility with flyankur.

    Also, only Provisioning API v2.0 and OAuth have been implemented in DrupalGapps. Even today only Google Apps Provisioning API v2.0 is available. So there is not much of work in here.

    Vaidik Kapoor

    I've discussed all of the

    rwohleb's picture

    I've discussed all of the Google Apps stuff with flyankur previously so it's good that you are working with him on it.

    I haven't seen any oauth work done in the drupalgapps module. Has this work been done outside of the Drupal code repository?

    Super interested

    KeVroN's picture

    I would love to talk with you about this more, I'm glad to see you refine the scope of your proposal. I'm going to contact a mentor I think would be perfect for this project and see what he thinks.

    @rwohleb: Yeah I am in touch

    vaidik's picture

    @rwohleb:
    Yeah I am in touch with flyankur on this. We live in the same city and he was in my college.
    Authentication using OAuth was implemented in the DrupalGapps module. Google Apps now offers two different types of OAuth Authentication methods i.e. the 2-legged OAuth and the 3-legged OAuth. The one that DrupalGapps has is the 3-legged OAuth.

    @KeVroN:
    Sure! I am waiting for more suggestions! :)

    Vaidik Kapoor

    Subscribing.

    wastrilith2k's picture

    Subscribing.

    --James

    vaidik's picture

    Hi Guys!

    After discussing the idea on the IRC channel and after considering all the comments and suggestions, I have redefined the scope of my project.

    The new project proposal goes as follows:

    Overview

    The project  aims at extending the DrupalGapps (Google Apps Framework for Drupal) module by:

    • Porting DrupalGapps module to Drupal  7.
    • Improving and adding more features  to existing DrupalGapps API.
      • OAuth integration.
      • Registration sub-module development.
    • Developing wrapper and application  for Google Documents List API using DrupalGapps API.

    Development & The Way Forward

    This project  aims to take DrupalGapps in the following direction:

    • Porting DrupalGapps to Drupal 7.
    • Extension of DrupalGapps to seamlessly integrate Google Apps with  Drupal.
    • Integration of all the Google Apps Domain & Management APIs in  the DrupalGapps Core.
    • Providing appropriate API for the above integration so that  further development on DrupalGapps could be done.
    • Waiving off the need to open the actual Google Apps management interface  for any sort of administration purpose and hence, making Google Apps completely  available in Drupal.
    • Development of modules to integrate Google Apps Application APIs  to get Google Apps services working in Drupal.

    Scope Of Work

    • DrupalGapps is currently available for Drupal. 6 and needs to be  ported to Drupal 7. This in itself will be quite a task to complete.
    • Integration of Authentication API and Domain Info & Management  APIs into DrupalGapps Core to completely enable Drupal for Google Apps management  and administration.
      • Complete OAuth integration for authentication with Google Apps  account from Drupal.
      • Development of registration module for Drupal and Google Apps  Account integration.
    • Development of separate modules for Google Apps service-specific  APIs to make Google Apps Services available in Drupal.
      • Wrapper API and application with UI for Google Documents List API.

    Description

    Following are  the goals of this project in detail:

    • Porting DrupalGapps from Drupal 6 to  Drupal 7.
      • Google Provisioning API
      • Google Authentication API (via  ClientLogin)
    • Feature addition to DrupalGapps  Core:
      • OAuth integration for  authentication.
        • Google provides different  Authentication API. Google, now, recommends the use of 2-legged and 3-legged  OAuth methods of authentication over older methods like ClientLogin. Therefore,  OAuth integration in DrupalGapps is important.
        • Drupal's OAuth module could have  been a choice for implementing this. But, the OAuth module has not been ported  to Drupal 7 yet and porting it to Drupal 7 would require some effort. Porting  of OAuth to Drupal 7 can be a different project. Therefore, I want to implement  OAuth for Google Apps authentication only in DrupalGapps.
      • Registration Module
        • The module will provide an  application over DrupalGapps API which will add to Drupal’s current  registration system by giving space for Google Apps account registration with  Drupal user registration.
        • This module will be very flexible,  so as to accommodate the varying needs of administrators.
        • The feature will come with appropriate UI for easy management.
        • Usefulness:
          • This can ease the process of Google  Apps Deployment and user account creation via Drupal.
          • Integration of Drupal and Google  Apps account. This can also extend to Single Sign-On.
    • Integrating Google Apps services by  building wrapper API and applications for:
      • Google Documents List API
        • Retrieving lists of documents
        • Document searching according to  selected criteria (document type, keywords, private/public/shared,  folder-wise).
        • Downloading and uploading documents.
        • Other actions on documents like renaming, deletion, etc.
        • Folder creation and deletion.
        • Document and folder sharing.
        • Integration with Views API.
        • This module will be a separate module and will be dependent on  DrupalGapps and Views.
        • Google Docs like view and interface:
          • This will be an implementation of  the module which will be a part of the module. This has been chosen as this is  the most general form in which Google Docs is used. This will make this module  ready-for-use with least amount of work required by administrators to do to  kickstart.
        • UI for management and  administration:
          • Only for administrators.
          • Would be used to turn on/off  different features.
        • Usefulness:
          • Direct uploading of documents from  Drupal to Google Docs. This will greatly reduce the storage space burden from  the server by using the free file storage service provided by Google Docs. The  file attached to a node will be linked to the file that user’s Google Docs  account.
          • Opening attached documents in a node  in Google Docs directly.
          • Filtering of only required data that  will be retrieved from a particular Google Docs account will become easy. This  will add amazing flexibility in terms of serving to various use cases.
          • The aim would be to achieve the  above mentioned task by integrating this module with Views API.

    The  registration module are going to be in DrupalGapps Core and Google Documents  List API will be implemented as a separate module. Due to lack of time, other  service-specific APIs will not be worked upon. But the Google Documents List  API integration module will be developed and documented in such a way that it  will help the community to develop for integrating other Google Apps  service-specific with ease.

    Use Cases

    • OAuth integration
      • The biggest advantage of OAuth integration would be that it will  make integration of Google's service-specific APIs easy as authentication will  be completely handled by DrupalGapps and the developer would not have to worry  about authentication, session handling, etc.
    • Registration Module
      • Synchronization of Drupal's User Registration (User Core Module)  with Google Apps.
      • Single Sign-On with Google Apps account (with Google Apps username  and password and not with OpenID).
    • Google Documents List API
      • Attach docs, spreadsheets, PDFs, diagrams any type of file on your  node. This will be very useful in cases of collaborative websites built on  Drupal.
      • Ability to open attached files in Drupal's node directly in Google  Docs (similar to what Gmail does for viewing docs attached in emails). This  would take Google Docs integration deeper and will give smoother experience. No  doubt, Drupal will become the preferred CMS when Google Apps integration will  be in question.
      • Creating, deleting, retrieving, searching documents that match  specific criteria or metadata will be very useful.
      • Sharing of Google Docs according to Drupal's Groups and rules can  be prove to be very useful as one wouldn't need to manage each and every file  by manually logging in to Google Docs. Everything will be available in Drupal!
      • Views – successful integration of Views API would prove to provide  a lot of flexibility. One or more documents could be filtered and formatted and  attached to any node/block in Drupal.

    Only local images are allowed.
    There can be numerous use cases. The OAuth and the  registration module are going to be in DrupalGapps Core and Google Documents  List API will be implemented as a separate module. Due to lack of time, other  service-specific APIs will not be worked upon. But the Google Documents List  API integration module will be developed and documented in such a way that it  will help the community to develop for integrating other Google Apps  service-specific with ease.

    Timeline

    • Tasks before May 23, 2011
      • Setup Google Apps Working Base.
      • Study Google Data Protocol, Google Authentication API (OAuth),  Google Documents List API.
      • Study the existing DrupalGapps code base.
      • Understand the Drupal registration and user management system.
      • Get used to Drupal development environment and git.
    • Milestone 1 – porting DrupalGapps to Drupal 7
      • May 23, 2011 to June 3, 2011 – understanding the differences and  making relevant changes to the existing DrupalGapps module for Drupal 7  compatibility.
    • Milestone 2 – planning, designing and prototyping for extending  DrupalGapps Core
      • June 4, 2011 to June 10, 2011 – brainstorming, planning and  deciding the integration methods to be used. The end-result will be a complete  design and prototype to summarize the remaining project.
    • Milestone 3 – OAuth integration into DrupalGapps. Development of  registration module Integration of all this work in DrupalGapps Core.
      • June 11, 2011 to June 25, 2011 – complete OAuth integration for  Google Apps authentication.
      • June 26, 2011 to July 10, 2011 – development of registration  sub-module. Development of UI for complete administration.
      • July 10, 2011 to July 13, 2011 – testing, debugging and  documentation of the work done so far.
    • Milestone 4 – development of DrupalGapps application modules for  Google Apps service-specific APIs.
      • July 13, 2011 to August 14, 2011 – development of wrapper API for  Documents List API and development of application (Google Docs like view and  interface) with UI. Integration with Views API.
      • August 16, 2011 to August 22, 2011 – final testing, debugging and  detailed documentation.

    Deliverables

    • DrupalGapps module ported to Drupal 7 with the following extended  capabilities:
      • Integration of OAuth for authentication
      • Registration Module with UI for administration.
    • Wrapper API for Google Documents List API. Application module with  application interface similar to Google Docs Interface. UI for administration.

    Vaidik Kapoor

    Please review!

    vaidik's picture

    Hi Guys!

    Above is the latest project proposal. Please review and suggest modifications if necessary!

    Thanks!

    Vaidik Kapoor

    Sign me in as mentor

    dawehner's picture

    Sign me in as mentor

    Regarding using the OAuth

    voxpelli's picture

    Regarding using the OAuth module and it not being available for Drupal 7 - it will be available once this projects starts. I will get to it very soon.

    Regarding registration and authentication through OAuth I think you can make use of a soon released version of http://drupal.org/project/oauthconnector

    I'd be happy to help where help is needed. My modules shouldn't stop you from achieving what you want to achieve.

    I'm interested...

    rolodmonkey's picture

    I would love to be part of this. I'm not sure if I have the experience with this module to be a full-fledged mentor, but I would be willing to help out with code review, et al.

    Let me know if you need anything.

    Learn more at iRolo.net.

    Thanks ! And apologies for

    vaidik's picture

    Thanks !

    And apologies for the late reply. I had been a little busy with college and otherwise as well. I was attending the GNOME.Asia Summit for celebrating GNOME 3.0 launch.

    Would there be any specific feature/idea, apart from what I have included in my proposal, that you would like to see in this project? Any suggestions?

    Vaidik Kapoor

    You should really post your

    dawehner's picture

    You should really post your proposal to melange asap.

    Demo Site Set Up

    vaidik's picture

    Hi Guys!

    I have setup a demo site to just give you a hint as to what I want to achieve by doing this project. The demo site can be accessed at http://drupalgapps.vaidikkapoor.info/

    The demo site demonstrates the Google Docs module. If the user provides his/her google account email address and password, then a list of all the documents from that account's google docs is retrieved, and displayed. Obviously, what I have displayed on the demo site is a very small part of what I want to achieve. And in actuality, this wouldn't exactly function like this.

    I have completed this in a very short span of time as I have some college submissions because the semester is going to end in a month. Therefore, I had been very busy with that. Since I did this very quickly, I might have left bugs (in fact I am pretty sure I have). I'll definitely rectify those.

    Also, I assure that I am not storing any user account information or passwords of those people who have tried the demo or are going to try the demo. So please feel safe and go ahead to check this out.

    Your comments are valuable. So please discuss as to what extra should I do. I need to know what the community expects from this project.

    Vaidik Kapoor

    My GSoC Application on Melange

    vaidik's picture

    Here is the link to my application for GSoC 2011 on melange:
    http://www.google-melange.com/gsoc/proposal/review/google/gsoc2011/vaidik/1

    Vaidik Kapoor

    This proposal is looking

    rwohleb's picture

    This proposal is looking pretty good.

    My only thoughts on this are around the oauth and connector modules. Ideally the 7.x branch of oauth will be up and working enough for integration testing as this would be the ideal route. There's no reason to duplicate work if you don't have to, but the oauth upgrade has been going slower than I expected.

    It would also be great if you could work with voxpelli around his work on the connector modules. Allow users to login with their GApps credentials through a set of existing contrib modules would be ideal. This would make it easier to mix logins between GApps, Facebook, etc.

    I've requested mentorship in melange so that I can help give feedback there.

    @rwohleb: Thanks! I spoke

    vaidik's picture

    @rwohleb:
    Thanks!

    I spoke with voxpelli about the OAuth module. He said that in two weeks the module will be available for use in DrupalGapps. Considering the GSoC timeline, students have to begin coding from May 23 according to which voxpelli has a lot of time to work on the module (I guess). Obviously the sooner the better as I would get time before the coding period begins to study everything. Also, voxpelli suggested me to take a look at the Google OAuth Connector project (http://drupal.org/sandbox/ramos/1118412). This looks very interesting. But again, all the work that has been done here is for 6.x.

    Vaidik Kapoor

    vtitarchuk's picture

    I am interested to know if this initiative is being used. Can someone share their production case story?

    ServanTek
    Serving with technology
    http://servantek.org.ua

    Google Summer of Code 2011

    Group notifications

    This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: