Commit Graph

1811 Commits

Author SHA1 Message Date
Will Daly
47b81c9274 Allow users to submit initial verification at in-course checkpoints.
* Combine verification and reverification photo submission end-points.
* Combine verification and reverification Backbone models.
* Allow deletion of verification status in Django admin.
* Initial verification from a checkpoint is associated with the checkpoint.
* Fix critical bug in which an invalid link was sent to Software Secure
  for the photo ID image of reverification attempts.
2015-07-27 19:32:18 -07:00
muzaffaryousaf
38ef22b8a2 Using youtube api (v3) instead of v2 to get the video duration .
TNL-2413
2015-07-24 17:03:46 +05:00
chrisndodge
5e195c8eeb Merge pull request #8962 from edx/cdodge/proctoring-studio
Integrate timed and proctored exam authoring into Studio
2015-07-23 15:53:17 -04:00
Chris Dodge
3748119961 Integrate timed and proctored exam authoring into Studio 2015-07-23 14:43:17 -04:00
Ahsan Ulhaq
06b085f8b4 credit eligibility and payment receipt email
ECOM-1796
ECOM-1525
2015-07-22 12:34:38 +05:00
cahrens
ad16f9f968 Optimize search usages. 2015-07-20 14:24:30 -04:00
Peter Fogg
1ceb8a0d66 Optimize finish_auth_factory.
TNL-2602
2015-07-20 13:59:55 -04:00
Andy Armstrong
7b5f9b8009 Implement RequireJS Optimizer in the LMS
TNL-2487
2015-07-20 13:59:54 -04:00
Max Rothman
c97314413b Merge branch 'release' into release-merge-test
Conflicts:
	lms/djangoapps/commerce/urls.py
	lms/djangoapps/commerce/views.py
2015-07-17 17:42:03 -04:00
Adam
2735b2b5bb Revert "Decorated instructor dashboard with sudo_required." 2015-07-17 12:11:38 -04:00
Awais Jibran
2d19eafa7c Merge pull request #7404 from edx/waheed/plat407-decorate-instructor-dashboard-with-sudo-required
Decorated instructor dashboard with sudo_required.
2015-07-16 21:12:43 +05:00
Tasawer
1ded8b546c Update code of get_eligibility api.
ECOM-1858
2015-07-16 12:52:16 +05:00
Waheed Ahmed
bc052db1ee Added DjangoSudo functionality for instructor dashboard and course team page 2015-07-16 11:14:11 +05:00
Clinton Blackburn
6088bc3401 Pulling JWT settings from envs tokens
XCOM-281
2015-07-15 16:06:17 -04:00
Sarina Canelake
376fe0a57c Remove outdated Analytics scripts, code, and css 2015-07-15 11:11:10 -04:00
Sarina Canelake
9b905ae729 Remove everything gated by ENABLE_INSTRUCTOR_ANALYTICS flag 2015-07-15 11:11:09 -04:00
zubair-arbi
10bfcb83a0 add url link for credit checkout page
ECOM-1524
2015-07-15 00:31:15 +05:00
Peter Fogg
7bc333d8c5 Remove duplicated Teams app setting. 2015-07-13 15:49:24 -04:00
AlasdairSwan
51deec380e ECOM-1661 removed nav links for logged out states
Add context for navigation states
added find course to dashboard sidebar and included check for context that Will adds in PR
removed nav_course_search context due to design change so replaced with nav_hidden
Removed rwd_header.js and all references as no longer being used.

Wrapped Find Courses in dashboard sidebar in if statement
2015-07-13 15:33:00 -04:00
asadiqbal
1782f72555 Students can share their certificate view on Twitter 2015-07-13 12:40:45 +05:00
Nickersoft
2d13e9e886 LMS now passes JWT issuer and expiration date to ecommerce API client 2015-07-09 15:06:54 -04:00
David Ormsbee
472de1a5de Merge pull request #7288 from edx/ormsbee/grade_query_caching
Grading Performance Work
2015-07-09 12:07:52 -04:00
David Ormsbee
79de77cf95 Optimize grading/progress page to reduce database queries (cache max scores).
The progress page did a number of things that make performance terrible for
courses with large numbers of problems, particularly if those problems are
customresponse CapaModule problems that need to be executed via codejail.

The grading code takes pains to not instantiate student state and execute the
problem code. If a student has answered the question, the max score is stored
in StudentModule. However, if the student hasn't attempted the question yet, we
have to run the problem code just to call .max_score() on it. This is necessary
in grade() if the student has answered other problems in the assignment (so we
can know what to divide by). This is always necessary to know in
progress_summary() because we list out every problem there. Code execution can
be especially slow if the problems need to invoke codejail.

To address this, we create a MaxScoresCache that will cache the max raw score
possible for every problem. We select the cache keys so that it will
automatically become invalidated when a new version of the course is published.

The fundamental assumption here is that a problem cannot have two different
max score values for two unscored students. A problem *can* score two students
differently such that they have different max scores. So Carlos can have 2/3 on
a problem, while Lyla gets 3/4. But if neither Carlos nor Lyla has ever
interacted with the problem (i.e. they're just seeing it on their progress
page), they must both see 0/4 -- it cannot be the case that Carlos sees 0/3 and
Lyla sees 0/4.

We used to load all student state into two separate FieldDataCache instances,
after which we do a bunch of individual queries for scored items. Part of this
split-up was done because of locking problems, but I think we might have gotten
overzealous with our manual transaction hammer.

In this commit, we consolidate all state access in grade() and progress()
to use one shared FieldDataCache. We also use a filter so that we only pull
back StudentModule state for things that might possibly affect the grade --
items that either have scores or have children.

Because some older XModules do work in their __init__() methods (like Video),
instantiating them takes time, particularly on large courses. This commit also
changes the code that fetches the grading_context to filter out children that
can't possibly affect the grade.

Finally, we introduce a ScoresClient that also tries to fetch score
information all at once, instead of in separate queries. Technically, we are
fetching this information redundantly, but that's because the state and score
interfaces are being teased apart as we move forward. Still, this only
amounts to one extra SQL query, and has very little impact on performance
overall.

Much thanks to @adampalay -- his hackathon work in #7168 formed the basis of
this.

https://openedx.atlassian.net/browse/CSM-17
2015-07-09 10:03:58 -04:00
Brandon DeRosier
2bfbda3c1e Revert "edX Course/Library Import/Export API"
This reverts commit c94abd2705.
2015-07-08 16:55:38 -04:00
Brandon DeRosier
783e83deb0 Revert "Add feature flag for Import/Export API in LMS"
This reverts commit 85b3bfe4f6.
2015-07-08 16:55:38 -04:00
Matt Drayer
b0c1e962c7 rc/2015-07-08-mattdrayer: Hide button behind feature flag 2015-07-08 16:55:38 -04:00
Ben McMorran
6bd5eec18d TNL-2665 Prevent Taiwan from being translated 2015-07-08 14:12:56 +00:00
Aamir
9f0b5ed2cd Merge pull request #8720 from edx/ECOM-1601-credit-help-link
ECOM-1601: Added the help link of credit info
2015-07-08 11:55:11 +05:00
chrisndodge
8cde240dd8 Merge pull request #8805 from edx/cdodge/remove-profile-panel
Remove the DjDT profiling panel from devstack.py. It appears to cause…
2015-07-07 22:38:15 -04:00
Matt Drayer
c25e37ea93 Merge pull request #8734 from edx/ziafazal/SOL-1011
ziafazal:SOL-1011: Certificate URL should use 'download_url' field and not 'verify_uuid'
2015-07-07 15:40:34 -04:00
Chris Dodge
8c6939d521 Remove the DjDT profiling panel from devstack.py. It appears to cause horrendeous performance issues, while offering very little benefit. 2015-07-07 13:58:38 -04:00
aamir-khan
935da3a12c ECOM-1601: Added the help link of credit info 2015-07-07 09:58:48 +00:00
Giulio Gratta
84f7aef917 Default "Course About" image
Templates that display the image now check if courses specifies an image, if they don't the default image is displayed

Path set in both common.py and aws.py to allow for easy overriding in one place.

Addresses SOL-926

Some code provided by Davorin Sego
2015-07-06 10:29:12 -07:00
Ben McMorran
351e491c82 Add generic paging framework
Authors:
  - Daniel Friedman
  - Ben McMorran
  - Peter Fogg

TNL-1892
2015-07-06 08:45:03 -04:00
Usman Khalid
fe54b085c6 Added ability to disable xblock types in LMS.
TNL-2305
2015-07-03 20:58:40 +05:00
Davorin Šego
83d920ecba Merge pull request #8759 from edx/dsego/SOL-958
Add feature flag to skip enrollment start date filtering for course s…
2015-07-03 16:20:21 +02:00
Davorin Sego
7374624b3c Add feature flag to skip enrollment start date filtering for course search
add flag to lms/envs/common

update edx-search release tag
2015-07-03 13:24:25 +02:00
zubair-arbi
8934818381 Merge pull request #8753 from edx/zub/bugfix/ecom-1734-change-login-redirect-url
change redirect url from '/accounts/login' to '/login'
2015-07-03 16:19:24 +05:00
Matt Drayer
b1e0ceb34f Merge pull request #8634 from edx/asadiqbal08/SOL-766
asadiqbal08/SOL-766: Share web certificate on Facebook
2015-07-03 06:47:58 -04:00
Ned Batchelder
514d85c183 Fix other temp dirs that are not cleaned up properly 2015-07-02 19:31:49 -04:00
asadiqbal
57d5de5d14 asadiqbal08/SOL-766: Add Facebook sharing to certificate view
* updated the flags for social media sharing
* added facebook feed ui to share public url
* update the condition logic
* update the code as per suggestion and added pick new style for share buttons
* update the css class reference
* update the bok-choy test
* updated description and some text touch-ups
* moved the JS related to facebook into separate location
* js formatting
* Add trailing comma per chrisndodge
* Add wait to fix flaky test...maybe
2015-07-02 18:52:15 -04:00
Brandon DeRosier
85b3bfe4f6 Add feature flag for Import/Export API in LMS
This feature flag gates the exposure of the Full course/library
Import/Export API URLs in the LMS. This allows openedX deployments
that operate without Studio to take advantage of the API, while
others may turn the feature off to reserve all content authoring for
Studio.
2015-07-02 15:32:00 -04:00
Brandon DeRosier
c94abd2705 edX Course/Library Import/Export API
This is a public, versioned, RESTful API for importing and
exporting full course content. The code was initially ripped from the
existing import/export API in the CMS contentstore djangoapp and wrapped
in Django Rest Framework view classes. It's a new djangoapp in
the openedx directory which is largely an abstraction off the CMS
Import/Export views.

This PR includes configuration changes. Most notably, Studio is
configured to serve the OAuth2 provider alongside the LMS.

This is the initial thread on the code list:
https://groups.google.com/forum/#!msg/edx-code/DmnHWmly25A/ZqjD1zb4o7oJ

And this thread contains another description of the changes:
https://groups.google.com/d/msg/edx-code/6dP9SEKsmqQ/Pvyn8fBDx68J

There are a numerous non-covered lines, all of which are missing
coverage in the CMS API this was ported from. They're mostly error
conditions, such as handling of multipart file upload errors.
2015-07-02 15:32:00 -04:00
Andy Armstrong
281ebaa3b3 Merge pull request #8683 from edx/andya/run-optimized-devstack
Support running Studio with optimized assets
2015-07-02 11:39:37 -04:00
zubair-arbi
e369939b4b change redirect url from '/accounts/login' to '/login'
ECOM-1734
2015-07-02 18:44:10 +05:00
Andy Armstrong
85814f0bbf Support running Studio with optimized assets 2015-07-01 18:22:31 -04:00
Zia Fazal
ad1f4951fc get_certificate_url should return certificate download_url in case of non html certificates 2015-07-01 16:14:37 +05:00
David Baumgold
a9c67c562e Merge pull request #8527 from edx/db/ensure-noseids-dir-exists
Ensure noseid dir exists when running tests
2015-06-30 10:03:56 -04:00
cahrens
a4da143ca6 Delete unused student_profile code (WIP profile). 2015-06-29 08:56:11 -04:00
Sarina Canelake
65d68a888f Merge pull request #8694 from edx/sarina/default-OpenedX-no-search
Set Courseware Search to False in default devstack, because it doesn't work.
2015-06-29 07:45:34 -04:00