Schoology-improved
Using the Schoology API to do things you can’t using the web version
Schoology is a powerful Electronic Learning Environment. It helps you to manage materials, students, courses, etc. Still, some functionality is lacking.
The Schoology SDK uses PHP to access Schoology objects. The Schoology Support site offers good documentation, but lacks example code.
This project aims to solve these problems.
Project Goals
Grading groups
Notably missing from Schoology is the ability to import and export grading groups. The class methods for groups will allow you to create, view and export grading groups.
Attachments
Another major functionality missing in Schoology is a way to download all submissions from one student. You can now search for a student and download their submitted attachments.
For any additional information please visit http://developers.schoology.com/
About the code
The basic functionality is in a class called ‘Course’. You will be able to retrieve information regarding the course with the methods in this class.
How to use the project
Step 1: prerequisites
You will need a server capable of running PHP. It will also need ZipArchive enabled, which is available as of PHP 5.2.0
Step 1: setup folders
- Download the files from this project (schoology sdk is included)
- Upload the files to a folder on your web server
- Make sure there is write access to this folder from within PHP (on linux: chmod 755
)
Configuration
You should start by copying all files to your server. Then, in the config directory create two files:
.api_key
.api_secret
In these files put your key and secret resepectively. Just the string, nothing else. The files may be hidden from view, so make sure to enable view hidden files (e.g. in FTP or SCP program).
Note: there is a method in helpers.php named ‘formatId’ which is specific for the school this was made for originally. You may need to change this function.
Prepare import
The import of groups is done by setting up a PHP array in groups_import.php
``. This is only temporary, the aim is to import directly from a csv file. Ideally a schoology formatted export file can be used.
Run import
Now it’s time to run the import by opening your browser and accessing …/groups.php?sectionId=…&action=create
Download submissions
You can see all groups and links to their submission pages by accessing …/groups.php?sectionId=…&action=matrix