When viewing the sysadmin dashboard courses tag, we also search the git
repository directory in addition to the DATA_DIR to try and find
the course git repo to get hash, last commit, and last editor information
for each loaded course if available.
* API endpoint for certificate generation, an authenticated post with course
id requests that grading be carried out and a cert generated for
request.user in that course, using the usual grading and certificate
machinery (ie, it does not imply whitelisting, though whitelists and
blacklists will be respected)
- Logs each request as it comes in
- Calls xq.add_cert() and consequently, does grading synchronously on
this app host and then queues request for certificate agent.
- example usage:
```
curl --data "student_id=9999&course_id=Stanford/2013/Some_Class" http://127.0.0.1:8000/request_certificate
```
* Studio advanced setting added, "certificates_show_before_end", which
determines whether a course should permit certificates to be downloadable
by students before the coures's end date has passed.
- Modifications to dashboard view and templates to allow display of
certificate download links before course has ended.
(XXX: may declare failing students as failing before the course has ended.)
- To test, turn the setting on in a course which hasn't ended yet, and
force certificate generation for a student, then check their
dashboard.
Support incremental conversion of events from the old API to the new, in order to ensure the new system is working, enrollment events have been modified to make use of the new API.
Stanford had a problem a few times that certificate requests had
different values for the course display name and the course name printed
on the certificate and verification pages because of human error. This
passes the course display name on the queue to the certificate requests,
so that at least one place where the course name is reproduced (the
certificate agent's settings.py) can be eliminated.
In the current implementation if the path prefix contains the
wiki_path value it gets deleted. For example if the prefix is
'/courses/edx/math101/2014' and wiki_path is '101/' the final
prefix becomes '/courses/edx/math2014'.
LMS-2556
RFC 2822 states that line lengths in emails must be less than 998.
Some MTA's add newlines to messages if any line exceeds a certain
limit (the exact limit varies). Sendmail goes so far as to add
'!\n' after the 990th character in a line. To ensure that bulk
mail messages look consistent long lines are wrapped to a
conservative length.
LMS-1466