josephredfern / cm2301-9 Goto Github PK
View Code? Open in Web Editor NEWCM2301 Group Project - Decentralised Online Learning System
CM2301 Group Project - Decentralised Online Learning System
Video thumbnails should be random upon page loading, currently the first in the list is being used.
Although to do this we need to create multiple thumbnails for a single video... shouldnt be too hard to do!
When writing code for our logging system, we need to make sure that certain database errors aren't saved to the DB, as this could cause an infinte loop.
For example: If the MySQL Database was down, and our logging system attempted to log this to the Database as an error, then it would cause a database error (as the MySQL DB is down), which would in turn cause another database error as this error was logged... etc etc. You get the picture.
But yeah, we need to make sure that our Error Logging system is robust.
Might be nice... not urgent
A bootstrap looking javascript text editor should be implemented across the site for creating descriptions with markup. e.g
A lecturers needs to be able to add a coursework task
Lecturers need to be able to add/remove/edit lectures, and their associated videos/attachments.
Completion of this milestone relies on the Attachments Milestone being completed.
For a lot of data tables and pages we have no pagination, this potentially could be an issue in the long time, although this is of low importance for now.
Rest of remaining django models need to be written and documented for https://github.com/JosephRedfern/CM2301-9/blob/master/CM2301/Learn/models.py
When we started the project, we stupidly thought that everything was all linked together. In hindsight, this was wrong.
We can divide our system into several apps:
etc etc
Right now, it's all shit. We should fix it.
We need to come up with a layout for our URLs. i.e:
/module/lecture/lecturetitle
for all features
When video files are uploaded they should be saving to /videos/original the the uuid of the video object the file belongs to, this will make it easier to identify and keep everything unique!.
An administrator needs to be able to add users - both students and lecturers.
we need to work on the browser based front-end for LCARS rather than Django Admin
Allow users to upload/download tests as XML. Could be implemented along side a gui.
Currently if you delete a revision then add another then it fucks the revision numbers.
A user needs to be able to submit coursework.
Rest of the group needs to know how the system works so far.
When counting the total of multiple fields we shouldn't be fetching the entire data set, for example calculating the total size of an attachment we should be using djangos aggregate query.
https://docs.djangoproject.com/en/dev/ref/models/querysets/
Then the load is on the database.
Lecturers need to be able to download and mark users coursework submissions.
When converting videos it seems the progress bar jumps back when one video finishes converting, this does not affect functionality so is relatively cosmetic. Probably a simple case of making sure the _update_progress() method is exiting the loop at the correct time.
When adding a revision to the attachment, if the filename is different it simply raises an unhandled exception. Errors need to be returned to the client.
We need to be add users and assign roles (Lecturer/User/Administrator etc)
With certain codecs if ffmpeg has to deal with an odd number then the encoding will not run, this can be avoided by ensuring when dimensions are parsed the scaled opposite is calculated and made even.
Lecturers need to be able to add lectures.
When handling data between initilialising and submitting a form its tricky to add data, because of that I made certain fields in Revision and Attachment blank=True and null=True, this should be removed and editable=False used instead.
This should stop validation from bein fucked
We are currently using unmanaged threads to convert the video. We should instead be using a task queue to manage this.
We can use Rickshaw for Progress Graphing, and it will be dead good.
It would be beneficial for a user to be able to export their upcoming deadline/test dates to an iCal file/stream, or something similar.
Could use an ical python library like this.
If videos are uploaded directly to the site then they will need to be converted locally or use a conversion api to a third party provider.
Line 132 of the models file:
The attachment attributes don't include a file_path variable, where does it get the file from? Is it inherited and I'm missing something?
@JosephRedfern needs to stop being a lazy prick and actually generate some documentation using either Sphinx or Doxygen. Some other wank excuse for a documentation generator could also be used.
Lecturers need to be able to add attachments to lectures and modules.
Django Admin need resolving with HASH generator
Videos could be stored in a variety of ways, potentially linking to youtube or another video hosting provider. However this does reduce control over the videos.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.