Commit Graph

9 Commits

Author SHA1 Message Date
Victor Shnayder
365495521e Catch errors in module load
* if error is in xmodule_constructor(), catch and return an ErrorModule
* if error is somewhere else in get_module(), return None
2012-08-22 12:58:46 -04:00
Victor Shnayder
b97a2af2a2 Show policy, grading policy, and top-level errors
* Save errors for courses that failed to load in modulestore
* global staff can see course errors on their dashboard
* put policy loading errors into the error trackers
* add has_access(user, 'global', 'staff'), which is equiv to user.is_staff for now
2012-08-21 15:00:21 -04:00
ichuang
6e3eff304e {} -> {0} etc in .format statements 2012-08-16 16:22:26 -04:00
Calen Pennington
573c58d02b Fix broken docstring 2012-08-15 13:59:25 -04:00
Victor Shnayder
7c6b9eba1c Note that 'load' access does not check for enrollment 2012-08-15 12:55:13 -04:00
Victor Shnayder
9425bbba60 Address other comment on #413
- don't call has_access directly from template, pass a staff_access variable instead
2012-08-15 10:28:08 -04:00
Victor Shnayder
5d9fad5a52 Minor cleanups before pull request 2012-08-14 23:30:38 -04:00
Victor Shnayder
b782e2ff5d Make start dates work for all modules
* error modules now hidden via access control
* get_module() returns None if user doesn't have access
2012-08-14 23:30:37 -04:00
Victor Shnayder
2df3a6ef11 Big access control refactor
* All access control logic is now in access.py
* It exports a single method for general use: has_access(user, object, action)
 - possible actions depend on object type (e.g. 'see_exists', 'enroll', 'staff')
* Removed DARK_LAUNCH feature flag--it is now the default behavior
* Replaced check_course with three separate more focused functions that use has_access

Minor things:
* note on using pdb in testing
* moved time parsing helper into timeparse.py
* x_modules now have a .start attribute (None if not in metadata)
2012-08-14 23:30:37 -04:00