Commit Graph

814 Commits

Author SHA1 Message Date
David Baumgold
c0a5171c75 Merge pull request #3466 from lduarte1991/lduarte-harvardx
Reconnecting Token Generator for Annotation Tool
2014-05-09 16:14:42 -04:00
Giulio Gratta
ba6b0cf4e7 Changes for Help Modal to work on Stanford Site
- moved zendesk endpoint to new condition
- some help modal styling
2014-05-06 12:06:04 -07: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
Jason Bau
f8c062b6ce lti 2.0 result service rest endpoint 2014-04-29 12:01:12 -07:00
lduarte1991
5ae1ca9685 Reconnecting Token Generator for Annotation Tool 2014-04-24 16:14:05 -04:00
David Adams
0f37ee6924 This makes the metrics tab "bars" clickable.
Clicking on any of the bars displays a list of students for that
  particular action (either opened the subsection or attempted the
  problem).
  Students are listed for the sub-sections.
  Students, grade and percent are listed for the problems.
  The on-screen list displays only the first 250 students with
  an overflow message if there are more students than that.
  The csv download lists all students.
2014-04-11 13:56:49 -07:00
Dave St.Germain
660244201f Refactored course_nav middleware to isolate the django-wiki hack,
remove unnecessary code, and clarify what it's doing.
2014-04-08 15:24:48 -04:00
David Baumgold
f5f7b77d4e Display error page templates, for testing purposes
This commit allows us to test the server error template by visiting `/500`. This
way, we can catch errors in our error templates, instead of having infinitely
recursing errors.
2014-03-25 14:55:14 -04:00
Jay Zoldak
1de5e565c3 Kill the perfstats module, which is unused 2014-03-18 15:47:36 -04:00
John Cox
8ecfa8679a Add common/djangoapps/third_party_auth; update pylintrc to allow test_* names.
third_party_auth contains a working settings mechanism, the start of the provider interface + 3 implementations (Google, Mozilla Persona, LinkedIn), and a stub for the auth pipeline. Modified existing lms settings files to use but deactivate the module.
2014-03-06 17:20:58 -08:00
Kristin Stephens
3881ffdc0d New tab (Metrics) in instructor dashboard
Metrics tab shows student data:
  -Count of students opened a subsection
  -Grade distribution per problem

for each section/subsection of the course.

Implemented for both the old and beta dashboard
Controlled by a feature flag 'CLASS_DASHBOARD'
Data is aggregated across all students
Aggregate data computed from courseware_studentmodule
2014-02-28 14:01:44 -08:00
Adam Palay
89795191cb Merge remote-tracking branch 'origin/release'
Conflicts:
	cms/envs/common.py
	lms/envs/common.py
2014-02-27 17:33:40 -05:00
Julia Hansbrough
a7ae152d9b Embargo Middleware feature
Adds configurable middleware in common/djangoapps/embargo that
allows specific courses to comply with US Export regulations by
embargoing students from specific countries, whilst simultaneously
allowing other courses to be freely open to all.
2014-02-27 08:37:58 -05:00
Calen Pennington
9126777ed7 Add test of local_resource_url in AcidBlock 2014-02-25 14:01:37 -05:00
thedeadparrot
b61649f9eb Refactor out new lang_pref djangoapp 2014-02-14 22:35:14 +00:00
Julia Hansbrough
cb6b52f890 wiring for language selector 2014-02-14 10:32:10 -05:00
daniel cebrian
7e2652b5a8 annotation tools
First set of fixes from the pull request

This does not include some of the testing files. The textannotation and
videoannotation test files are not ready. waiting for an answer on the
issue.

Deleted token line in api.py and added test for token generator

Added notes_spec.coffee

remove spec file

fixed minor error with the test

fixes some quality errors

fixed unit test

fixed unit test

added advanced module

Added notes_spec.coffee

remove spec file

Quality and  Testing Coverage

1. in test_textannotation.py I already check for line 75 as it states
in the diff in line 43, same with test_videoanntotation
2. Like you said, exceptions cannot be checked for
firebase_token_generator.py. The version of python that is active on
the edx server is 2.7 or higher, but the code is there for correctness.
Error checking works the same way.
3. I added a test for student/views/.py within tests and deleted the
unused secret assignment.
4. test_token_generator.py is now its own file

Added Secret Token data input

fixed token generator

Annotation Tools in Place

The purpose of this pull request is to install two major modules: (1) a
module to annotate text and (2) a module to annotate video. In either
case an instructor can declare them in advanced settings under
advanced_modules and input content (HTML in text, mp4 or YouTube videos
for video). Students will be able to highlight portions and add their
comments as well as reply to each other. There needs to be a storage
server set up per course as well as a secret token to talk with said
storage.

Changes:
1. Added test to check for the creation of a token in tests.py (along
with the rest of the tests for student/view.py)
2. Removed items in cms pertaining to annotation as this will only be
possible in the lms
3. Added more comments to firebase_token_generator.py, the test files,
students/views.py
4. Added some internationalization stuff to textannotation.html and
videoannotation.html. I need some help with doing it in javascript, but
the html is covered.

incorporated lib for traslate

fixed quality errors

fixed my notes with catch token

Text and Video Annotation Modules - First Iteration

The following code-change is the first iteration of the modules for
text and video annotation.

Installing Modules:
1. Under “Advanced Settings”, add “textannotation” and
“videoannotation” to the list of advanced_modules.
2. Add link to an external storage for annotations under
“annotation_storage_url”
3. Add the secret token for talking with said storage under
“annotation_token_secret”

Using Modules
1. When creating  new unit, you can find Text and Video annotation
modules under “Advanced” component
2. Make sure you have either Text or Video in one unit, but not both.
3. Annotations are only allowed on Live/Public version and not Studio.

Added missing templates and fixed more of the quality errors

Fixed annotator not existing issue in cmd and tried to find the get_html() from the annotation module class to the descriptor

Added a space after # in comments

Fixed issue with an empty Module and token links

Added licenses and fixed vis naming scheme and location.
2014-01-27 13:47:58 -05:00
Jason Bau
dfacbbdd69 Notifier re-subcribe via link
* fix assertPrefValid in tests to decrypt instead of compare
* rename unsubscribe -> set_subscribe
2014-01-22 09:54:27 -08:00
Jason Bau
8abfdc6309 add undo (resub) to landing page of forum unsub link 2014-01-17 18:07:33 -08:00
Jason Bau
1b2aa4543c add FAQ link to course_about error msg
use double-quotes, not single
2014-01-14 14:09:03 -08:00
Sarina Canelake
56a917cfb7 Fix 'JOBS' and 'PRESS' links at bottom of old site 2014-01-09 12:30:15 -05:00
Ned Batchelder
c37ab38599 Remove needless non-package non-specs from urls.py 2013-12-20 10:26:34 -05:00
Carson Gee
ccc87337d6 Add sysadmin dashboard
For seeing overview of system status, for deleting and loading
courses, for seeing log of git imports of courseware.  Includes command
for importing course XML from git repositories.

Added a lot of tests for additional coverage with some minor fixes
those tests discovered
2013-12-15 19:06:05 -05:00
David Baumgold
f3f4af8087 settings.MITX_FEATURES => settings.FEATURES 2013-12-03 15:34:55 -05:00
Ned Batchelder
c8a7b259ff Resolve conflicts merging master to rc/2013-11-21 2013-11-27 11:55:44 -05:00
Jay Zoldak
341875bb18 Remove code related to Pearson Testing Centers 2013-11-26 17:04:19 -05:00
Calen Pennington
6d613f9d4e Enable un-authenticated handler urls
Updates to depend on the latest version of XBlock, which includes
support for service-to-service (thirdparty) handler urls, which aren't
authenticated with a user (unlike handler requests coming from the
xblock client-side javascript).

Co-author: Ned Batchelder <ned@edx.org>
2013-11-26 16:29:34 -05:00
Calen Pennington
864d831ce3 Use XBlock handlers for handle_ajax in XModules
Adds xblock handler_url support to the LMS, and makes handle_ajax use
that code.

[LMS-230] [LMS-229]
2013-11-08 11:08:48 -05:00
Calen Pennington
da26ae2529 Remove lms/lib from sys.path in favore of using it as the module lms.lib 2013-11-08 11:08:48 -05:00
Don Mitchell
80c83f0b88 Merge pull request #1508 from edx/dhm/expect_json
Change expect_json to put parsed json in new attr
2013-10-29 14:02:32 -07:00
Don Mitchell
45453fae61 Change expect_json to put parsed json in new attr 2013-10-29 16:13:58 -04:00
Greg Price
54ad411078 Remove unused code 2013-10-28 11:58:43 -04:00
Adam Palay
1fc993ce18 add functionality to disable users
add middleware to detect students with disabled accounts

add tests
2013-10-16 16:57:11 -04:00
Renzo Lucioni
f1ccf1c06b Integrate split testing and LMS tabs experiments 2013-09-25 00:27:36 -04:00
David Ormsbee
48f867bd6b Merge branch 'master' into ormsbee/verifyuser3
Conflicts:
	lms/envs/common.py
2013-09-09 10:18:25 -04:00
David Ormsbee
78acd083be Merge branch 'master' into ormsbee/verifyuser3
Conflicts:
	common/djangoapps/course_modes/models.py
	lms/djangoapps/shoppingcart/models.py
	lms/djangoapps/shoppingcart/processors/CyberSource.py
	lms/djangoapps/shoppingcart/processors/tests/test_CyberSource.py
	lms/djangoapps/shoppingcart/tests/test_models.py
	lms/djangoapps/shoppingcart/tests/test_views.py
	lms/djangoapps/shoppingcart/urls.py
	lms/djangoapps/shoppingcart/views.py
	lms/envs/common.py
	lms/envs/dev.py
	lms/static/sass/base/_variables.scss
2013-09-04 10:58:30 -04:00
ichuang
00710f75d2 add CAS authentication via django_cas and mods to external_auth 2013-09-04 10:56:45 -04:00
Kevin Luo
907bf6e1b7 Add bulk email feature for instructors, with optout option
Adds a new Email link to the instructor dashboard for frontend interface to send
email to course members. Adds a feature flag ENABLE_INSTRUCTOR_EMAIL to toggle this.
Creates a new djangoapp bulk_email that handles this action by getting the recipient
list and batching the emails to different celery tasks to do the actual sending.
Requires lynx package to convert HTML email to plaintext. Handles SMTP errors by
retrying or falling through to the next email. Adds the option to opt out of course
specific emails in the user dashboard with an Email Settings link for each course.
Uses severable configurable settings with defaults. DEFAULT_BULK_FROM_EMAIL
specifies the from address for email. EMAILS_PER_TASK specifies the number of emails
each celery task takes on. EMAIL_HOST, EMAIL_PORT, EMAIL_HOST_USER,
EMAIL_HOST_PASSWORD, and EMAIL_USE_TLS for the SMTP email backend settings.

Co-authored-by: Akshay Jagadeesh <akjags@gmail.com>
2013-08-29 12:40:31 -04:00
Will Daly
4e7c309d56 Merge pull request #798 from edx/will/js-test-tool-squashed
Integrate js-test-tool into testing infrastructure
2013-08-27 14:09:13 -07:00
Calen Pennington
407b02b358 Centralize startup code, and execute in all contexts
Inspired by: http://eldarion.com/blog/2013/02/14/entry-point-hook-django-projects/
Moves startup code to lms.startup and cms.startup, and calls the startup
methods in wsgi.py and manage.py for both projects.
2013-08-27 12:12:20 -04:00
Will Daly
fe72730969 Integrate js-test-tool into testing infrastructure 2013-08-26 20:21:18 -04:00
David Ormsbee
8ee9a96766 quick experiment to force student verification urls to be active 2013-08-23 01:02:23 -04:00
Jason Bau
4d81383e0a added shopping cart list template, embedded form 2013-08-22 15:39:54 -04:00
Jason Bau
988a7a1fba initial commit of shopping cart and cybersource integration 2013-08-22 15:39:54 -04:00
David Ormsbee
91fab4579b Merge branch 'diana/verified-certs-payment' into ormsbee/verifyuser_func
Conflicts:
	common/djangoapps/course_modes/models.py
	lms/envs/common.py
	lms/envs/dev.py
2013-08-22 14:57:34 -04:00
David Ormsbee
1676fc31a5 Halfway state for course enrollment by mode 2013-08-21 16:21:53 -04:00
David Ormsbee
086f55643e Bare bones outline of ID verification templates 2013-08-21 16:21:52 -04:00
Jason Bau
9e56028091 added shopping cart list template, embedded form 2013-08-21 13:14:20 -04:00
Jason Bau
b7d73933b7 initial commit of shopping cart and cybersource integration 2013-08-21 13:14:20 -04:00
Jay Zoldak
e78edf8ef9 Rename MITX_SETTING AUTOMATIC_AUTH_FOR_LOAD_TESTING -> AUTOMATIC_AUTH_FOR_TESTING because it will be used for acceptance testing also. 2013-08-08 12:08:25 -04:00