1. 20 Aug, 2015 4 commits
    • api-v1: Initial API implementation & group relationships · 1e1c05c4
      Includes:
      * Initial API implementation
      * API_KEY header fix
      * Fixed indentation error
      * move api from common to lms
      * Course-Group Relationships
      * wip
      * add parsing of overview content blob
      * initial implementation
      * get course updates API method
      * get course static tabs API methods
      * add unit tests
      * fix some merge conflicts and remove some extra print statements picked up in rebase
      * better constrain some of the course url regexs to expect a triple for courseId
      * add ability to enroll users into courses
      * wip
      * add queryable group lists
      * add a GET endpoint to /api/groups/{groupid}/courses to get the list of courses associated with the group (program)
      * return the display names when listing all courses in a group (program)
      * create optimized course tree query API endpoint
      * make sure group profile data is properly serialized and deserialized. There appears to be a difference between how the Django test client handles things. Disabling unit test for now to unblock UI devs
      * null guard
      * fix broken unit test
      * add GET endpoint to group/user relationships
      * Added Security to session api as requested in #785
      * Storing passoword history of user and validation for user's email and username
      * Moved security tests to lms also
      * add two FEATURE flag overrides to enable the security features
      * remove unnecessary settings overrides (because they are 'feature flags')
      * Adding ratelimiting on login api
      * Migrated from Function-Based Views to Class-Based-Views
      * Create new Account/Login Audit Log
      * The API should provide for an audit log when a user creates a new account or logs into the system.
      * UserList.post() now creates UserProfile, UserPreference records
      * Group Profile fix
      * Filter group subgroups by group type
      * Application reorganization
      * Name is now required during group creation
      * Added null check for profile name
      * User must reset password functionality added
      * User must reset password dunctionality added
      * Added user password reset functionality
      * Add password reset api and implemented Password history
      * Remove unused imports, password reset message text
      Matt Drayer committed