===Profile Information
Name: Priyanshu Varshney
Email: priyanshuvarshney6@gmail.com
Github Profile: https://github.com/priyanshuvarsh
Institute: Indian Institute of Technology Indore
Location: Indore, India
Time Zone : UTC +05:30
Typical Working Hours : [4 pm to 9 pm], [10 pm to 1 am] UTC +5:30
===Synopsis
The Forms made using the Page Forms extension for MediaWiki can be used to add and edit template calls in the pages. This project aims to add a special page that provides a calendar interface that allows creation and editing for pages that call templates that contain one or more date fields. This interface will be built with the FullCalendar JavaScript library. Furthermore, a similar notion will be used to make an interface for pages with Coordinates fields which will allow users to create and drag around markers on a map.
Mentors: @Yaron_Koren Erik Biegert @yashdeep97
**Why Wikimedia?**
I was introduced to Wikimedia last year by my college senior and I got to know about its effort to share information and knowledge with the world. I started looking deeper into MediaWiki and started writing code for which I had an incredible time working on the micro tasks and received a lot of guidance and feedback on my work from the mentors, and it was a great learning experience. Contributing to this project would be a great opportunity for me to be a part of this amazing community and develop features that will possibly be used by millions of people.
===Features and Implementation
**1. Allows users to edit multiple template calls simultaneously using a spreadsheet-like interface**
Create a special page that will allow a user to edit all the calls to a particular template with date fields. This Calendar interface will contain dates and each cell corresponds to various template calls for various events.
**2. Get ideal input type for each parameter**
Add support to get the input type for each template parameter(date, date-time) and display it accordingly in the calendar interface.
**3. Provide support for renaming pages**
Explore the page moving mechanism used in MediaWiki either by using functions from Special: MovePage or API: Move.
**4. Develop similar interface for Coordinates fields which will allow users to create and drag around markers on a map**
===Deliverables
| **Period** |**Assignment or Task to solve**|
|May 6 - May 26| **Community bonding period.** Get more familiar with the code base by fixing other issues in Page Forms. Become more active on IRC, Phabricator, and Gerrit, communicate with mentors, community members, and other participants and get to know more about their projects. |
|May 27 - June 13|Create **Special Page** for Calendar Interface to edit template calls: Develop code to set respective date cell(i.e. a cell in the calendar) implement save and edit logic.|
|June 14 - June 23|Develop code to get the **ideal input type** and discuss it with mentors |
|June 24 - June 28|**Phase I Evaluations**|
|June 29 - July 3|**Improve Interface:** Check for scalability and implement for more large data sets and adjust for any delays.|
|July 4 - July 15|**Develop logic for adding new events:** Write code to add new events using the improved Calendar Interface. Testing the new UI and fix bugs.|
|July 16 - July 21|**Functionality to rename events:** Fix bugs. Simultaneously develop the functionality to rename the new or existing events|
|July 22 - July 26|**Phase II Evaluations**|
|August 1 - August 2|Develop similar interface for pages with Coordinates fields which will allow users to create and drag around markers on a map |
|July 27 - August 25|Buffer time: Fix any issues left and make sure the documentation for code written is thorough.|
|August 25 - September 2 |Mentors submit final student evaluations|
|September 3|**Final results of Google Summer of Code 2019 announced**|
===Participation
I’ll use GitHub to publish my source code. I’ll communicate my weekly progress with my mentors via email. In case I get stuck, I’ll reach out to them via email, IRC and hangout.
===About Me
Tell us about a few:
I am an undergraduate, third-year student, pursuing a Bachelor of Technology in Electrical Engineering from Indian Institute of Technology, Indore. Despite my circuital branch, my huge interest in programming allowed me to take online programming courses in OOPS, Web-Development, Machine learning. I have participated in various hackathons bagging good ranks in all of them.
===Past Experience
My GitHub link is [[ https://github.com/priyanshuvarsh | this ]]. Some of my major projects are:
# [[ https://github.com/priyanshuvarsh/Videofy | Videofy ]] It's a tool that takes an image based content article and automatically generates a motion video out of it. This was made in WittyHacks hackathon organized by WittyFeed. My team secured the first rank in this hackathon.
# [[https://github.com/priyanshuvarsh/crop | Crop]] I made a Mozilla/chrome extension for the **The Telangana Building & Other Construction Workers Welfare Board ** that takes the image from the webcam that is used to fill their registration forms. The webcam opens and takes the picture and I provided the feature of cropping the images as per the user requirement.
===Contributions to MediaWiki:
# T188414 : Replace Dynatree JS library with Fancytree in Page Forms
# T217518: Page Forms: Fix "tree" input type for Foreground skin
# Rating type for Cargo Extension (To be updated, still in progress) Link : [[ https://gerrit.wikimedia.org/r/#/c/mediawiki/extensions/Cargo/+/497847/ | here ]]
===Any Other Info
Mockups to be updates