Google Summer of code 2015
Proposal for Wikimedia for creating an extension for Newsletter.
I have attached resume with this doc.
How I understand this project?
The project is to make a newsletter extension for MediaWiki. The aim of this project is to provide user a easy way to excess information in a more sorted manner.
The ultimate aim is to create a successful extension in MediaWiki for newsletter that can create newsletters to which users can subscribe and when new newsletters are
released the subscribed users will be informed about it through an email by publisher.
1.Publisher Group
-> A newsletter will be created, featured, demoted, and closed by the publisher.
-> A newsletter will be drafted by the publisher and until it is being published it can be edited just like simple wiki pages.
Also this draft can be read by everyone so who so ever feels that there is a need for some change in the draft then they can get involved and ask for changes.
-> * The publisher will access to certain user to edit the draft. Only those users will have the access to edit the content of the page.
-> When the draft is ready to be published then publisher can send emails to all the subscribed subscribed users.
2.Readers
-> A logged in user has to just type his email address and click on subscribe. He/she will be then notified about the new newsletters.
User as shown in the mock up can select the way to get notification. The number of subscriber will be open to all.
3. The newsletter
-> The newsletter will contain of a main page that will give some intro about the newsletter. There would be another page which will be the current issue page.
-> The previous newsletter version could also be seen by the user.
Database :
[Newsletter_text table] ----------------------------------------------> Contains all the text of the newsletter [Newsletter_subcribtion] ----------------------------------------------> Contains all two columns [Users_id][Newsletter_id][Blocked]
FrontEnd :
Create a newsletter[Button] ---> A simple page which has a list of newsletter created by the admin. The admin can create a issue using a create a issue button. Available Newsletters ---> It has a list of all the available news letters. Here the user can click and see the news letter name and a small intro about it.
Technicality:
1.) Setup file : will contain a the link to the files of the newsletter extension and will also include a statement or a command which the user needs to add newsletter extension to their mediawiki and will also define the hooks and tags needed. And will also create the database table required.
2.) Execution file : This file will contain the markup and user authentication thing, skin settings, and most importantly special pages for admins.
3.) Localization file : To make it multilingual will can add this file with some json part. This file also help us adjust our extension to older version of mediawiki.
Flow :
On subscription a particular user can select what way he or she wants to get notified about the new newsletters. The admin is the final person who decides what content is to be shown. Publishers of the post can add and tag editors who will have authority to change the content within the draft. Once the draft is ready the publisher publish it and send out mails and notifications to everyone who has subscribed to their newsletter.