User:Chughakshay16/dashboard

This page contains details about DASHBOARD. DASHBOARD would be implemented with the help of a special page. It would help admin monitor the conference. URL used for the dashboard would be something like http:// //Special: Dashboard/conferenceName Where the conferenceName signifies the title of the conference ,so the dashboard would be rendered with just the details of that conference.

Workflow
Basic workflow is as follows:- 1. call ConferenceManager::getConferenceFromTitle($title) - this function will instantiate the Conference(model) object with all the properties from the conferences table.Here $title is the value which is passed as $par in the url( http://...../Special:Dashboard/ ) 2. call EventManager::getEventsForConference($conferenceId) - this will instantiate an array of event objects from the events and the locations table. 3. similarly call the other manager classes and get the relevant arrays for ConferencePage,ConferenceAccount and other model objects. 4. then set all the variables of the Conference object with the arrays fetched in step 3. 5. now we have all the details for the conference 6. create HTML for the dashboard and fill it with the help of Conference object 7 output the HTML using $out->addHTML 8. since there are multiple tabs on the Dashboard, so at one particular time only a specific portion of HTML will be displayed( and the rest of the job of switching HTML would be done by js and jQuery) 9. any subsequent changes made by the admin on the Dashboard will be done by the ajax calls to the API modules.

Dashboard UI
These are all the tabs that DASHBOARD would display :- This would list all the active pages running under a particular conference. Here admin could add / delete these pages, or even could modify the title and the namespace for those pages. List of pages would be provided in links which would take the admin to those specific pages. These pages could also be modified from their respective pages where they have specially dedicated action tabs such as Delete and Move. Basically all the pages connected with this conference are fetched from the Conference_Pages table.More details on this table can be found on this page.
 * PAGES

It will return the list of all the locations added by the admin during the Conference Setup process. There is a table in the database Conference_Locations dedicated to store the locations/rooms for the conference. Here list of events put up admin in the Conference Setup process would also be displayed. Both the events and the locations can be modified on this page.
 * LOCATIONS AND EVENTS

This page is similar to what we would have in a Conference Setup process ( part two). Here new organizers could be added and old ones could be removed from the organizers category.By default organizers are placed in different categories such as Sponsorship Team, Software Team.. and many more. So for every organizer a category and a post would also be defined by the admin in this page.Conference_Organizers table is present in the database which maintains the records for the organizers.
 * ORGANIZERS

This page shows the activity for all the active pages. Metrics such as how many times a page is viewed, how many times it was modified are displayed on this page.By default this activity feature is activated for all the conference pages, which can obviously be changed by admin at any time from here itself.No new tables are created by this extension for this feature, data is just fetched from the Mediawiki tables such as recent page, recent changes.
 * ACTIVITY

This would give admin a list of all the submissions made for this conference by different speakers. Separate submission(wiki) pages would also be created, and each submission page would display the data put up by the speaker. A separate table Conference_Submissions would be present in the database just for storing this information. Here attendees means the people who have registered for this conference via the registration forms. All the attendees information would be pulled from tables user, Conference_Registrations and Conference_Accounts.
 * SUBMISSIONS
 * ATTENDEES

This would be a read-only page, admin cant modify the content on this page. It would display a list of all the speakers for this conference and their corresponding proposal information would also be shown.Table named as Conference_Speakers would store all the relevant information about the speakers.
 * SPEAKERS

If voting feature has been enabled for this conference, an admin would get to see all the voting stats. Otherwise he would be provided with settings to set up one.
 * VOTING STATS

This tab option would display the list of all the scholarship applicants for this conference. There wouldnt be any wiki pages for different scholarship applicants, this information would be kept private to the admin.
 * SCHOLARSHIPS

It would show the names of all the people who have shown interest in sponsoring for this conference along with the other relevant details.
 * SPONSORS