A working draft/example/suggestion for a plugin architecture with named views and plugin context and iframe plugin pointing straight to the service url with the plugin context available in the url parameters.
Merge branch 'master' into ExternalIFramePlugIn

Conflicts:
	assets/css/main.css
	exercise/submission_models.py
	userprofile/models.py
Merge pull request #72 from ttsirkia/master

Fixed button colors
The if statement in the old clean caused DoesNotExist error if course_module or category was not set. That way, the model forms in Django admin could not display the validation error correctly in the invalid form.
Calling add_submitters before submission.save() is called, caused an exception because ManyToMany fields do not allow adding before the model that has the field is saved.
- Edited Submission.check_user_permission to also allow users with User.is_staff to access the submission.
- Edited some comments in Submission.check_user_permission
- Denied access to view_submission from everyone else but the submitters of the submission because the view would make no sense to staff-like users.
	- This also fixes the bug where the assignment of the index caused error in case anyone but the submitters of the submission tried to access this view.
	- Added a comment about that to the code because check_user_permission might seem the right way to go
Merge pull request #73 from Rubinous/view_submission_of_someone_else_bug_fix

Bug fix - Trying to view someone else's submission page caused HTTP 500
Merge pull request #75 from Rubinous/fixed_LearningObject_clean

The if statement in the old clean caused DoesNotExist error if course_mo...
Merge branch 'master' into ExternalIFramePlugIn
Some quick code to get EmbeddedTabs to work. This is mostly throw-away.
Tab apps to the menu.
Calling that add_files method of Submission model causes DatabaseError in case the file_object of SubmittedFile is too long for the database. I am not aware of other kinds of DatabaseErrors that add_files may catch but I wouldn't be surprised if those exist. Thus the error message has uncertainity in it.
Added exception logging for some caught exceptions and edited some user error messages. I am not sure if the the level of the logging is appropriate but it is at least an improvement.
Removed done todo-item.
Merge pull request #78 from Rubinous/some_error_handling

Some error handling
Merge pull request #74 from Rubinous/add_submitters_when_error_bug_fix

Calling add_submitters before submission.save() is called, caused an exc...
added todo
Merge branch 'ExternalIFramePlugIn' into apps
todo entry
ExternalIFrameTab model and model admin, plugin renderer and template for it.