Page MenuHomePhabricator

Proposal for Newsletter extension in MediaWiki
Closed, DuplicatePublic


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.

-> 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.

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.

Event Timeline

ResheilA assigned this task to 01tonythomas.
ResheilA raised the priority of this task from to Needs Triage.
ResheilA updated the task description. (Show Details)
ResheilA added subscribers: ResheilA, Qgil.
Niharika renamed this task from Proposal of idea for MediaWiki extension of Newsletter(Gsoc) to Proposal for Newsletter extension in MediaWiki.Mar 17 2015, 1:10 PM
Niharika removed a subscriber: 01tonythomas.
Niharika added a subscriber: 01tonythomas.
Niharika added a subscriber: Niharika.

Please note that you are not building an independent web-app when we mean extension in Mediawiki. Please read[1] to know how we start with developing an extension. The initial commits has been already done over here[2]. You will be using the host MediaWiki database, with the new extension table - and using MW wrapper functions. Please complete some of the micro tasks ( still lacking patchsets ), and if you cant find anything - go for bugs under "Easy" project[3].


Okay. I will go through the following pages and let you know about it when I'm done.

I be submitting my proposal again a bit late but before the deadline... will it be okay?

@ResheilA, what do you mean by "again"?

If you want to, you can edit this task to improve your proposal any time before the deadline. It's perfectly okay.

The term deadline is hopefully globally understandable. :)

I will try to put up a timeline to do things and some mockups for better explanation.

I will try to put up a timeline to do things and some mockups for better explanation.

Also, please work on the micro-tasks mentioned in T76199, and work more on the implementation strategy more

In Description:

When the draft is ready to be published then publisher can send emails to all the subscribed subscribed users.

I think you should go through and and get an idea how the extension should notify subscribers. Sending emails to a million subscribers wont work out afaik.

I went through before I made the proposals. And also I read . The last year Gsoc project for mass message.

I went through before I made the proposals

In that it would be mentioned that we are using existing techniques like Echo and MassMessage to notify the users rather than plain mails. Both would create its own emails, so coping up with emails will be a problem now.

And also I read . The last year Gsoc project for mass message.

This was a proposal on altering the input list management of MassMessage using a content-handler mechanism - but I think you should be installing MassMessage and see how things work.

Can't we use just one of them ?
Like i found MassMessage better... so can't we use just that?