* removed package-lock.json from repo
* added package-lock.json to .gitignore
* fixed typo, linux compatbility
* added quotes to url
* check if attempt is None
* reverted removing package-lock.json
Co-authored-by: Matthew Foran <matthewjforan@gmail.com>
* fixed bug with loading cred yaml and added to gitignore
* added single file dependency
* Begun adding support for singlefile, added to classes and created new input. Also cleaned up code a bit.
* Created singlefile.py to download webpages.
* added function to download course home page.
* Added course home page downloading.
* Added downloading of assignment pages.
* Added downloading for the rest of the information
* Update README.md
* Update README.md
* Added checks to prevent redownloading of a page.
* Fixed bug with trailing periods, Fixed folder naming bug, Fixed bug where pages were being downloaded to cookies folder.
* Fixed some small issues, fixed comment and changed module folder name back to title
* Update README.md
* Fixed makeValidFilename back to makeValidFolderPath
resolves https://github.com/davekats/canvas-student-data-export/pull/7#pullrequestreview-852487782
Treat submissions from the list of submissions from every student the same as submissions from a single individual user (student) so they are downloaded the same and processed. Before, it seems like it just didn't care to download submission attachments for single-student-account-only individual submissions. Now, handle both types the same. This means that there are a lot of single-element lists of submissions in the final output if the user is a student, but it makes the code simpler. Could clean up those lists later.
Also, display the different types of errors in fetching submissions.
1. Fixes issues where the program crashes because things like assignment names aren't valid filenames.
Makes the following improvements:
2. Stores assignment files in an "assignments" subfolder.
3. Doesn't make attachment directory if there are no attachments.
4. Organizes course files inside subfolders as created on Canvas (requiring the makeValidFolderPath function to sanitize the path but leave slashes)