Commit Graph

1050 Commits

Author SHA1 Message Date
Ahsan Ulhaq
20e6c7625c LMS: Modification in enrollment API
Added CourseEnrollmentAttribute model

ECOM-1719
2015-06-16 10:39:04 +05:00
cewing
6a0c9aee9d MIT CCX: Use CCX Keys
Implement the use of CCX opaque keys throughout the ccx code base

include the new custom ccx id package in the github checkouts list

update the coach dashboard wrapper to get CCX information from the incoming course_id, if possible

update function signatures for all view functions to expect CCX as passed by the dashboard wrapper (default to None), remove calls to get_ccx_for_coach as the ccx is passed in.

update reverse calls in python view code to use a CCXLocator for the URL instead of a CourseLocator

use CCXLocator where necessary

use course id to find ccx, instead of thread local

remove unused method and related tests

use course id for getting ccx

provide course id to the get_current_ccx method

ensure the course id passed in is a CourseKey instance of some type whether it starts out as a string or not

use the provided block to figure out what the course_id should be, then get the ccx for that

redirect to ccx dashboard using coach ccx if no ccx is passed in

update student dashboard listing for ccx to build an appropriate url from a CCXLocator, not from the course locator.

refactor building the ccx locator so we don't have to do it repeatedly

begin test refactoring after ccx_keys introduction

Ensure that when access checking happens, the course_locator form of a ccx locator is used.  This ensures that the access check happens against the course and it is not necesarry to duplicate the entire access control structure for the course.

pick up api change in ccx-keys

create and conditionally use a wrapper for the mixed modulestore returned by xmodule.modulestore.django.modulestore

the wrapper will strip and restore ccx values from CourseKey and UsageKey objects

fix return values on a few methods

remove unused symbol

pull updated ccx-keys package

set course_id on the caching descriptor system to avoid api incompatibilities in some subsystems

use ccx.course instead of self.course

fix get method to find course keys from blocks that are not themselves keys but have a location attribute (which will be a key)

if an item coming out of the db has children, restore the ccx to them as well

if the block passed in has a CCX key, unwrap that before we try to look up the override, otherwise it will never be found.

pick up a change in the ccx keys package that allows for stripping CCX identity from a usage key

begin writing tests to cover this modulestore wrapper

remove the switch_pocs view, the url pattern for it, and the tests that covered it

remove the ccx context and the middleware responsible for setting the current CCX.  These are no longer needed

all dashboard views should raise 404 if a ccx is not provided by the coach_dashboard decorator

code quality

prevent errors resulting from trying to `get` a ccx based on non-unique criteria.

remove obsolete usage of ACTIVE_CCX_KEY

fix setUp method for grading tests to properly create grades for the ccx rather than for the course.

clean up reverse calls

code quality

adding docstrings to clarify purpose of this patch

fix bug in getting ccx for coach

fix grading views to properly fetch a ccx-ified course so that grades for that version will be calculated

fix small errors in modulestore implementation

fix errant merge marker

update call to get_current_ccx after key refactoring merged with tab changes
2015-06-12 00:01:24 -07:00
Will Daly
5198257cbe Merge pull request #8461 from edx/will/verify-student-cleanup
Remove unused code left over from ECOM-188.
2015-06-10 14:44:51 -04:00
Will Daly
69306da49a Remove unused code left over from ECOM-188. 2015-06-10 13:08:23 -04:00
Awais
d5ca25e197 ECOM-1644 minor message updation. 2015-06-10 22:08:23 +05:00
Awais Qureshi
16bbdc7fca Merge pull request #8329 from edx/awais786/ECOM-1494-remove-midcourse-models
ECOM-1494 removing models.
2015-06-10 18:24:39 +05:00
Tyler Nickerson
767ccbd1e7 Merge pull request #8235 from edx/nickersoft-include-expired
Added optional GET parameter to the enrollment API that includes expired course modes
2015-06-10 09:01:04 -04:00
Awais
ed02d9cc5c ECOM-1494 removing models only. 2015-06-10 11:19:51 +05:00
Nickersoft
8c1d3ae412 Added includes_expired parameter to enrollment API
- Adding ?include_expired=1 to course detail requests will now include expired course verifications
2015-06-09 17:12:30 -04:00
Awais
956e41348e ECOM-1644 Implementing course-access roles. 2015-06-09 15:29:19 +05:00
Sarina Canelake
e53b9c83d9 Use Django 1.4 @ensure_csrf_cookie method PLAT-664 2015-06-06 08:48:36 -04:00
Tim Krones
f711a32e3d TNL-1652: Allow instructors to obtain CSV file listing students who may
enroll in a course but have not signed up yet.
2015-06-04 20:50:04 +02:00
Peter Fogg
63c3af737c Add student bio max_length to migrations. 2015-06-03 17:07:02 -04:00
Ben McMorran
9d336c33eb TNL-1897 Implement Course Team API 2015-06-03 18:04:17 +00:00
Diana Huang
15291aa43b Merge pull request #8015 from edx/andya/add-tab-extensions
Add extensible course view types for edX platform
2015-06-02 17:08:45 -04:00
Diana Huang
dae137feaa Convert all tabs to the new plugin framework. 2015-06-02 15:05:16 -04:00
Muhammad Shoaib
65c4f1df89 SOL-236 Manual Enrollments 2015-06-02 13:19:32 -04:00
Andy Armstrong
94e1c42314 Add extensible course view types for edX platform 2015-06-02 13:12:40 -04:00
Christina Roberts
46cb847eb9 Merge pull request #8306 from edx/christina/delete-unused-methods
Delete change_email_request and lang_pref_set_language
2015-06-02 11:30:35 -04:00
cahrens
410beb8485 Delete unused methods.
This functionality is provided to the user_api accounts and preferences api.
TNL-1701
2015-06-02 10:03:19 -04:00
Matt Drayer
af7277cdd9 New Feature: Certificates Web View
- SOL-465: Initial implementation of certificates web view and signatories (names/titles)

- SOL-718 Close button is working properly

- SOL-801 Backbone Signatories Modeling

- SOL-803 Underscore template: Editor (Add)

- SOL-802 Signatories: Underscore template - Details

- SOL-804 Signatories: Underscore template: Editor (Edit)

- Add signatory delete Django view

- SOL-805 Signatory editor (Delete)

- Add Coffeescript router

- SOL-716 Jasmine Tests

- Added missing minified JS library

- client side validation of signatory fields

- SOL-390 signatories names

- Remove obsolete extends Sass files

- input maxlength limiting for signatory information

- SOL-389: Course title override

- SOL-466: Add capability to upload digitized signatures in Studio

- ziafazal: fixed css for upload signature image

- ziafazal: completed deletion of signature images

- UX-1741: Add initial static rendering/styling for Open edX web certs
  * creating new global static dir
  * adding static version of edX UX pattern library assets
  * adding web certificates static assets
  * adding static (+abstracted) web certificates rendering
  * creating two tiers of rendering (base + distinguished)
  * providing sample assets for certificate rendering
  * supporting RTL layouts
  * adding certifcates assests to edX static asset pipeline
  * temporarily hiding the mozilla open badges share action
  * wiring print button to print view/page
  * fixup! addressing conflict artifact in valid cert template
  * fixup! adding missing %hd-subsection sass extend + components comment clean up
  * fixup! correcting pattern library .hd-4 font-weight value

- SOL-468 Linked Student View for Web View Credential

- SOL-467: Add capability to upload organization logos for certificates

- SOL-391 / SOL-387: Signatory related info (assets) in certificates web view

- kelketek: Fixes for static asset collection in certificate HTML view.

- SOL-398 Web View: Public Access

- mattdrayer: Post-merge branch stabilization

- catong: Initial changes to Studio template and Help config file

- ziafazal: Branch stabilizations

- SOL-387: Display organization logo on LMS web view

- talbs/mattdrayer: Branch Stabilizations

- talbs: converting backpack action to use a button HTML element

- talbs: revising placeholder assets + their rendering in cert view

- mattdrayer: Username web view wireup

- SOL-386 Certificate Mode Previews

- SOL-905: Make organization logo and signatory signature uneditable

- SOL-922: Improve test coverage

- SOL-765: Add LinkedIn sharing

- [marco] temporary styling adjustment to account for smaller linkedin share image / fake button

- SOL-921: Address hardcoded template items

- SOL-927: Deleting certificate should delete org logo image also
  * updated invalid template
  * removed hr
  * fix invalid certificate error

- clrux: Add i18n to certificate templates and partials

- mattdrayer: Pylint violations

- SOL-920 Certificate Activation/Deactivation

- mattdrayer: Added LMS support

- SOL-932: Fix preview mode support in certificate view

- SOL-934: Fixed bug reported and broken tests

- SOL-935 removed the 'valid' word from web view title

- talbs: RTL support updates/fixes
  * revising certificate type icon/name vertical alignment
  * removing unused older certificate template
  * revising styling for message/banner actions
  * abstracting accomplishment type to use course mode + adding in honor/verified-specific placeholders

- mattdrayer: JSHint violations
2015-06-01 19:48:04 -04:00
Daniel Friedman
9e0dcb7239 Add JSON response to auto_auth with anonymous_id 2015-06-01 14:21:42 -04:00
Awais
d0df626685 ECOM-1494 removing code from models. 2015-05-27 16:32:26 +05:00
Muhammad Shoaib
b555c869bf SOL-794 Detailed Enrollment Report
- added the abstract and concrete layers of enrollment report provider
- created a celery task.
-added the button in the e-commerce reports section

added the enrollment data backend

added the payment data and start writing the test cases.

updated the code with the feedback suggestions and wrote some test cases.
- all the downloadable reports are now visible in the ecommerce download section.
Pending instructor tasks is also visible in the ecommerce section

added the fields in the user profile information
changed the report store configuration key
added the new http endpoint for financial reports to add more permissions for finance_admin to access.

fix quality issues

added test cases to check csv content data

rebased with master and resolved conflicts

changed the log messages

added the changes as per code clintonb suggestions during code review

updated the test cases for the finance_admin decorator

changes suggested by clinton.

Created and moved Table level filters to the Custom Manager for the CourseEnrollment model.

ecommerce.js file was loaded twice in the instructor_dashboard.js fixed the issues

added the registration code column in the csv

added the full gender in the csv file

Update data sources and add display name translations for the report columns

fix meta name

Make sure the reports section does not appear on non whitelabel courses

pylint fixes

expand out enumerated values
2015-05-22 15:16:57 -04:00
Randy Ostler
93e6434e19 Create email message only when it will be sent 2015-05-19 10:01:48 -04:00
Ned Batchelder
78e9445aa1 Add super() calls to setUp/tearDown that are missing them
Also, I replaced a number of tearDown methods with addCleanup instead.
And also remove some unneeded patch.stopall() calls.
2015-05-14 18:14:21 -04:00
muhammad-ammar
3bb7a2508d Add certificate columns to existing grade report
TNL-1886
2015-05-05 17:43:08 +05:00
Awais Jibran
3bd45358ab Merge pull request #7753 from edx/aj/tnl1745-change-email-on-dashboard
Fixed change email address error from student dashboard
2015-04-28 11:29:15 +05:00
cahrens
4af79d6f76 Don't event first_name and last_name.
TNL-2044
2015-04-21 16:03:59 -04:00
Awais Jibran
1d9499e1ad Fixed change email address error from student dashboard
TNL-1745
2015-04-20 14:36:31 +05:00
Andy Armstrong
17392ef3bf Code review feedback and test cleanup. 2015-04-17 17:23:19 -04:00
cahrens
4797a74e5c Emit events for language proficiencies from the update_account_settings method. 2015-04-17 17:23:18 -04:00
Daniel Friedman
97c43adaa4 Track user settings changed events on User save 2015-04-17 17:23:18 -04:00
Diana Huang
3f20a6f304 Add model change event tracking to UserProfile. 2015-04-17 17:23:18 -04:00
cahrens
938dcce061 Event change_initiated for password and email change requests. 2015-04-17 17:23:16 -04:00
Andy Armstrong
c3a39934a0 Limit the size of the user profile's "bio" field
TNL-1990
2015-04-17 17:23:16 -04:00
muzaffaryousaf
3110cf6bb6 Remove account settings display and editing from dashboard sidebar.
TNL-1516
2015-04-17 17:23:15 -04:00
jsa
bb2599cecd Include profile image version in URLs.
TNL-1860
2015-04-17 17:23:13 -04:00
jsa
1d11345e90 make auto_auth users satisfy PARENTAL_CONSENT_AGE_LIMIT 2015-04-17 17:23:13 -04:00
Daniel Friedman
97e44ed20f Implement language proficiencies.
TNL-1488
2015-04-17 17:23:12 -04:00
Andy Armstrong
650a9a9b85 Implement parental controls for user profiles
TNL-1606
2015-04-17 17:23:11 -04:00
Daniel Friedman
6f6fdbfb5f Integrate profile images into Accounts API
TNL-1545
2015-04-17 17:23:11 -04:00
cahrens
fad63938e5 New bio field in UserProfile. 2015-04-17 17:23:11 -04:00
cahrens
0a962bf991 Add field that was missing from re-ordered migration 2015-04-17 17:23:11 -04:00
Awais Qureshi
b8368617e6 Merge pull request #7627 from edx/awais786/ECOM-1183-verification-expiry
ECOM-1183 fixing the
2015-04-13 18:10:40 +05:00
David Ormsbee
03c3bbb379 Merge pull request #6636 from jazkarta/feature-pocs
MIT CCx (was Personal Online Courses)
2015-04-11 11:15:43 -04:00
Carlos de la Guardia
9ddee93401 MIT: CCX. Code Quality fixes
add doc strings; fix pep8 warning
address some minor issues brought up by the code review process
2015-04-10 23:30:26 -04:00
cewing
7f691e4a92 MIT: CCX. Rename POC to CCX
Final official name is Custom Courses for EdX (CCX), rename all code to remove previous name.

Rename the FEATURE constant used to identify this feature

Rename the middleware for the CCX change

rename the constant used for storing the current poc id on the session.

rename the _PocContext threading local

rename the override provider in all places where it is referenced

`PersonalOnlineCoursesOverrideProvider` -> `CustomCoursesForEdxOverrideProvider`

generally rename symbols from overrides.py to replace `poc` with `ccx` where possible without changing model names or attributes

rename more symbols from poc to ccx
rename util functions from app utils module

general symbol renaming poc -> ccx in views.py and related url changes

Rename the coach role wherever it is used.

reword poc_coach to ccx_coach

UI rename

replace POC with CCX globally

template context variable renamed

rename poc_ to ccx_ in urls and all related locations (views, js, scss etc)

remove pocs migrations

Final massive renaming, including models.  Re-built migration.

cleaning up a few tailing references

Fix reference typo in schedule template JS

undo modifications made on the fly in test setup to ensure that our tests are properly isolated from the rest of the system tests.

Fixes jazkarta/edx-platform#38

Clean up some leftover strings and comments

fixing more strings and comments in python files

fix a naming error in the schedule tab that was causing problems in deleting courseware items.

Fixes jazkarta/edx-platform#36

updating tests and utility code to match changes in infrastructure from latest rebase
2015-04-10 23:30:25 -04:00
cewing
0b184881f5 MIT: CCX. Implement display of CCXs in user-facing templates such as dashboard
Show the display name for the POC in the menu for switching.

Remove the MOOC: prefix from the MOOC title to avoid truncation issues.

Incorporate the display name of the POC into the display of course org/number/name at the top of the page in the default theme.

Provide warning on the grading policy page in system warning style.

Provide a PocMembership model api that returns PocMemberships for a user.  Default to active memberships.

Build generator that yields triplets of poc, membership and course for each poc membership a user has.

This is an analog of the `get_course_enrollment_pairs` in common/djangoapps/students/views.py and is used in the student dashboard to provide pocs as options for a student to view.

refactor to use model api instead of inline code.

provide pocs as possible targets for a student to visit from their dashboard.

Unset the current active poc when visiting the dashboard so as to avoid needing to switch active pocs when viewing a plain course.  This ensures we can leave template code for the display of courses unchanged.

Update templates to show pocs in a course-like view on a student's dashboard.

Revert a portion of the template change so that the poc title will still render properly when a poc is being viewed.
2015-04-10 23:28:09 -04:00
cewing
d4a1e99a83 MIT: CCX. Implement auto-enroll for CCX students
Based loosely on course enrollment model

Ensure that registered users are 'active' when they are enrolled in a POC

Respect the 'auto enroll' and 'email students' checkboxes in the UI

Add an auto_enroll flag to the PocFutureMembership model so we can automatically enroll non-users when they have registered and activated their account.

Build a future enrollment using the auto_enroll value from the request so we can ensure that non-existent users can be auto-enrolled

Ensure that any user added by way of the one-at-a-time UI is automatically auto-enrolled

Update tests with email sending to use the flag from the request

Provide api on the PocMembership object to auto-enroll a newly active member in this poc.

This method will delete the passed PocFutureMembership object and will automatically enroll the user in the POC named in that future membership as well as the MOOC from which it was created

Conditionally activate poc memberships that are pending when a new registree first activates their account.
2015-04-10 23:18:39 -04:00