[GSOC: Proposal] Polldaddy integration

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

Name : Nitesh Kumar
Email : creative2all@gmail.com
Irc nick : nit3ch
twitter : nit3ch
skype : nitesh-bhardwaj
blog : http://nit3ch.wordpress.com
github : https://github.com/nit3ch
I am currently a student of B.Tech in information technology at Engineering College Bikaner.

Have you contributed to a open source project before?
I am a mozilla campus representative for our college.
I am working with drupal from last one and half year, this mostly involves making drupal based websites for clients. Contributed to some issue queues. Contributed to drupal translation (Hi). These are some of my contribution to drupal with issue no.

#1484132 : User visit advance port to drupal 7 , now i am co-maintainer of this project.
#1485872 : comment count notify port to drupal 7
#1350892 : My very first patch in core.
#1121974 : Linkedinbuttons port to drupal 7 , not yet committed.
sendlink : My sandbox / experimental project.

Why do you want to do a project involving Drupal?
I see drupal as a tool to create web application of small, large and huge sizes. Since i am using drupal for a while, it would be great to use my skills and understanding to next level and make drupal even more developed ans user friendly.

What is Polldaddy ?

The most powerful and easy-to-use survey software around. Create stunning surveys, polls, and quizzes in minutes. Collect responses via your website, e-mail, iPad, Facebook, and Twitter. Generate and share easy-to-read reports.

Overview
My idea is to integrate polldaddy with drupal.For now polldaddy api supports polling and rating.Polldaddy integration with wordpress has a very vast application .User can create poll on polldaddy choosing their favourite plans (free plans are also available) and can publish that in drupal site.

Description
Polldaddy module will help user to create and manage polls and rating within their drupal site. one can create , edit and delete polls and lots of other configuration available such as
1. Multiple choice polldaddy
2. whether to display poll result or not
3. user can repeat vote or not
4. user can comment on it or not
user can have default configuration for all polls and can also configure each poll. since polldaddy also providing api for rating , so we can add a rating block at the button or above the nodes or add some configuration option for content type.
Both rating and polling can be placed in the block.

1.Understanding polldaddy's api
Need to research to find out the possible possibilities. what can be done and what cann't be.

2.Authentication
Before showing poll and rating in drupal site , we have to authenticate the user first.
To access the API methods we will need a Polldaddy account. If user do not have one already, he has to sign up. We will need to request an API key. Our API key just tells polldaddy where the request is coming from. The API supports XML and JSON, so to make a request to the API, you need to send a HTTP POST request, where the payload is XML or JSON.

3.Importing poll and ratings
After the authentication process , poll and rating will be imported from polldaddy to drupal site.For importing poll we have a method call Getpoll , which is used to retive a poll's xml.More about api's.

4.configuration
Finding all possible configuration and giving user a a easy interface for creating and modifying polling and rating.Already described above about some possible configuration.

5.Implementing rating
Rating can be done in the same manner as polling.So it is going to be a easy task to authenticate and importing rating.Available Api request method type for rating are getrating and getratingresults etc.

6.Custom styles
Polldaddy comes with some default polling and rating styles. Need to add some configurable custom styles to provide flexibility to user.

7. Backporting it in D6
I will like to create this module in drupal 7 and then backport it to druapl 6 in future.

Profit for drupal ?

1. A tool which can be used on number of platforms such as blogger website, facebook, short url etc.

2. Drupal need not to care about polling and rating, polldaddy will take care of it, all the data will be stored in polldaddy.

3. Wordpress(4 lakhs+ dwonload) and mediawiki are already integrated with polldaddy, so this will be great if drupal can also be integrated with polldaddy.

Overlap with other modules and core modules

Lots of poll and rating modules are already available in drupal and working awesome , but this is a win because all overhead will be maintain by polldaddy. what we have to do is to just fetch data to display in our drupal site . And the bonus point is that after authentication can be managed by drupal site too , no need to login polldaddy.
This module will be totally different from core poll module.This is third party intergration.

Approximate Schedule

April 23 - May 20 (community bonding period)
It would include discussing idea with mentor.Setting up developing environment .Reading and studying documentation.

may 21 - july 9 (interim period)
will start coding.In this period of time i will work on authentication of polldaddy and importing polls from polldaddy.Creating possible configuration for polling options.Document work.

Mid term evaluation.
At the end of the interim period , we will have a working module , with the polling feature.

July 13 - aug 13 (interim period)
In this period of time, i will work on rating feature and its configuration. I would like to work on some custom styles of polling and rating other than the default styles provided by polldaddy. Testing and document my work.

Aug 13 - aug 20 (Pencil down)
In this period of time i will do code clean up and complete documentation.

Final Submission
At the end of final submission we have a complete module with all polling and rating feature.

Mentors :

Links :
A sandbox to this project is already created but their is no code in it. Here is the link.
Polldaddy api
https://github.com/nit3ch/Polldaddy
https://github.com/nit3ch/Polldaddy/wiki

Why i am the best person for this project ?

I am a final year student pursuing bachelor of engineering & technology in Information Technology at Engineering College Bikaner ,Rajasthan Technical University ,India. I am a FOSS enthusiast & familiar with FOSS from more than 2 years now.I am a member of Linux User group Bikaner .Contributed in organizing FOSS event RajasFoss from last two years at our college campus & delivered couple of talks.I blog at http://nit3ch.wordpress.com/ All my source code repositories are hosted online : https://github.com/nit3ch .I use irc, mailing lists, version control systems, such as git & host all my projects at github , use eclipse as my IDE hence I can start early with coding. I take Summer of Code as an opportunity to get engaged with Drupal Community as a contributor and continue this association even after Gsoc.

Sandbox project

Thanks to Petrov for providing me the code to start.So i have a rock solid platform to go with this project. [[http://drupal.org/sandbox/alexpetrov/1131108|Here is the link]] for sandbox project.

AttachmentSize
polldaddy.png20.84 KB
polldaddymock.png54.45 KB

Google Summer of Code 2012

Group organizers

Group notifications

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