-
Notifications
You must be signed in to change notification settings - Fork 3.2k
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
[#10969] Search form for audit logs page #11006
[#10969] Search form for audit logs page #11006
Conversation
<div class="col-5"> | ||
<div class="col-12"> | ||
<label for="course-id-dropdown">Course ID</label> | ||
</div> | ||
<div class="col-12"> | ||
<select id="course-id-dropdown" class="form-control col-6" [(ngModel)]="formModel.courseId"> | ||
<option *ngFor="let course of courses"> | ||
{{course.courseId}} | ||
</option> | ||
</select> | ||
</div> | ||
</div> | ||
<div class="col-6"> | ||
<div class="col-12"> | ||
<label for="student-name-input">Student Name (Optional)</label> | ||
</div> | ||
<div class="col-12"> | ||
<input id="student-name-input" class="form-control col-6" type="text" [(ngModel)]="formModel.studentName" placeholder="Student Name"/> | ||
</div> | ||
</div> | ||
<div class="col-1"> | ||
<button class="btn btn-primary mt-4" (click)="search()">Search</button> | ||
</div> |
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.
Is there a way to align these with the row above? Currently the 5/6/1 column split in the bottom row looks a bit off compared to the 6/6 in the top row
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.
LGTM
Do we need to also add a Feedback Session Name dropdown that is generated after the Course ID is chosen? |
I think the plan is to fetch the logs for the whole of the courseid. possibly include the advanced filtering in a future PR |
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.
LGTM
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.
UI looks good, just some comments below
@@ -0,0 +1,73 @@ | |||
<h1>Student Activity Logs</h1> | |||
<p>This page allows you to find when your students have accessed or submitted a particular feedback session.</p> |
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.
Are there plans to include filtering based on feedback session after selecting / filling in the course ID? If yes, then you might want to include a skeleton template for that. If no, then maybe reword this prompt to include "for a given course"
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.
Will reword it
* Search for logs of student activity | ||
*/ | ||
search(): void { | ||
// TODO: Call endpoint to retrieve logs |
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.
Might be more worthwhile to have this PR on hold until the API endpoint and data formats are finalised
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.
The endpoint return type is specified in #10978 but should not really matter for this PR since the PR only deals with the search form for now
</div> | ||
<div class="col-12"> | ||
<select id="course-id-dropdown" class="form-control col-6" [(ngModel)]="formModel.courseId"> | ||
<option *ngFor="let course of courses"> |
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.
Not sure how this would work out for instructors with lots of courses. Any possibility of having the courses sorted by date or allowing filtering based on text input? Or is that already a built in function of the select
field?
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.
How about sort by alphabetical order? I would think that most instructors don't really have that many courses that the dropdown will impede the UX?
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.
I would think that most instructors don't really have that many courses that the dropdown will impede the UX?
Best to check UI/UX matters with @damithc
Regrading the UI: On a separate note, is the backend capable of searching the full period within the 1-minute window given to each request? |
@damithc
That should be coming in a separate PR from this, but shouldn't look too dissimilar from the wireframe
From some preliminary testing on the staging server, retrieving 2000 log entries without filtering (about 2 days worth) from request logs took about 1 minute. With more conditions on the retrieval, the period of time searched for can be longer. But it is unlikely that we are able to stay below 1 minute beyond 5 days worth of logs (from a rough estimate). Will need more testing on this |
@damithc |
Of these two, I prefer the latter. You can also get some ideas from the form used to create a session.
|
@damithc Swapped the course id and student to the left side. definitely makes more sense there. Also, the student is a dropdown now |
68200b9
to
1b5c5ba
Compare
Looks good enough to me. 👍 |
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.
LGTM 👍
Part of #10969
Outline of solution
Current Page