New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Instructor training workflow #871
Instructor training workflow #871
Conversation
3a52338
to
30a6a2e
Compare
0b23d84
to
62d5551
Compare
Ready for review. Issues:
|
@chrismedrela can you please re-base? @pbanaszkiewicz can you please do a technical review (esp. look for the FIXME lines)? |
@@ -207,6 +211,139 @@ def get_order_by(self, order_value): | |||
return super().get_order_by(order_value) | |||
|
|||
|
|||
def filter_all_persons(queryset, all_persons): | |||
if all_persons: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add a docstring -- I understood the purpose of this function after reading all_persons
label.
@pbanaszkiewicz, I've implemented changes that you proposed and rebased against the newest
Do you mean multiple PRs or one PRs with multiple commits? The former is not possible, because a lot of changes depends on other changes. Please ignore |
I mean turn single-commit-PRs into multiple-commit-PRs. It was whole lot more convenient for me to read through commits in #905 than reading through this never ending stream of code lines. Anyway, this PR looks good enough for me, please merge when you think you're ready. |
From test_landing_page.py to test_trainee_dashboard.py.
Add '#sponsors' to the redirect url, so that you're redirected to "Sponsors" tab.
- Delete unnecessary spaces at the beginning and at the end of docstrings: """ Dostring. """ --> """Docstring.""" - Remove unused imports. - Optimize imports (that is, sort them).
so they look like a link.
GET requests to views inheriting from DeleteViewContext returns 405 (method not allowed) now.
Use this mixin with form views, so that after successful form submission, the user is redirected to whatever GET['next'] is set to, if it is not missing.
and get rid of duplicated lines in subclasses.
Changes in form helpers: - Replace BootstrapHelperWithAdd with BootstrapHelper(submit_label='Add') - Replace BootstrapHelperWiderLabels with BootstrapHelper(wider_labels=True) - Replace BootstrapHelperGet with BootstrapHelper(use_get_method=True) - Add BootstrapHelper.duplicate_buttons_on_top flag When this flag is set to True, submit buttons are displayed on both top and bottom of a form. The default value is False. - Add other arguments to BootstrapHelper.__init__ Additionally, we now use form.helper instead of form_helper. So far, FormHelper and Forms were created in a view independently, put into a context and passed to a template where they were connected: {% crispy form form_helper %} Now the helper is set directly on the forms. You don't have to think about the helper in a view or in a template (unless you want it to be request-dependent, i.e. when you want form_action to depend on the request). One more change: duplicated code (sidebar) in templates was extracted and moved to base template.
On every page, you can use new functionalities now: - Set `select-all-checkbox` attribute on checkbox to let user select/unselect all checkboxes with `respond-to-select-all-checkbox` attribute in the same form. - Bootstrap popovers and tooltips work on each page by default. - Set `bulk-email-on-click` attribute on a button to email group of selected people. Other changes: - Remove empty extrajs blocks in templates. - Remove JS chunks that are unnecessary now.
- introduce new models: TrainingProgress and TrainingRequirement - add `TrainingRequest.state` and `TrainingRequest.person` fields - add `TrainingRequirement` to django-admin site - put everything in one migration
@gvwilson, I need URL to Etherpad where you can register for Demo Session. This URL will be displayed in trainee's dashboard. I'll merge this branch today (a hundred per cent sure). @pbanaszkiewicz I hope we'll work on smaller PRs now. This is more convenient for both the contributor and the reviewer. |
http://pad.software-carpentry.org/teaching-demos On 2016-08-04 8:03 AM, Christopher Medrela wrote:
Dr Greg Wilson |
- display progress of becoming SWC/DC Instructor - let the trainee send SWC or DC homework using SendHomeworkForm
- add bulk operations: - discard selected requests (BulkChangeTrainingRequestForm) - unmatch selected people from trainings (BulkChangeTrainingRequestForm again) - match selected people to chosen training (BulkMatchTrainingRequestForm) - mail selected people - added filtering sidebar (TrainingRequestFilter) - fix carpentries#926 -- download all training requests as CSV file
- display new fields (state and matched person) - add form to match request with selected person or with a new one (AcceptTrainingRequestForm); this form suggest matching Person
- add filtering sidebar (TraineeFilter, TTTEventLookup) - add bulk operations: - add training progress (BulkAddTrainingProgressForm) - discard training progress (BulkDiscardProgressesForm)
7431469
to
c353c4d
Compare
Excellent work - thank you. |
Thanks @chrismedrela! |
@pbanaszkiewicz , here is the schema proposal, it turns out we need only two models. Please review. And don't merge. :)