All data displayed in the dashboard comes from the view and the displaying of the data is done in dashboard.html.
This alert will only displays when there are exploit model entries that have download_failure marked as true. It will show the number of models with this failure as well as link to the admin page displaying the models with this failure so that they may be investigated. The view gets this data via a simple query to count the number of exploits that have download_failure marked as True.
Card 1 or the "Exploits Added in the Last 24 Hours" card displays a count of exploit models saved to the database within the last 24 hours. Each model has a datetime created, this is used with a 24 hour time delta to create a query to get all exploits made within the last 24 hours.
Card 2 or the "Exploits Added in the Last 7 Days" card displays a count of the exploit models saved to the database within the last 7 days. The query for the data this card displays is made in the same way as Card 1 but with a time delta of 7 days.
Card 3 or the "Total Exploits Collected" card displays a count of all of the total number of saved exploit models in the database. The query for this data is just a simple count query.
Card 3 or the "Breakdown by Source" card displays some simple statistics for each scraped source. It will show the number of exploit models per source and the source's representation within the database.
The displayed graph is done through highcharts using data retrieved and built by the view. It displays a graph of scraped entries per source by month across the current year.
Editing the display can be done by making changes to the dashboard's html file which is a django template and can therefore take advantage of django's template language.
To display new info on the dashboard you'll have to add the gathered data to the context through the dashboard's view. Once you have gathered the data you wish to display you'll need to add a way to display this data into the dashboard's html file.
