Luminus Filetree adds a filetree view option onto the existing default files view for quicker overview of files listing. It also eases file/folder downloads by allowing one click download.
This is inspired by the phased out IVLE filetree (the "Download Manager" button) and I just want to make life easier wherever I can 😊
- Toggle filetree using the checkbox
- 1-click download any files/folders
Download from latest release
For Firefox, download the .xpi file, drag and drop it into about:addons page.
- Add the extension id to the whitelist registry by running (download and double click) chrome-extension-whitelist.reg.
- Alternatively, add the extension id
dgogmggogdegmllmfjlkhcdfmecmkhac
toHKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\ExtensionInstallWhitelist
. - This is a workaround for Chrome's restrictions on installing extensions from external sources not from Chrome WebStore.
- Alternatively, add the extension id
- Download the .crx file.
- Go to chrome://extensions page and enable developer mode with the toggle on the top right.
- "Your browser is managed by your organization" shows up because of the registry workaround. Don't worry about it. Feel free to download the source code and package it yourself if you don't trust me lol.
- Drag and drop it into chrome://extensions page. A popup will appear. Click on Add extension.
- Follow instructions on installing using a preferences file, setting the
external_update_url
ashttps://raw.githubusercontent.com/davidchoo12/luminus-filetree/master/chrome-update-manifest.xml
. - Download the .crx file.
- Drag and drop it into chrome://extensions page. A popup will appear. Click on Add extension.
As the Luminus API doesn't provide authentication mechanism for third party apps as of 18 Aug 2019, the only way to access its services is through the official Luminus portal. So third party apps (like these homemade apps by students) have to go through the authentication flow from Luminus portal to gain access to the API.
This makes it difficult to create an autodownloader unless we somehow trick the API that we have authenticated through the portal. Also, authentication through the portal is short term (sessions expire in 8 hours I believe). So a hypothetical autodownloader will have to reauthenticate every 8 hours.
I used to use the filetree in IVLE a lot, allowing me to download many files easily and selectively.
- background.js is triggered when a user navigates to the files tab in Luminus
- background.js initiates content scripts and forwards access token (the Authorization HTTP header) to content.js
- content.js traverses the files and folders, while getting download links to generate a filetree data
- content.js adds html elements to the page and uses fancytree to display the filetree
- Icons to indicate new undownloaded files (like the red icons in IVLE)
- Download all button
- Expand/collapse all buttons
- Table/grid view to show metadata (date modified, author, etc) in columns
- Styling fixes (background and font colors) for working with dark reader extension
Feel free to submit feature requests through the issues tab.
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Learning sources