gc2attend

A Python program which converts Blackboard Grade Centre files into attendence sheets.

The program runs on GNU/Linux and Windows and should run on Mac OS X too (not tested yet). Command line use provides better control but it also has GUI support (see Usage below).

License

I don't really care about licensing. Do what you want with it. But it would be decent to mention where it came from and to consider giving me royalties if you make money with it.

Requirements

You need to have the following software packages installed These are sufficient for command line use on Linux (and probably Mac), but on Windows, or if you want the GUI features, you also need

Installation

GNU/Linux
On most GNU/Linux distrubutions it should be easy to find the corresponding packages with your package manager. Then download gc2attend.py and make it executable.
Windows
  1. If you do not have Python yet, then use, i.e. downlload and run, one of their 32-bit installers here.
  2. Install the reportlab module with one of their installers here; again simply download and run it. Make sure you pick the one matching your Python version!
  3. Install pygtk. This is very simple with the all-in-one installer matching your Python version. Yes, simply download and run it, again.
  4. Finally, download gc2attend.py.

Usage

First you need to download a Grade Centre file from Blackboard:
  1. Select a course
  2. In the Control Panel (on the left) click 'Grade Centre' and then 'Full Grade Centre'.
  3. Move the mouse to 'Work Offline' (top right) and click 'Download'.
  4. Select 'Comma' as delimiter - this is crucial - and click 'Submit'.
  5. Click the 'Download' button and save the file on your computer.
Command Line
Here is what you get when you run gc2attend.py without arguments from a Linux shell, which should explain it all. Arguments in brackets are optional. Without outfile it will tell you where the output went.
Usage:  gc2attend.py infile [outfile[.pdf]] [-h header] [-v PDFviewer]

     -h header 
          user specified header/watermark

     -v PDFviewer  
          fires up the specified PDF viewer showing the output
Double Click
You can also just double click the file gc2attend.py and it will open a file chooser dialogue asking for a Grade Centre file and then tell you where the output went. This works well on GNU/Linux and Windows, and probably Mac as well.
Drag and drop
The most elegant solution is to create a launcher on your desktop, onto which you can drag and drop the Grade Centre file.

On GNU/Linux use a launcher command like /path/to/gc2attend.py %f -v acroread. Note the %f which will be replaced by file you drop onto the launcher.

On Windows, right-click on the desktop and under 'New...' choose 'Shortcut' whose target you set to something like this:

"C:\Path\To\python.exe" "C:\Path\To\gc2attend.py" -v "C:\Path\To\AcroRd32.exe"
You can find the correct paths by looking at the properties of your Acrobat Reader and Python launchers or menu entries.

TODO

Figure out how one can get the Grade Centre File without having to navigate through all those steps above. A simple, or rather convoluted, query string after having logged in would be nice, but I cannot work it out.