Commit Graph

114 Commits

Author SHA1 Message Date
Carlos Andrés Rocha
276ea2fe84 Fix tests not using ModuleStoreTestCase
Some tests test were using `CourseFactory` buy not deriving from
`ModuleStoreTestCase`, introducing a course leaks that broke other
unrelated tests.
2014-09-17 11:16:55 -04:00
Usman Khalid
446270c0ff Moved GeneratedCertificates.MODES back inside model.
LMS-6631
2014-07-01 19:46:51 +05:00
Usman Khalid
6a3d5eb079 Do not refund student if a certificate entry already exists for them.
LMS-2920
2014-07-01 16:29:07 +05:00
Han Su Kim
858f3ae5c9 Merge pull request #4075 from edx/han/regenerate_user
Transition to Oqaque Keys
2014-06-13 11:39:56 -04:00
Han Su Kim
8fdec439ee Changing over imports to opaque_keys.edx 2014-06-13 09:36:40 -04:00
Han Su Kim
0b93c5a827 Squashing commits,
Squashing commits

Transition to Oqaque Keys

Bug fixes

Fixing regenerate_user
2014-06-12 18:24:47 -04:00
Sarina Canelake
7e36c35043 Merge branch 'release' 2014-06-11 21:30:05 -04:00
Calen Pennington
f6ea16223b Allow users that have unregistered from a verified course to re-register.
Fixes LMS-2830
2014-06-11 12:37:53 -04:00
Diana Huang
baf0cee0be Fix gen_cert_report to use CourseKeys. 2014-06-09 15:17:13 -04:00
Joe Blaylock
277dcb1113 Bugfix certificates request queue HTML flattening 2014-06-06 09:31:46 -07:00
Julia Hansbrough
6ccb11f03e Change Location, CourseLocator, etc to reference opaque-keys library 2014-05-30 20:32:38 +00:00
Calen Pennington
cfcbdc0145 Move to OpaqueKey implementations from the external library
[LMS-2757]
2014-05-29 17:03:35 -04:00
Diana Huang
019374a41e Fix gen_cert_report to use CourseKeys. 2014-05-27 16:13:45 -04:00
Sarina Canelake
d1672e31f7 Opaque-keys: fix pylint violations 2014-05-24 19:36:09 -04:00
Sarina Canelake
265fa826ca Opaque-keys: fix pylint violations 2014-05-23 14:23:12 -04:00
Calen Pennington
cd862b3253 Merge remote-tracking branch 'edx/master' into opaque-keys
Conflicts:
	cms/djangoapps/contentstore/tests/test_contentstore.py
	cms/djangoapps/contentstore/views/component.py
	cms/djangoapps/contentstore/views/item.py
	cms/djangoapps/contentstore/views/preview.py
	cms/djangoapps/contentstore/views/tests/test_container.py
	cms/static/js/spec/views/unit_spec.js
	cms/static/js/utils/module.js
	cms/templates/container.html
	cms/templates/studio_vertical_wrapper.html
	cms/templates/studio_xblock_wrapper.html
	common/djangoapps/student/views.py
	lms/templates/notes.html
	lms/templates/textannotation.html
	lms/templates/videoannotation.html
2014-05-22 10:52:00 -04:00
Calen Pennington
4c3c8a9a2e Fix certificate requests 2014-05-21 16:10:16 -04:00
Han Su Kim
263cf647ad Added totals for different student tracks
sorted the output, easier to read

Add is_active filter to only generate for students enrolled

Adding back total_enrollment

Removing active filter

Certs will generate for all users in the course, not just those "active"

Typo

Renaming headings to make more sense

Renaming variables to match headings
2014-05-19 10:10:27 -04:00
Calen Pennington
c72b0bb293 Resolve merge conflicts relative to master 2014-05-09 15:31:20 -04:00
Calen Pennington
155ffe37ca Merge remote-tracking branch 'edx/master' into opaque-keys-merge-master
Conflicts:
	cms/djangoapps/contentstore/views/item.py
	cms/djangoapps/contentstore/views/tests/test_container.py
	cms/djangoapps/contentstore/views/tests/test_tabs.py
	common/lib/xmodule/xmodule/modulestore/mongo/draft.py
	lms/djangoapps/certificates/management/commands/gen_cert_report.py
	lms/djangoapps/certificates/queue.py
	lms/djangoapps/certificates/views.py
	lms/djangoapps/courseware/module_render.py
	lms/djangoapps/courseware/tests/test_module_render.py
	lms/djangoapps/instructor/views/api.py
	lms/djangoapps/instructor/views/instructor_dashboard.py
	lms/djangoapps/instructor/views/legacy.py
	lms/djangoapps/shoppingcart/tests/test_models.py
	lms/djangoapps/verify_student/views.py
2014-05-09 15:29:32 -04:00
Calen Pennington
cd746bf8e5 Make course ids and usage ids opaque to LMS and Studio [partial commit]
This commit adds the non-courseware lms/djangoapps and lms/lib.

These keys are now objects with a limited interface, and the particular
internal representation is managed by the data storage layer (the
modulestore).

For the LMS, there should be no outward-facing changes to the system.
The keys are, for now, a change to internal representation only. For
Studio, the new serialized form of the keys is used in urls, to allow
for further migration in the future.

Co-Author: Andy Armstrong <andya@edx.org>
Co-Author: Christina Roberts <christina@edx.org>
Co-Author: David Baumgold <db@edx.org>
Co-Author: Diana Huang <dkh@edx.org>
Co-Author: Don Mitchell <dmitchell@edx.org>
Co-Author: Julia Hansbrough <julia@edx.org>
Co-Author: Nimisha Asthagiri <nasthagiri@edx.org>
Co-Author: Sarina Canelake <sarina@edx.org>

[LMS-2370]
2014-05-08 12:09:23 -04:00
Han Su Kim
8bcb70b8bf Filter just downloadable certs for report 2014-05-05 13:45:07 -04:00
Han Su Kim
4b49159205 Adding additional fields for certificate mode 2014-05-05 13:20:36 -04:00
Han Su Kim
36865b8447 flake8 cleanup 2014-05-05 11:31:39 -04:00
Han Su Kim
b8541db176 Renaming enrolled to active 2014-05-05 11:16:20 -04:00
Joe Blaylock
ae8847cd6e Certificates: URL endpoint for cert gen
* 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.
2014-05-02 14:34:21 -07:00
Joe Blaylock
c5834eb6a2 Certs: pass course name on queue
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.
2014-04-29 15:35:00 -07:00
John Jarvis
ff8c14e88d Only display active users for the certificate report
Also removes the unnecessary pre-fetch.
For certificate generations we will continue to generate certs for
both active and inactive users.

For the report we only display active users since it was confusing
due to the instructor dashboard only displaying active users.
2014-04-08 13:30:53 -04:00
Diana Huang
9b3d68c2b9 Add in metric tracking to xqueue.
Covers external grading and certificates.
2014-03-31 16:50:23 -04:00
Joe Blaylock
b8b86527b0 Certificates: Additional flags for regenerate_user
* -G allows explicit setting of grade condition (e.g., a string such as
  'Distinction', 'Pass', 'F', 'B') for the certificate, regardless of
  grader output for the user.
* -T allows explicit request of a particular certificate template to be
  applied to a given user's certificate regeneration, i.e.:
    -T doctor_distinction.pdf
  to generate a certificate of distinction for doctors.
2014-03-18 10:57:10 -07:00
Don Mitchell
81a92e4bfc Consolidate course_id triple parsing 2014-02-24 11:45:59 -05:00
Frances Botsford
6c7d715e0e re-verification dashboard styles 2014-01-31 21:48:35 +00:00
Julia Hansbrough
85030467ed Skeleton for follow-on verification behavior
Quick-and-dirty end-to-end flow, functional for at least the case of one course in need of re-verification.

Ready for design to start taking a look; still needs tests and code cleanup
2014-01-31 21:08:24 +00:00
Joe Blaylock
300501b138 Certs - bugfix cert_whitelist output
* output after cert_whitelist -a or -d purported to be the whitelist entries
  for the requested course, but in fact were all of the entries in every
  course. This commit fixes that.
2014-01-17 17:43:09 -08:00
Diana Huang
8d564f219d Use Choices to track possible modes. 2013-11-22 11:22:49 -05:00
Diana Huang
696f1df043 Pass through the certificate mode correctly. 2013-11-20 17:05:57 -05:00
Diana Huang
d72b61a5b0 Use class methods to find the enrollment mode. 2013-11-19 17:30:27 -05:00
Diana Huang
1656876699 If student has not passed verification, issue an honor code cert.
Also, display a message on their dashboard.
2013-11-19 17:12:49 -05:00
Diana Huang
fc46efb6c7 Fix bug in grabbing course enrollments.
LMS-1475
2013-11-19 14:03:05 -05:00
John Jarvis
2fed61814a fixing some typos 2013-11-15 13:35:55 -05:00
John Jarvis
2a31e3567e sending template pdf with certificate request 2013-11-15 13:35:54 -05:00
John Jarvis
f0b074b880 also adding insecure option to regenerate_user command 2013-11-01 12:05:59 -04:00
John Jarvis
ff8c58f5ee adds a new option to ungenerated_certs to use http in the callback url 2013-11-01 11:49:12 -04:00
Joe Blaylock
9e76c6120b Merge pull request #1286 from edx/jrbl/certs-single-user
Certificates: Add regeneration command
2013-10-24 11:59:32 -07:00
Joe Blaylock
5b3af20ba1 Pass student grade label to certification process 2013-10-15 15:02:16 -04:00
Joe Blaylock
8ef8fc8281 Certificates: Add regeneration command
* Adds regenerate_user command, which lets you run certificates for one
  particular user in one particular class, regardless of whether they
  have a pre-existing certificate.
2013-10-09 12:24:35 -07:00
Calen Pennington
7d79f4fe37 Move mitxmako initialization to a startup module, called by lms.startup and cms.startup for both management commands and when run via wsgi
[DEVPAIN-7]
2013-08-28 10:56:07 -04:00
Adam Palay
2b40462263 convert all datetime.now() to datetime.now(UTC) 2013-07-22 17:39:11 -04:00
Ned Batchelder
be4d5f3228 Merge pull request #292 from edx/ned/remove-pointless-addition-tests
Remove pointless addition tests
2013-06-27 13:31:36 -07:00
Ned Batchelder
a484224ef5 Remove pointless addition tests 2013-06-27 16:27:39 -04:00